第二章 基本结构(内部资源)_第1页
第二章 基本结构(内部资源)_第2页
第二章 基本结构(内部资源)_第3页
第二章 基本结构(内部资源)_第4页
第二章 基本结构(内部资源)_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

第二章TMS320x28x系列

DSP基本结构(内部资源)§2.1总线结构§2.2CPU中央处理单元§2.3存储器及其扩展接口§2.4时钟源模块§2.5系统复位§2.6低功耗模式§2.7程序控制DSP内部功能模块CPUFlash:128K字,可映射到程序空间或数据空间,受代码安全模块CSM的保护SARAM(单访问随机读/写存储器)M0和M1:每块大小为1K*16位L0和L1:每块大小为4K*16位H0:大小为8K*16位片内OTP:一次性可编程ROM,2K*16位;可映射到程序空间或数据空间,受代码安全模块CSM的保护BootROM:引导ROM,实现DSP的引导装载功能代码安全模块CSM、中断向量、外设帧PF外部扩展接口§2.1总线结构DSP总线构成内部地址三总线PAB:22位,程序地址总线,用来传送来自程序空间的读写地址DRAB:32位,数据读地址总线,用来传送来自数据空间的读地址DWAB:32位,数据写地址总线,用来传送来自数据空间的写地址内部数据三总线PRDB:32位,程序读数据总线,在读取程序空间时用来传送指令或数据DRDB:32位,数据读数据总线,在读取数据空间时用来传送数据DWDB:32位,数据写数据总线,在对数据空间和程序空间写数据时用来传送数据存取类型地址总线数据总线从程序空间读PABPRDB向程序空间写PABDWDB从数据空间读DRABDRDB向数据空间写DWABDWDB数据空间和程序空间的总线使用:任意时刻同时发生的两种操作不能使用同一条总线如:从程序空间读操作不能与向程序空间写操作同时发生,因为这两个操作都需要PAB总线,而从数据空间读操作与向数据空间写操作可以同时进行流水线操作由于DSP的多总线结构,DSP芯片的程序执行过程中可以同时激活多条指令,并行处理,此即流水线操作。如下图所示。§2.2CPU中央处理单元CPU是DSP控制器的核心模块。‘28X系列DSP器件的CPU主要包括:算术逻辑运算单元乘法器桶形移位器CPU寄存器状态寄存器‘28X系列DSP器件的CPU还包括一个辅助寄存器算术单元ARAU乘积移位方式PM乘积移位方式000左移1位,低位填0001不移位010右移1位,低位丢失,符号扩展011右移2位,低位丢失,符号扩展100右移3位,低位丢失,符号扩展101右移4位,低位丢失,符号扩展110右移5位,低位丢失,符号扩展111右移6位,低位丢失,符号扩展由ST0的9~7位决定:辅助寄存器指针:ARP辅助寄存器选择000选择XAR0…………111选择XAR7间接寻址时,指定当前的辅助寄存器,由ST1的15~13位决定:CPU寄存器寄存器名称大小描述寄存器名称大小描述ACC32bit累加器PH16bitP的高位AH16bit累加器高位PL16bitP的低位AL16bit累加器低位PC22bit程序计数器XAR0~XAR732bit辅助寄存器0~7RPC22bit返回程序计数器AR0~AR716bitXAR0~7的低位SP16bit堆栈指针DP16bit数据页面指针ST016bit状态寄存器0IFR16bit中断标志寄存器ST116bit状态寄存器1IER16bit中断使能寄存器XT32bit被乘数寄存器DBGIER16bit调试中断使能寄存器T16bitXT的高位P32bit乘积寄存器TL16bitXT的低位状态寄存器ST0和ST1功能:包含各种标志位和控制位操作:可被保存至数据存储器或从数据存储器中加载ST0:bit0:SXM,符号扩展模式位bit1:OVM,ACC溢出模式位,OVM=1时,调整溢出结果bit2:TC,测试/控制标志位bit3:C,进位标志位bit4:Z,零标志位,0:ACC检测为非0;1:ACC检测为0bit5:N,负标志位,0:ACC检测为非负数;1:ACC检测为负数bit6:V,溢出标志位,0:标志复位;1:检测到溢出bit9~7:PM,乘积移位方式bit15~10:OVC/OVCU,溢出计数器OVC/OVCUPMVNZC1510976543210TCOVMSXMST1:bit0:INTM,中断全局屏蔽位bit1:DBGM,调试使能屏蔽位bit2:PAGE0,PAGE0寻址模式配置位bit3:VMAP,向量映射位bit4:SPA,堆栈指针对齐位bit5:LOOP,循环指令状态位bit6:EALLOW,仿真寻址使能位bit7:IDLESTAT,IDLE状态标志位bit8:AMODE,地址模式位bit9:OBJMODE,目标兼容模式位bit10:

保留bit11:M0M1MAP,M0和M1映射模式位bit12:XF,XF状态位,0:XF输出低电平;1:XF输出高电平bit15-13:ARP,辅助寄存器指针ARPXFM0M1MAP保留OBJMODEAMODE1211109876543210IDLESTATEALLOWLOOPSPAVMAPPAGE0DBGMINTM§2.3存储器及其扩展接口 TMS320F28X

DSP处理器有两个独立的存储空间,片内存储器和外部存储器,存储器的各个区块都统一映射到程序空间和数据空间,划分为如下几个部分: 程序/数据存储器:

片内单访问随机存储器SARAM、只读存储器ROM和Flash存储器。它们被映射到程序空间或数据空间,用以存放执行代码或存储数据变量CPU的中断向量:

在程序地址中保留了64个地址作为CPU的32个中断向量。通过状态寄存器ST1的VMAP位将CPU向量映射到程序空间的底部或顶部保留区:数据区的某些地址被保留作为CPU的仿真存储器使用片内存储器资源不够时,可以通过外部接口XINTF来外扩存储器TMS320F2812可用的片内存储器空间分为低64K和高64K两部分,其中低64K*16位的存储器可等价于C24x/C240x系列DSP的数据存取空间,高64K*16位存储器可等价于C24x/C240x系列DSP的程序空间Flash:128K字,可映射到程序空间或数据空间,受代码安全模块CSM的保护SARAM(单访问随机读/写存储器)M0和M1:每块大小为1K*16位L0和L1:每块大小为4K*16位H0:大小为8K*16位片内OTP:一次性可编程ROM,2K*16位;可映射到程序空间或数据空间,受代码安全模块CSM的保护BootROM:引导ROM,实现DSP的引导装载功能代码安全模块CSM、中断向量、外设帧PF

TMS320F2812的外扩存储器分为5个固定的存储器映射区域:XINTF区域0、1、2、6、7,每个XINTF区域都有一个片选信号,用于访问某一个特定的区域XINTF接口信号外扩存储器时,DSP与外部存储器需要对一些引脚进行电气连接,如右图外部扩展接口XINTF空间访问XINTF寄存器:寄存器名称描述XTIMING0XINTF时序寄存器,区0XTIMING1XINTF时序寄存器,区1XTIMING2XINTF时序寄存器,区2XTIMING6XINTF时序寄存器,区6XTIMING7XINTF时序寄存器,区7XINTCNF2XINTF配置寄存器XBANKXINTF控制寄存器对外部接口的配置主要通过设置寄存器实现

时序寄存器用于设置读写时序参数;XINTF配置寄存器完成选择时钟,设置输入引脚状态以及写缓冲器深度等;控制寄存器XBANK用于设置可增加周期的特定区,以及设置增加的周期。§2.4时钟源模块相关引脚OSCBYP:振荡器的旁路引脚XTAL1:外部时钟源输入脚,外接晶振引脚1XTAL2:外接晶振引脚2XTAL1/CLKINXTAL2OSCBYP+5VXTAL1/CLKINXTAL2OSCBYPGND外部时钟源A、采用内部振荡器允许使用两种方式为CPU内核提供时钟:B、采用外部时钟源时钟源模块的四种输出CPUCLK:CPU时钟/机器时钟,供CPU及总线使用的时钟节拍,其周期即为机器周期。其来源可能为外部时钟、外部时钟的两分频或内部PLL电路的倍频。SYSCLK:系统时钟,专为片内外设服务。来自于CPU时钟的2分频或4分频。ACLK:模拟器时钟,专门为片内模数转换模块服务。其正常频率为1±10%MHz,不受外部时钟频率的影响。WDCLK:看门狗时钟,专为看门狗和实时时钟模块服务。正常频率为16384Hz,占空比25%,不受外部时钟影响。时钟控制寄存器:对时钟源模块进行设置§2.5系统复位复位信号电源复位:PORESET引脚出现一个正跳变。复位引脚RS软件复位访问非法地址的复位看门狗定时器溢出欠电压复位≥1WDRSTRSSWRSTILLADRPinRStodeviceResetsignalPORST/VCCAOR复位后CPU的寄存器按下表所示进行复位在DBGIER寄存器中可屏蔽中断被关闭在IER寄存器中可屏蔽中断被关闭没有未响应的中断,所有中断在复位时均被清0DP指向数据页0PC指针由地址000000H或3FFFC0H的复位中断向量赋值SP指针指向地址0400H禁止符号位扩展关闭溢出模式乘积移位模式被设置为左移1位§2.6低功耗模式低功耗模式可使芯片核心部分进入休眠状态,耗散更少的功率。有三种模式:1.IDLE模式:任何被使能的中断或NMI中断都可以使处理器退出IDLE模式。在这种模式下,如果低功耗模块控制寄存器LPMCR[D1:D0]位都设置成零,LPM(Low-Powermodes)模块将不完成任何工作2.HALT模式:

只有复位信号XRS和XNMI_XINT13外部信号能够唤醒器件,使其退出HALT模式。在XMNICR寄存器中,CPU有一位使能/禁止XNMI。3.STANDBY模式:如果在LPMCR1寄存器中被选中,所有信号(包括XNMI)都能够将处理器从STANDBY模式唤醒,用户必须选择具体哪个信号唤醒处理器。在唤醒处理器之前,要通过OSCCLK确认被选定的信号:OSCCLK的周期数在LPMCR0寄存器当中确定。低功耗模式寄存器低功耗模式通过LPMCR0和LPMCR1两个寄存器来控制

保留

D15D1D0QUALSTDBYLPM

R-0

R/W-1R/W-0确定从低功耗模式唤醒到正常工作模式的时钟周期个数00000:2个OSCCLKS00001:3个OSCCLKS11111:65个OSCCLKS设置低功耗模式00:IDLE模式01:STANDBY模式1x:HALT模式低功耗方式控制0寄存器LPMCR0低功耗方式控制0寄存器LPMCR0CANRX

D15D14D13D12D11D10D9D8SCIRXAC6TRIPC5TRIPC4TRIPC3TRIPC2TRIPSCIRXBC1TRIP

D7D6D5D4D3D2D1D0T3CTRIPT2CTRIPT1CTRIPWDINTXNMIXINT1T4CTRIP如果相应的控制位设置为1,则使能对应的信号,将器件从低功耗模式唤醒,进入正常工作模式;如果设置为0,则相应的信号没有影响。§2.7程序控制程序控制:控制一个或多个指令块的执行次序程序地址的产生

通常程序是顺序执行的,即在连续的程序存储器地址上取出指令并执行。但有时程序需要转移到不连续的地址,然后再连续执行新地址处的指令。为此提供了转移、调用、重复(循环)和中断指令

在执行当前指令的同时,程序流要求处理器生成下一个指令的程序地址(顺序或非顺序的)▲

程序计数器PC:22bit,取指令时,对内部和外部程序存储器寻址。▲

程序地址寄存器PAR:驱动程序地址总线,提供程序的读、写地址。▲堆栈STACK:16位宽8级深,可保存8个返回地址,也可将用作暂存存储器。▲微堆栈MSTACK:16位、1级深,保存一个返回地址。▲

重复计数器RPTC:16位,与重复指令(RPT)一起,用来确定RPT后面的一条指令重复执行多次。用到的硬件:▲

顺序操作:程序的地址来源于PC程序计数器(程序地址+1)▲

空(哑)周期:程序的地址来源于PAR(程序地址+1)▲

从子程序返回:程序的地址来源于栈顶(TOS)▲

从表传送或块传送返回:程序的地址来源于微堆栈(MSTACK)▲

转移到或调用指令中指定的地址:程序的地址来源于转移或调用指令。即利用程序读总线(PRDB)的方式获取程序地址。▲

转移到或调用累加器低半部分指定的地址:程序地址来源于累加器的低半部分。即利用数据读总线(DRDB)的方式获取程序地址。▲

转移到中断服务程序:程序地址来源于中断矢量单元。即利用程序读总线(PRDB)的方式获取程序地址。程序地址产生的情况:▲

PC中存放将被执行的下一条指令的地址。▲

有5种方式加载PC,从而适应连续和不连续的程序流程。程序计数器PC:顺序执行:若当前指令是一个字,则将PC+1加载到PC若当前指令是两个字,则将PC+2加载到PC分支(转移):

温馨提示

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

评论

0/150

提交评论