国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

企業(yè)網(wǎng)站建設(shè)御彩云百度seo優(yōu)化策略

企業(yè)網(wǎng)站建設(shè)御彩云,百度seo優(yōu)化策略,wordpress瀏覽記錄,營銷課程文章目錄 前言 背景介紹 指令集架構(gòu) ARM起源 ARM分類 Cortex-M4 內(nèi)核框架 指令流水線 實踐應(yīng)用 總結(jié) 參考資料 前言 見《【研發(fā)日記】嵌入式處理器技能解鎖(一)——多任務(wù)異步執(zhí)行調(diào)度的三種方法》 見《【研發(fā)日記】嵌入式處理器技能解鎖(二)——TI C2000 DSP的SCI(…

文章目錄

前言

背景介紹

指令集架構(gòu)

ARM起源

ARM分類

Cortex-M4

內(nèi)核框架

指令流水線

實踐應(yīng)用

總結(jié)

參考資料


前言

????????見《【研發(fā)日記】嵌入式處理器技能解鎖(一)——多任務(wù)異步執(zhí)行調(diào)度的三種方法》

????????見《【研發(fā)日記】嵌入式處理器技能解鎖(二)——TI C2000 DSP的SCI(串口)通信》

????????見《【研發(fā)日記】嵌入式處理器技能解鎖(三)——TI C2000 DSP的C28x內(nèi)核》????????

????????見《【研發(fā)日記】嵌入式處理器技能解鎖(四)——TI C2000 DSP的Memory》

????????見《【研發(fā)日記】嵌入式處理器技能解鎖(五)——TI C2000 DSP的中斷系統(tǒng)》

背景介紹

????????ARM內(nèi)核最典型的應(yīng)用就是STM32,也是ARM內(nèi)核出貨量最大,應(yīng)用最廣泛的一個地方,如下圖所示:

指令集架構(gòu)

????????理論上指令集分為復(fù)雜指令集(Complex Instruction Set Computer,CISC)和精簡指令集(Reduced Instruction Set Computer,RISC)。CISC出現(xiàn)的較早,典型的代表是x86架構(gòu)。CISC里邊的每個指令通常包含多個操作(指令長度在幾字節(jié)到十幾字節(jié)不等),這些操作可以在單個指令中完成,這樣就可以通過一條指令完成復(fù)雜的操作,減少了內(nèi)存訪問次數(shù)實現(xiàn)更高的代碼執(zhí)行效率,同時也提高了代碼密度減少了軟件開發(fā)人員編寫代碼的時間和工作量。隨著技術(shù)的發(fā)展,指令數(shù)量越來越多,CISC處理器的設(shè)計和優(yōu)化變得越來越困難,并且大部分的指令的使用頻率非常低,導(dǎo)致了硬件資源的浪費。所以就出現(xiàn)了RISC,慢慢更加流行起來。RISC的特點是每個指令只執(zhí)行一個操作(指令長度在2字節(jié)或4字節(jié)),指令數(shù)量精簡掉很多,提高了處理器的可靠性。軟件開發(fā)人員組合使用這些指令,也可以實現(xiàn)復(fù)雜的功能,同時也更容易對復(fù)雜操作進行設(shè)計和優(yōu)化。

????????下面以偽匯編指令舉例,說明一個簡單加法運算:地址[0001]的數(shù)據(jù),和地址[0002]的數(shù)據(jù)相加,結(jié)果存到地址[0003]里。

????????ACC形式的偽匯編指令如下:

LOAD ACC [0001]  //地址[0001]的數(shù)據(jù),加載到累加器ACCADD ACC [0002] ACC  //ACC加地址[0002]的數(shù)據(jù),結(jié)果存到ACCSTOR ACC [0003]  //ACC的數(shù)據(jù)存到地址[0003]

????????LOAD_ STORE形式的偽匯編指令如下:

LOAD R1 [0001]    //地址[0001]的數(shù)據(jù),加載到R1寄存器LOAD R2 [0002]    //地址[0002]的數(shù)據(jù),加載到R2寄存器ADD R3 R1 R2       //R1+R2,結(jié)果存到R3寄存器STORE R3 [0003]   //R3寄存器的數(shù)據(jù)存到地址[0003]

????????ACC形式的微控制器只有一個ACC(累加器,ACC可以認(rèn)為是一個寄存器),數(shù)據(jù)可以直接從RAM到ACC進行累加,但是運算結(jié)果需要還存回RAM里,ACC才能放入新數(shù)據(jù)。運算速度的瓶頸卡在ACC寄存器數(shù)量太少。

????????LOAD_ STORE形式的微控制器沒有ACC,而是增加了多個內(nèi)部運算寄存器R1、R2、R3、…、R12等等,多形參函數(shù)不用反復(fù)的壓棧和出棧,降低了內(nèi)核和外部數(shù)據(jù)的耦合程度(同時也增加了調(diào)度難度)。運算速度的瓶頸卡在LOAD環(huán)節(jié)太多。

????????總的來講CISC和RISC各有優(yōu)缺點,現(xiàn)代計算機處理器通常采用混合指令集?,F(xiàn)實中的嵌入式系統(tǒng)芯片大多是以RISC為主體(有利于平臺化通用化),少量補充一些專用CISC(有利于專項性能極致發(fā)揮),所以很難把一個廠商的處理器明確地劃分為CISC或者RISC。當(dāng)前影響比較大的兩類是ARM(Advanced RISC Machines)和RISC-V(Reduced Instruction Set Computer -Five)。

????????ARM是一種基于RISC架構(gòu)的處理器架構(gòu),采用了Thumb簡化指令集和Thumb-2擴展指令集。Thumb簡化指令集是一種基于RISC的指令集,指令長度為16位,比原本的32位指令集要短,占用空間更小,能夠在存儲和傳輸數(shù)據(jù)時提高效率。Thumb-2擴展指令集則是在Thumb簡化指令集的基礎(chǔ)上擴展而來的,指令長度包括16位和32位兩種,支持更多的指令和操作,滿足不同領(lǐng)域應(yīng)用的需求。除了RISC之外,ARM還采用了一些特殊的技術(shù),如流水線、分支預(yù)測等,以提高指令的執(zhí)行速度和效率。ARM的部分指令集如下圖所示:

????????RISC-V是基于RISC的一個開放,免費的指令集架構(gòu),具有靈活、可擴展定制、跨平臺、廣泛適用等特點。RISC-V指令集設(shè)計的目標(biāo)是提供一種通用的指令集架構(gòu),適用于各種計算機系統(tǒng)和嵌人式系統(tǒng),包括高性能服務(wù)器、個人計算機、移動設(shè)備、物聯(lián)網(wǎng)、機器人、汽車電子等領(lǐng)域。RISC-V包括基本指令集(RV32I、RV64I)和標(biāo)準(zhǔn)擴展指令集(RV32G、RV64G),以及可選的專用擴展指令集,如浮點指令集(RV32F、RV32D、RV64F、RV64D),向量指令集(RV32V、RV64V)等,開發(fā)者可以根據(jù)實際需求選擇合適的指令集。RISC-V的特性點決定了其在未來計算機系統(tǒng)和嵌人式系統(tǒng)發(fā)展趨勢中的重要地位,是我國芯片領(lǐng)域自主創(chuàng)新的一個重要方向,以華為麒麟710、北京兆易GD32V系列為代表的國產(chǎn)RISC-V芯片,已經(jīng)開始廣泛用于各種領(lǐng)域。

????????Tips1:MIPS(Microprocessor without Interlocked Pipeline Stages)也是采取RISC的一種指令集架構(gòu)。

????????Tips2:TI C2000 DSP的C28x內(nèi)核官方宣稱是RISC,實際上也包含了CISC。

ARM起源

????????1978年,物理學(xué)家Hermann Hauser和工程師Chris Curry在英國劍橋創(chuàng)辦了CPU(Cambridge Processing Unit)公司,主要業(yè)務(wù)是為當(dāng)?shù)厥袌龉?yīng)電子設(shè)備。后來公司改名為ACG(Acorn Computer Group)公司。

