chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

關(guān)于CPU運(yùn)行速度計(jì)算詳解

FPGA之家 ? 來源: 裸機(jī)思維 ? 作者:GorgonMeducer 傻孩子 ? 2021-04-09 18:19 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

【說在前面的話】

相對人的感官來說CPU跑的太快了——即便是人們常常用來描述時間短暫的“一眨眼功夫”對CPU來說也是及其“漫長”的好幾百毫秒了——仔細(xì)想想有幾個人能在一秒鐘內(nèi)連續(xù)眨十次眼睛呢?正因?yàn)槿绱?,即便是超級循環(huán)里面順次執(zhí)行的多個任務(wù),在人類看來也往往是“一瞬間就執(zhí)行完了”。那么CPU究竟跑的有多快呢?是很快、非常快還是快得不得了?如果我們繼續(xù)站在人類的視角考慮這個問題,其抽象程度無異于思考“無窮大究竟是多大”。

讓我們想象著周圍的時間相對你突然都慢了下來,從微處理器的視角重新審視這個世界。

【第一個參考點(diǎn)】

“1MHz就是 1us”

“1MHz就是1us”是一個基準(zhǔn)概念,通過修改思考方式,我們就可以利用它快速而有效的解決很多實(shí)際問題。作為練習(xí),我們來嘗試依次快速的回答以下幾個問題:

假設(shè)每個時鐘脈沖都對應(yīng)一個指令周期:

已知系統(tǒng)頻率是1MHz,請問1us內(nèi)有幾個指令周期?

已知系統(tǒng)頻率是12MHz,請問1us內(nèi)有幾個指令周期?

已知系統(tǒng)頻率是11.3728MHz,請問1us內(nèi)有幾個指令周期?

已知系統(tǒng)頻率是500KHz,請問1us內(nèi)有幾個指令周期?

很顯然,如果你試圖首先計(jì)算出系統(tǒng)周期:

2ae6cb60-990f-11eb-8b86-12bb97331649.png

再用1us去相除:

2af41b44-990f-11eb-8b86-12bb97331649.png

這個過程已經(jīng)慢了。

讓我們來換一種思維模式,既然1MHz對應(yīng)1us(也就是1us對應(yīng)一個指令周期),那么12MHz就是1MHz的12倍,1us時間內(nèi)就有12個指令周期;同理可得,當(dāng)系統(tǒng)頻率分別是11.3728MHz和500KHz(0.5MHz)的時候,1us時間內(nèi)對應(yīng)的指令周期數(shù)分別是11.3728個和0.5個。

借助這個等效,我們就可以對CPU的處理能力建立更多量化的感官,比如1ms的時間內(nèi),CPU能做多少事情呢?由于1ms等于1000us,對1MHz的系統(tǒng)來說,1ms可以完成1000個指令周期,12MHz的系統(tǒng)可以完成12000個指令周期。然而1000和12000這樣的數(shù)字對于只有十個手指的人類大腦來說還是太抽象了,因此我們更進(jìn)一步,把指令周期換算成等效的代碼尺寸:

由于主流的微控制器其指令集中大多是單周期指令,我們不妨假設(shè)所有指令都是單指令周期的,這樣1個指令周期就對應(yīng)一條指令;

假設(shè)每條指令都是2個字節(jié)大?。?6位指令);

這樣,1ms時間內(nèi)1MHz的系統(tǒng)可以運(yùn)行大約2KB的代碼,一個12MHz的系統(tǒng)可以運(yùn)行24KB的代碼,依次類推。

那么2KB是什么概念呢?如果你平時有留意編譯后的代碼尺寸,2KB大約是一個基礎(chǔ)驅(qū)動庫的尺寸,可以包含一個USART的驅(qū)動或者實(shí)現(xiàn)電源管理;而24KB幾乎是一個小型工程應(yīng)用的尺寸了。

借助這些非常具體的數(shù)字,我們很容易拿它們和中斷處理程序進(jìn)行比較,建立直觀的認(rèn)識——比如:

中斷處理程序“執(zhí)行的是不是足夠快”?

“丟中斷的風(fēng)險究竟有多大”等等?

使用中斷接收外設(shè)數(shù)據(jù)的時候會不會發(fā)生丟失?

可以肯定的是,這種忽略循環(huán)和條件分支的評估方法幾乎是一個代碼的最差情況,也就是說,在1MHz的系統(tǒng)中對于一個1KHz的毫秒中斷,中斷處理程序越接近2KB,就說明系統(tǒng)越可能“丟中斷”。

