网站公告列表

  没有公告

加入收藏
设为首页
联系本站
您现在的位置: AnalogCN安诺电子 >> 文章 >> 独家资料 >> 文章正文
  [组图]SHARC系列DSP(5)之ADSP-21160         ★★★ 【字体:
SHARC系列DSP(5)之ADSP-21160
作者:admin    文章来源:本站原创    点击数:    更新时间:2007-12-6    

    1)功     

    在TI公司宣布TMS320C62/C67标准不久,ADI公司也提出了ADSP一21160规范,并在1999年提供样片。ADSP一21160的突出特点是对并行DSP形式的ADSP~2106X的结构功能进行了很大程度上的继承,并保证了与ADSP一2106X代码兼容,处理器具有SIMD功能,而ADSP一2106X只具有SISD功能。为了充分利用这种新的功能,一些指令作了一些变化。ADSP一21160包括1个100/150 MHz的运算核、双端片内SRAM、1个支持多处理器的集成在片内的I/0处理器和多重内部总线(以消除I/O瓶颈)。采用超级哈佛结构,4条独立的总线进行数据传输、指令传输及零开销的I/O传输。汇编源代码与ADSP一2106x兼容。SIMD计算结构具有两个32位的计算元,其中每一个包括乘法器、ALU、移位寄存器及寄存器文件;具有完备的与外围设备接口功能,包括独立的I/O处理特性以及端口(串口、连接口)等。ADSP一21160包括两个运算处理单元,所以具有SIMD功能。处理单元指的是PEX和PEY。PEX始终是有效的,而PEY的有效是通过设置MODEl寄存器中的PEYEN位来实现的。当PEY模式有效时,同一条指令在两个处理器单元中都得执行,但同一处理器中的操作数不同。SIMD模式在存储区和处理器单元之间的数据传输也是很有作用的。当使用SIMD模式时,由数据带宽加倍来保证处理器单元的操作。在SIMD模式,当使用DAGs传输数据时,存储区每次访问传输的是两个数据值。ADSP一21 160包括4 Mb的片内SRAM,分为两块,每一块2 Mb。可以定义为不同字长的指令和数据存储。每一个存储块的双端口结构可以使其独立地被运算核处理和I/O处理器访问。ADSP一21160的存储区最大可以容纳128K×32位或256K×1 6位数据或85K×48位指令,或其他混合字长的数据,但总和最大为4 Mb。所有存储区可以被以1 6、32、48、64位字长的字访向。

    外端口支持处理器与片外存储器及外设的接口,片外的4 Gb地址空间属于ADSP一21160的统--Ntg_空N。外端口支持同步、异步及同步Burst访问。DMA控制器的操作相对处理器运算核是独立和不可见的,即DMA操作可与指令执行同时进行。DMA传输可以在内部存储区与外部存储区、外围设备或主机之间进行。ADSP一21160共有14个DMA通道,其中连接口占6个,串口占4个,外端口占4个。ADSP~21 160可以通过DMA传输来下载程序,外围异步设备也可以通过DMA请求/应答线来控制2个DMA通道。

    ADSP一21160具有许多特点支持多DSP系统,外端口与连接口支持多处理器系统的直接连接,外端口支持统一的地址空间;允许DSP之间互相访问,片内具有分布式总线仲裁逻辑,最多支持6片ADSP一21160和主机的连接。外端口的最大数据传输率为400 MB/s,广播写信号可以同时发送到各ADSP一21 160。6个连接口提供了另一种方法实现多处理器之间的通信,连接口的最高传输速率为600 MB/s。功能结构框图如图8.15所示。

 

    2)超标量体系结构

    TigerSHARC DSP采用静态超标量体系结构。它继承了许多传统的静态超标量体系结处理器的许多方面,包括加载/存储结构、分支预测和大的互锁寄存器文件。在1个周期中最多可同时执行4个指令。之所以称为“静态超标量体系结构”,是因为指令级的并行早在程序的运行和解码之前就已确定。正是因为指令并行,完成一个软件程序中的3G相关函数(例如信道解码、分支和路径搜索)所需全部周期数就减少了。另外通过利用并行计算模块和专用SIMD计算,TigerSHARC DSP能够支持单指令、多数据(SIMD)运算。程序员可以让两个运

