<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 選擇合適的微控制器策略

選擇合適的微控制器策略

作者: 時(shí)間:2015-05-20 來(lái)源:網(wǎng)絡(luò ) 收藏

  系統性能并不等價(jià)于計算能力。較低的功耗、豐富的片內外設以及實(shí)時(shí)的信號處理能力對于大部分嵌入式應用來(lái)說(shuō)是最為重要的。傳統的8位、16位單片機已經(jīng)很好的處理了這類(lèi)問(wèn)題,但是隨著(zhù)當今嵌入式設計不斷增長(cháng)的功能需求和特殊要求,許多廠(chǎng)商開(kāi)始拋棄他們傳統的8位、16位單片機。但是選擇32位處理器對于某些任務(wù)來(lái)可能并不是最適宜的。下面我們就討論一下單片機的選型問(wèn)題。

本文引用地址:http://dyxdggzs.com/article/274480.htm

  理解系統性能

  (million instructions per second),是計算能力的表征。但是,所有的嵌入式應用不僅僅是需要計算能力,所以應用的多樣化決定了系統性能衡量方式的多樣化,大部分參數都同等重要并且難于用一個(gè)參數來(lái)表示,我們并不應該僅僅從就判定系統的好壞。也許某一應用由于成本的限制,需要一款高集成度的,該控制器需要多個(gè)定時(shí)器和多種接口。但是另一個(gè)應用需要高的精度和快速的模擬轉換能力。兩者的共同點(diǎn)可能僅僅是供電部分,比如采用電池供電。對于一個(gè)實(shí)時(shí)的順序處理應用來(lái)說(shuō),通信的失敗可能會(huì )導致災難性后果。這樣的場(chǎng)合下就需要一個(gè)靈巧的控制器。這個(gè)控制器應當能夠以正確的順序處理任務(wù),并且響應時(shí)間必須均衡。所有上述應用的共同問(wèn)題可能就是定期的現場(chǎng)升級能力。

  除了與具體的產(chǎn)品要求有關(guān)外,系統性能的衡量也可以考慮是否有容易上手、容易使用的開(kāi)發(fā)工具、應用示例、齊全的文檔和高效的支持網(wǎng)絡(luò )。

  系統性能的相關(guān)問(wèn)題

  1.傳統8位單片機的局限

  大多數工程師十分關(guān)注系統性能,因為越來(lái)越多的8位和16位單片機家族已經(jīng)無(wú)法滿(mǎn)足當今日益增長(cháng)的需求。陳舊和低效的架構限制了處理能力、存儲器容量、外設處理和低功耗要求。8位的處理器架構,比如8051、PIC14、PIC16、PIC18、78K0和HC08是在高級語(yǔ)言(比如C語(yǔ)言)出現之前開(kāi)發(fā)的,其指令集僅用于匯編開(kāi)發(fā)環(huán)境。并且這類(lèi)架構的中央處理單元(CPUs)缺乏一些關(guān)鍵功能,比如16位的算數運算支持、條件跳轉和存儲器指針。

  許多CPU架構執行一條指令需要若干時(shí)鐘周期。Microchip的8位PIC家族執行一條最簡(jiǎn)單的指令需要4個(gè)時(shí)鐘周期,這導致使用20M的時(shí)鐘僅能達到5.對于其他CPU架構,比如8051內核。其執行一條指令至少需要6個(gè)時(shí)鐘周期,這就使得實(shí)際的MIPS要比給定的時(shí)鐘頻率低很多。

  int max(int *array)

  {

  char a;

  int maximum=-32768;

  for (a=0;amaximum)

  maximum=array[a];

  return (maximum);

  }

  上述代碼是一個(gè)簡(jiǎn)單的C語(yǔ)言函數,表1列出了在三種不同CPU架構上編譯這段代碼的相應結果。8051內核的執行時(shí)間幾乎是PIC16內核的4倍,對于A(yíng)VR架構更是達到了28倍。

  表1不同CPU架構的代碼容量和執行時(shí)間

  CPU架構代碼容量(字節)執行時(shí)間(周期)

  8051 112 9384

  PIC16 87 2492

  AVR 46 335

  一些半導體廠(chǎng)商解決了時(shí)鐘分配問(wèn)題,使得微控制器實(shí)現了單時(shí)鐘周期指令。當時(shí)鐘頻率為100MHz時(shí),Silicon Labs聲稱(chēng)他們基于8位8051架構的微控制器能夠達到100MIPS的峰值。但是,這里有幾個(gè)問(wèn)題:

  第一,由于大部分指令需要兩個(gè)時(shí)鐘周期甚至更多,所以其實(shí)際能力接近于50MIPS;

  第二,8051是基于累加器的CPU,所有需要計算的數據必須拷貝到累加器。查看8051處理器的匯編代碼,可以發(fā)現65%-70%的指令用來(lái)移動(dòng)數據。由于現代8位和16位單片機架構中有一系列和算術(shù)邏輯單元(ALU)相連的寄存器。因此,8051內核的50MIPS僅相當于現代8位和16位單片機架構的15MIPS.

  MOV A,0x82

  ADD A,R1

  MOV 0x82,A

  MOV A,0x83

  ADDC A,R2

  MOV 0x83,A

  MOVX A,@DPTR

  MOV OxF0,A

  INC DPTR

  MOVX A,@DPTR

  RET

  第三,較老的CPU架構缺乏對大容量存儲器的支持。早在七十年代,很難想象需要超過(guò)64KB存儲器的嵌入式應用,這使得許多CPU設計師選擇16位的地址總線(xiàn)。因此,CPU、寄存器、指令集以及程序存儲器和數據存儲器的數據總線(xiàn)始終受此限制。

  第四,在2006年,約有9%的8位嵌入式應用使用了64KB甚至更多的程序存儲空間,這代表了8位MCU市場(chǎng)26%的收益。推測2009年,14%的8位嵌入式應用會(huì )代表36%的收益。而這14%的應用會(huì )使用64KB甚至更多的程序存儲空間。

  從系統性能的角度來(lái)看,所有這些使得較舊的8位MCU逐漸失去競爭力。

c語(yǔ)言相關(guān)文章:c語(yǔ)言教程


單片機相關(guān)文章:單片機教程


單片機相關(guān)文章:單片機視頻教程


單片機相關(guān)文章:單片機工作原理



上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: 微控制器 MIPS

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>