Xilinx网站资源导读(绝对有用)
5.3.2 Xilinx全局资源的使用方法[共2页]
![5.3.2 Xilinx全局资源的使用方法[共2页]](https://img.taocdn.com/s3/m/861220e110661ed9ac51f311.png)
第5章 ISE 综合工具124图5-19 分析综合结果5. XST 产生的寄存器传输级视图功能和Synplify Pro 的“RTL View ”相似,但是没有Synplify Pro 的“RTL View ”功能强大。
双击“View RTL Schematic ”图标,ISE 自动调用原理图编辑器ECS 来打开综合产生的寄存器传输级视图。
5.3 全局时钟和第二全局时钟资源5.3.1 全局时钟资源简介在设计过程中,一般推荐使用同步时序电路。
同步时序电路基于时钟触发沿设计,对时钟的周期、占空比、延时、抖动提出了更高的要求。
为了满足同步时序设计的要求,一般在FPGA/CPLD 设计中采用全局时钟资源驱动设计的主时钟,以达到最低的时钟抖动和延迟。
在Xilinx FPGA/CPLD 中的全局时钟资源一般使用全铜层工艺实现,并设计了专用时钟缓冲与驱动结构,从而使全局时钟到达芯片内部的所有可配置单元(CLB )、I/O 单元(IOB )和选择性块RAM (Block Select RAM )的时延与抖动都为最小。
为了适应复杂设计的需要,Xilinx 的FPGA/CPLD 中集成的专用时钟资源与数字延迟锁相环的数目不断增加。
5.3.2 Xilinx 全局资源的使用方法Xilinx 全局时钟资源的使用方法有以下5种。
1. IBUFG+BUFG 的使用方法:IBUFG 后面连接BUFG 的方法是最基本的全局时钟资源的使用方法,由于IBUFG 组合BUFG 相当于BUFGP ,所以这种使用方法也称为BUFGP 方法,如图5-20所示。
图5-20 IBUFG+BUFG 的使用方法2. IBUFGDS+BUFG 的使用方法:当输入时钟信号为差分信号时,需要使用IBUFGDS 代替IBUFG ,如图5-21所示。
Xilinx学习资料

第0篇Xilinx FPGA开发环境的配置一、配置Modelsim ISE的Xilinx的仿真库1、编译仿真库:A、先将Modelsim安装目录C=Modeltech_6.2b下面的modelsim.ini改成存档格式(取消只读模式);B、在DOS环境中,进入Xilinx的根目录,然后依次进入bin,nt目录;C、运行compxlib -s mti_se -f all -l all -oC:Modeltech_6.2bxilinx_libs。
注意:需要根据你安装的modelsim目录更改C:Modeltech_6.2b 然后就Ok了,就可以的ISE中启动Modelsim进行所有的仿真了。
2、如何在Xilinx ISE中使用Modelsim ISE,Synplify进行综合和仿真:A、打开Xilinx ISE,新建一个Project;①、在菜单File中选择“New Project”,弹出如下的对话框:②、输入Project名称,并选择好Project保存的路径,然后下一步:字串3按照上边的参数进行设置(针对于Spatan 3E的开发板),然后单击下一步,进入到后面的界面:③、单击“New Source”按钮,并按照下面的设置来操作:④、参照下面的参数,进行设置,然后一直选择默认选项,一直到完成。
最后生成的项目界面如下图所示:B、输入代码,然后用Synplify综合:①、参考代码:entity Count iSPort(CLK :in STD_LOGIC;RESET :in STD_LOGIC;LOAD :in STD_LOGIC;DATA IN:in STD_LOGIC_VECTOR(3 downto 0);字串9Qout :out STD_LOGIC_VECTOR(3 downto 0));end Count;architecture Behavioral of Count issignal tmpCount:STD_LOGIC_VECTOR(3 downto 0);beginprocess(CLK,RESET,LOAD)beginif RESET='1' thentmpCount<="0000";elseif LOAD='1' thentmpCount<=DATA_IN;elsif CLK'event and CLK='1' thentmpCount<=tmpCount+1;end if;end if;end process; 字串6Qout<=tmpCount:end Behavioral;②、双击Processes窗口里面的“Synthesize-Synplify”进行综合③、在“Transcript”窗口中的可以看到综合的信息。
xilinxFPGASelectIO模块

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(输入/输出缓冲器)。
Xilinx FPGA的三种片上存储资源

Xilinx FPGA的三种片上存储资源
一. 概述
Xilinx FPGA有三种可以用来做片上存储(RAM,ROM等等)的资源,第一个就是Flip Flop;第二种就是SLICEM里面LUT;第三种就是Block RAMs资源。
在用Vivado建立工程的时候选择器件的时候就可以看到这些资源的多少。
如下图所示。
这里面的LUT资源是所有的LUT资源,包括SLICEL和SLICEM里面,如果大家想获得其中SLICEM的LUT资源多少,需要查看相关器件手册。
如果大家想要了解底层,SLICEM中的LUT是如何形成RAM等资源的原理,大家可以回顾文章《初识FPGA CLB之LUT实现RAM》。
FlipFlop即触发器资源,一个FlipFlop即一个1bit的触发器。
不同系列的器件,一个Block RAMs的内存大小不一样。
例如7系列的。
第八章 Xilinx操作系统及库

标准的C库(lib.a)
该库为MicroBlaze和PowerPC处理器提供了标准的C函 数。可以根据下面路径下的这些标准C函数找到头文件。 <XILINX_EDK>/gnu/<processor>/<platform>/<processorlib>/include 其中: <XILINX_EDK>为EDK的安装路径; <processor>为powerpc-eabi或microblaze; <platform>为sol,nt,lin; <processor-lib>为powerpc-eabi或microblaze-xilinx-elf;
图8.1 XMK结构
Xilinx的微核
用户的应用程序通过不同的方法和XMK的不同组成部 分进行接口。 除了一些交互外,库之间是独立的。比如,Xilkernel 使用BSP。BSP和Xilinx驱动构成了对底层硬件的抽象。 XMK的库和OS依赖于标准的C库组成部分。数学库 libm.a可以用来和用户的应用程序连接。
Xilinx的微核
LibXil库由下面构成:
1)LibXil Driver-Xilinx的设备驱动程序; 2)LibXil MFS-Xilinx的存储文件系统(Memory File System, MFS); 3)LibXil Flash-并行Flash编程库; 4)LibXil lsf-串行Flash编程库;
• • • void microblaze_enable_interrupts(void) void microblaze_disable_interrupts(void) void microblaze_register_handle(XInterruptHandler Handler, void *DataPtr)
XILINX FPGA设计中如何更好的优化资源

XILINX FPGA设计中如何更好的优化资源在设计过程中我们只要注意一些要点,就可以节省下宝贵的芯片资源。
下面以XILINX FPGA为例阐述在设计中如何节约资源。
一从器件角度来理解如何节省资源FPGA是基于查找表技术的可编程逻辑器件,其内部包含丰富的资源:CLB,BlockRam 而有些器件还包含了DSP48等资源。
CLB是FPGA的基本逻辑单元,CLB模块不仅可以用于实现组合逻辑,时序逻辑,还可以配置为分布式RAM和分布式ROM。
每个CLB由2个或4个相同的Slice和附加逻辑构成,CLB内部结构如图1所示。
图1 . CLB内部结构每个Slice由2个LUT,2个FF和进位链构成。
图2即为6输入LUT的内部结构。
图2 . LUT6内部结构1.利用Slice来优化资源。
巧妙利用Slice可以节约很多的资源,典型的例子就是移位寄存器。
对比用代码编写的32位移位寄存器和用原语调用的32位移位寄存器,就可以看出怎样利用Slice节约资源。
用代码编写的32位移位寄存器:always@(posedge clk)beginQ <= {Q[30:0],D};end用原语调用一个32位移位寄存器:SRL32#(.INIT(32'h00000))U_DIV_LATENCY_OIF0[2:0](.CLK(Gclk), .D(Oif_base_q), .Q(Oi f_base_q0), .A0(1'b1), .A1(1'b1), .A2(1'b1), .A3(1'b1) , .A4(1'b1));综合之后可以发现,使用代码会消耗32个FF,而使用原语只要一个LUT6就可以完成。
用原语生成移位寄存器要比用代码生成寄存器节约32个触发器资源。
当然我们也可以例化IP核,但是,使用原语会比例化IP核在complier时候更加节省时间。
因为Verilog语言的IP核是由.v和.ngc文件构成的。
Xilinx约束学习笔记(二)——定义时钟

