版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
DSP芯片原理与应用第6讲DSP的定点运算1引言1定点DSP的数据存储1引言目录2定点DSP的加减法1引言CONTENTS3定点DSP的乘法4定点DSP的除法(option)1定点DSP的数据存储TMS320C54/55x的两个累加器:A、B主要功能:存放运算结果40位=8位保护位+高16位+低16位A(B)GA(B)HA(B)L8bit16bit16bit1定点DSP的数据存储乘累加单元:MAC乘法器T:17*17乘法专用寄存器:17位T寄存器,存1个乘数乘累加单元内部专用累加器:40位C54x的乘累加单元功能框图1定点DSP的数据存储RAM(SARAM、DARAM)ROM片内、片外一般存储器:16位地址000000000000000016bit1引言1定点DSP的数据存储1引言目录2定点DSP的加减法1引言CONTENTS3定点DSP的乘法4定点DSP的除法(option)2定点DSP的加减法001011014543+)0010101101011000882定点DSP的加减法0010110145+)10101011-8511011000-402定点DSP的加减法ADDA,B(A+BB)SUBA,B(A-BB)2定点DSP的加减法DADDA,B功能同ADD指令,对32位操作数进行运算DSUBA,B功能同SUB指令,对32位操作数进行运算2定点DSP的加减法溢出00111101+)01011011619110011000-1042定点DSP的加减法溢出计算结果超出数值表示范围上溢出下溢出2定点DSP的加减法溢出处理将参与计算的数值统一减小一定倍数,即用负Q值定标方式进行计算?结果的Q值怎样确定2定点DSP的加减法溢出处理Q-1000111101+)0010110116191010010111502定点DSP的加减法溢出处理可以通过测试OVA或OVB位确定计算结果是否溢出。可自己确定处理方法。BC3240h,AOV2定点DSP的加减法溢出保护下溢出时,结果设定为负最大值在上溢出时,结果设定为正最大值;计算结果精度下降较大2定点DSP的加减法溢出保护001111016191+)010110111001100001111111-1271042定点DSP的加减法溢出保护TMS320C54/55x系列芯片中都有自动溢出保护功能SSBXRSBXOVMOVMOVM=1OVM=0注意:保护针对ALU中的低32位数据进行2定点DSP的加减法溢出保护OVM=10x7071h+0x7071h=0x0000E0E2h0x70710000h+0x70710000h=0xFFFFFFFFh需在AH部分进行16位数据相加,才能进行溢出保护2定点DSP的加减法溢出保护指令SATB执行前执行后B7123456789B007FFFFFFFOVBXOVB12定点DSP的加减法溢出处理DSP提供处理帮助溢出保护DSP提供功能指令溢出保护DSP提供功能2定点DSP的加减法小数相加?2.54+)13.36115.9012定点DSP的加减法小数点对齐00101101.00101011.22.5(Q1)4510.75(Q2)43+)33.252定点DSP的加减法小数点对齐左移00101101.022.5(Q1)22.5(Q2)+)00101011.10.75(Q2)11000000101111111..31.75(Q2)33.252定点DSP的加减法小数点对齐右移00101101.22.5(Q1)10.5(Q1)10.75(Q2)+)00101010.101000010.33(Q1)2定点DSP的加减法小数点对齐两个进行加/减运算的数必须具有相同的Q值(小数点对齐)。若两数的Q值不等,其中的一个必须进行转换。高->低:结果精度降低,溢出风险减小低->高:结果精度高,容易溢出2定点DSP的加减法移位循环移位多移位ROARL每次带进位位(C)循环位移一位对32位数据进行执行后8bit的A(B)G位清02定点DSP的加减法移位循环移位算术移位多移位SFTAA,x,B-16<=x<=15x小于0,右移,否则左移运算对累加器A或B的40位数据进行受SXM位影响2定点DSP的加减法移位多移位算术移位逻辑移位SFTAAL,x,B-16<=x<=15x小于0,右移,否则左移运算对累加器A或B的40低32位数据进行位数据进行受空位补SXM位影响02定点DSP的加减法16位加减法32位加减法手动溢出处理自动溢出保护指令溢出保护Q值调整移位指令2定点DSP的加减法ADDDADDSUBDSUBSATROL(R)SFTASFTLOVMOVA(B)1引言1定点DSP的数据存储1引言目录2定点DSP的加减法1引言CONTENTS3定点DSP的乘法4定点DSP的除法(option)3定点DSP的乘法001023×)001100100010000000000000011063定点DSP的乘法11010101-35×)11111111011111110111111110001-153定点DSP的乘法1哈佛总线结构2流水线操作3456硬件乘法器无开销循环高效的指令浮点/定点运算3定点DSP的乘法DSP中可用单指令进行乘法运算指令:MPY缺省的乘数放在辅助寄存器T中3定点DSP的乘法6006X000002A02A0007有效数值3定点DSP的乘法结果的符号由于补码的最高位都为符号位,因此计算结果为32位,其低30位为有效数值位。运算后,将结果的数值左移1位,Q值加1,使得只有最高位为符号位,以提高计算结果的保存精度。3定点DSP的乘法结果的符号SSBXFRCTRSBXFRCTFRCT=1FRCT=0FRCT=1,乘法结果自动左移1位3定点DSP的乘法00000540546006XXFRCT=0000002A02A00072FRCT有效数值3定点DSP的乘法乘累加运算MACMACSmem,src(Smem)×(T)+(src)src结果受FRCT位的影响3定点DSP的乘法乘累加运算MAC*AR5+,A0000001000A000048E0000400T04000FRCT00100AR501011234010012343定点DSP的乘法乘累加运算MAC*AR5+,A0000001000A000091B000000048E0000400T040010FRCT100100AR501011234010012343定点DSP的乘法MASSQURSQURA3定点DSP的乘法00.10001.100102(Q2)3(Q1)0.51.5×)00100000000000001106(Q3)0.75.3定点DSP的乘法QQyXXD2xYYD2ZXYQxQyXD2YD2XDYD2(QxQy)QzZD23定点DSP的乘法截尾与舍入00110100101110001100001010010110?3定点DSP的乘法截尾与舍入00110100101110001100001010010110?3定点DSP的乘法截尾与舍入舍入001101001011100000110100101110011100001010010110+1MPYR3定点DSP的乘法80006006X000002A02A+0007000003202A00003定点DSP的乘法截尾与舍入完成截尾或舍入后,计算结果的Q值应减去163定点DSP的乘法定点整数的乘法定点小数的乘法结果左移1位MPYMPYRFRCT截尾与舍入T1引言1定点DSP的数据存储1引言目录2定点DSP的加减法1引言CONTENTS3定点DSP的乘法4定点DSP的除法(option)4定点DSP的除法7.87516)126112140128120112808004定点DSP的除法010000000001000001111110------101111100-----.1------101111000Q0Q201110000------1------1------1------001100000010000000000000001111110.------7.8754定点DSP的除法小数点定位问题4定点DSP的除法整数除法将被除数与除数的最高有效数值位对齐结果的Q值调整为:Q14+Q被除数-Q除数4定点DSP的除法整数除法有效位对齐EXPNORM对累加器操作,将累加器中将累加器中的数左移,移位数的扩展符号位数写入寄存器数为寄存器T中的数T4定点DSP的除法1111111111111111111111111111111111001011EXPAAFFFFFFFFCB-53FFFFFFFFCB-53T0000001925NORMAATFFFFFFFFCB-53FF960000000019001911111111100101100000000000000000000000004定点DSP的除法整数除法1数值调整2移位试减3结果保存4Q值调整4定点DSP的除法整数除法0100000001111110------1.除数<被除数01.1111104定点DSP的除法整数除法0100000001111110------1.0.除数<>被除数01.11111000.100000010004定点DSP的除法整数除法进一步提高结果的精度:数值位对齐后,若被除数大于除数,则被除数右移一位,结果前不添加符号位0。此时结果的Q值变为:Q15+Q被除数-Q除数4定点DSP的除法整数除法问题:能否直接进行负数的除法计算?计算负数除法前应做哪些工作?4定点DSP的除法除法的C实现shortdiv_s(shortvar1,shortvar2){shortvar_out=0;shorti;IntL_num,L_denom;L_num=var1;L_denom=var2;for(i=0;i<15;i++){var_out<<=1;L_num<<=1;if(L_num>=L_denom){L_num=L_num-L_denom;var_out+=1;}}return(var_out);}4定点DSP的除法除法的C实现参与运算的数应为正数,结果符号在除法计算前需判断除数为0的情况;当除数与被除数相等时,结果直接为1;当被除数为0时,结果直接为0计算完成后再判断加上4定点DSP的除法除法的DSP实现SUBC•SUBCSmem,AA-(Smem<<15)ALU若ALU>=0(ALU<<1)+1src否则(src<<1)src4定点DSP的除法除法的DSP实现••••••••SSBXSXMSTM#d-Qout,AR2LDd-Den,16,AMPYAd-NumABSASTHA,d-RemLDd-Num,AABSA••
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度内资股协议转让风险评估合同
- 2025年玻璃瓶盖市场拓展与销售代理合同3篇
- 2025年非全日制市场营销合同3篇
- 二零二五版跑步健身课程教练聘请合同3篇
- 2025年茶馆茶叶及茶艺用品购销合同3篇
- 二零二五年度二手房买卖合同(含房产交易信息保密)3篇
- 2025年度个人市政工程施工劳务合同规范范本4篇
- 2025年健身产品保修服务合同
- 二零二五年度出租车运营车辆租赁合同范本8篇
- 2025年信用资产抵押贷款交易管理合同
- 2024版个人私有房屋购买合同
- 2024爆炸物运输安全保障协议版B版
- 2025年度军人军事秘密保护保密协议与信息安全风险评估合同3篇
- 《食品与食品》课件
- 读书分享会《白夜行》
- 光伏工程施工组织设计
- DB4101-T 121-2024 类家庭社会工作服务规范
- 化学纤维的鉴别与测试方法考核试卷
- 2024-2025学年全国中学生天文知识竞赛考试题库(含答案)
- 作品著作权独家授权协议(部分授权)
- 取水泵站施工组织设计
评论
0/150
提交评论