FPGA的硬件设计不同于DSP和ARM系统,比较灵巧和自由。只要设计好专用管脚的电路,通用I/O的连接可以自己定义。因此,FPGA的电路设计中会有一些分外的技巧可以参考。
1. FPGA管脚兼容性设计
FPGA在芯片选项时要只管即便选择兼容性好的封装。那么,在硬件电路设计时,就要考虑如何兼容多种芯片的问题。例如,EP2C8Q208C8和EP2C5Q208这两个型号的FPGA。其芯片仅有十几个I/O管脚定义是不同的。在EP2C5Q208芯片上,这几个I/O是通用I/O管脚,而在EP2C8Q208C8芯片上,它们是电源和地旗子暗记。为了能担保两个芯片在相同的电路板上都能事情,我们就必须按照EP2C5Q208的哀求来把对应管脚连接到电源和地平面。由于,通用的I/O可以连接到电源或者地旗子暗记,但是电源或地旗子暗记却不能作为通用I/O。在相同封装、兼容多个型号FPGA的设计中,一样平常原则就按照通用I/O数量少的芯片来设计电路。
2. 根据电路布局来分配管脚功能
FPGA的通用I/O功能定义可以根据须要来指定。在电路图设计的流程中,如果能够根据PCB的布局来对应的调度事理图中FPGA的管脚定义,就可以使后期的布线事情更顺利。例如,如图2-10所示,SDRAM芯片在FPGA的左侧。在FPGA的管脚分配时,该当把与SDRAM干系的旗子暗记安排在FPGA的左侧管脚上。这样,可以担保SDRAM旗子暗记的布线间隔最短,实现最佳的旗子暗记完全性。
3. FPGA预设测试点
目前FPGA供应的I/O数量越来越多,除了能够知足设计须要的I/O外,还有一些剩余I/O没有定义。这些I/O可以作为预留的测试点来利用。例如,在测试与FPGA相连的SDRAM事情时序状态时,直接用示波器丈量SDRAM干系管脚会很困难。而且SDRAM事情频率较高,直接丈量会引入额外的阻抗,影响SDRAM的正常事情。如果FPGA有预留的测试点,可以将要测试的旗子暗记从FPGA内部指定到这些预留的测试点上。这样既能测试到这些旗子暗记的波形,又不会影响SDRAM的事情。如果电路测试过程中创造须要飞线才能办理问题,那么这些预留的测试点还可以作为飞线的过渡点。