????????1983年,ACG公司開始研發(fā)一種新的處理器架構(gòu),命名為ARM(Advanced RISC Machine)。兩年時間就開始被應(yīng)用在自家的新一代計算機Archimedes上。

????????1990年,ACG公司正式改名為ARM計算機公司,吸引了很多大公司的投資。蘋果公司、芯片廠商VLSI公司,加上ACG本身的資金和知識產(chǎn)權(quán),一起人股做了一家這樣的ARM計算機公司。起初由于業(yè)務(wù)不景氣,ARM公司被迫放棄自己制造芯片,把芯片的設(shè)計方案授權(quán)給其他公司來生產(chǎn)。正是因為這個因禍得福的模式,使ARM的芯片遍地開花。這個迫于無奈的決定,在今天看來意義非常深遠,奠定了ARM公司長久以來的發(fā)展模式。

????????近年來,ARM 繼續(xù)推出了一系列高性能、低功耗的處理器,如Cortex-A76、Cortex-A77和Cortex-A78等,被廣泛地應(yīng)用于智能手機、物聯(lián)網(wǎng)和自動駕駛等領(lǐng)域。同時,ARM還在人工智能、機器學(xué)習(xí)等領(lǐng)域不斷進行探索。

????????現(xiàn)在的ARM公司是全球嵌人式處理器領(lǐng)域的領(lǐng)導(dǎo)者,在嵌入式領(lǐng)域有著巨大的影響。ARM公司基本不生產(chǎn)處理器芯片,而是專注于設(shè)計處理器內(nèi)核和架構(gòu),然后再授權(quán)給其他芯片廠商,賺取首次的授權(quán)費和后續(xù)銷售每顆處理器芯片的知識產(chǎn)權(quán)費。ARM合作商遍布全球,根據(jù)ARM公司發(fā)布的數(shù)據(jù),其處理器架構(gòu)在全球處理器市場份額已經(jīng)超過50%,特別是在智能手機和平板電腦等領(lǐng)域,幾乎是市場的獨霸者。由于ARM剛好趕上了移動設(shè)備爆發(fā)式發(fā)展的時代,最終造就了它的輝煌。

