电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 存储/缓存技术 > 详细信息
存储/缓存技术:合成孔径雷达成像系统逆存储转置器的DSP设计
来源: 微计算机信息   时间: 2007-9-24 10:05:20    

  摘要: 逆存储转置器(ICTM)是合成孔径雷达(SAR)实时成像处理系统的一个重要模块。本文设计的ICTM模块以TI的一款高性能定点DSP芯片TMS320C6415为核心处理器,两条大容量SDRAM作为外部存储器,实现输入数据的逆存储转置操作。软件编程采用并行处理方式,提高了代码执行效率。实际运行表明,模块能充分满足成像系统的实时性要求,同时其强大的处理能力也为今后处理更多的数据预留了空间。
  关键字: TMS320C6415;合成孔径雷达;逆存储转置器 

1.引言

  合成孔径雷达成像系统是一种全天时、全天候的高分辨率主动微波遥感成像系统,在地理遥感、地形测绘、灾情预测和军事侦察等领域有着重要应用。逆存储转置器(ICTM)是合成孔径雷达成像系统的一个重要模块,它需要将上位机方位压缩模块输出的图像数据以方位线的形式依次写入外部存储器,通过数据的逆转置处理,以距离线的形式将图像数据依次输出。此外,ICTM的输出数据将经过数据I/O节点发送到下位机图像显示模块,使图像显示模块能实时的以距离线形式滚动显示雷达图像。ICTM以TI的一款高性能定点DSP芯片TMS320C6415为核心处理器,两条大容量SDRAM作为外部存储器,实现输入数据的逆存储转置操作,同时其强大的处理能力也为今后处理更多的数据提供了升级空间。

2.TMS320C6415芯片简介

  TMS320C6415是TI公司生产的高性能定点DSP C6000系列中的一款,该系列的DSP都是基于VelociTITM架构的VLIW DSP,在每个时钟周期内可以执行8条32bit的指令。C6415的核心工作频率最高可以达到720MHz,峰值工作速率为5.76GIPS。C6415提供与SDRAM的无缝接口,可以有效的简化硬件设计开发难度,利用C6415的片选空间映射管理SDRAM,最多可以支持1GB的外部存储空间,完全可以满足逆存储转置处理所需的192M存储要求。

  TMS320C6415的CPU结构具有2个通道,每个通道有4个功能单元(1个乘法器和3个算术逻辑单元),16个32位通用寄存器,每个通道的功能单元可以随意访问本通道的寄存器。CPU还有2个交叉单元,通过它们,一个通道的功能单元可以访问另一个通道的寄存器。另外,CPU还具有256bit宽的数据和程序通道,可以使程序寄存器在每个时钟周期提供8条并行执行指令,这种CPU结构是DSP具有VLIW结构的基本条件。

  DSP的存储空间映射为内部存储器、内部外设及外部扩展存储器,其中内部存储器由64KB内部程序存储器和数据存储器构成。内部程序存储器可以映射到CPU地址空间或者作为Cache操作。内部和外部数据存储器均可以通过CPU、DMA或HPI(Host Interface)方式访问,HPI接口使上位机可以访问DSP的存储空间。

3.ICTM工作原理

  ICTM模块的主要功能是将上位机方位压缩模块输出的数据重新排列顺序,使得依次沿方位向排列的数据变换成沿距离向排列,使下位机图像显示模块能实时滚动显示图像。

图1  ICTM模块工作原理示意图

  ICTM模块的工作原理可用图1来表示。整个SDRAM存储空间划分为BANKA和BANKB两块存储区,两块BANK的列深度为输入的方位向点数2048点,行深度为输出的距离向点数4096点,为使两块BANK的读/写数据量平衡,需要在每个工作周期内输入两条方位线(2×2048点)数据,同时输出一条距离线(1×4096点)数据。两块存储区采用“乒乓”操作的读写方式,即如果等间隔读BANKA区域,则连续写BANKB区域,反之如果连续写BANKA区域,则等间隔读BANKB区域,读完一块存储区的同时,另一块存储区也刚好写满。这样两块存储区交替工作,充分节约了读/写SDRAM的时间开销,有利于满足整个系统的实时性要求。