Xilinx约束学习笔记(⼆)——定义时钟2. 定义时钟2.1 关于时钟为了获得最佳精度路径覆盖信息,必须正确定义时钟。
时钟要定义在时钟树的根 pin 或 port 上,称为 source point。
时钟的边缘应该由周期和波形进⾏组合描述。
周期使⽤纳秒做为单位进⾏定义。
它对应于波形重复的时间。
波形是⼀系列的上升沿和下降沿绝对时间列表,单位为纳秒,并且所有时间在⼀个时钟周期内。
列表必须包含偶数个值。
第⼀个值始终对应于第⼀个上升边缘。
如果没有指定波形,波形的默认占空⽐为 50%,相移为 0。
2.1.1 传播时钟周期和波形属性只展现出了时钟的理想特性。
当时钟进⼊ FPGA 并通过时钟树传播时,时钟边沿被延缓,并受噪声和硬件⾏为引影响。
这些特性称为时钟⽹络延迟和时钟不确定性。
时钟的不确定性包括:时钟抖动(clock jitter)相位错误⽤户指定添加的不确定性默认情况下,Vivado 在做时序分析时,始终将时钟视为传播时钟,即⾮理想时钟,以此提供准确的余量值,其中包括时钟树插⼊延迟和不确定性。
2.1.2 专⽤硬件资源FPGA 有⼤量专⽤的时钟管脚,这个管脚可以专门⽤来做时钟的输⼊。
FPGA 内部包含有 MMCM、PLL 和 BUR 之类的时钟资源。
2.2 基准时钟(Primary Clock)基准时钟是通过 FPGA 输⼊端⼝或千兆收发器输出引脚(例如,恢复时钟)进⼊设计的时钟。
基准时钟只能通过 create_clock 指令进⾏定义。
(为什么是千兆收发器?下⾯的话应该可以解释,7 系列的 GT 恢复时钟不能⾃动推导,必须⼿动定义。
⽽ US 和 USP 系列的可以⾃动推导,不需要⼈为定义)Primary clocks must be defined on a gigabit transceiver output only for Xilinx® 7 series FPGAs. For UltraScale and UltraScale+™ devices, the timer automatically derives clocks on the GT output ports.基准时钟必须附加到⽹表对象。
Xilinx手册