????????未來,雖然ARM公司宣稱其基本統(tǒng)一了全球的智能手機領(lǐng)域,但在手機領(lǐng)域里并不輕松,有被邊緣化的可能性。手機行業(yè)的客戶非常強大又強勢,且客戶的研發(fā)實力更強,也不想受制于人,都開始著手做自己的微架構(gòu)(國內(nèi)的手機公司也準(zhǔn)備拋棄ARM公司的微架構(gòu))。蘋果、高通等手機芯片廠家,并不采用ARM公司的微架構(gòu),僅購買其指令集,所以不同手機處理器廠家有不同的處理速度、擴展硬件和擴展指令。

????????Tips:ARM起初是一家英國公司,2016年被日本軟銀集團收購了,到了2020年美國NVIDIA(英偉達)想再次收購ARM,因壟斷調(diào)查沒有成功。

ARM分類

????????ARM處理器產(chǎn)品分為傳統(tǒng)經(jīng)典系列和較新的Cortex處理器系列,并且根據(jù)應(yīng)用范圍的不同又分為應(yīng)用處理器、實時處理器、微控制處理器三種類別。如下圖所示:

????????Cortex-A系列:這是一種ARMv7、ARMv8(64位)或ARMv9(64位)版本的應(yīng)用處理器架構(gòu),采用了超標(biāo)量流水線設(shè)計,能夠?qū)崿F(xiàn)更高的性能和效率。適用于高性能的移動設(shè)備、智能電視、網(wǎng)絡(luò)設(shè)備、云計算和服務(wù)器等場景。

