TMS320C61416 EMIF总线下双FPGA加载设计

发布者:EnigmaticSoul最新更新时间:2008-01-20 来源: 单片机与嵌入式系统应用关键字:FPGA 手机看文章 扫描二维码
随时随地手机看文章
        基于SRAM结构的FPGA容量大,可重复操作,应用相当广泛;但其结构类似于SRAM,掉电后数据丢失,因此每次上电时都需重新加载。

        目前实现加载的方法通常有两种:一种是用专用Cable通过JTAG口进行数据加载,另一种是外挂与该FPGA厂商配套的PROM芯片。前者需要在PC机上运行专用的加载软件,直接下载到FPGA片内,所以掉电数据仍然会丢失,只适用于FPGA调试阶段而不能应用于工业现场的数据加载。后者虽然可以解决数据丢失问题,但这种专用芯片成本较高,供货周期也较长(一般大于2个月),使FPGA产品的开发时间受到很大约束。

        因此希望找到一种更简便实用的FPGA芯片数据加载方法。根据FPGA芯片加载时序分析,本文提出了采用通过市面上常见的Flash ROM芯片替代专用PROM的方式,通过DSP的外部高速总线进行FPGA加载;既节约了系统成本,也能达到FPGA上电迅速加载的目的;特别适用于在FPGA调试后期,待固化程序的阶段。下面以两片Xilinx公司Virtex-4系列XC4VLX60芯片为例,详细介绍采用TI公司的TMS320C61416 DSP控制FPGA芯片数据加载的软硬件设计。

        1 Xilinx FPGA配置原理

        Virtex-4系列的FPGA芯片外部配置引脚MODE PIN(M0、M1、M2),有5种配置模式,如表1所列。

        FPGA在Slave SelectMAP方式下,共用了表2所列的15个配置引脚。

        1.1 配置流程

        FPGA加载时序如图1所示。各配置信号必须满足其时序关系,否则配置工作无法正常完成。



        图1中,Slave SelelctMAP加载主要包括以下3个步骤:

        ①启动和初始化。

        FPGA上电正常后,通过PROG_B引脚低脉冲进行FPGA异步复位,使得FPGA内部逻辑清零。其次PROG_B上拉高,停止外部复位,INIT_B引脚会在TPOR时间段内自动产生一个由低到高的跳变,指示FPGA内部初始化完成,可以进行数据下载;同时FPGA在INIT_B的上升沿采样其模式引脚MODE PIN,决定其模式配置。

        ②比特流加载。

        INIT_B信号变高后,不需要额外的等待时间,Virtex器件就可以立即开始数据的配置。比特流数据在外部CCLK信号上升沿按字节方式置入。该过程包括同步初始化字、器件ID号校验、加载配置数据帧、CRC校验4个部分。

        ③STARTUP启动。

        在成功校验CRC码位后,比特流命令使得FPGA进入STARTUP状态。它是由8相状态机实现的。中间包括等待DCM锁相、DCI匹配等几个状态,最后FPGA释放外部DONE引脚,对外输出高阻态,由外部上拉高,指示FPGA加载成功。

        1.2 文件生成

        ISE生成数据文件主要有3种:BIT文件,由二进制格式进行表征逻辑设计,包括文件头和配置数据,主要用于JTAG下载电缆模式;MCS文件,为外部PROM烧写生成的下载文件,ASCII码,与前者不同的是它含有在PROM中的数据地址和校验值;BIN文件格式,由二进制表示,完全由配置数据组成,不需要作其他的提取和进制转换,只是配置前的Byte-Swapped是在CPLD中实现的。本设计采用的是BIN文件格式。

        2 硬件实现

        系统采用2片Xilinx Virtex-4系列的600万门的FPGA XC4VLX60。主MCU是TI公司高性能定点处理器TMS320C6416,对外有2个EMIF总线接口,分别是64位宽EMIFA和16位宽EMIFB。EMIFB上挂有8位8MB的Flash和16位CPLD:Flash做2片FPGA的BIN文件保存,之前由仿真器烧写;CPLD用于2片FPGA地址译码和DSP与FPGA配置部分的逻辑接口。整个数据流程是在DSP上电启动后,Bootloader自行引导用户程序运行。该程序负责由EMIFB总线搬移Flash空间中BIN文件,通过CPLD分别对2片FPGA进行配置加载。硬件系统拓扑图如图2所示。

        3 软件设计

        软件包括3部分:引导Bootloader代码,加载FPGA用户程序以及接口部分的CPLD Verilog代码。

        3.1 DSP Bootloader

        本系统中目标板处于FPGA调试后期,需要固化其加载程序。整板上电后,要求脱离仿真器自行加载FPGA,因此这里采用DSP的EMIF BooT方式。它是由DSP上电复位后,以默认ROM时序通过EDMA自行搬移BCE1的ROM空间前1 KB内容到片内,在其0x0地址开始运行。

        一般由C编写的程序代码长度都远大于1 KB,如果只是纯粹由DSP搬移Flash前1 KB空间,这样便会丢失数据,程序无法正常运行。这里采用由汇编语言写的一个两次搬移的Bootloader程序,来引导较大的用户程序。使用汇编语言是因为其代码效率高,代码长度短(本系统中只有256字节)。两次搬移是因为第一次DSP自行搬移后的Bootloader会占用片内的0x0地址前1 KB空间,与下一步的用户程序0x0地址拷贝冲突(中断向量表必须放在0x0地址,否则会丢失中断跳转的绝对地址),且运行中的Bootloader不能覆盖自身。所以把拷贝用户程序的那部分代码放在片内较底端运行,腾出了用户空间的0x0地址。最后整体拷贝结束后,Bootloader再跳转到用户程序入口地址c_int00运行。

        3.2 用户程序和CPLD程序

        本系统中2片FPGA加载的原理一样。为避免繁琐,这里以1片FPGA_A为例来作介绍。

        CPLD在系统中负责2项工作。

        ①映射DSP端Flash分页寄存器:控制Flash的高3位地址线,分8页,每页1 MB空间。

        ②映射DSP端2片FPGA的加载寄存器:

        a.配置寄存器FpgaA(B)_config_Reg[8:O]。负责配置数据和时钟,高8位为Byte-Swapped前的数据位,输出到配置引脚时进行字节交换,最低位为CCLK位。

        b.控制寄存器FpgaA(B)_Prog_Reg[2:O]。负责外部控制引脚,分别为CS_B、RDWR_B和PROG_B。

        c.状态寄存器FpgaA(B)_State_Reg[2:0]。负责回读配置中的握手信号,分别为BUSY、DONE和INIT_B。

        由Bootloader引导的用户程序由C语言开发,在CCS下调试通过。它主要实现Flash翻页,把之前烧写在Flash中的BIN文件,通过上述CPLD中3个加载寄存器对FPGA进行上电配置。具体流程如图3所示。


        当前FPGA配置时钟CCLK是在用户程序中通过DSP写命令产生的,即写FpgaA(B)_Config_Reg的CCLK位高低电平;同时8位配置数据也连续写2次,由CPLD锁存到FPGA总线上,便能充分保证图1中该有效数据在CCLK上升沿上被锁。

        以下是CPLD中动态加载部分的Verilog代码:

