您的当前位置:首页正文

PCB设计---PCB中的FPGA设计

2022-01-19 来源:步旅网
PCB设计---PCB中的FPGA(CPLD)设计

1. 概述

FPGA(Field Programmable Gate Array:现场可编程逻辑门阵列),是一种可编程的集成电路,通过对芯片中门电路进行编程,实现相应的逻辑功能,进而实现相应的电气功能。FPGA具有很大的灵活性,行业应用广泛,如通信、安防、工控、国防军工等,有大量的电气设备都使用到FPGA芯片。

2. FPGA调管脚的目的

PCB设计过程中,通过调整FPGA的IO管脚,实现线路短、顺畅,保证信号有更佳的层面分配、更好的电气性能…,从而保证更好满足板厚要求、层数要求、阻抗要求,降低生产成本等。

3. 调管脚的一般原则(调管脚上网络)

a) 专用管脚不能调,如Config部分管脚;IO管脚可以交换,见图1.

图1 配置管脚

b) 同电压bank的IO可以交换管脚,不同电压bank的IO不能交换管脚。 c) 交换管脚时,优先在同一bank内进行,其次是bank间。

d) 全局时钟只能在全局时钟之间交换管脚,不能和IO交换管脚上网络。

e) 差分线调管脚时需要注意:原则上P对P、N对N,且是一对一对交换,不能一对

差分的两根线分别交换到其他两队差分的各一根线。 f) 在布线前,把自己的交换需求、交换原则和客户沟通清楚。

g) 交换管脚后,需要客户确认并更新原理图;PCB设计师需要根据更新后的原理图进

行网表更新,并核对。

1

4. Bank划分

做完扇出后,根据原理图,对bank进行物理区分,建议在PCB中分出区域,便于识别。如图2所示,对将要进行调管脚的bank进行了“分割”,每个区域对应一个bank。

图2 bank划分

2

5. 对bank中管脚基本功能的认知与分析

FPGA的管脚通常可以实现多种逻辑功能,在不同应用下,要求有所不同。例如图3所示:

a. 如果都用作普通IO,管脚是没有区别的;

b. 如果是分配给DDR3,那么DQS信号就需要放在专用的管脚上来; c. 如果使用差分,需要注意对应的P和N,除非客户说明没区别。

d. MRCC是全局时钟,可为本bank和相邻bank提供时钟,srcc是局部时钟,只

能供本bank。时钟是输入,如果bank需要工作时钟,那么时钟只能分配在时钟管脚上。

e. 如果有其他功能,分析方式类似。

图3 FPGA IO功能

3

6. 去耦电容摆放

通常每个bank都会对对应的电源放置去耦电容,去耦电容摆放时,严格按照bank进行分配和摆放;尽量不要出现“混用”的情况。

例如图4所示,去耦电容靠近对应bank的电源管脚摆放,不用出现混用情况。

图4 FPGA滤波电容

4

7. 特殊要求处理注意事项

a) 赛灵思高速bank的校准电阻两端出线要等长;如果使用了GTX信号,严格按要求

等长;如果没有使用GTX信号,优先等长,没有做等长也不会有问题。如图5、图6所示:

图5 校准电阻

图6 校准电阻走线

b) FPGA上可能不止一个校准电阻。对于大规模FPGA,对多个校准电阻的处理方式要

求一样。

c) 如果FPGA有pin delay,在等长设时需要加上pin delay信息。根据目前情况,

Xilinx、Altera的FPGA都有过pin delay的要求。具体设计时,和客户沟通确认。

5

8. 其他:

a) FPGA调管脚出线比较多时,要充分利用走线通道,通道使用率越高越好,见图7。

图7 FPGA走线通道

b) 多片FPGA,相同功能模块时,期望每块的FPGA调管脚方式一样(方便调原理图);

如下图,相同模块,出线方式一致,可以方便布线、调管脚、更新原理图,编写FPGA功能等。

图8 多块相同功能FPGA

c) 有些情况下,功能已经固定,客户不期望调整管脚,特殊情况除外。例如,不调会

导致增加多层,成本的上升无法接受;

综述

对于使用了FPGA的项目设计,布线前要做好规划,比如如何调管脚,摆放电路模块等,将FPGA在PCB设计中的优势发挥出来。

6

因篇幅问题不能全部显示,请点此查看更多更全内容