首页 理论教育 DSP原理与应用:当前辅助寄存器介绍

DSP原理与应用:当前辅助寄存器介绍

时间:2023-06-29 理论教育 版权反馈
【摘要】:在间接寻址方式中,数据存储单元可以通过当前辅助寄存器内容所代表的16位地址进行访问。以间接寻址方式寻址时,辅助寄存器和地址可以有选择地进行增量、减量、偏移等修改,还提供反向进位寻址。间接寻址共有7种类型,见表3-3。[例3-2] 间接寻址指令。

DSP原理与应用:当前辅助寄存器介绍

在间接寻址(Indire ct Addre ssing)方式中,数据存储单元可以通过当前辅助寄存器(Auxilia ry Register,AR)内容所代表的16位地址进行访问。16位的辅助寄存器AR0~AR7作为数据指针,由3位的辅助寄存器指针ARP(Auxilia ry Register Pointe r)选择指令使用哪个辅助寄存器作为间接寻址寄存器。以间接寻址方式寻址时,辅助寄存器和地址可以有选择地进行增量、减量、偏移等修改,还提供反向进位寻址。

1.当前辅助寄存器

间接寻址的符号‘*’表示当前使用的辅助寄存器(Curre nt AR)即当前AR,它由寄存器ST0中的位15~13即ARP确定。ARP有3位,可以取值0~7,分别表示AR0~AR7。改变ARP的值就可以改变当前使用的辅助寄存器。

例如:

978-7-111-36250-0-Chapter03-12.jpg

2.间接寻址类型

间接寻址的当前辅助寄存器存放的是数据存储器单元的地址,还可以通过在指令中修改辅助寄存器来改变寻址单元。具体的修改方式有:地址加1或减1、用AR0作为偏移量等。间接寻址共有7种类型,见表3-3。

3-3 间接寻址类型

978-7-111-36250-0-Chapter03-13.jpg

3.下一个辅助寄存器

除了可以修改当前辅助寄存器指令外,许多指令还可以指定下一个寄存器(Next AR),作为下一条指令的当前辅助寄存器。

例如:

978-7-111-36250-0-Chapter03-14.jpg(www.xing528.com)

4.反向进位间接寻址

反向进位间接寻址通常用于FFT算法的数据重新排序,这种方式可以大大提高程序的执行速度和存储器的利用效率。通常使用时,AR0被初始化为FFT点数之半,当前辅助寄存器指向存放FFT数据的地址。反向进位寻址将AR0加到当前辅助寄存器中,地址以反向进位方式产生。即两者相加时,进位是从左向右反向传递的。例如:1010和1100的反向进位加法的结果为0001。

考虑辅助寄存器的低8位,设当前辅助寄存器AR1的值为00110000B,AR0的值为00001000B,下面的例子给出了反向进位寻址中AR1值修改的顺序和修改后AR1的值。

978-7-111-36250-0-Chapter03-15.jpg

位模式和反向进位模式与AR1低4位的关系,见表3-4。

3-4 反向进位寻址

978-7-111-36250-0-Chapter03-16.jpg

5.间接寻址举例

[例3-1] 间接寻址指令。

978-7-111-36250-0-Chapter03-17.jpg

[例3-2] 间接寻址指令。

978-7-111-36250-0-Chapter03-18.jpg

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