在不斷創(chuàng)新并保護(hù)其知識(shí)產(chǎn)權(quán) (IP) 的同時(shí),還需兼顧低功耗和低成本,致使設(shè)計(jì)人員持續(xù)面臨著壓力。因此,對(duì)于移動(dòng)應(yīng)用處理器的設(shè)計(jì)人員而言,RISC-V 開源硬件指令集架構(gòu) (ISA) 值得留意。既然 RISC-V 已成為微控制器的一個(gè)選項(xiàng),嵌入式系統(tǒng)和消費(fèi)類設(shè)備的設(shè)計(jì)人員需要學(xué)習(xí)如何著手將 RISC-V 整合至自己的設(shè)計(jì)。
GroupGets LLC 的 FE310 LoFive-R1 開發(fā)板為此提供了一條捷徑。在介紹 LoFive-R1 之前,本文將介紹 RISC-V 并說明開發(fā)人員應(yīng)考慮使用該架構(gòu)的原因。然后,本文將詳細(xì)介紹 LoFive-R1,說明如何著手應(yīng)用開發(fā)以及可用的一些技巧與訣竅。
什么是 RISC-V?
RISC-V 是一個(gè)開源硬件指令集架構(gòu)項(xiàng)目,2010 年始于加州大學(xué)伯克利分校。構(gòu)建 RISC-V 架構(gòu)的原因很多,包括:
滿足對(duì)開源指令集架構(gòu) (ISA) 的需求,以供大學(xué)項(xiàng)目學(xué)術(shù)研究和學(xué)生使用
分享 ISA 開發(fā)設(shè)計(jì)專業(yè)知識(shí)的途徑
避免向現(xiàn)有芯片公司支付特許權(quán)使用費(fèi)以節(jié)省成本的方法
保護(hù)架構(gòu)(公司 IP)的設(shè)計(jì)細(xì)節(jié)以保持商業(yè)可行性
就設(shè)計(jì)人員而言,RISC-V 是一種專為高速和低功耗而設(shè)計(jì)的簡化架構(gòu)。因此,基于 RISC-V 的芯片不僅適用于學(xué)術(shù)界,也非常適合商業(yè)應(yīng)用。實(shí)際上,RISC-V 基金會(huì)備受關(guān)注,目前已吸納約 325 名成員,其中包括 Si-Five、Google、Microchip Technology、NVIDIA 和 Qualcomm 等公司。
為 RISC-V 開發(fā)做出貢獻(xiàn)的公司雖不少,但對(duì)于普通開發(fā)人員而言,獲得 RISC-V 實(shí)踐經(jīng)驗(yàn)的最佳方法是找到一款基于 RISC-V 處理器的開發(fā)板。
LoFive FE310 開發(fā)板
GroupGets LLC 的 LoFive-R1 開發(fā)板正是其中之一。
首先,LoFive R1 包含的 RISC-V 處理器最高可在 320 MHz 下運(yùn)行。該處理器包括 8 KB 的一次性可編程 (OTP) 存儲(chǔ)器、8 KB 的掩膜 ROM、16 KB 的指令緩存和 16 KB 的 SRAM。此外,該處理器還具有三個(gè)獨(dú)立脈沖寬度調(diào)制 (PWM) 控制器、SPI、I2C、UART,甚至 QSPI 閃存接口。
其次,該開發(fā)板既可焊接針座,也可直接焊接到載板上用作處理器模塊(由于其邊緣呈圓齒形),無需費(fèi)時(shí)額外采購處理器,從而極大簡化了開發(fā)人員對(duì)定制硬件的設(shè)計(jì)流程。
再者,該開發(fā)板的板載 QSPI 閃存由 Integrated Silicon Solution Inc . (ISSI) 的 IS25LP128 閃存模塊提供。IS25LP128 閃存模塊容量為 128 Mb(即 16 MB),在四通道輸入 / 輸出模式下 SPI 總線接口速度高達(dá) 133 MHz。該 SPI 閃存模塊可用于存儲(chǔ)以確保充足的應(yīng)用程序空間,也可用于存儲(chǔ)應(yīng)用程序日志等運(yùn)行時(shí)數(shù)據(jù)。
另外,該開發(fā)板也可采用 5 V 的工作電壓,通過 MaxLinear 的 SPX3819M5 線性穩(wěn)壓器轉(zhuǎn)換為 3.3 V。該穩(wěn)壓器采用 SOT23-5 封裝,卻可提供高達(dá) 500 mA 的電流。該開發(fā)板消耗電流較小,因此可支持其他傳感器和器件,而無需額外添加電源電路。
最后,該開發(fā)板的原理圖和物料清單等所有設(shè)計(jì)細(xì)節(jié)均可從 github 獲取。這些信息有助于開發(fā)人員理解該開發(fā)板的工作原理,也可用作定制開發(fā)項(xiàng)目的設(shè)計(jì)指南。
RISC-V 工具鏈設(shè)置和開發(fā)板編程
開發(fā)人員會(huì)發(fā)現(xiàn) RISC-V 可用的工具鏈有多種,具體取決于所選擇的開發(fā)板。需要注意的是,適用于 RISC-V 的 SDK 支持 Windows、macOS 和 Linux。本文將展示用于 Linux 的開發(fā)板設(shè)置方法。
首先,在終端上使用以下命令從 git 中簽出 LoFive Freedom-E SDK:
git clone --recursive https://github.com/mwelling/freedom-e-sdk.git
然后,使用以下命令進(jìn)入按 SDK 創(chuàng)建的目錄:
cd freedom-e-sdk
該開發(fā)板可用的 SDK 有兩款。第一款稱為“舊版 SDK”,因?yàn)榘姹据^舊。請(qǐng)使用新版 SDK,其中包括預(yù)構(gòu)建的工具鏈和用于調(diào)試的 OpenOCD。使用以下命令簽出 SDK:
git checkout lofive-r1
git submodule sync
git submodule update –init –recursive
開發(fā)板編程可通過幾種不同的方式完成。首先,該處理器具有標(biāo)準(zhǔn) JTAG 信號(hào),可通過 LoFive-R1 擴(kuò)展連接器獲取該信號(hào)。開發(fā)人員可以使用任何支持 JTAG 的編程器,例如 SEGGER 的 J-Link 。若沒有相應(yīng)的編程器,開發(fā)人員也可使用 FTDI 的 FT2232H-56Q Mini MDL 等低成本的 USB 轉(zhuǎn)串口轉(zhuǎn)換器(圖 4)。FT2232H-56Q Mini MDL 模塊可提供連接 LoFive-R1 開發(fā)板所需的所有連接和分線。SDK 可使用 FT2232H-56Q 的通用 I/O 來構(gòu)建必要的 JTAG 連接,實(shí)現(xiàn)對(duì)微控制器的編程。
上述連接可以總結(jié)為:
電源和接地
JTAG 信號(hào)
UART 信號(hào)
連接可以采用直連法,也可使用 Global SpecialTIes 的 PB-83M 等試驗(yàn)板來完成。該試驗(yàn)板的香蕉插孔可用于連接兩個(gè)電壓源和接地,以簡化原型開發(fā)。
首次使用 LoFive-R1 時(shí),建議先安裝板載引導(dǎo)程序。引導(dǎo)程序只需安裝一次,后續(xù)即可輕松升級(jí)。通過執(zhí)行以下命令,即可從 SDK 中加載引導(dǎo)程序:
make PROGRAM=lofive-boot TARGET=lofive-r1-bootloader upload
然后,使用以下命令將 "hello world" 應(yīng)用程序加載到開發(fā)板:
make PROGRAM=sifive-welcome TARGET=lofive-r1 upload
至此,開發(fā)人員就已完成了首個(gè) RISC-V 應(yīng)用程序編寫,此后的擴(kuò)展則具有無限可能。
RISC-V 的使用技巧與訣竅
RISC-V 處理器入門與標(biāo)準(zhǔn)微控制器生態(tài)系統(tǒng)有所不同。 以下是幾點(diǎn)“技巧與訣竅”:
簽出 LoFive-R1 SDK 后,花時(shí)間查看主目錄下的 README.md 文件。其中包含了在何處能找到 SDK 說明文檔、板級(jí)支持包及其他有用信息。
若有 SEGGER 的 J-Link 等專業(yè)調(diào)試探測器,即可用于 RISC-V 處理器的應(yīng)用程序編程。自 2017 年以來,J-Link 一直支持 RISC-V。
如果開發(fā)人員偏好使用 IDE 而非命令行工具,可以考慮使用 Freedom Studio(基于 Eclipse 的 IDE)進(jìn)行 RISC-V 開發(fā)。
首次使用 RISC-V 時(shí),只需遵循這些“技巧與訣竅”,開發(fā)人員即可節(jié)省大量時(shí)間和精力。
總結(jié)
對(duì)于希望使用開源硬件架構(gòu)的開發(fā)人員而言,RISC-V 架構(gòu)值得留意。目前,市面上已有基于 RISC-V 處理器的開發(fā)板,如本文所述,工具鏈設(shè)置難度與任何其他標(biāo)準(zhǔn)微控制器差別不大。
RISC-V 雖令人著迷,但是請(qǐng)別忘記,其生態(tài)系統(tǒng)對(duì)比現(xiàn)有的許多微控制器平臺(tái)相對(duì)貧乏,因此開發(fā)人員選擇深入探索 RISC-V 后,就會(huì)發(fā)現(xiàn)可用的選擇和資源很少。權(quán)衡取舍不失為良策,具體取決于最終應(yīng)用以及開發(fā)人員的偏好和資源。
審核編輯黃昊宇
-
開發(fā)板
+關(guān)注
關(guān)注
25文章
5052瀏覽量
97501 -
RISC-V
+關(guān)注
關(guān)注
45文章
2277瀏覽量
46163
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論