如何分配FPGA管脚

如何有效的利用 FPGA 的资源,管脚分配也是必须考虑的一个重要问题。一般较好的方法是在综合过程中通过时序的一些约束让对应的工具自动分配,但是从研发的时间段上来考虑这种方法往往是不可取的,RTL验证与验证板设计必须是同步进行的,在验证代码出来时验证的单板也必须设计完毕,也就是管脚的分配也必须在设计代码出来之前完成。所以,管脚的分配更多的将是依赖人,而非工具,这个时候就更需要考虑各方面的因素。

1、 FPGA 所承载逻辑的信号流向。IC 验证中所选用的 FPGA 一般逻辑容量都非常大,外部的管脚数量也相当的丰富,这个时候就必须考虑到PCB 设计时的布线的难度,如果管脚的分配不合理,那么有可能在PCB 设计时出现大量的交叉的信号线,这给布线带来很大的困难,甚至走不通,或者是即便是布线走通了,也有可能由于外部的延时过大而不满足时序方面的要求。

2、 掌握 FPGA 内部 BANK 的分配的情况。现在 FPGA 内部都分成几个区域,每个区域中可用的 I/O 管脚数量各不相同,这可以在设计中查阅相关的手册。

3、 掌握所选 FPGA 每个 BANK 所支持的 I/O 标准。

4、 关注特殊信号的管脚的分配,在分配时钟时,根据时钟的多少分配的策略差别很大,也需要重点关注,这需要查阅相应的手册看哪些时钟分别能到达哪些区域,一般的时钟都是差分时钟,这个时候如果所用的不是差分时钟就需要注意 P 端与 N 端一般不能同时分配给不同的时钟信号。

5、 兼顾信号完整性的考虑。

由于在分配中常常会出现总线分配的情况,同时大量的总线又有可能常常是同时翻转,这样就会带来了一系列信号完整性的问题,所以管脚分配时大量同时翻转的信号尽量分开。

相关推荐
I'm a winner8 分钟前
FPGA+护理:跨学科发展的探索(五)
fpga开发
Turing_kun16 小时前
基于FPGA的实时图像处理系统(1)——SDRAM回环测试
fpga开发
I'm a winner2 天前
新手入门Makefile:FPGA项目实战教程(二)
笔记·fpga开发
我爱C编程2 天前
基于FPGA的8PSK+卷积编码Viterbi译码通信系统,包含帧同步,信道,误码统计,可设置SNR
fpga开发·通信·8psk·帧同步·snr·卷积编码·维特比译码
I'm a winner2 天前
新手入门 Makefile:FPGA 项目实战教程(三)
fpga开发
范纹杉想快点毕业2 天前
嵌入式 C 语言编程规范个人学习笔记,参考华为《C 语言编程规范》
linux·服务器·数据库·笔记·单片机·嵌入式硬件·fpga开发
lazyduck3 天前
从半年到一年的 bug 往事:TCP modbus的卡死与补救
fpga开发·modbus
范纹杉想快点毕业3 天前
《嵌入式 C 语言编码规范与工程实践个人笔记》参考华为C语言规范标准
服务器·c语言·stm32·单片机·华为·fpga开发·51单片机
Chipi Chipi3 天前
FPGA即插即用Verilog驱动系列——串口数据、命令解析
fpga开发
FPGA_ADDA4 天前
基于 AMDXCVU47P HBM2 FPGA 的 2 路 100G 光纤 PCIe 高性能计算加速卡
fpga开发·vu47p·100g光纤pcie·高性能计算加速卡