Xilinx® Virtex™-5 FXT Evaluation KitUser GuideTable of Contents1.0Introduction (4)1.1Description (4)1.2Board Features (4)1.3Test Files (4)1.4Reference Designs (5)1.5Ordering Information (5)2.0Functional Description (6)2.1Xilinx Virtex-5 FX30T FPGA (6)2.2Memory (6)2.2.1DDR2 SDRAM Interface (7)2.2.2Flash Memory (10)2.3Clock Sources (10)2.4Communication (12)2.4.1.110/100/1000 Ethernet PHY (12)2.4.1.2Universal Serial Bus (USB) to UART Bridge Transceiver (14)2.4.1.3RS232 (14)2.5User Switches (15)2.6User LEDs (16)2.7Configuration and Debug Ports (16)2.7.1Configuration Modes (16)2.7.2System ACE™ Module Connector (17)2.7.3JTAG Port (PC4) (18)2.7.4CPU Debug Port (19)2.7.5CPU Trace Port (19)2.8Power (20)2.8.1FPGA I/O Voltage (Vcco) (20)2.8.2FPGA Reference Voltage (Vref) (21)2.9Expansion Connectors (21)2.9.1EXP Interface (21)3.0Test Designs (24)3.1Factory Test (24)3.2Ethernet Test (24)3.3USB UART Test (24)4.0Revisions (25)Appendix A (26)FiguresFigure 1 - Virtex-5 FXT Evaluation Board Picture (5)Figure 2 - Virtex-5 FXT Evaluation Board Block Diagram (6)Figure 3 - Virtex-5 FXT Evaluation Board Memory Interfaces (7)Figure 4 - DDR2 SDRAM Interface (7)Figure 5 - Clock Nets Connected to Global Clock Inputs (11)Figure 6 - 10/100/1000 Mb/s Ethernet Interface (12)Figure 7 - USB to UART Transceiver Interface (14)Figure 8 - RS232 Interface (15)Figure 9 - SAM Interface (50-pin header) (17)Figure 10 - PC4 JTAG Port Connector (18)Figure 11 - CPU Debug Connector (19)Figure 12 - CPU Trace Connector (19)Figure 13 – Virtex-5 FXT Evaluation Board Power (20)Figure 14 - EXP I/O Voltage Jumpers (21)Figure 15 - Virtex-5 FXT Evaluation Board Placement (26)TablesTable 1 - Ordering Information (5)Table 2 - XC5FX30T Features (6)Table 3 - DDR2 SDRAM Timing Parameters (8)Table 4 - Virtex-5 FXT DDR2 FPGA Pinouts (9)Table 5 - Virtex-5 Flash Memory Pinout (10)Table 6 - On-Board Clock Sources (11)Table 7 - Clock Socket "U12" Pin-out (11)Table 8 - User Clock Input (12)Table 9 - Ethernet PHY Hardware Strapping Options (13)Table 10 - Ethernet PHY Pin Assignments (14)Table 11 - USB to UART Interface FPGA Pin-out (14)Table 12 - RS232 Signals (15)Table 13 - Push-Button Pin Assignments (15)Table 14 - DIP Switch Pin Assignments (16)Table 15 - LED Pin Assignments (16)Table 16 - FPGA Configuration Modes (16)Table 17 - SAM Interface Signals (18)Table 18 - V5FX30T I/O Bank Voltages (20)Table 19 - EXP Connector Signals (22)Table 20 - EXP Connector "JX1" Pin-out (23)1.0 IntroductionThe purpose of this manual is to describe the functionality and contents of the Virtex-5 FXT Evaluation Kit from Avnet Electronics Marketing. This document includes instructions for operating the board, descriptions of the hardware features and explanations of the test code programmed in the on-board flash.1.1 DescriptionThe Virtex-5 FXT Evaluation Kit provides a complete hardware environment for designers to accelerate their time to market.The kit delivers a stable platform to develop and test designs targeted to the advanced Xilinx FPGA family. The installed Virtex-5 FX30T device offers a prototyping environment to effectively demonstrate the enhanced benefits of leading edge Xilinx FPGA solutions. Reference designs are included with the kit to exercise standard peripherals on the development board for a quick start to device familiarization.Features1.2 BoardFPGA— Xilinx Virtex-5 XC5VFX30T-FF665 FPGAI/O Connectors— One EXP general-purpose I/O expansion connectors— One 50-pin 0.1” Header supports Avnet System ACE Module (SAM)— 16-pin 0.1” CPU debug header— Mictor CPU Trace Port— User Clock Inputs via Differential SMA ConnectorsMemory— 64 MB DDR2 SDRAM— 16 MB FLASHCommunication— RS-232 serial port— USB-RS232 Port— 10/100/1000 Ethernet PHYPower— Regulated 3.3V, 2.5V, and 1.0V supply voltages derived from an external 5V supply— DDR2 termination (0.9V) and supply/reference voltage (1.8V) regulator.Configuration— Xilinx Parallel Cable IV or Platform USB Cable support for JTAG Programming/Configuration— 16MB Intel BPI FlashFiles1.3 TestThe flash memory on the Virtex-5 FX30T Evaluation Board comes programmed with a factory test design that can be used as base tests for some of the peripherals on the board. The test designs listed below are discussed in Section 3.0. The factory test will test the following interfaces/peripherals:— DDR2 memory— Flash memory— User LEDs— User push-buttonsOther factory test designs for testing the Ethernet and USB-RS232 interfaces are available on the Avnet Design Resource Center web site (/drc).1.4 ReferenceDesignsReference designs that demonstrate some of the potential applications of the board can be downloaded from the Avnet Design Resource Center (/drc). The reference designs include all of the source code and project files necessary to implement the designs. See the PDF document included with each reference design for a complete description of the design and detailed instructions for running a demonstration on the evaluation board. Check the DRC periodically for updates and new designs.Figure 1 - Virtex-5 FXT Evaluation Board Picture1.5 OrderingInformationThe following table lists the development kit part number.Internet link at /drcPart Number HardwareAES-V5FXT-EVL30-G Xilinx Virtex-5 FXT Kit populated with an XC5VFX30T-1 speed grade deviceTable 1 - Ordering Information2.0 Functional DescriptionA high-level block diagram of the Virtex-5 FXT Evaluation board is shown below followed by a brief description of each sub-section.Figure 2 - Virtex-5 FXT Evaluation Board Block Diagram2.1 Xilinx Virtex-5 FX30T FPGAThe Virtex-5 FX30T FPGA features 4 DCMs, 2 PLLs, and 1.25 Gbps LVDS I/O. The following table shows some other main features of the FF676 package.Device Number ofSlices BlockRAM(Kb)DSP48ESlicesXC5VFX30T 5,120 2,448 64Table 2 - XC5FX30T FeaturesPlease refer to the Virtex-5 FX30T Data sheet for a complete detailed summary of all device features.324 of the 360 available I/O on the Virtex-5 FX30T device are used in the design.2.2 MemoryThe Virtex-5 FXT Evaluation Board is populated with both high-speed RAM and non-volatile Flash to support various types of applications. The board has 64 Megabytes (MB) of DDR2 SDRAM and 16 MB of Flash. The following figure shows a high-level block diagram of the memory interfaces on the evaluation board. If additional memory is necessary for development, check the Avnet Design Resource Center (DRC) for the availability of EXP compliant daughter cards with expansion memory (sold separately). Here is the link to the DRC web page: /drc.Figure 3 - Virtex-5 FXT Evaluation Board Memory Interfaces2.2.1 DDR2 SDRAM InterfaceTwo Micron DDR2 SDRAM devices, part number MT47H16M16BG-5E, make up the 32-bit data bus. Each device provides 32MB of memory on a single IC and is organized as 4 Megabits x 16 x 4 banks (256 Megabit). The device has an operating voltage of 1.8V and the interface is JEDEC Standard SSTL_2 (Class I for unidirectional signals, Class II for bidirectional signals). The -5E speed grade supports 5 ns cycle times with a 3 clock read latency (DDR2-400). DDR2 On-Die-Termination (ODT) is also supported. The following figure shows a high-level block diagram of the DDR SDRAM interface on the Virtex-5 FXT Evaluation Board.Figure 4 - DDR2 SDRAM InterfaceThe following table provides timing and other information about the Micron device necessary to implement a DDR2 memory controller.MT47H16M16BG-5E: Timing Parameters Time (ps) orNumberLoad Mode Register time (TMRD) 25000Write Recovery time (TWR) 15000Write-to-Read Command Delay (TWTR) 1Delay between ACT and PRE Commands (TRAS) 90000Delay after ACT before another ACT (TRC) 65000Delay after AUTOREFRESH Command (TRFC) 115000Delay after ACT before READ/WRITE (TRCD) 25000Delay after ACT before another row ACT (TRRD) 15000Delay after PRECHARGE Command (TRP) 20000Refresh Command Interval (TREFC) 115000Avg. Refresh Period (TREFI) 7800000Memory Data Width (DWIDTH) (x2 devices) 32Row Address Width (AWIDTH) 13Column Address Width (COL_AWIDTH) 9Bank Address Width (BANK_AWIDTH) 2Memory Range (64 MB total) 0x3FFFFFFTable 3 - DDR2 SDRAM Timing ParametersThe following guidelines were used in the design of the DDR2 interface to the Virtex-5 FX30T FPGA. These guidelines are based on Micron recommendations and board level simulation.•Dedicated bus with matched trace lengths (+/- 100 mils)•Memory clocks routed differentially•50 ohm* controlled trace impedance•Series termination on bidirectional signals at the memory device•Parallel termination following the memory device connection on all signals•100 ohm* pull-up resistor to the termination supply on each branch of shared signals (control, address)•Termination supply that can source both termination and reference voltages.* Ideal impedance values. Actual may vary.Some of the design considerations were specific to the Virtex-5 architecture. For example, the data strobe signals (DQS) were placed on Clock Capable I/O pins in order to support data capture techniques utilizing the SERDES function of the Virtex-5 I/O blocks. The appropriate DDR2 memory signals were placed in the clock regions that correspond to these particular Clock Capable I/O pins.The DDR2 signals are connected to I/O Banks 11 and 13 of the Virtex-5 FX30T FPGA. The output supply pins (VCCO) for Banks 11 and 13 are connected to 1.8 Volts. This supply rail can be measured at test point TP5, which can be found in the area around the power modules. The reference voltage pins (VREF) for Banks 11 and 13 are connected to the reference output of the Texas Instruments TPS51116 DDR2 Power Solution Regulator. This rail provides the voltage reference necessary for the SSTL_2 I/O standard as well as the termination supply rail. The termination voltage is 0.9 Volts and can be measured at test point TP6.The following table contains the FPGA pin numbers for the DDR2 SDRAM interface.Signal Name Virtex-5 pin Signal Name Virtex-5 pinDDR_A0 U25 DDR_D0 R22DDR_A1 T25 DDR_D1 R23DDR_A2 T24 DDR_D2 P23DDR_A3 T23 DDR_D3 P24DDR_A4 U24 DDR_D4 R25DDR_A5 V24 DDR_D5 P25DDR_A6 Y23 DDR_D6 R26DDR_A7 W23 DDR_D7 P26DDR_A8 AA25 DDR_D8 M26DDR_A9 AB26 DDR_D9 N26DDR_A10 AB25 DDR_D10 K25DDR_A11 AB24 DDR_D11 L24DDR_A12 AA23 DDR_D12 K26DDR_D13J26J25 DDR_D14DDR_BA0 U21 DDR_D15 N21DDR_BA1 V22M21 DDR_D16DDR_CS# AD24 DDR_D17 J23ODT AF24 DDR_D18 H23H22 DDR_D19DDR_WE# AA22 DDR_D20 G22DDR_RAS# Y22 DDR_D21 F22DDR_CAS# W24 DDR_D22 F23DDR_CLKEN T22 DDR_D23 E23G24DM0 U26 DDR_D24F24DM1 N24 DDR_D25G25DM2 M24 DDR_D26DM3 M25 DDR_D27H26G26 DDR_D28DQS0 P,N W26, W25 DDR_D29 F25DQS1 P,N L23, L22 DDR_D30 E25DQS2 P,N K22, K23 DDR_D31 E26DDR2_CLK0 P,N V21, W21DDR2_CLK1 P,N N22, M22Table 4 - Virtex-5 FXT DDR2 FPGA PinoutsMemory2.2.2 FlashThe Virtex-5 FXT Evaluation Board has 16 MB of non-volatile flash memory on board. The flash device is made by Intel,part number: PC28F128P30T85. The flash memory interface utilizes a 16-bit data bus and can be accessed directly without any external hardware settings or jumpers. See the following table for the flash memory to Virtex-5 pinout.Signal Name Virtex-5 Pin Signal Name Virtex-5 PinFLASH_A0 Y11 FLASH_D0 AA15FLASH_A1 H9 FLASH_D1 Y15FLASH_A2 G10 FLASH_D2 W14FLASH_A3 H21 FLASH_D3 Y13FLASH_A4 G20 FLASH_D4 W16FLASH_A5 H11 FLASH_D5 Y16FLASH_A6 G11 FLASH_D6 AA14FLASH_A7 H19 FLASH_D7 AA13FLASH_A8 H18 FLASH_D8 AB12FLASH_A9 G12 FLASH_D9 AC11FLASH_A10 F13 FLASH_D10 AB20FLASH_A11 G19 FLASH_D11 AB21FLASH_A12 F18 FLASH_D12 AB11FLASH_A13 F14 FLASH_D13 AB10FLASH_A14 F15 FLASH_D14 AA20FLASH_A15 F17 FLASH_D15 Y21FLASH_A16 G17FLASH_A17 G14 FLASH_CE# Y12FLASH_A18 H13 FLASH_OE# AA12FLASH_A19 G16 FLASH_WE# AA17FLASH_A20 G15 FLASH_RST# D13FLASH_A21 Y18 FLASH_BYTE# Y17FLASH_A22 AA18 FLASH_WAIT# D16FLASH_A23 Y10 FLASH_ADV# F19FLASH_A24 W11Table 5 - Virtex-5 Flash Memory PinoutSources2.3 ClockThe Virtex-5 FXT Evaluation Board includes all of the necessary clocks on the board to implement designs as well as providing the flexibility for the user to supply their own application specific clocks. The clock sources described in this section are used to derive the required clocks for the memory and communications devices, and the general system clocks for the logic design. This section also provides information on how to supply external user clocks to the FPGA via the on-board connectors and oscillator socket.The following figure shows the clock nets connected to the I/O banks containing the global clock input pins on the Virtex-5 FX30T FPGA. Ten out of the twenty global clock inputs of the Virtex-5 FPGA are utilized on the board as clock resources. The other global clock inputs are used for user I/O. It should be noted that single-ended clock inputs must be connected to the P-side of the pin pair because a direct connection to the global clock tree only exists on this pin. The I/O voltage (VCCO) for Bank 3 is set at 3.3V. Bank 4 is jumper selectable via JP2 to either 2.5V or 3.3V. In order to use the differential clock inputs as LVDS inputs, the VCCO voltage for the corresponding bank must be set for 2.5V since the Virtex-5 FPGA does not support 3.3V differential signaling. Single-ended clock inputs do not have this restriction and may be either 2.5V or 3.3V. The interface clocks and other I/O signals coming from 3.3V devices on the board are level-shifted to the appropriate VCCO voltage by CB3T standard logic devices prior to the Virtex-5 input pins.Figure 5 - Clock Nets Connected to Global Clock InputsThe on-board 100MHz oscillator provides the system clock input to the global clock tree. This single-ended, 100 MHz clock can be used in conjunction with the Virtex-5 Digital Clock Managers (DCMs) to generate the various processor clocks and the clocks forwarded to the DDR SDRAM devices. The interface clocks supplied by the communications devices are derived from dedicated crystal oscillators.Reference# Frequency Derived InterfaceClock Derived Frequency Virtex-5 pin#U11 100 MHz CLK_100MHZ 100 MHz E18 U12 (sckt) User defined User Defined User Defined E13 J2, J5User DefinedUser Defined User Defined AB15. AB16GMII_RX_CLK E20GMII_TX_CLK 2.5, 25, 125 MHzE17 Y125 MHz GBE_MCLK 125 MHz F20Table 6 - On-Board Clock SourcesThe clock socket is an 8-pin DIP clock socket that allows the user to select an oscillator of choice. The socket is a single-ended, LVTTL or LVCMOS compatible clock input to the FPGA that can be used as an alternate source for the system clock.Signal Name Socket pin#Enable 1 GND 4 Output 5 VDD 8 Table 7 - Clock Socket "U12" Pin-outNet Name Input Type Connector.pin# Virtex-5 pin#clock U16.5 E13CLK_SOCKET GlobalTable 8 - User Clock Input2.4 CommunicationThe Virtex-5 FX30T FPGA has access to Ethernet and RS232 physical layer transceivers for communication purposes. Network access is provided by a 10/100/1000 Mb/s Ethernet PHY, which is connected to the Virtex-5 via a standard GMII interface. The PHY connects to the outside world with a standard RJ45 connector (J1) and is located in the upper right corner of the board.A USB compatible RS232 transceiver is available for use as well. The USB Type B peripheral connector (JR1) is mounted on the top right corner of the board. A second, standard DB9 Serial port (P1) to the embedded processor or FPGA fabric is provided through a dual-channel RS232 transceiver.2.4.1 10/100/1000 Ethernet PHYThe PHY is a National DP83865DVH Gig PHYTER® V. The DP83865 is a low power version of National’s Gig PHYTER V with a 1.8V core voltage and 3.3V I/O voltage. The PHY also supports 2.5V I/O, but the 2.5V option is used on the board. The PHY is connected to a Tyco RJ-45 jack with integrated magnetics (part number: 1-6605833-1). The jack also integrates two LEDs and their corresponding resistors as well as several other passive components. External logic is used to logically OR the three link indicators for 10, 100 and 1000 Mb/s to drive a Link LED on the RJ-45 jack. The external logic is for the default strap options and may not work if the strap options are changed. Four more LEDs are provided on the board for status indication. These LEDs indicate lnk at 10 Mb/s, link at 100 Mb/s, link at 1000 Mb/s and Full Duplex operation. The PHY clock is generated from its own 25 MHz crystal. The following figure shows a high-level block diagram of the interface to the DP83865 Tri-mode Ethernet PHY.Figure 6 - 10/100/1000 Mb/s Ethernet InterfaceThe PHY address is set to 0b00001 by default. PHY address 0b00000 is reserved for a test mode and should not be used. Three-pad resistor jumpers are used to set the strapping options. These jumper pads provide the user with the ability to change the settings by moving the resistors. The strapping options are shown in the following table. The dual-function pins that are used for both a strapping option and to drive an LED, have a set of two jumpers per pin. The dual-function pins are indicated by an asterisk in the table.Function Jumper InstallationResistorMode EnabledJT4: pins 1-2 JT5: pins 1-2 0 ohm 0 ohm Auto-negotiation enabled (default) Auto-Negotiation*JT4: pins 2-3 JT5: pins 2-3 0 ohm 0 ohm Auto-negotiation disabled JT8: pins 1-2 JT9: pins 1-2 0 ohm 0 ohm Full Duplex (default) Full/Half Duplex*JT8: pins 2-3 JT9: pins 2-30 ohm 0 ohm Half DuplexSpeed 1*JT1: pins 1-2 JT2: pins 1-20 ohm 0 ohmSpeed 0*JT1: pins 1-2 JT2: pins 1-20 ohm 0 ohm Speed Selection: (Auto-Neg enabled) Speed1 Speed0 Speed Advertised1 1 1000BASE-T, 10BASE-T 1 0 1000BASE-T0 1 1000BASE-T, 100BASE-TX0 0 1000BASE-T, 100BASE-TX, 10BASE-TDefault: 1000BASE-T, 100BASE-TX, 10BASE-T JT9: pins 1-2 JT10: pins 1-2 0 ohm 0 ohm PHY Address 0b00001 (default) PHY address 0*JT9: pins 2-3 JT10: pins 2-3 0 ohm 0 ohm PHY Address 0b00000JT6: pins 1-2 Compliant and Non-comp. Operation (default) Non-IEEE Compliant Mode JT6: pins 2-3 1 K 1 K Inhibits Non-compliant operation JT10: pins 1-2 Straight Mode (default) Manual MDIX Setting JT10 pins 2-3 1 K 1 K Cross-over ModeJT11: pins 1-2 Automatic Pair Swap – MDIX (default)Auto MDIX Enable J11: pins 2-3 1 K 1 K Set to manual preset – Manual MDIX Setting (JT12) JT7: pins 1-2 Single node – NIC (default)Multiple Node Enable JT7: pins 2-3 1 K 1 K Multiple node priority – switch/hubJT3: pins 1-2 CLK_TO_MAC output enabled (default) Clock to MAC EnableJT3: pins 2-31 K 1 KCLK_TO_MAC output disabledTable 9 - Ethernet PHY Hardware Strapping OptionsThe default options as indicated in Table 23 are Auto-Negotiation enabled, Full Duplex mode, speed advertised as 10/100/1000 Mb/s, PHY address 0b00001, IEEE Compliant and Non-compliant support, straight cable in non-MDIX mode, auto-MDIX mode enabled, Single node (NIC) and CLK_TO_MAC enabled. The pin-out for a jumper pad is shown below.The auto-MDIX mode provides automatic swapping of the differential pairs. This allows the PHY to work with either a straight-through cable or crossover cable. Use a CAT-5e or CAT-6 Ethernet cable when operating at 1000 Mb/s (Gigabit Ethernet). The boundary-scan Test Access Port (TAP) controller of the DP83865 must be in reset for normal operation. This active low reset pin of the TAP (TRST) is pulled low through a 1K resistor on the board. The following table provides the Virtex-5 pin assignments for the Ethernet PHY interface.Net Name Virtex-5 pin Net Name Virtex-5 pin GBE_MDC D26 GBE_INT# C24 GBE_MDIO D25GBE_RST# B26 GBE_MCLK F20 GMII_CRS A25 GMII_GTC_CLK A19 GMII_COL A24 GMII_TXD0 D19 GMII_RXD0 D24 GMII_TXD1 C19 GMII_RXD1 D23 GMII_TXD2 A20 GMII_RXD2 D21 GMII_TXD3 B20 GMII_RXD3 C26 GMII_TXD4 B19 GMII_RXD4 D20 GMII_TXD5 A15 GMII_RXD5 C23 GMII_TXD6 B22 GMII_RXD6 B25 GMII_TXD7 B21 GMII_RXD7 C22 GMII_TX_EN A23 GMII_RX_DV C21 GMII_TX_ER A22 GMII_RX_ER B24 GMII_TX_CLK E17GMII_RX_CLK E20Table 10 - Ethernet PHY Pin Assignments2.4.2 Universal Serial Bus (USB) to UART Bridge TransceiverThe Virtex-5 FXT Evaluation Board utilizes a SiLabs CP2120 USB to UART transceiver to support PC’s that do not support the standard DB9 serial COM port. The diagram below shows how the CP2120 interfaces to the FPGA.CP2102USB ConnectorFigure 7 - USB to UART Transceiver InterfaceSignal Name Virtex-5 PinUSB_RS232_TXD AA19 USB_RS232_RXD AA10 USB_RS232_RST# Y20Table 11 - USB to UART Interface FPGA Pin-out2.4.3 RS232The RS232 transceiver is a 3222 available from Harris/Intersil (ICL3222CA) and Analog Devices (ADM3222). This transceiver operates at 3.3V with an internal charge pump to create the RS232 compatible output levels. This level converter supports two channels. The primary channel is used for transmit and receive data (TXD and RXD). The secondary channel may be connected to the FPGA by installing jumpers on “J3” and “J4” for use as CTS and RTS signals. The RS232 console interface is brought out on the DB9 connector labeled “P1”.Figure 8 - RS232 InterfaceA male-to-female serial cable should be used to plug “P1” into a standard PC serial port (male DB9). The following table shows the FPGA pin-out and jumper settings for the RS232 interface.Net Name Description Virtex-5 PinRS232_RXD Received Data, RD K8Data,TD L8RS232_TXD TransmitRS232_RTS Request To Send, RTS N8RS232_CTS Clear To Send, CTS R8Table 12 - RS232 Signals2.5 UserSwitchesFour momentary closure push buttons have been installed on the board and connected to the FPGA. These buttons can be programmed by the user and are ideal for logic reset and similar functions. Pull down resistors hold the signals low until the switch closure pulls it high (active high signals).Net Name Reference Virtex-5 PinSWITCH_PB1 SW1 AF20SWITCH_PB2 SW2 AE20SWITCH_PB3 SW3 AD19SWITCH_PB4 SW4 AD20Table 13 - Push-Button Pin AssignmentsAn eight-position dipswitch (SPST) has been installed on the board and connected to the FPGA. These switches provide digital inputs to user logic as needed. The signals are pulled low by 1K ohm resistors when the switch is open and tied high to 1.8V when flipped to the ON position.Net Name Reference Virtex-5 PinSWITCH0 SW5 – 0 AD13SWITCH1 SW5 – 1 AE13SWITCH2 SW5 – 2 AF13SWITCH3 SW5 – 3 AD15SWITCH4 SW5 – 4 AD14SWITCH5 SW5 – 5 AF14SWITCH6 SW5 – 6 AE15SWITCH7 SW5 – 7 AF15Table 14 - DIP Switch Pin Assignments2.6 UserLEDsEight discrete LEDs are installed on the board and can be used to display the status of the internal logic. These LEDs are attached as shown below and are lit by forcing the associated FPGA I/O pin to a logic ‘0’ or low and are off when the pin is logic level ‘1’ or high.Net Name Reference Virtex-5 Pin#LED0 D6 AF22LED1 D7 AF23LED2 D8 AF25LED3 D9 AE25LED4 D10 AD25LED5 D11 AE26LED6 D12 AD26LED7 D13 AC26Table 15 - LED Pin Assignments2.7 Configuration and Debug Ports2.7.1 ConfigurationModesThe Virtex-5 FXT Evaluation Board supports three methods of configuring the FPGA. The possible configuration methods include Boundary-scan (JTAG cable), BPI Flash, and the System ACE Module (SAM) header. The Virtex-5 device also supports configuration from BPI Flash. The blue LED labeled “DONE” on the board illuminates to indicate when the FPGA has been successfully configured.JP5 is the mode jumper that is used to tell the FPGA to configure in JTAG mode or Flash BPI mode. In JTAG mode a Xilinx parallel JTAG cable must be used (PC4 or USB). When the jumper is set for BPI mode, the flash must be programmed with a BPI-UP image in order for the FPGA to successfully configure. For configuration from a System ACE Module, the JTAG setting must be used.The Virtex-5 FXT Evaluation Board come pre-programmed with the factory test image in the BPI flash. The table below shows the correct jumper configuration for each configuration mode.ConfigurationModeJP5 PositionJTAG 2-3 System ACE 2-3BPI-UP * 1-2Table 16 - FPGA Configuration Modes*Default assembled state2.7.2 System ACE™ Module ConnectorThe Virtex-5 FXT Evaluation Board provides support for the Avnet System ACE Module (SAM) via the 50-pin connector labeled “JP6” on the board. The SAM can be used to configure the FPGA or to provide bulk Flash to the processor. This interface gives software designers the ability to run real-time operating systems (RTOS) from removable CompactFlash cards. The Avnet System ACE module (DS-KIT-SYSTEMACE) is sold separately. The figure below shows the System ACE Module connected to the header on the Virtex-5 FXT Evaluation Board.JTAG Configuration PortMPUInterfaceReset &ClockPower &GroundMiscSignals Figure 9 - SAM Interface (50-pin header)The following table shows the System ACE ports that are accessible over the SAM header. The majority of the pins on this header may be used as general purpose I/O when not using a System ACE Module. The Virtex-5 pin numbers are provided for these general purpose pins.Virtex-5 PinSystem ACE Signal Name SAM Connector Pin # (JP11) System ACESignal NameVirtex-5 Pin- 3.3V 1 2 3.3V - - JTAG_TDO 3 4 GND - - JTAG_TMS 5 6 SAM_CLK F12 - JTAG_TDI7 8 GND - - FPGA_PROG# 9 10 JTAG_TCK - - GND 11 12 GND - Y6 SAM_OE# 13 14 FPGA_INIT# - Y5 SAM_A0 15 16 SAM_WE# Y4 W6 SAM_A2 17 18 SAM_A1 V7 - 2.5V 19 20 SAM_A3 W5 F5 SAM_D0 21 22 2.5V - V6 SAM_D2 23 24 SAM_D1 U7 U6 SAM_D4 25 26 SAM_D3 U5 T7 SAM_D6 27 28 SAM_D5 T5 R7 SAM_D8 29 30 SAM_D7 R6 P6 SAM_D10 31 32 SAM_D9 R5 N6 SAM_D12 33 34 SAM_D11 P8 K5 SAM_D14 35 36 SAM_D13 M7 K6 SAM_A4 37 38 SAM_D15 L7 J6 SAM_A6 39 40 SAM_A5 J5 H4 SAM_IRQ 41 42 GND - H6 SAM_RESET# 43 44 SAM_CE# G4 - FPGA_DONE 45 46 SAM_BRDY G5 - FPGA_CCLK 47 48 FPGA_D_IN - - GND 49 50 GND -Table 17 - SAM Interface Signals2.7.3JTAG Port (PC4)The Virtex-5 FXT Evaluation Board provides a JTAG port (PC4 type) connector (J9) for configuration of the FPGA. The following figure shows the pin assignments for the PC4 header on this development board.Figure 10 - PC4 JTAG Port Connector2.7.4 CPU Debug PortThe Virtex-5 FXT Evaluation Board provides a CPU Debug header for connection of a debug probe to the integrated PowerPC processor.CPU Debug connector JP4 can be used to download code into the Virtex-5 FXT integrated PowerPC processor. The JTAG port can also be used as the processor debug port. The FPGA general-purpose I/O pins are used for this interface. The following figure shows the CPU Debug Connector.Figure 11 - CPU Debug Connector2.7.5 CPU Trace PortThe Virtex-5 FXT Evaluation Board provides a CPU Trace header for connection of a trace probe to the integrated PowerPC processor. The FPGA general-purpose I/O pins are used for this interface.The processor uses the trace interface when operating in real-time trace-debug mode. Real-time trace-debug mode supports real-time tracing of the instruction stream executed by the processor. In this mode, debug events are used to cause external trigger events. An external trace tool uses the trigger events to control the collection of trace information. The broadcast of trace information on the trace interface occurs independently of external trigger events (trace information is always supplied by the processor). Real-time trace-debug does not affect processor performance. The following figure shows the CPU Trace connector on the Virtex-5 FXT Evaluation Board.NC NC NCNC Mictor_5NCNCNC NCCPU_HALTCPU_TDOCPU_TCK CPU_TMS CPU_TDI CPU_TRST Mictor_23Mictor_25Mictor_27Mictor_29Mictor_31Mictor_33Mictor_35Mictor_37Mictor_16Mictor_18Mictor_20Mictor_22TRACE.TS10TRACE.TS20TRACE.TS1E NCVref (pullup )TRACE.CLK TRACE.TS2E TRACE.TS3TRACE.TS4TRACE.TS5TRACE.TS6Mictor ConnectorFigure 12 - CPU Trace Connector。
赛灵思官网资源导读

