- 1、本文档共47页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
条件操作 creg指定条件寄存器 z=1,进行零测试,即条件寄存器内容为零时为真 z=0,进行非零测试,即条件寄存器内容为非零时为真 creg=0,z=0,意味着指令将无条件地执行 在书写汇编程序时,以方括号对条件操作进行描述,方括号内是条件寄存器的名称,即A0(仅C64X)A1,A2,B0-B2。 例如:[A2] ADD .L2 B1,B2,B3;ADD指令在A2非零时执行 [!A2] ADD .L2 B1,B2,B3;ADD指令在A2零时执行 寻址方式 寻址模式寄存器(AMR) 寻址方式 寻址模式 C6000芯片公共指令集概述 用C64xx实现算法举例 多数DSP算法包括如下运算: C64xx如何实现这个运算? 运算操作:相乘、相加、循环和更新数据 C6000芯片公共指令集概述 相乘(.M单元) C6000芯片公共指令集概述 相加(.L单元) C6000芯片公共指令集概述 寄存器取代变量 C6000芯片公共指令集概述 如何读取/存入? 1)a、x和Y变量在存储器中 2)建立变量指针 3) load/store中使用指针 C6000芯片公共指令集概述 读取/存入(.D单元) C6000芯片公共指令集概述 建立循环 1)、添加跳转指令和循环标号 C6000芯片公共指令集概述 建立循环 2)、设定一个循环计数器 C6000芯片公共指令集概述 建立循环 3)、添加递减循环计数指令 C6000芯片公共指令集概述 建立循环 4)、给出基于循环计数值的跳转条件 C6000芯片公共指令集概述 更新数据——递增指针 第1次循环后,A4为: 第2次循环如何访问a(1)和x(1)? C6000芯片公共指令集概述 更新数据——递增指令 C6000芯片公共指令集概述 用C64xx实现算法的汇编程序(主要部分) End Thanks 校长办公室 the Office of the President 1896 1920 1987 2006 C6000系列DSP的CPU结构概述 学习内容 TMS320C6000简介 C6000系列CPU结构介绍 CPU数据通路与控制 TMS320C6000公共指令集概述 TMS320C6000简介 美国TI公司发布的DSP芯片TMS320C6000 包括 TMS320C62xx和 TMS320C64xx两个定点系列和 TMS320C67xx 浮点系列,二个系列相互兼容。 C6000系列DSP主要特点: 1)采用了VelociTI甚长指令字(VLIW,Very Long Instruction Word)结构,可以单周期发射多条指令,实现很高的指令级并行效率。 2)统一的开发工具 3)管脚和代码兼容 C6000系列CPU结构介绍 TMS320C62XX/C64XX/C67XX结构框图 图中阴影部分为CPU,它包括: 1、 程序读入及指令 译码、 分配机构 2、程序执行机构 3、芯片测试和仿真端口及其控制逻辑。 C6000系列CPU结构介绍 程序执行机构包括 1) 2 个对称数据通路A 和 B,每组数据通路有读入及存储(写出)数据总线与片内数据存储器相连。 2) 2 个对称的通用寄存器组 3) 2组对称的功能单元(每组 4 个) 4) 控制寄存器组和控制逻辑以及中断逻辑等 C6000系列CPU结构介绍 2 个对称的可进行数据处理的数据通路(A 和 B) 16个(C64x有32个)32位通用寄存器 4个功能单元 (.L、.S、.M和.D) 16个(C64x有32个)32位通用寄存器 4个功能单元 (.L、.S、.M和.D) 每个数据通路的4个功能单元有单一的 数据总线连接到 CPU 另一侧的寄存器上 数据通路A 数据通路B CPU数据通路与控制 TMS320C64XX CPU数据通路 CPU数据通路与控制 TMS320C62XX CPU数据通路 CPU数据通路与控制 TMS320C67XX CPU数据通路 CPU数据通路与控制 C62xx、C67xx和C64xx有类似的数据通道都包括: 2 个通用寄存器组(A 和 B) 8 个功能单元(.L1、.L2、.S1、.S2、.M1、.M2、.D1 和.D2) 2 个数据读取通路(LD1 和 LD2) C64xx 和 C67xx 每侧有 2 个 32 位读取总线,
文档评论(0)