//FPGA控制寄存器(DSP只写)


        结 语

        该系统已成功用于某公司一款软件无线电平台中,通过反复软硬件调试,现已投放市场。此外,由于该系统中的DSP芯片TMS320C6416自带PCI桥,因此该平台设计有与主机通信的CPCI接口,支持32位的PCI总线带宽,最大数据吞吐率能达到133 MB/s。所以,此平台不仅可以实现上述提到的上电Flash自行加载FPGA的目的,还可在其配置完以后通过主机端对FPGA实现动态加载,充分满足了软件无线电中可重构化、实时灵活的指导思想。
关键字:FPGA 引用地址:TMS320C61416 EMIF总线下双FPGA加载设计

上一篇:基于FPGA的UART控制器的多模块设计与实现
下一篇:FPGA与DS18B20型温度传感器通信的实现

推荐阅读最新更新时间:2024-05-02 20:39

基于FPGA的电子设计竞赛电路板的设计
  引言   全国大学生电子设计竞赛至今已成功举办了八届, 参赛人数越来越多, 竞赛规模越来越大。大学生电子竞赛在培养学生创新能力、促进高校学风建设及电子信息学科教学改革等方面起到了引导和推进作用。   大学生电子竞赛题目以模拟电子、数字电子、可编程逻辑器件及单片机技术为核心, 涉及电子仪器仪表、通信、高频无线电、自动控制等多学科内容。2007 年电子设计竞赛组委会专家指出: 电子设计竞赛的发展趋势将以模电、数电、FP2GA 为重点。因此, 对于参赛队员来说要获得较好的成绩, 选择合适的题目并进行培训至关重要。笔者针对以FPGA 为核心的竞赛题目特点及竞赛元器件要求, 设计制作了竞赛电路板, 组成框图如图1 所示。 图1
