SPI FLASH配置7系列的FPGA相关问题(一)

1.配置流程:

FLASH对FPGA的配置一般有两种方式。一种是上电即自配置,第二种是上电后软件下达配置命令后进行配置。

对于第二种,其实就是软启动的时序。下图是软启动下,表现SPI X1 FLASH配置FPGA的一般时序过程。

 

 

 

 

对于第一种,也是大多数人关心的上电自配置的流程一般为:上电后,FPGA首先初始化(INIT_B可以显示该状态),初始化没问题后自动启动它的配置流程。在主从的SPI配置模式下,FPGA有效FCS_B选中FLASH并且下发读命令。这个时候SPI FLASH 必须已经初始化完成。这是一个不容忽视的因素,笔者一个项目就因为FLASH启动慢于FPGA。导致上电后无法启动FPGA,但是软启动却是可以。解决好这个问题官方文档给了两个方法,亲测有效:


2.重要的几个信号

PROGRAM_B:重新配置。该信号低有效,当出现一个低脉冲时,则重新开始配置流程。这个信号可以引出到开关,用于调试时的程序加载。具体电路如下图。这个信号只能用于上电后的重配置。言外之意,在上电之前就让他保持低电平再拉高,以达到延迟配置的功能是不行的。上电时想要达到配置延迟只能用INIT_B。

 

 

INIT_B:FPGA的配置初始化信号。这是个双端口。当该信号为低的时候,代表配置流程处在复位状态,或者配置发送了错误,或者在清除(初始化)配置信息。在QSPI FLASH配置时序中,它一般在紧跟PROGRAM_B这个信号后面。当然,它有一个最大的功能就是能够在上电后延迟FPGA配置进程,保证FLASH设备准备好后FPGA再对其发出读写指令,满足SPI FLASH的配置时序。

PUDC_B:上电后,以及在FPGA配置过程中IO脚的状态。当他为低的时候,IO上拉电阻有效。反之无效。手册中提示,配置过程中该脚一定不能悬空。虽然没说如果悬空会有什么后果,但实际验证发现,在有的型号片子(K7325T)上,并不会影响FLASH对FPGA的配置,不知道在其他片子上(包括同型号不同封装的片子)是否会有影响。猜测,如果悬空会造成配置过程中IO的不定态,如果外接了其他设备,会对引脚有破坏作用。

 

 

(本文档参考官方文档7Series_Config)

  • 2
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值