算模块对同一数据操作(广播发送)或不同的数据操作(合并发送。

    所有的寄存器都是互锁的,支持简单的程序模型。它们独立于执行时间,并可被完全中

断;通过一个可减少执行时间的128位输入分支目标缓存(BTB),实现分支预测。 

 

3)单指令多数据流机制(SIMD)

    ADSP一21060采用单指令单数据流机制(SISD),即一条指令仅仅对一组操作数或寄存器操作;而ADSP一21160采用了单指令多数据流(SIMD)与SISD可选的机制(依靠MODEl寄存器中的PEYEN位选择),从而更加有利于并行计算。在它的内核中,有两套完全独立的运算单元,每个运算单元包括:ALU、MPU、SHIFER、DATAR、EGISTER FILE以及一些辅助设备。这两个运算单元对指令解码的理解略有区别,使得同一条指令在两个运算单元中执行时,进行不同的操作。也就是说,当两个计算单元执行同一条指令时,它们的操作数或使用的寄存器是不同的。这就是所谓的单指令多数据流,图8.16给出这种结构的简单框图。

 

 

    4)DMA技术

    ADI公司的ADSP一211 6X系列芯片像其他DSP一样提供了普通DMA技术,同时它还提供了特色DMA技术,即链式DMA技术(Chaining DMA)。

    ADSP一21 16X中有14个DMA通道资源,包括8个串口(serial port)DMA通道,4个外部口(external port)DMA通道,另外2个DMA通道为链路口和SPI口共享。在这14个DMA通道中,除了SPI口DMA通道不能配置成链式DMA传输数据外,其他所有的通道都可以配置成链式DMA。

    (1)链式DMA与普通DMA的区别

    ADSP的DMA链允许DMA控制器在多重DMA传输之间自动初始化各参数寄存器。使用DMA链,可以建立多重DMA操作,而各操作有不同的属性。在DMA链操作中,当前缓冲区的全部内容已被发送或接收后,ADSP一2116X的I/O处理器会自动地建立另外一个DMA传输。而在普通的DMA传输中,当配置完DMA各参数寄存器后,DMA控制器就按照程序的设定通过外部总线和ADSP片内的I/0总线(包括数据和地址总线)从外部存储区传数据到DSP片内存储区中,或者作相反方向的传输。在当前的数据块传完后,DMA传输就结束了,并不能自动启动下一次DMA传输。

    链式DMA与普通DMA还存在一个很大的不同,即链式DMA需要在DSP片内单独开辟一个Buffer区,ADSP中称为“传输控制块TCB(Transfer Control Block)”。用户配置链式DMA,实际上就是配置TCB。它是一个由连续8个32位字组成的存储块,每一个32位字按照顺序都有其独特的含义,并且分别与I/O寄存器相对应。当配置完TCB,设置好DMA控制寄存器DMACx后,就可以向链式指针寄存器CPEPx写入TCB块的末地址,从而启动一个链式DMA传输。值得注意的是,当链式DMA需要作N次DMA传输时,就需要在内存中开辟N个TCB块,并作相应设置。这N个TCB在内存中可以是不连续的存储区,但是每个TCB的8个单元必须是连续的。在链式DMA中,它的启动是通过向一个特定的I/0寄存器写一地址来实现的,DMA各参数寄存器装载由IO处理器自动完成,对用户来说是透明的。在普通的DMA传输中,用户不必在内存中开辟一个单独的Buffer作TCB,用户要建立一个DMA传输,必须对DMA控制器的各个参数寄存器直接作相应的设置。此外,要启动一个普通的DMA传输只需设置好DMACx即可。因此链式DMA的高效传输是以牺牲一定的内存为代价的。

    当链式DMA只有一个数据块传输时,它的功能就相当于一个普通的DMA。

    (2)与链式DMA有关的寄存器

    如前所述,每一个链式DMA都必须至少有一个TCB控制块,TCB中的每一个存储单元都分别与一个特定的DMA参数寄存器相对应。以外部口DMA通道12的TCB为例,TCB[0]对应寄存器ECEP2(DMA通道12的外部计数器),TCB[1]对应寄存器EMEP2(外部修正寄存器),TCB[2]对应EIEP2(外部索引寄存器或称外部基址寄存器),TCB[3]对应GPEP2(通用寄存器),TCB[4]对应CPEP2(链式指针寄存器),TCB[-5-]对应CEP2(内部DMA计数器),TCB[6]对应IMEP2(内部修正寄存器),TCB[7]对应IIEP2(内部索引寄存器或内部基址寄存器)。ECEP2、EMEP2、EIEP2、GPEP2、CPEP2、CEP2、IMEP2、IIEP2这8个寄存器都是片内存储器空间映射的I/O寄存器。除了上述8个寄存器与链式DMA有关外,还有DMACl2与之相关。除了CPEP2和GPEP2外,其余几个寄存器与普通DMA的参数寄存器相同,其意义和寄存器中所应装载的内容与普通的DMA完全一致。这里重点讲述CPEP2寄存器。

    CPEP2在链式DMA中有非常重要的作用。它是一个19位的寄存器,低18位是偏移地址,最高位(位18)是控制位PCI(Program Control Interrupts,程序控制中断)。在ADSP一2116X中,所有的偏移地址都是以0x40000位为基准的,也就是说它对应的绝对地址应为CPEP2中对应的低18位加0x40000才是DSP片内地址,它实际上在配置中装载的是下次DMA对应的TCB块的最大地址。PCI位选择是否在当前DMA序列结束后产生中断。当PCI=l时,相应的DMA通道中断被使能,并且在计数寄存器减为零时产生中断,当PCI一0时,通道的中断是无效的。通过设置PCI位可以禁止不必要的DMA中断,从而提高程序执行效率。注意,PCI位只影响DMA链被激活了的通道(如DMACl2中的CHEN位是1)。对禁止了DMA链的DMA操作,必须使用IMASK寄存器禁止中断。通过PCI位使能的中断请求仍能在中断屏蔽寄存器IMASK中屏蔽。

    在DMA链序列中,可以使用通用寄存器(GPEP2)。它可装载内存中的另一个参数寄存器值,而且能指向最近完成的DMA序列。这使程序可以确定最后一个满(或空)数据缓冲区的位置。因为它是一个通用寄存器,没有特定的功能,因此能用于任何目的。

    (3)链式DMA各参数的装载

    ADSP一2116X的DMA控制器自动地从内存中读取TCB,并将数值装入通道参数寄存器,这一过程被称为“TCB链式装载”。在TCB链式装载时,DMA通道参数寄存器的数值是从内部存储器载人的。表8.24表示当向CPEP2写入TCB的最高地址时,I/0处理器装载参数入各参数寄存器的顺序。