4.ICTM硬件电路设计

图2  ICTM模块硬件电路结构示意图

ICTM模块的硬件电路设计框图如图2所示。根据ICTM模块的工作需要,主存储器采用两页式工作结构,每页集成256MBytes大小的SDRAM,分别配置在C6415的两个CE空间。SDRAM和作为输入/输出缓存的同步FIFO都连接在C6415 64Bit位宽的EMIFA接口,以保证较高的数据传输带宽。

4.1 SDRAM存储电路 

  主存储器类型选择为SDRAM,即标准的144pin笔记本内存条(标准SODIMM封装),目前选用256M容量大小。由于ICTM模块的SDRAM接口采用可扩充接法,因此可以扩充到512MB容量。即如果SDRAM Module的容量为256MB,则列地址为A0~A8 ,如果SDRAM Module容量为512MB,则列地址为A0~A9。DSP的EMIFA口CE0、CE1输出信号分别接SDRAM的BANK选择管脚S0、S1。即如果SDRAM的BANK只有一个,则只有S0有效,这样SDRAM只占用DSP的EMIFA口CE0空间,如果SDRAM的BANK有两个,则占用DSP的EMIFA口CE0、CE1空间。

4.2 输入/输出FIFO 

  DSP的EMIFA口CE2/CE3空间分别控制输入FIFO和输出FIFO。输入FIFO采用IDT公司的IDT72V3670(8K×36Bit),输出FIFO采用IDT公司的IDT72V3680(16K×36 Bit),封装形式为TQFP,128pin。FIFO的设计采用同步方式读写,但是利用0Ω电阻等效的短接线设计方式,也可以工作在异步模式下,FIFO控制信号通过CPLD做译码。

  ICTM模块用于读写操作的64bit FIFO采用用两个32bit的FIFO并连实现,利用FIFO深度来做等效的输入、输出“乒乓”操作。其中输出只用到一片FIFO,另外一片为将来大数据量的处理预留空间。

4.3 CPLD和HPI

  ICTM模块各功能单元的电路状态、时序控制以及I/O接口控制都由CPLD完成。此外,通过C6415的主机接口(HPI)可以直接访问DSP映射管理下的所有片内和片外存储单元。因此,在电路设计中将DSP的HPI接口通过CPLD与系统控制总线相连,从而使主控能够直接访问DSP的HPI接口,进而满足处理程序实时下载和指令数据实时传输的要求。

  ICTM模块的硬件设计充分考虑了结构化的设计要求,为合成孔径雷达实时成像处理系统提供了高性能的逆存储转置硬件平台,结合配置的控制软件就可以实现实时成像处理所需的逆存储转置功能。

5.软件设计与实现

  TMS320C6415是面向C结构的DSP芯片,支持标准C/C++编程,其开发工具Code Composer Studio(CCS2.21)内嵌C编译器的编译效率可达汇编的85%。另外,C编程可提高DSP程序的可维护性、可移植性、可继承性,便于缩短软件开发周期,因此本DSP程序选择采用C语言编写。

图3  程序层次结构和模块划分

5.1软件模块划分 

  软件层次结构和模块划分如图3所示。DSP软件的主要部分是底层的四个功能模块,这四个功能模块分别完成以下操作:1. 从输入FIFO中读取两条方位线数据(每条方位线2048点,每点数据类型为短整型)到DSP内存中;2. 将读入的数据按顺序存储到SDRAM中;3. 把SDRAM中的数据沿距离线顺序读到DSP内存中,即完成转置操作;4. 把转置后的数据送至输出FIFO。

5.2软件各模块间关系

l         上电初始化模块:在DSP上电后,完成与硬件工作有关的各控制寄存器的初始化,以及与软件工作有关的各内部变量和存储区的初始化;

l         主处理模块:调用其它功能模块,完成整个逆存储转置流程;

