一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

為什么有些CPU的主頻更低,但運算效率卻更高?

Q4MP_gh_c472c21 ? 來源:strongerHuang ? 作者:strongerHuang ? 2021-01-21 09:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

為什么有些CPU的主頻更低,但運算效率卻更高呢?

比如:51單片機30M主頻,STM32單片機20M主頻,執(zhí)行相同一段代碼可能主頻更低的STM32所花的時間更短。

這里就牽涉到CPU流水線的問題,本文圍繞CPU流水線描述相關內(nèi)容。

一、早期CPU流水線

1.流水線來源

流水線的概念來源于工業(yè)制造領域,以汽車裝配為例來解釋流水線的工作方式,假設裝配一輛汽車需要四個步驟:

1.沖壓:制作車身外殼和底盤等部件; 2.焊接:將沖壓成形后的各部件焊接成車身; 3.涂裝:將車身等主要部件清洗、化學處理、打磨、噴漆和烘干; 4.總裝:將各部件(包括發(fā)動機和向外采購的零部件)組裝成車;

汽車裝配需要沖壓、焊接、涂裝和總裝四個工人,最簡單的方法是一輛汽車依次經(jīng)過上述四個步驟裝配完成之后,下一輛汽車才開始進行裝配,最早期的工業(yè)制造就是采用的這種原始的方式,即同一時刻只有一輛汽車在裝配。

不久之后人們發(fā)現(xiàn),某個時段中一輛汽車在進行裝配時,其它三個工人都處于閑置狀態(tài),顯然這是對資源的極大浪費,于是思考出能有效利用資源的新方法,即在第一輛汽車經(jīng)過沖壓進入焊接工序的時候,立刻開始進行第二輛汽車的沖壓,而不是等到第一輛汽車經(jīng)過全部四個工序后才開始,這樣在后續(xù)生產(chǎn)中就能夠保證四個工人一直處于運行狀態(tài),不會造成人員的閑置。這樣的生產(chǎn)方式就好似流水川流不息,因此被稱為流水線。

2.CPU流水線

1989 年推出的 i486 處理器引入了五級流水線。這時,在 CPU 中不再僅運行一條指令,每一級流水線在同一時刻都運行著不同的指令。這個設計使得 i486 比同頻率的 386 處理器性能提升了不止一倍。

五級流水線中的取指階段將指令從指令緩存中取出(i486 中的指令緩存為 8KB);

第二級為譯碼階段,將取出的指令翻譯為具體的功能操作;

第三級為轉址階段,用來將內(nèi)存地址和偏移進行轉換;

第四級為執(zhí)行階段,指令在該階段真正執(zhí)行運算;

第五級為退出階段,運算的結果被寫回寄存器或者內(nèi)存。

由于處理器同時運行了多條指令,大大提升了程序運行的性能。

二、CPU流水線技術

CPU流水線技術是一種將指令分解為多步,并讓不同指令的各步操作重疊,從而實現(xiàn)幾條指令并行處理,以加速程序運行過程的技術。

指令的每步有各自獨立的電路來處理,每完成一步,就進到下一步,而前一步則處理后續(xù)指令。

0fe530da-57de-11eb-8b86-12bb97331649.jpg

采用流水線技術后,并沒有加速單條指令的執(zhí)行,每條指令的操作步驟一個也不能少,只是多條指令的不同操作步驟同時執(zhí)行,因而從總體上看加快了指令流速度,縮短了程序執(zhí)行時間。

流水線技術是通過增加計算機硬件來實現(xiàn)的。它要求各功能段能互相獨立地工作,這就要增加硬件,相應地也加大了控制的復雜性。如果沒有互相獨立的操作部件,很可能會發(fā)生各種沖突。例如要能預取指令,就需增加指令的硬件電路,并把取來的指令存放到指令隊列緩沖器中,使微處理器能同時進行取指令和分析、執(zhí)行指令的操作。

---來自百度百科

三、流水線與代碼執(zhí)行效果

為什么說同主頻的51單片機相比STM32執(zhí)行效率低呢?

除了大家認為的8位和32位寬度區(qū)別之外,還有一個就是51單片機不支持流水線(也可以理解為單流水線),而STM32支持流水線。

