TigerSHARC 系列DSP 链路口结构分析与应用

2021-06-17 06:53王甜
电子制作 2021年1期
关键词:寄存器移位链路

王甜

(北京信息职业技术学院电子与自动化学院,北京,100018)

0 引言

随着超大规模集成电路(VLSI)技术的发展,数字信号处理器(DSP)的性能不断提高,DSP的单片处理能力已经十分强大。但是,在某些应用领域中,如:无线基站和高性能雷达信号处理机等,由于需要对多通道的数据做实时处理,其运算速度要求达到每秒几百亿、甚至上千亿次运算,这时只有利用多片DSP,做并行处理,才能满足这种需求。

在由多DSP组成的信号处理系统中,多片DSP间的数据传送是影响系统性能的关键之一。ADI公司的Tiger SHARC系列DSP为用户提供了设计大规模并行系统的硬件基础,基于其专门用于DSP间通信的链路口,可以设计出高速的松耦合分布式并行系统。

1 TigerSHARC 系列DSP概述

TigerSHARC系列DSP是美国ADI公司基于其SHARC系列DSP的下一代高性能芯片。该系列 DSP是具有极高性能的静态超标量处理器,专为大的信号处理任务和通信应用进行了结构上的优化。该处理器具有非常宽的存储器带宽和双运算模块(支持32-bit浮点和8-,16-,32-,64-bit定点处理)。静态超标量结构使其每周期能够执行多达4条指令,24个16-bit定点运算或6个浮点运算。目前,该系列的产品包括:ADSP-TS101S和ADSP-TS201S、TS202S、TS203S等,其中ADSP-TS20xS是最近推出的芯片。目前应用较多的为ADSP-TS101S,有250M和300M两种主频。

ADSP-TS101S的片内资源主要有:(1)双运算模块,每个运算模块有一个ALU、一个乘法器、一个移位器及通信加速器;(2)双整数ALU,提供数据寻址和指针操作;(3)6Mbits SRAM,分为M0、M1和M2共3部分;(4)3套相互独立的32位地址、128位数据内部总线,分别对应连接内部SRAM的M0、M1和M2;(5)程序控制器、中断控制器和SDRAM控制器;(6)DMA控制器,共有14个DMA通道;(7)32位地址、64位数据的外部端口和4个链路口。

刚推出的ADSP-TS20xS相对于TS101S的主要改进与提高包括:(1)运行频率提升到了600MHz;(2)运算块中的通信加速器增强为单独的通讯逻辑单元;(3)内部总线增加为4 套;(4)内部RAM改为24Mbit的嵌入式DRAM。

2 TigerSHARC 系列DSP链路口的结构、工作方式及使用方法

■2.1 TigerSHATC系列DSP链路口概述

TigerSHARC系列DSP的链路口是除外部口外,专门用于系统中TigerSHARC系列DSP之间通信的额外通道,另外,也可以与满足链路口通信协议的其它设备实现无缝连接(如:可以通过在FPGA中构建链路口控制器实现DSP与FPGA间高速的点到点数据传输)。

TigerSHARC系列DSP的链路口都以双倍速率工作,即在时钟的上升沿和下降沿都锁存数据。对于300MHz的TS101S来说,链路口时钟最高可以为内核时钟的一半,即150MHz,每个链路口提供300Mbyte/S的传送速率,4个链路口就可以实现1.2Gbyte/S的峰值速率。而对600MHz的TS201S来说,链路口时钟的最高可以达到内核时钟,即600MHz,每个链路口可以实现1200Mbyte/S的传输速率,4个链路口就可以实现4.8Gbyte/S的峰值速率。由此,可以看出,利用链路口,可以实现TigerSHARC系列DSP间高速地数据传送,从而可以大大提高整个并行系统的性能。

■2.2 TigerSHARC系列DSP链路口结构

ADSP-TS101S的链路口为半双工外部接口,每个链路口有8条双向数据线和3条控制线:LxDAT[7:0]提供了8位数据总线的输入/输出;LxCLKOUT和LxCLKIN执行时钟/确认握手协议;LxDIR表明传输的方向且只当对LxDAT信号进行缓冲的时候使用。其典型的外部连接方式如图1所示。

TS101S链路口内部由收发两部分组成,并且为双缓冲结构,其中发送缓冲寄存器(LBUFTXx)和接收缓冲寄存器(LBUFRXx)为存储器映射寄存器,发送移位寄存器和接收移位寄存器不能被软件访问,这四个寄存器都是128bit寄存器。链路口数据传输必须为4字的整倍数,也就是说最小传输单元为4字(128 bit)。

图1 典型的链路口外部连接方式

TS20xS的链路口为全双工外部接口,并且采用低压差分信号(LVDS)。每个链路口都有一对收发通道,最多可有4bit分别用于收发,可以同时操作,实现全双工通讯。每一个通道包括4位数据、一个时钟和两个控制信号,其中数据和时钟为LVDS信号。

■2.3 TigerSHARC系列DSP链路口的工作方式及使用方法

虽然,TS101S与TS20xS的链路口在外部电气特性和内部结构上有较大的区别,但它们的工作方式和使用方式基本一致,所以,在本节以TS101S为例,讨论链路口的工作方式和使用方法。