赛灵思官网资源导读俗话说“授之鱼不如授之以渔”,看到这边有人要资料有人送资料的,其实论坛不更应该是一个交流的空间么?那就让找资料更有效率一点,让大家花更多时间来交流吧。
言归正传,写这篇文章主要想介绍Xilinx各种资料的找法、分类方法和什么问题该看哪些资料。
限于经验,难免有错漏,希望大家指出错误并继续补充。
一、软件Xilinx的软件主要是ISE, EDK, ChipScope Pro, System Generator, PlanAhead, ModelSim,如果要算上AccelDSP也凑合,不过相信国内没多少人用。
ISE是主要的逻辑设计软件,其他软件的具体实现功能都依附于ISE。
ISE有Foundation版和WebPack版。
WebPack版免费,Foundation版收费。
两者的区别是支持的器件不同。
功能是相同的。
WebPack版支持的功能可以看/blog/link2url.php?link=http%3A%2F%%2Fise%2Fpro ducts%2Fwebpack_config.htm。
Foundation的话当然全支持拉,要看的话在这里/blog/link2url.php?link=http%3A%2F%%2Fise%2Flogi c_design_prod%2Ffoundation.htm。
说这些的目的就是,如果你的器件WebPack支持,就直接到网上下载WebPack吧,没有版权之类的后顾之忧;如果不行,Verycd上找些东西还是挺方便的。
ModelSim MX有免费的starter version,可以和ISE WebPack一起下载,安装以后在开始里面点licens_e request就可以申请starter的使用权了。
另外,可以VHDL和Verilog各申请一个,那么就可以仿真两种语言了,不过不支持mix language。
/blog/link2url.php?link=http%3A%2F%%2Fise%2Fverifica tion%2Fmxe_details.html不过那一页说的ModelSim XE的use case不准的,XE,PE,SE的差别还是仔细看这里吧。
精品课件-Xilinx FPGA设计基础-第3章