链装载时序开始之前,工作寄存器载入来自CPEPx寄存器的值,并且在每个寄存器加载后,工作寄存器减1。工作寄存器的使用使得CPEPx寄存器被更新时不会干扰当前的加载。链装载完成后,工作寄存器被载入一个新的CPEPx数值。这使得链DMA序列可以连续设定。注意:工作寄存器的内容是I/O处理器操作的结果,是不可更改的,对用户来说是透明的。

    TCB链装载像所有的其他DMA操作一样,要提出请求。一个TCB链装载请求在DMA控制器中被锁存并保持,直到它成为最高优先级的请求。I/O处理器独立地判断优先级并传递TCB寄存器,如同平常的DMA一样。如果存在多个成链请求,最高优先级的DMA通道TCB寄存器将被首先传递。处于链加载过程中的通道不能被一个更高优先级的通道中断。

    (4)链式DMA的启动

    建立和发起一条DMA操作链的顺序如下:

    ①内部存储器中建立所有的TCB;

    ②写有关的DMA控制寄存器,设定其DEN=1,CHEN=1;

    ③将第一个TCB的最后一个地址(如IIEPx寄存器数值的地址)写到CPEPx寄存器中,这将会启动链。   

    DMA控制器将自动用第一个TCB初始化自己,然后启动第一个传输。当这个传输完成时,如果当前链指针非零,将开始下一个DMA传输。该地址作为下一个TCB的指针。

    5)主要特点   

    与ADSP一21060相比,ADSP一21160的主要特点如表8.25所列。

    ADSP一21 160时钟频率是ADSP一2106X的2.5倍,高达100 MHz,有两个并行的ADSP一21060核,因此运算速度是ADSP一2106X的5倍,即600 MFLOPS。ADSP一2106X的10个DMA通道被14个DMA设备(链路口占6个,外部总线占4个,串口占4个)共享,其中4个是复用的,ADSP一21160直接为14个DMA设备提供各自的DMA通道,具有内部4 MB存储空间,外部总线可以设置成2个32位数据总线,隔周期访问,因而总线速度是指令速度的一半。链路口采用8位数据,而ADSP一2106X仅4位数据。但在主要结构功能上,ADSP一211 60更多地保留了ADSP一2106X的特点。虽然内部操作速度是ADSP一2106X的2.5倍,但外部总线速度和链路口速度仅增加了25%,基本上保证了原来适用于ADSP一2106X的外部存储器和链接口的连接方式。

    ADSP一21160的指令集是向下兼容的。也就是说ADSP一21060的代码不需要作任何改动就可以运行在ADSP一21160上,同时ADSP一21160还对指令集进行了扩充。

    由表8.25的比较可以看出,ADSP一21060可以看成ADSP一21160的一个子集。ADSP一21160不仅在时钟频率上大大地提高,而且在芯片结构上也做了很多改进,这使得它成为一个更加适合并行处理的DSP芯片

文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    前置放大器在移动医疗服务系
    便携式多通道大容量生理信号
    防腐监测仪的设计与应用
    基于AD1674的酶标仪的设计
    基于C/S模式的JRTPLIB库的测
    ffmpeg与jrtplib相结合应用
    blackfin模拟摄像头驱动中的
    可编程逻辑在数字信号处理系
    发现VDSP4.5一个BUG:单步调
    VDSP5.0双核工程下sml3中的变
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    版权所有:AnalogCN安诺电子 湘ICP备06016315号