Can you summarize the following document?
        
  在哈佛架構,兩個暫存器不需要有共同的特徵。特別是,字寬、定時、實現技術和記憶體地址都可以不同。在一些系統中,指令可以儲存在只讀儲存器(ROM)中,而資料儲存器一般需要讀寫儲存器(RAM等)。在一些系統中,指令儲存器比資料儲存器多,因此指令地址比資料地址更寬。

  純馮諾依曼架構下的CPU可以讀取指令或讀/寫記憶體資料,它們都不能使指令和資料同時使用同一個的匯流排系統。使用哈佛結構的計算機中CPU,即使沒有快取的情況下也可以在讀取指令的同時進行資料訪問。由於指令和資料訪問不使用同一個記憶體通道,因此哈佛結構的計算機可以在相同的電路複雜度下有更好的表現。  同時,哈佛架構機擁有不同的程式碼和資料的地址空間:指令的零地址和資料的零地址是不同的。指令的零地址可能是二十四位的值,而資料的零地址可能是一個八位位元組,而非二十四位值的一部分。

  改進的哈佛架構機更像哈佛架構機,但它放鬆了指令和資料之間嚴格分離的這一特徵,仍然允許CPU同時訪問兩個(或更多)記憶體匯流排。最常見的修改包括由公共地址空間支援的單獨指令和資料快取記憶體。當它作為一個純粹的哈佛機時,CPU通過快取記憶體來執行指令。當訪問外部儲存器時,它的作用就像一個馮·諾依曼機(程式碼可以像資料一樣移動,像是一個功能強大的技能)。這一改良在現代處理器是普遍存在的,例如ARM體系結構、Power Architecture和x86處理器。它有時被稱為哈佛架構,忽略了它實際上被“修改”的事實。  另一種修改提供了指令儲存器(例如ROM或快閃記憶體)與CPU之間的通路,以允許來自指令儲存器的字被視為只讀資料。該技術用於某些微控制器,包括Atmel的AVR。這允許訪問諸如文字字串或函式表之類的常量資料,而無需首先將其複製到資料儲存器中,從而為讀/寫變數保留稀缺(且耗電的)資料儲存器。特殊的機器語言指令提供了從指令儲存器中讀取資料的功能。(這是不同於指令本身嵌入常數的資料,雖然對於單個常量來說,兩種機制可以相互替代。)

  近年來,CPU的速度已經提速了許多次以同步主儲存器的存取速度。要注意減少記憶體訪問次數的數量以保持效能。例如,每一個指令在CPU執行需要訪問記憶體,增加計算機CPU沒有任何速度提升的問題叫做記憶體限制。可能使記憶體非常快,但由於記憶體成本,電源和訊號路由的原因這類記憶體數目很少。解決的辦法是提供少量的快速儲存器稱為CPU快取以存放最近訪問過的資料。CPU提取快取中的資料速度要比快取提取主要暫存器資料的速度更快。

  現代高效能CPU晶片在設計上包含了哈佛和馮諾依曼結構的特點。特別是,“拆分快取”這種改進型的哈佛架構版本是很常見的。 CPU的快取分為指令快取和資料快取。CPU訪問快取時使用哈佛體系結構。然而當快取記憶體未命中時,資料從主儲存器中檢索,卻並不分為獨立的指令和資料部分,雖然它有獨立的記憶體控制器用於訪問RAM,ROM和(NOR)快閃記憶體。 因此,在一些情況下可以看到馮諾依曼架構,比如當資料和程式碼通過相同的記憶體控制器時,這種硬體通過哈佛架構在快取訪問或至少主記憶體訪問方面提高了執行效率。 此外,在寫非快取區之後,CPU經常擁有寫快取使CPU可以繼續執行。當指令被CPU當作資料寫入,且軟體必須確保在試圖執行這些剛寫入的指令之前,快取記憶體(指令和資料)和寫快取是同步的,這時馮諾依曼結構的記憶體特點就出現了。

  純粹的哈佛架構同時訪問多個儲存系統的主要優點是由哈佛處理器利用現代CPU快取系統。相對純的哈佛架構機主要用於在應用中的取捨,就像忽略快取的成本和節省功率,大於程式設計在不同的程式碼和資料的地址空間的不利。  即使在這種情況下,它是為了訪問程式儲存器只讀表的資料使用特殊指令或重新程式設計;這些處理器是改進的哈佛架構的處理器。
哈佛架構(英語:Harvard architecture)是一種將程式指令儲存和資料儲存分開的儲存器結構(Split Cache)。這一詞起源於Harvard Mark I型繼電器式計算機,它儲存指令(24位)在紙帶上和資料於機電計數器上。 中央處理器首先到程式指令儲存器中讀取程式指令內容,解碼後得到資料地址,再到相應的資料儲存器中讀取資料,並進行下一步的操作(通常是執行)。程式指令儲存和資料儲存分開,資料和指令的儲存可以同時進行,可以使指令和資料有不同的資料寬度,如Microchip公司的PIC16晶片的程式指令是14位寬度,而資料是8位寬度。程式需要由操作者載入;處理器無法自行初始化。