实体中所有的端口信号都要在“port();”语句的括号内 声明。端口的声明包含三个部分:端口名称、端口模式和数据 类型。相同端口模式和数据类型的端口信号可以作为一组信号 联合声明,信号之间用逗号“,”隔开,不同组的信号声明之 间用分号“;”隔开,但是要注意声明最后一组信号后不需要 再加分号,端口声明的结构如下:
第3章 VHDL硬件描述语言
3.3.1 实体 设计一个模块,首先要给模块起一个名字作为这个模块的
标识,称为实体名称。这个名字通常与模块的功能有密切关系, 例如2.2节实验中的AND_OR。
模块命名后,就要确定这个模块的外部接口参数,即模块 有哪些输入信号,有哪些输出信号,信号的名称和类型是什么, 在确定了这些参数之后,我们就完成了对实体的描述。
第3章 VHDL硬件描述语言
1.端口名称 一般一个模块实体包含不止一个端口,为了区别不同的端 口,给端口命名时通常不会采用上面例子中的方式,而会将端 口的含义包含在名称中。例如,常用的端口名称“clk”表示 时钟信号等。 2.端口模式 端口模式用于定义模块端口的数据传输模式。VHDL的端 口模式有五种,如表3.1所示。
第3章 VHDL硬件描述语言
VHDL只是给工程师提供了一个描述规范,用这种规范进 行描述可以使众多工程师之间传递信息更加简洁、准确。学习 VHDL就是学习如何利用这些规范进行描述,因此,我们在学 习VHDL之前,要在思维中假想一个现成的芯片,学习的过程 中,对照芯片不断完善对芯片的描述。
VHDL不仅可以对芯片的接口和行为参数做详尽的描述, 而且可以作为一门编程语言对可编程逻辑器件进行编程配置。 目前,可编程逻辑器件的EDA工具都支持以VHDL代码作为工程 设计的输入。
xilinx_ISE_9.1中文教程

