首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

DSP 学习资料 十一

DSP 学习资料 十一

最后简要介绍芯片的指令索引。 1.1 DSP芯片的基本结构 为了快速地实现数字信号处理运算,DSP芯片一般都采用特殊的软硬件结构。下面我们以TMS320系列为例介绍DSP芯片的基本结构。TMS320系列DSP芯片的基本结构包括:(1)哈佛结构;(2)流水线操作;(3)专用的硬件乘法器;(4)特殊的DSP指令;(5)快速的指令周期。这些特点使得TMs320 DSP芯片可以实现快速的DSP运算,并使大部分DSP操作在一个指令周期内完成,由于TMS320 DSP芯片是软件可编程器件,因此具有通用微处理器具有的方便灵活的特点。下面我们分别介绍这些特点如何在TMs320系列DSP芯片中应用并使得芯片的功能得到加强。 A.哈佛结构 哈佛结构是不同于传统的冯-诺曼(Von Neuman)结构的并行体系结构,其主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器。每个存储器独立编址,独立访问。与两个存储器相对应的是系统中设置了程序总线和数据总线两条总线,从而使数据的吞吐率提高了一倍。而冯一诺曼结构则是将指令、数据、地址存储在同一存储器中,统一编址、依靠指令计数器提供的地址来区分是指令、数据还是地址。取指令和取数据都访问同一存储器,数据吞吐率低。 在哈佛结构中,由于程序和数据存储器在两个分开的空间中,因此取指和执行能完全重叠运行。为了进一步提高运行速度和灵活性,TMS320 DSP芯片在基本哈佛结构的基础上作了改进,一是允许数据存放在程序存储器中,并被算术运算指令直接使用,增强了芯片的灵活性;二是指令存储在高速缓冲器(Cache)中,当执行此指令时,不需要再从存储器中读取指令,节约了一个指令周期的时间。 B.流水线 与哈佛结构相关,采用流水线以减少指令执行时间,第三代采用四级流水线。也就是说,处理器可以并行处理二到四条指令,每条指令处于流水线上的不同阶段。图1.1示出了一个三级流水线操作的例子。 图1.1三级流水线操作 在三级流水线操作中,取指、译码和执行操作可以独立地处埋,这可使指令执行能完全重叠。在每个指令周期内,三个不同的指令处于激活状态,每个指令处于不同的阶段。例如,在第N个指令取指时,前面一个那第N-1个指令正在译码,而第N-2个指令则正在执行。一般说来,流水线对用户是透明的。 C.专用的硬件乘法器 在一般形式的FIR滤波器中,乘法是DSP的重要组成部分。对每个滤波器抽头,迎须做一次乘法和一次加法。乘法速度越快,DSP处理器的性能就越高。在通用的微处理器中,乘法指令是由一系列加法来实现的,故需许多个指令周期来完成。相比而言,DSP芯片的特征就是有一个专用的硬件乘法器。在TMS320系列中,由于具有专用的硬件乘法器,乘法可在一个指令周期内完成。从TMS320实现F1R的每个抽头等法可以看出,滤波器每个抽头需要一条乘法指令MPY: LT ;装乘数到T寄存器 DMOV ;在存储据中移动数据以实现延迟 MPY ;相乘 APAC ;将乘法结果加到ACC中 其它三条指令用来将乘数装人到乘法器电路(LT)、移动数据(DMOV)以及将乘法结果(存在乘积寄存器P中)加到ACC 中(APAC)。因此,若采用256铀头的F1R滤波器,这四条指令必须重复执行256次,且256次乘法必须在一个抽样间隔内完成。在典型的通用微处理器中,每个抽头需要30--40个指令周期,而TMS32010 只需4条指令。如果采用特殊的DSP指令,可进一步降低FIR抽头的计算时间。 D.特殊的DSP指令 DSP芯片的另一个特征是采用特殊的指令。C.节中介绍的DMOV就是一个特殊的 DSP指令,它完成数据移位功能。在数字信号处理中,延迟操作非常重要,这个延迟就是由DMOV来实现。TMS320l0中的另一个特殊指令是LTD,它在一个指令周期内完成LT、DMOV 和APAC三条指令,而TMS320C25 的RPT和MACD和M指令,可以进一步将每个抽头的运算时间从2条降为1条: BPRK 255 ;重复执行下条指令256次 MACD ; LT,DMOV,MPY,APAC E.快速的指令周期 哈佛结构、流水线操作、专用的硬件乘法器、特殊的DSP指令再加上集成电路的优化设计可使DSP芯片的指令周期在200nS以下。 TMS320系列处埋器的指令周期已经从第一代的200nS降低至现在的40nS以下。快速的指令周期使得DSP芯片能够实时实现许多DSP应用。 1. 2定点DSP芯片TMS320C5X 自1982年TI推出第一个定点DSP芯片TMS32010以来,TI的定点DSP芯片已经经历了TMS320C1X/C2x/C5X 三代产品。此外还推出了适合于无线通信应用的TMS320C54x和高性能低成本的TMS320C2XX。下面我们分别来介绍TMS320C5X/2XX/C54X芯片的主要特征。 A.基本特点 TMS320C5XC处理器, 它的核心中央处理器(CPU)以TMS320C25的核心CPU为基础,增强型结构大幅度地提高了整体性能。TMS320C5x工作速度是TMS320C25的两倍以上,对于TMS320C1x和TMS320C2X具有源代码向上兼容特性。这种兼容性保留了过去开发的软件,便于系统升级到更高性能的DSP系统, TMS320C5x主要有TMS320C50/C51/C52/C53等几种,它们的主要区别是片内RAM、ROM等资源的多少,如TMS320C50内部具有10KRAM和2KROM,其中2KROM已经固化了引导程序。TMS320C51内部具有2KRAM和8K ROM。TMs320C52内部具有1KRAM和4KROM,减少了一个串行口。TMS320C53内部具有4KRAM和16KROM ,芯片的其它性能则是完全相同的。下面我们以TMS320C50为例介绍TMS320C5x DSP芯片。 B.TMS320C50的基本特征 TMS320C50的主要特点包括: ,25/35/50nS的指令周期(20—40MIPS); .224K x16位最大可寻址外部存储空间(64K程序、64K数据、64K IO、32K全局); .算术逻辑单元(ALU),32位累加器(ACC)以及32位加法器的缓冲器(ACCB); •并行逻揖单元(PLU); .结果具有32位的16 x 16位并行乘法器; •单周期乘/累加指令; .具有一个专用算术单元的8个辅助寄存器,可用于间接寻址; •8级硬件堆栈;。 •0--16位数据左移和右移; .两个间接寻址的循环缓冲器,用于循环寻址; •程序代码的单指令重复和程序块重复; .全双工同步串行口,用于完成TMS320C5x与其它串行器件之间的直接通信; •时分多址访问(TDM)串行口; •内部定时器,可用软件控制; .64K并行I/O 口,其中16个有存储器映象; •可软件编程的等待状态发生器;j •扩展保持操作,用于并发外部DMA; .四级流水线操作,用于延迟跳转、调用、返回指令; .比特反转寻址方式,用于FFT运算; .JTAG扫描仿真接口(IEEE标准,Pll49.1)。 1.核心CPU TMS320C5x CPU的增强功能在提高性能和通用性的同时,保持了对TMS320Clx和TMS320C2x源代码的兼容性。硬件的改进包括:一个32位累加器缓冲器,附加定标能力,利用附加硬件功能的新指令。新的控制功能包括:独立的并行罗辑单元(PLU)和一组文本交换寄存器。数据管理方面的改进包括:采用新的块极移指令和存储器映象寄存器指令。 TMS320C50有28个存储器映象寄存器和16个存储器映象的I/O口。 2.片内ROM TMS320C50拥有2K X 16位ROM , 固化了引导程序.该存储器把程序从外部ROM/EPROM,串行口或并行I/O口引导至运行速度较快的SRAM中.这块引导ROM 可通过PMST状态奇存器中的MP/MC位从程序存储空间去除。如果该ROM未选,TMS320C50 由片外存储器启动执行。 3.片内数据RAM TMS320C50具有1O56字的片内RAM,这块RAM可在每个机器周期内访问两次(双寻址 RAM),只要两次访问不是“写”操作。这块存储空间主要用于存储数据,但是如果需要也可用于存储程序和数据。其配置有两种方式:所有的1056字都作为数据存储区,或者将其中的544字作为数据存储器,512字作为程序存储区。可通过状态寄存器ST1中的CNF位选择设置. 4.片内程序/数据RAM TMs320C50还具有9K字的片内RAM。这一存储区可以由软件设置映射到程序或数据存 储空间。程序从片外存储器引导后,可装人到该存储区全速运行。 5.片内存储器安全。 TMS320C50可以通过可屏蔽选择来保护片内存储器的内容。当相关比特置位时,外部无法访问片内存储空间。 6.有地址映射的软件等待状态发生器 软件等待状态逻辑不需要任何外部硬件就可以实现TMS320C50与速度较慢的片外存储器和I/O设备接口。该电路系统拥有16个等待状态发生器,其中可由用户编程操作的有0,1,2,3和7状态。 7.并行I/O口 TMS320C50共有64K I/O 口,其中的16个可映射在数据存储空间。这些口可由IN和OUT指令寻址。具有存储器映象的I/O口可按存储器的读写方式访问。I/O口的访问由IS\线选通。增加简单的片外地址译码电路,就可实现TMS320C50的I/O口与外部I/O设备的简单连接。 8.串行I/O口 TMS320C50有两个高速串行口。串行口最快可按l/4机器周期(CLKOUT1)操作。一个是同步全双工串行口,发送和接收都有缓冲,分别由可屏蔽外部中断信号控制。数据可按照8或16位方式传输。另一个串行口为全双工串口,可设置为同步方式也可以设置为时分多址(TDM)方式。TDM串行口一般用于多处埋机系统。。 9.16位硬件定时器 16位硬件定时器可由软件进行控制,通过设置相应的状态位,定时器可工作在停止、重启动、复位或不工作等状态。 10.用户可屏蔽中断 TMS320C50有四个外部中断线。片内的中断锁存电路可实现异步中断操作。此外,还有5个内部中断:一个定时器中断和4个串行口中断。 ll.JTAG扫描逻辑 JTAG扫描逻辑电路用于仿真和测试,采用JTAG可实现在线仿真。 1.3 TMs320C50的结构 TMS320C50采用了与TMS320C25类似的哈佛型总线结构,两个独立的数据总线和程序总线, 32位的ALU和累加器以实现2的补码运算. ALU使一个通用的算术逻辑单元,它所使用的运算数据(16位)来自数据RAM或来自立即数指令,也可以是乘积寄存器中32位的乘积结果。除此之外,ALU还可以执行位操作。累加器保存ALU的输出,也为ALU提供一个输入。字长为32位的累加器分为高字节和低字节。指令提供对低字节和高字节的单独存储。32位的累加器缓冲器用于临时快速地存储累加器的内容。 除了ALU之外,并行逻辑单元(PLU)可以在不影响累加器内容的情况下,对数据进行逻辑操作。PLU提供了高速控制器需要的位处理能力,并简化了控制和状态寄存器需要的置位、清零和测试操作。 乘法器以单指令周期完成16 x l6位的乘法,结果为32位。乘法器由三部分组成:分别是乘法器阵列、PREG(乘积寄存器)、TREG0(临时寄存器)。16位的TREG0存储乘教,PREG保存32位的乘积结果。乘法器中的数值来自数据存储器,当使用MAC/MACD/MADS/MADD指令时来自程序存储器,或者来自乘立即数指令(MPY#)。片内快速乘法器对执行诸如卷积、相关和滤波等基本的DSP操作十分有效。 TMs320C50的定标移位器有一个16位的输入来自数据总线,32位的输出连接到ALU。定标移位器依照指令的编程使输入数据产生O到16位的左移。移位量取决于指令或移位计数寄存器(TREGl)中的定义值。输出的最低有效位(LSB)补零,最高有效位补0或符号扩展(取决于状态寄存器STl的符号扩展模式位SXM),附加的移位能力使处埋器能执行数值定标、二进制位提取、符号扩展运算和溢出防止等功能。。 8级硬件堆栈用于在中断及子程序调用时保存程序计数器的内容。,中断发生时,重要寄存器(ACC、ACCB`ARCR、INDX、PMST、PREG、ST0,STl和TREG)压人堆栈,中断返回时弹出,实现了无开销的中断文本切换。。” 1.4 TMS320C2XX TMS320C2XX是继TMS320C2X和TMS320C5X之后出现的的一种低价格、高性能定点DSP 芯片。TMs320C2XX系列DSP芯片具有如下特点:。 (1)处理能力强。指令周期最短为25nS,运算能力达40MIPS。 (2)片内具有效大的闪烁存储器。TMS320C2xx是最早使用闪烁存储器的DSP芯片。闪烁存储器具有比ROM灵活、比RAM便宜的特点。TMS320F206和TMS320F2U7片内具有32K 字的闪烁存储器和4.5K字的RAM。利用闪烁存储器存储程序,不仅减小了体积,系统升级也比较方便。• (3)功耗低。TMS320C2XX系列DSP芯片在5V工作时每个MIPS消耗1.9mA,在3V工作时每个MIPS消耗1.1mA。使用DSP的省电形式可进一步降低功耗。 (4)资源配置灵活。现有六种具有不同外设和存储器配置的芯片。 1.5 TMS320C54X MS320C54x是为实现低功耗、高性能而专门设计的定点DSP芯片,其主要应用是无线等通信系统。诙芯片的内部结构与TMS320C5X不同,因而指令系统与TMS320C5x和TMS320C2x等是互不兼容的。
返回列表