C60007数据访问课件_第1页
C60007数据访问课件_第2页
C60007数据访问课件_第3页
C60007数据访问课件_第4页
C60007数据访问课件_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1、BIT/TIC60007数据访问PPT课件1第七讲 数据访问与程序控制BIT/TIC60007数据访问PPT课件2学习内容一、定界(alignment)二、操作数 数据交叉通路、地址交叉通路、条件交叉通路 指针操作数与循环缓存区 有限字长效应问题三、程序控制 子程序调用与返回 程序跳转四、实验BIT/TIC60007数据访问PPT课件3一、定界定界:数据或代码在存储器内的开始地址有一定要求 常数 变量 代码BIT/TIC60007数据访问PPT课件4数据定界原则 数据类型决定:定界、存取指令数据类型数据类型定界定界(开始存放地址开始存放地址)LD/ST指令指令.byte无限制无限制LDB/ST

2、B.short/.half2的整数倍的整数倍(1 LSB=0)LDH/STH.word/.int4的整数倍的整数倍word(2 LSB=00)LDW/STWBIT/TIC60007数据访问PPT课件5常数定界编译器会根据常数类型自动定界为避免存储器浪费,定义时应遵循先大后小的原则v .short 20hBIT/TIC60007数据访问PPT课件6变量定界省去省去alignment域域?var_name.usect“sect_name”, #bytes, alignment.bss var_name, #bytes, alignment定界信息可选定界信息可选BIT/TIC60007数据访问PP

3、T课件7错误定界BIT/TIC60007数据访问PPT课件8数据类型要与存取指令一致BIT/TIC60007数据访问PPT课件9数据定界练习1) 定义一个16位长的short类型变量m.usect “vars”, _, _2) 定义一个word类型数组,元素个数20n.usect “vars”, _, _BIT/TIC60007数据访问PPT课件10代码定界 连接器自动按照连接器自动按照256 bits定界定界 代码的起始存放地址必须是代码的起始存放地址必须是256的整数倍,即的整数倍,即8 LSB = 0。BIT/TIC60007数据访问PPT课件11定界小结 数据类型决定定界方式和访问方式

4、数据类型决定定界方式和访问方式 定义变量时必须填写定界信息定义变量时必须填写定界信息 为节省存储空间,应按照为节省存储空间,应按照word, short, byte的顺序定义数据的顺序定义数据 无需考虑常量的定界问题:m.byte10 无需考虑代码的定界问题BIT/TIC60007数据访问PPT课件12二、操作数BIT/TIC60007数据访问PPT课件13操作数:交叉通路Cross Paths 数据交叉通路(.L, .S, .M) 地址交叉通路(.D) 条件交叉通路(所有单元) 条件寄存器:A1, A2, B0, B1, B2BIT/TIC60007数据访问PPT课件14BIT/TIC600

5、07数据访问PPT课件15数据交叉通路BIT/TIC60007数据访问PPT课件16地址交叉通路CPU内部总线地址交叉通路指针寄存器来自对侧寄存器LDW.D1 *A0, A5LDW.D1 *A0, B5BIT/TIC60007数据访问PPT课件17地址交叉通路LDW .D1 *PTR, RegSTW .D1 Reg, *PTR数据寄存器指令功能单元和指针寄存器必须同侧数据寄存器如果与功能单元不同侧,即使用了地址交叉通道BIT/TIC60007数据访问PPT课件18在并行存取指令并行存取指令中使用地址交叉通路的限制标准并行存取指令使用地址交叉通路的并行存取指令必须同时使用地址交叉通路BIT/TI

6、C60007数据访问PPT课件19条件交叉通路 所有指令都可以是条件指令 条件寄存器可以与功能单元不同侧,而且不占用数据交叉通路或地址交叉通路 例子B2 ADD.L1x A2, B0, A4!A1 MPY.M2x B0, A5, B4BIT/TIC60007数据访问PPT课件20交叉通路小结 数据交叉通路数据交叉通路 只能用于源寄存器 一个执行包内,每侧的数据交叉通路只能用一次 地址交叉通路地址交叉通路 指针寄存器与功能单元必须在同侧 只能用于LD/ST指令的数据寄存器 并行存取指令:只能都使用或都不使用地址交叉通路 条件交叉通路条件交叉通路 没有限制BIT/TIC60007数据访问PPT课件

7、21交叉通路练习下面的指令中使用了哪些交叉通路?请判断上面的指令是否能通过编译?BIT/TIC60007数据访问PPT课件22操作数:指针操作数语法说明指针修改*R指针无*+Rdisp预偏移无*-Rdisp预偏移无*+Rdisp预偏移有*-Rdisp预偏移有*R+disp后偏移有*R- disp后偏移有 偏移地址disp是5bit常量或寄存器 若基地址寄存器为B14/B15, 则偏移地址可以是15bit常量 指针按照线性寻址修改,或采用循环寻址修改BIT/TIC60007数据访问PPT课件23循环寻址在卷积、相关、FIR等应用中用来实现一个或两个滑动窗。x(N-1)x(N-2).x(1)x(0

8、)a(0)a(1)a(2).a(N-1)输入数据x(n)循环寻址指针开始位置新样本替换x(N-1)滤波器系数线性寻址旧新10)()()(NmmnamxnyBIT/TIC60007数据访问PPT课件24一个采样周期后x(0)x(N-1)x(N-2).x(1)a(0)a(1).a(N-2)a(N-1)指针开始位置旧新BIT/TIC60007数据访问PPT课件25两个采样周期后指针开始位置x(1)x(0)x(N-1).x(2)a(0)a(1).a(N-2)a(N-1)旧新BIT/TIC60007数据访问PPT课件26循环寻址指针的修改 8个寄存器可以用于循环寻址A4A7,B4B7 指针的使用与线性寻

9、址指针相似,只是地址修改稍有不同 只能在循环缓存区的地址范围内修改 若指针修改后超出循环缓存区,则地址指针“绕回”起始地址循环寻址:地址指针的修改限制在一个存储区域,超出范围后指针内的地址绕回起始地址BIT/TIC60007数据访问PPT课件27循环寻址的使用AMR低16位设置寻址模式模式说明00线性(默认)01循环(BK0说明循环缓存区长度)10循环(BK0说明循环缓存区长度)11保留BIT/TIC60007数据访问PPT课件28循环寻址的使用AMR高16位设置循环缓存区长度循环缓存区长度循环缓存区长度(字节字节)2N+1N循环缓存区长度00000200111256(27+1=256)111

10、114G(231+1=4G)BIT/TIC60007数据访问PPT课件29设置寄存器AMR例子MVC在控制寄存器与通用寄存器之间传递数据,使用功能单元.S2BIT/TIC60007数据访问PPT课件30循环寻址练习.sect“myData”.11111111,22.sect“myCode”MVK .S10001h, A2MVKLH .S10003h, A2MVC .S2x A2, AMRMVK .S1 100h, A4LDW .D1 *A4+2, A1LDW .D1 *A4+3, A1设置AMRBIT/TIC60007数据访问PPT课件31操作数:有限字长效应问题 采用Q

11、15表示操作数,乘法不会有溢出问题 加法有溢出问题BIT/TIC60007数据访问PPT课件32加性溢出的解决方法1. 选择饱和运算指令(Saturation),并检查运算结果是否发生运算结果饱和。2. 使用警戒位(guard bits)。3. 使用非增益系统(系统增益1)BIT/TIC60007数据访问PPT课件331.饱和运算1) 使用饱和运算指令编程2) 检查结果是否发生饱和BIT/TIC60007数据访问PPT课件34检查运算结果是否发生饱和SAT位的提取和清除提取清除BIT/TIC60007数据访问PPT课件35饱和运算小结 饱和运算造成非线性结果 使用指令SADD, SSUB, S

12、AT, SMPY时,时,如果结果发生饱和,则控制状态寄存器CSR的SAT位被置位 饱和位SAT置位后,在下次使用前要清零BIT/TIC60007数据访问PPT课件362.使用警戒位BIT/TIC60007数据访问PPT课件37用long 40实现警戒位BIT/TIC60007数据访问PPT课件38如何使用40bit结果? 结果存入存储器(40位结果无法直接作乘法器输入) 指令SAT把40bits结果转换为32bits(转换结果可能会发生饱和)BIT/TIC60007数据访问PPT课件393.使用非增益系统如果系统有界,并且是线性的,则最后结果不会发生溢出。y=H.x假设:|x|1, |H|1则:|y|1BIT/TIC60007数据访问PPT课件40非增益系统例子中间结果产生溢出正确的最后结果BIT/TIC60007数据访问PPT课件41三、程序控制子程序调用与返回调用CALL返回RETBIT/TIC60007数据访问PPT课件42跳转指令 共有两个跳

温馨提示

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

评论

0/150

提交评论