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

技术编号:20485555 阅读:25 留言:0更新日期:2019-03-02 19:14
本发明专利技术涉及一种基于DSP芯片的FPGA配置方法,属于FPGA电路设计技术领域。本发明专利技术采用DSP来配置FPGA芯片,省去了FPGA专用配置芯片,将FPGA配置程序文件数据转换后烧写入DSP芯片的FLASH中,降低硬件成本。设备上电时,DSP程序模拟FPGA配置时序,将配置程序从自身FLASH存储器传入FPGA中,实现FPGA配置。DSP的FLASH程序容易通过串口、CAN、以太网等方式实现升级,便于FPGA程序更新,该方法不需要拆卸硬件设备连接仿真器,有效提高了软件升级的效率。

【技术实现步骤摘要】
基于DSP芯片的FPGA配置方法
本专利技术属于FPGA电路设计
,具体涉及一种基于DSP芯片的FPGA配置方法。
技术介绍
目前,复杂的数字控制电路中一般都包含DSP(或MCU)和FPGA两个主控芯片,DSP主要实现逻辑算法功能,FPGA主要实现接口扩展功能,二者相互配合实现设备所需功能。但FPGA需要专用的配置芯片来完成程序的存储及加载,FPGA配置芯片价格不菲,且占一定的电路板面积,不利用设备的小型化;而且FPGA软件升级一般都是通过JTAG接口,连接专用仿真器的方法完成FPGA软件配置和升级,该方式需要设备拆卸开盖,将印制电路板中JTAG接口露出连接仿真器,软件升级费时费力。因此,需要设计一种可以省去配置芯片的FPGA配置方法。
技术实现思路
(一)要解决的技术问题本专利技术要解决的技术问题是:如何设计一种可以省去配置芯片的FPGA配置方法。(二)技术方案为了解决上述技术问题,本专利技术提供了一种双基于DSP芯片的FPGA配置方法,包括以下步骤:第一步,进行硬件电路设计FPGA采用Altera公司的CycloneIII系列芯片EP3C10E144,将FPGA配置为PS方式,即MESEL0、MESEL1、MESEL2引脚接地;DSP采用TI公司的28系列芯片TMS320F28335,将DSP的5个GPIO引脚与FPGA相连;第二步,进行DSP的FLASH存储区分配DSP28335的FLASH存储区分为8个Sector:A、B、C、D、E、F、G、H,每个FLASH区大小为32K字,共计256K字,将DSP的FLASH内部存储空间分为两部分,分别用来放DSP程序、FPGA配置程序,二者共用一个FLASH,DSP程序存放在A、B、C、D四个区,DSP上电后程序自动跳转到该区域,执行DSP程序,FPGA配置程序放在E、F、G、H四个区,起始地址为0x300000;FLASH烧写文件采用*.hex文件,为Intel-HEX格式,Intel-HEX文件记录了DSP芯片FLASH数据的存储位置,文件由多行数据组成,每行HEX数据包括6个部分:行起始符、数据字节数、FLASH装载起始地址、记录类型、数据、校验和;第三步,进行FPGA配置文件格式转换及FLASH烧写QuartusII通过设置自动产生*.ttf文件,该文件以8位十进制ascii码数据格式保存FPGA配置程序;通过将*.ttf文件内容按照一定时序发送到FPGA实现DSP配置FPGA,FPGA配置程序烧写入FLASH采用如下方法:用记事本方法打开*.ttf文件,将*.ttf文件中的数据复制到DSP程序中,作为DSP程序的中一个常量数组const,和DSP程序一同编译、链接后,生成*.out或*.hex文件;当DSP程序烧写入FLASH内时,FPGA配置程序同时也存储入FLASH中。优选地,第三步中,将FPGA配置程序烧写入FLASH采用的方法替换为如下方法:设计一个可执行脚本文件,将*.ttf文件中的数据按照Intel-HEX格式自动转换为*.hex文件,采用C2Prog软件等多种方式将*.hex烧写入DSP的FLASH中;所述可执行脚本文件采用Python语言设计,是一个数据转换的可执行脚本文件,用于设置FLASH起始存储地址为0x300000,将两个8位TTF配置数据合并为一个16位数据,前一个数据放在高8位,后一个数据放在低8位,每行最大配置数据长度为32(0x20)个字节,即16字,因此每行的存储地址依次增加0x0010,生成HEX文件。优选地,其中,DSP中的所述FPGA配置程序的设计方法为:设备上电时,DSP首先作为FPGA的外部控制器,DSP程序模拟FPGA的PS配置方式的时序,将烧写固化在FLASH存储器中的配置程序数据串行移入FPGA,然后DSP和FPGA再按照各自相应程序执行任务;FPGA配置时序图和时序参数为FPGA芯片手册中PS配置方式,DSP配置程序流程如下,分为两个阶段:复位阶段和配置阶段:(1)复位阶段DSP将nCONFIG置为低电平复位FPGA,FPGA处于复位阶段时nSTATUS引脚为低电平;DSP将nCONFIG从低电平变为高电平时,FPGA就将跳出复位阶段将nSTATUS拉到高电平,若nSTATUS变为高电平,FPGA即进入准备接收配置数据状态;(2)配置阶段DSP从FLASH存储器中读取配置数据,FLASH中配置数据存储位置起始地址为0x0300000,最大数据长度0x020000,每个数据长度为16位,每个16位配置数据,DSP先发送高8位数据,再发送低8位数据,DSP用GPIO引脚产生DCLK时钟信号,每个DCLK上升沿到来时,通过DATA引脚发送1位数据,如此将串行数据逐位送给FPGA,FPGA配置完成时将CONFIG_DONE从低电变为高电平,DSP检查到CONFIG_DONE从低电平到高电平的跳变,意味着配置的结束,DSP和FPGA开始执行各自的任务程序。优选地,第二步中,还采用TI公司提供的程序固化软件C2Prog,基于串口、CAN、JTAG、USB这些方式将*.hex文件烧写入28系列芯片的FLASH,实现DSP用户程序升级固化。优选地,第二步中,还通过DSP芯片的Boot引导程序,采用以太网、1553B总线等方式将*.hex文件烧写入DSP的FLASH中,实现用户程序升级固化。优选地,第二步中,用户可根据DSP和FPGA程序大小,自行调整FLASH存储区分配。优选地,所述行起始符为“:”。优选地,所述数据字节数为8位,最大值32即0x20、所述FLASH装载起始地址为16位。优选地,所述记录类型为8位,类型分三种:00数据,01文件结束,04扩展地址。优选地,所述每行HEX数据中的数据最多32字节、校验和为8位。(三)有益效果本专利技术采用DSP来配置FPGA芯片,省去了FPGA专用配置芯片,将FPGA配置程序文件数据转换后烧写入DSP芯片的FLASH中,降低硬件成本。设备上电时,DSP程序模拟FPGA配置时序,将配置程序从自身FLASH存储器传入FPGA中,实现FPGA配置。DSP的FLASH程序容易通过串口、CAN、以太网等方式实现升级,便于FPGA程序更新,该方法不需要拆卸硬件设备连接仿真器,有效提高了软件升级的效率。附图说明图1是本专利技术中设计的DSP与FPGA的硬件连接电路图;图2是HEX文件格式图示;图3是C2Prog软件界面图示;图4是QuartusII自动生成的TTF文件;图5是本专利技术中脚本生成的HEX文件;图6是CycloneIII器件的PS配置时序图;图7是CycloneIII器件的PS配置时序参数例图。具体实施方式为使本专利技术的目的、内容、和优点更加清楚,下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。本专利技术采用DSP来配置FPGA芯片,以Altera公司的FPGA芯片EP3C10E144和TI公司的DSP芯片TMS320F28335为例,设计电路原理图,省去FPGA专用配置芯片,设计了一个可执行脚本文件,将FPGA配置程序TTF文件自动转换为HEX文件,再将FPGA配置程序HEX文件烧写入DSP芯片的FLASH中。设备上电时,FPGA工作在PS模式下,DSP作为本文档来自技高网...