l         数据输入模块:受主处理模块调用,利用EDMA完成数据输入;

l         写SDRAM模块:受主处理模块调用,利用EDMA完成数据写操作;

l         读SDRAM模块:受主处理模块调用,利用EDMA完成数据读操作;

l         数据输出模块:受主处理模块调用,利用EDMA完成数据输出。

5.3 C6415的EDMA控制寄存器

  EDMA是C621x/671x/641x特有的数据存取方式。在C621x/671x/641x中,EDMA控制寄存器负责片内二级存储器与其它外设之间的数据传输。EDMA控制寄存器和DMA控制寄存器在结构上有很大不同。其增强之处包括:

l         提供了64个传输通道;

l         通道间优先级可设置;

l         支持不同结构数据传输的链接。

  EDMA控制寄存器主要由事件(中断)处理寄存器、事件编码器、参数RAM以及硬件地址发生器构成。其中,事件(中断)处理寄存器负责对EDMA事件进行捕获。一个事件相当于一个同步信号,由它触发一个EDMA通道开始数据传输。如果多个事件同时发生,则由事件编码器对它们进行分辨,将同时发生的事件进行排序,并决定事件的处理顺序。EDMA的参数RAM中存放了有关的传输参数,这些参数会被送往硬件地址发生器,进而产生读写操作所需的地址。

5.4 ICTM软件设计流程

图4  ICTM软件设计流程

  ICTM模块软件设计流程可用图4来表示。首先完成上电复位,初始化EMIFA和EMIFB配置寄存器、中断控制寄存器和EDMA控制寄存器,之后在主程序中完成各常量和变量的定义及初始化。完成上述初始化定义后就可以使能外部中断控制寄存器和EDMA控制寄存器,等待外部中断INT4的触发。INT4的触发源来自脉冲PRF,该脉冲的到来说明两条待输入的方位线数据已送至输入FIFO,此时CPU可以将这两条方位线数据读到DSP内存,并送至SDRAM的相应存储区。

  由于输入/输出数据结构相对简单,读输入FIFO、写SDRAM、读SDRAM以及写输出FIFO四个过程可以采用“EDMA链(EDMA Chain)”的方式进行。即第一个EDMA传输完成后,紧接着启动第二个EDMA传输,直到最后一个EDMA传输完成,这样可以在不受CPU干预的情况下完成数据的搬移,有利于提高数据传输效率。

5.5 软件并行设计问题

  由于EDMA不受CPU干预,因此在使用EDMA传输数据的同时,CPU可并行执行其它指令,这样可极大提高代码的执行效率。举例如下:

if(EDMA_intTest(22))

  {  

    *ifoeoff=0;

    EDMA_intClear(22);

    EDMA_setChannel(hEdmaCha25);// trigger EDMA to reading data from SDRAM     

    #pragma MUST_ITERATE(32,,8); 

    for(i=0;i<64;i++)

        {

headwriteaddr[i]=inputa[i];

}

    WORD_ALIGNED(inputb);

    WORD_ALIGNED(inputc);

    WORD_ALIGNED(inputa);

    #pragma MUST_ITERATE(64,,8); 

    for(i=0;i<4096;i++)

    {

      inputb[i]=inputa[2*i+64];

      inputc[i]=inputa[2*i+65];

}

   }

其中EDMA_setChannel(hEdmaCha25)语句用来启动EDMA25通道的传输,完成从SDRAM读取转置数据的任务。EDMA在进行数据传输的同时,CPU则继续执行之后的三条语句headwriteaddr[i]=inputa[i]、inputc[i]=inputa[2*i+65]、inputb[i]=inputa[2*i+64],直到EDMA传输完成并发出中断,CPU才响应EDMA中断。

显然,采用上述并行处理的方式,CPU工作周期得到充分利用,提高了代码的执行效率,有利于满足系统的实时性要求。

