爱游戏-BPO行业整合方案提供者
专业化、科技化、国际化;高标准、广覆盖、全流程
了解更多FPGA 若何结构和资本优化 时候:2024-12-19 20:19:00 手机看文章
扫描二维码随时随地手机看文章
1.项目需求
FPGA :V7-690T两片
Resource:两片FPGA经由过程X12 gth互联;每片FPGA利用48路serdes走光口与板外毗连;每片FPGA利用SIROx4经由过程VPX与外界互联;每片FPGA利用PCIE X8与板上CPU Intel XEON互联;每片FPGA利用20对LVDS互联;CPLD节制FPGA上电时序/CPU启动/FPGA加载;每片FPGA挂载2路4GB DDR3。
2.FPGA架构设计问题
我们知道,FPGA片上散布着各类资本,如时钟,serdes,RAM,LUT,IO等。在进行FPGA计划时辰,该当需要知道项目设计需求,和需求 各模块之间的数据交叉环境,如许可以免后续FPGA RTL设计呈现时序很难优化的环境。
对应这个环境,举一个简单的例子。假如一个FPGA工程中含有一个PCIE和一个DDR接口,而且,需要用到PCIE与外部装备进行年夜量数据块上传和下载方面的传输。
那末DDR作为PCIE的一个缓存接口,最优的方案是在FPGA内部对PCIE接口和DDR接口尽可能接近放置。
如许FPGA RTL设计的时辰时序很轻易到达最优。在V7-690T FPGA中,可以将PCIE放置的最优位置以下图。
同时,我们也知道,在V7-690 FPGA中,DDR凡是可以放置的位置可所以BANK34/35/36和BANK36/37/38。这时候综合上述两个前提,我们可以获得最优放置PCIE和DDR的位置。使得FPGA内部编译经由过程率或说时序最好。
下面是两种分歧放置体例获得的example design编译成果图。
3.前期碰着的问题
1).时钟优化
在管脚验证的时辰,本人将各个功能模块都用XILINX FPGA的IP生成 example design并集成到一个工程下面,可是发现上面提出的功能集成下来FPGA的BUFG资本远远不敷。下图是FPGA example design各模块BUFG资本需求环境。是以做了一些资本优化。
a.前期验证中,发现SRIO是耗损BUFG资本最多的IP,是以能省出最多的BUFG。
b.DDR也耗损比力多时钟,这个项目一个FPGA用到两个DDR节制器,也能省出比力多BUFG。
2)PCIE不是在所有serdes下都能放的,对V7-690,需要放置在非凡的SERDES处,如许,现实PCIE 法式编译时辰,这个非凡的serdes里PCIE 非凡资本离得比来,编译出来的时序陈述是最好的。如若否则,需要设置PCIE IP内部非凡参数,才能使得PCIE DEV被CPU看到,也就是PCIE link上。
3)DDR结构也要参考数据是若何在FPGA内部交叉的,劲量接近会用到年夜数据流量的模块放置,如许后期设计时序会好良多。
4)FPGA功耗估量问题。
这个可以在XILINX官网下载一个XPE Excel表格,很适用的,用一两次就熟习了。可是本人认为这个东西对良多人也有个错误谬误,就是现实其实不知道今后本身的代码各类资本耗损有几多。所以可能评估不太准。
本人是用example design工程查看编译陈述得出。当触及到调剂温度啊电流啊啥的时辰,在vivado下需要打开implementation的成果后才可以改动电流/温度的值进行评估的。
4.FPGA PCB布线时会碰到调剂线序的问题。
1)这要按照项目需求看调剂后的结构是不是知足项目需求,调剂好后必然要道理图工程师给出最新的道理图,最后FPGA按照新结构从头验证管脚等。万万不要口口相传丢掉了信息。
2)DDR换线序可以参照XILINX的MIG手册,细心查对的。
3) DDR PCB布线所需的管脚延时信息,可以经由过程新建一个空白工程,在空白工程的tcl下输入以下号令:
link_design -part xc7k160tfbg676
write_csv flight_time
5.CPLD调试
1)CPLD节制FPGA上电挨次,XILINX又一个check list,列位可以按照check list表格对硬件板卡进行要害旌旗灯号丈量确认,对上电时序进行节制等。
2)对FPGA的设置装备摆设节制也能够月底 xilinx ug470等。
欲知详情,请下载word文档 下载文档