Cortex‐M3處理器使用一個 3 級流水線。流水線的 3 級分別是:取指、解碼和執(zhí)行, 如圖:

1018fd0c-57de-11eb-8b86-12bb97331649.png

通過下面一張圖來對比單流水線和多級流水線,你就更能明白為什么51單片機執(zhí)行效率低了。

10548656-57de-11eb-8b86-12bb97331649.jpg

四、多級流水線優(yōu)缺點

并非在所有情況下流水線技術都起作用??赡苡幸恍┤秉c。如果一條指令流水線能夠在每一個時脈周期接納一條新的指令,被稱為完整流水線(fully pipelined)。因流水線中的指令需要延遲處理而要等待數(shù)個時脈周期,被稱為非完整流水線。

當一名程序員(或者組合者/編譯者)編寫組合代碼(或者匯編碼)時,他們會假定每個指令是循序運行的。而這個假設會使流水線無效。當此現(xiàn)象發(fā)生后程序會表現(xiàn)的不正常,而此現(xiàn)象就是危害。不過當前有提供幾種技術來解決這些危害像是轉發(fā)與延遲等。

1.優(yōu)點

減少了處理器執(zhí)行指令所需要的時脈周期,在通常情況下增加了指令的輸入頻率(issue-rate)。

一些集成電路,例如加法器或者乘法器,通過添加更多的環(huán)路使其工作得更快,如果以流水線替代,能相對地減少環(huán)路。

2.缺點

流水線處理器設計復雜度更高、生產(chǎn)成本更高;

流水線的處理器必須在數(shù)據(jù)路徑中添加額外觸發(fā)器。

非流水線處理器有固定指令位寬,流水線處理器的性能更難以預測,并且不同的程序之間的變化可能更大。

原文標題:為什么CPU流水線會提高代碼執(zhí)行效率?

文章出處:【微信公眾號:嵌入式ARM】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

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

    關注

    6067

    文章

    44992

    瀏覽量

    650504
  • cpu
    cpu
    +關注

    關注

    68

    文章

    11080

    瀏覽量

    217097
  • 代碼
    +關注

    關注

    30

    文章

    4900

    瀏覽量

    70746