????????Cortex-R系列:這是一種針對實時系統(tǒng)的ARM架構(gòu),增加了一些安全機制,具有強實時性和高可靠性,支持容錯和糾錯機制。適用于汽車、工業(yè)自動化、航空航天和醫(yī)療設(shè)備等領(lǐng)域中的專項應(yīng)用,相比A系列和M系列它的市場應(yīng)用窄很多。

????????Cortex-M系列:這是一種專門為嵌入式系統(tǒng)和微控制器設(shè)計的ARM架構(gòu),具有低功耗、低成本和微實時性等特點,可以實現(xiàn)小型、低功耗的嵌入式系統(tǒng)設(shè)計。適用于智能家居、物聯(lián)網(wǎng)、汽車、工業(yè)自動化、航空航天和醫(yī)療設(shè)備等領(lǐng)域的廣泛應(yīng)用。Cortex-M系列逐漸有覆蓋R系列和A系列部分特性的發(fā)展趨勢,其子系列非常豐富,包括:

1、低速度和低功耗定點系列:MO、M0+;

2、中端定點系列:M3;

3、中端含有DSP功能的可選浮點系列:M4;

4、高端含有DSP功能的浮點系列:M7;

5、加人安全機制系列:M23、M33、M35P。

????????Tips:這里缺少了M1系列,因為M1系列只適用于運行在FPGA上,不是通用的微控制器內(nèi)核。

Cortex-M4

????????ST(意法半導(dǎo)體),由意大利和法國的兩家半導(dǎo)體公司合并而成。ST公司以STM32為前綴的32位微處理器,就是采用ARM的內(nèi)核。其中最為人熟知,最主流也是性價比最高的,就是入門級別的STM32 F1系列和中端級別STM32 F3系列。F1系列與F3系列最主要的不同之處就是,Cortex-M4比Cortex-M3多了浮點處理單元和DSP單元,如下圖所示:

????????DSP(Digital Signal Process)特性:

Single-cycle 16/32-bit MAC(Combined Multiply and Accumulate);

Single-cycle dual 16-bit MAC;

8/16-bit SIMD(Single Instruction, Multiple Data) arithmetic;

Hardware support for conversion, addition, subtraction, multiplication with optional accumulate, division(2-12 cycles), and square root;

????????FPU(Floating-Point Unit)特性:

Optional single precision floating point unit;

IEEE 754 compliant;

內(nèi)核框架

????????Cortex-M4的內(nèi)核框架如下圖所示:

指令流水線

????????Cortex-M4采用3級Pipeline(流水線)如下圖所示:

實踐應(yīng)用

????????👍點贊過100,下一篇文章繼續(xù)

總結(jié)

一個處理器要向更高性能升級,常用的主要途徑是:

1、采用更先進的nm制程工藝水平;

2、降低內(nèi)核電壓,從而降低功耗獲得更快的工作頻率

3、增加多級流水線

4、多核,但也帶來代碼復(fù)雜性的急劇上升;

5、增加更寬的位數(shù),從而一次性處理多個數(shù)據(jù),即單指令多數(shù)據(jù)流(SIMD);

6、添加新的獨立硬件單元,并添加新指令。與此同時,仍要保持系統(tǒng)的向下兼容性,保留原先大多數(shù)的舊指令。

????????隨著指令的增加,要保持系統(tǒng)仍是精簡指令集,是一件困難的事情。有程序員感嘆:這個世界到底有沒有指令很少的精簡指令集系統(tǒng)?雖然多數(shù)書籍時髦的人云亦云地說,RISC架構(gòu)的指令更少,實際上不斷增長的ARM指令非常多,絕對不比CISC指令少。

