文档库 最新最全的文档下载
当前位置:文档库 › FPGA的LVDS介绍和xilinx原语的使用方法中文说明

FPGA的LVDS介绍和xilinx原语的使用方法中文说明

FPGA的LVDS介绍和xilinx原语的使用方法中文说明
FPGA的LVDS介绍和xilinx原语的使用方法中文说明

FPGA的LVDS介绍和xilinx原语的使用方法中文说明低压差分传送技术是基于低压差分信号(Low Volt-agc Differential signalin g)的传送技术,从一个电路板系统内的高速信号传送到不同电路系统之间的快速数据传送都可以应用低压差分传送技术来实现,其应用正变得越来越重要。低压差分信号相对于单端的传送具有较高的噪声抑制功能,其较低的电压摆幅允许差分对线具有较高的数据传输速率,消耗较小的功率以及产生更低的电磁辐射。

LVDS:Low Voltage Differential Signaling,低电压差分信号。

LVDS传输支持速率一般在155Mbps(大约为77MHZ)以上。

LVDS是一种低摆幅的差分信号技术,它使得信号能在差分PCB线对或平衡电缆上以几百Mbps的速率传输,其低压幅和低电流驱动输出实现了低噪声和低功耗。

差分信号抗噪特性

从差分信号传输线路上可以看出,若是理想状况,线路没有干扰时,

在发送侧,可以形象理解为:

IN= IN+ —IN-

在接收侧,可以理解为:

IN+ —IN- =OUT

所以:

OUT = IN

在实际线路传输中,线路存在干扰,并且同时出现在差分线对上,

在发送侧,仍然是:

IN = IN+ —IN-

线路传输干扰同时存在于差分对上,假设干扰为q,则接收则:

(IN+ + q) —(IN- + q) = IN+ —IN- = OUT 所以:

OUT = IN

噪声被抑止掉。上述可以形象理解差分方式抑止噪声的能力。

From: 美国国家半导体的《LVDS用户手册》P9

FPGA中的差分管脚

为了适用于高速通讯的场合,现在的FPGA都提供了数目众多的LVDS接口。如Spartan-3E系列FPGA提供了下列差分标准:

? LVDS

? Bus LVDS

? mini-LVDS

? RSDS

? Differential HSTL (1.8V, Types I and III)

? Differential SSTL (2.5V and 1.8V, Type I)

? 2.5V LVPECL inputs

所拥有的差分I/O管脚数目如下

From:Spartan-3E FPGA Family:Complete Data Sheet p5

I/O管脚的命名方式:

From:Spartan-3E FPGA Family:Complete Data Sheet p164

From:Spartan-3E FPGA Family:Complete Data Sheet p18 Spartan-3E系列FPGA器件差分I/O接口输入工作的特性参数:

From:Spartan-3E FPGA Family:Complete Data Sheet p126 Spartan-3E系列FPGA器件差分I/O接口输出工作的特性参数:

From:Spartan-3E FPGA Family:Complete Data Sheet p127

Xilinx公司差分原语的使用

(原语,其英文名字为Primitive,是Xilinx针对其器件特征开发的一系列常用模块的名字,用户可以将其看成Xilinx公司为用户提供的库函数,类似于C+ +中的“cout”等关键字,是芯片中的基本元件,代表FPGA中实际拥有的硬件逻辑单元,如LUT,D触发器,RAM等,相当于软件中的机器语言。在实现过程中的翻译步骤时,要将所有的设计单元都转译为目标器件中的基本元件,否则就是不可实现的。原语在设计中可以直接例化使用,是最直接的代码输入方式,其和HDL语言的关系,类似于汇编语言和C语言的关系。)

关于Xilinx原语的详细介绍,可以参考下面文章

1)FPGA开发实用教程第4节Xilinx公司原语的使用方法

https://www.wendangku.net/doc/c413221608.html,/article/08-03/37457s.html

2)ISE的Help—sofeware Manuals

差分I/O端口组件

1)IBUFDS

IBUFDS原语用于将差分输入信号转化成标准单端信号,且可加入可选延迟。在IBUFDS原语中,输入信号为I、IB,一个为主,一个为从,二者相位相反。

IBUFDS的逻辑真值表所列,其中“-*”表示输出维持上一次的输出值,保持不变。

表IBUFDS原语的输入、输出真值表

IBUFDS原语的例化代码模板如下所示:

// IBUFDS: 差分输入缓冲器(Differential Input Buffer)

// 适用芯片:Virtex-II/II-Pro/4, Spartan-3/3E

// Xilinx HDL库向导版本,ISE 9.1

IBUFDS #(

.DIFF_TERM("FALSE"),

// 差分终端,只有Virtex-4系列芯片才有,可设置为True/Flase

.IOSTANDARD("DEFAULT")

// 指定输入端口的电平标准,如果不确定,可设为DEFAULT

) IBUFDS_inst (

.O(O), // 时钟缓冲输出

.I(I), // 差分时钟的正端输入,需要和顶层模块的端口直接连接

.IB(IB) // 差分时钟的负端输入,需要和顶层模块的端口直接连接

);

// 结束IBUFDS模块的例化过程

https://www.wendangku.net/doc/c413221608.html,/itp/xilinx6/books/data/docs/lib/lib0229_197.htm l

Verilog Instantiation Template

IBUFDS instance_name(.O (user_O),

.I (user_I),

.IB (user_IB));

在综合结果分析时,IBUFDS的RTL结构如图所示。

图IBUFDS原语的RTL结构图

2)OBUFDS

OBUFDS将标准单端信号转换成差分信号,输出端口需要直接对应到顶层模块的输出信号,和IBUFDS为一对互逆操作。OBUFDS原语的真值表如表所列。

表OBUFDS原语的真值表

OBUFDS原语的例化代码模板如下所示:

// OBUFDS: 差分输出缓冲器(Differential Output Buffer)

// 适用芯片:Virtex-II/II-Pro/4, Spartan-3/3E

// Xilinx HDL库向导版本,ISE 9.1

OBUFDS #(

.IOSTANDARD("DEFAULT")

// 指名输出端口的电平标准

) OBUFDS_inst (

.O(O), // 差分正端输出,直接连接到顶层模块端口

.OB(OB), // 差分负端输出,直接连接到顶层模块端口

.I(I) // 缓冲器输入

);

// 结束OBUFDS模块的例化过程

https://www.wendangku.net/doc/c413221608.html,/itp/xilinx5/data/docs/lib/lib0317_301.html Verilog Instantiation Template

OBUFDS instance_name(.O (user_O),

.OB (user_OB),

.I (user_I));