[单片机]
基于<font color='red'>FPGA</font>的电子设计竞赛电路板的设计
莱迪思即将举办网络研讨会,讨论最新的Avant平台——再创超低功耗新境界
莱迪思即将举办网络研讨会,讨论最新的Avant平台——再创超低功耗新境界 中国上海——2023年3月15日——莱迪思半导体公司,低功耗可编程器件的领先供应商,今日宣布将举办网络研讨会探讨Avant™平台,这是一款全新的FPGA平台,旨在将莱迪思领先的低功耗架构、小尺寸和高性能拓展到中端FPGA产品。 在网络研讨会期间, 莱迪思的技术专家将介绍莱迪思Avant平台和首款基于Avant的FPGA系列产品——莱迪思Avant-E™ ,帮助客户解锁全新的FPGA创新设计。 • 举办方:莱迪思半导体公司 • 内容:全新莱迪思Avant平台——再创超低功耗新境界 • 时间:北京时间 3月28日(周二)下午2:00 •
[嵌入式]
RS与Red Pitaya签订全球独家经销协议
据此协议,RS 将为这家测试和测量领域的创业公司经销革命性的新型开源测试与测量仪,产品价格亲民,面向大众市场;其独具特色的 Red Pitaya 技术提供简单的用户界面,所有人都能轻松上手。 北京2014年3月27日电 /美通社/ -- 全球领先的电子与维修产品高端服务分销商Electrocomponents plc 集团公司(LSE:ECM)旗下的贸易品牌 RS Components (RS)与测试和测量领域一家重要的新进竞争者 -- Red Pitaya -- 签订独家协议。根据协议,RS 将经销这家新锐公司的首款独创产品,也就是一种开放式单板仪表与控制台,这种标价不到500美元的产品可以替代多种昂贵的实验室仪器。
[测试测量]
英特尔 FPGA 助力 Microsoft Azure 人工智能
新特性:在近日举行的 Microsoft Build 大会上,Microsoft推出了 基于 Project Brainwave 的 Azure 机器学习硬件加速模型,并与 Microsoft Azure Machine Learning SDK 相集成以供预览。客户可以使用 Azure 大规模部署的 英特尔 ®  FPGA (现场可编程逻辑门阵列)技术,为其模型提供行业领先的人工智能 (AI) 推理性能。   “作为一家整体技术提供商,我们通过与 Microsoft 密切合作为人工智能提供支持。人工智能适用于从训练到推断,从语音识别到图像分析等各种使用场景,英特尔拥有广泛的硬件、软件和工具组合,可满足这些工作负载的需求。”  
[嵌入式]
详解远距离测温器数控系统设计
0 引言 在一些特殊的科研场所和工业生产单位,出于各种条件限制,仪表往往不能就近测量物体实际温度;而以往所使用的一些传感器在使用时受到各种环境因素的影响,使得传感器测量得到的温度不能精确地反映被测物体的温度。因此,人们需要找寻一种远距离测温器,能够精确测量物体温度,并能实时监控温度数据。 远距离测温器是一种被动式的温度遥感器,可用于远距离探测物体的温度,在科学研究和工业生产中发挥了重要作用。由于在使用时人们对测温器的测量范围、灵敏度要求很高,同时由于当今遥感仪器的设计越来越趋于低功耗高密度及小型化,因此,要求测温器的数据处理与控制系统具有高可靠性、高分辨率、实时性、体积小等特点。由于FPGA的功能强大,逻辑速度快,可以用多种
[测试测量]
详解远距离测温器数控系统设计
华为美产FPGA芯片告急,“备胎”能否接过大任?
华盛顿邮报引述总部位于美国加州的研究公司Mobile Experts首席分析师马登(Joe Madden)的话指出,华为的美国芯片等零部件库存将用尽。 报道指出,华为即将耗尽的正是用于包括5G基站在内的通信设备的FPGA芯片,来自美国半导体大厂赛灵思(Xilinx),可编程逻辑器件(FPGA)独步全球。 自孟晚舟及美国实体清单事件之后,华为一方面开启了备胎计划,搬出多年积累的自研芯片,另一方面华为早就预想到了美国制裁,早早的就在大量囤积可能受到制裁影响的零部件,以及转单不受美国影响的零部件供应商,来保障零部件供应。外界预估,华为的库存可保证一年的缓冲期。 此外,由于美国的制裁,华为转向扶持国内供应商,目前有多家国
[网络通信]
华为美产<font color='red'>FPGA</font>芯片告急,“备胎”能否接过大任?
罗姆推出FPGA用电源稳压器及模块
近年来,电子设备(应用)的多样化与高性能化以惊人的速度不断发展。可以说,这种趋势使各产品的开发周期缩短,并给半导体技术带来了巨大的发展空间。 在这种背景下,被称为FPGA的LSI为电子设备的开发作出了巨大贡献,它比以往任何时候更引人关注,市场规模不断扩大。 1.何谓FPGA FPGA为Field Programmable Gate Array的缩写,意为在现场(Field)、可擦写(Programmable=可编程)的、逻辑门(Gate)呈阵列(Array)状排布的半定制LSI,简言之,即“后期电路可擦写逻辑元件”。 产品售出后也可进行再设计,可顺利进行产品的更新以及新协议标准的应对。这是制成后内容即被固定的ASIC (A
[嵌入式]
罗姆推出<font color='red'>FPGA</font>用电源稳压器及模块
FPGA在多进制正交扩频通信系统中的应用
    摘 要: 讨论了高速无线分组网络中多进制正交扩频通信系统的设计和实现,其中在系统核心部分的扩频编码调制和解调等很多功能都由FPGA来完成,并对此进行了详细的介绍。     关键词: FPGA 扩频通信 多进制正交扩频 QPSK调制        门阵列逻辑电路在数字系统设计中得到广泛的应用,因此从GAL、EPLD直至目前的FPGA(现场可编程门阵列),容量和功能以及可靠性都得到很大的发展。目前的FPGA结构采用总线方式,布局布线方便灵活,Altera公司的FLEX10K系列FPGA掩埋带有入出寄存器的RAM块,更加方便地应用于CPU系统。随着器件的发展,开发环境进一步得到优化。Altera公司的Ma
[应用]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved