资源描述
的的范德萨的地方爱的规格爱你啊好文章第3章C54x DSP系统硬件结构DSP 芯片是一种特殊结构的微处理器,为了快速地实现数字信号处理运算, 采用了流水线指令执行结构和相应的并行处理结构,可在一个周期内对数据进行高 速的算术运算和逻辑运算。本章主要介绍C54x DSP芯片的硬件结构,重点对芯片 的引脚功能、CPU结构、内部存储器、片内外设电路、系统控制以及内、外部总 线进行讨论。3.1 C54x DSP的基本架构TMS320 C54x DSP (简称C54x )是TI公司为实现低功耗、高速实时信号处 理而专门设计的16位定点数字信号处理器。其内核包含在第1章已经讨论过的哈 佛结构和高级算术特点中。另外,C54x还具有多总线结构以及强大的片上外设, 具有高度的操作灵活性和运行速度,适应远程通信等实时嵌入式应用的需要,现已 广泛地应用于无线通信系统中。3.1.1 C54x DSP的基本结构图块DSP芯片上集成CPU、片内存储器、外围电路、总线以及外部总线接 。图3-1所示为TMS320C54X基本结构框图,它包含了主要模块和总线结构。 图3-2所示为TMS320C54X功能结构图。与传统微处理器相比较,DSP最显著的 结构特点是具有高效存取数据、单周期乘法器和零开销硬件循环等。3.1.2 C54x DSP的主要特征1. 具有快速处理性能的CPU部分CPU是DSP芯片中的核心部分,CPU内的硬件构成决定其指令系统的性能。 采用了流水线指令执行结构和相应的并行处理结构,可在个周期内对数据进行高 速的算术运算和逻辑运算,TMS320C54X的CPU包括以下几部分:(1先进的多总线结构,包括1条程序总线、3条数据总线、4条地址总线和外 设总线;(2 40立算术逻辑单元(ALU,包括1个40位的桶形移位寄存器和2个独立的 40位累加器;(3 17 W的并行乘法器,并与1个40位的专用加法器配合,用于非流水线的 单周期乘/累加操作;DSP芯片技术及工程实例第3章C54x DSP系统硬件结构图 3-1 TMS320C54x 基本结构框图图3-2 TMS320C54x 功能结构图(4比较、选择和存储单元,用于维特比运算中的加/比较选择;(5指数编码器,可以在单周期内计算40位累加器的指数值;(6 2个地址生成器,包括8个辅助寄存器和2个辅助寄存器算术单元;(7双内核结构(只适用于C5420 .2. 具有哈佛结构的存储器系统(1具有独立的程序存储器和数据存储器,可同时访问,使许多处理运算比传 统的冯诺依曼结构有效得多。(2具有192 K字可寻址存储空间,包括片内、外64 K字程序存储空间,片 内、外64 K字数字存储空间和片外64 K字的I/O空间。其中一些型号DSP的程 序存储器空间可扩展至8 M字,例如TMS320C548、TMS320C549、 TMS320C5402 、 TMS320C5410 和 TMS320C5420.(3提供一定容量的片内存储器,片内存储器配置因型而异,包括片内ROM和 RAM ,通过内部多总线,CPU可以同时、快速地访问它们,以实现并行处理。但 对于外部存储器,DSP提供了外部接,它与内部多总线结构复接,但外部只有 组I/O接线,所以不能在单周期内并行实现读写操作。3. 片内外设和专用电路除了 DSP内核外,DSP芯片上还需配置一些外设专用器件。这些器件可以与 DSP内核平行操作,只占用很小的内核指令周期,依靠这些器件无缝出入DSP处 理内核的能力,可大大提高DSP处理数据的能力。TMS320C54X的片内外设和专 用电路采用模块化的结构设计,常见的外设包括以下几种。(1可编程软件等待状态发生器。(2可编程分区转换逻辑电路。(3可采用内部振荡器或外部时钟源的片内锁相环(PLL )时钟发生器。(4外部总线接口可以禁止或允许外部数据总线、地址总线和控制线的输出。(5数据总线具有总线保持功能。(6可编程定时器。(7 8立并行主机接D(HPI,有些产品还包括扩展的8位并行主机接口 (HPI8 )和16位并行主机接口(HPI16 .(8片内的串行口按不同的型号分为全双工串口(支持8位和16位数据传 送)、时分多路(TDM )串和缓冲(BSP )串口。C54x系列定点DSP芯片共享同样的CPU内核和总线结构,但每一种器件片 内存储器的配置和片内外设不尽相同。表3-1列出了 TMS320C54X系列 DSP基本 配置汇总。表3-1 TMS320C54X系列 DSP基本配置汇总表型号电压/Vcorel/(片内 存储器RAM/KBROM/KBDAT/PRO/B 外设 McBSPTimerHPIDMAMIPS 封装 C54011.83.384128K/2M228 位 6 通道 50144LQFP/ 144BGAC54021.6/1.83.3328/32128K/2M/128K/16M2/31/28 位 6 通道 100/160144LQFP/144BGAC54041.53.332128128K/16M328/16 位 6 通道 120144LQFP/144BGA续表型号电压/Vcorel/(片内存储器RAM/KBROM/KBDAT/PRO/B 外 设 McBSPTimerHPIDMAMIPS 封 装C54071.63.380256128K/16M328/16位 6 通道 120144LQFP/144BGAC54091.5 1.83.36432128K/16M318/16位 6 通道 80160144LQFP/144BGAC54101.5 2.53.312832128K/16M318/16位 6 通道 100160144LQFP/144BGAC54161.5/1.63.325632128K/16M318/16位 6 通道 120/160144LQFP/144BGAC54201.83.32000128K/16M6216 位 12 通道 200144LQFP/144BGA4. 指令系统在TMS320C54x的指令系统中,具有单指令重复和块指令重复操作指令,32 位长操作数指令,同时读入2个或3个操作数的算术指令。支持存储器块传送指 令,能并行存储和并行加载的算术指令,支持条件存储指令及中断快速返回指令。5. 执行速度对TMS320C54X而言,其执行单周期定点指令时间为25/20/15/12.5/10 (对 应每秒指令数分别为40/50/66/80/100 MIPS .6. 电源和功耗TMS320C54x DSP 芯片可采用 5 V、3.3 V、3 V 和 1.5 V、1.8 V或 2.5 V的 超低电压供电。而且其功耗可采用下降指令IDLE1、IDLE2和IDLE3来控制,以 便使DSP工作在节电模式下可控制关断CLKOUT 信号。7. 芯片仿真功能具有符合IEEE 1149.1标准的片内仿真J TAG接,其主要功能是用于与主机 相连接,实现芯片的仿真与测试。3.2总线结构按照结构来区分,又可将总线分成内部总线和外部总线,本节只介绍内部总 线,外部总线的结构和功能将在3.8节介绍。为了提高CPU高度的并行性,达到最大的处理能力,例如在单周期内完成算 术、逻辑和位操作等运算,TMS320C54x DSP片内采用多总线结构,用8条总 线,可同时对程序指令和数据进行双访问,这8条16位的总线包括4条程序/数据 总线和4条地址总线。另外, CPU 访问片内外设是通过在片双向总线来实现的,如图3-2所示的功能结构图。正是这种改进型哈佛总线结构,形成了支持高速指令 执行的硬件基础。(1程序总线(PB :传送来自程序存储器的指令代码和立即数。(2 3组数据总线(CB、DB和EB:负责将片内的各种元器件相互连接,如CPU 、数据地址产生逻辑、程序地址产生逻辑、片内外设和数据存储器等。其 中,CB和DB总线传送从存储器读出的数据,即读”操作使用的数据总线;EB总 线传送向存储器写入的数据,即“写”操作使用的数据总线。(3地址总线(PAB、CAB、DAB、EAB :负责传送执行指令所需的地址。(4在片双向总线: TMS320C54x 用一组双向的片内总线访问片内外设,这组 总线轮流使用DB和EB与CPU连接。用这组总线进行读/写操作需要两个或更多 的周期,具体所需周期数取决于片内外设的结构。TMS320C54X能利用两个辅助寄存器算术单元(ARAUO和ARAU1在同一个周 期内生成两个数据存储器地址,可实现片内RAM的双访问功能。表3-2列出了各种不同类型的总线访问形式。从表中看到,C54x器件在任何 给定的机器周期内可执行4个并行存储器操作: 1次取指、读取2个操作数和写1 个操作数。或通过CB、DB、PB总线同时取操作数,可在一个机器周期内完成从 数据存储器读双数据同时从程序存储器读一个常数的3个操作数读取,而片上外设 的读、写则是通过DB和EB总线轮流与CPU连接完成,所以使用这组总线进行 读/写操作需要两个或更多的周期。表3-2 C54x DSP读/写操作占用总线情况读/写 方式地址总线PABCABDABEAB程序总线PB数据总线CBDBEB 程序读丿程序写丿单数据读丿双数据读丿丿丿血长 数据读丿(hw丿(lw丿(hwv单数据写丿数据读/数据写丿丿双数据读係数读 WWW 外设读丿外设写丿丿3存储器结构TMS320C54x DSP存储器采用改进型哈佛结构。与冯诺依曼结构的存储器相 比较,哈佛结构的程序/数据总线和空间是分开的,冯诺依曼结构的程序/数据总线 和空间是合二为一的,而改进型哈佛结构的部分程序/数据空间可交叉,因此提供了高度的并行性。3.3.1 DSP存储器空间的划分C54x DSP的存储空间共192 K字,由3个独立可选的存储空间组成,包括 64K字的程序存储空间、64 K字的数据存储空间和64 K字的1/O空间。其中有些 型号芯片的程序空间还可以进一步扩展。存储器分为片内存储器和片外存储器。片内存储器有3种类型:双访问RAM (DARAM 、单访问RAM(SARAM 和ROM. RAM 总是安排到数据存储空间,但也 可以配置在程序存储空间。C54x片上还有26个映射到数据存储空间的CPU寄存 器和外设寄存器。ROM 般映射到程序存储空间,也可以部分地映射到数据存储 空间。在TMS320C54x DSP中,片外存储器主要包括程序存储器、数据存储器、 I/O空间。与片外存储器相比,片内存储器不需插入等待状态,成本低,功耗低。 但是,片外存储器具有寻址较大存储空间的能力,而片内存储器寻址存储空间较 小。C54x通过设置处理器工作方式状态寄存器(PMST )中的3个状态位 MP/MC、OVLY和DROM (详见3.4.节),可以很方便地使能”和禁止”呈序 与数据空间中的片内存储器。(1 MP/MC 位MP/MC位决定是否使用片内ROM.若MP/MC=0,称微计算机模式,片内ROM使能并能够访问。若MP/MC=1,称微处理器模式,表示片内ROM无法访问。(2 OVLY 位OVLY 位决定是否让数据存储器映射到程序存储器空间。若OVLY=O,片内RAM只映射到数据存储空间。若OVLY=1,片内RAM同时映射到程序和数据存储空间。(3 DROM 位DROM 位决定是否让部分程序存储器映射到数据存储器空间。若DROM=0 ,片内ROM不映射到数据存储空间。若DROM=1 ,部分片内ROM映射到数据存储空间。DROM 位的用法与MP/MC位的用法无关。不同的C54x的数据和程序存储区 分配并不完全相同。图3-3(a所示为TMS320C549存储器空间分配图,图3-3(b所 示为TMS320C5416存储器空间分配图,从图中可以看到在任何一个存储空间内, RAM、ROM都可以驻留在片内或者片外,但需要通过对3个状态位MP/MC、 OVLY和DROM 的设置来配置。图3-3存储器空间分配图图3-3(续)所有C54x DSP器件提供一定数量的片内ROM和RAM, DSP有两种类型的 RAM,包括双寻址RAM (DARAM )和单寻址RAM (SARAM 。表3-3列出了不 同C54x系列 DSP片内各种存储器的配置。1.片内ROM片内ROM是程序存储器的一部分,对某些DSP器件来说,也可是数据存储 空间的一部分,如C5402。当MP/MC设置为0时,可以映射到程序存储空间的 ROM为4 KB ;当DROM 设置为1时,可以映射到数据存储器空间的ROM为4KB。不同芯片的片内可用ROM容量是不一样的,见表3-3。对于ROM少的DSP 器件(2 KB , ROM中含有自举加载器,在程序启动时,将用户的代码从慢的外部ROM 、串,或J TAG加载到内部存储器,这样可以加 快程序的运行速度。对于具有较大ROM的器件,部分ROM可以映射到数据和程 序空间,用户提供的代码或数据以目标文件格式写入ROM, TI公司可以将程序掩 膜到该ROM中。2片内双寻址RAM(DARAM所谓DARAM,就是在一个指令周期内,CPU可对其进行读和写两次存取操作,DARAM由块组成,CPU能在每个周期内对同一块DARAM进行读和写。DARAM 总是映射在数据存储器空间,用于存储数据,当OVLY设置为1时,它 也可同时映射在程序存储器空间,用于存储程序代码。表3-3常见的C54x系列 DSP片内存储器配置KB存储器类型 C541C542C543C545C546C548C549C5402C5416C5420ROM282248482164160 程序 ROM202232322164160 程序/数据 ROM800161600400DARAM510106688166432SARAM0000024240641603.片内单寻址RAM(SARAM在一个指令周期内只能进行一次读或写操作。SARAM 也由块组成,与DARAM样,SARAM 总是映射在数据存储器空间,用于存储数据,当OVLY 设置为1时,也可同时映射在程序存储器空间,用于存储程序代码。4.存储器映射寄存器CPU 内部专用寄存器和片上外设寄存器总是映射在数据存储器的0页上,对 它们的访问很简单,存储器映射访问提供了种方便途径,用于寄存器的存储和恢 复,也用于累加器与其他寄存器之间的信息传递。3.3.2程序存储器程序存储器空间存放要执行的指令和执行中所用的系数表。C54x DSP可以寻 址64 K字的程序存储空间。但也有一些型号的DSP可以扩展到8 M字,如C548、C549、C5410、C5402和C5420。下面分别讲述程序存储器的组织、片内 ROM 的安排、扩展程序存储器等内容。1.程序存储器空间的配置程序存储器空间由片内和片外程序存储器组成。如前所述,片内程序空间的组 织主要通过设置MP/MC、OVLY位来实现。表3-4列出了各种C54x芯片片内程 序存储器配置情况。MP/MC和OVLY位决定了哪个片内存储器在程序空间中可 用。例如,当OVLY设置为1时,DARAM 或SARAM才能被配置到程序存储器空间;而只有当MP/MC设置为0时,片内ROM才可用。MP/MC是DSP的一个 外部引脚,设置MP/MC状态有两种方法,一种是直接给MP/MC引脚低电平或高 电平,当DSP器件复位时,MP/MC引脚的逻辑状态被传送到PMST寄存器的 MP/MC位。另一种方法是用户通过软件来设置或清除PMST寄存器的MP/MC 位,以便禁止或使能片内ROM。如果片内存储器配置到程序存储器中,则芯片在 访问程序存储器时会自动访问这些存储单元。当PAGEN产生了一个不在片内存储 器的地址时,会自动使用一个外部总线操作。C54x器件程序存储器空间配置图如 图3-3(a和图3-3(b所示。表3-4 TSM320C54x芯片片内程序存储器配置KB型号 ROMDARAM (OVLY=1 SARAM (OVLY=1 TMS320C541285-TMS320C542210- TMS320C543210-TMS320C545486-TMS320C546486- TMS320C5482824TMS320C54916824TMS320C5402416- TMS320C541616856TMS320C5420-32168 2.片内 ROM 的组织和内容为了增强处理器的性能,将片内ROM再细分为若干块,这样就可以在片内 ROM的一个块内取指的同时又在别的块中读数据。图3-4所示为各种C54x器件的 片内ROM分块图。根据C54x器件的不同,ROM可以组织为2 KB、4 KB或8 KB 的块。图3-4 C54x器件片内ROM分块图(1对于2K-ROM器件,其ROM块为2 K字。
展开阅读全文