结构2—指令系统.pptVIP

  • 10
  • 0
  • 约9.94千字
  • 约 68页
  • 2020-11-10 发布于浙江
  • 举报
DSP技术与应用(三) 本次课程内容 指令系统及汇编语言格式 TMS320C6000公共指令集 各类指令具体介绍 资源对公共指令集的限制 指令系统 汇编语句格式 Label || [ ] Instruction Unit Operands;comments *Label 标号:如果有标号,它表示一个特殊的地址或者是包含指令或数据的存储单元地址,标号必须从第一列开始。 *|| 并行双竖线:表示当前指令是否和前面的指令并行执行,即在同一时钟周期内运行。 *[]为可选项,它使相关指令是有条件的,而A1,A2,B1和B2可用作条件寄存器。 *Instruction 指令段可以是汇编器指令或者汇编指令的助记符,汇编器指令就是汇编器的命令。 助记符是DSP工作时一条真正执行的指令,助记符或汇编器指令不能从第一列开始。 *Unit段可选,可以是CPU内8个功能单元中的任一个单元。 *Operands操作对象 *comments注释:当注释从第一列开始时,语句前面可以用分号或星号,而从其他列开始的注释语句,必须在注释语句前面用分号。 C6000的乘加代码的汇编格式 C6000的乘加代码的汇编格式 ①指令在存储空间中的地址,16进制数 ②指令的二进制机器码,16进制数 ③指令的助记符 ④指令执行的功能单元和数据通路。 ⑤操作数。其中,⑥是立即数;⑦为放在寄存器中的操作数;⑧未放在存储器中的操作数,具体来说,是放在存储器的数据段中的操作数。C6000的数据段的基址为DP,DP放在寄存器B14中。 TMS320C6000公共指令集概述 指令与功能单元之间的映射关系 延迟序列 指令操作码映射图 并行操作 条件操作 指令与功能单元映射关系 C6000汇编语言的每一条指令只能在一定的功能单元执行,因此就形成了指令和功能单元之间的映射关系。 一般而言, 与乘法相关的指令都是在.M单元执行; 需要产生数据存储器地址的指令,则要用.D功能单元; 算术逻辑运算大多在.L与.S单元执行 。 指令与功能单元映射关系 延迟序列 C6000采用流水线结构,从指令进入CPU的取值单元到指令执行完毕,需要多个时钟周期。 C6000所宣传的单指令周期是指它最高的流水线处理速度。 由于指令复杂程度不同,各种指令执行周期也不相同,程序员需了解指令执行的相对延迟。 指令的执行速度可以用指令延迟间隙来说明。 延迟间隙在数量上等于从指令的源操作数被读取直到执行的结果可以被访问所需要的指令周期数。 延迟序列 定点指令的操作可以用延迟序列的形式来描述。延迟序列的数目等价于取出源操作数到结果可读所须的指令周期数。 C6000所有的公共指令都只有一个功能单元等待时间,这意味着每一个周期功能单元都能够开始一个新指令。单周期功能单元等待时间的另一术语是单周期吞吐量。 指令操作码映射图 C6000的每一条指令都是32位。 每一条指令都有自己的代码。 把汇编语句变成代码,由汇编器完成;把代码反汇编成汇编语句也是由专用工具程序完成。 例1.一条C6000的指令和其机器码 C6000的一条指令:ADD.D2 B5,B4,B4 该指令所属指令类为: ADD(.D2 or .D1) src2,src1,dst1 该指令的二进制机器码为 00000010000101001000100001000010, 这条指令共有9个域。 并行操作 取指包:八条32bit指令 取指包格式如下,且取指包被对齐到256位(8个字)的地址边界。 每条指令的并行执行位(p位)控制本条指令是否与取指包中的其他指令并行执行: p =1 与下条指令并行 p =0 下条指令在当前指令的下个周期执行 即 如果I指令的P位为1,那么i+1条指令将与i条指令并行执行(在同一指令周期内);如果p位为0,那么i+1指令在i指令之后执行。 并行操作 一个执行包最多包含8条指令,而且执行包中的每条指令必须使用不同的功能单元。 一个执行包还能跨越8个字的边界,因此取指包中的最后一个P位总是被置为0.每个取指包重新起动一个执行包。 取指包有三种类型的P位模式:全串、全并、部分串。 并行操作——全串 并行操作——全并 并行操作——部分串 并行代码举例 在汇编语言中用”||“来指出该条指 令与前一条指令并行执行。 指令代码描述如右所示。 如果跳转到执行包中的情况发生, 那么所有在低地址的指令将被忽略。 即:如果有转移指令使程序在执行过程中由外跳 转至某一执行包中间的某一条指令,则程序从该 条指令继续执行,该执行包中跳转目标之前的指 令将被忽略。以图例,如果跳转目标是指令D, 则只有D和E将被执行,虽然C和D处于同一执行 包中,它也得不到执行,至于指令A和B,由于处 于前一执行包,更不会得到执行。如果程序的运 行结

文档评论(0)

1亿VIP精品文档

相关文档