Xilinx是全球领先的可编程逻辑完整解决方案的供应商,研发、制造并销售应用范围广泛的高级集成电路、软件设计工具以及定义系统级功能的IP(Intellectual Property)核,长期以来一直推动着FPGA技术的发展。
Xilinx的开发工具也在不断地升级,由早期的Foundation 系列逐步发展到目前的ISE 9.1i系列,集成了FPGA开发需要的所有功能,其主要特点有:Foundation Series ISE具有界面友好、操作简单的特点,再加上Xilinx的FPGA芯片占有很大的市场,使其成为非常通用的FPGA工具软件。
ISE 作为高效的EDA设计工具集合,与第E9.1 软件安装的基本硬件要求如下:CPU 在 P III 以上,内存大于 256M ,硬盘大于 4G 的硬件环境安装。
为了更好地使用软件,至少需要 512M 内存,CPU 的主频在 2GHz 以上。
本 书使用的集成开发环境是 ISE 9.1,仿真工具是 ModelSim 6.2b ,综合工具为 Synplify Pro 8.8。
其中 ISE 、ModelSim 软件和 Synplify 软件不同版本之间的差异不是很大,所以操作和设计购买了正版软件后,最常用的方法就是通过网站注册获取安装所需的注册码。
首先在Xilinx 帐号,输入CD 盒上的产品序列号(序号的格式为:3 个字符+9 个数字),会自动生成163.下一个对话框是Xilinx 软件的授权声明对话框,选中“I accept the terms of this software4.接下来的几个对话框分别是选择安装组件选择,如图 4-4 所示,用户需要选择自己使用5.随后进入设置环境变量页面,保持默认即可。
如果环境变量设置错误,则安装后不能正 常启动 ISE 。
选择默认选项,安装完成后,在“我的电脑”上单击右键,选择属性 环境变量中,图比较常用,显示了源文件的层次关系。
Xilinx_ISE使用教程资料

Xilinx公司ISE10.1软件介绍
--脚本(transcript)子窗口
脚本子窗口有5个默认标签:Console,error,warnings , Tcl shell,find in file。 Console标签显示错误、警告和信息。X表示错误,! 表示警告。 Warning标签只显示警告消息。 Error标签只显示错误消息。 Tcl shell标签是与设计人员的交互控制台。除了显示错 误、警告和信息外,还允许输入ISE特定命令。 Find in file标签显示的是选择Edit>Find in File操作后的 查询结果。
Xilinx公司ISE10.1软件设计流程介绍
--打开ISE软件时的面板
当以前使用 过该软件时会默 认打开上一个工 程。
Xilinx公司ISE10.1软件设计流程介绍
--创建一个新工程
Xilinx公司ISE10.1软件设计流程介绍
--创建一个新工程
选择芯片 选择综合工具
选择仿真工具
选择代码语言
Xilinx公司软件平台介绍
--EDK软件
EDK是Xilinx公司推出的FPGA嵌入式开发工具,包 括嵌入式硬件平台开发工具(Platform Studio)、嵌入式 软件开发工具( Platform Studio SDK)、嵌入式IBM PowerPC硬件处理器核、Xilinx MicroBlaze软处理器核、 开发所需的技术文档和IP,为设计嵌入式可编程系统提供 了全面的解决方案。 EDK10.1版还包括了最新的IP内核以优化系统设计。 同时还包括了SPI、DDR2/DMA/PS2和支持SGMII的三模 式以太网MAC等外设,FlexrayTM外设选项,以及用于 DMA的PCI Express驱动支持。
精品课件-Xilinx FPGA设计基础-第1章

