一种新型DSP(TS101)中的链路DMA
扫描二维码
随时随地手机看文章
摘要:链路dma是在处理器内核不干预的情况下,后台利用链路口高速传送数据的一种机制。ts101是高性能浮点数字信号处理器,它有8个链路dma通道,可以在内部/外部存储器和链路口之间、链路口与链路口之间进行多种类型的dma传输。文章介绍了链路dma及其在雷达信号处理系统中的实际应用。 关键词:ts101;链路dma;tcb;转发1 引言雷达处理过程中大量复杂信号的处理算法要求信号处理机具有每秒超过百亿次的浮点运算能力,如此高的速度在目前的技术条件下无法用单片dsp实现,需要采用多片并行处理技术才能满足处理速度的需求。ts101处理器是analog devices公司推出的一种新型高速实时数字信号处理芯片(dsp),其峰值运算能力可达18亿次/秒。ts101采用改进的静态超标量流水结构,适用于构成各种不同的并行多处理器系统,可以较好的满足雷达信号处理的要求。在多片dsp组成的并行系统中,链路口应用得到了越来越多的重视,各dsp间可通过链路口互连解决多处理器之间共同占用总线所产生的数据通信瓶颈问题,增强处理器之间的通信能力。链路dma(direct memory access)是在处理器内核不干预情况下的后台高速数据传送机制,其传输方式灵活,不占用内核的处理时间,因而在雷达信号的并行实时处理系统中尤为重要。本文对ts101中链路口的dma传输方式进行了探讨。
2 ts101的链路口及链路dma传输2.1 链路口ts101是高性能128bit浮点数字信号处理器(digital signal processor?dsp)?有四个链路口。每个链路口由发送器和接收器两部分组成,每部分都有一个128bit的移位寄存器和一个128bit的缓冲寄存器,其结构如图1所示。每个链路口均有8bit数据线和lxclkin、lxclkout和lxdir(x为链路口序号0~3)三个控制引脚,可支持多片ts101处理器间点对点的双向数据传送。其中lxdir 用来指示链路口的数据流向。lxclkin和lxclkout为链路口的时钟/确认握手信号。数据发送时,lxclkout为时钟信号,lxclkin为确认信号;数据接收时,lxclkin为时钟信号,lxclkout为确认信号。发送数据时,首先传输四字数据到链路发送缓冲寄存器lbuftx,再将其复制到移位寄存器(若移位寄存器为空,此时lbuftx可被写入新的数据),然后以字节的形式发送出去(先发送低字节),每个字节在链路时钟的上升沿和下降沿被驱动和锁存(sharc系列dsp只在一个时钟沿驱动数据)。接收器的移位寄存器为空时,系统将开始接收发送方传输的数据并将其送入移位寄存器,同时驱动lxclkout为低。当整个四字到齐后,如果接收缓冲寄存器lbufrx为空,系统会将四字数据从移位寄存器复制到lbufrx,并在数据被取走后驱动其lxclkout为高,以告诉发送方接收缓冲寄存器为空,可以准备接收新数据。发送方检测到lxclkin为高后立即进行下一次传输。所有的链路口都可用于ts101处理器的引导(sharc系列只固定某个链路口引导)。然而应当注意:ts101处理器的链路口与sharc系列的dsp是不兼容的。2.2 链路dma链路dma是在处理器内核不干预的情况下,后台通过链路口高速传送数据的一种机制。ts101有4个链路口,每个链路口有两个dma通道(一个接收dma通道和一个发送dma通道),图2所示是ts101中dma控制器的示意图。利用ts101的片上dma控制器能通过8个专用的链路dma通道进行各处理器间多种类型的dma传输。要利用链路dma在各ts101处理器之间进行通信,必须对链路口及其dma寄存器进行正确的设置。其一般过程为:设置链路控制寄存器lctlx(sharc系列dsp一旦设置该寄存器就启动dma)使能链路口x接收或发送,写链路dma的发送或接收tcb(传输控制块)寄存器dcy(其中y=4~11,当y=4~7时,dcy分别为链路口0~3的发送dma通道tcb寄存器,当y=8~11时,dcy分别为链路口0~3