前言:作為一名嵌入式系統(tǒng)開發(fā)人員一直在想方設(shè)法進一步縮短開發(fā)時間,特別是針對概念驗證和快速原型開發(fā)。雖然開發(fā)套件已成為捷徑之選,但設(shè)計人員需要找到一個平衡點,既兼顧外形尺寸和廣受支持的生態(tài)系統(tǒng),又要考慮性能要求。ArduinoUno開發(fā)板就是這種需要找到平衡點的很好例子。
什么是 HiFive1?
HiFive1 開發(fā)套件基于一款集成 32 位 RISC-V(讀音“risk-five”)處理器內(nèi)核的微控制器。該開發(fā)板可接受 Arduino 式盾板,從而大幅提升了其對嵌入式設(shè)計快速原型開發(fā)的實用性。
HiFive1 的核心是 RISC-V 處理器內(nèi)核。這就需要 Arduino 開發(fā)板背后的開源概念,并將其一直擴展到處理器本身。
RISC-V 是開放式指令集架構(gòu) (ISA),基于兩個基礎(chǔ):自 20 世紀 80 年代以來一直采用的精簡指令集計算 (RISC) 概念,以及開源原則。
因為 RISC-V ISA 是開源的,所以可自由地用于任何目的。任何人都可以設(shè)計、制造和銷售基于 RISC-V 的芯片和軟件,而無需支付版稅。
Arduino 式針座(包含注意事項)
HiFive1 開發(fā)套件復(fù)制了 Arduino 獨特的 I/O 針座布局。它可以接受數(shù)以百計可用 Arduino 盾板中的多數(shù)類型,但有幾點需要注意。
首先,微控制器沒有模擬輸入引腳。HiFive1 開發(fā)套件的 Arduino 式針座只能進行數(shù)字 I/O、中斷和脈沖寬度調(diào)制 (PWM) 引腳分配。
Arduino Uno 開發(fā)板上 A0 至 A5 模擬引腳所用的物理針座位置在 HiFive1 開發(fā)板上標注為 D14 至 D19 數(shù)字 I/O 引腳。
如果有必要添加模擬功能,可使用眾多可用模數(shù)轉(zhuǎn)換器 (ADC)、數(shù)模轉(zhuǎn)換器 (DAC) 或組合 ADC/DAC Arduino 盾板中的一種。
另請注意:
設(shè)計人員可將多達 9 個 PWM 發(fā)生器分配到 HiFive1 開發(fā)套件上的 Arduino 式針座引腳。
HiFive1 開發(fā)套件的所有 19 個 Arduino 式針座 I/O 引腳均可用作中斷輸入。
這就引出了第二個注意事項:迄今為止,只有以下兩款A(yù)dafruitArduino 盾板通過了 HiFive1 測試,因為只有針對這兩款盾板的 Adafruit 支持庫已移植到 HiFive1 庫:
Adafruit 的 BLE SPI Friend
接下來將詳細介紹 HiFive1 開發(fā)套件的核心,即微控制器。
該微控制器的中心是基于開源的 32 位 RISC-V ISA 的 CPU 內(nèi)核。就 RISC-V 而言,核心是 RV32IMAC 處理器。
這意味著它使用的是基本 32 位 RISC-V 整數(shù)指令集 (RV32I),具有整數(shù)硬件乘除 (M) ;原子、實時指令 (A);以及對 16 位精簡 (C) 指令集的附加支持。另外還有 64 位和 128 位版本的 RISC-V ISA。該內(nèi)核還包括 16 Kb 的指令緩存(在框圖中標記為“I $”)和 16 Kb 的暫存器 SRAM。
幾個標準外設(shè)包括定時器、PWM 信號發(fā)生器、實時時鐘、UART、QSPI 串行接口以及圍繞處理器內(nèi)核的一個片上硬件調(diào)試模塊。
RISC-V 架構(gòu)幕后有誰或者說有什么?為什么?
HiFive1 開發(fā)套件和微控制器實際上是開源 RISC-V 處理器架構(gòu)的硬件演示工具,是一個假設(shè)論證:世界真的需要另一種處理器架構(gòu)嗎?
RISC-V 項目始于加州大學(xué)伯克利分校,最終超越了大學(xué)研究的范疇,充分發(fā)揮了更多自愿參與者和電子行業(yè)人士的想象力。
該項目的最終結(jié)果是開源代碼 RISC 處理器 ISA(指令集架構(gòu)),與其他任何 32 位 RISC ISA 幾乎一樣。不同之處在于任何人都可以自由地將 RISC-V ISA 用于任何目的。
就 HiFive1 開發(fā)板而言,嵌入式系統(tǒng)開發(fā)人員需要的不僅僅是處理器或微控制器芯片。
對于 RISC-V,嵌入式開發(fā)人員需要工具、示例代碼、庫和軟件堆棧等形式的開發(fā)支持。這類支持來自圍繞成功的處理器架構(gòu)和用戶而發(fā)展的生態(tài)系統(tǒng)。
總結(jié)
經(jīng)濟實惠的 Arduino Uno 開發(fā)板外形小巧輕便,可訪問數(shù)百個 I/O 和外設(shè)盾板。HiFive1 開發(fā)套件利用這些現(xiàn)有盾板,通過緊密復(fù)制緊湊型 Arduino Uno 開發(fā)板的外形尺寸和獨特針座配置,將其與基于 RISC-V 的 32 位微控制器配接。
HiFive1 開發(fā)套件具有 16 Mb 板載閃存,可提供更高的代碼存儲能力。盡管它是一款新的架構(gòu),但嶄露頭角的開源 RISC-V 生態(tài)系統(tǒng)提供了一套擴展的軟件開發(fā)工具,包括編譯器、匯編器、調(diào)試器和 Arduino IDE 庫。
開源GNU MCU Eclipse:一系列基于 GNU 工具鏈的 Eclipse 多平臺嵌入式開發(fā)插件和工具。
Segger的Embedded Studio for RISC-V:一款用于嵌入式 C/C ++ 軟件開發(fā)的跨平臺 IDE 以及該公司的J-Link 調(diào)試探測器。
-
嵌入式設(shè)計
+關(guān)注
關(guān)注
0文章
392瀏覽量
21325 -
Arduino
+關(guān)注
關(guān)注
188文章
6477瀏覽量
187658 -
RISC-V
+關(guān)注
關(guān)注
45文章
2322瀏覽量
46436
原文標題:【解密】Arduino 與 RISC-V 架構(gòu)結(jié)合,實現(xiàn)完美嵌入式設(shè)計
文章出處:【微信號:elecfans,微信公眾號:電子發(fā)燒友網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論