普林斯頓結構 VS 哈佛結構
1. 馮·諾依曼結構
馮·諾依曼結構,又稱為普林斯頓體系結構,是一種將程序指令存儲器和數(shù)據(jù)存儲器合并在一起的存儲器結構。取指令和取操作數(shù)都在同一總線上,通過分時復用的方式進行;缺點是在高速運行時,不能達到同時取指令和取操作數(shù),從而形成了傳輸過程的瓶頸。由于程序指令存儲地址和數(shù)據(jù)存儲地址指向同一個存儲器的不同物理位置,因此程序指令和數(shù)據(jù)的寬度相同,如英特爾公司的8086中央處理器的程序指令和數(shù)據(jù)都是16位寬。
目前使用馮·諾依曼結構的CPU和微控制器有很多。其中包括英特爾公司的8086及其他CPU,TI的MSP430處理器,ARM公司的ARM7,MIPS公司的MIPS處理器。
2. 哈佛結構
哈佛結構是一種將程序指令存儲和數(shù)據(jù)存儲分開的存儲器結構,它的主要特點是將程序和數(shù)據(jù)存儲在不同的存儲空間中,即程序存儲器和數(shù)據(jù)存儲器是兩個獨立的存儲器,每個存儲器獨立編址、獨立訪問,目的是為了減輕程序運行時的訪存瓶頸。

如圖,哈佛結構的計算機由CPU、程序存儲器和數(shù)據(jù)存儲器組成,程序存儲器和數(shù)據(jù)存儲器采用不同的總線,從而提供了較大的存儲器帶寬,使數(shù)據(jù)的移動和交換更加方便,尤其提供了較高的數(shù)字信號處理性能。
目前使用哈佛結構的中央處理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,還有摩托羅拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的AVR系列和安謀公司的ARM9、ARM10和ARM11。
3. 總結
隨著CPU設計的發(fā)展,流水線的增加,指令和數(shù)據(jù)的互斥讀取影響CPU指令執(zhí)行的scale程度。哈佛結構中數(shù)據(jù)存儲器與程序代碼存儲器分開,各自有自己的數(shù)據(jù)總線與地址總線,取操作數(shù)與取指令能同時進行。但這是需要CPU提供大量的數(shù)據(jù)線,因而很少使用哈佛結構作為CPU外部構架來使用。對于CPU內(nèi)部,通過使用不同的數(shù)據(jù)和指令cache,可以有效的提高指令執(zhí)行的效率,因而目前大部分計算機體系都是在CPU內(nèi)部的使用哈佛結構,在CPU外部使用馮·諾依曼結構。
原文鏈接:http://blog.csdn.net/skywalker_leo/article/details/7819463


































