哈佛結構和馮·諾依曼結構的區別


哈佛結構和馮·諾依曼結構的區別

一、哈佛結構 

  (英語:Harvard architecture)是一種將程序指令儲存和數據儲存分開的存儲器結構中央處理器首先到程序指令儲存器中讀取程序指令內容,解碼后得到數據地址,再到相應的數據儲存器中讀取數據,並進行下一步的操作(通常是執行)

指令儲存和數據儲存分開,數據和指令的儲存可以同時進行,可以使指令和數據有不同的數據寬度,如Microchip公司的PIC16芯片的程序指令是14位寬度,而數據是8位寬度。哈佛結構的微處理器通常具有較高的執行效率。其程序指令和數據指

令分開組織和儲存的,執行時可以預先讀取下一條指令。

  目前使用哈佛結構的中央處理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,還有摩托羅拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的AVR系列和安謀公司的ARM9、ARM10和ARM11。

  與馮.諾曼結構處理器比較,哈佛結構處理器有兩個明顯的特點: 

  1、使用兩個獨立的存儲器模塊,分別存儲指令和數據,每個存儲模塊都不允許指令和數據並存; 

  2、使用獨立的兩條總線,分別作為CPU與每個存儲器之間的專用通信路徑,而這兩條總線之間毫無關聯。 

  改進的哈佛結構,其結構特點為: 

  1、使用兩個獨立的存儲器模塊,分別存儲指令和數據,每個存儲模塊都不允許指令和數據並存,以便實現並行處理; 

  2、具有一條獨立的地址總線和一條獨立的數據總線,利用公用地址總線訪問兩個存儲模塊(程序存儲模塊和數據存儲模塊),公用數據總線則被用來完成程序存儲模塊或數據存儲模塊與CPU之間的數據傳輸;

 

二、馮·諾伊曼結構

 

  (von Neumann architecture),也稱普林斯頓結構,是一種將程序指令存儲器和數據存儲器合並在一起的電腦設計概念結構。本詞描述的是一種實作通用圖靈機的計算裝置,以及一種相對於平行計算的序列式結構參考模型(referential

model)本結構隱約指導了將儲存裝置與中央處理器分開的概念,因此依本結構設計出的計算機又稱儲存程式型電腦。

  最早的計算機器僅內涵固定用途的程式。現代的某些計算機依然維持這樣的設計方式,通常是為了簡化或教育目的。例如一個計算器僅有固定的數學計算程式,它不能拿來當作文書處理軟件,更不能拿來玩游戲。若想要改變此機器的程式,你必

須更改線路、更改結構甚至重新設計此機器。當然最早的計算機並沒有設計的那個可編程化。當時所謂的“重寫程式”很可能指的是紙筆設計程式步驟,接着制訂工程細節,再施工將機器的電路配線或結構改變。

  而儲存程式型電腦的概念改變了這一切。借由創造一組指令集結構,並將所謂的運算轉化成一串程式指令的執行細節,讓此機器更有彈性。借着將指令當成一種特別型態的靜態資料,一台儲存程式型電腦可輕易改變其程式,並在程控下改變其運

算內容。馮·諾伊曼結構與儲存程式型電腦是互相通用的名詞,其用法將於下述。而哈佛結構則是一種將程式資料與普通資料分開儲存的設計概念,但是它並未完全突破馮.諾伊曼架構。

  儲存程式型概念也可讓程式執行時自我修改程式的運算內容。本概念的設計動機之一就是可讓程式自行增加內容或改變程式指令的內存位置,因為早期的設計都要使用者手動修改。但隨着索引暫存器與間接位置存取變成硬件結構的必備機制后,

本功能就不如以往重要了。而程式自我修改這項特色也被現代程式設計所棄揚,因為它會造成理解與除錯的難度,且現代中央處理器的管線與快取機制會讓此功能效率降低。

  從整體而言,將指令當成資料的概念使得組合語言、編譯器與其他自動編程工具得以實現;可以用這些“自動編程的程式”,以人類較易理解的方式編寫程式[1];從局部來看,強調I/O的機器,例如Bitblt,想要修改畫面上的圖樣,以往是認為若沒

有客制化硬件就辦不到。但之后顯示這些功能可以借由“執行中編譯”技術而有效達到。

  此結構當然有所缺陷,除了下列將述的馮·諾伊曼瓶頸之外,修改程式很可能是非常具傷害性的,無論無意或設計錯誤。在一個簡單的儲存程式型電腦上,一個設計不良的程式可能會傷害自己、其他程式甚或是操作系統,導致當機。緩沖區溢位

就是一個典型例子。而創造或更改其他程式的能力也導致了惡意軟件的出現。利用緩沖區溢位,一個惡意程式可以覆蓋呼叫堆棧(Call stack)並覆寫程式碼,並且修改其他程式檔案以造成連鎖破壞。內存保護機制及其他形式的存取控制可以保護意外

或惡意的程式碼更動。

  馮.諾曼結構處理器具有以下幾個特點: 
  必須有一個存儲器; 
  必須有一個控制器; 
  必須有一個運算器,用於完成算術運算和邏輯運算; 
  必須有輸入和輸出設備,用於進行人機通信。

 

轉自:https://blog.csdn.net/yangguoyu8023/article/details/72082557?utm_medium=distribute.pc_relevant.none-task-blog-title-2&spm=1001.2101.3001.4242


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM