带ARM 核的双CPU 数字信号处理器_第1页
带ARM 核的双CPU 数字信号处理器_第2页
带ARM 核的双CPU 数字信号处理器_第3页
带ARM 核的双CPU 数字信号处理器_第4页
带ARM 核的双CPU 数字信号处理器_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 带ARM 核的双CPU 数字信号处理器北京理工大学徐英慧马忠梅摘要关键词主要介绍美国TI 公司最新推出的定点数字信号处理器TMS320VC5470的结构、功能及特性。对集成到该器件中的TMS320C54x 数字信号处理器和ARM7TDMIRISCMCU 及其两者的连接分别作了介绍。对选用TMS320VC5470作为数字信号处理器构建嵌入式系统有一定的参考价值。TMS320VC5470DSPMCUTMS320C54xARM7TDMI引言TM S320VC5470(简称5470是集成了基于T M S320C54x 体系结构的D SP 子系统和基于ARM7TDMI 核的RISC 微控制器子系统的双

2、CPU 定点数字信号处理器。它与以前的器件相比,提高了速度、降低了功耗,并且在很大程度上提高了编程灵活性,有利于对产品的软硬件升级,用于实现具有特殊功能的产品。通过合理安排软硬件资源,还可以节省投资,加速上市时间。1T M S 320V C 5470特性及功能框图 集成了1个TMS320C54x 体系结构的DSP 和1个ARM7TDMI RISC MCU 的双CPU 处理器; 带有72K ×16位集成SRAM 的16位低功耗DSP ,速度可高达100 MHz ; 用于DSP 和MCU 子系统的先进电源管理和低功耗模式; 集成的DSP 子系统外围,包括2个高速的全双工多通道缓冲串口Mc

3、BSPs ,使DSP 核可以与编解码器(CODEC 直接接口;具有6个独立通道的DMA 控制器;ARM 端接口(port int erface 为M CU 子系统和DSP 子系统的CPU 之间进行有效的信息交换提供了2K ×16位的共享存储器接口;外存储器接口EMIF (External M em or yI nt er Face;可以将外部总线周期扩展到14个机器周期的软件可编程等待状态发生器;1个用于控制功能的软件可编程的硬件定时器;可编程的锁相环PLL 时钟发生器。 带有16K 字节集成SRAM和仿真性能增强型的ARM7TDMI RISC 微控制器核,使运行速度可高达47.5

4、MHz ; 集成的MCU 子系统外围,包括通用异步收发器UART 、支持SIR 协议的UART/IrDA 接口、串行外围接口SPI 、36个通用I/O 引脚、 I 2C 接口、2个通用定时器、1个看门狗定时器、中断处理器、支持Flash/SRA M/SDRAM/ROM 的外部存储器接口、对MCU 外围灵活的时钟管理、可编程的锁相环时钟发生器。 基于片上扫描的仿真逻辑,DSP 和MCU 核的IEEE 标准1149.1+(JTAG 边界扫描逻辑; 支持DSP 和MCU 核的基于扫描的仿真。图1为TMS320VC5470器件的功能框图。此器件由DSP 和MCU 2个子系统构成。图1TMS320VC5

5、470功能框图外部DSP 存储器时钟Flash ,SDRAM I C 设备2小键盘通用I/O 收发器收发器 2D S P子系统功能介绍DSP子系统是基于TMS320C54x、片上存储器和外围的,并且与其它的C54x产品代码兼容。DSP子系统包括DSP CPU核、用于产生时钟的锁相环、与外部并行设备连接的接口、1个定时器、72K字的RAM、2个多通道缓冲串口、1个允许MCU访问DSP 子系统某部分存储器映射的接口以及1个JTAG接口。(1DSP核5470器件中DSP子系统的定点数字信号处理器(DSP采用的是先进的改进型哈佛体系结构,其中有1条程序存储器总线和3条数据存储器总线。此处理器提供具有高

6、度并行性的算术逻辑单元(ALU、专用硬件逻辑、片上存储器以及附加的片上外设。DSP操作的速度和灵活性的基础是其高度专用性的指令集。程序和数据空间的分离以及4条并行总线允许对程序的指令和数据进行同时访问,每条总线访问不同的存储器空间以实现不同的DSP操作,从而提供了高度的并行性。在1个单周期中可以执行2次读操作和1次写操作。并行存储的指令和特定应用的指令可以完全利用这种结构。另外,数据可以在数据和程序空间之间进行传输。这种并行性保证了包含算术、逻辑和位运算的强大的操作指令集都可以在1个机器周期内完成。DSP子系统还包含1个专门用于在线仿真的仿真端口,此端口直接被TI公司的扩展型开发系统(XDS硬

7、件仿真器访问并提供仿真。除此以外,5470的DSP子系统还包含控制机制,用于管理重复操作、函数调用和DSP中断。(2DSP存储器5470器件提供72K字的片上RAM如下:40K字的程序空间单边访问RAM(SARAM、16K字的数据空间双边访问RAM(DARAM和16K字的数据空间单边访问R A M(SARAM。每一个DARAM块可以在1个机器周期内执行2次DSP访问。DSP子系统在1个机器周期内还可以执行对分离的存储块的多个访问。在一次正常的复位之后,地址0x0000 0x7FFF之间的数据空间RA M块只被映射为数据存储空间,地址0x060000x0FFFF之间的程序空间RAM块只被映射为程

8、序空间。DSP存储器映射有2种模式:正常模式和API启动模式。复位、中断和陷阱向量均位于程序空间。当出现陷阱时,处理器将陷阱地址加载到程序计数器(PC,并从这个向量位置开始执行代码。器件复位后,复位、中断和陷阱向量映射到程序空间的地址FF80h。然而这些向量可以通过加载中断向量指针(IPTR重新使之映射到程序空间中的任何128字页面的开始地址。(3DSP寄存器5470器件有27个存储器映射的CPU寄存器(MMR,它们映射到地址为0H1FH之间的数据存储器空间。此器件还有1个与外围相关的存储器映射的寄存器组。5470器件的分体切换控制寄存器BSCR(Bank-Sw i t chi ngCont

9、r olRegi st er既控制着与5409类似的分体切换等待状态的发生,也控制着5470的一些特性。分体切换等待状态,指DSP子系统交叉访问程序或数据存储器空间内的存储器分体边界时,自动插入1个周期。当交叉访问数据空间和程序空间的边界时,也会自动插入1个分体切换等待状态。BSCR所控制的5470的特性包括对一些DSP子系统外存储器接口功能配置的控制,以及一些有关MCU可以用来访问DSP子系统某RAM部分接口的内容。BSCR寄存器还为DSP提供了一些对ARM编程接口的控制,这一机制使得MCU可以访问数字信号处理器的内部RAM部分。此外,还包括对API 模式(APIM ODE位、1个MCU中断

10、(HINT位、DSP存储器映射选择(ABMDIS位的控制。图2给出了BSCR寄存器的位结构,表1列出了各字段的功能。(4DSP外围DSP子系统提供了与5409类似的高速全双工串口2个多通道缓冲串口(McBSPs。它们允许 图2分体切换控制寄存器 与其它的54x设备、编解码器及系统中的其它设备进行直接接口。DSP子系统包括1个6通道的DMA控制器,用于执行独立的数据传输。在DMA控制器进行DMA 传输时有几点限制:第1,DMA控制器不能访问通常在程序空间的RAM,不能访问在MCU子系统中执行的RAM,不能访问在DSP数据空间与API接口连接的RAM;第2,DMA控制器不能在McBSP DRR 和

11、DXR寄存器之间进行数据传输,不能在McBSP D RR或DXR寄存器与外部资源之间进行数据传输;第3,DMA控制器不能对外部资源进行32位的访问。MCU和DSP之间通过片上共享的API存储器进行信息交换。A PI存储器是一个8K×16位字的DARAM(Dual-Access RAM块。API存储器还可以被DSP用作通用数据或程序DARAM。在这个电路中,只有DSP存储器有DARAM。API通过分体切换控制寄存器可以选择两种操作模式之一:共享访问模式SAM(Shared-Access Mode和主机模式HOM(Host-Only Mode。在SAM模式下,DSP 和MCU都可以访问A

12、PI存储器,来自MCU的异步主机访问在内部被重新同步。如果DSP和MCU试图在同一时间进行访问操作,那么MCU进行优先访问,而DSP则等待1个周期。当DSP处于IDLE1模式时,SAM可以运行。在HOM模式下,只有MCU 可以访问API存储器,对于DSP则禁止读写访问。当DSP从一个复位相退出时,缺省配置是SAM模式。当DSP处于正常操作模式或IDLE1模式时,通常选择SAM模式;当DSP处于IDLE2或IDLE3模式时,通常选择HOM模式。(5DSP电源管理DSP子系统具有3种省电模式,分别由IDLE1、IDLE2和IDLE3指令激活。在这3种模式下,C54x DSP 核进入睡眠状态,从而与

13、正常模式相比大大降低了功耗。这3种模式的区别在于对芯片内部模块的关闭程度及唤醒方式不同。在IDLE1模式下,关闭除DSP系统时钟以外的所有DSP活动。因为系统时钟要用于DSP子系统外围模块,所以DSP外围电路能够继续工作。这样,外围(例如串口和定时器则可以使DSP离开省电状态。在IDLE2模式下,同时关闭DSP子系统的外围及DSP核,但是DSP子系统的锁相环(PLL时钟放大器则仍将保持活动状态以便可以从IDLE2状态快速恢复。由于DSP子系统的外围在这种模式下被关闭,它们不能像IDLE1那样通过产生中断来唤醒C54x。然而,由于外围的完全关闭使功耗大大地降低了。为了终止IDLE2,可以通过复位

14、或激活中断0来实现。IDLE3模式与IDLE2模式类似,只不过它还将关闭锁相环(PLL电路。IDLE3用于获得最小可能的DSP功耗。另外,如果系统要求C54x运行在较低的速度下以节省功耗,那么IDLE3状态允许从外部重新配置DSP PLL。与IDLE2一样,通过复位或激活中断0可以终止IDLE3。3M C U子系统功能介绍5470 MCU子系统包括TI公司的增加了仿真特性的ARM7TDMI微处理器核以及一些外围,包括SPI和I2C接口、通用异步收发器、定时器、通用输入/输出接口和外部存储器接口。MCU子系统提供4K×32位的通用RAM和4K×32位的以太网包RAM。(1MC

15、U核MCU子系统使用TI公司的增加了仿真特性的ARM7TDMIE核,它是ARM公司ARM7TDMI核的一种衍生品。ARM7TDMI处理器核是ARM7 Thumb 家族中的一种,是一种低功耗的32位RISC处理器,并且结合了Th umb 16位的压缩指令集。这种微处理器可以通过执行32位或16位指令来处理32位、16位或8位数据。由于引入Thumb而获得的卓越的代码密度,可以降低对存储器大小的需求,并且可以从16位宽的存储器获得32位的系统性能,从而降低了系统的成本。MCU存储器空间包括内部RAM、内部外围、用于访问外存储器和外设的区域以及外部SDRAM。(2MCU存储器接口MCU存储器接口通过

16、1条32位宽的数据总线使MCU与内部及外部的存储器和外部设备连接。这条总线支持MCU访问8位、16位和32位的数据。所有的外围控制寄存器均为32位,因此只能使用32位的操作进行访问。MCU存储器接口允许端配置,以便保证所有的外部设备工作在同样的端模式下。MCU存储器接口还提供对外部访问的管理,所支持的外部设备包括ROM(Flash、SRAM和SDRAM。外部数据总线是一种32位的双向总线。MCU对内部外围和内部存储器的访问通常在0等待状态执行。SDRAM 刷新周期使任何MCU访问发生延迟。MCU对外部SDRAM存储器访问的定时由SDRA M接口寄存器控制。API接口用于MCU对DSP存储器中的

17、某一小部 分进行访问,它提供了一条通向DSP子系统中的API RAM的16位数据通路。所有的32位事务被分成2个16位的API事务。API接口支持向连续的访问操作之间可编程地插入等待状态,以保证MCU 子系统和DSP子系统之间的信号同步。(3MCU外围5470 MCU子系统的外围主要包括通用异步收发器(UART接口、串行外围接口(SPI、通用I/O 口、I2C接口、定时器和中断控制器。UART模块通过2个64位深的先进先出堆栈对处理器接收到的字符数据执行从串行到并行的转换,并对处理器传输的字符数据执行从并行到串行的转换。SPI是一个双向的3路接口,用于为从或向外部设备进行的数据传输提供一个3路

18、串行接口。这个串口完全由MCU存储器接口控制。它是基于一个循环移位寄存器的,允许2种传输模式,即并行输入、串行输出和串行输入、并行输出。5470提供36个通用I/O口(G PIO,它们可以通过内部寄存器配置成读或写模式。这些G PIO被分成2组: G PIO(19:0和KBG PIO(15:0。KBG PIO是键盘G PIO引脚,它们当中有些具有内部上拉电阻,但其进行的操作与G PIO(19:0引脚类似。主I2C接口模块为MCU子系统总线和I2C引脚之间提供了1个接口,它允许MCU控制与I2C引脚连接的外部设备。I2C接口实际上是一个并行到串行和串行到并行的转换器。从MCU接收的并行数据必须在

19、I2C总线上转换为适当的串行格式传输给外部设备,从I2C总线上接收的串行数据必须转换为适当的并行格式传输给MCU。5470 MCU子系统包括3个16位的定时器,它们可被配置为“”自动加载或“倒计数到0并停止”2种模式。当定时器计数到0时,向MCU 产生1个中断。定时器0可被配置为看门狗定时器或通用定时器,定时器1和定时器2为通用定时器。看门狗定时器在倒计数为0时复位MCU子系统,以避免用户程序被死循环阻塞而使程序失去控制。MCU子系统的中断控制器对MCU子系统的16个中断源(IRQ015进行优先权和屏蔽控制。它还可以将这些中断划分为MCU的2种中断输入:nIRQ (低优先级中断请求和nFIQ(

20、快速中断请求。它既可以从内部模块也可以从外部的芯片环境中接收中断。外部中断可以通过G PIO和/或KBG PIO引脚提供。(4MCU的省电模式M CU及其子系统外围可以通过设置CLKM_ REG和WAKEUP_REG 2个寄存器的适当位被关闭和唤醒。在MCU关闭之前,由软件来负责将ARM_ CLO CK设置为旁路或低频模式。由来自某外围的第1个中断将MCU唤醒。(5MCU外部时钟管理5470器件由外围时钟输入信号REFCLK提供时钟定时。5470 REFCLK输入不提供时钟振荡器,所以它必须由遇到VIH和VIL请求的方形波输入信号来驱动。DSP和MCU 子系统的时钟都是通过使用锁相环由REFC

21、LK衍生的。复位或加电之后,2个子系统中各自CLKMD寄存器的内容由各自锁相环上可编程内部端口的状态决定。对于MCU子系统,这些内部端口是硬连线的,所以缺省模式下的可编程性能是不可用的。对于DSP子系统,DSP PLL的可编程内部端口与寄存器DSP_REG的输出相连接,此寄存器由RISC处理器控制。这样在MCU子系统的控制下,DSP PLL的缺省值则允许为可编程的。图3为时钟管理模块框图。MCU子系统有3种运行模式:PLL(正常情况下模式、DIV模式和省电模式。在省电模式下,输入时钟频率被一个大数(5121023相除。当把MCU子系统时钟模块配置为省电运行模式时,如果使用一个小于512的值做除数,则将导致时钟停止。与DSP时钟相似,MCU子系统时钟也是由输入时钟(REFCLK的扩缩版本衍生的。RISC使用的PLL与DSP PLL一样,因此,RISC处理器使用与DSP 相同的最小输入时钟频率限制和扩缩值(scalin g val ue。(6初始化RESET是复位DSP和MCU子系统的主复位输入。RESET_OUT信号在MCU的控制下可用于复位 图3时钟管理模块 外部设备。当MCU子系统被复位时,MCU程序计数器从地址0x00000000开始执行;当DSP子系统被复位时,DSP程序计数器从地址0xFF8

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论