那曲檬骨新材料有限公司

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

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

3天內不再提示

如何實現處理器評估與設計考慮因素

電子設計 ? 來源:互聯網 ? 作者:佚名 ? 2018-08-09 09:45 ? 次閱讀

雖然 Arduino 基板設計的早期迭代只利用 Atmel 8、16 和 32 位 AVR 微控制器,但最近卻出現了許多包括非 Atmel MCU 和 MPU 在內的基板。 在適當考慮一些重要設計取舍后,這不僅可向設計師賦予更大的處理器與 I/O 靈活性,還可提供更多選擇,讓 Arduino 板運用于從開發到生產的所有階段。

當然,眾多這類新 Arduino 基板還在普通行業標準和開源硬件方法中提供更高的系統處理器靈活性。 Arduino 憑借這些屬性而成為處理器評估和選購的一個很有吸引力的選擇,在此階段之后,可能才適合過渡至使用處理器供應商的開發板(以及相關聯的軟件和其他資源)。 但在某些情形下,Arduino 板可能不僅適用于開發,結合“盾形”擴展板所帶來的靈活的增強功能后,還適合直接用于直至生產的所有階段。

本文將展示多個典型的 Arduino 基板以及盾板產品,討論其處理器基礎及外設分配等。 最后還會提供一些總結性建議,以輕松、有效地評估您下一次設計可采用的替代處理器。

定義 Arduino

“評估板”和“開發板”術語通常可互換使用,但這樣做是錯誤的。 顧名思義,開發板旨在協助進行軟件編碼(在系統硬件設計上運行),以及提供板上硬件和其他必要系統電路之間的連接。 因此,開發板提供大量測試點接口選擇,以及強大的捆綁軟件工具集。

但是開發板的全面性(及相應的高價位)固有隱含假設是:您已通過架構和產品擴散評估階段,并選擇了特定的硬件產品組合。 這就是說,某些開發板的板載電路可能超出了(或至少不同于)您打算納入最終設計中的電路。 此外,開發板的靈活性還決定它需要比您設計需要的尺寸更大。 更通俗的來說,開發板軟硬件配置的全面性,結合其低出貨量,意味著即使用于小批量、高利潤率的系統生產方案,它們的價格也可能是令人難以接受的。

過去十年來,Arduino 基板和擴展板規范實際上已迅速成為行業標準,理由很充分。 它們利用更基本的“基”板,而非試圖提供多位一體的統一板設計。 Arduino 靈活的增強功能由擴展板(亦稱“盾板”)提供,能夠通過標準化接口連接至基板。 盾板可以疊接,甚至可以通過自助盾板設計來補充。 由于眾多供應商提供包含許多電路的盾板,因此您不但可以輕松評估不同的功能,而且還可評估實現這些功能的不同硬件選擇。

類似地,在 Arduino 基板設計的初始迭代只利用 Atmel AVR 微控制器的情況下,最近也出現了包含非 Atmel MCU 和 MPU 在內的其他基板備選對象,可提供更高的系統處理器評估靈活性。 此外,Arduino 的緊湊外形尺寸結合其高容量特色,成就了較高的性價比,使其不僅對評估和后續開發階段有吸引力,還適用于許多適度量產的情形。

Adafruit Industries Digi-Key Metro 板

我們首先來了解相對傳統的基板設計—Adafruit IndustriesDigi-Key Metro 板。 Arduino UNO R3 參考設計的這個派生器件,由 Digi-Key 做了兩項外觀美化(從硬件的角度看,這兩塊板是相同的),在“帶針座的 Metro 328”板的基礎上實現了進一步定制。

  • 它采用紅色,相應主流 Adafruit 產品為黑色,以及

  • 板下側印有完整零件清單(圖 1)

圖 1a

圖 1b

圖 1c

圖 1:Adafruit Digi-Key Metro 板 (a) 是制造商主流的帶針座 Metro 328 板 (b) 的變型,定制使用紅色裝飾涂層,并在其下側 (c) 印有完整的零件清單。

AtmelATmega328P 微控制器基于 Digi-Key Metro 板,是一個采用 8 位 20 MHz AVR RISC 的處理器,具有額外的 32 KB 系統內可編程閃存、1,024 B 的 EEPROM 以及 2 KB 的 SRAM。 ATmega328P 還隨附多種片載外設;連接選件包括 23 個 GPIO、16 個觸摸接口通道、24 個外部中斷、一個字節導向的雙線串行接口以及一個 SPI 串行端口

Seeed Technology Intel Edison for Arduino 套件

另一個極端是Seeed Technology的 Intel Edison for Arduino 套件,它是用于基礎Intel Edison 開發平臺(圖 2)的多個可用硬件擴展選擇之一。 此基板尺寸為 127 mm x 72 mm,比前述 71 mm x 53 mm Arduino UNO 外形尺寸大不少,但 Arduino“盾形”擴展總線標準化則通過四個板載連接器來實現。 Arduino 套件還包括一個 SD 卡連接器,以及兩個小型和標準型 USB 主機連接器。

圖 2a

圖 2b

圖 2c

圖 2:Seeed Technology 的 Arduino 套件將“盾形”擴展板生態系統支持帶至原本專有的 Intel Edison 開發平臺板設計 (a)。 如果您只需要“分線”連接并且偏好較小的板外形尺寸,則可考慮該公司的替代 Intel Edison 分線套件 (b)。 此外,SparkFun Electronics 的開放式電源入門套件提供一種中間方法;尺寸介于兩個其他板之間,通過專有的(雖然開源)“塊”疊接方案 (c) 擴展。

Intel 的 Edison 在 IoT 和其它嵌入式電子市場上出現得相對較晚,是一個采用 22 nm 工藝制造的 SoC,其內核采用該公司的 32 位 Quark 微控制器(在此特定情況下運行頻率為 100 MHz)。 同一芯片上還有一個雙核、雙線程 500 MHz "Silvermont" Intel Atom 處理器陣列。 Intel Edison 開發平臺模塊上還包括 1 GB 的 LPDDR3 SDRAM、4 GB 的基于 EMMC 的閃存、一個 USB 2.0 PHY 和雙頻 Wi-Fi 以及藍牙無線收發器

為了在后續外形尺寸顯著減小的情況下獲得 Intel Edison 評估開發所需的較適度功能,Seeed 還提供分線套件。 此外,作為中間的替代硬件方法,Intel Edison 倡導者還應考慮 SparkFun Electronics 的基板和擴展塊系列,其中幾個基板和擴展塊捆綁在該公司的開放式電源入門套件中。 SparkFun 的基于 Intel Edison 的產品線從供應商的角度出發目前為專有采購(雖然從板設計文檔的角度出發為開源),將在即將推出的文章中會更詳細地討論。

UDOO Neo 開發板

如果 Arduino 的標準化富有吸引力,但 NXP 的 i.MX 6 處理器更符合您的喜好,您可能需要考慮 UDOO 的 Neo 開發板產品線(圖 3和表 1)。 Neo 提供三種型號,它們全部基于 i.MX6 SoloX SoC 并且外形尺寸皆為 89 mm x 59 mm,介于之前討論的兩個選件的尺寸之間(但同樣采用引腳分配和布局標準的板載 Arduino“盾板”連接器組)。

圖 3a

圖 3b

圖 3c

圖 3:UDOO 的 Neo 產品線提供三種版本:基本版 (a)、擴展版 (b) 和完整版 (c),帶有混用無線和有線網絡連接選件,以及各種系統存儲器分配和可選的運動傳感器

image.png

表 1:UDOO Neo 系統板型號及選件。

所有三個型號均具有以下特性:

  • 視頻輸入:模擬(NTSC 和 PAL)以及 8 位并行數字

  • 視頻輸出:Micro HDMI 以及 LVDS + 觸摸 (I2C)

  • 存儲:8 位 microSD 卡(帶 SDIO 支持)

  • 音頻:HDMI(輸出)、S/PDIF、I2S

  • USB:一個 USB 2.0 A 型,一個 microUSB(帶 OTG 支持)

UDOO Neo 產品線所基于的NXPi.MX 6SoloX 應用處理器由一個 ARM? Cortex?-A9 處理器內核(運行速度高達 1 GHz)及 ARM Cortex-M4 內核(高達 200 MHz)組成。 同時集成了一個 Vivante GC400T 2D/3D 圖形加速器。

