当前位置:首页 > 电源 > 数字电源
[导读]摘要:高速串行传输的设计是FPGA设计的一个重要方面。在串行传输的设计中摒弃了采用FPGA内部逻辑资源实现从而限制了串并转换速度的传统设计方法,SelectIOTM接口技术给FPGA实现高速串行传输提供了良好的舞台,本文详

摘要:高速串行传输的设计是FPGA设计的一个重要方面。在串行传输的设计中摒弃了采用FPGA内部逻辑资源实现从而限制了串并转换速度的传统设计方法,SelectIOTM接口技术给FPGA实现高速串行传输提供了良好的舞台,本文详细阐述了1:8 DDR模式下16路高速串行传输的实现,并通过了16路高速串行传输达到12.8Gbit/s传输速率的板级试验。
关键词:低电压差分信号;串并转换;现场可编程门阵列;串化器/解串器

0 引言
    用现场可编程门阵列(FPGA)开发高速系统时常常需要实现高速串行传输,传统的做法是直接利用FPGA的内部逻辑资源来进行设计,但这样做往往使得传输的时钟的最高频率受FPGA内部资源利用率、布局布线等因素的影响,难以满足设计要求,并最终影响整个系统的性能。随着工艺技术的不断进步与市场需求的日益增加,超大规模、高速、低功耗的新型FPGA不断推出,给高速电路的设计带来了极大的方便。赛灵思(Xilinx)公司在其新的面向低端的partan-6系列产品中集成了输入串并转换器(ISEKDES)和输出并串转换器(OSERDES),能够提供高速的I/O处理能力,不受FPGA内部资源的限制,不占用系统逻辑资源。
    本文以两片XC6SLX150之间以16路高速数据通信为例,介绍了SERDES(串化器/解串器)的工作原理与具体应用。其中每片FPGA需要接收并发送高速的16路串行数据并在接收时将其转换为128位并行数据做其它处理,为了实现高速串行传输,同时又不占用芯片内部的逻辑资源,我们用Xilinx的SERDES源语方便、快速地实现了该设计。

1 Spartan-6简介
    Xilinx目标设计平台的芯片基础融合了行业领先的工艺,可编程的逻辑技术和收发器功能以及用于高级存储支持的控制器,从而可以为成本敏感应用提供高性能的FPGA。高级功耗管理技术的创新,结合以更低的1.0V电源操作的核心选项,让新的Spartan-6 FPGA系列比前几代Spartan系列的功耗降低了65%。该公司的partan-6系列正是一款为满足低成本和低功耗设计要求而推出的系列产品。
    运用第六代Spartan FPGA系列产品,系统开发人员可以在将系统成本减半,开发出功耗更低的“更环保”的产品的同时,达到新的功能要求。Spartan-6 FPGA支持汽车信息娱乐、平板显示器、多功能打印机、机顶盒、家庭网络、视频监控等应用,它能对低风险、低成本、高性能进行最优平衡。
    Spartan-6 FPGA系列双寄存器、六输入的高效LUT逻辑结构采用了行业领先的Virtex架构,可以跨平台兼容和提高系统性能。由于增加了Virtex系列的系统级模块,其中包括DSP slice、高速收发器以及PCI Express端点模块,因此实现了比以往更大的系统级集成。Spartan-6 FPGA系列由两个领域优化的子系列组成,该系列所提供的功能组合,可以达到价格敏感的大批量应用的严苛要求:Spartan-6 LX FPGAs和Sp-artan-6 LXT FPGAs。
    Spartan-6 LX FPGAs针对需要绝对最低成本的应用而优化。该平台器件支持高达147k逻辑密度、4.8Mb存储器、集成存储控制器、DSP slice以及易用的高性能硬IP,同时采用了创新的基于开放标准的配置。
    Spartan-6 LXT FPGAs扩展了LX系列,可提供多达八个3.125Gb/s GTP收发器和一个集成的PCI Express模块,它们都采用了成熟的Vir-tex FPGA系列技术,可以为串行连接提供业界风险最低、成本最低的解决方案。
    本文中采用Spartan-6 LX FPGAs中的XC6SLX150-EG(G)4.84进行板级验证测试。该芯片内的SelectIOTM接口技术(多电压、多标准Selec-tIO模块组)有如下性能:
    ·每个差分I/O具有最高1050 Mb/s的数据传输速率
    ·可选输出驱动,最高每针脚24mA
    ·3.3V到1.2V I/O标准和协议
    ·低成本HSTL和SSTL内存接口
    ·符合热插拔标准
    ·可调整I/O转换速率,改进信号完整性

