第3章 TMS320C55x的指令系统 AR间接寻址控制模式(续) ARn未被修改。ARn被作为基指针,TO 6 *ARn (TO/ARO) 或AR0中16位带符号常数被作为偏移量 ARn未被修改。ARn被作为基指针,16位 7 *ARn(#K16) 带符号常数(k16)被作为偏移量 8 *+ARn(#K16) 在地址生成之前,AR加上16位带符号常 数(k16) 9 *ARn(short(#k3)) ARn未被修改。ARn被作为基指针,3位 带符号常数(k13)被作为偏移量 2010年7月18日 TMS320C55xDSP原理及应用 21
第3章 TMS320C55x的指令系统 2,双AR间接寻址模式 双AR间接寻址模式可以通过8个辅助寄存器(AR0~AR7)同时 访问两个数据存储单元,与单个AR间接访问数据空间一样,CPU使用 一个扩展辅助寄存器产生23位地址。双AR间接寻址可以实现以下功能 (1)执行一条可完成两个16位数据空间访问的指令。在这种情况下, 两个数据存储操作数在指令中为Xmem和Ymem。例如: ADD Xmem,Ymem,ACx (2)并行执行两条指令。在这种情况下,必须每条指令访问一个存储 数据,操作数在指令指令中是Smem或Lmem。 MOV Smem,dst ‖AND Smem,src,dst 双AR间接寻址操作数是AR间接寻址操作数的子集,而ARMS状态 位不影响双AR间接寻址的操作。 2010年7月18日 TMS320C55xDSP原理及应用 22
第3章 TMS320C55x的指令系统 双AR间接寻址操作数 序号 操作数 地址修改 1 *ARn ARn未修改 在生成地址之后增加:16位操作,ARn=ARn+1 2 *ARn+ 32位操作,ARn=ARn+2 在生成地址之后减少:16位操作,ARn=ARn-1 3 *ARn- 32位操作,ARn=ARn-2 在生成地址之后,ARn加上T0或AR0中16位带 符号的常数: 4 *(ARn +TO/ARO) 如果C54CM=0,ARn=ARn+T0 如果C54CM=1,ARn=ARn+AR0 2010年7月18日 TMS320C55xDSP原理及应用 23
第3章 TMS320C55x的指令系统 双AR间接寻址操作数(续) 序号 操作数 地址修改 在生成地址之后,ARn减去T0或AR0中16位带符号 *(ARn-TO/AR 的常数: 5 0) 如果C54CM=0,ARn=ARn-T0 如果C54CM=1,ARm=ARn-AR0 *ARn ARn未被修改。ARn被作为基指针,T0或AR0中16 6 (TO/ARO) 位带符号常数被作为偏移量 在生成地址之后,ARn加上T1中16位带符号的常数 7 *(ARn+T1) ARn =ARn +T1 8 *(ARn-T1) 在生成地址之后,ARn减去T1中16位带符号的常数: ARn=ARn一TI 2010年7月18日 TMS320C55xDSP原理及应用 24
第3章 TMS320C55x的指令系统 3,CDP间接寻址模式 CDP间接寻址模式使用系数数据指针(CDP)对数据空间、寄存器位和 /O空间进行访问。 序号 操作数 地址修改 1 *CDP CDP未修改 在生成地址之后增加:16位操作,CDP=CDP+1 2 *CDP+ 32位操作,CDP=CDP+2 在生成地址之后减少:16位操作,CDP=CDP-1 3 *CDP- 32位操作,CDP=CDP-2 CDP未被修改。CDP被作为基指针,16位带符号 4 *CDP(#K16) 常数(K16)被作为偏移量 在地址生成之前,CDP加上16位带符号常数(K16 5 *+CDP(#K16 )CDP=CDP+K16 2010年7月18日 TMS320C55xDSP原理及应用 25