在综合结果分析时,OBUFDS原语的RTL结构如图所示。

图OBUFDS的RTL结构图

3) IOBUFDS

IOBUFDS原语真值表

IOBUFDS的RTL结构图

Verilog Instantiation Template

// IOBUFDS: Differential Bi-directional Buffer

// Virtex-II/II-Pro/4/5, Spartan-3/3E/3A

// Xilinx HDL Libraries Guide, version 9.1i

IOBUFDS #(

.IBUF_DELAY_VALUE("0"),

// Specify the amount of added input delay for the buffer, "0"-"16" (Spart an-

3E only)

.IFD_DELAY_VALUE("AUTO"),

// Specify the amount of added delay for input register, "AUTO", "0"-"8" (Spartan-3E only)

.IOSTANDARD("DEFAULT")// Specify the I/O standard

) IOBUFDS_inst (

.O(O),// Buffer output

.IO(IO),// Diff_p inout (connect directly to top-level port)

.IOB(IOB), // Diff_n inout (connect directly to top-level port)

.I(I), // Buffer input

.T(T)// 3-state enable input

);

// End of IOBUFDS_inst instantiation

差分时钟组件

1)IBUFGDS

与全局时钟资源相关的原语常用的与全局时钟资源相关的Xilinx器件原语

包括:IBUFG、IBUFGDS、BUFG、BUFGP、BUFGCE、BUFGMUX、BUF GDLL和DCM等,如图1所示。

IBUFGDS是IBUFG的差分形式,当信号从一对差分全局时钟管脚输入时,必须使用IBUFGDS作为全局时钟输入缓冲。IBUFG支持BLVDS、LDT、LVD SEXT、LVDS、LVPECL和ULVDS等多种格式的IO标准。

https://www.wendangku.net/doc/c413221608.html,/itp/xilinx6/books/data/docs/lib/lib0231_199.html

IBUFGDS原语真值表

IBUFGDS的RTL结构图

Verilog Instantiation Template

IBUFGDS instance_name(.O (user_O),

.I (user_I),

.IB (user_IB));

LVDS差分的在FPGA中的应用

在高速传输的过程中,经常会受到干扰而误码,因此有时候时钟输入采用差分输入的办法来提高抗干扰的能力。下面已一个二分频为例子:

二分频Verilog代码如下:

