fpga引脚分配
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FPGA管脚分配需要考虑的因素
在芯片的研发环节,FPGA验证是其中的重要的组成部分,如何有效的利用FPGA的资源,管脚分配也是必须考虑的一个重要问题。一般较好的方法是在综合过程中通过时序的一些约束让对应的工具自动分配,但是从研发的时间段上来考虑这种方法往往是不可取的,RTL 验证与验证板设计必须是同步进行的,在验证代码出来时验证的单板也必须设计完毕,也就是管脚的分配也必须在设计代码出来之前完成。所以,管脚的分配更多的将是依赖人,而非工具,这个时候就更需要考虑各方面的因素。
综合起来主要考虑以下的几个方面:
1、FPGA所承载逻辑的信号流向。
IC验证中所选用的FPGA一般逻辑容量都非常大,外部的管脚数量也相当的丰富,这个时候就必须考虑到PCB设计时的布线的难度,如果管脚的分配不合理,那么有可能在PCB设计时出现大量的交叉的信号线,这给布线带来很大的困难,甚至走不通,或者是即便是布线走通了,也有可能由于外部的延时过大而不满足时序方面的要求。所以在管脚分配前对FPGA工作的环境要相当的熟悉,要对其中的信号来自哪里去向何方非常的清楚,这就按照连线最短的原则将对应的信号分配到与外部器件连线最近的BANK中,2、掌握FPGA内部BANK的分配的情况。
现在FPGA内部都分成几个区域,每个区域中可用的I/O管脚数量各不相同。在IC验证中都是采用了ALTERA 与XILINX系列的FPGA ,这两个厂商的FPGA中内部BANK 的分配有一定的差异,这可以在设计中查阅相关的手册。下面与ALTERA中Stratix II 系列的FPGA内部BANK的分配为例来进行说明。
图中详细说明了FPGA内部BANK的分配情况和每个BANK中所支持的I/O标准。根
据FPGA中内部BANK的分配的情况,同时结合图1中信号的流向也就可以大体固定FPGA在单板中的方向,同时按照就近的原则将相关的信号分配到相关的BANK中,这
样的方法可以完成一般信号的分配。
3、掌握所选FPGA每个BANK所支持的I/O标准。
从图2中可以看出FPGA内部的每个BANK所支持的I/O的标准不尽相同,所以在管脚的分配时要将支持相同标准的管脚都集中到一个BANK中,因为FPGA中同一个BANK 一般不同时支持两种I/O标准,当然也有例外,这就需要查阅相关I/O标准所要求的工作条件。
4、关注特殊信号的管脚的分配
这里的特殊信号主要是指时钟信号与复位信号,或者是一些要求驱动能力较高的信号。
时钟信号一般都是要求分配到全局的时钟管脚,这样获得的时间的延迟将是最小的,驱动也最强。复位信号因为要求同步性好驱动的能力强,所以一般的情况下也会从全局的时钟管脚送入。
在分配时钟时,根据时钟的多少分配的策略差别很大,也需要重点关注,这需要查阅相应的手册看哪些时钟分别能到达哪些区域,一般的时钟都是差分时钟,这个时候如果所用的不是差分时钟就需要注意P端与N端一般不能同时分配给不同的时钟信号。如下图所示XILINX系列的FPGA中成对的时钟如果是同时采用那么就不能同时到达相同的区域,因为到达相同区域的时钟线只有一根。
所以在时钟较少时最好成对的P和S不要同时使用,而是只是选择P或者是N这样就不会出现冲突的情况。
5、兼顾信号完整性的考虑。
由于在分配中常常会出现总线分配的情况,同时大量的总线又有可能常常是同时翻转,这样就会带来了一系列信号完整性的问题,所以在管脚分配时大量同时翻转的信号尽量分开。