基于DSP芯片的FPGA的配置方法


前言

目前,复杂的数字控制电路中一般都包含DSP和FPGA两个主控芯片,DSP主要实现逻辑算法功能,FPGA主要实现接口扩展功能,二者相互配合实现设备所需功能。
FPGA需要专用的配置芯片来完成程序的存储及加载。FPGA配置芯片都为国外厂商生产,芯片价格较贵,且占一定的电路板面积,不利用设备的小型化,并降低了设备中电子元器件的国产化率;若能省去FPGA的配置芯片将有很大好处。本文采用TI公司的DSP芯片TMS320F28335来实现FPGA的配置。


1 配置原理

Altera公司CycloneⅢ的FPGA有三种配置模式:JTAG模式、AS模式和PS模式。FPGA工作在PS模式下,DSP作为外部控制器,将配置数据(即FPGA程序)从自身存储器(FLASH)传入FPGA中,实现FPGA配置。DSP的FLASH中数据的可通过串口等网络通信实现远程更新,同时即可实现FPGA程序的更新。
采用DSP配置FPGA器件,只需对DSP进行编程,模拟PS配置方式中DATA0、DCLK、nCONFIG、CONF_DONE、nSTATUS引脚的配置时序,将FLASH存储器中的配置数据串行移入FPGA。
设备上电时,DSP首先作为外部控制器,将配置数据从存储器传入FPGA中,然后DSP和FPGA再按照各自相应程序执行任务。
将FPGAMESEL0、MESEL0引脚接地,则FPGA工作在PS配置模式下;将DSP芯片的任意5个GPIO引脚与FPGA相连,连接关系如图1所示。
图 1DSP与FPGA的硬件连接
表1 CycloneⅢ器件的PS配置方式时序参数

2 FPGA配置过程

CycloneⅢ系列FPGA配置时序如图2所示,配置过程(从即将配置到配置结束)分两个阶段:复位阶段和配置阶段,配置时序参数如表1所示。
图2  FPGA 配置图
图2 FPGA 配置图
表1 CycloneⅢ器件的PS配置方式时序参数
在这里插入图片描述

2.1复位阶段

当FPGA 的nCONFIG 或nSTATUS 引脚为低电平时,FPGA 处于复位阶段,一旦nCONFIG 从低电平变为高电平或高阻态时,FPGA 就跳出复位阶段,并通过上拉电阻将nSTATUS 拉到高电平,一旦nSTATUS 变为高电平,FPGA 即进入准备接收配置数据状态,此时DSP可以在任何时候通过配置时钟开始发送配置数据,如图2所示。

2.2 配置阶段

在nSTATUS 变为高电平后,即表示FPGA 从复位进入配置阶段,此时, DSP 就从FLASH 中读取配置数据,并/串转换后,将串行数据逐比特通过DATA0 送给FPGA,每个配置时钟上升沿到来时, 发送1个比特。
若配置数据是以十六进制形式存放在FLASH 里的, 应先发送每个十六进制数据的最低位比特(LSB)。FPGA 通过DATA0 按比特接收配置数据,同时通过DCLK 接收DSP 产生的配置时钟, 每个比特是在配置时钟的上升沿送给FPGA 的。
配置时,比特流就这样源源不断地送给FPGA, 直到CONFIG_DONE从低电平变为高电平。这是因为,FPGA 成功收到了所有配置数据后,即通过上拉电阻将CONFIG_DONE 拉到高电平,以此来告诉DSP 配置已完成。因此,CONFIG_DONE从低电平到高电平的跳变,意味着配置的结束,如图2 所示。

图3 QuartusⅡ设置界面

3 配置文件格式的转换

Altera公司的FPGA开发环境QuartusⅡ开发平台对不同器件有不同的配置文件,配置文件大小和数据格式也不同,JTAG模式对应配置文件sof,AS模式对应配置文件pof。QuartusⅡ平台默认编译生成的是sof文件,而sof文件不能直接用于DSP配置FPGA方法中,需要进行数据转换才能得到可用的配置数据。
DSP配置FPGA需要rbf二进制文件或ttf十六进制文件,将ttf文件内容按照配置时序发送到FPGA的SRAM内。QuartusⅡ可通过设置可自动产生ttf文件,设置界面如图3所示。
ttf文件用记事本打开可看到其FPGA配置数据;DSP程序设计时,将记事本中的数据用一个大的数组保存。DSP上电启动时,程序将该数组中的数据按照配置时序,依次发送到FPGA,完成FPGA配置。


总结

采用DSP芯片配置FPGA,完成程序的存储及加载,优点如下:1)降低硬件成本:省去了FPGA专用配置芯片的成本,并能减小主板面积,提高电子元器件的国产化率。2)减少生产工序:省去了对FPGA专用配置芯片烧写的工序,对提高生产率、降低生产成本等均有好处。

参考文献
[1]张小平.Altera新型FPGA器件的配置方式[J].微处理机,2006,4:93-95
[2]吕书东.FPGA被动串行配置控制器的研究与实现[J].军事通信技术,2006,27(4):66-69
[3]王利军,张超.基于CPU实现FPGA远程更新[J].信息通信,2013,6:44-46
[4]晏勇.基于MCU的FPGA系统在线配置及实现[J].陕西科技大学学报,2013,31(4):122-125

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值