0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

馮諾依曼和哈佛架構(gòu)有哪些異同點(diǎn)呢?

strongerHuang ? 來(lái)源:strongerHuang ? 2023-12-11 09:13 ? 次閱讀

架構(gòu)是一個(gè)計(jì)算機(jī)硬件的基本模型,它決定了計(jì)算機(jī)系統(tǒng)的運(yùn)行方式。計(jì)算機(jī)架構(gòu)的三個(gè)要素是:中央處理器、記憶單元(存儲(chǔ)器)和輸入輸出接口。

馮諾依曼架構(gòu)和哈佛架構(gòu)是計(jì)算機(jī)體系結(jié)構(gòu)中的兩種重要架構(gòu),它們?cè)诖鎯?chǔ)器組織方式和數(shù)據(jù)處理上存在顯著的差異。

bbe90026-97bb-11ee-8b88-92fbcf53809c.png

馮諾依曼架構(gòu)

馮諾依曼架構(gòu)是最常見(jiàn)的計(jì)算機(jī)體系結(jié)構(gòu)之一,最早由馮·諾依曼于1945年提出,又稱普林斯頓結(jié)構(gòu)。這種架構(gòu)中,指令和數(shù)據(jù)存儲(chǔ)在同一個(gè)存儲(chǔ)器中,使用同一條地址總線和數(shù)據(jù)總線來(lái)傳輸數(shù)據(jù)和指令。

它的主要特點(diǎn)如下:

指令和數(shù)據(jù)共享同一個(gè)存儲(chǔ)器。

一個(gè)CPU核心同時(shí)只能執(zhí)行一條指令。

bc15a4b4-97bb-11ee-8b88-92fbcf53809c.png

我們的電腦所使用的Intel X86 CPU,就是馮諾依曼架構(gòu)的。其指令與數(shù)據(jù)共用內(nèi)存總線,地址空間在一起。 指令和數(shù)據(jù)共享同一個(gè)存儲(chǔ)器,CPU只能執(zhí)行一條指令,因?yàn)樗枰却噶詈蛿?shù)據(jù)都被讀取到CPU中。 我們可以將馮諾依曼架構(gòu)理解為是單車道。

作為單車道,它的缺點(diǎn)是明顯的。 同時(shí)傳輸數(shù)據(jù)和指令,導(dǎo)致存儲(chǔ)器和處理器之間的效率低下。存儲(chǔ)器中的指令和數(shù)據(jù)被混合存儲(chǔ),指令可以被當(dāng)作數(shù)據(jù)進(jìn)行處理,因此程序可以動(dòng)態(tài)地修改自身代碼,容易受到病毒、惡意程序等攻擊。指令和數(shù)據(jù)必須具有相同的位寬。

不過(guò),馮諾依曼架構(gòu)也有好處,就是簡(jiǎn)單、易于實(shí)現(xiàn)和設(shè)計(jì)。 總體來(lái)說(shuō),馮諾依曼架構(gòu)適用于大多數(shù)通用計(jì)算機(jī),它能夠靈活地處理各種不同的計(jì)算任務(wù),同時(shí)還可以使用緩存等技術(shù)來(lái)優(yōu)化性能。

哈佛架構(gòu)

哈佛架構(gòu)是一種分離式存儲(chǔ)器體系結(jié)構(gòu),它將指令和數(shù)據(jù)存儲(chǔ)在不同的內(nèi)存中。CPU 通過(guò)不同的總線從指令內(nèi)存和數(shù)據(jù)內(nèi)存中讀取指令和數(shù)據(jù)。這意味著 CPU 可以同時(shí)訪問(wèn)指令和數(shù)據(jù)內(nèi)存,因此可以同時(shí)執(zhí)行多條指令。

它的主要特點(diǎn)如下:

指令和數(shù)據(jù)存儲(chǔ)在不同的內(nèi)存中。

一個(gè)CPU核心可以同時(shí)執(zhí)行多條指令。

bc24f25c-97bb-11ee-8b88-92fbcf53809c.png

哈佛架構(gòu)多用于一些嵌入式系統(tǒng)數(shù)字信號(hào)處理器等領(lǐng)域。

在哈佛架構(gòu)中,指令和數(shù)據(jù)存儲(chǔ)在不同的內(nèi)存中,CPU可以同時(shí)訪問(wèn)指令和數(shù)據(jù)內(nèi)存,因此可以同時(shí)執(zhí)行多條指令。

我們可以將哈佛架構(gòu)理解為是多車道。它有兩個(gè)獨(dú)立的存儲(chǔ)器,就像多車道那樣,它的優(yōu)點(diǎn)也很明顯。

指令與數(shù)據(jù)傳輸同時(shí)運(yùn)行,運(yùn)行效率高。存儲(chǔ)器中的指令和數(shù)據(jù)分開存儲(chǔ),因此程序無(wú)法直接修改自身代碼,這樣會(huì)更加安全可靠、固若金湯。指令和數(shù)據(jù)的位寬可以不同。

但是哈佛架構(gòu)也有其缺點(diǎn),就是實(shí)現(xiàn)和設(shè)計(jì)相對(duì)復(fù)雜的多。 總體來(lái)說(shuō),哈佛架構(gòu)適用于一些特定的應(yīng)用領(lǐng)域,例如需要高效地處理大量數(shù)據(jù)的嵌入式系統(tǒng),或數(shù)字信號(hào)處理器等領(lǐng)域。

bc3a4f08-97bb-11ee-8b88-92fbcf53809c.png







審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19032

    瀏覽量

    228447
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    38

    文章

    7402

    瀏覽量

    163387
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7289

    瀏覽量

    87518

原文標(biāo)題:馮諾依曼和哈佛架構(gòu)有何異同