Analog Devices ADUCM360 基板

如果 ARM 的 Cortex-M 系列內核是您唯一關注的處理器,您應了解下Analog DevicesADUCM360 基板,制造商稱該基板的外形尺寸與 101.6 mm x 53.3 mm Arduino Due 參考板設計兼容(圖 4)。 此板所基于的ADuCM360 應用處理器是一個速率達 3900 次采樣/秒的 24 位數據采集系統,包含兩個 24 位多通道三角積分型模數轉換器 (ADC)、一個提供高達 20 MIPS 峰值性能的 32 位 ARM Cortex-M3 處理器內核,以及 128 KB 的基于 EEPROM 的閃存和 8 KB 的 SRAM。

圖 4a

圖 4b

圖 4c

圖 4d

圖 4:Analog Devices 的 ADUCM360 基板 (a) 采用兼容 Arduino Due 的外形尺寸 (b)。 提供的 Analog Devices 牌“盾形”擴展板支持加速計和電子秤 (c) 以及毒氣檢測 (d) 功能。 (圖片由 Analog Devices 提供)

ADUCM360 基板還支持 PMOD 擴展總線標準,這解釋了圖 4 中所示的附加連接器組。 Analog Devices 推出了幾款 Arduino Uno R3 格式的盾形擴展板供選擇,有力補充了更廣泛的 Arduino 生態系統提供的擴展板:

  • EVAL-ADXL362-ARDZ,基于 ADXL362 3 軸 MEMS 加速計。

  • EVAL-CN0216-ARDZ,一種電子秤信號調節系統。

  • EVAL-CN0357-ARDZ,一種使用電化學傳感器的有毒氣體檢測器。

處理器評估與設計考慮因素

本文討論的 Arduino 板代表了一組廣泛的處理器架構及關聯能力。 例如,Atmel ATmega328P 是一種相對比較簡單的 8 位 RISC CPU 應用,而 64 位雙核 Intel Atom 處理器不僅以較高時鐘速度運行,而且采用多線程并在其他方面更先進。 16 和 32 位 ARM Cortex-M3/M4 和 Cortex-A9 以及 Intel Quark 處理器是早期兩個極端型號之間的中間選擇。

一方面,如我最近發布的另一篇文章中所寫,緊湊、強大、高效且具成本優勢的基于 ARM 的板卡才是有吸引力的硬件選擇,您不會想要選擇對您的特定需求而言過慢的 CPU,尤其是當你希望為今后不可避免的軟件升級保留一些性能“空間”時。 另一方面,沒有必要為超出你需求的處理器功率買單;記住你的選擇不僅是價格,還有功耗影響。 若您的軟件大部分時間都處于等待輸入的空閑循環中,更高的時鐘速度可能意義不大。 此外,僅當您的軟件具有較低的指令間相關性時,像超標和故障支持等架構特性才能達到明顯更高的、可實現的 IPC(指令/時鐘)。

類似地,相比更簡單的單核 CPU,缺乏線程獨立性將導致多核 CPU 的吞吐量優勢只能部分發揮,而較高位指令集理論優勢在特定應用中可能無法發揮作用(更何況其更大存儲器封裝需求)。

認真確定您的特殊需求,因為這將幫助您專注于本文介紹的全部產品中的首選處理器選擇。 理想情況下,您的終端系統軟件應該已經可以使用,這樣您便可在多種備選對象上運行該軟件,并評估這些備選對象的相對優勢和不足。 但實際上,很可能在硬件開發工作的同時已經編寫代碼的重要部分(如果不是全部)。 因此,您需要使用軟件來評估替代處理器,逼近您將要使用的函數和例程(特別是最嚴苛的函數和例程)。

為了對您有所幫助,我們提供了多種基準軟件選擇。 出于對魯棒性和開源特性的五月份認真考慮,一種可能的選擇是相應稱作“基準”的、由 Google 在 GitHub 上提供的微基準支持庫。 此庫包含許多特定示例,因此必須運行代表終端節點中可能存在的多種特征的一系列測試,以全面評估每個替代處理器。