`timescale 1ns / 1ps

module div2(clk, div2_clk, rst_n);

input clk;

input rst_n;

output div2_clk;

reg div2_clk;

always@(posedge clk or negedge rst_n)

begin

if(!rst_n)

div2_clk<=0;

else div2_clk<=~div2_clk;

end

endmodule

布线布局的仿真(Post-Route Simulation)波形如下:

现在对时钟clk信号进行差分处理,对div2 module进行例化(Creat e Schematic Symbol)

新建一个div2_diff.sch。添加div2的module在sch上。通过搜索,把时钟缓冲差分组件IBUFGDS也放在div2_diff.sch上。

设置好clk的差分管脚,(按照Verilog命名规范)正的命名为clk_p,负的命名为clk_n。

在添加波形测试文件时要注意,Clock Information选择Multiple Clock s(因为时钟变为两个clk_p、clk_n)

下一步,把clk_p和clk_n都选上:

可以看到仿真的clk_p和clk_n都变为差分输入的了。

还要对div2_diff.sch进行管脚约束。div2_diff.ucf约束文件如下:

NET"clk_p"LOC= "C9"| IOSTANDARD= LVDS_25 ;

NET"clk_n"LOC= "D9"| IOSTANDARD= LVDS_25;

NET"div2_clk"LOC="A10"| IOSTANDARD= LVCMOS33 ;

NET"rst_n" LOC= "H13"| IOSTANDARD= LVCMOS33 ;

要注意:

clk_n和clk_p都要设置在差分管脚对上,

clk_n——C9——IO_L14P

clk_p——D9——IO_L14N

并且逻辑电平标准设置为LVDS_25。Spartan-3E支持下面的差分逻辑电平标准。

? LVDS

? Bus LVDS

? mini-LVDS

? RSDS

? Differential HSTL (1.8V, Types I and III)

? Differential SSTL (2.5V and 1.8V, Type I)

? 2.5V LVPECL inputs

综合、翻译、映射和布线布局后,运行布线布局仿真,可以看到时钟clk 已经变为差分时钟了。

看div2_diff.sch的HDL文件(View HDL Functional Model)。可以看到其实sch调用了IBUFGDS原语。

在差分设计中,经常会因为配置错误而使得综合出错,最常见的错误分析如下:

ERROR:Place:332- This design contains an LVDS IO pair. The pair of I Os must be placed in a specific relative structure.

The two IOs can not be placed in this specific structure.

The reason for this issue:

All of the logic associated with this structure is locked and the relativ e placement of the logic violates the

structure. The problem was found between the relative placement of I BUF clk_p at site PAD27 and IBUF clk_n at site

IPAD28. The following components are part of this structure: IBUF clk_p

IBUF clk_n

这个错误出错是因为差分管脚clk_p和clk_n没有约束到芯片的差分对管脚上。需要修改.ucf文件。至于芯片哪个管脚是差分对,可以参考相应芯片的

Datasheet。XC3S500E-FG320(Spartan-3E fpga)有92个I/O差分管脚和12个输入差分管脚。

ERROR:Pack:946- The I/O component "clk_p" has an illegal IOSTANDA RD value.

Components of type DIFFMI do not support IOSTANDARD LVCMOS3 3. Please correct

the IOSTANDARD property value.

这个错误出错是因为差分管脚设置的逻辑电平标准不对,设置成LVCMOS 33,应该设置为芯片支持的LVDS逻辑电平标准。

参考资料:

1)基于LVDS技术与FPGA的高速通讯应用研究,韩党群,唐征兵,张庆玲https://www.wendangku.net/doc/c413221608.html,/xsj07/xsj080231.asp

2)LVDS原理与应用简介

https://www.wendangku.net/doc/c413221608.html,/ART_8800472639_2700004_TA_5d4d019d.HT M

3) 美国国家半导体的《LVDS用户手册》

https://www.wendangku.net/doc/c413221608.html,/ART_8800562170_2700004_TA_552cca6f.HTM

Xilinx FPGA 如何使用LVDS

https://www.wendangku.net/doc/c413221608.html,/Services/help/Xilinx/200803/1225.html

无论使用HDL flow还是schematic flow,只需要例化IBUFDS,OBUFDS 之类的差分缓冲器,就可以使用LVDS了。

例化之后,要定位Pin位置,使用PACE,在IO

Standard中选择LVDS33或者LVDS25,还能选择有DCI的版本。定端口时,注意看Datasheet中Pin名字分P/N,这P也要对应buffer中的P,N也要对应N。而且注意同一个bank只能有一个电压标准。

如果用FPGA Editor观察布局布线后的情况,就会发现,FPGA

Editor中没有IBUFDS这个Component,这个Buffer是藏在IOB里的,点击到Pin的图块中,可以看到里面有一个Buffer,就起到了IBUFDS这个作用。

xilinx FPGA SelectIO模块资料

5.1.6 SelectIO模块 Virtex-6每个I/O片(I/O Tile)包含两个IOB、两个ILOGIC、两个OLOGIC 和两个IODELAY,如图5-24 所示。 图5-24 I/O 片结构图 本小节就以下几个方面介绍Virtex-6 的SelectIO 资源。 (1) SelectIO 的电气特性。 (2) SelectIO 的逻辑资源——ILOGIC 资源和OLOGIC 资源。 (3) SelectIO 的高级逻辑资源——ISERDES 资源、OSERDES 资源和Bitslip。 一、SelectIO IO 的电气特性 所有的Virtex-6 FPGA 有高性能的可配置SelectIO 驱动器与接收器,支持非常广泛的接口标准。强大的功能SelectIO 包括输出强度和斜率的可编程控制以及使用数控阻抗(DCI)的片上终端。

IOB 包含输入、输出和三态SelectIO 驱动器。支持单端I/O 标准(LVCMOS、 HSTL、SSTL)和差分I/O 标准(LVDS、HT、LVPECL、BLVDS、差分HSTL 和SSTL)。 注意:差分输入和VREF 相关输入由VCCAUX 供电。 IOB、引脚及内部逻辑的连接如图5-25 所示。 图5-25 IOB、引脚及内部逻辑连接图 IOB 直接连接ILOGIC/OLOGIC 对,该逻辑对包含输入和输出逻辑资源,可实现数据和三态控制。ILOGIC和OLOGIC可分别配置为ISERDES和OSERDES。Xilinx软件库提供了大量与I/O相关的原语,在例化这些原语时,可以指定I/O 标准。与单端I/O相关的原语包括IBUF(输入缓冲器)、IBUFG(时钟输入缓冲器)、OBUF(输出缓冲器)、OBUFT(三态输出缓冲器)和IOBUF(输入/输出缓冲器)。与差分I/O相关的原语包括IBUFDS(输入缓冲器)、IBUFGDS (时钟输入缓冲器)、OBUFDS(输出缓冲器)、OBUFTDS(三态输出缓冲器)、IOBUFDS(输入/输出缓冲器)、IBUFDS_DIFF_OUT(输入缓冲器)和IOBUFDS_DIFF_OUT(输入/输出缓冲器)。 二、SelectIO的逻辑资源 SelectIO的逻辑资源主要是指ILOGIC和OLOGIC资源,它们完成了FPGA引脚到内部逻辑的连接功能,包括组合输入/输出、三态输出控制、寄存器输入/输出、寄存器三态输出控制、DDR输入/输出、DDR输出三态控制、IODELAYE1高分辨率可调整延迟单元及其控制模块。 下面简要介绍ILOGIC和OLOGIC功能。

Xilinx-XADC的使用中文介绍doc资料

Zynq器件XADC的使用(原创) 1.前言 赛灵思的7系列FPGA和Zynq器件创造性地在片上集成了模数转换器和相关的片上传感器(内置温度传感器和功耗传感器),这是相比赛灵思前一代产品来新增加的特性,可在系统设计中免去外置的ADC器件,有力地提高了系统的集成度。本文就这一新模块的使用进行简单介绍,希望对大家有所帮助,当然如有不当之处还请高手指正,以免误导大家,欢迎大家补充。 2.XADC模块介绍 2.1 XADC模块概述 Zynq器件XADC模块包括2个12比特1 MIPS的模数转换器和相关的片上传感器,模数转换器能为系统应用提供通用目的的高精度的模拟接口,下图是XADC模块的框图: XADC模块支持不同的操作模式,如外步触发同步采样模式;可接受不同类型的模拟输入信号,如单端或差分信号;最多能接受17路外部的模拟输入信号。XADC模块也包括一定数量的片上传感器用来测量片上的供电电压和芯片温度,这些测量转换数据存储在一个叫状态寄存器(status registers)的专用寄存器内,可由FPGA内部叫动态配置端口(Dynamic

Reconfiguration Port (DRP))的16位的同步读写端口访问。ADC转换数据也可以由JTAG TAP访问,这种情况下并不需要去直接例化XADC模块,因为这是一个已经存在于FPGA JTAG结构的专用接口,此时因为没有在设计中直接例化XADC模块,XADC模块就工作在一种预先定义好的模式叫缺省模式,缺省模式下XADC模块专用于监视芯片上的供电电压和芯片温度。XADC模块的操作模式是由用户通过DRP或JTAG接口写控制寄存器来选择的,控制寄存器的初始值有可能在设计中例化XADC模块时的块属性(block attributes)指定。 2.2 XADC模块管脚需求 所有的XADC模块专用管脚都位于bank0, 所以都加有_0的后缀。下图表示了XADC的基本输入输出需求: 这有两种推荐配置:图中左边XADC由Vccaux(1.8V)供电,并且用一个外部的1.25V参考源。用外部参考源在精度和热飘移方面可以获得更好的性能,一个磁珠用隔离模拟地和数字地,这可避免较常用的模拟和数字电路共地而把噪声带入模拟电路的缺点;图中右边XADC是用片内的参考源,这时VREFP脚必须按图中所示连接到地。

第4节 Xilinx公司原语的使用方法1

第4节Xilinx公司原语的使用方法1 Xilinx 原语 3.4 Xilinx公司原语的使用方法 原语,其英文名字为Primitive,是Xilinx针对其器件特征开发的一系列常用模块的名字,用户可以将其看成Xilinx公司为用户提供的库函数,类似于C++中的“cout”等关键字,是芯片中的基本元件,代表FPGA中实际拥有的硬件逻辑单元,如LUT,D触发器,RAM 等,相当于软件中的机器语言。在实现过程中的翻译步骤时,要将所有的设计单元都转译为目标器件中的基本元件,否则就是不可实现的。原语在设计中可以直接例化使用,是最直接的代码输入方式,其和HDL语言的关系,类似于汇编语言和C语言的关系。 Xilinx公司提供的原语,涵盖了FPGA开发的常用领域,但只有相应配置的硬件才能执行相应的原语,并不是所有的原语都可以在任何一款芯片上运行。在Verilog中使用原语非常简单,将其作为模块名直接例化即可。本节以Virtex-4平台介绍各类原语,因为该系列的原语类型是最全面的。其它系列芯片原语的使用方法是类似的。 Xilinx公司的原语按照功能分为10类,包括:计算组件、I/O端口组件、寄存器和锁存器、时钟组件、处理器组件、移位寄存器、配置和检测组件、RAM/ROM组件、Slice/CLB 组件以及G比特收发器组件。下面分别对其进行详细介绍。 3.4.1 计算组件 计算组件值得就是DSP48核,也有人将其称为硬件乘法器,功能描述如表3-6所示。 表3-6 计算组件清单 DSP48 其结构为一个18*18比特的有符号乘法器,且在后面还级联了一个带有可配置流水线的3输入加法器 DSP48核由一个18比特的乘法后面级联一个48比特的加法器,乘法器和加法器的应用位宽分别可以在18、48比特内任意调整。其在乘加模块中有广泛应用,特别是各类滤波器系统中,不仅可以提高系统稳定性,还能够节省逻辑资源且工作在高速模式下。 其在Verilog中的例化模版为: module fpga_v4_dsp48( BCOUT, P, PCOUT, A, B, BCIN, C, CARRYIN,CARRYINSEL, CEA, CEB, CEC, CECARRYIN, CECINSUB, CECTRL, CEM, CEP, CLK, OPMODE, PCIN, RSTA, RSTB, RSTC, RSTCARRYIN, RSTM, RSTP, SUBTRACT); output [17:0]BCOUT; output [47:0] P, PCOUT; //

DC综合全过程及使用的命令

DC综合全过程及使用的命令 DC的初始化文件.synopsys.dc.setup,该文件是隐藏文件,需要用ls –a显示 读取文件 DC支持多种硬件描述格式,.db .v .vhd等 对于dcsh工作模式来说,读取不同的文件格式需要不同的参数 Read -format Verilog[db\vhdl ect] file //dcsh工作模式 对于tcl工作模式来说,读取不同文件格式使用不同的命令。

Read_db file.db //tcl工作模式读取db格式 Read_verilog file.v //tcl工作模式读取verilog格式 Read_vhdl file.v //tcl工作模式读取vhdl格式 读取源程序的另外一种方式是配合使用analyzer命令和elaborate命令; Analyzer是分析HDL的源程序并将分析产生的中间文件存于work(用户可以自己指定)的目录下 Elaborate则在产生的中间文件中生成verilog的模块或者VHDL的实体 缺省情况下,elaborate读取的是work目录中的文件 当读取完所要综合的模块后,需要使用link命令将读到DC存储区中的模块或实体连接起来 注意:如果在使用link命令后,出现unresolved design reference的警告信息,需要重新读取该模块,或者在.synopsys_dc.setup 文件中添加link_library,告诉DC到库中去找这些模块,同时还要注意search_path中的路径是否指向该模块或单元电路所在的目录 Link命令执行后,DC就将模块按照RTL级或者门级的描述将电路连接起来,之后的各种限制条件就可以对该电路的顶层模块施加 DC限制条件施加的对象 针对以下电路成分:输入输出端口、模块、子模块的实例化、单元电路、连线及电路的引脚。在使用DC命令的时候,不要使用模糊的对象,例如,如下面的电路: Set_load 3 Clk 由于在电路中含有名称为CLK的pin、port和net,因此,DC无法知道该处的load是施加在哪个对象上,注意到一般连线会驱动负载,该命令就改为: Set_load 3 [get_nets Clk] TCL mode Set_load 3 find(net,”Clk”)dc_shell mode 路径的划分与合法路径 DC综合的时候是基于路径的优化,对于DC来说,合法的路径必须满足以下条件 路径的起点为输入端口或者是触发器的数据端 路径终点为输出端口或者是触发器的时钟端 DC设定的限制条件的值都是无单位的,这些单位都是由工艺库中给定的 可以用report_lib lib_name来查看所有在工艺库中设定的各个参数的单位 定义电路的工作环境和综合环境

synopsys DC10.03图文安装配置详解

喾林原创 Synopsys DC10.03安装配置 1、需准备安装包: 1)、Synopsys DC(design compiler)安装包 2)、SCL 安装包(注:此包为synopsys license 管理)。 3)、Synopsys 图像安装工具:installer2.0及以上均可。 (注:图形安装操作简单,不易出错,故采用图形安装界面) 4)、Synopsys license 制作工具( EFA LicGen 0.4b 和Synopsys SSS Feature Keygen )。 2、开始安装DC : 1)、启动图形安装界面 于linux 系统下解压installer2.0包(在windows 下解压文件易损坏)。解压后运行setup.sh 得如图(一)所示界面。 图 (一)

喾林原创点击“start ”有如图(二)所示界面开始安装。在“Source ”栏选中DC 安装文件所在上层目录。“Done ”后“Next ”(此次“Next ”时间较长,耐心等待)。 图 (二) 之后可一直“NEXT ”到如图(三)所示。 图 (三)

在该界面勾选linux选项即可,继续下一步到如图(四)所示。选择安装路径后继续下一步直到结束。 喾林原创 图(四) 至此DC安装结束。 3、开始安装SCL: 此安装与DC安装步骤一直,几乎没有差别,唯一不同的就是安装路径不同。 4、license的制作: License的制作是在windows下制作的。

1)、打开EFA LicGen 0.4b文件夹运行LicGen.exe程序出现如图(五)所示界面。 喾林原创 图(五) 点击“OPEN”选择Synopsys.lpd文件,“打开”。回到图(五)所示界面。勾选上Custon、Use Daemon及最后一个Custon。

使用Xilinx CORE Generator

使用Xilinx CORE Generator心得 初步使用Xilinx CORE Generator: 参考书籍:《Xilinx ISE 5.x 使用详解》EDA先锋工作室 P63-P72:IP核生成工具——CORE Generator 1. 对于如何在工程中加入IP核,是很简单的,我在未看书之前,就可根据提示挑选适当的核,对核进行参数设置,将核加入工程。 2. 接下来是如何使用,在这里,由于我主要使用VHDL语言,仿真工具用ModelSim6.0,综合工具主要使用Synplify7.7,我就只说在这样的环境下如何对该IP核进行元件例化,进行项目配置,并进行仿真与综合。 2.1 元件例化 可使用ISE的Laguage Template,也就是Xilinx 6.2 ISE中工具栏右上角的小灯泡,在COREGEN目录下,你会发现,你所用到的IP核的例化语句已经出现在模板里,拷过去就可以直接用了(当然你可能也要视情况进行必要的改动)。 3. 仿真 这里,最主要的问题是库,由于使用了IP核,所以要把XilinxCroeLib加入ModelSim库中。我的经验是:先在当前工程的目录下创建一个xilinxcorelib库,然后把该库文件剪切到modelsim根目录下,最后在modelsim下,选中该库,点击右键选择Edit,将路径高到modelsim下。然后将xilinx\vhdl\src\xilinxcorelib编译到该库中。此时要注意,由于库文件的关联性,第一次不可能全部编译通过,连续三次后,大多数核就在库中,只有少数几个不能通过编译。 4. 综合 由于综合过程中,提示如下(下面是我在comp.arch.fpga上所发的问题): In my project,there's a xilinx IP core. I want to use the synplify7.7 to synthesize it, but there's a warning when synthesize . The warning is : @W: CD280 :"G:\project\itu656_dec\itu656_Decoder.vhd":29:10:29:19|Unbound component counter_11 mapped to black box @W: CD280 :"G:\project\itu656_dec\itu656_Decoder.vhd":37:10:37:18|Unbound component counter_4 mapped to black box my project nane is itu656_dec : a decoder for itu 656 video The following code has been used in my project: component counter_11 port ( Q: OUT std_logic_VECTOR(10 downto 0); CLK: IN std_logic; CE: IN std_logic; ACLR: IN std_logic); end component; component counter_4

synopsys简易教程

以.cshrc 及用户根目录下的.synopsys_vss.setup .synopsys_dc.setup 已经配置为前提)1.创建工作目录; 2.编写vhdl源程序; 3.编写.synopsys_vss.setup 和.synopsys_dc.setup文件; 4.编译vhdl源程序; 5.运行vhdldbx 仿真器; 6.运行synopsys的综合器; 7.完成综合后的门级仿真; 以一个一位加法器为例,进行具体说明(用户界面为CDE): 1)创建adder 目录: 可以在资源管理器中完成,也可以在unix环境下完成:mkdir adder; 2)在adder目录下创建work目录; 3)编写.synopsys_vss.setup文件并存入adder目录;.synopsys_vss.setup的内容如下:WORK >DEFAULT DEFAULT:work TIMEBASE = NS 4)编写一位加法器的源程序(adder1.vhd)并存入adder目录下: library ieee; use ieee.std_logic_1164.all; entity adder1 is port(din1 : in std_logic; din2 : in std_logic; cin : in std_logic; dout: out std_logic; cout: out std_logic); end adder1; architecture rtl of adder1 is begin dout <= din1 xor din2 xor cin; cout <= (din1 and din2) or (cin and (din1 xor din2)); end rtl; 5)编写一位加法器的测试基准(即test_bench)并存入adder目录下:(tb_adder1.vhd)library ieee; use ieee.std_logic_1164.all; entity tb_adder1 is end tb_adder1; architecture rtl of tb_adder1 is component adder1 is port(din1 : in std_logic; din2 : in std_logic; cin : in std_logic;

Xilinx原语的使用方法1

Xilinx原语的使用方法1 3.4 Xilinx公司原语的使用方法 原语,其英文名字为Primitive,是Xilinx针对其器件特征开发的一系列常用模块的名字,用户可以将其看成Xilinx公司为用户提供的库函数,类似于C++中的“cout”等关键字,是芯片中的基本元件,代表FPGA中实际拥有的硬件逻辑单元,如LUT,D触发器,RAM等,相当于软件中的机器语言。在实现过程中的翻译步骤时,要将所有的设计单元都转译为目标器件中的基本元件,否则就是不可实现的。原语在设计中可以直接例化使用,是最直接的代码输入方式,其和HDL语言的关系,类似于汇编语言和C语言的关系。 Xilinx公司提供的原语,涵盖了FPGA开发的常用领域,但只有相应配置的硬件才能执行相应的原语,并不是所有的原语都可以在任何一款芯片上运行。在Verilog中使用原语非常简单,将其作为模块名直接例化即可。本节以Virtex-4平台介绍各类原语,因为该系列的原语类型是最全面的。其它系列芯片原语的使用方法是类似的。 Xilinx公司的原语按照功能分为10类,包括:计算组件、I/O端口组件、寄存器和锁存器、时钟组件、处理器组件、移位寄存器、配置和检测组件、RAM/ROM 组件、Slice/CLB组件以及G比特收发器组件。下面分别对其进行详细介绍。 3.4.1 计算组件 计算组件指的就是DSP48核,也有人将其称为硬件乘法器,功能描述如表3-6所示。 表3-6 计算组件清单 DSP48 其结构为一个18*18比特的有符号乘法器,且在后面还级联了一个带有可配置流水线的3输入加法器 DSP48核由一个18比特的乘法后面级联一个48比特的加法器,乘法器和加法器的应用位宽分别可以在18、48比特内任意调整。其在乘加模块中有广泛应用,特别是各类滤波器系统中,不仅可以提高系统稳定性,还能够节省逻辑资源且工作在高速模式下。其在Verilog中的例化模版为: module fpga_v4_dsp48( BCOUT, P, PCOUT, A, B, BCIN, C, CARRYIN,CARRYINSEL, CEA, CEB, CEC, CECARRYIN, CECINSUB, CECTRL, CEM, CEP, CLK, OPMODE, PCIN, RSTA, RSTB, RSTC, RSTCARRYIN, RSTM, RSTP,

启动dc_shell工具的.synopsys.setup文档

设置启动dc_shell-t工具的 .synopsys.setup文件 Author:周建伟 Company:西安邮电大学SOC组 Date:2013.10.30 摘要:若你在读不进你的库,即在你的运行报告中总是有:warning:Can?t read link_library file …your_library.db?,这边文档会对你有一定的帮助

逻辑综合环境 启动文件 启动文件用来指定综合工具所需要的一些初始化信息。DC使用名为“.synopsys_dc.setup”的启动文件(位置:inst_dir/admin/setup/.synopsys_dc.setup)。启动时,DC会以下述顺序搜索并装载相应目录下的启动文件: DC安装目录($DC_PATH/admin/setup) 用户主目录 工具启动目录 注意:后装载的启动文件中的设置将覆盖先装载的启动文件中的相同设置 本文档重在讲述怎么设置工具启动目录 1、把inst_dir/admin/setup/.synopsys_dc.setup文件拷贝到你DC脚本目录下(也就是和你 脚本在同个目录下) 2、在.synopsys_dc.setup文件的第92行,即set link_force_case “check_reference”命令下 修改内容如下: A、set lib_path /library/smic18/feview~2/version2.2(注:lib_path为你smic18库安装 目录,不同于DC安装目录) B、set link_library [list * $lib_path/STD/Synopsys/smic18_ss.db \ $lib_path/IO/Synopsys/smic18IO_line_ss.db \ $lib_path/IO/Synopsys/smic18IO_stagger_ss.db ] C、set search_path [list . ${synopsys_root}/libraries/syn ${synopsys_root}/dw/syn_ver \ ${synopsys_root}/dw/sim_ver \ $lib_path/STD/Synopsys $lib_path/IO/Synopsys ] D、set target_library [list $lib_path/STD/Synopsys/smic18_ss.db \ $lib_path/IO/Synopsys/smic18IO_line_ss.db \ $lib_path/IO/Synopsys/smic18IO_stagger_ss.db ] E、set synthetic_library “” set command_log_file “./command.log” set designer “zjw” set company “soc of xupt”

Xilinx FPGA DCI的应用

Xilinx系列FPGA的DCI技术 1、DCI技术概述 随着FPGA芯片越大而且系统时钟越高,PCB板设计以及结构设计变得越难,随着速率的提高,板间的信号完整性变的非常关键,PCB板上若有关键信号,那么需要进行阻抗匹配,从而避免信号的反射和震荡。Xilinx公司提供DCI (Digitally Controlled Impedance)可以在芯片内部进行阻抗匹配,匹配电阻更加接进芯片,可以减少元器件,节省PDB板面积,并且也更方便走线。 传统的阻抗匹配是在PCB板上端接一个电阻。理想情况下,源端输出阻抗认为是很小的,而接受端的输入阻抗认为是很大,在实际电路中都可以不去考虑,只考虑PCB上的走线,从接收端看过去PCB特征阻抗应该等于源端接电阻,这样电流从源端流向接收端才不会导致反射。 2、阻抗匹配原理 阻抗匹配是指负载阻抗与激励源内部阻抗互相适配,得到最大功率输出的一种工作状态。对于不同特性的电路,匹配条件是不一样的。在纯电阻电路中,当负载电阻等于激励源内阻时,则输出功率为最大,这种工作状态称为匹配,否则称为失配。当激励源内阻抗和负载阻抗含有电抗成份时,为使负载得到最大功率,负载阻抗与内阻必须满足共扼关系,即电阻成份相等,电抗成份只数值相等而符号相反。这种匹配条件称为共扼匹配。 在高速的设计中,阻抗的匹配与否关系到信号的质量优劣。阻抗匹配的技术可以说是丰富多样,但是在具体的系统中怎样才能比较合理的应用,需要衡量多个方面的因素。例如我们在系统中设计中,很多采用的都是源段的串连匹配。对于什么情况下需要匹配,采用什么方式的匹配,为什么采用这种方式。例如:差分的匹配多数采用并联终端匹配;时钟采用串联源端匹配。

Xilinx ISE 使用入门手册

Xilinx ISE使用入门手册1 发布日期:2009-3-613:06:10文章来源:搜电浏览次数:2940 1、ISE的安装 现以ISE5.2i为例介绍Xilinx ISE Series的安装过程。 1)系统配置要求 ISE5.2i推荐的系统配置与设计时选用的芯片有关。因为在综合与实现过程中运算量非常大,所以对系统配置要求很高。为了提高综合、仿真、实现过程的速度,对于计算机的CPU的主频、主板和硬盘的工作速度,尤其是内存大小配置都有非常高的要求。在ISE5.2i 支持的所有Xilinx的FPGA/CPLD中,要求最低的Spartan II和XC9500/XL/XV等系列需要的内存和虚拟内存推荐值均达到128MB,而对于Virtex-II XC2V8000来说,需要的内存和虚拟内存推荐值均高达3GB。 2)ISE5.2i的安装 以中文版Windows XP操作系统为例加以说明。 (1)启动Windows XP,插入ISE5.2i安装光盘,自动或选择执行Install.exe,安装界面如图4.25所示。 图4.25ISE5.2i安装界面

(2)单击此时安装界面上的操作选择“下一步”直到出现图示对话框,输入有效的Registration ID。之后单击“下一步”选择安装路径;再之后点击“下一步”,会弹出图4.26的对话框,可以选择器件模型。 图4.26器件模型选择对话框 (3)点击“下一步”,如图4.27所示,可以选择器件种类。

图4.27器件种类选择对话框 通过以上步骤后,可根据具体情况来选择,继续“下一步”即可完成安装。 安装完成后,环境变量应作如下描述: 若操作系统是Windows NT/2000/XP,选择开始->控制面板->系统->选项->系统->高级->环境变量,在环境变量中加入: 变量名:Xilinx 变量值:C:Xilinx(即安装路径) 具体设置如图4.28所示。

Xilinx FPGA全局时钟资源的使用方法

目前,大型设计一般推荐使用同步时序电路。同步时序电路基于时钟触发沿设计,对时钟的周期、占空比、延时和抖动提出了更高的要求。为了满足同步时序设计的要求,一般在FPGA设计中采用全局时钟资源驱动设计的主时钟,以达到最低的时钟抖动和延迟。FPGA全局时钟资源一般使用全铜层工艺实现,并设计了专用时钟缓冲与驱动结构,从而使全局时钟到达芯片内部的所有可配置单元(CLB)、I/O单元(IOB)和选择性块RAM(Block Select RAM)的时延和抖动都为最小。为了适应复杂设计的需要,Xilinx的FPGA 中集成的专用时钟资源与数字延迟锁相环(DLL)的数目不断增加,最新的Virtex II器件最多可以提供16个全局时钟输入端口和8个数字时钟管理模块(DCM)。与全局时钟资源相关的原语常用的与全局时钟资源相关的Xilinx器件原语包括:IBUFG、IBUFGDS、BUFG、BUFGP、BUFGCE、BUFGMUX、BUFGDLL和DCM等,如图1所示。 1. IBUFG即输入全局缓冲,是与专用全局时钟输入管脚相连接的首级全局缓冲。所有从全局时钟管脚输入的信号必须经过IBUF元,否则在布局布线时会报错。IBUFG支持AGP、CTT、GTL、GTLP、HSTL、LVCMOS、LVDCI、LVDS、LVPECL、LVTTL、PCI、PCIX和SSTL等多种格式的IO标准。 2. IBUFGDS是IBUFG的差分形式,当信号从一对差分全局时钟管脚输入时,必须使用IBUFGDS作为全局时钟输入缓冲。IBUFG支持BLVDS、LDT、LVDSEXT、LVDS、LVPECL和ULVDS等多种格式的IO标准。 3. BUFG是全局缓冲,它的输入是IBUFG的输出,BUFG的输出到达FPGA内部的IOB、CLB、选择性块RAM的时钟延迟和抖动最小。 4. BUFGCE是带有时钟使能端的全局缓冲。它有一个输入I、一个使能端CE和一个输出端O。只有当BUFGCE的使能端CE有效(高电平)时,BUFGCE才有输出。 5. BUFGMUX是全局时钟选择缓冲,它有I0和I1两个输入,一个控制端S,一个输出端O。当S为低电平时输出时钟为I0,反之为I1。需要指出的是BUFGMUX的应用十分灵活,I0和I1两个输入时钟甚至可以为异步关系。

xilinx 新手快速入门的好资料

⊙当前位置:搜电>> 资料>> Xilinx ISE 使用入门手册1 Xilinx ISE 使用入门手册1 发布日期:2009-3-6 13:06:10文章来源:搜电浏览次数:10677 1、ISE的安装 现以ISE 5.2i为例介绍Xilinx ISE Series的安装过程。 1)系统配置要求 ISE 5.2i推荐的系统配置与设计时选用的芯片有关。因为在综合与实现过程中运算量非常大,所以对系统配置要求很高。为了提高综合、仿真、实现过程的速度,对于计算机的CPU的主频、主板和硬盘的工作速度,尤其是内存大小配置都有非常高的要求。在ISE 5.2i支持的所有Xilinx的FPGA/CPLD中,要求最低的Spartan II和XC9500/XL/XV等系列需要的内存和虚拟内存推荐值均达到128MB,而对于Virtex-II XC2V8000来说,需要的内存和虚拟内存推荐值均高达3GB。 2)ISE 5.2i的安装 以中文版Windows XP操作系统为例加以说明。 (1)启动Windows XP,插入ISE5.2i安装光盘,自动或选择执行Install.exe,安装界面如图4.25所示。 图4.25 ISE5.2i安装界面 (2)单击此时安装界面上的操作选择“下一步”直到出现图示对话框,输入有效的Registration ID。之后单击“下一步”选择安装路径;再之后点击“下一步”,会弹出图4.26的对话框,可以选择器件模型。

图4.26 器件模型选择对话框 (3)点击“下一步”,如图4.27所示,可以选择器件种类。

图4.27 器件种类选择对话框 通过以上步骤后,可根据具体情况来选择,继续“下一步”即可完成安装。 安装完成后,环境变量应作如下描述: 若操作系统是Windows NT/2000/XP,选择开始->控制面板->系统->选项->系统->高级->环境变量,在环境变量中加入: 变量名:Xilinx 变量值:C:Xilinx(即安装路径) 具体设置如图4.28所示。

深入Xilinx Clocking Wizard 3.6(ISE) 4.2(Vivado)

SECTION I——综述 IP Facts Introduction Xilinx的Clocking Wizard Core(ISE v3.6,或VIVADO v4.2)可以更让用户根据自己的时钟需求更轻松地生成HDL源码封装。这个Clocking Wizard引导用户设置适当的时钟原语,并且允许用户覆盖其中的参数。除了提供目标时钟电路的HDL封装之外,Clocking Wizard会同时产生一个时序参数报告,这个报告由Xilinx的时序工具针对该电路分析得到。 Features ●每个时钟网络最多两个输入时钟、七个输出时钟 ●根据选定的器件自动选择正确的时钟原语 ●根据用户选定的时钟feature自动配置时钟原语 ●根据输入和输出频率的需求,自动计算VCO(压控振荡器)频率喝倍频、分频数值 ●自动执行所有的配置以符合相移、占空比需求 ●支持MMCME2的扩频时钟,允许用户选择有效的调制频率、模式和输入、输出时钟●可选的时钟信号缓冲器 ●时钟原语和任何计算属性可覆写 ●时钟电路的时序可预估,功耗可预估 ●生成一个可综合的时钟网络设计和一个仿真测试脚本 ●原语对应的窗口可供选择

对于不同的工具,Clocking Wizard所支持的器件版本可以通过这个core的release notes 来查询,文档名XPT也可以在ISE中添加IP CORE时查询Supported Families… Overview Clocking Wizard可以提供一个经验证的时钟网络,用户对Xilinx时钟原语的了解可以帮助用户做出权衡设计的决定。

Feature Summary ●Frequency synthesis 频率综合——允许输出不同于输入时钟频率的时钟 ●Spread spectrum 扩展频谱——扩频功能使经过调制的输出时钟减少EMI频谱能量密度,这个功能仅适用于原语MMCME2_ADV,当前版本不支持软件UNISIM对于此功能的仿真 ●Phase alignment 相位对齐——这个功能允许输出时钟和参考时钟的相位锁定,锁定的是相对相位差,例如一个器件的输入时钟 ●Minimize power 功耗优化——对于可能的频率、相位或占空比的精度功耗,这项功能能给与优化 ●Dynamic phase shift 动态相移——这项功能允许用户选择输出时钟的相位关系 ●Balanced 性能平衡——选择性能平衡会让软件选择合适的带宽来进行抖动优化 ●Minimize output jitter ●Maximize input jitter filtering 上述两项功能用于输入输出时钟抖动的过滤 ●Fast simulation 快速仿真——提高仿真运行速度

DC基本问题

1.14. translation这一步是用什么DC命令来实现的? 我们知道,DC综合过程包括3个步骤:translation + logic optimization + mapping transition 对应命令为 read_verilog(read_vhdl等) logic optimization 和 mapping 对应于 compile 1.15. 逻辑优化和映射(logic optimization + mapping)又是用什么DC命令来实现的? logic optimization 和 mapping 均在compile命令完成,但是可以指定使用特殊的优化方法:structural 和flatten,建议大家在synthesis时同时生成structural 和flatten格式的netlist,然后打开看看到底有什么不同之处。 1.17. 基于路径的综合的意思是什么? 路径(path),是DC中的一个重要概念。它包括4种路径方式: 1 input到FF的D端。 2 FF的clk到另一个FF的D端。 3 FF的clk到输出Q。 4 input到output。 基于路径的综合就是对这四种路径进行加约束,综合电路以满足这些约束条件。 1.24 reference 是指什么? 和cell 有什么区别? 当存在一个模块被多次例化,那么该模块就称为reference 1.25 如何读入一个design? 使用analyze + elaborate 或者 read_verilog、read -f verilog、 read_vhdl、read_file 命令。 1.26 analyze+ elaborate 和 read 命令有什么区别? read_file 是可以读取任何synopsys支持格式的;analyze和eloborate 只支持verilog和VHDL两个格式,但是他们支持在中间过程中加入参数而且以便以后可以加快读取过程。

XilinxXADC的使用中文介绍.docx

Zynq 器件 XADC的使用 ( 原创 ) 1.前言 赛灵思的7 系列 FPGA和 Zynq 器件创造性地在片上集成了模数转换器和相关的片上传感器(内置温度传感器和功 耗传感器),这是相比赛灵思前一代产品来新增加的特性,可在系统设计中免去外置的ADC器件,有力地提高了系统 的集成度。本文就这一新模块的使用进行简单介绍,希望对大家有所帮助,当然如有不当之处还请高手指正,以免误 导大家,欢迎大家补充。 2. XADC模块介绍 2.1 XADC 模块概述 Zynq 器件 XADC模块包括2 个 12 比特 1 MIPS的模数转换器和相关的片上传感器,模数转换器能为系统应用提供通用目 的的高精度的模拟接口,下图是XADC模块的框图: XADC模块支持不同的操作模式,如外步触发同步采样模式;可接受不同类型的模拟输入信号,如单端或差分信号;最多能接受 17 路外部的模拟输入信号。 XADC模块也包括一定数量的片上传感器用来测量片上的供电电压和芯片温度,

这些测量转换数据存储在一个叫状态寄存器(status registers)的专用寄存器内,可由FPGA内部叫动态配置端口(Dynamic Reconfiguration Port (DRP))的16 位的同步读写端口访问。ADC转换数据也可以由JTAG TAP访问,这种情况 下 并不需要去直接例化 XADC模块,因为这是一个已经存在于 FPGAJTAG结构的专用接口,此时因为没有在设计中直接例化XADC模块, XADC模块就工作在一种预先定义好的模式叫缺省模式,缺省模式下 XADC模块专用于监视芯片上的供电电压和芯片温度。 XADC模块的操作模式是由用户通过 DRP或 JTAG接口写控制寄存器来选择的,控制寄存器的初始值有可能在设计中例化 XADC模块时的块属性( block attributes )指定。 2.2 XADC 模块管脚需求 所有的 XADC模块专用管脚都位于bank0,所以都加有_0的后缀。下图表示了XADC的基本输入输出需求: 这有两种推荐配置:图中左边 XADC由 Vccaux(1.8V) 供电,并且用一个外部的 1.25V 参考源。用外部参考源在精度和热飘移方面可以获得更好的性能,一个磁珠用隔离模拟地和数字地,这可避免较常用的模拟和数字电路共地而把噪 声带入模拟电路的缺点;图中右边XADC是用片内的参考源,这时VREFP脚必须按图中所示连接到地。

Encounter使用入门教程

Encounter使用入门教程 本教程介绍一下自动布局布线工具Encounter的使用知识,开始以一个简单的十进制计数器版图的自动实现为例子,之后介绍包含block模块的复杂的版图自动实现。 在Designer Compiler使用入门教程中,笔者设计了一个十进制计数器,并经过Design Compiler对其进行综合后获得了门级综合网表文件counter.sv以及约束文件counter.sdc,根据这两个文件,我们就可以使用SOC Encounter实现十进制计数器的物理版图设计了。首先,我们要准备使用Encounter进行版图自动设计时所需要的数据: 时序库文件:fast.lib,slow.lib,tpz973gwc.lib,tpz973gbc.lib 物理库文件:tsmc18_6lm_cic.lef,tpz973g_5lm_cic.lef,tsmc18_6lm_antenna_cic.lef 门级网表文件:pad_counter.sv 时序约束文件:pad_counter.sdc IO位置放置文件:pad_counter.io //在设计导入Encounter中指定PAD的放置位置文件,不是必须文件 还有其它一些文件在后面用到时进行介绍。 一、网表中添加PAD、编写IO Assignment File 这里,pad_counter.sv是加入PAD后综合得到的门级网表。工程项目中设计制作完成后的芯片要进行封装,PAD就是芯片在封装时连接封装引线的地方。一般信号输入/输出PAD即I/O PAD要在综合前添加进入网表中,电源电压PAD 可以在综合时添加也可以在综合后添加。接下来就先介绍一下如何在网表中加入PAD,其实给网表加入PAD就是一般的module例化,和Verilog中一般的module 模块例化是一样的。 这里介绍在综合时给设计中加入I/O PAD。十进制计数器的Verilog源程序如下:module Cnt10(reset_n,clk,in_ena,cnt,carry_ena); input clk; input reset_n; input in_ena; output [3:0] cnt; output carry_ena; reg [3:0] cnt; reg carry_ena; always @(posedge clk or negedge reset_n) begin if(!reset_n) cnt<=4'b0; else if(in_ena && cnt==4'd10)

Xilinx ISE 使用入门手册

Xilinx ISE 使用入门手册 发布日期:2009-3-6 13:06:10文章来源:搜电浏览次数:6414 1、ISE的安装 现以ISE 5.2i为例介绍Xilinx ISE Series的安装过程。 1)系统配置要求 ISE 5.2i推荐的系统配置与设计时选用的芯片有关。因为在综合与实现过程中运算量非常大,所以对系统配置要求很高。为了提高综合、仿真、实现过程的速度,对于计算机的CPU的主频、主板和硬盘的工作速度,尤其是内存大小配置都有非常高的要求。在ISE 5.2i支持的所有Xilinx的FPGA/CPLD中,要求最低的Spartan II和XC9500/XL/XV 等系列需要的内存和虚拟内存推荐值均达到128MB,而对于Virtex-II XC2V8000来说,需要的内存和虚拟内存推荐值均高达3GB。 2)ISE 5.2i的安装 以中文版Windows XP操作系统为例加以说明。 (1)启动Windows XP,插入ISE5.2i安装光盘,自动或选择执行Install.exe,安装界面如图4.25所示。 图4.25 ISE5.2i安装界面 (2)单击此时安装界面上的操作选择“下一步”直到出现图示对话框,输入有效的Registration ID。之后单击“下一步”

选择安装路径;再之后点击“下一步”,会弹出图4.26的对话框,可以选择器件模型。 图4.26 器件模型选择对话框 (3)点击“下一步”,如图4.27所示,可以选择器件种类。

图4.27 器件种类选择对话框 通过以上步骤后,可根据具体情况来选择,继续“下一步”即可完成安装。 安装完成后,环境变量应作如下描述: 若操作系统是Windows NT/2000/XP,选择开始->控制面板->系统->选项->系统->高级->环境变量,在环境变量中加入: 变量名:Xilinx 变量值:C:Xilinx(即安装路径) 具体设置如图4.28所示。

相关文档