打印

DSP的并行处理方法

[复制链接]
1626|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Flower1|  楼主 | 2018-7-31 13:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
DSP的并行处理方法

在通信、雷达等系统中,特别是在3G无线基站等系统中,随着输入语音 数字和分组数据量急剧增加,系统的处理能力也需要急剧增加,这需要一种功能强大的大型并行阵列信号处理系统。系统往往需要进行非常复杂的数据处理,虽然 DSP技术得到了飞速的发展,出现了高速DSP芯片,但是使用单个DSP芯片还是不能适用系统的需求,迫切需要把多个DSP组成互联系统,以增强整体数据 处理能力。本文主要研究TI公司的TMS320C6x系列DSP的主机接口(HPI)。

1 TMS320C6x简介

TMS320C6x内部主要包括1个中央处理器单元(CPU),1个程序内存和一个数据内存,DMA,1个外部存贮器接口(EMIF),1个主机接口 (HPI),2个多通道缓冲串口(McBSP),TMS320C6x的CPU 内部有8个处理单元,每个时钟最多可处理8条指令。TMS320C6x的接口灵活,处理能力强,运算速率高,因此在民用和军用领域都将有广阔的应用前景, 在军事通信、电子对抗、雷达系统、精确制导武器等需要高度智能化的应用领域,这种芯片的高速处理能力具有不可替代的优势。

2 利用TMS320C6x的HPI组成多DSP互联并行系统

主机口HPI是一个16/32 b宽度的对外接口,外部主机(也叫做上位机)掌管该接口的主控权,外部主机可通过HPI直接访问DSP的存贮空间。另外,主机还可以直接访问 TMS320C6x片内的存贮映射的外围设备。复位时向DSP加载程序,对DSP进行控制。外部主机是HPI的主管方,DSP是HPI的从方。主机可以通 过HPI访问DSP,但DSP不能通过HPI向外部进行访问。在这类系统中,通常包括一个主处理器和很多从处理器,主处理器一般是通信控制器,例如 MPC8260,MC68360等,当然TMS320C6x也可以作为主处理器,用来进行对系统的输入输出数据及整个系统进行进行管理。从处理器一般是多 个DSP(如TMS320C6x),用来进行算法处理。主处理器通过HPI向DSP加载程序,对DSP进行控制,可以通过HPI向DSP写入待处理的数据 或通过HPI读取DSP处理完的数据,DSP之间的数据可以通过HPI由主处理器进行中转。如图1所示,主处理器可以直接连接多个逻辑。此方法结构简单, 但主处理器负担较重,和多个DSP通信效率较低,且主处理和DSP阵列需要在同一块单板上。


另一种方法如图2所示,主处理器PCI总线连接到PCI/HPI接口转换控制芯片上,接口 转换芯片控制多个DSP并完成主处理器和DSP之间、DSP相互之间的数据交换。此时主处理器和DSP阵列可以不在同一块单板上。在该系统中(若主处理为 MPC8260,需增加8260到PCI总线的桥片),HPI/PCI接口转换控制芯片是整个系统设计的关键。



主处理器也可以通过TMS320C6x来充当,利用DSP的HPI接口组成一个多DSP互 连并行系统,一般是一个主处理器和一个从处理器,此种方法的一个应用实例是在雷达中的应用。滑窗算法是数字信号处理中一种常用的基本算法,但滑窗算法一般 是遍历性的算法,其运算量大,在实时处理中受到限制。利用2片TI公司的高速DSP芯片TMS320C6201,应用其HPI接口并行实现多种滑窗算法, 满足了某雷达系统解模糊的实时需要。系统由2片TMS320C6201完成所有的数字信号处理算法,主要是多重滑窗算法。根据实际系统的需要,将多重滑窗 算法处理分布在2片TMS320C6201上,利用其HPI接口完成多处理机之间的快速数据交换,构成多机并行处理系统,完成多重滑窗算法的多机并行处理。整个系统的基本框图如图3所示。


3 利用TMS320C6x的McBSP组成的多DSP并行互连系统

McBSP称为多通道缓冲串口,他有一个发送端口和一个接收端口,多个DSP可以通过McBSP连接到一个串行时际交换芯片,采用时际交换的方式进行数 据交换。数据收发以帧为单位进行。每个发送帧分成n个发送时隙,不同的发送时隙对应不同的接收DSP,例如:DSP0的发送端口在时隙1给DSP1发送数 据,在时隙2给DSP2发送数据,在时隙n给DSPn发送数据;每个接收帧分成n个接收时隙,不同的接收时隙对应不同的发送DSP。例如:DSP1的接收端口在时隙0接收来自DSP0的数据,在时隙2接收来自DSP2的数据,在时隙n接收来自DSPn的数据。这种方法的优点是接口简单,可以实现多个 DSP的全互连来进行并行处理。缺点是数据以串行方式传输,速率较低。

4 利用ADSP2106x的Link口组成多DSP互连并行系统

首先对ADSP2106x做一简单介绍。ADSP2106x是一种高性能的32 b数字信号处理器,采用超级哈佛结构。内有3条片内总线,他们是PM总线(程序存贮器)、DM总线(数据存贮器)和I/O总线。PM总线既可用来访问指令,也可以用来访问数据。在一个单周期内,处理器可以访问2个数据,一个通过DM总线,另一个通过PM总线,而指令要到指令缓冲中去取。他的外部口提供与 外部存贮器、存贮器映像I/O、主机处理器、多处理机系统中的其他ADSP2106x连接的接口。外部口完成内部和外部的总线仲裁,并且向共享的全局存贮 器和I/O设备提供控制信号。最显著的特点是提供了6个链路口,为多DSP并行处理提供了很大的方便。