在這種情況下,除非你通過編譯器提供的等效匯編代碼仔細(xì)的計(jì)算過實(shí)際的周期數(shù),或者是通過perf_counter這樣的工具實(shí)際測量過代碼的周期消耗——確信時間上處理周期不會大于1ms且這期間不會存在其它中斷處理程序,否則你的中斷處理程序還是比2KB越小越好。

【一個真實(shí)的案例】

在一個72MHz的Cortex-M3/M4系統(tǒng)下,使用中斷模式來接收串口數(shù)據(jù),波特率為115200的情況下:

最大允許屏蔽中斷多長時間?

中斷處理程序允許的理論最大安全尺寸是多少?

首先,我們要搞清楚系統(tǒng)的指令大小和指令集的周期數(shù)情況。以ARM Cortex M3/M4為例,其指令大部分為單周期指令,支持16位指令和32位指令。為了評估中斷處理程序的尺寸上線,我們可以分別以16位指令和32位指令為基礎(chǔ)計(jì)算出兩個結(jié)果作為參考范圍;

其次,系統(tǒng)頻率為72MHz,假設(shè)USART沒有硬件FIFO,則115200的波特率在典型的“1起始位+1終止位+無校驗(yàn)位+8數(shù)據(jù)位”的配置下(每個數(shù)據(jù)幀對應(yīng)10個bit),實(shí)際上對應(yīng)最大11.52KB/s的數(shù)據(jù)率——或者說,USART完成中斷每秒鐘發(fā)生 11.52K次。至此,我們可以回答第一個問題,即在這一系統(tǒng)中最大允許屏蔽中斷多長時間——1/11.52KHz ≈87us。

也就是說,假設(shè)中斷屏蔽的時間為87us則中斷處理程序的理論最大尺寸范圍是(72 * 87 * 2)字節(jié)到(72 * 87 * 4)字節(jié),即12.528KB到25.056KB之間。取最小值12KB。

結(jié)論,中斷處理程序及其調(diào)用的子函數(shù),其尺寸總和至少要小于12KB才能確保115200波特率的接收完成中斷得到及時的響應(yīng)。由于未考慮循環(huán)、分支以及其它任務(wù)的存在,以上結(jié)果僅用于粗略的快速評估,實(shí)際代碼通常應(yīng)該遠(yuǎn)小于這一上線值。當(dāng)實(shí)際尺寸接近或者超過13KB時基本可以判定該系統(tǒng)存在無法及時穩(wěn)定的響應(yīng)中斷的可能——需要對代碼進(jìn)行進(jìn)一步的具體分析。

【結(jié)語】

“1MHz就是1us”的等效為我們提供了一個基準(zhǔn),建立了關(guān)于“CPU跑多快”最直觀的感受,同時也為評估代碼尺寸、系統(tǒng)可靠性提供了有力的參考。掌握了這個基準(zhǔn),作為一個合格的程序員,不應(yīng)該僅憑人類的感覺毫無依據(jù)評價CPU的處理能力了,“72MHz足夠快了吧?”“我已經(jīng)用了芯片的最高頻率”這種話再也不能輕易說了,我們應(yīng)該定量而不是定性的去看待這類問題。
編輯:lyn

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

    關(guān)注

    68

    文章

    11270

    瀏覽量

    224729
  • 1Mhz
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    9163

