DSP原理与应用 教学课件 作者 张东亮第3章C24xDSP的CPU与指令系统.ppt

DSP原理与应用 教学课件 作者 张东亮第3章C24xDSP的CPU与指令系统.ppt

ID:50046159

大小:864.50 KB

页数:57页

时间:2020-03-08

DSP原理与应用 教学课件 作者 张东亮第3章C24xDSP的CPU与指令系统.ppt_第1页
DSP原理与应用 教学课件 作者 张东亮第3章C24xDSP的CPU与指令系统.ppt_第2页
DSP原理与应用 教学课件 作者 张东亮第3章C24xDSP的CPU与指令系统.ppt_第3页
DSP原理与应用 教学课件 作者 张东亮第3章C24xDSP的CPU与指令系统.ppt_第4页
DSP原理与应用 教学课件 作者 张东亮第3章C24xDSP的CPU与指令系统.ppt_第5页
资源描述:

《DSP原理与应用 教学课件 作者 张东亮第3章C24xDSP的CPU与指令系统.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第3章C24xDSP的CPU与指令系统本章内容:3.1中央处理器3.2寻址方式3.3C24xDSP汇编指令3.4汇编语言命令与程序举例13.1中央处理器3.1.1CPU总体结构240x的CPU主要由总线、CPU寄存器、程序地址发生器和控制逻辑、辅助寄存器算术单元(ARAU)、中央算术逻辑单元(CALU)、乘法器和移位器等逻辑部件组成。1)总线。2)程序地址发生器和控制逻辑。3)ARAU。产生指令操作数的地址并将其送往对应的数据地址总线。4)CALU。执行二进制补码的算术运算和布尔运算。5)乘法器。可以执行16×16位的补码乘法运算,并产生32位结

2、果。乘法器采用16位乘数寄存器(TREG)、32位乘积寄存器(PREG)和32位累加器(ACC)。6)移位器。CPU的移位器实现对操作数的移位操作。2240xDSPCPU内部结构功能框图33.1.2总线结构多组总线—并行机制程序读、数据读、数据写三种情况内部地址总线:三组AddressBus:A0~15(C24x)程序读地址总线PAB(ProgramAddressBus)数据读地址总线DRAB(DataReadAddressBus)数据写地址总线DWAB(DataWriteAddressBus)内部数据总线:三组DataBus:D0~D15(C2

3、4x)程序读数据总线PRDB数据读数据总线DRDB数据写数据总线DWEB数据写入数据存储器(DM)和程序存储器(PM)外部Data/Address总线为单一形式4C2000DSP总线结构(24x)53.1.3CPU内核结构CPU内核模块包括:输入定标移位器、32位中央算术逻辑单元(CALU)、16位×16位乘法器、累加器和输出定标移位器等。CPU内核框图61)输入定标移位器(InputScale,Shifter)该单元将来自程序/数据存储器的16位数据调整为32位数据送到中央算术逻辑单元(CALU)。因此,输入定标移位器的16位输入与数据总线相连

4、,32位输出与CALU单元相连。输入定标移位器在算术定标及逻辑操作非常有用。输入定标移位器对输入数据进行0-15位左移。左移时,输出的最低有效位(LSB)为0,最高有效位(MSB)根据状态寄存器ST1的SXM位(符号扩展方式)的值来决定是否进行符号扩展。当SXM=1时,则高位进行符号扩展;当SXM=0时,则高位填0。移位的次数由包含在指令中的常量或临时寄存器(TREG,T,TemporaryRegister)中的值来指定。72)乘法器(Multiplier)16×16位的硬件乘法器,单个机器周期内产生一个32位的有符号或无符号乘积。除了执行无符号

5、乘法指令(MPYU)外,所有的乘法指令均执行有符号的乘法操作,即相乘的两个数都作为二进制的补码数,而运算结果为一个32位的二进制的补码数。乘法器接收的两个乘数,一个来自16位的临时寄存器(T),另一个通过数据读总线(DRDB)取自数据存储器,或通过程序读总线(PRDB)取自程序存储器。8两个输入值相乘后,32位的乘积结果保存在32位的乘积寄存器(P,PREG,ProductRegister)中。PREG的输出连接到乘积定标移位器(ProductScale,Shifter),通过乘积定标移位器,乘积结果可以从P传到CALU或数据存储器。乘积定标移位

6、器对乘积采用4种乘积移位方式。移位方式由状态寄存器ST1的乘积移位方式位(PM,ProductMode)指定,对于执行乘法/累加操作、进行小数运算或者进行小数乘积的调整都很有用。9乘积定标移位器的乘积移位方式PM移位作用和意义00无移位乘积送CALU或数据写总线,不移位01左移1位移去二进制补码乘法产生的额外符号位,产生Q31格式的乘积10左移4位当与一个13位的常数相乘时,移去在16☓13位(常数)二进制补码产生的额外的4位符号位,产生Q31格式的乘积11右移6位对乘积结果定标,以使得运行128次的乘积累加而累加器不会溢出注:Q31格式是一种二

7、进制小数格式,表示有31位二进制小数103)中央算术逻辑单元中央算术逻辑单元(CALU,CentralALU)实现大部分算术和逻辑运算功能,大多数功能只需一个时钟周期,这些运算功能包括:16位加、16位减、逻辑运算、位测试以及移位和循环功能。由于CALU可以执行布尔运算,因此使得控制器具有位操作功能。CALU的移位和循环在累加器中完成。CALU是一个独立的算术单元,它和辅助寄存器算术单元(ARAU)在程序执行时,是完全不同的两个模块。11一旦操作在CALU中被执行,运算结果会被传送到累加器中,在累加器中再实现如移位等附加操作。CALU有两个输入,

8、一个由累加器提供,另一个由乘积寄存器(P)或输入数据定标移位器的输出提供。当CALU执行完一次操作后将结果送至32位累加器,由累加器对其

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。