久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2377|回復: 0
打印 上一主題 下一主題
收起左側

哈弗結構和馮諾依曼結構的區別

[復制鏈接]
跳轉到指定樓層
樓主
ID:128229 發表于 2016-6-27 22:16 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
二者的區別是馮諾伊曼結構的程序空間(地址空間)和數據空間不分開,而哈佛結構的程序空間分開。
             哈佛結構強調了總體的系統速度以及通訊和處理器配置方面的靈活性,重在對效率的要求,似乎從這點就可以看到馮諾伊曼的局限性及不足,
關于這個問題,有人說51地址線復用,就是馮諾依曼結構。

       很多入門的書上基本上都說:由運算器、控制器、存儲器、輸入設備、輸出設備組成的系統 都叫馮氏結構。

也有的說:“程序存儲器的數據線地址線”與“數據存儲器的數據線地址線”共用的話,就是馮氏結構,所以51是該結構。(我認為說得太絕對了)

       我認為馮氏結構與哈佛結構的區別應該在存儲器的空間分別上,哈佛結構的數據區和代碼區是分開的,它們即使地址相同,但空間也是不同的,主要表現在數據不能夠當作代碼來運行。(比如51---注)

       口線復用,就將它認為成馮氏結構,我認為這樣不足取,應該是按照空間是否完全重合來辨別。比如PC機的代空間和數據空間是同一空間,所以是馮氏結構;51由于IO口不夠,但代碼空間和數據空間是分開的,所以還是哈佛構.(此種觀點才是正確的--注)

       另外,還有的把CISC RISC 和地址是否復用與是哪種結構 這3這都混到一起。我認為這三者都沒有必然的關系。只不過 RISC因為精簡了指令集,沒有了執行復雜功能的指令,為了提高性能,常采用哈佛結構,并且不復用地址線。(這種說法不具體,有待補充---注)

材料二:

   哈佛結構是一種將程序指令存儲和數據存儲分開的存儲器結構。中央處理器首先到程序指令存儲器中讀取程序指令內容,解碼后得到數據地址,再到相應的數據存儲器中讀取數據,并進行下一步的操作(通常是執行)。程序指令存儲和數據存儲分開,可以使指令和數據有不同的數據寬度,如Microchip公司的 PIC16芯片的程序指令是14位寬度,而數據是8位寬度。

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

   馮·諾伊曼結構也稱普林斯頓結構,是一種將程序指令存儲器和數據存儲器合并在一起的存儲器結構。程序指令存儲地址和數據存儲地址指向同一個存儲器的不同物理位置,因此程序指令和數據的寬度相同,如英特爾公司的8086中央處理器的程序指令和數據都是16位寬。

   目前使用馮·諾伊曼結構的中央處理器和微控制器有很多。除了上面提到的英特爾公司的8086,英特爾公司的其他中央處理器、安謀公司的ARM7、MIPS公司的MIPS處理器也采用了馮·諾伊曼結構。

評論:哈佛結構和馮.諾依曼結構都是一種存儲器結構。哈佛結構是將指令存儲器和數據存儲器分開的一種存儲器結構;而馮.諾依曼結構將指令存儲器和數據存儲器合在一起的存儲器結構。-----注

材料三:

      MCS-51單片機有著嵌入式處理器經典的體系結構,這種體系結構在當前嵌入式處理器的高端ARM系列上仍然在延續,這就是哈佛結構。相對于大名鼎鼎的馮·諾依曼結構,哈佛結構的知名度顯然遜色許多,但在嵌入式應用領域,哈佛結構卻擁有著絕對的優勢。哈佛結構與馮·諾依曼結構的最大區別在于馮·諾依曼結構的計算機采用代碼與數據的統一編址,而哈佛結構是獨立編址的,代碼空間與數據空間完全分開。

在通用計算機系統中,應用軟件的多樣性使得計算機要不斷地變化所執行的代碼的內容,并且頻繁地對數據與代碼占有的存儲器進行重新分配,這種情況下,馮·諾依曼結構占有絕對優勢,因為統一編址可以最大限度地利用資源,而哈佛結構的計算機若應用于這種情形下則會對存儲器資源產生理論上最大可達50%的浪費,這顯然是不合理的。

