打印
[资料分享]

一种新型多DSP并行处理结构

[复制链接]
516|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Roses|  楼主 | 2017-12-26 15:53 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
一种新型多DSP并行处理结构
传统的雷达信号处理系统的设计是根据具体的需求确定算法流程以及硬件结构的。这导致了系统升级的困难加大。当信号处理的内容改变、要求处理的数据量加大、改进处理算法时,必须对整个系统进行重新设计。
利用软件无线电的原理,可以构建通用的硬件平台,辅之以必要的软件系统,能实现各种信号处理功能。
本结构采用高速浮点DSP(ADSP-21161N)。ADSP-21161集成了一个性能优良的浮点DSP核和丰富的在片功能,并且提供了实用可靠的多处理器互联及并行处理的方式。以六片ADSP-21161N构成的多处理器结构具有强大的处理能力,可以完成各种高速实时信号处理功能。
实时信号处理要求巨大的计算量与超高速的计算速度,而现在的单片DSP很难满足要求,因此必须采用合理的多DSP并行计算结构。雷达信号处理的特点要求处理结点具有大的I/O带宽,以实现高数据吞吐能力,通用的系统还必须支持多种算法,因此应能根据不同并行算法的要求灵活地改变多DSP并行计算的拓扑结构,并提供方便多样的相互通信手段。

1 ADSP-21161N芯片简介
ADSP-21161N是美国ADI公司近斯推出的功能强大的32bit浮点DSP芯片,采用超级哈佛结构,拥有多条内部总线、高速运算单元、大容量存储器、灵活多样的外部接口。它的核心工作频率可达100MHz,外部总线工作频率可达50MHz。由于其内部包括两组处理单元,每组又运用三级流水线结构进行处理,故而运算处理速度可达达到600MIPS,以此来实现DSP的低工作频率、高处理能力的功能可以降低功耗。
大容量内部双端口SRAM,容量可达到1Mbit,分成两个存储区,一个周期可同时完成指令代码及操作数的存取,并可任意设置成16位、32位或48位字宽,给不同的应用带一籽方便。
主机(HOST)与多处理器接口无需外部电路,依靠片内总线仲裁逻辑和DMA控制器的支持,能够方便地构成紧耦合的共享总线/共享存储器的并行系统。在片的SDRAM控制器,可直接管理SDRAM,多DSP之间可以很好地协调共同使用SDRAM,从而构成一个一体化的处理系统。
两套双向高速LINK数据传输,每套LINK口受独立的DMA控制 器、发送/接收数据FIFO的支持,可进行最高达100MB/s的高速数据传,大大提高了并行处理能力,可借以构成松耦合的分布式并行系统。
另外,还有SPI接口、可编程I/O管脚(FLAG)以及同步串口等通信端口。
2 多处理器系统基本结构
在多处理器系统中,处理器节点之间的通信通常使用两种方案:一种方案是使用专门的点对点通信信道;另一种方案是节点之间通过个共享的全局存储器和一条并行总线进行通信。这两种解决方案则构造了两种多DSP结构,即数据流式结构和簇式结构。
2.1 数据流工多处理器结构
数据流式多处理器结构应用ADSP-21161N的链路口进行点对点通信。系统的算法可以分解成多个部分,分别由多个处理器节点执行,并将数据按顺序放到由处理器节点构成的“流水线”上。这样的系统结构特别适合于对计算带宽要求高、灵活性要求低的应用。但作业一个通用的处理平台,必须做到灵活性强,因此本文所介绍的系统并没有应用数据流式结构,而是簇式结构。

    2.2 族式多处理器结构
