大家好,很高興和各位一起分享我第 107 篇原創(chuàng)文章,喜歡和支持我的工程師,一定記得給我點(diǎn)贊、收藏、分享喲。
加微信【jiyuyun18】與作者溝通交流
本文簡介
本文將學(xué)習(xí)如何安裝圖形化 FPGA 開發(fā)工具 Icestduio。我們會(huì)用 Icestduio 創(chuàng)建一個(gè)簡單的數(shù)字電路,然后合成(synthesize)這個(gè)電路,下載到開發(fā)板。該電路將會(huì)點(diǎn)亮 FPGA 開發(fā)板上的一個(gè) LED。我們使用 iCESugar-nano 開發(fā)板。
關(guān)于Icestudio
Icestudio 是一款用于在FPGA 中設(shè)計(jì)和合成數(shù)字電路的工具,由 Jesús Arroyo 創(chuàng)建。它是用在 nodejs 中編寫的,是免費(fèi)的跨平臺(tái)軟件,支持 Windows、Linux、Mac OS 三大主流操作系統(tǒng)。
Icestduio 最大的特點(diǎn)就是圖形化 FPGA 編程,可以通過拖動(dòng)積木塊實(shí)現(xiàn) FPGA 編程。
安裝 Icestudio
Icestudio 安裝步驟如下。
第一步: 下載
-
去 Icestduio 在 Github 上的網(wǎng)址下載
-
點(diǎn)擊右邊的 Releases
可以看到已經(jīng)發(fā)布的各個(gè)版本。我寫本教程時(shí)的最新版本是 v0.9.0-1。
用鼠標(biāo)滾輪往上滾動(dòng)頁面,可以看到各個(gè)操作系統(tǒng)的下載版本。
第二步:安裝
我的操作系統(tǒng) Win10 64 位,我選擇 icestudio-0.9.0-1-win64.exe 這個(gè)安裝包。
運(yùn)行之,可以看到安裝界面如下:
安裝完成后,將出現(xiàn)如下界面:
我們點(diǎn)擊完成,我們已經(jīng)完成了 Icestudio 軟件本身的安裝。打開 Icestudio, 會(huì)出現(xiàn)如下窗口:
我們選擇 iCESugar-nano 作為我們的開發(fā)板,如果你手頭的開發(fā)板是其他型號(hào),你也可以選擇其他型號(hào)的開發(fā)板。
設(shè)置完開發(fā)板型號(hào)后,軟件會(huì)提示我們沒有安裝工具鏈,我們先不管:
第三步:設(shè)置語言
我們進(jìn)入Edit/Preferences/Language菜單并選擇我們想要的語言:
選擇Chinese 后,系統(tǒng)窗口如下:
第四步:安裝工具鏈
沒有工具鏈,我們無法合成我們的代碼,因此,我們必須安裝工具鏈(toolchain)。我們依次點(diǎn)擊菜單:工具/工具鏈/Install(Stable):
點(diǎn)擊 Install(Stable) 后,提示如果你有網(wǎng)絡(luò)代理工具,請(qǐng)關(guān)掉:
安裝過程不需要翻墻,我們可以關(guān)掉我們的翻墻工具,如果有的話。
點(diǎn)擊OK按鈕,開始安裝工具鏈:
此過程較長,耐心等待。
安裝完成后,會(huì)在當(dāng)前用戶名文件夾生成一個(gè) .icestudio 文件夾:
第五步:補(bǔ)充工具鏈
自動(dòng)安裝的工具鏈缺少了很多工具,可以關(guān)注公眾號(hào)【飛多學(xué)堂】,后臺(tái)回復(fù)關(guān)鍵字: apio, 下載我整理好的工具鏈。要不然,你在綜合代碼可能會(huì)碰見各種錯(cuò)誤。
下載下來是一個(gè) apio.zip 文件,把解壓后的文件放到當(dāng)前用戶名下的 .icestduio 文件夾。如果你不知道當(dāng)前用戶名可以直接在我的電腦里輸入 %USERPROFILE%.icestudio, 即可進(jìn)入當(dāng)前用戶名下的 .icestduio 文件夾:
解壓過程選擇全覆蓋,解壓完成后 C:\Users\Sam.icestudio\apio\packages 目錄內(nèi)容如下:
第六步:安裝驅(qū)動(dòng)
安裝完成工具鏈后,可能會(huì)提示你安裝驅(qū)動(dòng):
將你的 FPGA 開發(fā)板通過 USB 插到電腦上根據(jù)提示安裝開發(fā)板驅(qū)動(dòng)。
第七步:"Hello World"電路
軟件學(xué)習(xí)的第一個(gè)代碼是輸出“Hello World", 對(duì)于硬件來說,一般就是點(diǎn)亮或閃爍一顆LED。這一次,我們點(diǎn)亮一個(gè)板載 LED。
Icestduio 帶了好多示例電路(代碼),其中有一個(gè)就是點(diǎn)亮 LED 的。我們依次選擇菜單:文件->示例->1.Basic->01.One LED:
Icestudio 會(huì)提示我們?cè)撌纠菫?IceZUM Alhambra 開發(fā)板編寫的,我們可以將之轉(zhuǎn)換為我們的開發(fā)板,即 iCESugar-nao 使用。我們點(diǎn)擊 轉(zhuǎn)換 按鈕:
轉(zhuǎn)換后代碼如下:
上面電路(代碼)的意思是給 LED 所在引腳輸出高電平。
我們依次點(diǎn)擊菜單:工具->上傳,將代碼綜合然后上傳到開發(fā)板上:
上傳成功后,會(huì)彈出提示:
可以看到開發(fā)板上的一盞黃色 LED 被點(diǎn)亮了:
驚不驚喜?!意不意外?!神不神奇?!我們的第一個(gè) FPGA 電路就這樣誕生了。這不是豬都能編寫 FPGA 代碼了?