TigerSHARC系列DSP链路口的数据传输由链路口内部的通信协议保证,应用程序只需在传输前对链路口的控制寄存器(LCTLx)进行正确设置即可,该寄存器的结构如表1所示。

推荐理由:文化的历史,说到底是人类的历史。现代人是如何从十万年前的东非小部落,成长为如今超过70亿人口并遍布整个世界的?在人类进化早期,基因对文化起到决定性作用;而在 “走出非洲”的扩张阶段,文化演进才是现代人成功的最大秘密。本书讲述了人类伟大的迁移史、人类基因的秘密以及基因与文化的深刻互动和相互影响,以生物进化理论为基础,为读者呈现了一幅宏大的人类文化演进的历史画卷。所有这些内容会帮助我们重新认识种族差异、文化差异和人类本身。

表1 LCTLx寄存器结构

具体各个控制位的描述如表2所示。

表2 LCTLx寄存器控制位描述

使用链路口进行数据传输有两种方法,一种是DSP内核通过直接写链路口的发送缓冲寄存器和读链路口的接收缓冲寄存器来传输数据;另一种是片内的DMA控制器可以通过8个专用的链路口DMA通道(4个发送通道,4个接收通道)来传输数据。

对于第一种方式,可以直接将要发送数据写入发送缓冲,当发送移位寄存器为空时,发送缓冲中的数据被送入发送移位寄存器进行发送;当发送缓冲中的数据送入发送移位寄存器后,才可以将新的数据写入发送缓冲。当接收移位寄存器为空时,开始接收数据;接收完全部4 字后,且接收缓冲为空时,将数据送入接收缓冲,DSP内核可以通过内部总线读取数据。这种方式传输数据需要DSP内核进行操作,在数据量大时效率不高,所以下面重点针对DMA方式,详细阐述基于链路口的DSP间的数据传输。

TigerSHARC系列DSP的每个链路口都分配两个DMA通道,分别用于发送和接收。这两个DMA通道可以连接任意的内部或外部存储器。当发送缓冲为空且此DMA通道使能时,链路口发出DMA传输请求;当接收缓冲满且DMA通道使能时,链路口发出DMA接收请求;当这个DMA通道变成激活状态时,DMA请求马上执行。

每一个DMA通道都有一个固定的TCB寄存器(DMA传输控制块寄存器),其中DCx为链路口DMA通道TCB寄存器,应用程序中通过写DCx来建立和使能链路口DMA通道的DMA传输。表3给出了DCx与链路口DMA通道的对应关系。每一个TCB寄存器由4个32位的寄存器组成:

索引寄存器(DI),存放需要传输数据的地址。

X方向计数和增量寄存器(DX),高低16位分别存放DMA的计数值和地址增量。

Y方向计数和增量寄存器(DY),高低16位分别存放DMA的计数值和地址增量。

控制和链指针寄存器(DP),存放DMA的控制信息和DMA链的指针,DP中控制信息的详细用法可查看相关技术文档。

表3 DCx与链路口DMA通道对应关系

下面以图1所示连接关系,具体给出TigerSHARC系列DSP链路口DMA数据传送的程序设计方法。假设现在编程将TS1内部存储器中地址link_tx_int开始的1K字的数据通过链路口传送到TS2的外部存储器中,地址为link_rx_ext。此处不使用二维DMA,所以不用填写DY寄存器。链路口DMA传输完成后会触发相应DMA通道的中断。

TS1中通过写DC4启动链路口0的DMA传送,汇编程序如下:

XR0 = link_tx_int;(DI寄存器)

XR1 = 0x04000004;(DX寄存器)

XR2 = 0x00000000;(DY寄存器)

图2 三种典型的链路口拓扑结构

XR3 = 0x47000000;(DP寄存器)

DC4 = XR3:0;

TS2中通过写DC9启动链路口1的DMA接收,汇编程序如下:

XR4 = link_rx_ext;DI寄存器)

XR5 = 0x04000004;(DX寄存器)

XR6 = 0x00000000;(DY寄存器)

XR7 = 0x87000000;(DP寄存器)

DC4 = XR7:4;

3 基于TigerSHARC系列DSP链路口的并行系统设计

基于TigerSHARC系列DSP的4个链路口可以设计出具有不同的拓扑结构的高速松耦合分布式并行系统。图2 给出了常用的三种多处理器拓扑结构。基于这三种常用的拓扑结构,可以连接多片TigerSHARC DSP,组成规模巨大的处理器阵列,满足各种特定的对计算能力要求很高的应用需求。

4 结束语

TigerSHARC系 列DSP是ADI公司的高性能浮点数字信号处理器,其特有的链路口互联技术,为由多DSP组成高速实时信号处理系统提供了很好的解决方案。本文详细介绍了TigerSHARC系列DSP链路口的结构特点和使用方法,并给出了典型的并行系统设计方法。

猜你喜欢
寄存器移位链路
一种移动感知的混合FSO/RF 下行链路方案*
基于FPGA 的参数可调多功能移位寄存器设计与实现
探讨口腔正畸治疗牙周病致前牙移位的临床效果
天空地一体化网络多中继链路自适应调度技术
关于Bergman加权移位算子的n-亚正规性
飞思卡尔单片机脉宽调制模块用法研究
移位寄存器及算术运算应用
数字电路环境下汽车控制电路信号设计
一种IS?IS网络中的链路异常检测方法、系统、装置、芯片
读编往来/评刊表