數字信號處理一般需要較大的運算量和較高的運算速度,為了提高數據吞吐量,在數字信號處理器中大多采用哈佛結構.
與馮.諾曼結構處理器比較,哈佛結構處理器有兩個明顯的特點:
使用兩個獨立的存儲器模塊,分別存儲指令和數據,每個存儲模塊都不允許指令和數據並存;
使用獨立的兩條總綫,分別作為cpu與每個存儲器之間的專用通信路徑,而這兩條總綫之間毫無關聯。
後來,又提出了改進的哈佛結構.
其結構特點為:
使用兩個獨立的存儲器模塊,分別存儲指令和數據,每個存儲模塊都不允許指令和數據並存,以便實現並行處理;
具有一條獨立的地址總綫和一條獨立的數據總綫,利用公用地址總綫訪問兩個存儲模塊(程序存儲模塊和數據存儲模塊),公用數據總綫則被用來完成程序存儲模塊或數據存儲模塊與cpu之間的數據傳輸;
兩條總綫由程序存儲器和數據存儲器分時共用。
在典型情況下,完成一條指令需要3個步驟,即:取指令、指令譯碼和執行指令。從指令流的定時關係也可看出馮.諾曼結構與哈佛結構處理方式的差別。舉一個最簡單的對存儲器進行讀寫操作的指令,指令1至指令3均為存、取數指令,對馮.諾曼結構處理器,由於取指令和存取數據要從同一個存儲空間存取,經由同一總綫傳輸,因而它們無法重疊執行,衹有一個完成後再進行下一個。
如果采用哈佛結構處理以上同樣的3條存取數指令,如下圖所示,由於取指令和存取數據分別經由不同的存儲空間和不同的總綫,使得各條指令可以重疊執行,這樣,也就剋服了數據流傳輸的瓶頸,提高了運算速度。
哈佛結構強調了總的係統速度以及通訊和處理器配置方面的靈活性。 |