6.结束语

  逆存储转置器(ICTM)是合成孔径雷达(SAR)实时成像处理系统的一个重要模块。本文选择TI的一款高性能定点DSP芯片TMS320C6415为核心处理器,两条大容量SDRAM作为外部存储器,实现输入数据的逆存储转置操作。软件编程采用并行处理方式,提高了代码执行效率。单板测试和系统联调表明,设计的逆存储转置器满足各项性能指标,已通过项目组验收,即将投入实际应用。

相关信息
发表评论
打印本页 关闭本页
高速大深度新型FIFO存储器IDT72V3680的应用
  1 FIFO概述     FIFO芯片是一种具有存储功能的高速逻辑芯片,可在高速数字系统中用作数据缓存。FIFO通常利用双口RAM和读写地址产生模块来实现其功能。FIFO的接口信号包括异步写时钟(wr-clk)和读时钟(rd-clk)、与写时钟同步的写有效(wren)和写数据(wr-data)、与读时钟同步的读有效(rden)和读数据(rd-data)。写地址产生模块一般还根据读地址和写地址来产生FIFO的满标志。读...
>>详细内容
在FPGA中基于信元的FIFO设计方法
    设计工程师通常在FPGA上实现FIFO(先进先出寄存器)的时候,都会使用由芯片提供商所提供的FIFO。但是,由于其通用性使得其针对性变差,某些情况下会变得不方便或者将增加硬件成本。此时,需要进行自行FIFO设计。本文提供了一种基于信元的FIFO设计方法以供设计者在适当的时候选用。这种方法也适合于不定长包的处理。   FIFO在数字通讯芯片领域中有两个主要的作用,缓冲数据...
>>详细内容
基于FPGA 的DDR SDRAM控制器在高速数据采集系统中应用
    实现数据的高速大容量存储是数据采集系统中的一项关键技术。本设计采用Altera 公司Cyclone系列的FPGA 完成了对DDR SDRAM 的控制,以状态机来描述对DDR SDRAM 的各种时序操作,设计了DDR SDRAM 的数据与命令接口。用控制核来简化对DDR SDRAM 的操作,并采用自顶至下模块化的设计方法,将控制核嵌入到整个数据采集系统的控制模块中,完成了数据的高速采集、存储及上传。使用开发软件Qua...
>>详细内容
Ramtron将64Kb串行FRAM存储器升级至+125℃温度范围
    Ramtron International Corporation扩展其FRAM Grade 1汽车产品系列,新增一款64Kb串行FRAM,可在 -40至 +125℃整个汽车温度范围内正常运作。FM25640-GA是一款 5V、64Kb 的FRAM,具有高速串行外设接口 (SPI),符合Grade 1 AEC-Q100 的规范要求,适合于引擎罩下及乘客舱内的汽车应用。   FRAM具有快速写入及高耐用性的特点,是需要连续记录数据的汽车系统的理想选择。这些系统包括...
>>详细内容
利用FPGA实现异步FIFO设计
    目前数据采集系统朝着高速和高精度的方向发展。随着FPGA的集成度和运行速度的提高,可以满足高速数据采集系统的需求。FPGA内部具有丰富的存储单元,易于实现各种存储器(如FIFO、双口RAM等);另外,基于查找表的逻辑单元可用于实现各种数字信号处理(如滤波等),以辅助DSP处理器做各种预处理。   TI公司推出的高性能数字信号处理芯片TMS320C6000系列,工作频率最高可达到1GHz,具有...
>>详细内容
SDRAM通用控制器的FPGA模块化设计
  摘要: 介绍了一种SDRAM通用控制器的FPGA模块化解决方案。关键词: SDRAM控制器;FPGA;VHDL;状态机;仲裁机制 引言 同步动态随机存储器(SDRAM),在同一个CPU时钟周期内即可完成数据的访问和刷新,其数据传输速度远远大于传统的数据存储器(DRAM),被广泛的应用于高速数据传输系统中。基于FPGA的SDRAM控制器,以其可靠性高、可移植性强、易于集成的特点,已逐渐取代了以往的专用控制器...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com