DSP并发数据和指令访问(循环迭代)

时间:2012-08-25 18:34:52

标签: signal-processing computer-architecture processing-instruction

我试图理解DSP架构和指令执行中的这个基本概念:

“基于哈佛架构,CPU可以同时获取数据和指令字......-指令提取可以在以前进行 指令执行而不是等待完成 指令执行或必须停止处理器 在获取下一条指令时进行操作。“

然而由于我对计算机体系结构的了解有限,这个问题出现在我面前: “如果要操作的数据(操作数)是由指令字指定的,那么它怎么可能!?从第一个循环开始迭代,从prog。内存加载instr。然后应该在下一个加载两个操作数周期,这里有歧义: 现在它是执行时间/周期转,所以如果在加载数据时,下一个instr。正在同时加载,之前加载的instr。失去了,因此执行的可能会发生什么!?或者我错了,通过将数据从内存加载到数据寄存器立即执行!?“

**代码示例: MPYF3 *(AR0)++,*(AR1)++,R0

*附录: 我认为,由于没有寄存器文件所以没有任何数据加载到任何寄存器 - 直接通过内存完成!! 所以在我看来,经过第一次instr。已经在下一个周期中获取了由prev指定的所需数据(操作数)。 INSTR。由功能单元通过内存操纵(instr.exec。),同时下一个instr。获取字,并且操作数的地址也被更新(由于通过地址寄存器ALU的优化);所有这些都是因为每个操作(数据访问,算术运算,地址更新,指令获取)都是通过独特的物理架构进行处理的。

有没有人可以向我保证这个我的解释!? 非常感谢在DSP哈佛架构中使用并发数据和指令访问的循环迭代的典型指令的解释。

提前致谢

0 个答案:

没有答案