




已阅读5页,还剩173页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2020年4月20日 DSP原理及应用 1 第3章TMS320C54x的指令系统 内容提要 C54x的指令系统包含助记符指令和代数指令两种形式 助记符指令 是一种采用助记符号表示的类似于汇编语言的指令 代数指令 是一种比汇编语言更高级 类似于高级语言的代数形式指令 具有接近汇编语言的特点 两种指令具有相同的功能 本章着重介绍助记符指令的分类及基本功能 其内容有 寻址方式 TMS320C54x的指令表示方法 TMS320C54x的指令系统 2020年4月20日 DSP原理及应用 2 第3章TMS320C54x的指令系统 知识要点 本章涉及的内容包括 C54x指令系统寻址方式的分类和功能 指令系统中的常用符号 缩略语和运算符 数据传送 算术运算 逻辑运算 程序控制 并行操作和重复操作指令 2020年4月20日 DSP原理及应用 3 第3章TMS320C54x的指令系统 3 1寻址方式3 2TMS320C54x的指令表示方法3 3TMS320C54x的指令系统 2020年4月20日 DSP原理及应用 4 第3章TMS320C54x的指令系统 3 1寻址方式 当硬件执行指令时 寻找指令所指定的参与运算的操作数的方法 寻址方式 根据程序的要求采用不同的寻址方式 可以有效地缩短程序的运行时间和提高代码执行效率 C54x芯片的寻址方式可以分为两类 数据寻址 程序寻址 2020年4月20日 DSP原理及应用 5 第3章TMS320C54x的指令系统 3 1寻址方式 C54x有7种基本的数据寻址方式 立即寻址绝对寻址累加器寻址直接寻址间接寻址存储器映像寄存器寻址堆栈寻址 由指令提供一个操作数 由指令提供一个操作数地址 以累加器的内容为地址访问程序空间某单元 寻址地址为DP或SP的值加上指令提供的偏移量 利用辅助寄存器访问存储器 用来改变映像寄存器 但不影响DP或SP的值 用来管理系统堆栈中的操作 2020年4月20日 DSP原理及应用 6 第3章TMS320C54x的指令系统 3 1寻址方式 2020年4月20日 DSP原理及应用 7 第3章TMS320C54x的指令系统 部分寻址缩略语 2020年4月20日 DSP原理及应用 8 第3章TMS320C54x的指令系统 3 1 1立即寻址 指令中含有执行指令所需的操作数 操作数紧随操作码存放在程序存储器中 例如 LD F180 A 将立即数F180加载到A 立即数的数值形式 短立即数 3 5 8 9位 单字指令 长立即数 16位 双字指令 特点 指令中含有一个固定的立即数 运行速度较快 但需占用程序存储空间 并且数值不能改变 用途 用于表示常数或对寄存器初始化 2020年4月20日 DSP原理及应用 9 第3章TMS320C54x的指令系统 3 1 1立即寻址 支持立即数的指令 注意 在立即寻址的指令中 应在数值或符号前面加一个 表示是一个立即数 以区别于地址 2020年4月20日 DSP原理及应用 10 第3章TMS320C54x的指令系统 3 1 2绝对寻址 指令中含有所要寻找的操作数的16位存储单元地址 16位地址表示形式 地址标号 如 TABLE 16位符号常量 如 89AB 1234 例如 MVKDTABLE AR1 将数据存储器TABLE为地址的单元数据送入AR1寄存器指定的数据存储单元中 LD DATA A 将DATA指定的数据存储单元中的数据送入累加器A中 特点 指令中包含一个固定的16位地址 能寻址所有数据存储空间 但运行速度慢 需要较大的存储空间 用途 用于对速度要求较低的场合 2020年4月20日 DSP原理及应用 11 第3章TMS320C54x的指令系统 3 1 2绝对寻址 绝对寻址是利用16位地址来寻址操作数的存储单元 由于绝对地址代码的位数为16位 所以绝对地址寻址的指令至少应为2个字长 绝对寻址有四种类型 数据存储器地址 dmad 寻址 程序存储器地址 pmad 寻址 端口 PA 寻址 1k 寻址 2020年4月20日 DSP原理及应用 12 第3章TMS320C54x的指令系统 1 数据存储器地址寻址 用于确定操作数存于数据存储单元的地址 例如 将数据存储器EXAM1地址单元中的数据复制到AR5寄存器所指向的数据存储单元中 MVKDEXAM1 AR5 语法 使用一个程序标号或一个数字来指定数据空间的一个地址 数据存储器的16位地址dmad值 2020年4月20日 DSP原理及应用 13 第3章TMS320C54x的指令系统 2 程序存储器地址寻址 用于确定程序存储器中的一个地址 例如 将程序存储器TABLE地址单元中的内容复制到AR2寄存器所指向的数据存储单元中 MVPDTABLE AR2 语法 使用一个符号或具体的数字来指定程序空间的一个地址 程序存储器的16位地址pmad值 2020年4月20日 DSP原理及应用 14 第3章TMS320C54x的指令系统 3 端口 PA 寻址 用一个符号或一个数字来确定外部I O端口的地址 例如 把一个数从端口为FIFO的I O口复制到AR5寄存器所指向的数据存储单元中 PORTRFIFO AR5 I O端口地址PA 2020年4月20日 DSP原理及应用 15 第3章TMS320C54x的指令系统 4 1k 寻址 使用一个指定数据空间的地址来确定数据存储器中的一个地址 例如把地址为PN的数据单元中的数据装到累加器A中 LD PN A 语法 允许所有使用单数据存储器 Smem 寻址的指令去访问数据空间的任意单元 而不改变DP的值 也不用对AR进行初始化 这种寻址可用于支持单数据存储器操作数的指令 注意 1k 寻址的指令不能与循环指令 RPT RPTZ 一起使用 2020年4月20日 DSP原理及应用 16 第3章TMS320C54x的指令系统 3 1 3累加器寻址 将累加器的内容作为地址去访问程序存储单元 即将累加器中的内容作为地址 用来对存放数据的程序存储器寻址 例如 READASmem 将A中的数据作为地址寻址程序存储器中的数据 并将数据送入Smem指定的数据存储单元 WRITASmem 将Smem指定的数据存储单元中的数据 写入A所指定的程序存储单元 2020年4月20日 DSP原理及应用 17 第3章TMS320C54x的指令系统 用途 用于完成程序存储空间与数据存储空间之间的数据传输 注意 大多数 C54x用A的低16位作为程序存储器的地址 而 C548和 C549是以A的低23位作为程序存储器地址 C5402是以A的低20位作为程序存储器地址 上述两条指令重复使用时 累加器A自动增减 只能使用累加器A寻址程序空间 累加器A用来寻址程序空间 Smem用来寻址数据空间 2020年4月20日 DSP原理及应用 18 第3章TMS320C54x的指令系统 3 1 4直接寻址 利用数据指针DP和堆栈指针SP寻址 指令格式 2020年4月20日 DSP原理及应用 19 第3章TMS320C54x的指令系统 3 1 4直接寻址 特点 指令中只含有数据存储器的低7位地址 偏移地址dmad 16位数据存储器地址由基地址 数据页指针DP或堆栈指针SP 和偏移地址 dmad 共同构成 2020年4月20日 DSP原理及应用 20 第3章TMS320C54x的指令系统 3 1 4直接寻址 所要寻址的数据存储器16位地址是由基地址和偏移地址构成 基地址 数据页指针DP 9位 堆栈指针SP 当CPL 0时 数据存储器16位地址由DP和偏移地址dmad构成 当CPL 1时 数据存储器16位地址由SP加偏移地址dmad构成 2020年4月20日 DSP原理及应用 21 第3章TMS320C54x的指令系统 地址形成过程 当CPL 0时 高9位 低7位 16位数据存储器地址 2020年4月20日 DSP原理及应用 22 第3章TMS320C54x的指令系统 地址形成过程 当CPL 1时 高9位 低7位 16位数据存储器地址 SP dmad 2020年4月20日 DSP原理及应用 23 第3章TMS320C54x的指令系统 3 1 4直接寻址 DP地址的范围是从0 511 29 1 将存储器分成512页 以DP为基准的直接寻址是由DP值确定是512页中的哪一页 由dmad确定是该页中的哪一个单元 7位dmad范围是从0 127 每页有128个可以访问的单元 SP可以指向存储器中的任意一个地址 dmad可以指向当前页中具体的单元 从而允许访问存储器任意基地址中的连续的128个单元 2020年4月20日 DSP原理及应用 24 第3章TMS320C54x的指令系统 3 1 4直接寻址 直接寻址标识 变量前加 如 x 在偏移量前加 如 5 利用直接寻址可以在不改变DP或SP的情况下 随机寻址128个存储单元中的任何一个单元 直接寻址的优点 每条指令只需要一个字 2020年4月20日 DSP原理及应用 25 第3章TMS320C54x的指令系统 3 1 4直接寻址 直接寻址特点 所寻址数据存储器的16位地址是由DP或SP与7位偏移地址dmad构成 可在单周期寻址128个单元 寻址速度快 能进行流水线并行操作 用途 主要用于要求运算速度较快的场合 注意 上述两种直接寻址方式是相互排斥的 采用DP寻址时 要注意数据所在的页面指针 2020年4月20日 DSP原理及应用 26 第3章TMS320C54x的指令系统 3 1 5间接寻址 是根据辅助寄存器 AR0 AR7 给出的16位地址进行寻址 每一个辅助寄存器都可以用来寻址64K字数据存储空间中任何一个单元 两个辅助寄存器算术运算单元 ARAU0和ARAU1 可以根据辅助寄存器的内容进行操作 完成16位无符号数算术运算 2020年4月20日 DSP原理及应用 27 第3章TMS320C54x的指令系统 3 1 5间接寻址 可完成以下操作 用单指令对存储器进行16位数据的读操作或写操作 用单指令可以完成对两个独立的数据存储单元的读操作 用单指令可以读和写两个连续的数据存储单元 用单指令可以在读一个数据存储单元的同时 向另一个存储单元进行写操作 2020年4月20日 DSP原理及应用 28 第3章TMS320C54x的指令系统 3 1 5间接寻址 1 单操作数寻址 用来完成存储单元中16位单数据的读写操作 指令格式 2020年4月20日 DSP原理及应用 29 第3章TMS320C54x的指令系统 注1 寻址16位字时增 减量为1 32位字时增 减量为2 注2 这种方式只能用写操作指令 注3 这种方式不允许对存储器映像寄存器寻址 2020年4月20日 DSP原理及应用 30 第3章TMS320C54x的指令系统 注1 寻址16位字时增 减量为1 32位字时增 减量为2 2020年4月20日 DSP原理及应用 31 第3章TMS320C54x的指令系统 注3 这种方式不允许对存储器映像寄存器寻址 2020年4月20日 DSP原理及应用 32 第3章TMS320C54x的指令系统 1 单操作数寻址 1 位倒序寻址 用于快速傅氏变换算法FFT 位码顺序寻址 按照二进制递增规律寻址 如 0000 0001 0010 0011 1111 如 0000 1000 0100 1100 1111 位码倒序寻址 根据二进制递增码 按其位码倒序的规律进行寻址 2020年4月20日 DSP原理及应用 33 第3章TMS320C54x的指令系统 1 位倒序寻址 2020年4月20日 DSP原理及应用 34 第3章TMS320C54x的指令系统 2020年4月20日 DSP原理及应用 35 第3章TMS320C54x的指令系统 1 位倒序寻址 实现过程 根据FFT算法进行转换 按转换顺序将X 0 X 8 X 4 X 15 的转换结果存入数据存储器 按照位码倒序的方法寻址 可将乱序的转换结果进行整序输出 2020年4月20日 DSP原理及应用 36 第3章TMS320C54x的指令系统 2 位倒序寻址 实现方法 设AR2 01100000 作为基地址 指向X 0 的存储单元 设AR0 00001000 取FFT长度的一半 程序 RPT 15 重复执行下条指令16次PORTW AR2 0B PA 采用位码倒序的间接寻址 向PA口输出数据 2020年4月20日 DSP原理及应用 37 第3章TMS320C54x的指令系统 特殊的间接寻址功能 在存储器中设置一个缓冲区作为滑动窗 来保存最新的一批数据 并用新的数据覆盖旧的数据 实现循环寻址 循环缓冲区的长度R 由循环缓冲区长度寄存器BK确定 可通过指令设定 1 单操作数寻址 2 循环寻址 其指令 STM 1K BK 将立即数1K存放BK中 2020年4月20日 DSP原理及应用 38 第3章TMS320C54x的指令系统 长度为R的缓冲区必须从N位地址的边界开始 即循环缓冲区基地址的N个最低有效位必须为0 N应满足 2 循环寻址 2N R的最小整数 例如 缓冲区长度R 32 若2N 32 则N 6 缓冲区开始的地址 xxxxxxxxxx000000B缓冲区长度R 32装入循环缓冲长度寄存器BK中 循环寻址是以BK的值为模 对缓冲区长度R进行取模运算 2020年4月20日 DSP原理及应用 39 第3章TMS320C54x的指令系统 2 循环寻址 循环寻址通常是指定一个辅助寄存器ARx指向循环缓冲区 循环缓冲区的有效基地址 EFB 就是用户指定的辅助寄存器 ARx 的低N位置0后所得到的值 循环缓冲区的尾基地址 EOB 是通过用BK的低N代替ARx的低N位得到 循环缓冲区的偏移量 index 就是ARx的低N位 循环寻址的步长 step 就是加到辅助寄存器ARx或从辅助寄存器ARx中减去的值 2020年4月20日 DSP原理及应用 40 第3章TMS320C54x的指令系统 2 循环寻址 2020年4月20日 DSP原理及应用 41 第3章TMS320C54x的指令系统 2 循环寻址 注意 步长小于BK 其大小与所用指令有关 若步长为正 进行循环加寻址 否则进行循环减寻址 若BK 0 则为不作修正的辅助寄存器间接寻址 2020年4月20日 DSP原理及应用 42 第3章TMS320C54x的指令系统 2 循环寻址 循环寻址操作过程 首先要指定一个ARx指向循环缓冲区 根据ARx的低N位作为循环缓冲区的偏移量进行规定的寻址操作 寻址完成后 再根据循环寻址算法修正偏移量 并返回ARx的低N位 2020年4月20日 DSP原理及应用 43 第3章TMS320C54x的指令系统 3 1 5间接寻址 2 双操作数寻址 用于完成执行2次读操作或者1次读和1次的并行存储操作 用 表示 这些指令代码都是1个字长 而且只能以间接寻址方式进行操作 两个数据存储器操作数由Xmem和Ymem表示 Xmem 读操作数 Ymem 在两次读操作的指令中 表示一个读操作数 在一次读和一次写的指令中 表示写操作数 2020年4月20日 DSP原理及应用 44 第3章TMS320C54x的指令系统 2 双操作数寻址 用于完成执行2次读操作或者1次读和1次的并行存储操作 这些指令代码都是1个字长 而且只能以间接寻址方式进行操作 指令格式 2020年4月20日 DSP原理及应用 45 第3章TMS320C54x的指令系统 2 双操作数寻址 2020年4月20日 DSP原理及应用 46 第3章TMS320C54x的指令系统 2 双操作数寻址 在指令中 由于只有2位可以用于选择辅助寄存器 所以根据Xar或Yar的值可以选择4个寄存器 2020年4月20日 DSP原理及应用 47 第3章TMS320C54x的指令系统 间接寻址特点 通过辅助寄存器和辅助寄存器指针来寻址数据空间存储单元 并自动实现增量 减量 变址寻址 循环寻址 共有16种修正地址的方式 用途 用于需要按固定步长寻址的场合 3 1 5间接寻址 2020年4月20日 DSP原理及应用 48 第3章TMS320C54x的指令系统 3 1 6存储器映像寄存器寻址 是一种不考虑DP和SP为何值 以0为基地址来访问MMR的寻址方式 主要用于修改存储器映像寄存器的内容 1 采用直接寻址方式 2 采用间接寻址方式 高9位数据存储器地址置0 利用指令中的低7位地址直接访问MMR 高9位数据存储器地址置0 按照当前辅助寄存器ARx的低7位地址访问MMR 2020年4月20日 DSP原理及应用 49 第3章TMS320C54x的指令系统 3 1 6存储器映像寄存器寻址 C54x共有8条指令可以进行MMR寻址 LDMMMR dst 将MMR加载到累加器MVDMdmad MMR 数据存储器向MMR传送数据MVMDMMR dmad MMR向指定地址传送数据MVMMMMRx MMRy MMRx向MMRy传送数据POPMMMR 将数据从栈顶弹至MMRPSHMMMR 将MMR数据压入堆栈STLMsrc MMR 累加器低位存入MMRSTM lk MMR 长立即数lk存入MMR 2020年4月20日 DSP原理及应用 50 第3章TMS320C54x的指令系统 3 1 6存储器映像寄存器寻址 MMR寻址特点 寻址速度快 对MMR执行写操作开销小 可直接利用MMR的名称快速访问数据存储空间的0页资源 只能寻址数据空间的0页单元 用途 主要用于不改变DP SP的情况下 修改MMR中的内容 2020年4月20日 DSP原理及应用 51 第3章TMS320C54x的指令系统 3 1 7堆栈寻址 堆栈 当发生中断或子程序调用时 用来自动保存PC内容以及保护现场或传送参数 C54x的堆栈是向低地址生长 并由16位堆栈指针SP管理 SP总是指向栈顶 堆栈寻址 利用SP指针 按照先进后出的原则进行寻址 当进栈操作时 SP先减小 然后数据进入堆栈 当出栈操作时 数据先出栈 然后SP增加 2020年4月20日 DSP原理及应用 52 第3章TMS320C54x的指令系统 3 1 7堆栈寻址 进栈操作时 SP先减小 然后数据进入堆栈 SP SP 1 使SP指向03FEH SP 03FEH 数据进栈 SP 03FEH 13FF SP 出栈操作时 数据先出栈 然后SP增加 SP 03FEH 数据出栈 SP 13FF SP SP 1 使SP指向03FFH SP 2020年4月20日 DSP原理及应用 53 第3章TMS320C54x的指令系统 3 1 7堆栈寻址 采用堆栈寻址的指令 PSHDSmem 将Smem中的数据压入堆栈PSHMMMR 将MMR中的数据压入堆栈POPDSmem 将数据从栈顶弹至Smem中POPMMMR 将数据从栈顶弹至MMR中 2020年4月20日 DSP原理及应用 54 第3章TMS320C54x的指令系统 3 2TMS320C54x的指令表示方法 C54x的助记符指令是由操作码和操作数两部分组成 在进行汇编以前 操作码和操作数都是用助记符表示 例如 LD 0FFh A 将立即数0FF传送至A 操作码 源操作数 目的操作数 注释 2020年4月20日 DSP原理及应用 55 第3章TMS320C54x的指令系统 3 2 1指令系统中的符号 1 指令系统中的符号和缩略语 2020年4月20日 DSP原理及应用 56 第3章TMS320C54x的指令系统 1 指令系统中的符号和缩略语 2020年4月20日 DSP原理及应用 57 第3章TMS320C54x的指令系统 1 指令系统中的符号和缩略语 2020年4月20日 DSP原理及应用 58 第3章TMS320C54x的指令系统 1 指令系统中的符号和缩略语 2020年4月20日 DSP原理及应用 59 第3章TMS320C54x的指令系统 1 指令系统中的符号和缩略语 2020年4月20日 DSP原理及应用 60 第3章TMS320C54x的指令系统 1 指令系统中的符号和缩略语 2020年4月20日 DSP原理及应用 61 第3章TMS320C54x的指令系统 1 指令系统中的符号和缩略语 2020年4月20日 DSP原理及应用 62 第3章TMS320C54x的指令系统 1 指令系统中的符号和缩略语 2020年4月20日 DSP原理及应用 63 第3章TMS320C54x的指令系统 3 2 1指令系统中的符号 2 指令操作码符号和缩略语 2020年4月20日 DSP原理及应用 64 第3章TMS320C54x的指令系统 2 指令操作码符号和缩略语 2020年4月20日 DSP原理及应用 65 第3章TMS320C54x的指令系统 2 指令操作码符号和缩略语 例如 LDSmem SHIFT dst 单数据存储器操作数 移位后加载累加器 操作码 A Smem的存储地址 D 目的累加器位D 0dst为累加器AD 1dst为累加器B SHIFT 移位数区移位范围 16 15 2020年4月20日 DSP原理及应用 66 第3章TMS320C54x的指令系统 3 2 2指令系统中的运算符 1 指令系统中使用的记号 2020年4月20日 DSP原理及应用 67 第3章TMS320C54x的指令系统 2 指令系统的运算符号 2020年4月20日 DSP原理及应用 68 第3章TMS320C54x的指令系统 3 3TMS320C54x的指令系统 C54x的指令系统共有129条基本指令 由于操作数的寻址方式不同 由它们可以派生多至205条指令 按指令的功能可分成六大类 数据传送指令算术运算指令逻辑运算指令 程序控制指令并行操作指令重复操作指令 2020年4月20日 DSP原理及应用 69 第3章TMS320C54x的指令系统 3 3 1数据传送指令 是从存储器中将源操作数传送到目的操作数所指定的存储器中 包括 装载指令 存储指令 条件存储指令 混合装载和存储指令 2020年4月20日 DSP原理及应用 70 第3章TMS320C54x的指令系统 1 装载指令 即取数或赋值指令 用于将存储器内容或立即数赋给目的寄存器 共计21条 格式 操作码源操作数 移位数 目的操作数 功能 源操作数按移位数进行移位 将移位结果送入目的操作数指定的寄存器 DLDLDLDMLDRLDULTD LmemSARAM中的32位数据SmemSARAM中的16位数据XmemDARAM中的16位数据 K小于9位的短立即数 lK16位长立即数 k99位立即数 k55位立即数 k33位立即数src源累加器A或BMMR存储器映像寄存器 TS6位移位数 16 TS 31 1616位移位数 SHIFT5位移位数 16 SHIFT 15 SHFT4位移位数0 SHFT 15 ASM5位移位数 16 ASM 15 dst累加器A或B T暂存器 DPRAM页指针 ASM累加器移位方式位 ARP辅助寄存器指针 2020年4月20日 DSP原理及应用 71 第3章TMS320C54x的指令系统 1 装载指令 1 DLDLmem dst 功能 dst Lmem将Lmem所指定的单数据存储器中的32位数据送入累加器A或B中 2 LDSmem dst dst Smem将Smem所指定的单数据存储器中的16位数据送入累加器A或B中 功能 3 LDSmem TS dst dst Smem TS将Smem所指定的单数据存储器中的数据 按TS所给定的移位数 16 TS 31 移位 然后送入A或B 功能 2020年4月20日 DSP原理及应用 72 第3章TMS320C54x的指令系统 1 装载指令 4 LDSmem 16 dst 功能 dst Smem 16将Smem所指定的单数据存储器的数据左移16位后送入A或B 5 LDSmem SHIFT dst dst Smem SHIFT将Smem所指定的单数据存储器的数据 按SHIFT所给定的移位数移位 然后送入A或B 功能 6 LDXmem SHFT dst dst Xmem SHFT将Xmem所指定的双数据存储器的数据 按SHFT所给定的移位数移位 然后送入A或B 功能 2020年4月20日 DSP原理及应用 73 第3章TMS320C54x的指令系统 1 装载指令 功能 dst K将短立即数K送入累加器A或B 8 LD lk SHFT dst dst lk SHFT将长立即数lk移位后 送入累加器A或B 功能 9 LD lk 16 dst dst lk 16将长立即数lk左移16位后 送入累加器A或B 功能 7 LD K dst 2020年4月20日 DSP原理及应用 74 第3章TMS320C54x的指令系统 1 装载指令 10 LDsrc ASM dst 功能 dst src ASM将源累加器src中的数据 按ASM 16 SAM 15 所给定的移位数移位后 送入目的累加器dst 11 LDsrc SHIFT dst 功能 dst src SHIFT将源累加器src中的数据 按SHIFT所给定的移位数移位后 送入目的累加器dst 12 LDSmem T T Smem将Smem所指定的单数据器的数据送入暂存器T 功能 2020年4月20日 DSP原理及应用 75 第3章TMS320C54x的指令系统 1 装载指令 13 LDSmem DP DP Smem 8 0 将Smem所指定的单数据存储器的低9位数据 送入数据存储器页指针DP 功能 14 LD k9 DP 功能 DP k9将9位立即数送入DP 15 LD k5 ASM ASM k5将5位立即数送入累加器移位方式位ASM 功能 2020年4月20日 DSP原理及应用 76 第3章TMS320C54x的指令系统 1 装载指令 16 LD k3 ARP ARP k3将3位立即数送入ARP 3位辅助寄存器指针位 功能 17 LDSmem ASM 功能 ASM Smem 4 0 将Smem所指定的单数据存储器的低5位数据送入ASM 18 LDMMMR dst 功能 dst MMR将MMR寄存器中的数据 送入累加器dst 2020年4月20日 DSP原理及应用 77 第3章TMS320C54x的指令系统 1 装载指令 19 LDRSmem dst 功能 dst 31 16 rnd Smem 将Smem所指定的单数据存储器的数据舍入后送入累加器 20 LDUSmem dst 功能 dst uns Smem 将Smem所指定的单数据存储器的无符号数据 送入累加器 21 LTDSmem 功能 T Smem Smem 1 Smem将单数据存储器Smem的数据 送入寄存器T 并延时 2020年4月20日 DSP原理及应用 78 第3章TMS320C54x的指令系统 2 存储指令 是将源操作数或立即数存入指定存储器或寄存器 共计14条 格式 操作码源操作数 移位数 目的操作数 功能 源操作数按移位数进行移位 将移位结果存入目的存储器或寄存器 DSTSTSTHSTLSTLMSTM src源累加器A或BT暂存器TRN状态寄存器 lK16位长立即数 SHIFT5位移位数 16 SHIFT 15 SHFT4位移位数0 SHFT 15 ASM5位移位数 16 ASM 15 Smem16位单数据存储器操作数 Xmem16位双数据存储器操作数 MMR存储器映像寄存器 2020年4月20日 DSP原理及应用 79 第3章TMS320C54x的指令系统 存储指令 2020年4月20日 DSP原理及应用 80 第3章TMS320C54x的指令系统 3 条件存储指令 根据条件将源操作数存入目的存储器 共计4条指令 1 CMPSsrc Smem 功能 若src 31 16 src 15 0 则Smem src 31 16 若src 31 16 src 15 0 则Smem src 15 0 即比较累加器的高 低位 并存储最大值 2 SACCDsrc Xmem cond 若满足cond条件 则累加器值按ASM 16的差值移位 并存入Xmem中 功能 2020年4月20日 DSP原理及应用 81 第3章TMS320C54x的指令系统 3 条件存储指令 3 SRCCDXmem cond 功能 若满足cond条件 则将块重复计数器BRC的内容存入Xmem中 4 STRCDXmem cond 若满足cond条件 则将T寄存器中的内容存入Xmem中 功能 2020年4月20日 DSP原理及应用 82 第3章TMS320C54x的指令系统 4 混合装载和存储指令 用于完成数据存储器 程序存储器以及I O口之间的数据传输 共计12条 1 MVDDXmem Ymem 功能 Ymem Xmem将数据存储器Xmem中的数据传送到数据存储器Ymem中 2 MVDKSmem dmad dmad Smem将数据存储器Smem中的数据传送到以dmad为地址的数据存储器中 功能 3 MVDMdmad MMR 功能 MMR dmad将以dmad为地址的数据存储器中的数据传送到MMR中 2020年4月20日 DSP原理及应用 83 第3章TMS320C54x的指令系统 4 混合装载和存储指令 4 MVDPSmem pmad 功能 pmad Smem将数据存储器Smem中的数据传送到以pmad为地址的程序存储器中 5 MVKDdmad Smem 功能 Smem dmad将以dmad为地址的数据存储器中的数据传送到数据存储器Smem中 6 MVMDMMR dmad 功能 dmad MMR将MMR中的数据传送到以dmad为地址的数据存储器中 2020年4月20日 DSP原理及应用 84 第3章TMS320C54x的指令系统 4 混合装载和存储指令 7 MVMMMMRx MMRy 功能 MMRy MMRx将映像寄存器MMRx中的数据传送到MMRy中 8 MVPDpmad Smem 功能 Smem pmad将以pmad为地址的程序存储器中的数据传送到数据存储器Smem中 9 PORTRPA Smem 功能 Smem PA将以PA为地址的I O口中的数据传送到数据存储器Smem中 2020年4月20日 DSP原理及应用 85 第3章TMS320C54x的指令系统 4 混合装载和存储指令 10 PORTWSmem PA 功能 PA Smem将数据存储器Smem中的数据传送到以PA为地址的I O口中 11 READASmem 功能 Smem Pmem A 将以累加器A为地址的程序存储器中的数据传送到数据存储器Smem中 12 WRITASmem 功能 Pmem A Smem将数据存储器Smem中的数据传送到以累加器A为地址的程序存储器中 2020年4月20日 DSP原理及应用 86 第3章TMS320C54x的指令系统 3 3 2算术运算指令 算术运算指令是实现数学计算的重要指令集合 C54x的算术指令具有运算功能强 指令丰富等特点 包括 加法指令 ADD 减法指令 SUB 乘法指令 MPY 乘法 累加 减指令 MAC MAS 双字运算指令 DADD 特殊用途指令 2020年4月20日 DSP原理及应用 87 第3章TMS320C54x的指令系统 3 3 2算术运算指令 1 加法指令 C54x的加法指令共有13条 可完成两个操作数的加法运算 移位后的加法运算 带进位的加法运算和不带符号位扩展的加法运算 操作码 ADD ADDC ADDM ADDS 指令格式 操作码源操作数 移位数 目的操作数 源操作数 Smem Xmem Ymem lk src 移位数 TS 16 SHIFT SHFT ASM 目的操作数 src dst Smem 2020年4月20日 DSP原理及应用 88 第3章TMS320C54x的指令系统 1 加法指令 ADD SmemXmem lksrc ADDSmem srcADDSmem TS srcADDSmem 16 src dst ADDSmem SHIFT src dst 操作码源操作数指令格式 ADDXmem SHIFT srcADDXmem Ymem dst ADD lk SHFT src dst ADD lk 16 src dst ADDsrc SHIFT dst ADDsrc ASM dst 2020年4月20日 DSP原理及应用 89 第3章TMS320C54x的指令系统 1 加法指令 ADDC 操作码源操作数指令格式 Smem ADDCSmem src ADDM lk ADDC lk Smem ADDS Smem ADDCSmem src 2020年4月20日 DSP原理及应用 90 第3章TMS320C54x的指令系统 加法指令功能 2020年4月20日 DSP原理及应用 91 第3章TMS320C54x的指令系统 3 3 2算术运算指令 2 减法指令 C54x的减法指令共有13条 可完成两个操作数的减法运算 移位后的减法运算 带借位的减法运算 条件减法运算和不带符号位扩展的减法运算 SUBSUBBSUBCSUBS 指令格式 操作码源操作数 移位数 目的操作数 SmemXmemYmem lksrc TS16SHIFTSHFTASM srcdst 2020年4月20日 DSP原理及应用 92 第3章TMS320C54x的指令系统 2 减法指令 SUB SmemXmem lksrc SUBSmem srcSUBSmem TS srcSUBSmem 16 src dst SUBSmem SHIFT src dst 操作码源操作数指令格式 SUBXmem SHIFT srcSUBXmem Ymem dst SUB lk SHFT src dst SUB lk 16 src dst SUBsrc SHIFT dst SUBsrc ASM dst 2020年4月20日 DSP原理及应用 93 第3章TMS320C54x的指令系统 2 减法指令 SUBB 操作码源操作数目的操作数指令格式 Smem SUBBSmem src SUBC Smem SUBCSmem src SUBS Smem ADDCSmem src src src src 2020年4月20日 DSP原理及应用 94 第3章TMS320C54x的指令系统 减法指令功能 2020年4月20日 DSP原理及应用 95 第3章TMS320C54x的指令系统 3 乘法指令 C54x的指令系统提供了10条乘法运算指令 其运算结果都是32位的 存放在累加器A和B中 而参与运算的乘数可以是T寄存器 立即数 存储单元和累加器A或B的高16位 格式 操作码源操作数1 源操作数2 目的操作数 操作码 MPY MPYR MPYA MPYU SQUR 源操作数1 Smem Xmem lk 源操作数2 Ymem lk 目的操作数 dst 2020年4月20日 DSP原理及应用 96 第3章TMS320C54x的指令系统 3 乘法指令 MPY SmemXmem lk MPYSmem dstMPYSmem lk dst 操作码源操作数指令格式 MPYXmem Ymem dst MPY lk dst MPYA MPYAdst MPYASmem 2020年4月20日 DSP原理及应用 97 第3章TMS320C54x的指令系统 3 乘法指令 MPYR 操作码源操作数目的操作数指令格式 Smem MPYRSmem dst MPYU Smem MPYUSmem dst SQUR Smem SQURSmem dst dst dst dst A dst SQURA dst 2020年4月20日 DSP原理及应用 98 第3章TMS320C54x的指令系统 乘法指令功能 2020年4月20日 DSP原理及应用 99 第3章TMS320C54x的指令系统 4 乘法 累加和乘法 减法指令 这类指令共计22条 除了完成乘法运算外 还具有加法或减法运算 因此 在一些复杂的算法中 可以大大提高运算速度 参与运算的乘数可以是T寄存器 立即数 存储单元和累加器A或B的高16位 乘法运算结束后 再将乘积与目的操作数进行加法或减法运算 2020年4月20日 DSP原理及应用 100 第3章TMS320C54x的指令系统 4 乘法 累加和乘法 减法指令 格式 操作码源操作数1 源操作数2 目的操作数 操作码 MAC MACR MACA MACAR MACD MACP MACSU MAS MASR 源操作数1 Smem Xmem lk T 源操作数2 Ymem lk pmad 目的操作数 src dst B 2020年4月20日 DSP原理及应用 101 第3章TMS320C54x的指令系统 4 乘法 累加和乘法 减法指令 MAC SmemXmem lk MACSmem srcMACSmem lk src dst 操作码源操作数指令格式 MACXmem Ymem src dst MAC lk src dst MACR MACRSmem src MACRXmem Ymem src dst SmemXmem 2020年4月20日 DSP原理及应用 102 第3章TMS320C54x的指令系统 4 乘法 累加和乘法 减法指令 操作码源操作数1源操作数2指令格式 MACA MACASmem B MACAT src dst SmemT MACAR MACARSmem B MACART src dst SmemT MACD MACDSmem pmad src Smem pmad MACP MACPSmem pmad src Smem pmad MACSU MACSUXmem Ymem src Xmem Ymem 2020年4月20日 DSP原理及应用 103 第3章TMS320C54x的指令系统 4 乘法 累加和乘法 减法指令 操作码源操作数指令格式 MAS MASSmem src MASXmem Ymem src dst SmemXmem MASR MASRSmem src MASRXmem Ymem src dst SmemXmem 2020年4月20日 DSP原理及应用 104 第3章TMS320C54x的指令系统 乘法 累加和乘法 减法指令功能 2020年4月20日 DSP原理及应用 105 第3章TMS320C54x的指令系统 乘法 累加和乘法 减法指令功能 2020年4月20日 DSP原理及应用 106 第3章TMS320C54x的指令系统 乘法 累加和乘法 减法指令功能 2020年4月20日 DSP原理及应用 107 第3章TMS320C54x的指令系统 5 双字算术运算指令 双字算术运算指令共计6条 完成双16位数的加碱运算 DADDLmem src dst 功能 若C16 0 则完成双精度加法dst Lmem src 若C16 1 则双16位数加法dst 39 16 Lmem 31 16 src 31 16 dst 15 0 Lmem 15 0 src 15 0 2020年4月20日 DSP原理及应用 108 第3章TMS320C54x的指令系统 5 双字算术运算指令 DADSTLmem dst 功能 若C16 0 则完成双精度加法dst Lmem T 16 T 若C16 1 则双16位数加 减法dst 39 16 Lmem 31 16 Tdst 15 0 Lmem 15 0 T 2020年4月20日 DSP原理及应用 109 第3章TMS320C54x的指令系统 5 双字算术运算指令 DRSUBLmem src 功能 若C16 0 则完成双精度减法src Lmem src 若C16 1 则完成双16位数减法src 39 16 Lmem 31 16 src 31 16 src 15 0 Lmem 15 0 src 15 0 2020年4月20日 DSP原理及应用 110 第3章TMS320C54x的指令系统 5 双字算术运算指令 DSADTLmem dst 功能 功能 若C16 0 则完成双精度减法dst Lmem T 16 T 若C16 1 则完成双16位数加 减法dst 39 16 Lmem 31 16 Tdst 15 0 Lmem 15 0 T 2020年4月20日 DSP原理及应用 111 第3章TMS320C54x的指令系统 5 双字算术运算指令 DSUBLmem src 功能 若C16 0 则双精度方式 累加器减去32位数src src Lmem 若C16 1 则双16位方式 完成双16位数减法src 39 16 src 31 16 Lmem 31 16 src 15 0 src 15 0 Lmem 15 0 2020年4月20日 DSP原理及应用 112 第3章TMS320C54x的指令系统 5 双字算术运算指令 DSUBTLmem dst 功能 功能 若C16 0 则双精度操作数减去T值dst Lmem T 16 T 若C16 1 则双16位操作数减去T值dst 39 16 Lmem 31 16 Tdst 15 0 Lmem 15 0 T 2020年4月20日 DSP原理及应用 113 第3章TMS320C54x的指令系统 6 特殊运算指令 特殊运算指令共15条 2020年4月20日 DSP原理及应用 114 第3章TMS320C54x的指令系统 6 特殊运算指令 2020年4月20日 DSP原理及应用 115 第3章TMS320C54x的指令系统 3 3 3逻辑运算指令 C54x的指令系统具有丰富的逻辑运算指令 包括 与运算指令 AND 或运算指令 OR 异或运算指令 XOR 移位操作指令 SHIFT 测试操作指令 TEST 2020年4月20日 DSP原理及应用 116 第3章TMS320C54x的指令系统 3 3 3逻辑运算指令 1 与运算指令 操作码 AND ANDM 指令格式 操作码源操作数 移位数 目的操作数 源操作数 Smem lk src 移位数 16 SHIFT SHFT 目的操作数 src dst Smem 2020年4月20日 DSP原理及应用 117 第3章TMS320C54x的指令系统 1 与运算指令 与逻辑运算指令共有5条 2020年4月20日 DSP原理及应用 118 第3章TMS320C54x的指令系统 3 3 3逻辑运算指令 2 或运算指令 指令格式 操作码源操作数 移位数 目的操作数 1 Smem SHFT src 或运算指令共计5条 OR 2 lk src dst OR 16 3 lk src dst OR SHIFT 4 src dst OR 5 lk Smem ORM 2020年4月20日 DSP原理及应用 119 第3章TMS320C54x的指令系统 2 或运算指令 2020年4月20日 DSP原理及应用 120 第3章TMS320C54x的指令系统 3 3 3逻辑运算指令 3 异或运算指令 指令格式 操作码源操作数 移位数 目的操作数 异或运算指令共计5条 2020年4月20日 DSP原理及应用 121 第3章TMS320C54x的指令系统 3 异或运算指令 2020年4月20日 DSP原理及应用 122 第3章TMS320C54x的指令系统 3 3 3逻辑运算指令 4 移位操作指令 指令格式 操作码源操作数 移位数 目的操作数 C54x共有6条移位指令 可实现带进位位循环移位 带TC位循环左移 算术移位 条件移位和逻辑移位等操
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 解析中国共产党廉洁自律准则中国共产党纪律处分条例
- 政治 (道德与法治)一年级下册16 大家一起来第1课时教案
- 美国总统选举流程-英文介绍
- 2024年中考数学真题分类汇编(全国):专题26 数据的收集、分析(45题)(学生版)
- 全球合作伙伴合同
- 餐厅经营承包合同协议书范文
- 经销商代理售后服务合同
- 夏季安全用电知识培训
- 深圳二手住宅买卖合同范本
- 2025年陕西省高考英语适应性试卷(三)
- 药事管理法律法规相关知识培训
- 地毯织造技艺(北京宫毯织造技艺)
- 第4章-选区激光熔化工艺及材料课件
- 2023届高考写作指导:“寻找温暖”与“成为灯火”课件
- 2022年上海市工业技术学校招聘考试真题
- 长期护理保险技能比赛理论试题库300题(含各题型)
- 二重积分的概念与性质演示文稿
- 医院双重预防机制建设工作完成情况
- 大学生劳动教育通论知到章节答案智慧树2023年大连海洋大学
- 2003高教社杯全国大学生数学建模竞赛B题竞赛参考答案
- AB股公司章程(同股不同权)
评论
0/150
提交评论