《Xilinx可编程逻辑器件设计与开发(基础篇)连载15:Spartan.docx》由会员分享,可在线阅读,更多相关《Xilinx可编程逻辑器件设计与开发(基础篇)连载15:Spartan.docx(7页珍藏版)》请在第一文库网上搜索。
1、XiIinX可编程逻辑器件设计与开发(基础篇)连载15:Spartan2.1.6Se1ectIO资源Spartan-6有丰富的I/O资源,包括Se1ectIO和RocketIO0Spartan-6每个I/O片(Ti1e)包含两个IOB.两个I1OG1C2、两个010GIC2和两个IODE1AY2,见图2-37。在这一小节里,分以下几个方面介绍Spartan_6的Se1ectIO资源。SeIeCt1o的电气特性。Se1eCt1O的逻辑资源(I1OGIC2、010GIC2)。Se1eCtIO的高级逻辑资源(ISERDES、0SERDESBits1ip)。图2-37I/O片结构图一、Se1ectIO
2、IOB的电气特性所有的SPartan-6FPGA有高性能的可配置SeIeCt能驱动器与接收器,支持非常广泛的接口标准。可以通过缄提控制I/O的输出强度、斜率以及片上终端OCTo每个IOB包含输入、输出和三态SeIeCtK)驱动器。这些驱动器可以按照各种I/O标准配置。单端I/O标准(1VCMOS1VTT1.HST1.SST1.PCI)o差分I/O标准(1VDS、RSDSTMDS、差分HST1和SST1)O注意:差分输入和XEEF相关输入是由VCCAUX佟电。Xi1inx软件库提供了很多Spartan-6I/O的原语,包括用于单端信号的IBUF(输入缓冲器)、IBUFG(时钟输入缓冲器)、OBU
3、F(输出缓冲器)、OBUFT(三态输出缓冲器)和IOBUF(输入/输出缓冲器);以及用于差分信号的IBUFDS(输入缓冲器)、IBUFGDS(时钟输入缓冲器)、OBUFDS(输出缓冲器)、OBUFTDS(三态输出缓冲器)和IOBUFDS(输入/输出缓冲器)。二、SeIeCt1o的逻辑资源Se1ectIO的逻辑资源是指I/O驱动器与接收器之后的逻辑,包含了Spartan-6FPGA的所有基本I/O逻辑资源,如图2-38所示。其中包括的资源如下。组合输入/输出。三态输出控制。寄存器输入/输出。寄存器三态输出控制。双倍数据速率(颐)输入/输出。DDR输出三态控制。I0DE1AY2提供对高分辨率可调延
4、迟单元的控制。支持NONE、CO和C1三种对齐模式的DDR输出。支持NoNE、CO和CI三种对齐模式的DDR输入。ISERDESo0SERDES0S1aveO1OGICSeriaKzer(T)Senahzer(D)I*S1aveI1OGICIMasterO1OGICSna1izr(T)Q1Ti1eDo-GGfiaIizefFPGAInterconnect1ogicOddayMaster!1OGIC_14SeriaBzer(D)|-oddayid1ayMasterIO(P)弓11,图2-38I/O片内的Se1eCt1O逻辑资源一个I/O片(IO1)管理两个IOB。IOI包含两个单端输入/输出,或
5、者一个差分输入/输出的完整电路和一个内部互联模块。两个IOB组合在一起是为支持高速的差分接口。在单端模式下,主IOB驱动引脚P,从IOB驱动引脚N。在差分模式下,主从IoB组合在一起可以实现串并转换,其数据速率是单端模式下的12倍。每个I/O支持3种配置模式:锁存型I/O、非锁型I/O和寄存器型I/O。I/O还可以配置为2:1/3:1/4:1的SERDES。锁存/寄存器时钟来自GC1K驱动的全局时钟网络或者高速I/O时钟网络。I0DE1AY2是一种可选资源,设计者可以根据需要在输入/输出路径上加入此延时模块,IODE1AY2的延时是可编程的,可以通过DRP指定或者通过例化IoDE1AY2原语指
6、定。此延时可以是固定延时,也可以是可变延时。三、I10GIC2资源图2-39所示为I1OGIC2逻辑框图,它可支持以下功能。边沿触发D型触发器。IDDR(NONE、CO或CI)模式。锁存器。异步/组合逻辑。图2-39I1OG1C2逻辑框图(1)异步/组合逻辑。当有下列情况之一时,软件会自动生成组合通路,使输入驱动器与FPGA内部逻辑资源直接连接。FPGA的输入数据与内部逻辑直接相连,而没有用寄存器。“打包I/O寄存器/锁存器到IOB中”的属性设置为OFF。(2)IDDR模式。SPartan-6器件的I1OGIC2中有专用寄存器来实现输入双倍数据速率(DDR)寄存器。可以通过例化IDDR2的原语
7、来使用此功能。IDDR2的属性DDR_A1IGNMENT有3种模式:NONECo和C1。在NoNE模式下,输入I)DR时序如图2-40所示。寄存器在CO上升沿将输入数据D寄存到Q0,CI上升沿将下一输入数据D寄存到Q1。DQO图2-40DDR_A1IGNMENT=NONE时输入DDR时序示意图在某些情况下,输入数据必须同步到一个时钟域里,通常Co同步。但是在频率比较高的情况下,这种同步相对比较困难,因为有效时间仅为时钟周期的一半(50%占空比的情况下)。SPartan-6器件中的IDDR2包含了专用的逻辑,可以在I1OGIC2内部进行时钟域的同步。当DDRA1IGNMENT为CO(或C1),信
8、号QO(Q1)在C1(CO)再次寄存,通过内部互联将输入数据同步到同一时钟域。时序图如图2-41所示。QOdd+2Xd+4Xd+6X+8图2-41DDI1A1IGNMENT=COC1的输入DDRIDDR的原语如图2-42所示。图2-42IDDR2的原语四、O1OG1C2资源如图2-43所示,O1OG1C2主要由两部分组成,分别是输出数据路径和三态控制路径。这两个部分可以配置成以下模式。边沿触发D型触发器。DDR模式(NONE、CO或CI同步方式)。电平敏感锁存器。异步/组合逻辑。图2-43010GIC2逻辑模块(1)组合数据输出和三态控制路径。当有下列情况之一时,软件会自动生成组合通路,将FPGA内部数据直接输出到输出驱动器或驱动器的控制端。FPGA内部逻辑数据直接输出到输出驱动器或驱动器的三态控制端,而没有经过寄存器。“打包I/O寄存器/锁存器到IOB中”的属性设置为OFF。(2)ODDR模式。