第1章 绪论
CPLD和FPGA两者各有特点。CPLD分解组合逻辑的功能很 强,一个宏单元就可以分解十几个甚至20~30多个组合逻辑 输入。而FPGA的一个LUT只能处理4输入的组合逻辑,因此, CPLD适合于设计译码等复杂组合逻辑。但FPGA的制造工艺确 定了FPGA芯片中包含的LUT和触发器的数量非常多,往往都是 几千上万,CPLD一般只能做到512个逻辑单元,而且如果用芯 片价格除以逻辑单元数量,FPGA的平均逻辑单元成本大大低 于CPLD。 所以如果设计中使用到大量触发器,例如设计一个 复杂的时序逻辑,那么使用FPGA就是一个很好的选择。同时 CPLD具有上电即可工作的特性,而大部分FPGA需要一个加载 过程,所以,如果系统要求可编程逻辑器件上电就能工作,那 么就应该选择用 户的设计中实现片上存储器。
第1章 绪论
业内大多数FPGA均提供数字时钟管理(Xilinx的全部FPGA 均具有这种特性)。Xilinx推出的FPGA提供数字时钟管理和相 位环路锁定。相位环路锁定能够提供精确的时钟综合,且能够 降低抖动,并能够实现过滤功能。
总体来说,PLD的优势可以概括如下: (1) PLD在设计过程中为客户提供了更大的灵活性,因 为对于PLD来说,重复设计只需要简单地改变编程文件就可以 了,而且设计时改变的结果可立即在工作器件中看到。
第1章 绪论
(2) PLD不需要漫长的前置时间来制造原型或正式产品 (PLD器件已经放在分销商的货架上并可随时付运。)
第1章 绪论
线在CLB和I/O之间发送信号。有几种布线方法,从CLB内部互 联到实现时钟与其他全局信号低歪斜布线的水平和垂直长线。 除非特别规定,对用户而言设计软件中的互联布线任务是透明 的,这样就极大地降低了设计复杂度。
FPGA支持很多I/O标准,这样就为用户的系统提供了理想 的接口连接。FPGA内的I/O按组分类,每组都能够独立地支持 不同的I/O标准。当今领先的FPGA提供了很多I/O组,实现了 I/O支持的灵活性。
[xilinx官网]XilinxFoundationF3.1的结构及设计流程
![[xilinx官网]XilinxFoundationF3.1的结构及设计流程](https://img.taocdn.com/s3/m/55bc3ee310a6f524cdbf8554.png)
[xilinx官网]XilinxFoundationF3.1的结构及设计流程XilinxFoundationF3.1是Xilinx公司主要的可编程器件开发工具,它可用来开发Xilinx公司的Spar-tanVirtexXC3000XC4000XC5200系列的FPGA芯片和XC9500系列的CPLD芯片。
该平台功能强大,主要用于百万逻辑门级的设计和1Gb/s的高速通信内核的设计。
利用该系统可完成从设计构想到比特流下载的全部过程。
该平台以工程管理器为主界面,同时集成了Xilinx公司以及其他公司的一些优秀软件。
1组成和功能该系统由设计入口工具、设计实现工具、设计验证工具三大部分构成。
设计入口工具包括原理图编辑器、有限状态机编辑器、硬件描述语言(HDL)编辑器、LogiBLOX模块生成器、Xilinx内核生成器等软件。
其功能是:接收各种图形或文字的设计输入,并最终生成网络表文件。
设计实现工具包括流程引擎、限制编辑器、基片规划器、FPGA编辑器、FPGA写入器等软件。
设计实现工具用于将网络表转化为配置比特流,并1/ 3下载到器件。
设计验证工具包括功能和时序仿真器、静态时序分析器等,可用来对设计中的逻辑关系及输出结果进行检验,并详尽分析各个时序限制的满足情况。
(范文先生网收集整理) 2设计入口工具的使用该系统设计入口工具中的内核产生器是设计入口工具的重要部分。
该部分可提供不少实用的模块化内核,具体涉及数学函数生成、数字信号处理、标准总线、通信与网络等领域。
其中既有比较器、计数器、复用器、编码译码器等通用内核,也有复数型快速傅立叶变换(FFT)、有限冲击响应滤波器FIR、除法器、双通道数字振荡器等专用内核。
用户在使用时只要输入几个参数,即可自动生成内核。
使用内核产生器能大大扩展设计能力并提高效率从而跨越众多底层复杂构件的具体设计,并使系统级设计因此变得非常可行。
3设计实现工具的使用3.1使用限制编辑器限制编辑器最简单的应用就是预先指定各信号的管脚号码。
FPGA网站大全

FPGA网站大全FPGA网站大全收集的不是很到位,不过希望对大家有帮助!1. 这里提供非常多,非常好的PLD了内核,8051内核就可以在里面找到。
进入后,选择project或者由http///browse.cgi/by_category进入。
对于想了解这个行业动态人可以看看它的投票调查。
/polls.cgi/listOpenCores is a loose collection of people who are interested in developing hardwa re, with a similar ethos to the free software movement. Currently the emphasis is o n digital modules called 'cores', since FPGAs have reduced the incremental cost of a core to approximately zero. Activity is centered around the opencores web site - 中文2. FPGAs are fun提供了大量的关于FPGA应用的文章,项目实际例子。
强烈推荐/- 外文3. Open Collector收集了大量的开源硬件,内核.它的分类非常清晰,不多说。
强烈推荐目录结构# Design tools and software* Digitalo Data Entryo Simulation+ General+ Spice or alternatives+ Verilog+ VHDLo Verificationo Synthesis+ ASIC+ FPGA+ Logic Minimization+ PCB Designo Educational* Other# Hardware designs* Design Libraries* Computers* Embedded Systems* Processors* Interface* Control* Robotics* Audio* Video* DSP* Radio* Telecoms* Other# Groups and Organizations/summary.php- 外文4. The First Stop for the Latest ICs and Components非常好的关于微处理器,DSP,可以编程控制器资讯的网站,更新非常快。
xilinx官网导航

如何有效地获得Xilinx FPGA以及Digilent板卡的资料和技术支持很多人抱怨Xilinx FPGA的资料很难找,Digilent的板卡资料网上怎么就没有呢!针对这些问题写了如下的BLog,希望对大家有帮助。
最近几日在整理关于Xilinx FPGA和Digilent FPGA开发板的网站信息,主要目的是让更多的人知道,如何有效地搜索到Xilinx FPGA 的用户手册,参考工程,如何找到Digilent FPGA板卡的资料,如何得到Xilinx和Digilent的技术支持?1)官方网站:各种芯片资料,板卡资料和各种实例以及技术问题的问答2) Xilinx官方网站3)/ Xilinx英文论坛4) Xilinx中文技术社区,由Xilinx大学计护5)/university/index.htmXilinx大学计划6)Digilent美国官方网站7)/Digilent中国官方网站8)/Digilent技术社区注:1. 如果需要查询相关的资料,可以用google查询特定网站的信息,或许有点多余,但是还是有很多不知道。
例如我需要在Xilinx 官网上查询Virtex-5 datasheet,我可以在google下输入这样的信息进行搜索:Virtex-5 datasheet site: filetype:pdf2. 遇到技术问题可以在Xilinx论坛和Digilent技术社区获得支持。
3. FPGA开发流程的入门资料和实验可以在Xilinx大学计划中。
主要论坛:内容包含技术文章,博客,FAQ和论坛等/bbs 硬件开源社区论坛,Xilinx官方中文论坛该论坛活跃的绝大多数是高校的学生,得到Xilinx官方和Digilent 官方的支持,是一个很好的技术交流和学习平台/bbs Digilent官方论坛,由Digilent 工程师支持和维护-------------------------------------------------------------------------------- 1)如何使用Xilinx开发工具的教程和实验/university/workshops/fpga-design-flow/in dex.htmXilinx FPGA 设计流程,主要是ISE工具的使用2)/university/workshops/embedded-system-design-flow/index.htm嵌入式系统开发流程,主要是EDK工具的使用3)/university/workshops/dsp-design-flow/index.htmDSP设计流程,主要是Matlab Simulink工具和Xilinx工具的同时开发如何找到Digilent的板卡资料和实验信息4)http://digilent.****.com/vendor/prod.php?id=46DigilentFPGA板卡资料5)/university/index.htm 可以获得Digilent FPGA的入门资料和实验,包括了Atlys,Genesys,XUP V5,XUP V2Pro,Spartan-3E FPGA开发板如何下载6)Xilinx 开发工具/support/download/index.htmXilinx官方下载地址7)/电驴也是一种下载的选择。
FPGA网络资源