族式多处理器结构适合于需要一定灵活性的应用,特别是当一个系统必须我种不同任务,而其呈些可有需要并发运行的情况。簇式多处理器结构如1所示。
ADSP-21161N的内部存储器是针对满足多处理器系统I/O的需要设计的,片内的双口RAM允许在处理器核进行双数据访问的同时进行全速的处理器间传送,而不需要从处理器核窃取周期使处理器保持完整的100MIPS、600MFLOPS的性能。通过软件的设计,6片ADSP-21261N组成的一个统一的族式多处理器系统,可以将多处理器配置成数字并行或者是控制并行系统。由于各处理器节点内核之间不相互制约,这样一个系统可以达到3600MFLOPS的运算速度,对于通常的信号处理工作完全可以做到实时处理。
簇内存在一个瓶颈,这是因为在每个周期里只有两个处理器可以通过共享的总线进行通信,其它的处理器则被阻塞,直到总线被释放为止。由于ADSP-21161N也可以在一个族中进行点对点的链路口传送,该瓶颈很容易被消除。通过普通总线可以动态的建立和激活处理器间的数据链接。由于ADSP-21161N仅有两个链接口,各处理器间只能两两相连构成一条链路,不相邻的两个处理器节点之间的通信则要通过中间节点给予支持。但由于ADSP-21161N的链路口数据传输速率为100MB/s,而且传输字宽为8bit,基本可以消除此瓶颈的影响。
2.3 多处理器总线仲裁
多个ADSP-21161N可以共享外部总线,而不需要另外的仲裁电路。总线仲裁是通过使用BR1-BR6、HBR和HBG等信号完成的。BR1-BR6在多个ADSP-21161N之间进行仲裁,HBR和HBG完成ADSP-21161N主处理器和主机处理器之间的部控制权传递。总线仲裁可以采用跑步 同的优先权机制解决总线请求的竞争:固定优先权和循环优先权。RPBA管脚决定使用哪种优先权机制。当RPBA为高电平时选择循环优当RPBA为低电平野外选择固定优先。由于循环优先机制控制比较复杂,因此一般可和固定优先机制,经过实验检验,固定优先机制很容易用,而且效果不错。在固定优先机制中,参与竞争总线的ADSP-21161N中,ID号最小的ADSP-21161N将成为主处理器,从而可以将先级罗高的处理工作放在ID号较小的处理器中。在软件优先权控制上则需要较少的运算开销。
多处理器系统中各ADSP-21161N之间的BR1-BR6要连在一起,用到的BRx线的数量等于系统中ADSP-21161N的数量。每个处理器驱动与自身ID2-0输入相对应的BRx管脚,并且监视其它处理器的BRx管脚。如果系统中的ADSP-21161N少于6片,未用的BRx管脚应上拉为高电平。
3 多DSP并行处理结构的实现
ADSP-21161N具有设计多处理器系统的功能,包括总线控制仲裁、对其它ADSP-21161N的内部存储器和IOP寄存器的访问等。在多个ADSP-21161N共享总线式多处理机系统中,任何一个处理器都可成为总线控制者。
实现一个典型的多DSP并行处理结构,各处理器的三大总线要全部相连。图2给邮一个基本的多处理器系统结构图。在多系统中,某一时刻总线由主处理器控制,并且主处理器驱动所总线。由于民多处理器后,包括片内存储器以及IOP寄存器在内的所有地址空间是统一编址的,因此事实上只有两个节点(处理器或外设)在同时刻在总线上活动,而此刻总线对于其它节点来谙阻塞的。这,其它接口点能通过链路口或者FLAG标志口进行点对点通信来交换数据和消息。
在多处理器系统中,各控制线上除主DSP外的其它所有节点都属于负载,所以对于每一根控制线来说都是一个多负载的连接,必须在每个DSP附近接串接电阻以增强驱动能力,否则会由于驱动能力不足而导致所进行的操作失效。另外在所有低电平有效的一上应接上拉电阻,以保证在没有进行操作时从DSP以及外接不会接收到虚假的指令。由于本系统是一个独立的结构,并没有与外部主机相连,故主机接口控制线在各DSP相连的情况下,应像其它未用管脚一样根据ADI技术文档的要求进行处理。而本结构与外部的通信可以通过同步串口工者在总线上挂接一片双端口RAM来进行。
另外多处理器系统的时钟、复位步问题一个决定系统工作正常与否的关键问题,各DSP的复位信号可同时接到看门狗的输出端。时钟信号必须在阻抗可控的传输线中传输,为保证各DSP的时钟信号之间不存在相位差,或者说相位差在系统允许的范围内,一般应采取始端连接的方式。图3给出串联传线分配时钟的例子,它允许在不同的路径中存在延时,每个设备必须在线的终端。传路径必须均匀分布,以使各路径上的传输延迟相互匹配。匹配的反相器必须在同一IC上,且相互之间的时间滞后差必须小于1ns。

    并行处理系统的硬件结构搭建好后,如何才能很好地发挥其超强的处理能力,则要靠软件的设计来实现。为适应计算任务的多样性,可以采用1片ADSP-21161N作任务管理器,另外5片ADSP-21161N作运算器的主、从式拓扑结构。这样做还有利于实现指令间的流水处理,提高执行效率。而软件实现是可以根据具体的要求来完成,考虑到系统的高速、高效、实时性,软件可采用ADSP-21161N汇编语言进行编程。
本文以通用高速实时信号处理系统的设计为应用背景,提出了一种由6片ADSP-21161N构成的并行处理结构。它充分利用ADSP-21161N芯片本身支持多处理器并行运算的特点构成了式多处理器结构,并辅以链路口互取决的点到点通信、FLAG标志互连的消息传送等灵活多样的通信方式,具有运算能力强、I/O带宽宽、通信手段方便多样、能灵活地改变拓扑结构、可扩民有、通用性强等特点。以此并行处理结构为核心辅之高数据采集系统,快捷用高速FPGA作为系统控制设计实现了通用高速实时信号处理系统。实验表明,这种并行计算结构易于控制,工作效率高,并且稳定可靠。


相关帖子

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

本版积分规则

709

主题

1023

帖子

7

粉丝