ADSP2106x提供了6个链路口, 每个链路口包括4位数据线、1个双向时钟信号、1个双向确认信号、链路握手信号,每个链路口可以按2倍时钟频率的速率进行数据传输。可以独立工作或同时工 作,链路数据可以打包成32 b或48 b数据,可以被处理器核访问,可以与片内存贮器进行DMA传送,外部主机可以直接访问链路口。具有双缓冲的发送和接收寄存器。可通过时钟/确认信号在链路 口通信时握手,每个链路口均可收/发数据,并分别有一个DMA通道支持。由于有6个链路口,所以若数据总线采用紧耦合的方式,则一组多DSP最多可以有6 个DSP。

ADSP2106x的Link口的并行处理功能在实际中已得到广泛的应用。在雷达、通信等中都有成功应用的实例,利用Link口为了完成大量的的复杂数据运算且实时性要求高的系统,方法如图4所示。数据通过缓冲区送过来,然后在CPLD的控制下通过发送中断选择第几个DSP芯片,按照CPLD的控制依次将数据通过主总线送给各个DSP进行FFT和恒虚警处理,然后由后端的DSP通过软件控制从Link口依次将各个DSP处理的结果送 到后端的DSP进行处理,缓冲器通过数据总线将数据送给各个DSP,由于CPLD的控制,所以数据总线不会发生冲突。且紧耦合在一块的各个51DSP通过 Link口互相传送数据,各个DSP也通过Link口将处理结果送给后端DSP。这种方法在雷达中已得到成功的应用。当然ADSP2106x利用Link 口进行并行处理的方法在通信中也得到广泛的应用,例如在扩频通信中利用2片ADSP2106x也得到成功应用。利用Link口组成多DSP互连系统方法灵活,除上面所述外,还可根据实际情况进行处理。



5 结 语

不同的应用需要的处理能力不同,对各个DSP之间,DSP与主处理器之间的数据流量和时延要求也不同,故需要的DSP数目、互连方式也不同。利用 DSP不同接口的互连方式,HPI有利于外部主处理器对各个DSP进行控制,适合于主从处理器和多个DSP构成主从方式的互连系统。McBSP接口简单, 适用于对传输速率要求不高的低速全互连并行系统。对于ADSP2106x,由于其Link口的特点,特别适合与构成多种不同的并行多处理系统,在高速实时 处理系统中得到了广泛的应用。

前面介绍的各种DSP互连并行系统,各自有自己的优缺点,可以根据实际情况进行合理选择。


相关帖子

沙发
Flower1|  楼主 | 2018-7-31 13:02 | 只看该作者
DSP的并行处理方法

文档1.pdf

127.71 KB

使用特权

评论回复
板凳
zhangmangui| | 2018-7-31 20:14 | 只看该作者
时候 在并行处理上 灵活性不如FPGA  但多核DSP配合起来 进行信号处理有绝对的优势

使用特权

评论回复
地板
pklong| | 2018-8-6 17:42 | 只看该作者
同时执行两个或更多个处理?

使用特权

评论回复
5
touser| | 2018-8-6 17:42 | 只看该作者
怎么不使用FPGA呢?

使用特权

评论回复
6
myiclife| | 2018-8-6 17:43 | 只看该作者
性能优良的浮点DSP核

使用特权

评论回复
7
uytyu| | 2018-8-6 17:43 | 只看该作者
使用专门的点对点通信信道

使用特权

评论回复
8
iyoum| | 2018-8-6 17:44 | 只看该作者
数据流式多处理器结构吗

使用特权

评论回复
9
wwppd| | 2018-8-6 17:44 | 只看该作者
两个处理器可以通过共享的总线进行通信

使用特权

评论回复
10
jkl21| | 2018-8-6 17:44 | 只看该作者
多处理器系统的时钟、复位同步问题是一个决定系统工作正常与否的关键问题

使用特权

评论回复
11
maqianqu| | 2018-8-6 17:45 | 只看该作者
并行处理系统的硬件结构呢?

使用特权

评论回复
12
dspmana| | 2018-8-6 17:45 | 只看该作者
靠软件的设计来实现吗?

使用特权

评论回复
13
eefas| | 2018-8-6 17:45 | 只看该作者
推荐多核处理器吧。

使用特权

评论回复
14
iyoum| | 2018-8-6 17:46 | 只看该作者
系统的算法可以分解成多个部分处理。

使用特权

评论回复
15
pklong| | 2018-8-6 17:46 | 只看该作者
这个DSP是厉害了。

使用特权

评论回复
16
uytyu| | 2018-8-6 17:46 | 只看该作者
通过一个共享的全局存储器和一条并行总线进行通信。

使用特权

评论回复
17
touser| | 2018-8-6 17:46 | 只看该作者
现在多核DSP很厉害。

使用特权

评论回复
18
myiclife| | 2018-8-6 17:46 | 只看该作者
各种高速实时信号处理功能完全可以。

使用特权

评论回复
19
eefas| | 2018-8-6 17:46 | 只看该作者
TMS320C6678可以多核处理。

使用特权

评论回复
20
dspmana| | 2018-8-6 17:46 | 只看该作者
是使用操作系统了吗?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

623

主题

887

帖子

6

粉丝