Menu Close

FPGA未使用的管脚处理

在FPGA设计中经常会出现有大量没有使用的IO管脚。这些管脚在PCB板可能有固定的状态,可能悬空,有些是为整个项目的后期开发或升级预留的输入、输出管脚。这些管脚在当前没有使用的状态下如何处理呢?这个可能设计到具体的应用以及PCB连接的情况而定。通常有一下几种情况。

1. 未使用管脚状态分析及设定

  • 硬件设计时已确定某些IO管脚不会使用,而且在PCB板上已经加上上拉或下拉电阻,此时可以根据需要设为input tri-stated, 也可以设定为output driving specified signal(即输出悬空),也可以设定为弱上拉(input tri-stated with weak pullup)或下拉接地(output driving ground),一般输出接地下拉较强,建议一定要检查PCB的上下拉,以免增加较大的功耗。
  • 为用的IO管脚在PCB布线时就是悬空的,此时应设置为带上拉或下拉的输入或输出,或输入带总线维持的电路(input tri-stated with bus hold circuitry),为什么一定要上拉接高电平或下拉接地呢?主要是在悬空管脚附近可能存在高频信号或脉冲信号,此时如果完全悬空会形成电容耦合效应,使高频信号形成耦合通路。

图1 完全悬空

图2  FPGA IO内部上拉

图2可以看出未用的管脚上拉后,信号虽然还有耦合,但由于未用的管脚有电流通路(经过电源,形成交流高频通路),因此经过未用管脚耦合到其它管脚的信号幅度就大幅衰减。下拉接地的原理与上拉相同。经过以上处理也可以有效消除EMI。

  • 那么总线维持的电路(input tri-stated with bus hold circuitry)又是什么原理呢?如图3,

图3 总线维持的电路

图3可以设为输入脚并带总线维持电路,这种处理办法主要针对周边有大量的空脚未使用,可能会引起输入端的电平漂移,使两个MOS管的状态不稳定,从而产生较大的功耗。加入非门后反馈到MOS管的的栅极使MOS管处于稳定的数字状态,可以有效减小功耗。

2. Quautus下如何设定未使用的IO

点击菜单 Assignments–> Device , 显示界面如图4,

图4

 

图4中,单击红框标注的按钮(Device and Pin Options),进入器件和管脚设置,如图5所示,

图5

图5中找到Unsued Pins 选项, 根据需要在图5右边的Reserved all unused pins: 单击下拉框, 设置对应的选项即可。

3. Vivado下如何设置未用的管脚

可以在XDC文件添加如下未用管脚属性设置,

配置管脚设置如下:

set_property BITSTREAM.CONFIG.M0PIN PULLNONE [current_design]
set_property BITSTREAM.CONFIG.M1PIN PULLNONE [current_design]
set_property BITSTREAM.CONFIG.M2PIN PULLNONE [current_design]
set_property BITSTREAM.CONFIG.TCKPIN PULLNONE [current_design]
set_property BITSTREAM.CONFIG.TDIPIN PULLNONE [current_design]
set_property BITSTREAM.CONFIG.TDOPIN PULLNONE [current_design]
set_property BITSTREAM.CONFIG.TMSPIN PULLNONE [current_design]

未使用的管脚设置如下:
set_property BITSTREAM.CONFIG.UNUSEDPIN PULLDOWN [current_design]

可以根据需要设置PULLDOWN,PULLUP或PULLNONE等。

 

 

 

Posted in FPGA, FPGA, FPGA 教材教案, FPGA硬件资源, 教材与教案, 文章, 资料区

发表回复

相关链接