【技术保护点】
1.一种双基于DSP芯片的FPGA配置方法,其特征在于,包括以下步骤:第一步,进行硬件电路设计FPGA采用Altera公司的Cyclone III系列芯片EP3C10E144,将FPGA配置为PS方式,即MESEL0、MESEL1、MESEL2引脚接地;DSP采用TI公司的28系列芯片TMS320F28335,将DSP的5个GPIO引脚与FPGA相连;第二步,进行DSP的FLASH存储区分配DSP28335的FLASH存储区分为8个Sector:A、B、C、D、E、F、G、H,每个FLASH区大小为32K字,共计256K字,将DSP的FLASH内部存储空间分为两部分,分别用来放DSP程序、FPGA配置程序,二者共用一个FLASH,DSP程序存放在A、B、C、D四个区,DSP上电后程序自动跳转到该区域,执行DSP程序,FPGA配置程序放在E、F、G、H四个区,起始地址为0x300000;FLASH烧写文件采用*.hex文件,为Intel‑HEX格式,Intel‑HEX文件记录了DSP芯片FLASH数据的存储位置,文件由多行数据组成,每行HEX数据包括6个部分:行起始符、数据字节数、FLASH装载起始地址、记录类型、数据、校验和;第三步,进行FPGA配置文件格式转换及FLASH烧写QuartusII通过设置自动产生*.ttf文件,该文件以8位十进制ascii码数据格式保存FPGA配置程序;通过将*.ttf文件内容按照一定时序发送到FPGA实现DSP配置FPGA,FPGA配置程序烧写入FLASH采用如下方法:用记事本方法打开*.ttf文件,将*.ttf文件中的数据复制到DSP程序中,作为DSP程序的中一个常量数组const,和DSP程序一同编译、链接后,生成*.out或*.hex文件;当DSP程序烧写入FLASH内时,FPGA配置程序同时也存储入FLASH中。...

