DSP链路口在并行处理系统中的应用分析

时间:2011-06-10

  随着数字化时代的来临,DSP的应用几乎遍及整个电子领域,尤其随着其运算能力的不断增强、开发手段的不断完善、功耗需求的不断减小和生产成本的不断降低,在语音、图像处理、自动控制、仪器仪表、通信等领域得到了广泛应用。在很多情况下,由于对信号要求实时处理并且数据量不断增加,单片DSP芯片已不能满足要求。AD公司推出的ADSP2106X系列,由于采用了超级哈佛结构,适用于构成各种不同的并行多处理器系统,较好地满足了上述要求,因此在国内外得到广泛应用。在多片并行ADSP2106x处理系统中,链路口的应用得到了越来越多的重视。在这方面,如何充分、有效地利用链路口进行数据传输,已成为广大DSP应用者首先要解决的一个问题。

  1 ADSP2106X及其链路口的特点和功能

  ADSP2106X SHARC 是美国模拟器件(ADI)公司的一款高性能32 位数字信号处理器,它片内集成大容量RAM,采用数据总线与地址总线分开的超级哈佛结构,使其可以在单周期内完成取指、译码、执行多条指令,使其具有强大的并行处理能力。它具有如下优点:

  ⑴ 通信带宽大。外部总线接口的地址线宽32 位,支持多达4G 的地址空间;数据线宽48 位,可以达到240Mbytes/s 的数据传输率,可直接支持32 位单和40 位扩展浮点格式;

  ⑵ 处理速度高。40MIPS 的处理速度,浮点运算在单指令周期完成。在片内可以达到120MFLOPS 峰值浮点运算速度,80MFLOPS 持续浮点运算速度;

  ⑶ 片上集成快速、大容量的双端口SRAM,可以支持主处理器和DMA 控制器同时访问。DMA 控制器共有10个通道,它们可以独立于主处理器并行存取数据,利于隐藏数据的通信时延;

  ⑷ 直接支持多DSP 并行结构。多片ADSP2106x 的内存空间统一编址,各芯片可以直接进行相互之间内存的访问;并且芯片之间的访问还支持广播写方式,提高了数据交换的效率。

  此外,可外接RAM与FLASH存储器,采用外部PROM引导方式,将程序方便的存储在外部FLASH上,上电后自动加载;且ADSP2106X提供了大量寄存器,同时支持C++语言,方便实现代码的移植,可以采用ADI公司出的VISUAL DSP++,同时对6片DSP进行调试。

  ADSP2106X提供了6个链路口,每个链路口包括4位数据线、一个双向时钟信号、一个双向确认信号。链路握手信号包括LxCLK和LxACK,链路口以四位码一组的方式传送32位或48位字。在每个字开始发送时,发送方如果看到LxACK无效,将使LxCLK变高,并等待LxACK有效后发送新字。当发送缓存为空时,LxCLK将保持低。如果接收时钟不超过主时钟(40MHz),LCOM寄存器的LCLKX2x位应设为0;若接收时钟为主时钟的2倍,则置为1。两个用于数据通信的链路口之间的连接关系如图1所示。

  每个链路口还可以按2倍时钟频率的速率进行数据传输。

  链路口有以下功能和特点:

  ⑴ 各链路口可以独立工作或同时工作;

  ⑵ 链路数据可以打包成32位或48位数据,可以被处理器核访问,可以与片内存储器进行DMA传送;

  ⑶ 外部主机可以直接访问链路口;

  ⑷ 具有双缓冲的发送和接收寄存器;

  ⑸ 可通过时钟/确认信号在链路口通信时握手,每个链路口均可收/发数据,并分别有一个DMA通道支持;

  ⑹ 利用链路连接可以组成一维到多维的各种形式处理器网络。

  链路口有三种中断形式:

  ⑴ DMA使能时,DMA完成后将产生一个可屏蔽中断;

  ⑵ DMA禁止时,处理器核可以对存储器映射的LBUF进行读写,当接收缓冲不空或发送缓冲不满时,可产生可屏蔽中断;

  ⑶ 当外部设备访问一个未指定的链路口,或者访问一个已指定但对应LBUF被禁止的链路口时,将产生可屏蔽的LSRQ中断。

  链路口有三个重要的寄存器:LAR寄存器、LCTL寄存器、LCOM寄存器,它们都是32位寄存器。ADSP2106X有6个独立的链路缓冲LBUF5~0,每个LBUF由一个内部寄存器和一个外部寄存器组成的2级FIFO构成。当LBUF用于发送时,内部寄存器接收片内存储器送来的数据,外部寄存器将数据字展开成4位码,并且位先发送。当DMA或处理核送来的数据占满这2级FIFO时,将送出一个“满”标志。每当一个字展开发送后,FIFO中将空出一个位置并发出一个DMA请求。当FIFO空时,LxCLK无效。当LBUF用于接收时,外部寄存器用于数据打包,然后数据经内部寄存器以DMA方式送到片内存储器。通过链路指定寄存器LAR确定LBUF5~0与LINK5~0的连接关系。存储器之间传送数据时可以把一个LINK指定给两个LBUF,利用DMA通信。

  直接数据传输(DMA)可以承担数据传输任务而无需运算控制单元干预,从而提高了程序执行效率。ADSP2106X提供了10条DMA通道,其中只有LBUF0~3支持二维DMA(即以行主模式访问一个二维阵列元素)。LBUF5~0与6个DMA通道的对应关系如下:

  DMA通道1    链路缓冲LBUF0(与串口1接收共享)

  DMA通道3    链路缓冲LBUF1(与串口1发送共享)

  DMA通道4    链路缓冲LBUF2

  DMA通道5    链路缓冲LBUF3

  DMA通道6    链路缓冲LBUF4(与外部口0  EPB0共享)

  DMA通道7    链路缓冲LBUF5(与外部口1  EPB1共享)

  2 链路口的设置及应用中需要注意的问题

  对于多DSP系统,为了克服多处理器之间占用总线的瓶颈问题,增强处理器之间的通信能力,一般利用各处理器的链路口两两互联进行高速、点到点通信。因为采用链路口通信,所以允许发送和接收端的长距离互联。链路口采用的是自同步方式,这样时钟和数据均只有相对延时,不存在延时,这对印制板布线很重要。

  如果传输的数据在内存中不是一段数据,而是多段数据,就可以利用链式DMA。先禁止链路口所要指定的LBUF,对LAR指定,依次设置LCOM和LCTL(置LxCHEN位为1),向CP寄存器写入DMA控制块在内存中的首地址,就可启动链式DMA;而向CP写入0则禁止链式DMA。当前DMA完成后,由DMA控制器自动装入下一套参数,放在存储器中的(DMA)参数寄存器,建立下一个DMA。CP的位17为1时表示当前DMA完成后产生一个中断请求。DMA参数有4个:

  IIx     地址(存储器起始地址)

  IMx     地址修改量

  Cx      计数指针

  CPx     链指针

  它们在内存中的位置关系如图2所示。

  链式DMA方式只是对同一个LBUF口而言,多个LBUF不存在相互之间的链式DMA的情况。

  如果两个链路口之间是单次传输数据,那么先设置接收方DMA还是先设置发送方DMA都没关系;但是,如果是多次循环的收发数据,要保证接收方的DMA设置早于发送方DMA,否则每次传输数据时都会丢掉前两个32位字。这是因为发送方一旦准备好,就往接收方的缓存预先打入两个32位字。而当接收方设置DMA接收数据时,首先要清除这个将要用到的缓存,这两个32位字就丢掉了。在实际DMA传输数据过程中,一定不能对正在用的LBUF进行其它操作。

  当链路口禁止时,其数据线LxDAT3~0及LxCLK、LxACK都是三态。为了允许收发双方在被使能的时间上有先后,在链路口禁止时要对LPDPD清0,以使LxDAT3~0及LxCLK、LxACK被内部下拉(50kΩ)。要注意的是,这些信号线如果悬空,则必须用内部或外部下拉电阻。

  通过LINK口对DSP进行程序加载,一般用host(主机)或EPROM加载模式。

  3 链路口应用实例分析

  笔者在实际工作中曾用到某型雷达信号处理系统。该系统包括4块运算板和一块后处理板,这5块板子结构完全相同。单块DSP板包括20片ADSP2106X,同时处理同一个周期的4个通道(和通道、辅助通道1、辅助通道2和差通道)的数据,每5片处理一个通道,4个通道连线关系原则上基本相同。实际工作中根据重频来改变运算板的个数,运算板处理完数据通过链路口分时向后处理板传送数据。因为在实际中将出现多个链路口同时工作,为了避免各链路口工作时之间的高频干扰,对印制板设计的要求非常高。限于篇幅,下面只给出和通道的原理框图,如图3所示。

  LINK0和LINK3分别接收辅助通道的数据,LINK2和LINK5把处理后的数据传送到后处理板,4块板子分时向后处理板汇总数据。通过调试发现,在同一块运算板内部,各链路口之间的数据以80MHz的速率传送(系统时钟工作频率为40MHz)时,同时工作,相互之间几乎没有干扰,可以保证数据传送的准确性,大大提高了并行传输的能力。用1倍速(40MHz)的速率传送就可减少干扰,而且在接收板(即后处理板)链路口的握手信号上采取加滤波电容或下拉电阻的措施可以减少信号中的毛刺。本系统本来设计为同时由和通道、辅助通道1和差通道向后处理板传送数据,但实际工作中为了保证数据的正确性,在满足要求的情况下,把辅助1通道的数据通过链路口传送到和通道,再由和通道把数据发送出去,这样减少了用于传送数据的链路口的个数,数据可以正确地传输。链路口之间握手信号线采用电缆连接(一般用双绞线)。目前本系统已在某型雷达中得到了很好的应用。

  工程实践表明,并行多DSP系统中充分利用链路口,可在保证数据传输可靠性的同时,克服多处理器之间占用总线的瓶颈问题,增强了处理器之间的通信能力。


  
上一篇:一种红外线设备远程报警系统的设计和实现
下一篇:一种机器人视觉伺服系统的研究与设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料