2 SERDES的结构与工作原理
    所有Spartan-6型号的器件的I/O Tile都包括两个IOBs、两个ILOGICs、两个OLOGICs和两个IODELAYs。其中ILOGICs和OLOGICs可以配置为输入SerDes(ISERDES)或者输出SerDes(OSERDES)模块或者其他I/O接口。如图1所示为Spartan-6 FPGA的I/O Tile。


    每一款该型号的FPGA的输入/输出模块(IOB)包含一个4-bit输入SerDes和一个4-bit输出SerDes,两个相邻的SerDcs模块(主模块和从模块)级联在一起可以生成一个8bit IOB,这使得每一个IOB不论在SDR模式下或是在DDR模式下其数据的输入输出串并转换速率从2:1到8:1都成为可能。
2.1 ISERDES
    每一款Spartan-6型号FPGA的IOB的输入SerDes都可以甩ISERDES2源语来实例化。
    ISERDES2是Spartan-6内部集成的输入串并转换器源语,支持单倍数据速率(SDR)和双倍数据速率(DDR)两种模式。这两种模式均可以进行编程操作,在SDR模式下,可以实现1bit串行数据到生成2、3、4bit的并行数据的转换;在DDR模式下,可以实现1bit串行数据到5、6、7及8bit并行数据的转换。当生成数据的位宽大于6时,需要采用主从模式将两个相邻的ISER2DES2模块连接在一起。每一个ISERDES2还包括一个由设计者提供BITSL IP(比特偏移控制)操作的并行数据字对齐逻辑。SerDes的串并转换速率之比指的是用于捕捉数据的高速I/O时钟和用于处理并行数据的低速内部逻辑时钟之比,例如,一个500MHz的单端I/O 时钟接收500MHz的数据,ISERDES2的串并转换速率为4:1指的是FPGA采用125MHz时钟来处理接收的并行数据。[!--empirenews.page--]
    ISERDES2的结构如图2所示。


   

    当两个ISERDES2级联时,其中一个是主模式,一个是从模式,表1显示了两个ISERDES2源语级联时的数据位高低连接方式:

[!--empirenews.page--]
2.2 OSERDES
    同样,每一款Spartan-6型号FPGA的IOB的输出SerDes都可以用OSERDES2源语来实例化。其结构和源语操作方式以及转换速率比与ISER-DES2源语类似,在SDR模式下,可以实现1bit串行数据到生成2、3、4bit的并行数据的转换;在差分输出方式下,可以实现1bit串行数据到5、6、7及8bit并行数据的转换。下图为OSERDES2模块以8:1的转换率配置下差分输出的级联图。
    图3 OSERDES 8:1差分输出级联拓扑图


    当两个OSERDES2级联时,其中一个是主模式,一个是从模式,表2显示了两个OSERDES2源语级联时的数据位高低连接方式

3 Spartan-6的1 6路高速串行传输的设计
    两片XC6SLX150 FPGA之间以16路高速数据相互通信,其中还需要一路源同步时钟,一路标志信号用来使能片间数据的收发控制,每片FPGA需要一个400MHz的时钟输入作为高速数据发送时钟。其基本的发送拓扑图如下:


    接收时钟直接使用源同步时钟,发送时钟采用输入到FPGA的400MHz的时钟。接收的数据送到一个128×1024的fifo中,然后进行处理,将数据送到发送模块,发送给相连的FPGA中,另一片FPGA做同样的处理。
3.1 发送模块
    发送模块采用输入到FPGA的400MHz的时钟作为发送时钟源,首先经BUFI02后送入PLL,产生一个800MHz的采样发送时钟和一个100MHz的FPGA内部逻辑时钟,再通过一个BUFPLL驱动用于后续的逻辑。发送时钟的产生模块如图5所示。

[!--empirenews.page--]
    产生好发送时钟后,将800MHz的发送时钟和100MHz的FPGA内部逻辑时钟送到发送数据模块开始数据的发送。送到所有输出OSERDES2源语的时钟和SerDes使能信号可以满足安全的捕捉FPGA内部并行的慢速数据到输出SerDes,这些并行的数据然后通过高速的发送时钟发送出去。其中一路的数据发送如图6,共有16路相同的模块组成128bit的高速串行数据的传输,每路数据发送速率为800MHz,则每路的数据传输速率为8bit×100MHz=800b/s,共16路数据线,则总的传输速率为12.8Gb/s。


    源同步时钟的发送不能直接将时钟信号通过OBUFDS类似的源语直接发送,因为Spartan-6是面向低成本的低端产品,不支持高速信号的处理,所以,发送时钟要像发送数据一样发送出去,通过发送一个固定常数序列“10101010”来完成时钟的发送。
3.2 接收模块
    接收模块的源同步时钟是上面发送模块发出的400MHz的时钟,该时钟根据需要在PLL内部产生一个高速采样时钟,通过PLL和BUFFPLL来产生ISERDES2源语所需要的接收时钟和使能信号。接收源同步时钟首先经过一个延迟单元。然后经过一个BUFIO2到PLL,PLL产生一个800MHz的采样时钟和一个100MHz的FPGA内部逻辑时钟,再通过一个BUFPLL驱动用于后续的逻辑。接收时钟的产生模块如图7所示。它和发送时钟不同之处也是在于Spartan-6是面向低成本的低端产品,对于400MHz的时钟该系列FPGA无法接收,首先要将该时钟当成数据一样进行接收,收到“10101010”比特串后,作为时钟信号送给PLL。


    产生好接收时钟后,将800MHz的采样时钟和100MHz的FPGA内部逻辑时钟送到接收数据模块开始数据的接收。其中一路的接收如图8,共有16路相同的模块组成128bit的高速串行数据的传输,每路数据采样速率为800MHz,内部FPGA逻辑时钟为100MHz,则每路的数据传输速率为8b-it×100MHz=800b/s,共16路数据线,则总的传输速率为12.8Gb/s。



4 实验结果分析
    在上述的结构中,首先在FPGA1的逻辑中将Rec-FIFO初始化为满数据状态,当发送了数据使能信号后,系统就开始自循环测试,一旦出现错误将会置错误标记,在验证板上有状态灯指示该状态,经过实际测试,送到两片FPGA的时钟为400MHz,完全满足在16路高速串行传输的传输速率达到12.8Gb/s的板级试验。只是ChipScope不能对管脚的高速信号进行采样观察,所以我们在ISE11.5和ModelSim SE 6.5的环境下,仿真可以看到管脚高速信号和FPGA内部逻辑之间收发数据的关系。图9是发送数据的仿真结果,图10是接收数据的仿真结果。其中,所有的输出是差分输出,为了便于观察,一对的差分信号只显示其中一个。


    从图中可以看出,源同步时钟是400MHz,按照DDR方式传送数据,数据的传输速率为800MHz,即经过PLL后的采样时钟(或者高速发送时钟)为800MHz,而产生的FPGA内部逻辑的时钟为100MHz,从上两图中的波形可以看出,该设计实现了高速串行传输的功能。在FPGA设计中,输入输出管脚的锁定是重要的一环,一个合理的管脚分配方案不仅可以降低布线复杂度,而且可以减少布线的延迟,并有利于PCB板的制作。X-C6SLX150有四个bank,本文中的串行传输采用LVDS 2.5V标准,我们将收发信号线分别放在不同的bank上,在布线时,为尽量保持同一组差分信号线间的等长,对管脚分配进行调整,做到最优化布线。

5 总结和展望
    本文介绍了基于Xilinx公司XC6SLX150的16路高速串行传输的设计,此设计充分利用了Spartan-6的特点及其所含的IP核,不仅能够最大限度地提高芯片性能,而且缩短了开发周期,减少了设计复杂度,有益于高速FPGA的开发。通过试验,结果表明,采用Xilinx Spartan-6 SerDes设计的每路高速串行传输可以实现800Mb/s的传输速率,但Spartan-6本身具有每个差分I/O的最高数据传输速率为1050Mb/s的性能,由于硬件的限制未能验证,在今后的设计中希望可以进行弥补。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