【技术特征摘要】
1.一种双基于DSP芯片的FPGA配置方法,其特征在于,包括以下步骤:第一步,进行硬件电路设计FPGA采用Altera公司的CycloneIII系列芯片EP3C10E144,将FPGA配置为PS方式,即MESEL0、MESEL1、MESEL2引脚接地;DSP采用TI公司的28系列芯片TMS320F28335,将DSP的5个GPIO引脚与FPGA相连;第二步,进行DSP的FLASH存储区分配DSP28335的FLASH存储区分为8个Sector:A、B、C、D、E、F、G、H,每个FLASH区大小为32K字,共计256K字,将DSP的FLASH内部存储空间分为两部分,分别用来放DSP程序、FPGA配置程序,二者共用一个FLASH,DSP程序存放在A、B、C、D四个区,DSP上电后程序自动跳转到该区域,执行DSP程序,FPGA配置程序放在E、F、G、H四个区,起始地址为0x300000;FLASH烧写文件采用*.hex文件,为Intel-HEX格式,Intel-HEX文件记录了DSP芯片FLASH数据的存储位置,文件由多行数据组成,每行HEX数据包括6个部分:行起始符、数据字节数、FLASH装载起始地址、记录类型、数据、校验和;第三步,进行FPGA配置文件格式转换及FLASH烧写QuartusII通过设置自动产生*.ttf文件,该文件以8位十进制ascii码数据格式保存FPGA配置程序;通过将*.ttf文件内容按照一定时序发送到FPGA实现DSP配置FPGA,FPGA配置程序烧写入FLASH采用如下方法:用记事本方法打开*.ttf文件,将*.ttf文件中的数据复制到DSP程序中,作为DSP程序的中一个常量数组const,和DSP程序一同编译、链接后,生成*.out或*.hex文件;当DSP程序烧写入FLASH内时,FPGA配置程序同时也存储入FLASH中。2.如权利要求1所述的方法,其特征在于,第三步中,将FPGA配置程序烧写入FLASH采用的方法替换为如下方法:设计一个可执行脚本文件,将*.ttf文件中的数据按照Intel-HEX格式自动转换为*.hex文件,采用C2Prog软件等多种方式将*.hex烧写入DSP的FLASH中;所述可执行脚本文件采用Python语言设计,是一个数据转换的可执行脚本文件,用于设置FLASH起始存储地址为0x300000,将两个8位TTF配置数据合并为一个16位数据,前一个数据放在高8位,后一个数据放在低8位,每行最大配置数据长度为32(0x20)个字节,即16字,因此每行的存储地址依次增加...

【专利技术属性】
技术研发人员:张慧勇白璐瑶
申请(专利权)人:北京特种机械研究所
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1