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

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

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

現(xiàn)實(shí)標(biāo)準(zhǔn)和32位MCU

jf_pJlTbmA9 ? 來源:jf_pJlTbmA9 ? 作者:jf_pJlTbmA9 ? 2023-08-07 17:01 ? 次閱讀

當(dāng)為下一代控制應(yīng)用選擇32位MCU時(shí),必須考慮一點(diǎn),就是面對(duì)某一實(shí)際的應(yīng)用,不同供應(yīng)商的處理器雖然在數(shù)據(jù)手冊(cè)上看起來或多或少有些相似,但實(shí)際上是非常不同的。雖然數(shù)據(jù)手冊(cè)中的規(guī)范和Dhrystone(處理器整型數(shù)計(jì)算能力)MIPS處理能力給出了一個(gè)粗略的評(píng)估標(biāo)準(zhǔn),但必須考慮得更深入以保證MCU有足夠的吞吐量和過載余量來滿足當(dāng)前和未來的應(yīng)用需求。


運(yùn)行編譯EEMBC汽車標(biāo)準(zhǔn)代碼的測(cè)試結(jié)果顯示:看起來類似的三款MCU實(shí)際性能差別很大

例如,價(jià)格低廉、基于ARM的MCU一般具有很多資源,雖然它們中的許多是基于相同的CPU核,通常是沒有高速緩存的ARM7TDMI處理器,但不同供應(yīng)商的產(chǎn)品整體性能差別非常大。這主要是由于實(shí)現(xiàn)片上存儲(chǔ)子系統(tǒng)、片上總線結(jié)構(gòu)和I/O功能所采用的方法不同。因此,為了確定哪一款處理器最有價(jià)值,就必須考察整個(gè)處理器子系統(tǒng)。

實(shí)時(shí)嵌入式應(yīng)用

當(dāng)在實(shí)時(shí)嵌入式應(yīng)用中使用MCU時(shí),MCU必須對(duì)所有操作做出確定性的響應(yīng),以保證任務(wù)在被分配的時(shí)間內(nèi)完成,響應(yīng)延遲對(duì)于實(shí)時(shí)系統(tǒng)來說也必須很短。為了達(dá)到這個(gè)目標(biāo),MCU必須具有有效的硬件中斷管理子系統(tǒng),用于處理優(yōu)先
權(quán)、向量和返回機(jī)制。此外,存儲(chǔ)子系統(tǒng)不應(yīng)該成為處理器的制約,它應(yīng)該能夠及時(shí)的向處理器提供指令和數(shù)據(jù),以實(shí)現(xiàn)在指令執(zhí)行流中插入最少的等待狀態(tài)。處理器也應(yīng)該有一個(gè)有效的上下文切換機(jī)制,來保證當(dāng)中斷改變指令流時(shí)損失的時(shí)間最短。內(nèi)部系統(tǒng)總線應(yīng)該有確定的響應(yīng)時(shí)間,用于支持對(duì)時(shí)間要求嚴(yán)格的操作。

基于ARM的眾多MCU提供了針對(duì)不同系統(tǒng)解決方案的廣泛選擇,這些方案的區(qū)別在于時(shí)鐘速率、集成外設(shè)、高容量閃存和靜態(tài)RAM等。由于內(nèi)部存儲(chǔ)子系統(tǒng)和系統(tǒng)總線效率,以及CPU對(duì)片上設(shè)備操作處理程度的差別,即使在相同時(shí)鐘頻率下,MCU的性能也存在著極大的差別。影響性能的一個(gè)關(guān)鍵問題就是片上閃存的訪問時(shí)間過長。

現(xiàn)實(shí)標(biāo)準(zhǔn)

為了更好地評(píng)估處理器的性能,一些現(xiàn)實(shí)標(biāo)準(zhǔn)已經(jīng)開發(fā)出來了,例如由EEMBC(嵌入式微處理器基準(zhǔn)聯(lián)盟),一個(gè)獨(dú)立的非營利組織正在開發(fā)的標(biāo)準(zhǔn),可以對(duì)各種外部看起來相似的MCU之間的差別進(jìn)行更深入的分析。

EEMBC在開發(fā)其評(píng)估標(biāo)準(zhǔn)套件時(shí)也面臨了巨大的挑戰(zhàn)。首先面對(duì)的就是開發(fā)測(cè)試軟件,它用于產(chǎn)生在一個(gè)應(yīng)用中能夠代表實(shí)際性能的結(jié)果。這就表示要拋棄Dhrystone MIPS這一普遍采用的方法,該方法支持創(chuàng)建針對(duì)應(yīng)用的測(cè)試,用于測(cè)試在汽車、網(wǎng)絡(luò)、電信、娛樂,以及其他嵌入式系統(tǒng)中處理器的工作。第二個(gè)挑戰(zhàn)就是起草標(biāo)準(zhǔn),它需能夠非常容易地移植到使用不同處理器的各種開發(fā)板中,并且在這些開發(fā)板中都能夠正常地運(yùn)行,以評(píng)估每個(gè)MCU或MPU的性能。

逐個(gè)比較的理想基礎(chǔ)是每個(gè)MCU周圍的硬件環(huán)境都盡可能地一致,并使用同樣的編譯器。最近,采用EEMBC系列汽車/工業(yè)標(biāo)準(zhǔn),在同樣的條件下測(cè)試ARM MCU的比例正在上升。

三款MCU進(jìn)行測(cè)試的結(jié)果數(shù)據(jù)顯示其吞吐率存在極大的差別,如圖所示。在比較過程中,結(jié)果數(shù)據(jù)根據(jù)它們的工作頻率進(jìn)行了歸一化處理,并且所有的軟件都是在片外閃存中運(yùn)行的。比較的結(jié)果表明:基于ARM的MCU普遍具有很好的性能,部分的性能差別在于MCU中實(shí)現(xiàn)片上閃存接口的優(yōu)化方法不同。

改善CPU指令執(zhí)行的吞吐量

由于閃存的訪問時(shí)間通常是CPU時(shí)鐘周期的3~4倍,找到一種從存儲(chǔ)器中快速傳輸數(shù)據(jù),而不需要在昂貴的片內(nèi)RAM中映射數(shù)據(jù)的方法,會(huì)極大地改善執(zhí)行的吞吐量。對(duì)于測(cè)試結(jié)果中最快的那顆MCU,設(shè)計(jì)者通過展寬存儲(chǔ)器數(shù)據(jù)總線到128位,以允許4個(gè)32位字在一個(gè)周期中被傳輸?shù)綌?shù)據(jù)鎖存器,然后再傳輸?shù)筋A(yù)取緩沖,從而解決了速度不匹配的問題。

由于CPU使用緩沖中的數(shù)據(jù),當(dāng)它執(zhí)行第4個(gè)字時(shí),另一個(gè)128位的字就被傳輸?shù)搅随i存器中,而同時(shí)該第4個(gè)字被移出了緩沖,鎖存器中的新字也被傳輸?shù)搅司彌_。只要發(fā)起一個(gè)對(duì)閃存的數(shù)據(jù)讀訪問(裝入操作),輔助的支持電路就建立一個(gè)數(shù)據(jù)通路將128位數(shù)據(jù)存儲(chǔ)在緩沖中。這允許代碼獲取的歷史被保留,從而避免了需要重新獲取4個(gè)指令字的情況。

如果一個(gè)存儲(chǔ)器陣列(bank)可以在存儲(chǔ)器訪問中極大地提高速率,那么設(shè)置兩個(gè)存儲(chǔ)器陣列會(huì)怎樣呢?通過采用鎖存器將存儲(chǔ)器分成兩個(gè)陣列的結(jié)構(gòu),對(duì)于每個(gè)陣列所有的支持邏輯都相同,并可以具有兩倍的指令歷史,短循環(huán)就可以在所有的鎖存器中被完整捕獲,循環(huán)的執(zhí)行得以加速。另外一點(diǎn),雙陣列也可以對(duì)嵌套循環(huán)和尋找分支目標(biāo)地址提供更好的支持。

內(nèi)部總線支持

正如EEMBC的標(biāo)準(zhǔn)測(cè)試所揭示的那樣,CPU吞吐量只是衡量高性能的指標(biāo)之一。對(duì)集成外設(shè)功能提供支持的MCU內(nèi)部總線也可能有很大的不同。內(nèi)部總線通常被連接到總線上的慢速設(shè)備所拖累,因此,更高速設(shè)備的數(shù)據(jù)傳輸就受到了限制。然而,通過采用總線分離的方法,將高速設(shè)備(例如10/100Mb/s以太網(wǎng)控制器或高速DMA控制器)連接到一段總線,而將低速設(shè)備(串行端口、定時(shí)器、脈寬調(diào)制器等)連接到另一段總線,就可以使每組設(shè)備發(fā)揮最好的性能。通過在芯片內(nèi)建立分層的總線,CPU可以具有對(duì)片上RAM和閃存進(jìn)行無約束訪問的局部總線。這就避免了CPU發(fā)出不必要的總線仲裁、總線批準(zhǔn)延遲,以及總線等待狀態(tài)等,從而改善了整體性能。

對(duì)于要求高性能的功能,如向量式中斷控制器、以太網(wǎng)控制器、DMA控制器等,ARM高速總線(AHB)提供了對(duì)CPU的快速接口。慢速設(shè)備可以連接到ARM設(shè)備總線(APB)上,而且可以橋接到AHB,以使數(shù)據(jù)和指令從CPU和存儲(chǔ)器不被影響地傳輸?shù)降退倏偩€。

當(dāng)CPU增加更多的片上資源時(shí),對(duì)這種分層總線結(jié)構(gòu)的需求就更高。在許多實(shí)時(shí)控制應(yīng)用中,采用單一總線拓?fù)浣Y(jié)構(gòu)的處理器無法獲得有效的高性能I/O支持。大量的集成外設(shè)也增加了CPU的工作量,CPU必須持續(xù)處理中斷和響應(yīng)所有的外設(shè)操作。通過使用高性能、向量式中斷控制器,許多過量的操作會(huì)得到卸載,從而縮短了CPU的響應(yīng)時(shí)間。EEMBC正在探索一種通用的方法,測(cè)試MCU的集成外設(shè)并開發(fā)檢測(cè)處理器運(yùn)行情況的標(biāo)準(zhǔn)。