原文標(biāo)題:【實(shí)時性迷思】CPU究竟跑的有多快?

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    探索NXP FXLS8964AF 3軸低g加速度計(jì):特性、應(yīng)用與設(shè)計(jì)要點(diǎn)

    探索NXP FXLS8964AF 3軸低g加速度計(jì):特性、應(yīng)用與設(shè)計(jì)要點(diǎn) 在汽車電子領(lǐng)域,對于高性能、低功耗的傳感器需求日益增長。NXP的FXLS8964AF 3軸低g加速度計(jì),憑借其出色的特性和豐
    的頭像 發(fā)表于 12-25 10:20 ?377次閱讀

    深入解析FXLS8971CF:3軸低g加速度計(jì)的卓越性能與應(yīng)用

    深入解析FXLS8971CF:3軸低g加速度計(jì)的卓越性能與應(yīng)用 在當(dāng)今工業(yè)和醫(yī)療物聯(lián)網(wǎng)(IoT)領(lǐng)域,對于高性能、低功耗的傳感器需求日益增長。NXP Semiconductors
    的頭像 發(fā)表于 12-24 14:00 ?392次閱讀

    深入解析FXLS8961AF:汽車應(yīng)用中的3軸低g加速度計(jì)

    深入解析FXLS8961AF:汽車應(yīng)用中的3軸低g加速度計(jì) 在汽車電子領(lǐng)域,傳感器技術(shù)的發(fā)展日新月異。其中,3軸加速度計(jì)在汽車安全和便利性應(yīng)用中扮演著至關(guān)重要的角色。今天,我們就來詳細(xì)探討NXP
    的頭像 發(fā)表于 12-24 13:55 ?348次閱讀

    IMI微功耗ICP?嵌入式加速度計(jì):無線物聯(lián)網(wǎng)設(shè)備的理想之選

    IMI微功耗ICP?嵌入式加速度計(jì):無線物聯(lián)網(wǎng)設(shè)備的理想之選 在電子工程師的日常工作中,為無線、電池供電的物聯(lián)網(wǎng)設(shè)備選擇合適的加速度計(jì)是一項(xiàng)關(guān)鍵任務(wù)。今天,我們就來深入了解一下IMI的微功耗ICP
    的頭像 發(fā)表于 12-10 16:00 ?413次閱讀
    IMI微功耗ICP?嵌入式加<b class='flag-5'>速度計(jì)</b>:無線物聯(lián)網(wǎng)設(shè)備的理想之選

    速度計(jì)都有哪些分類?

    速度計(jì)的分類主要依據(jù)其工作原理和測量維度(軸數(shù)),以下是詳細(xì)的分類:按工作原理分類(這是最核心的分類方式)這是根據(jù)加速度計(jì)內(nèi)部如何感知和轉(zhuǎn)換加速度信號來劃分的。
    的頭像 發(fā)表于 12-04 15:55 ?500次閱讀
    加<b class='flag-5'>速度計(jì)</b>都有哪些分類?

    速度計(jì)伺服電路模塊原理與應(yīng)用

    在慣性導(dǎo)航與姿態(tài)控制這一尖端技術(shù)領(lǐng)域,系統(tǒng)感知運(yùn)動狀態(tài)的能力直接決定了其精度與可靠性。而將物理世界的加速度精確轉(zhuǎn)換為可用電信號的關(guān)鍵,在于一個核心部件——加速度計(jì)伺服電路模塊。該模塊專為光電加速度計(jì)
    的頭像 發(fā)表于 11-28 15:43 ?383次閱讀

    程序運(yùn)行速度很慢如何優(yōu)化?

    ;gt;外設(shè),內(nèi)存<->內(nèi)存)交給DMA,釋放CPU資源。 優(yōu)化算法: 選擇時間復(fù)雜度更低的算法。避免不必要的循環(huán)和重復(fù)計(jì)算。 減少函數(shù)調(diào)用開銷: 對于頻繁調(diào)用的小函數(shù)
    發(fā)表于 11-17 06:12

    如何為你的項(xiàng)目選擇合適的加速度計(jì)?

    在智能科技飛速發(fā)展的今天,從翱翔天空的飛行器到我們手中的智能設(shè)備,對運(yùn)動的精準(zhǔn)感知已成為關(guān)鍵。加速度計(jì),作為測量加速度和振動的核心傳感器,其選型直接決定了項(xiàng)目的成敗。面對不同的技術(shù)類型,如何才能做出最明智的選擇?本文將帶您了解主要的加
    的頭像 發(fā)表于 11-06 15:32 ?286次閱讀
    如何為你的項(xiàng)目選擇合適的加<b class='flag-5'>速度計(jì)</b>?

    傳統(tǒng)格局將被打破?這款MEMS加速度計(jì)如何實(shí)現(xiàn)石英級精度

    在慣性測量領(lǐng)域,高精度加速度計(jì)的市場格局似乎早已固化:石英加速度計(jì)憑借其卓越的穩(wěn)定性長期占據(jù)著高端應(yīng)用的統(tǒng)治地位。然而,這一格局正在被悄然打破。ER-MA-6 MEMS加速度計(jì)的出現(xiàn),以其驚人的性能指標(biāo)向傳統(tǒng)發(fā)起挑戰(zhàn),讓業(yè)界不禁
    的頭像 發(fā)表于 09-26 14:59 ?778次閱讀
    傳統(tǒng)格局將被打破?這款MEMS加<b class='flag-5'>速度計(jì)</b>如何實(shí)現(xiàn)石英級精度

    MEMS加速度計(jì)與石英加速度計(jì)的發(fā)展現(xiàn)狀與水平對比

    在工程測量與慣性導(dǎo)航領(lǐng)域,加速度計(jì)是感知運(yùn)動與振動的核心傳感器。其中,微機(jī)電系統(tǒng)(MEMS)加速度計(jì)和石英加速度計(jì)是兩種技術(shù)路線迥異但應(yīng)用廣泛的重要類型。它們各自的發(fā)展現(xiàn)狀和技術(shù)水平呈現(xiàn)出一種既競爭又互補(bǔ)的格局。
    的頭像 發(fā)表于 09-19 14:55 ?1198次閱讀
    MEMS加<b class='flag-5'>速度計(jì)</b>與石英加<b class='flag-5'>速度計(jì)</b>的發(fā)展現(xiàn)狀與水平對比

    洞察萬物運(yùn)動:詳解速度計(jì)的分類與廣泛應(yīng)用

    在我們?nèi)粘I钪校瑥闹悄苁謾C(jī)屏幕的自動旋轉(zhuǎn)到汽車的緊急安全氣囊觸發(fā),一種看不見的技術(shù)始終在默默工作,感知著物體的運(yùn)動和振動。這種技術(shù)的核心元件就是加速度計(jì)。它是一種能夠測量加速度(包括靜態(tài)重力加速度
    的頭像 發(fā)表于 09-18 16:06 ?941次閱讀
    洞察萬物運(yùn)動:<b class='flag-5'>詳解</b>加<b class='flag-5'>速度計(jì)</b>的分類與廣泛應(yīng)用

    為什么在振動分析中加速度計(jì)最常用?

    盡管振動可以通過位移、速度、加速度三個參數(shù)來完整描述,但在現(xiàn)代預(yù)測性維護(hù)和狀態(tài)監(jiān)測領(lǐng)域,加速度傳感器(加速度計(jì))占據(jù)了絕對主導(dǎo)地位,原因如下:寬廣的頻率范圍:機(jī)械設(shè)備的早期故障(如軸承
    的頭像 發(fā)表于 09-12 12:02 ?770次閱讀
    為什么在振動分析中加<b class='flag-5'>速度計(jì)</b>最常用?

    超高精度MEMS加速度計(jì)能否撼動石英加速度計(jì)的市場地位?

    在慣性傳感技術(shù)飛速發(fā)展的今天,ER-MA-6 MEMS加速度計(jì)以其突破性的技術(shù)指標(biāo),正在挑戰(zhàn)傳統(tǒng)石英加速度計(jì)的市場地位。這款采用先進(jìn)微機(jī)電系統(tǒng)技術(shù)打造的高精度傳感器,不僅繼承了MEMS器件固有
    的頭像 發(fā)表于 08-28 15:21 ?667次閱讀
    超高精度MEMS加<b class='flag-5'>速度計(jì)</b>能否撼動石英加<b class='flag-5'>速度計(jì)</b>的市場地位?

    同一水平的 RISC-V 架構(gòu)的 MCU,和 ARM 架構(gòu)的 MCU 相比,運(yùn)行速度如何?

    ARM 架構(gòu)與 RISC-V 架構(gòu)的 MCU 在同一性能水平下的運(yùn)行速度對比,需從架構(gòu)設(shè)計(jì)原點(diǎn)、指令集特性及實(shí)際測試數(shù)據(jù)展開剖析。以 ARM Cortex-M33 這類 ARMv8M 架構(gòu)核心與采用
    的頭像 發(fā)表于 07-02 10:29 ?1432次閱讀
    同一水平的 RISC-V 架構(gòu)的 MCU,和 ARM 架構(gòu)的 MCU 相比,<b class='flag-5'>運(yùn)行速度</b>如何?

    Matlab與MWORKS軟件計(jì)算精度對比

    移動力在簡支梁上的位置輸入到y(tǒng)向量中。 其中Matlab編程代碼為 clear L=32;%簡支梁長 v=3.2;%運(yùn)行速度 dt=0.5; x0=0; n=20; y=zeros(1,n);%預(yù)設(shè)
    發(fā)表于 06-07 16:57