关于I/O buffer(FPGA)(原创)作者: 上网日期:关键字:作者:关于I/O buffer(原创)昨天后仿真四位加法器的时候,想比较一下,超前进位加法器和串行加法器的时候,特意比较了一下那个的延时少一些,居然发现超前进位加法器延时比串行加法器多,不知道为什么,于是做么一下是不是优化的问题。
于是鼓弄了一下,在ISE——Synthesize(综合)右键——PropertiesISE内嵌——XST点击看原图就会出来综合选项,通过选择相应的选项,满足特定的要求。
•Sythesis Options•HDL Options•Xilinx Specific Options由于我要做的是DDS,要求工作在100MHz的时钟下,所以对时序要求很高,我也就对综合选项都试了一下综合目标(Optimization)该参数用以指定优化的全局目标是面积(Area)优先还是速度优先(Speed)优先。
由于时序要求一般来说比器件面积要求更重要,所以一般选择速度优先策略。
尝试改变为Speed,但对加法器延时没变。
综合难度(Optimization Effort)该参数用于指定综合器工作难度,如果设计时序和面积要求较高,选择难度指标为“Hight”。
全局优化目标(Global Optimization Goal)该参数仅对FPGA有效,用于指定寄存器之间(ALLCLOCKNETS),输入引脚到首级寄存器之间(OFFSET_IN_BEFORE),末级寄存器到输出引脚之间(OFFSET_OUT_AFTER),输入引脚到输出引脚之间(INPAD_TO_OUTPAD)的优化策略。
包括的优化属性有ALLCLOCKNETS、OFFSET_IN_BEFORE、OFFSET_OUT_AFTER、INPAD_TO_OUTPAD和MAX_DELAY。
由于设计的加法器没有时钟信号,所以不必选择“ALLCLOCKNETS”,而选择“MAX_DELAY”,果然取得效果,延时从8.07ns,变为6.97ns,不过还是很长。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Topics:1. Xilinx软件介绍2. 软件版本和软件更新3. 软件教程哪里找4. 硬件资料5. 参考设计6. 问题解决7.总结1.Xilinx软件介绍用Xilinx的软件做FPGA开发,主要涉及到得软件是Xilinx自家的ISE, EDK, ChipScope Pro, System Generator, PlanAhead 和第三方的ModelSim和Synplify。
ISE是主要的逻辑设计软件,其他软件的具体实现功能都依附于ISE。
ISE有Foundation版和WebPack版。
WebPack版免费,Foundation版收费。
两者的区别是支持的器件不同。
功能是相同的。
WebPack版支持的功能可以看这里:/ise/products/webpack_config.htm。
Foundation当然支持所有功能,功能列表可以在这里找到:/ise/logic_design_prod/foundation.htm。
说这些的目的是,如果开发所使用的器件是WebPack版支持的,那么就从网上下载免费版就好了,不用费劲心机地找Fondation版却用不到他支持的功能。
ChipScope Pro 是片内的逻辑分析仪。
可以让用户方便地抓取片内信号进行debug。
ChipScope支持的Trig方式非常多样,用熟悉了以后几乎是想要观察什么内部信号都可以观察到,即使他有BRAM深度的限制。
/chipscopePlanAhead工具自从ISE7时代被开发出来并发展了这么多年之后,已经成为了提高设计效率和提高产品性能的有力工具。
它可以帮我们在布局布线之前做好管脚定位和DRC检查、规划区域约束、查看综合网表,并且可以跑多次实现,找出最佳的布局并分析时序。
/planaheadEDK - Embedded Development Kit,顾名思义就是用来做嵌入式系统的。
它提供对PowerPC 硬核和MicroBlaze软核的支持,免费提供一些常用的硬件IP Core,比如各种Memory Controller、各种外设如IIC, SPI, GPIO,并集成了GNU工具链,使之成为软硬件设计一体化的设计工具。
设计出的嵌入式系统集标准性与灵活性于一身,可以支持Linux等操作系统,也可让用户自己设计用户IP用作模块接口或硬件加速。
/edkSystem Generator借助Matlab Simulink的框架使DSP算法用图形化的数据流来说明,在Sysgen的帮助下DSP算法可以轻易在FPGA上实现。
特别是它的Hardware Co-simulation功能大大降低了Debug的难度。
/sysgenISE 产品现在被包装为ISE Design Suite 发布。
Suite 分为Logic Edition, Embedded Edtion 和DSP Edition。
每个套装都包含了必要的设计和调试工具。
任何套装都可以从网站上下载30天免费评估版。
/ise_eval/index.htm除了Xilinx的软件,我们通常还会用到一些第三方的软件,比如Synopsys (曾经Synplicity) 的Synplify 综合工具,Mentor Graphic 的ModelSim 工具等。
Synplify 可以替代ISE 自带的XST。
他的优势是编译速度快,编译产生的网表质量可能更高(面积小,频率高);缺点是1.贵2.对新器件的支持比原厂慢一拍。
ModelSim 是一款常用的仿真工具。
其他和ISE搭配使用的仿真工具有Cadence的NC-Sim 和Synopsys的VCS。
ModelSim根据价格高低和支持功能的多少分为SE, PE, XE 等版本。
其中XE是Xilinx Edition的意思,也就是Xilinx定制版。
ModelSim MX有免费的starter version,也有付费取得License的版本。
ModelSim XE 可以和ISE WebPack 一起下载,安装以后在开始里面点licens_e request就可以申请starter的使用权了。
另外,可以VHDL和Verilog各申请一个,那么就可以仿真两种语言了,不过不支持mix language。
/ise/verification/mxe_details.html不过那一页说的ModelSim XE的use case不准,XE,PE,SE的差别还是仔细看这里吧。
/support/answers/24506.htmModelSim XE自带有Xilinx的仿真库。
如果ISE软件升级,可以从Download Center下载更新的仿真库。
如果使用ModelSim PE/SE,那么就需要使用compxlib工具编译仿真库。
2. 软件版本和软件更新Xilinx的软件工具更新很频繁。
自从IDS10以后,基本是三个月出一次升级包(Service Pack),一年出一个新版本(Major Version)。
如此高的升级速度,一方面是为了更上新器件的支持要求,一方面是为了修补前期版本的bug。
那么我们是否需要以最快的速度更上更新的速度呢?我的建议通常是:- 正在进行中的项目,如果不是需要新功能或绕过某些已经存在的Bug,那么就不要盲目升级大版本,但是一定要勤快地升级到最新的升级包。
- 新设计尽量用新版本的最稳定版本。
比如现在最近版本是11的时候,还是不要急于追新,用最稳定的10.1.03来做开发。
对于操作系统,建议也是类似的:- 习惯使用Windows的用户还是用Windows XP SP2,最好还是英文版- 公司最好能有一台大内存64位服务器跑RHEL Linux,提供多用户使用,也更适合跑大器件(操作系统支持参考/ise/ossupport/index.htm)所有以上的建议,目的归根到底可以总结为:1. 以最大努力保证设计平台的稳定(Windows XP 用的人最多;Linux的内存管理比Windows好,64位系统上的软件业更成熟)2. 避免陷入已知的Bug中浪费时间3. 减小遇到未知的Bug的可能性在产品开发过程中,设计软件总是稳定比功能多来得重要,操作系统总是稳定比好看来得重要。
Xilinx所有的软件下载都可以在Download Center找到(/download) 。
其内容包括:- IDS的完整版下载- IDS更新包的下载- CAE Vendor Library 就是第三方工具需要使用到的库文件,比如Cadence/Synopsys的综合工具、形式验证工具等。
- ModelSim XE 版本的仿真库更新(记得我们上面说过ModelSim XE不需要自己编译仿真库吗?)- Device Models 可以下载用于第三方仿真工具(HSpice, HyperLinks等)所需要使用的IBIS、HSpice、BSDL模型等。
过往版本的ISE WebPack,可以到ISE Classic页面下载,但是不再提供付费软件的Evaluation。
/tools/classics.htm过往版本的最终Update,也可以在Download Center找到,但是中间版本需要在以下这些Answer Record中查找:/support/answers/10959.htm/support/answers/31741.htm3. 软件教程作为入门教程来说,Xilinx的Free Course视频教程应该是最合适的了。
访问/support/training/free-courses.htm可以找到关于Architecture, Software tools, HDL Coding technique等各方面的视频教程,内容丰富,且原汁原味,属于自我学习最好的参考资料。
放在Demosondemond网站上的那些视频教程的链接现在在主页上找不到了,但是可以从下面的链接进入:/clients/xilinx/001/page/index.asp里面的视频教程内容有关于最新的硬件的,也有各种软件的,也算齐全,只不过不再有新内容更新了。
最近要查看demosondemand网站的录像需要注册了,dod的注册比较严格,注册需要公司邮件地址或者学校带edu的邮件地址。
视频资料还有一类,就是WebCast(网上研讨会录像)。
WebCast不是Tutorial,它最主要不是说明工具怎么用,解释FPGA的具体结构等,而是根据当前的热门问题告诉大家你可以尝试哪些Solution来解决设计问题。
看了WebCast后可以知道我可以再继续读哪方面资料来了解更详细的情况。
Xilinx网站上登录的过往的WebCast:/events/webcasts_od.htm 以前在TechOnline上搞过的WebCast:/electronics_directory/webinar/896最新的WebCast都是可以与演讲者实时互动的。
就像我在这篇文章中提到的,曾经WebCast只在美国开设,时区跟我们有差异,中国用户很难参与到互动环节,但是中国的WebCast也逐渐多起来了。
最新的中文研讨会信息,可以查询/china/company/ch_events.htm。
参加研讨会不仅有机会抽奖得到小礼品,活跃互动者更有可能得到比较丰厚的礼品(看着IPOD就口水~~)。
接下来应该看的是Tutorial。
/support/techsup/tutorials/主要是ISE, EDK, PlanAhead的,还有Timing Constraint的。
ISE做了Tutorial基本操作应该没问题了。
ChipScope比较简单看了Demosondemond的视频教程应该就会了。
还不清楚的话看看安装目录里的UG029。
PlanAhead虽然比ChipScope复杂,但是视频教程还是很不错的,再加上Tutorial,应该也够了。
时序约束的那篇文档算是讲得比较全的,还有可以深入阅读的一篇文档就是wp237,关于offset约束的。
更进阶地了解ISE,需要阅读ISE的Manual。
打开Manual可以从开始菜单中ISE->Documentation->Software Manuals;也可以在开始菜单中的ISE --> Documentation中找到。
列出几个重要的Manual:XST User Guide (xst.pdf):关于XST的开关选项等Command Tool and Development System Reference Guide (dev.pdf) :除了XST外的实现工具比如map, par, trce等的实用指南Constraint Guide (cgd.pdf) :约束的指南。