datasheet

TMS320C61416 EMIF下双FPGA加载设计

2008-04-01来源: 时间:关键字:FPGA  加载  CRC校验  状态寄存器  配置寄存器  逻辑接口  TPOR  低脉冲

  基于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公司的TMS320C61416DSP控制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  加载  CRC校验  状态寄存器  配置寄存器  逻辑接口  TPOR  低脉冲

编辑:ssb 引用地址:http://www.eeworld.com.cn/gykz/2008/0401/article_720.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:实时操作系统μC/OS-II的改进与应用研究
下一篇:基于NucleusPLUS的嵌入式系统的软件设计

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

推出5G业务,专注FPGA,Intel将收购Omnitek公司

据外媒techcrunch报道,英特尔今日宣布,将收购Omnitek,这是一家总部位于英格兰的公司,他们开发了专门针对视频和AI应用的FPGA解决方案。 有关这单交易的条款尚未披露,但从笔者看来,价格对英特尔来说并不重要。因为Omnitek自1998年以来几乎没有筹集过任何资金。在这次收购中,英特尔将获得Omnitek在英国贝辛斯托克的全部40名员工以及Omnitek的其余业务,当中包括220多个FPGA IP内核和附带的软件。 被收购以后,Omnitek业务的员工和其他成员将成为英特尔FPGA业务的一部分,该业务位于其可编程解决方案集团内部,该集团在很大程度上是通过英特尔在2015年以167
发表于 2019-04-17
推出5G业务,专注FPGA,Intel将收购Omnitek公司

“RISC-V+FPGA”组合,为国内厂商带来多少新希望?

近两年,RISC-V在国内掀起一片热潮,被视作国产芯“自主可控”的发展契机。2018年还先后成立了中国RISC-V产业联盟、中国开放指令生态系统(RISC-V)联盟。有数据显示,中国有300家以上公司在关注RISC-V或以RISC-V指令集进行开发。值得注意的是,国内FPGA厂商就是其中的力量之一,或许RISC-V对FPGA而言意义非凡。2016年,美高森美公司(Microsemi)率先推出业界首个基于开源处理器架构RISC-V内核的FPGA系列产品,而这也成为引领性的事件。“RISC-V处理器和FPGA生态环境非常匹配,在RISC-V之前,FPGA软核生态主要由各家FPGA厂商进行维护,底层代码不开源,互相之间隔离,导致用户设计
发表于 2019-04-10
“RISC-V+FPGA”组合,为国内厂商带来多少新希望?

虚拟和增强现实技术可支持更广泛领域创新应用

;但摩尔定律改变了这一切。集成电路性能的指数级改进导致了无数新系统和元器件的开发,如现场可编程门阵列(FPGA)、图形处理单元(GPU)和高性能多核处理器等等。这些进步与开源视觉处理算法和无缝云集成的创新相结合,导致了人机界面性能的跨越式发展。现在,VR和AR最终都将实现其技术承诺。 在我们讨论一些VR和AR在消费和商业领域富有想象力和颠覆性的应用之前,需要重申一下这两种技术之间的明确划分。VR被广泛地表征为在模拟环境中发生的交互式计算机生成体验,通常是通过耳机创建完全沉浸式体验,一种完全超出真实物理世界的体验。 而AR则通常是通过使用智能手机或平板电脑上的相机,将图形和数据等数字元素构建成一个实时的真实世界视图
发表于 2019-04-10

AI时代,FPGA成为三大处理器主流芯片之一

说起FPGA(Field-Programmable Gate Array),即现场可编程门阵列, 本是硬件工程师才能玩转的半导体芯片,而今却随着工艺的进步和当今人工智能(AI)时代的发展和数据的爆炸性发展,一举跻身三大处理器主流芯片:FPGA,CPU,GPU。 )之一。由于其在硬件和软件端同时具有的天生的超性能和灵活性特征,当AI遭遇多场景而导致落地难时,越来越多的创新者将目光聚焦在了灵活应变的FPGA及基于FPGA的衍生产品上,FPGA迎来了巨大的发展机遇。赛灵思大中华区销售副总裁唐晓蕾赛灵思技术日活动上发表演讲,希望更多的开发者受益于超高性能且灵活应变的赛灵思人工智能解决方案。为此, 作为世界第一大FPGA厂商,也是FPGA
发表于 2019-04-09
AI时代,FPGA成为三大处理器主流芯片之一

英特尔为何敢说Agilex是首款面向数据中心的FPGA

在英特尔收购Altera的两年后,宣布推出首款全新系列FPGA,命名为Agilex,英特尔表示,这是首款面向数据中心领域的FPGA,正如词根Agil所述,该产品旨在强调英特尔为实现超高敏捷性和灵活性进行的创新。 英特尔可编程解决方案事业部首席产品营销官Patrick Dorsey表示,Agilex并不是Stratix的延续,而是一个全新的平台,该产品是英特尔第一次利用了公司里面所有的资源和能力,集大成所为,在一个平台上面完成整个的解决算法。 “这是我们推出的第一款该类型产品,因此值得有一个新名字!”Dorsey说道。 纵观Altera此前的产品线,Max系列是上世纪90年代推出的,Stratix
发表于 2019-04-04
英特尔为何敢说Agilex是首款面向数据中心的FPGA

动打造以数据为中心的世界,英特尔推出® Agilex™ FPGA

英特尔宣布推出全新产品家族——英特尔® Agilex™ FPGA。全新现场可编程门阵列 (FPGA) 家族将提供量身定制的解决方案,以解决嵌入式、网络和数据中心市场上以数据为中心的独特业务挑战。 英特尔可编程解决方案事业部高级副总裁 Dan McNamara 表示:“快速解决以数据为中心的问题要求采用敏捷、灵活的解决方案,以高效传输、存储和处理数据。英特尔 Agilex FPGA 不仅提供定制的连接性和加速功能,还能面向多种工作负载显著提升性能和降低功耗1,2。” 重要意义:客户需要出色的解决方案帮助整合和处理不断激增的数据流量,从而支持边缘计算、网络、云等新兴的数据驱动型行业从容运行各种变革性应用。无论是通
发表于 2019-04-03
动打造以数据为中心的世界,英特尔推出® Agilex™ FPGA

小广播

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved