DSP第二章TMS320LF240x硬件结构课件_第1页
DSP第二章TMS320LF240x硬件结构课件_第2页
DSP第二章TMS320LF240x硬件结构课件_第3页
DSP第二章TMS320LF240x硬件结构课件_第4页
DSP第二章TMS320LF240x硬件结构课件_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

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

文档简介

第2章

TMS320LF240x硬件结构2.1.1CPU先进的多总线结构。32位中央算术逻辑运算单元(CALU)。16位×16位的硬件乘法器(MUL)。32位累加器(ACC)。输入与输出定标寄存器。乘积定标移位器。2.1TMS320LF240x的特点64K字程序存储器、64K字数据存储器以及64K字I/O空间。2.1.2存储器2.1.4片内外设看门狗(WD)定时器模块。数字输入输出(I/O)模块。事件管理器(EV)模块。模数转换器(ADC)模块。串行通讯接口(SCI)模块。串行外设接口(SPI)模块。CAN控制器模块。采用高性能静态CMOS技术,供电电压为3.3V。可用IDLE指令进入低功耗模式。2.1.5电源具有符合IEEEll49.1标准的在片仿真接口(JTAG)。2.1.6在片仿真接口2.2TMS320LF240x的总线结构PAB—程序地址总线:提供访问程序存储区的地址。DRAB—数据读地址总线:提供从数据存储器读取数据的地 址。DWAB—数据写地址总线:提供写数据存储器的地址。PRDB—程序读总线:它载有从程序存储器读取的指令代码 及表格信息等,并送到CPU。DRDB—数据读总线:它将数据从数据存储器载送到中央算 术逻辑单元(CALU)和辅助寄存器单元(ARAU)。DWEB—数据写总线:它将数据送至程序存储器和数据存储 器。采用各自独立的数据地址总线分别用于数据读DBAB和数据写DWAB,因此,CPU的读写可在一个周期内进行。独立的程序空间和数据空间允许CPU同时访问指令和数据。

总线结构特点CPU功能结构图2.3.2输入比例部分功能:将来自存储器的16位数据左移0~16位送往中央算术逻辑单元(CALU)。移位方法:左移后没有使用的低位LSB填0,高位MSB填0或用符号扩展,取决于状态寄存器ST1的符号扩展模式位SXM(D10)。

SXM=0填0SXM=1符号扩展2.3.3乘法部分功能:在一个机器周期内完成有符号或无符号乘法,乘积为32位。组成: 临时寄存器(TREG):保存一个乘数。 乘法器:将TREG的值与来自数据读总线或程序读总线 的一个值相乘。 乘积寄存器(PREG):保存乘法运算的结果。 乘积定标移位器(PSCALE):在将乘积传送到CALU 前,乘积定标移位器对其进行定标。2.3.4中央算术逻辑部分中央算术逻辑部分包括:中央算术逻辑单元:进行各种算术逻辑运算。累加器:存放CALU的操作结果,并可对其进行移动或循环。将结果输出到CALU或输出数据比例移位器。输出数据比例移位器:将累加器的32位值进行左移0~7位,将移位器中的高位字或低位字保存到数据存储器,而累加器的内容保持为移位前的值不变。

中央算术逻辑单元

功能:进行各种算术逻辑运算,包括16位加、减、布尔逻辑操作、位测试、移动和循环。 特点:大部分运算只需一个时钟周期累加器 功能:存放CALU的操作结果,并可对其进行单比特移动或循环。将结果输出到中央算术逻辑单元(CALU)或输出到数据比例移位器。 与累加器有关的状态位有:

进位标志位(C):位于ST0第9位加到累加器或从累加器减 当C=0,减结果产生借位或加结果未产生进位时 当C=1,减结果未产生借位或加结果产生进位时将累加器数值移1位或循环移1位 在左移或循环左移时,累加器的最高有效位被送到C;在右移或循环右移时,累加器的最低有效位被送到C。2.3.5辅助寄存器算术单元(ARAU)寻址功能 用指令把0~7写入辅助寄存器指针ARP,即选择了一个辅助寄存器。ARP所指的寄存器称当前辅助寄存器。处理一条指令时,当前AR的内容用做访问数据存储器的地址。若指令是读数据,ARAU把该地址送到DRAB;若指令是写数据,ARAU把该地址送到DRAB,指令执行完后,当前AR的内容可通过ARAU进行无符号运算,即增量或减量。

运算功能 将辅助寄存器的值加1或减1。

将AR0的内容与当前AR的内容比较,结果影响TC位ST1的测试/控制位。 辅助寄存器可用做暂存单元或软件计数器。状态寄存器ST0ARP:辅助寄存器(AR)指针。

用于选择在间接寻址方式时使用的辅助寄存器AR0~AR7,用MAR、LST指令和间接寻址访问存储器指令可以加载ARP。当ARP被装载时,先前的ARP被复制到ARB缓存器。OV:溢出标志位 用于表示CALU是否有溢出发生。当CALU溢出,OV置1,并保持置位状态直到被复位、条件转移指令或LST指令清0。ARPOVOVM1INTMDPD8~D0D9D10D11D12D15~D13OVM:溢出模式位 决定ACC算术运算溢出的情况。当累加器处于溢出方式(0VM=1)并且有溢出发生时,若为正溢出,累加器被填充以最大正数7FFFFFFFh;若为负溢出,累加器被填充以最大负数80000000h。0VM=0时,累加器中的结果正常溢出。用SETCOVM或CLRCOVM可将该位置1或清0。LST指令可修改OVM。INTM:中断模式位 用来允许(INTM=0)或禁止(INTM=1)所有的可屏蔽中断。用SETCOVM或CLRCOVM可将该位置1或清0。LST指令不影响OVM位。DP:数据页面指针 当使用直接寻址方式时,DP存放存储器的数据页,DP与指令代码的最低7位构成16位存储器地址。数据存储器地址来自DP来自指令字的低7位D15~D7D6~D0状态寄存器ST1ARB:辅助寄存器指针缓冲器 当ARP被加载到ST0时,除了使用LST指令外,原来的ARP值被复制到ARB中。当用LST#1加载ARB时,也将相同的ARB值复制到ARP。

CNF:片内DARAM配置位 该位决定DARAM映射到数据空间(CNF=0)还是程序空间(CNF=1)。SETCCNF或CLRCCNF可将该位置1或清0,复位时CNF=0ARBCNFTC1XFPMSXMC111D0~D1D2D3D5D4D6D7D811D9D10D11D12D15~D13TC:测试/控制状态位 TC在以下情况下置1:由BIT或BITT测试的位是1时;被CMPR测试的当前AR和AR0之间的比较条件成立时;用NOMR指令测试时,累加器最高两位异或结果为1时。LST指令可改变TC值。SXM:符号扩展模式位

SXM=0,不扩展;SXM=1,移位时进行符号扩展。SETCSXM或CLRCSXM可将该位置1或清0,通过LST指令可对其加载,复位时SXM

=1。

C:进位位

C=0,减有借位或加无进位;C=1,减无借位或加有进位。累加器的值循环移动:左移时,最高位进入C;右移时,最低位进入C。SETCC或CLRCC可将该位置1或清0,通过LST指令可影响C,复位时C

=1。XF:XF引脚状态位

SETCXF或CLRCXF可将该位置1或清0,通过LST指令可对修改XF,复位时XF=1。

PM:乘积移位模式

PM决定PREG的值在送往CALU或数据存储器时如何进行移位。

PM=00:乘法器的32位乘积不经移位送至CALU或数据存储器; PM=01:乘位寄存器左移1位,最低有效位填0;

PM=10:乘位寄存器左移4位,最低有效位填0; PM=11:乘位寄存器右移6位,且进行符号扩展。2.4.1存储器概述TMS320LF240x器件有4种可独立选择的空间:

64K字的程序存储器空间:存放要执行的指令及程序执行时使用的数据。64K字的局部数据存储器空间:存放指令使用的数据。32K字的全局数据存储器空间:用于存放与其他处理器共用的数据。64K字的I/O空间:用于与外部的设备接口和片内外设寄存器。2.4TMS320LF240x的存储器分配

上述224K字包括一定数量的片内存储器、外部存储器和I/O设备。

TMS320LF240x以改进的哈佛结构为基础,存储空间为3组16位的并行总线访问:程序地址总线(PAB)、数据读地址总线(DRAB)、数据写地址总线(DWAB)。片内双访问存储器(DARAM) 544字的DARAM可以在一个机器周期访问两次。由片内B0(256字)、B1(256字)和B2(32字)三个模块组成。主要用于保存数据,但在需要时B0也可用于保存程序(CNF=1)。 在流水线操作中,CPU在第3个周期读数据,第四个周期写数据。然而DARAM允许CPU在一个周期里读和写。例如,设有两个指令A和B,将累加器的值写入DARAM,又从DARAM将一个新值装入累加器。指令A在CPU周期的主时段内存累加器的值,B在从时段内将新值装入累加器。2.4.2片内存储器的类型片内单访问存储器(SARAM)

SARAM的地址可以用于数据存储器和程序存储器。可通过软件配置为外部存储器或内部SARAM。

SARAM在一个机器周期内只能访问一次。当CPU要求多次访问时,SARAM会向CPU提供一个未准备好的信号,然后在每个周期内执行一次访问。闪速存储器(Flash) 是电可擦除的、可编程的、可长期保存数据的存储器。2.4.3程序存储器

程序存储空间用于保存程序代码、表格和立即操作数等。地址空间为64K字,包括片内DARAM和片内ROM/Flash。当DSP产生一个超出配置为片内程序存储范围的地址时,器件会自动产生访问外部程序存储器的相应信号,进行外部存储器的访问操作。影响程序存储器配置的两个因素

CNF位。状态寄存器ST1的第12位,决定片内双访问寄存器DARAM在片内还是片外。

CNF=0:B0为片外程序空间。

CNF=1:B0为片内程序空间。 在复位状态下,B0映射到数据空间。引脚。决定指令从片内存储器还是从外部存储器读入。 =0,配置为微控制器方式,从片内程序存储器读取复位向量(起始程序)。 =1,配置为微处理器方式,从外部程序存储器读取复位向量(起始程序)。2.4.4数据存储器数据存储器配置 数据存储空间的可寻址范围为64K字,32K字是内部数据存储器,包括存储映射寄存器、DARAM和外设映射寄存器,另外的32K字是外部数据存储器。 每个器件有3个DARAM块:B0、B1和B2。B0既可配置为程序存储器也可配置为数据存储器,由CNF标志位决定。B1、B2只能用于数据存储器。

数据存储器页面

数据存储器有两种寻址方式:直接寻址和间接寻址。使用直接寻址时,将数据存储器按128字分块,每一块称为一个数据页,64K字的数据存储器可分为512页,标号从0到511。当前页由状态寄存器ST0的低9位D8~D0数据页面指针DP的值确定;每页的128个单元由7位偏移量决定,该偏移量来自直接寻址指令。因此,采用直接寻址方式时,用户必须先由软件设置DP值,指定待访问的数据页,并在直接寻址指令中指定7位偏移量。第0页数据地址映射 第0页包含了3个DSP寄存器:中断屏蔽寄存器(IMR,地址0004H)、中断

温馨提示

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

评论

0/150

提交评论