在基本使用中,您可以定義執行待評估代碼的函數:

static void BM_StringCreation(benchmark::State& state) {

while (state.KeepRunning())

std::string empty_string;

}

// Register the function as a benchmark

BENCHMARK(BM_StringCreation);

// Define another benchmark

static void BM_StringCopy(benchmark::State& state) {

std::string x = "hello";

while (state.KeepRunning())

std::string copy(x);

}

BENCHMARK(BM_StringCopy);

BENCHMARK_MAIN();

還可以通過單一例程實現一系列基準;使用一個額外參數來指定要運行基準系列中的哪一個。 例如,以下代碼定義了一系列用于評估不同長度 memcpy() 調用速度的基準:

static void BM_memcpy(benchmark::State& state) {

char* src = new char[state.range_x()];

char* dst = new char[state.range_x()];

memset(src, 'x', state.range_x());

while (state.KeepRunning())

memcpy(dst, src, state.range_x());

state.SetBytesProcessed(int64_t(state.iterations()) *

int64_t(state.range_x()));

delete[] src;

delete[] dst;

}

BENCHMARK(BM_memcpy)->Arg(8)->Arg(64)->Arg(512)->Arg(1<<10)->Arg(8<<10);

也可以更簡潔地編碼,例如像這樣:

BENCHMARK(BM_memcpy)->Range(8, 8<<10);

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Digi-Key
    +關注

    關注

    4

    文章

    135

    瀏覽量

    52721
  • Arduino
    +關注

    關注

    188

    文章

    6477

    瀏覽量

    187844
  • UDOO
    +關注

    關注

    0

    文章

    3

    瀏覽量

    5260