審核編輯:湯梓紅

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

    關(guān)注

    68

    文章

    19032

    瀏覽量

    228448
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    16796

    瀏覽量

    349334
  • 嵌入式
    +關(guān)注

    關(guān)注

    5052

    文章

    18909

    瀏覽量

    300733
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    低價(jià)32MCU大軍壓境,8ASIC MCU看漲

    面對(duì)近期入門級(jí)32微控制器(MCU)步步進(jìn)逼,8MCU供應(yīng)商除持續(xù)開發(fā)特定應(yīng)用標(biāo)準(zhǔn)產(chǎn)品(ASSP)M
    發(fā)表于 07-17 10:45 ?2383次閱讀

    8或32,MCU究竟該怎么選

    正如汽車代替了馬車,電子郵件代替了普通郵件一樣,32元微控制器(MCU)讓8MCU變得黯然失色。盡管未來8
    發(fā)表于 06-01 10:12 ?2243次閱讀

    關(guān)于現(xiàn)實(shí)標(biāo)準(zhǔn)和32MCU的知識(shí)點(diǎn),看完你就懂了

    關(guān)于現(xiàn)實(shí)標(biāo)準(zhǔn)和32MCU的知識(shí)點(diǎn),看完你就懂了
    發(fā)表于 04-26 06:32

    8MCU升級(jí)至32MCU的設(shè)計(jì)方案

    8MCU升級(jí)至32MCU的設(shè)計(jì)方案 目前的MCU市場(chǎng)分為三個(gè)部分, 8、16
    發(fā)表于 03-17 15:03 ?42次下載

    8MCU如何升級(jí)至32MCU

    8MCU如何升級(jí)至32MCU   目前的MCU市場(chǎng)分為三個(gè)部分, 8、16
    發(fā)表于 04-16 14:19 ?2485次閱讀
    8<b class='flag-5'>位</b><b class='flag-5'>MCU</b>如何升級(jí)至32<b class='flag-5'>位</b><b class='flag-5'>MCU</b>

    MCU的8、16與ARM 32之戰(zhàn)

    MCU的8、16與ARM 32之戰(zhàn)
    發(fā)表于 01-12 22:20 ?17次下載

    隨著32MCU的崛起,8MCU或?qū)⑾?/a>

    似乎伴隨著16、32MCU的崛起,關(guān)于8MCU消亡的言論就從來沒有消停過。但事實(shí)是,8
    發(fā)表于 10-28 11:12 ?1632次閱讀

    32MCU異軍突起 8MCU何去何從

    根據(jù)市調(diào)機(jī)構(gòu)的分析數(shù)據(jù)指出,近年來盡管32MCU異軍突起,然而8MCU每年依然占有全球MCU市場(chǎng)的35%以上市占率。
    的頭像 發(fā)表于 01-07 16:09 ?1.1w次閱讀

    8MCU和32MCU的使用案例資料下載

    電子發(fā)燒友網(wǎng)為你提供8MCU和32MCU的使用案例資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計(jì)、用戶指南、解決方案等資料,希望可以幫
    發(fā)表于 04-22 08:43 ?21次下載
    8<b class='flag-5'>位</b><b class='flag-5'>MCU</b>和32<b class='flag-5'>位</b><b class='flag-5'>MCU</b>的使用案例資料下載

    32怎么將mcu內(nèi)的代碼擦除_8和32MCU該如何選擇?

    該如何對(duì)8以及32MCU進(jìn)行選擇?8和32MCU在功能上仍是互為輔助、各有千秋,這其中
    發(fā)表于 10-28 17:06 ?2次下載
    32怎么將<b class='flag-5'>mcu</b>內(nèi)的代碼擦除_8<b class='flag-5'>位</b>和32<b class='flag-5'>位</b><b class='flag-5'>MCU</b>該如何選擇?

    8和32MCU該如何選擇?

    本文對(duì)比了8MCU和32MCU的使用案例,也可作為如何選擇這兩種MCU架構(gòu)的指南使用。
    發(fā)表于 02-08 16:26 ?1次下載
    8<b class='flag-5'>位</b>和32<b class='flag-5'>位</b><b class='flag-5'>MCU</b>該如何選擇?

    32MCU“大展身手”,16MCU會(huì)逐漸消亡嗎?

    在32MCU持續(xù)降價(jià)加上8MUC簡單耐用的進(jìn)攻下,16MCU市場(chǎng)城池失守、節(jié)節(jié)敗退,成為了出貨比例最低的產(chǎn)品,甚至有很多企業(yè)在規(guī)劃中直
    發(fā)表于 02-13 10:52 ?818次閱讀

    8與32MCU如何選擇?

    從發(fā)展趨勢(shì)觀察,4與16MCU芯片使用案例愈來愈少,目前市場(chǎng)上較活躍的是8及32MCU
    發(fā)表于 03-07 18:04 ?1047次閱讀

    國產(chǎn)32mcu有哪些 32mcu是什么意思 8mcu和32mcu的區(qū)別

    32MCU是一種使用32架構(gòu)的微控制器單元,其中“MCU”是微控制器的縮寫。32指的是CPU的數(shù)據(jù)
    發(fā)表于 04-01 16:55 ?7243次閱讀

    8MCU的情形如何

    近年來,隨著工藝與IP的逐漸成熟,32MCU增長迅速,風(fēng)頭之勁乃至16MCU基本上被跳過了?,F(xiàn)在說嵌入式MCU,要么就是8
    的頭像 發(fā)表于 08-07 16:05 ?549次閱讀