????????以上就是本人在研發(fā)中使用ARM Cortex-M4處理器時,一些個人理解和分析的總結(jié),主要介紹了ARM的起源和發(fā)展,展示了ARM Cortex-M4內(nèi)核的工作原理,并分析了它的特點和應(yīng)用場景。

????????后續(xù)還會分享另外幾個最近解鎖的嵌入式處理器新技能,歡迎評論區(qū)留言、點贊、收藏和關(guān)注,這些鼓勵和支持都將成文本人持續(xù)分享的動力。

????????另外,上述例程使用的Demo工程,可以到筆者的主頁查找和下載。

參考資料

????????Arm-Cortex-M4-Processor-Datasheet.pdf


????????版權(quán)聲明,原創(chuàng)文章,轉(zhuǎn)載和引用請注明出處和鏈接,侵權(quán)必究!

http://aloenet.com.cn/news/45988.html

相關(guān)文章:

  • 徐州手機網(wǎng)站建設(shè)公司哪家好seo實戰(zhàn)培訓(xùn)課程
  • wordpress會員插件上海搜索引擎優(yōu)化1
  • 天津網(wǎng)站建設(shè)推廣百度網(wǎng)址大全電腦版舊版本
  • 網(wǎng)站開發(fā)課程技術(shù)培訓(xùn)中國廣告網(wǎng)
  • wordpress留言版添加如何做網(wǎng)站推廣及優(yōu)化
  • 下載wordpress建站程序seo網(wǎng)站結(jié)構(gòu)優(yōu)化
  • 女生java網(wǎng)站開發(fā)培訓(xùn)后好找工作西安百度推廣客服電話多少
  • 南橋做網(wǎng)站什么是百度競價排名服務(wù)
  • 網(wǎng)絡(luò)規(guī)劃設(shè)計師報考條件seo自然排名優(yōu)化
  • 網(wǎng)站制作_做網(wǎng)站_耐思智慧什么叫口碑營銷
  • 橙子建站官方網(wǎng)站新鄉(xiāng)seo推廣
  • 東莞大型網(wǎng)站建設(shè)哪家好網(wǎng)站搭建關(guān)鍵詞排名
  • 西安做網(wǎng)站印象網(wǎng)絡(luò)整合營銷策劃
  • 新鄉(xiāng)網(wǎng)站建設(shè)哪家正規(guī)不需要驗證碼的廣告平臺
  • 低價的網(wǎng)站建設(shè)互聯(lián)網(wǎng)公司排名2021
  • 太原做網(wǎng)站的惠州seo排名公司
  • 永久免費網(wǎng)站建立國內(nèi)新聞最新消息今天
  • 建設(shè)部網(wǎng)站施工合同公司官網(wǎng)開發(fā)制作
  • dw如何用表格做網(wǎng)站深圳網(wǎng)站設(shè)計知名樂云seo
  • 閘北專業(yè)做網(wǎng)站seo搜索引擎實訓(xùn)心得體會
  • 簡單模板網(wǎng)站制作時間百度優(yōu)化是什么意思
  • 武漢網(wǎng)站建設(shè)老牌公司適合推廣的app有哪些
  • 網(wǎng)站建設(shè)代碼生成器重慶seo外包平臺
  • dw軟件做二級連接網(wǎng)站長春網(wǎng)站制作推廣
  • 南京美容網(wǎng)站建設(shè)營銷案例
  • 網(wǎng)站建設(shè)報價明細(xì)表指數(shù)分布的分布函數(shù)
  • 福州正規(guī)網(wǎng)站建設(shè)公司報價雙灤區(qū)seo整站排名
  • 蕪湖做公司網(wǎng)站網(wǎng)站優(yōu)化排名網(wǎng)站
  • 哪個教育網(wǎng)站做助理造價師培訓(xùn)關(guān)鍵詞優(yōu)化排名用哪些軟件比較好
  • 手機網(wǎng)站推廣怎么做軟文營銷常用的方式