集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 835|回复: 0

使用LeonardoSpectrum综合Xilinx FPGA的VHDL程序

[复制链接]
羽蒙 发表于 2014-5-15 11:23:20 | 显示全部楼层 |阅读模式
LeonardoSpectrum 是Mentor Graphics公司设计的功能强大的EPLD/FPGA/ASIC综合工具,支持大部分EPLD/FPGA厂商的产品。LeonardoSpectrum支持VHDL、Verilog、EDIF的综合、优化和定时分析,可以运行在Windows 98/2000/NT/XP和HP、SUN 的UNIX平台上。
LeonardoSpectrum通过名为exemplar的库,可以在用HDL设计FPGA/EPLD时使用与原理图设计相同的功能。LeonardoSpectrum对于Xilinx公司的EPLD/FPGA支持尤其完善,使得用HDL的设计在效率和功能上可以和原理图的设计相当。本文总结了使用LeonardoSpectrum过程一些有用的设计方法。

图1 全局时钟使用的map结果

图2 延迟锁相环使用map结果

图3 块状RAM的map结果

图4 分布式RAM的map结果
属性的使用
在LeonardoSpectrum中,可以在程序中对信号赋予属性来对综合结果进行控制。在使用LeonardoSpectrum综合时,除了LeonardoSpectrum提供的属性外,可以把Xilinx原理图设计中的某些元件作为属性来赋予信号,主要限于双端口的元件,例如IBUFG,BUFG等等。LeonardoSpectrum所提供的属性可以参看使用手册。
如果使用LeonardoSpectrum来综合,建议调用exemplar库,以获得更多的功能支持,本文介绍的程序都需要使用exemplar库。下面是对程序中一个信号通过赋予bufg的属性而定义该信号为全局时钟的例子。
......
ARCHITECTURE rtl of bufg IS
SIGNAL clk:td_logic;
attribute buffer_sig of clk: signal is "bufg";
BEGIN
clk<=clkin;
clkout<=clk;
process(clk)
begin
if(clk'event and clk='1') then
end if;
end process;
END rtl;
这个程序选用的芯片是Xilinx的spartanII 系列XC2S50-5QP208,经LeonardoSpectrum综合后,用Xilinx ISE5.1进行map后的结果如图1所示,可以看到使用了1个全局时钟。
元件的引用
在Xilinx的FPGA/EPLD的原理图设计中需要用到元件库,元件库中包含一些特殊功能的元件,例如延迟锁相环(DLL)、全局时钟BUF、边界扫描电路、数字时钟管理器(DCM)、内置SRAM等。LeonardoSpectrum提供的exemplar库中的程序包使得设计者可以在VHDL程序中直接引用原理图库中所包含的元件。引用元件时,先调用exemplar库,对要引用的元件按照原理图库中的描述进行声明。引用元件时可以只使用其中一部分参数,不必对元件所有的参数进行映射。
下面是引用Xilinx的FPGA的延迟锁相环〔DLL〕的例子。
............
ARCHITECTURE rtl of pll IS
SIGNALclk:std_logic;
componentclkdll--锁相环
port(clkin,clkfb,rst:in std_logic;clk0,clk90, clk180,clk270,clkdv,lockedut std_logic);
end component;
BEGIN
CLK1:clkdll port map(clkin=>clkin,clkfb=>clk,rst=>'0', clk0=>clk,clk90=>clkout );
process(clk)
begin
if(clk'event and clk='1') then
data_out<=data_in;
end if;
end process;
END rtl;
这个程序也选用Xilinx的XC2S50-5QP208,经LeonardoSpectrum综合后,用Xilinx ISE5.1进行map后的结果如图2所示,可以看到使用了一个DLL。
RAM的综合
RAM设计是Xilinx FPGA的一个特色,按照在芯片内的分布情况可以分为分布式RAM和块状RAM,分布式RAM分布在每个LC中,可以将一个LC作为16
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2024-12-24 01:14 , Processed in 0.055233 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表