我想了解DSP架構和指令執行這一基本概念:DSP並行數據和指令訪問(重複以上週期)
「基於哈佛架構,CPU可以同時獲取數據和指令字。 ..-指令讀取可以在前面的 指令執行期間發生,並且不等待 指令執行結束,或者在獲取下一條指令時不得不停止處理器的 操作。
但是由於我對計算機體系結構的知識有限,這個問題引起了我的注意: 「如果要操作的數據(操作數)是由指令詞指定的,那怎麼可能!?通過第一次迭代循環中,instr從程序存儲器加載,然後這兩個操作數應該在下一個循環中加載,這裏是不明確的: 現在是執行時間/循環轉動,所以如果在加載數據時,下一個instr。被加載的同時,先前加載的instr。丟失了,從而會發生什麼事情呢?或者我錯了,執行是通過從內存中加載數據到數據寄存器立即完成的!?「
**代碼例如: MPYF3 *(AR0)++,*(AR1)++,R0
*編: 我想,因爲不存在的寄存器文件,所以沒有任何負載數據到任何寄存器 - 直接通過內存完成! 所以在我看來,在第一次instr後。已經在下一個週期中獲取了prev指定的所需數據(操作數)。 INSTR。是由功能單元通過記憶操縱(instr。exec。),同時又是下一個instr。字被提取,並且操作數的地址也被更新(由於優秀,通過地址寄存器ALU);所有這些都是因爲這些操作(數據訪問,算術運算,地址更新,取指令)都是通過獨特的物理體系結構進行處理的。
有沒有人可以向我保證我的解釋!? 在DSP Harvard體系結構中使用併發數據和指令訪問的循環迭代的典型指令的解釋非常感謝。
預先感謝