FPGA 验证是在芯片的研发环节中重要的组成部分,如何有效的利用 FPGA 的资源, 管脚分配也是必须考虑的一个重要问题。
通常,在综合过程中通过时序的一些约束让对应的工具自动分配是不错的选择,但是,从研发的时间段上来考虑这种方法往往是不可取的。
在研发过程中,RTL 验证与验证板设计必须同步进行,验证代码出来时验证单板也必须设计完成,也就是说管脚的分配必须在代码设计出来之前完成。所以,管脚的分配更依赖于人,而非工具,这个时候就更需要考虑各方面的因素。综合起来主要考虑以下的几个方面:
No.1
FPGA 所承载逻辑的信号流向
通常情况下,在IC 验证中所选用的 FPGA逻辑容量都非常大,外部的管脚数量丰富,因此必须考虑 PCB 设计时布线的难度,如果管脚的分配不合理,则有可能在PCB 设计时出现大量的交叉的信号线,这将给布线带来很多的困难,甚至走不通,即便布线走通了,也可能由于外部延时过大而无法满足时序要求。因此,在管脚分配前,设计者要对 FPGA 工作的环境相当熟悉,要对其中的信号来来源与去向都非常的清楚,然后按照连线最短的原则将对应的信号分配到与外部器件连线最近的 BANK 中。
No.2
掌握 FPGA 内部 BANK 的分配的情况
FPGA 内部BANK会分成几个区域,在每个区域中可用的 I/O 管脚数量各不相同。IC 验证多采用 ALTERA