首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

ADSP-TSl01的DMA在红外图像处理系统中应用

ADSP-TSl01的DMA在红外图像处理系统中应用

关键字:ADSP-TSl01   DMA   红外图像  
  1 引言

  红外图像处理系统的数据吞吐量大.处理算法复杂。由高速数字处理器和复杂可编程逻辑器件(CPLD)构成的红外图像处理系统是当前红外图像处理系统的一种发展趋势。将高速处理器从繁重的数据传输中解脱出来,专注于从事图像处理,是解决速度瓶颈的重要手段。


  直接内存存取(DMA)是在CPU无需干预的情况下自动进行数据传输的方式。它对于浮点DSP进行实时信号处理有着非常重要的作用。一方面.为了发挥DSP核心运算单元的高速运算能力.必须首先把程序和数据传输到DSP的内存中.这通常需要DMA操作来实现;另一方面.DSP系统总要跟外部信号通信,不论是数据的输入还是输出,都需要DMA来完成。否则会影响DSP核的高速运算能力。

  ADSP-TSlOl是AD公司推出的新型浮点DSP之一。其内部有专门的DMA控制器。还提供了多个DMA通道.不同的通道对应不同的外部口操作。本文首先概括介绍由ADSP一TPSl01和EPM3256型CPLD构成的红外处理系统。然后对系统中的几种典型DMA操作进行详细的分析。

  2 系统结构

  本文介绍的红外处理系统主要用于320x240像素红外图像的处理.





对背景中的目标进行检测、跟踪和识别。系统的硬件结构如图1所示。该系统采用2个ADSP-TS101作为处理器,2个的FIFO作为输入输出缓存,1个SDRAM作为外部存储器,1个:EPM3256型CPLD作为逻辑控制。

  

  在此系统之前的处理是红外图像的采集过程。采集到的红外图像数据经过外部连接首先传输到输入缓冲FIFO中。当某一帧图像数据传输完毕,使用TSl01特有的FLYBY传输方式将数据由输入缓冲FIFO传输到SDRAM中,然后DSP对图像数据进行目标检测等处理。处理结果先存储在DSP内的RAM中,最后输入到输出缓冲FIFO。其中包括FIFO到SDRAM、SDRAM到DSP及DSP间的数据传输,由于都采用了DMA传输,不占用DSP资源,大大提高了系统的处理能力。

  3 ADSP—TSl01的DMA描述

  ADSP-TSl01是TigerSharc系列DSP的首个成员,具有极高的运算能力。它片内的DMA控制器允许将数据传输作为后台任务执行,从而将处理器内核释放出来。其内部具有14个DMA通道,如图2所示,分别对应着不同类型的传输操作。4个通雷ㄓ糜谕獠看娲⑵魃璞福?个。DMA通道用于链路口,还有2个通道用于自动。DMA操作。多样的传输手段使得ADSP—TSl01传输数据非常方便。利用DMA控制器,DSP处理器可以执行以下几种类型的数据传输:


(1)内部存储器到外部存储器或与存储器映射的外设设备之间的数据传递;
(2)外部存储器与外部外设之间的飞跃式数据传输;
(3)外部存储器到链路口I/O的数据传输;
(4)链路口I/O到处理器内部存储器的数据传输:
(5)链路口I/O到外部存储器的数据传输;
(6)链路口I/O之间的闭环数据传输。


  

  TSl01的DMA控制器由专用的控制器核、发送端TCB寄存器与接收端TCB寄存器等构成。DMA传送的数据流具有方向性,即从发送端(源)到接收端(目的)。若发送端或接收端是存储器,则需通过TCB寄存器来描述。TCB寄存器是128 bit寄存器,如图3所示.包括启动DMA所必需的信息。例如,1个传送TCB包括数据源的地址、传输的数据字节数、地址的增量、控制信息。若启动DMA操作,需对TCB寄存器进行编程。

  

  TCB寄存器由4个32位寄存器组成:DI寄存器、DX寄存器、DX寄存器和DP寄存器。DI寄存器是32 bit索引寄存器,它包含传送的源地址或者接受的目的地地址,可以指向内存、外存或者LINK口。DX寄存器包含了1个16 bit的计数值和1个16 bit的修正值,分别存储在DX的前16位(前者)和后16位。如果一个二维DMA被使能,该寄存器包含的值仅仅代表X方向。例如:如果要传输4个128 bit的字.计数值将被设置为0X10,而修正值与DP寄存器中的操作数长度相对应。如果操作数长度是长字.那么修正值将会被设置为0X2。DY寄存器与DX寄存器相对应,只有启动二维DMA时才会用到。DP寄存器包括DMA所有的控制信息,分为控制信息和DMA链信息。

  4 系统中的典型DMA操作

  在本文介绍的红外图像系统中,主要使用以下几种DMA操作:内存与外存(内存与SDRAM间的数据传输)、内存与LINK口间的数据传输、外设与外存的数据传输(FIFO与SDRAM间的数据传输)。


  4.1 内存与外存间的DMA操作

  TSl01处理器有4个专用DMA通道,用于内部存储器与外部存储器之间的数据传输。每个通道有2个TCB DP寄存器、1个发送TCB和1个接收。TCB.其中发送端用来驱动数据,接收端用来接收数据。DP寄存器的TY域指定了要执行的DMA传送的类型。


返回列表