文章出處:【微信號(hào):strongerHuang,微信公眾號(hào):strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    哈佛結(jié)構(gòu)的比較

    本帖最后由 eehome 于 2013-1-5 09:50 編輯 哈佛結(jié)構(gòu)的比較
    發(fā)表于 08-20 23:01

    體系結(jié)構(gòu)和組成

    體系及操作系統(tǒng)
    發(fā)表于 06-11 07:09

    ·體系和哈佛總線體系的區(qū)別是什么

    arm7TDMI,就是純粹的·結(jié)構(gòu),其他內(nèi)部cache且數(shù)據(jù)和指令的cache分離的cpu則使用了哈弗結(jié)構(gòu)?! ?、
    發(fā)表于 07-08 15:39

    你的CPU屬于哈佛結(jié)構(gòu)還是結(jié)構(gòu)?

    。03 ARM和哈佛·的關(guān)系哈佛架構(gòu)是針對(duì)
    發(fā)表于 05-11 06:30

    arm架構(gòu)的芯片哪些

    arm架構(gòu)的芯片哪些一、芯片的架構(gòu)模式原文
    發(fā)表于 07-21 08:47

    談?wù)勄度胧教幚砥鞯捏w系架構(gòu)

    指令集,還有一點(diǎn)就是X86架構(gòu)使用的是結(jié)構(gòu),ARM架構(gòu)既使用
    發(fā)表于 12-15 06:59

    ·計(jì)算機(jī)體系結(jié)構(gòu)缺陷哪些?

    ·結(jié)構(gòu)的特點(diǎn)是什么?·
    發(fā)表于 12-24 07:36

    哈佛結(jié)構(gòu)和結(jié)構(gòu)的差別是什么?

    Linux的文件類型哪幾種?哈佛結(jié)構(gòu)和結(jié)構(gòu)的差別是什么?
    發(fā)表于 12-27 06:44

    計(jì)算機(jī)體系結(jié)構(gòu)是怎樣組成的

    計(jì)算機(jī)體系結(jié)構(gòu)是怎樣組成的?微型系統(tǒng)地結(jié)構(gòu)是怎樣組成的?
    發(fā)表于 02-10 06:15

    單片機(jī)中哈佛結(jié)構(gòu)和結(jié)構(gòu)的區(qū)別是什么?

    單片機(jī)中哈佛結(jié)構(gòu)和結(jié)構(gòu)的差異,在指令操作上有什么區(qū)別?
    發(fā)表于 10-28 06:03

    簡(jiǎn)單介紹哈佛結(jié)構(gòu)和·結(jié)構(gòu)的區(qū)別

    哈佛結(jié)構(gòu)是一種將程序指令存儲(chǔ)和數(shù)據(jù)存儲(chǔ)分開的存儲(chǔ)器結(jié)構(gòu)。·結(jié)構(gòu)也稱普林斯頓結(jié)構(gòu),是一種將程序指令存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器合并在一起的存儲(chǔ)器
    發(fā)表于 11-13 16:21 ?4.8w次閱讀
    簡(jiǎn)單介紹<b class='flag-5'>哈佛</b>結(jié)構(gòu)和<b class='flag-5'>馮</b>·<b class='flag-5'>諾</b><b class='flag-5'>依</b><b class='flag-5'>曼</b>結(jié)構(gòu)的區(qū)別

    ·計(jì)算機(jī)結(jié)構(gòu)圖解析

    美籍匈牙利科學(xué)家·最新提出程序存儲(chǔ)的思想,并成功將其運(yùn)用在計(jì)算機(jī)的設(shè)計(jì)之中,根據(jù)這一原理制造的計(jì)算機(jī)被稱為·
    發(fā)表于 11-13 16:48 ?2.5w次閱讀
    <b class='flag-5'>馮</b>·<b class='flag-5'>諾</b><b class='flag-5'>依</b><b class='flag-5'>曼</b>計(jì)算機(jī)結(jié)構(gòu)圖解析

    CPU采用的是哈佛結(jié)構(gòu)還是結(jié)構(gòu)?

    領(lǐng)域,我們的手持設(shè)備(平板手機(jī)用的大多就是他了)。 01·體系 ·
    的頭像 發(fā)表于 04-25 16:45 ?1.3w次閱讀
    CPU采用的是<b class='flag-5'>哈佛</b>結(jié)構(gòu)還是<b class='flag-5'>馮</b><b class='flag-5'>諾</b><b class='flag-5'>依</b><b class='flag-5'>曼</b>結(jié)構(gòu)?

    STM32屬于哈佛結(jié)構(gòu)還是結(jié)構(gòu)?

    洛伊曼結(jié)構(gòu)就是我們所說(shuō)的X86架構(gòu),而哈佛結(jié)構(gòu)就是ARM架構(gòu)。
    發(fā)表于 02-08 15:40 ?3次下載
    STM32屬于<b class='flag-5'>哈佛</b>結(jié)構(gòu)還是<b class='flag-5'>馮</b><b class='flag-5'>諾</b><b class='flag-5'>依</b><b class='flag-5'>曼</b>結(jié)構(gòu)?

    架構(gòu)哈佛架構(gòu)何不同

    架構(gòu)是最常見(jiàn)的計(jì)算機(jī)體系結(jié)構(gòu)之一,最早由·
    的頭像 發(fā)表于 12-10 14:10 ?1140次閱讀
    <b class='flag-5'>馮</b><b class='flag-5'>諾</b><b class='flag-5'>依</b><b class='flag-5'>曼</b><b class='flag-5'>架構(gòu)</b>和<b class='flag-5'>哈佛</b><b class='flag-5'>架構(gòu)</b><b class='flag-5'>有</b>何不同