基于FPGA的可变长度移位寄存器优化设计-图文_第1页
基于FPGA的可变长度移位寄存器优化设计-图文_第2页
基于FPGA的可变长度移位寄存器优化设计-图文_第3页
基于FPGA的可变长度移位寄存器优化设计-图文_第4页
基于FPGA的可变长度移位寄存器优化设计-图文_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

自动化技木基于FPGA的可变长度移位寄存器优化设计陈永强1,李茜2(1.西华大学电气信息学院,四川成都610039;2.西华大学能源与环境学院,四川成都610039)摘要:结合FPGA的结构,针对高速数据采集系统中触发控制单元的特点,提出了采用优化结构的可变长度移位寄存器改进基于FPGA的触发控制单元的方法,同时从器件的搭配和寄存器结构两方面探讨了可变长度移位寄存器的优化方案,并给出了应用示例。关键词:触发控制单元可变长度移位寄存器FPGA触发控制单元是高速数据采集系统的重要组成部分,而可变长度移位寄存器在触发控制单元中起弹性缓存、数控延迟等作用。触发控制单元根据不同的条件设置时间窗口,并对窗口内的数据进行操作,在线完成实时事例选判和控制。由于高速数据采集系统的采样频率高,单位时间内产生的数据和事件多,不同时问窗口所需的移位寄存器的长度变化会很大。一方面,触发控制单元作为高速数据采集系统的一个组成部分,常常与系统的其他组成部分共享有限的FPGA资源;另一方面,一个数据采集系统往往有多路数据采集通道,需多个触发控制单元支持。因此,提高资源利用率对构建用于触发控制的可变长度移位寄存器来说非常重要。本文以最大可变长度为Ⅳ、宽度为1bit的移位寄存器为模型,讨论如何从结构上优化可变长度移位寄存器和有68效的FPGA实现。至于宽度不为lbil的情况,可以此类推。1可变长度移位寄存器的常用结构通常可变长度移位寄存器的结构可分为两种:一种是输入分支型(结构A),如图1所示;另一种是输出分支型(结构B),如图2所示。结构A与结构B有两个共同点:第一,都是由触发器链路加数据流向控制逻辑组成;第二,每级触发器的输入输出都是信号节点,因而各级都需要对本级节点的信号流向进行控制。结构A用n—to一2“译码器来控制信号流向,结构B则用2n:1多路复用器控制信号流向。对于基本逻辑单元为查找表(LUT)+触发器(FF)+多路复用器(MUX)结构的FPGA来说,直接采用结构A与结构B构造较长的移位寄存器时,触发器链和复杂的组合逻辑会消耗很多资源,即这两种结构不宜用于较长的可变长度移位寄存器。控制位O图1最大可变长度为Ⅳ的移位寄存器结构A(输入分支型)图2最大可变长度为Ⅳ的移位寄存器结构B(输出分支型)欢迎网上投稿www.aetnet.cnwww.aetnet.com.cn《电子技术应用》2006年第8期万方数据自动化技木2解决方案为解决上述问题,可以采用如下两个方法:(1)优化功能结构与硬件结构的搭配。根据移位寄存器结构类型,选择适宜的FPGA芯片以提高资源利用率,降低资源消耗。(2)优化移位寄存器结构。采用FPGA片内RAM来实现移位寄存器,利用片内RAM速度快、数量大的优点,直接减少基本逻辑单元的消耗,提高资源利用率。2.1优化功能结构与硬件结构的搭配通过调整FPGA芯片类型与移位寄存器结构类型的搭配,可以提高资源利用率,降低资源消耗。下面以结构B为例,阐述如何应用Xilinx公司的Spartan一3系列芯片高效地实现Ⅳ=128的可变长度移位寄存器。2.1.1实现原理fF:Spartan一3系列芯片的每个可配置逻辑块CLB…如图3所示,包含8rW个LUT、8个DFF和8个2:1多路复用器(4个F5MUX,2个F6MUX,1个….,F7MUX,1个F8MUX),而每个LUT都能配置成移位寄存器模式F7MUXF8MUX回廿日回廿曰回廿曰回廿曰F5MUXF5MUXSLICELSlSUCELS3F6MUXF6MUX回廿曰回廿曰园耵曰回耵曰F5MUXSLICELS2CLB图3Spartan一3芯片的可配置逻辑块(CLB)二二二霉瓣霹瓦辆一;一()01l一一一1010110l1110llll16:lMUX(SRL),相当于一个16级的可逐级寻址的移位寄存器。如图4所示,一个LUT就包含了构成结构B所需的全部要素,从而有效地实现Ⅳ=16的可变长度移位寄存器f2】。Q15是用于多级级联实现Ⅳ>16的移位寄存器的进位输出。2.1.2应用示例利用Spartan一3系列芯片的一个CLB(相当于8个基本逻辑单元)就可以构成Ⅳ=128的可变长度移位寄存器,如图5所示。作为对比,如果不调整FPGA芯片类型与移位寄存器结构类型的搭配,比如直接采用AlteraCycloneII芯片,按结构A实现Ⅳ=128的可变长度移位寄存器,则需消耗169个基本逻辑单元(由QuartusII编译)。2.2优化移位寄存器结构通过优化移位寄存器结构,采用FPGA片内RAM来Q中(Ⅳ=O,l,2,…,2”一1)图4LUT配置成可寻址的移位寄存器实现移位寄存器,利用片内RAM速度快、数量大的优点,直接减少基本逻辑单元的消耗,提高资源利用率。2.2.1实现原理FPGA片内RAM常见有两种,一种是分布式RAM(DistributedRAM),如XilinxSpanan一3的LUT,每个LUT都可作为16位的RAM使用;另一种是嵌入式块RAM(BlockRAM),如XilinxSpartan一3的18KB块RAM、AlteraCvcloneII的4KB块RAM(M4K)。结构A与结构B中,各级都需要对本级节点的信号流向进行控制,这种形式限制了FPGA嵌入式块RAM的使用。为此,设计了结构cLK止4cLK、J4cLK塑cLK小cLK小cLK、L4cLKocLK差:三]6:III基i三]6:IIl基i三::I|I鞋i三]6:I|l基i三:;¨l塞i三::|j|基i三]6:||J囊i三::MUXMADout图5SpanaJl—3芯片的可配置逻辑块(CLB)《电子技术应用》2006年第8期本刊邮箱:eta@ncse.com.cnA669万方数据自动化技术C——梯级组合型,如图6所示,这种结构非常利于采用片内RAM来实现移位寄存器。二塑三::。2‘)图6最大可变长度为Ⅳ的移位寄存器结构C(梯级组合型)分析结构C,梯级组合型有两个要素:一是2:1多路复用器,每个都有单独的控制位,共n个,而且n<<Ⅳ,二者呈指数关系;二是不同长度的移位寄存器组成的梯级,初级(第0级)由20=1个触发器组成,第l级由21=2个触发器链接组成,第2级由22=4个触发器链接组成….,第n级由2“个触发器链接组成。在梯级组合型的结构中,不需要对每个触发器的输入输出都控制,只需通过控制位6。对各个梯级的输入输出控制就可以实现分辨率为l的长度连续变化,寄存器的长度Ⅳ=6。×2n+…+62×22+6l×21+60×20。例如,对于最大Ⅳ=255(控制字为8位)且采用结构C的可变长度移位寄存器,要实现长度为5的移位寄存器,只需设置控制字为0000010lB即可;要实现长度为255的移位寄存器,只需设置控制字为1111111B即可。由于同一个梯级里,除头尾两级外,其他各级不再有信号流向控制,且各梯级触发器链的长度为2“,可以方便地利用FP-GA嵌入式块RAM和厂商提供的经过优化的宏功能模块来实现长度较大的梯级,从而提高资源利用率。2。2.2应用示例以AlteraCvcloneIIf3】的M4K为例,每个M4K块RAM有4608个存储位(其中包括512个奇偶位),操作频率高达250MHz,M4K工作于移位寄存器模式时的结构如图7所示,数据宽度(叫)、每段长度(m)、抽头数(n)的关系可方便地在厂商提供的基于RAM的移位寄存器宏模块“altshift—taps”中设置。当叫×m×凡不大于4608且州×m不大于36时,消耗一个M4K和少量基本逻辑单元;当不能满足上述两项中任意一项,开发工具会自动连接多个M4K。通过调整训、m、凡的组合,M4K能以多种方式埘×m×nShiftRe舀sterm-bitShiftRegister’’,一I卜-7一l,n—bishiftRe醉ster”/一l卜_7一Im—bitShiftRe舀ster矿,一l卜7一Im_bitShiftRegister,‘.IllI…JlJ卜图7M4K的移位寄存器模式NumberTaps高效实现结构C的梯级。、例如,构造一个1024位的梯级,可以设置加=l、m=256、n=4,占用13个LUT,8个寄存器,1个M4K;构造一个4096位的梯级,可以设置训=1、m=256、凡=16,依然只占用13个LUT,8个寄存器,1个M4K。为进一步提高M4K的利用率,可以设置加=32、m=128、n=1,只占用12个LUT,7个寄存器,1个M4K就能得到32个长度为128位的移位寄存器段,将这些寄存器段自行连接,用一个M4K能同时得到如下的梯级:128位、256位(2段串连)、512位(2段串连)、1024位(8段串连)、2048位(16段串连),最大限度地利用了M4K的RAM资源。作为对比,仍以AltemCycloneII芯片为例,如果用基于基本逻辑单元的移位寄存器宏模块“LPM—SHI丌REG”来实现1024位的梯级和4096位的梯级,则分别需l024(256×4)个LUT和4096(256×16)个LUT,资源开销较大。可见,结构C非常利于实现可变长度较长的移位寄存器。可变长度移位寄存器是非常有用的逻辑结构。对高速数据采集系统触发控制单元来说,应用优化后的可变长度移位寄存器可以提高其信噪比,改善其可靠性和灵活性。另外,采用可变长度移位寄存器可以减小死区时间,从而改善触发控制单元重复触发的性能。这些改善在本单位设备的实际应用中起到了良好的作用。参考文献1Spartan一3FPGAfamily:completedatasheet.XILlNX,20()4;3(8)2Usinglook—uptablesasshiftregisteI_s(SRLl6)inSpanan一3generationFPGAs.XILINX,2005;1(5)3CycloneIIdevicehandbook.AltemCorporation,2005;1(11)(收稿日期:2006—04—09)70欢迎网上投稿www.aetnet.cnwww.aetnet.com.cn《电子技术应用》2006年第8期万方数据基于FPGA的可变长度移位寄存器优化设计作者:陈永强,李茜作者单位:陈永强(西华大学,电气信息学院,四川,成都,610039,李茜(西华大学,能源与环境学院,四川,成都,610039刊名:电子技术应用英文刊名:APPLICATIONOFELECTRONICTECHNIQUE年,卷

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论