原文標題:為什么CPU流水線會提高代碼執(zhí)行效率?

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    單核CPU網(wǎng)關和雙核CPU網(wǎng)關有什么區(qū)別

    單核CPU網(wǎng)關與雙核CPU網(wǎng)關的核心區(qū)別在于處理能力、多任務效率、性能表現(xiàn)及適用場景,雙核CPU網(wǎng)關在多任務處理、復雜計算和響應速度上具有顯著優(yōu)勢,而單核
    的頭像 發(fā)表于 07-05 14:37 ?266次閱讀

    STM32多通道FFT運算異常的原因?怎么解決?

    通道左右出現(xiàn)卡死; 懷疑為處理能力或內(nèi)存瓶頸導致。 五、請求支持 是否為MCU處理能力不足導致的預期行為? 若為資源瓶頸,是否建議使用更高主頻 / 更大RAM的芯片(如F7/H7)? 在
    發(fā)表于 06-19 06:27

    國產(chǎn)電腦CPU性能排行榜TOP7:CPU緩存/主頻/多核實測數(shù)據(jù)分析

    在科技飛速發(fā)展的今天,電腦CPU(中央處理器)無疑是計算機性能的核心部件。而長久以來,國際品牌在這一領域占據(jù)著主導地位,給人一種國產(chǎn)CPU性能不行的刻板印象。然而,隨著技術的不斷進步和研發(fā)投入的加大,國產(chǎn)電腦CPU性能已經(jīng)取得了
    的頭像 發(fā)表于 04-29 10:38 ?659次閱讀
    國產(chǎn)電腦<b class='flag-5'>CPU</b>性能排行榜TOP7:<b class='flag-5'>CPU</b>緩存/<b class='flag-5'>主頻</b>/多核實測數(shù)據(jù)分析

    主頻和晶振頻率的關系

    主頻和晶振頻率共同影響設備的性能和穩(wěn)定性。今天凱擎小妹聊一下主頻,晶振頻率,以及兩者之間的關系。
    的頭像 發(fā)表于 03-11 17:48 ?671次閱讀

    24W電源芯片U6120D實踐更高的性能與更低的成本

    24W電源芯片U6120D 實踐更高的性能與更低的成本 STEP01 芯片綠色節(jié)能模式?是指通過優(yōu)化芯片設計和技術手段,以減少芯片在運行過程中的能耗,從而達到節(jié)能減排的目的。這種模式主要依賴于先進
    的頭像 發(fā)表于 11-27 11:00 ?748次閱讀

    CPU主頻是什么意思

    CPU主頻,作為計算機處理器性能的一個重要指標,承載著豐富的技術內(nèi)涵與實際應用價值。以下是對CPU主頻的詳細解析,包括其定義、用途、技術原理、影響因素以及在多個領域的實際應用。
    的頭像 發(fā)表于 09-26 15:50 ?4798次閱讀

    CPU時鐘周期與主頻的關系和區(qū)別

    CPU時鐘周期與主頻是計算機體系結構中兩個緊密相連且至關重要的概念,它們之間既存在關系又有所區(qū)別。以下將詳細闡述CPU時鐘周期與主頻的關系和區(qū)別。
    的頭像 發(fā)表于 09-26 15:46 ?3921次閱讀

    雙核cpu和單核cpu的區(qū)別

    雙核CPU與單核CPU在多個方面存在顯著差異,這些差異主要體現(xiàn)在處理能力、性能、運行效率、功耗以及適用場景等方面。 一、概念與結構 雙核CPU :指在一個處理器上集成兩個
    的頭像 發(fā)表于 09-24 16:17 ?7151次閱讀

    導熱硅脂對CPU散熱性能影響大嗎?

    CPU不涂硅脂CPU與散熱器之間的縫隙有空氣,導熱效率無法達到應有的效率,CPU相比涂了導熱膏的工作溫度會
    的頭像 發(fā)表于 09-24 15:40 ?2481次閱讀

    提高高開關頻率下更高負載的效率應用報告

    電子發(fā)燒友網(wǎng)站提供《提高高開關頻率下更高負載的效率應用報告.pdf》資料免費下載
    發(fā)表于 09-13 09:33 ?0次下載
    提高高開關頻率下<b class='flag-5'>更高</b>負載的<b class='flag-5'>效率</b>應用報告

    CPU主要參數(shù)有哪些

    CPU(Central Processing Unit,中央處理器)是計算機系統(tǒng)的核心部件,負責執(zhí)行程序指令、處理數(shù)據(jù)和進行邏輯運算。CPU的參數(shù)繁多,其中一些關鍵參數(shù)對于理解和選擇
    的頭像 發(fā)表于 09-10 11:51 ?3072次閱讀

    使用TPS25961獲得性能更高、空間更小、成本更低的保護功能

    電子發(fā)燒友網(wǎng)站提供《使用TPS25961獲得性能更高、空間更小、成本更低的保護功能.pdf》資料免費下載
    發(fā)表于 09-09 09:31 ?0次下載
    使用TPS25961獲得性能<b class='flag-5'>更高</b>、空間更小、成本<b class='flag-5'>更低</b>的保護功能

    有沒有參數(shù)和THS4521差不多,功耗更低的高速運放?

    有沒有參數(shù)和THS4521差不多,功耗更低的高速運放?
    發(fā)表于 09-06 06:07

    基于氮化鎵的電源芯片U8722BAS具有更低成本效益

    基于氮化鎵的電源芯片U8722BAS具有更低成本效益GaN是一種改變我們的生活方式,應用前景廣泛的特新材料。氮化鎵技術正在提供更快的開關速度、更小的尺寸、更高效率。現(xiàn)在,深圳銀聯(lián)寶科技推出的電源
    的頭像 發(fā)表于 08-30 12:14 ?804次閱讀
    基于氮化鎵的電源芯片U8722BAS具有<b class='flag-5'>更低</b>成本效益

    容性負載導致運算放大器不穩(wěn)定的解決辦法

    1、運算放大器為什么振蕩:兩種常見原因的直觀分析 第一種情況與電容性負載有關(圖 a)。電阻器是運算放大器的開環(huán)輸出電阻。電容器當然是負載電容。有些是需要驅動的容性負載,而有些
    發(fā)表于 08-07 07:11