SSPI方式配置Lattice ECP3系列FPGA

本文主要包括通过SSPI方式配置Lattice ECP3系列FPGA的一些说明

最近项目中用到了Lattice ECP3,项目中使用ARM通过SSPI方式配置FPGA。所以这里对配置方法做一些笔记待以后自己或需要的朋友参考;本文内容主要来自Lattice官方文档:LatticeECP3SlaveSPIPortUsersGuide.pdf1

配置时序

CPU配置FPGA波形图

  1. PROGRAMN(内部弱上拉输入)

    在INITN为1时给PROGRAMN一个下降沿,即表示开始配置,PROGRAMN低电平要保持Tprgm(最小25ns);
    使用JTAG配置时要保证PROGRAMN一直为高。

  2. INITN(开漏双向)

    在PROGRAMN下降沿后Tdppinit(最大37ns)时间后拉低,这个下降沿会采集CFG决定配置是slave模式还是master模式,在初始化时准备好这其中一种模式;再过Ticgf(初始化时间,即清除FPGA内部数据和配置模式的时间,slave模式最大6ms,master模式最大23ms)时间拉高(这时PROGRAMN要为高,否则要等到PROGRAMN为高之后Tdinit<=1ms时间后才拉高),也可以由外部拉低INITN来延长这个时间,这个上升沿也会采集CFG决定最后配置模式;拉高后即表示可以向FPGA输入配置数据了;若配置开始后(INITN由低到高后)被拉低则表示配置出错。

  3. DONE(开漏内部弱上拉双向)

    在PROGRAMN下降沿后Tdppdone(最大37ns)时间后拉低;接收完所有配置配置数据且确定没有错误后拉高,进入用户模式,也可以由外部拉低DONE来延迟进入用户模式的时间(这需要将DONE_EX参数设为ON)。

在JTAG配置模式时INITN,DONE没有以上意义(来自参考文档2 的p7)

注意:以上说明中实际时间针对Lattice ECP3系列芯片,数据来自参考文档3

除了使用PROGRAMN下降沿使FPGA初始化并重新配置,还有其它方式使FPGA进入配置;所有初始化方式如下:

  • 上电
  • PROGRAMN拉低
  • JTAG Refresh命令
  • SSPI Refresh命令
  • Slave Parallel Refresh命令

SSPI配置流程

SSPI配置方式主要按下图的流程配置

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值