收藏 人收藏

    評論

    相關推薦

    嵌入式微處理器選型的考慮因素

    在產品開發中,作為核心芯片的微處理器,其自身的功能、性能、可靠性被寄予厚望,因為它的資源越豐富、自帶功能越強大,產品開發周期就越短,項目成功率就越高。但是,任何一款微處理器都不可能盡善盡美,滿足每個
    發表于 06-09 10:47

    選擇處理器過程中需要考慮哪些因素

    如今隨著多模式處理的應用出現,選擇處理器早已不再是一項相對簡單的事情。但通過考察幾個關鍵考慮因素,可以簡化決策過程。
    發表于 09-03 08:06

    SHARC處理器評估系統

    用于SHARC處理器的ADZS-21489-EZLITE,ADSP-2148x EZ-KIT Lite評估系統。 SHARC處理器基于32位超級哈佛架構,包括一個獨特的內存架構,由兩個大型片上雙端口
    發表于 03-16 10:19

    嵌入式微處理器選型要考慮因素盤點

    。嵌入式系統主要由嵌入式處理器、相關支撐硬件、嵌入式操作系統及應用軟件系統等組成,它是可獨立工作的“器件”。要選好一款處理器,要考慮因素很多,不單單是純粹的硬件接口,還需要
    發表于 12-31 17:34

    嵌入式ARM微處理器選型的考慮因素

    要選好一款ARM處理器,要考慮因素很多,不單單是純粹的硬件接口,還需要考慮相關的操作系統、配套的開發工具、仿真,以及工程師微
    發表于 12-20 08:17

    新一代HMI的3個考慮因素

    。此外,向 HMI 設計中添加邊緣AI功能(如機器視覺),可以對當前系統狀態和預測性維護進行更準確的分析。創建全新的HMI應用時,需要考慮邊緣AI應用開發的工作量以及處理器的功能。考慮因素
    發表于 11-03 07:13

    AN-386:選擇DSP處理器考慮因素,ADSP-2105與TMS320C25

    AN-386:選擇DSP處理器考慮因素,ADSP-2105與TMS320C25
    發表于 04-15 19:42 ?9次下載
    AN-386:選擇DSP<b class='flag-5'>處理器</b>的<b class='flag-5'>考慮</b><b class='flag-5'>因素</b>,ADSP-2105與TMS320C25

    AN-400:選擇DSP處理器考慮因素--為什么購買ADSP-2181?

    AN-400:選擇DSP處理器考慮因素--為什么購買ADSP-2181?
    發表于 05-10 10:37 ?2次下載
    AN-400:選擇DSP<b class='flag-5'>處理器</b>的<b class='flag-5'>考慮</b><b class='flag-5'>因素</b>--為什么購買ADSP-2181?

    選擇DSP處理器ADSP-2115與TMS320C5x的考慮因素

    選擇DSP處理器ADSP-2115與TMS320C5x的考慮因素
    發表于 05-24 14:05 ?4次下載
    選擇DSP<b class='flag-5'>處理器</b>ADSP-2115與TMS320C5x的<b class='flag-5'>考慮</b><b class='flag-5'>因素</b>

    選擇DSP處理器ADSP-2101與DSP16A的考慮因素

    選擇DSP處理器ADSP-2101與DSP16A的考慮因素
    發表于 05-24 14:31 ?2次下載
    選擇DSP<b class='flag-5'>處理器</b>ADSP-2101與DSP16A的<b class='flag-5'>考慮</b><b class='flag-5'>因素</b>

    元器件選型基本原則 嵌入式微處理器選型考慮因素

    要選好一款處理器,要考慮因素很多,不單單是純粹的硬件接口,還需要考慮相關的操作系統、配套的開發工具、仿真,以及工程師微
    的頭像 發表于 03-20 10:00 ?1303次閱讀

    選擇處理器的幾個關鍵因素

    選擇處理器的幾個關鍵因素? 選擇處理器時,有幾個關鍵因素需要考慮。這些因素包括
    的頭像 發表于 12-15 09:43 ?940次閱讀

    影響微處理器性能的因素

    影響微處理器性能的因素是多方面的,這些因素共同決定了微處理器處理數據、執行指令以及協調系統各部件工作時的效率和能力。
    的頭像 發表于 08-22 12:31 ?1317次閱讀

    選擇DSP處理器考慮因素(ADSP-2115 vs. TMS320C5x)

    電子發燒友網站提供《選擇DSP處理器考慮因素(ADSP-2115 vs. TMS320C5x).pdf》資料免費下載
    發表于 01-13 15:55 ?0次下載
    選擇DSP<b class='flag-5'>處理器</b>的<b class='flag-5'>考慮</b><b class='flag-5'>因素</b>(ADSP-2115 vs. TMS320C5x)

    AN-386:選擇DSP處理器考慮因素(ADSP2100系列與TMS320C25)

    電子發燒友網站提供《AN-386:選擇DSP處理器考慮因素(ADSP2100系列與TMS320C25).pdf》資料免費下載
    發表于 01-14 16:06 ?0次下載
    AN-386:選擇DSP<b class='flag-5'>處理器</b>的<b class='flag-5'>考慮</b><b class='flag-5'>因素</b>(ADSP2100系列與TMS320C25)
    百家乐官网博赌城| 百家乐官网扑| 百家乐高手和勒威| 马尼拉百家乐的玩法技巧和规则 | 赌场百家乐视频| 大发888送钱58元| 百家乐官网网投开户| 蓝盾百家乐官网平台| 百家乐有好的投注法吗| 网上娱乐城老虎机| 百家乐官网平六亿财富网| 百家乐赌博博彩赌博网| 永利国际| 百家乐官网牌壳| 金博士百家乐的玩法技巧和规则 | 百家乐庄闲筹码| 博九开户| 大世界百家乐官网赌场娱乐网规则| 百家乐凯时赌场娱乐网规则| 苍溪县| 百家乐官网有试玩的吗| 大发888怎样存款| 谈谈百家乐官网赢钱技巧| 百家乐必胜软件下载| 金钻国际| 墓地风水24山| 网络棋牌游戏平台| 百家乐官网博弈指数| 全讯网.com| 百家乐官网桌小| 环球百家乐的玩法技巧和规则| 大连市| 澳门百家乐才能| 日博娱乐城| 八卦图24山代表的| 鸟巢百家乐的玩法技巧和规则| 百家乐官网手机软件| 澳门百家乐是怎样赌| 舞阳县| 易胜博百家乐娱乐城| 克拉克百家乐官网下载|