但是在嵌入式應用中,系統要執行的任務相對單一,程序一般是固化在硬件里。當然這時使用馮· 諾依曼結構也完全可以,代碼區和數據區在編譯時一次性分配好了而已,但是其靈活性得不到體現,所以現在大量的單片機也還在沿用馮·諾依曼結構,如TI的 MSP430系列、Freescale的HCS08系列等。

那是為什么說哈佛結構有優勢呢?嵌入式計算機在工作時與通用計算機有著一些區別:嵌入式計算機在工作期間的絕大部分時間是無人值守的,而通用計算機工作期間一般是有人操作的;嵌入式計算機的故障可能會導致災難性的后果,而通用計算機一般就是死死機,重新啟動即可。這兩點決定了對嵌入式計算機的一個基本要求:可靠性。

使用馮·諾依曼結構的計算機,程序空間不封閉,期程序空間的數據在運行期理論上可以被修改,此外程序一旦跑飛也有可能運行到數據區。雖然都是一些不常見的特殊情況下,但是看看哈佛結構德計算機在這些情況下是怎樣的:基于哈佛結構的處理器入 MCS-51,不需要可以對代碼段進行寫操作的指令,所以不會有代碼區被改寫的問題;程序只能在封閉的代碼區中運行,不可能跑到數據區,這也是跑飛的幾率減少并且跑飛后的行為有規律(數據區的數據是不斷變化的而代碼區是不變的)。

所以,相對于馮·諾依曼結構,哈佛結構更加適合于那些程序固化、任務相對簡單的控制系統。

總結::::::::::

      馮.諾依曼(Von Neumann)指出:程序只是一種(特殊)的數據,它可以像數據一樣被處理,因此可以和數據一起被存儲在同一個存儲器中——這就是著名的馮.諾依曼原理。注意:數據總線和地址總線共用。--注

哈佛結構:

       哈佛結構是一種并行體系結構,它的主要特點是將程序和數據存儲在不同的存儲空間中,即程序存儲器和數據存儲器是兩個獨立的存儲器,每個存儲器獨立編址、獨立訪問。與兩個存儲器相對應的是系統的4條總線:程序的數據總線與地址總線,數據的數據總線與地址總線。這種分離的程序總線和數據總線允許在一個機器周期內同時獲得指令字(來自程序存儲器)和操作數(來自數據存儲器),從而提高了執行速度,使數據的吞吐率提高了1倍。又由于程序和數據存儲器在兩個分開的物理空間中,因此取指和執行能完全重疊。CPU首先到程序指令存儲器中讀取程序指令內容,解碼后得到數據地址,再到相應的數據存儲器中讀取數據,并進行下一步的操作(通常是執行)
             哈佛結構采用數據存儲器與程序代碼存儲器分開,各自有自己的數據總線與地址總線。但這是需要CPU提供大量的數據線,因而很少使用哈佛結構作為CPU外部構架來使用。但是對于 CPU內部,通過使用不同的數據和指令cache,可以有效的提高指令執行的效率,因而目前大部分計算機體系都是CPU內部的哈弗結構+CPU外部的馮· 諾伊曼的結構。



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91国产精品 | 亚洲天堂中文字幕 | 精品一区二区久久久久久久网站 | 久久www免费视频 | 69性欧美高清影院 | 一区二区在线不卡 | a在线视频| 亚洲精品性视频 | 久久久精品网站 | 国产成人黄色 | 免费在线观看一区二区 | 美女在线视频一区二区三区 | 日韩视频中文字幕 | 欧美日韩专区 | 日韩电影一区 | 精品香蕉一区二区三区 | 麻豆av免费观看 | 色婷婷综合在线观看 | 99视频免费在线观看 | 国产精品揄拍一区二区久久国内亚洲精 | 狠狠干狠狠插 | 久热国产在线 | 成人av电影免费在线观看 | 紧缚调教一区二区三区视频 | 精品成人av| 国产精品国产a级 | 精品国产亚洲一区二区三区大结局 | 99精品一区二区 | 国产高清一区二区三区 | 国产精品久久九九 | 国产精品国产三级国产aⅴ原创 | 91精品免费 | 成人影院网站ww555久久精品 | 国产一级特黄aaa大片评分 | 久久久蜜桃 | 久久久久黄 | 国产精品一区三区 | 在线免费观看日本视频 | 久久av一区 | 国产在视频一区二区三区吞精 | 91中文在线观看 |