第1章 開發環境建置
簡介¶
這是相當重要的一個課題與內容,所謂的「工欲善其事,必先利其器」,準備好的工具將讓你從放棄到有趣,本章將說明如何使用 Xilinx 、 Altera 與開放原始碼的免費提供與試用的「整合開發環境」軟體,以及透過開放原始碼的軟體與程式來建立開發環境,並紀錄了在安裝與建置的過程中會遇到的問題,協助各位讀者在實作上可以順心與順手。
一般來說,一個開發軟體會有三個重要組件:
- 「合成」(Synthesis):一般叫合成,把 verilog 的 RTL 合成為邏輯閘。
- 「佈局與繞線」(APR, Auto Place and Routing):佈線,依照邏輯閘的數量限制,生成邏輯閘的連線。
- Bitstream Creation:將邏輯閘的連線,依照對應的 FPGA 型號生成可燒錄的 bitstream 檔。
後面一章會詳細介紹數位電路設計詳細流程。因此會需要有相關的軟體與工具。
開發環境¶
板子與晶片:
- Altera Cyclone V SoC Kit:5CSXFC6D6F31C8NES
- Altera Cyclone III DE0:EP3C16F484C6N
- Xilinx EGO1 XC7A35TCSG324-1
軟體、工具、套件:
- Altera
- Quartus II 64-bit 21.1 Web Edition
- Quartus II 64-bit 15.0 Web Edition
- Quartus II 32-bit 13.1 Web Edition
- ModelSim
- Xilinx
- Xilinx Vivado 2021.1
- Vivado Logic Simulation
- Open Source
- Atom
- GHDL
- iverilog
- Verilator
- Slang
- PyHDI各類專案
- MyHDL
- iverilog
- verilator
- ghdl
- slang
- IceStorm
- nextpnr
- Project Trellis
作業系統:
- Windows10
- Ubuntu 20.04 LTS
Vivado¶
Linux安裝¶
Windows¶
Quartus II Web Edition¶
Quartus II 64-bit 21.1 Web Edition¶
Linux安裝¶
Windows¶
Quartus II 64-bit 15.0 Web Edition¶
Linux安裝¶
Windows¶
Quartus II 32-bit 13.1 Web Edition¶
Linux安裝¶
Windows¶
Open Source¶
Linux安裝¶
「整合開發環境」(IDE, Integrated Development Environment)與建立「設計自動化」(EDA, Electronic Design Automation)
常見問題¶
環境變數設定¶
設定暫時的環境變數,在終端機界面關閉後就會消失,因此可以暫時設定環境變數。ALTERAPATH
是Quartus II Web Edition安裝的位置,請填入絕對路徑。
export ALTERAPATH="/home/timmy/altera/15.0"
export ALTERAOCLSDKROOT="${ALTERAPATH}/hld"
export QUARTUS_ROOTDIR=${ALTERAPATH}/quartus
export QUARTUS_ROOTDIR_OVERRIDE="$QUARTUS_ROOTDIR"
export QSYS_ROOTDIR="${ALTERAPATH}/quartus/sopc_builder/bin"
export PATH=$PATH:${ALTERAPATH}/quartus/bin
export PATH=$PATH:${ALTERAPATH}/nios2eds/bin
之後直接輸入quartus
就可以直接執行。
Altera Cyclone V SoC Kit¶
SW 預設以高電位
Quartus II 32-bit 13.1 Web Edition¶
使用Ubuntu 16.04 LTS系統缺少libXft函式庫¶
以下方法適用於 Ubuntu <= 20.04 。
Quartus II 13版本前Altera官方都沒有出64Bit的IDE工具,而Ubuntu 16後所有的系統都不會內建32bit的C語言相關的函式庫,所以Ubuntu 16.04 LTS的使用者在使用ModelSim-Altera函式庫會需要去安裝libxft2
的函式庫,下載連結:
- libxft2
- https://launchpad.net/~ubuntu-security/+archive/ubuntu/ppa/+build/15108507
通常在使用Simulation Waveform Editor的Run Functional Simulation時調用ModelSim-Altera運行時會先出現以下錯誤:
**** Running the ModelSim simulation ****
altera/13.1/modelsim_ase/linuxaloem/vsim -c -do BCD_seven_seg_A.do
altera/13.1/modelsim_ase/linuxaloem/vish: error while loading shared libraries: libXft.so.2: cannot open shared object file: No such file or directory
使用Ubuntu 22.04 LTS系統缺少libXft函式庫¶
sudo apt install build-essential zlib1g-dev
cd
mkdir src
wget https://ppa.launchpadcontent.net/linuxuprising/libpng12/ubuntu/pool/main/libp/libpng/libpng_1.2.54.orig.tar.xz
tar Jxfv libpng_1.2.54.orig.tar.xz
cd libpng-1.2.54
./configure
make
sudo make install
sudo ln -s /usr/local/lib/libpng12.so.0.54.0 /usr/lib/libpng12.so
sudo ln -s /usr/local/lib/libpng12.so.0.54.0 /usr/lib/libpng12.so.0
授權問題¶
如果出現以下問題,代表他找不到授權的檔案,但Quartus II 32-bit 13.1 Web Edition在有限度的情況下是可以免費的使用,因此出現此錯誤是有問題的。
Unable to find the license file. It appears that your license file environment variable (e.g., LM_LICENSE_FILE) is not set correctly.Unable to checkout a license. Vsim is closing.** Fatal: Invalid license environment. Application closing.
Error.
修正方式是到軟體設定模擬運算的地方,將程式路徑指定到/home/timmy/altera/15.0/modelsim_ase/linuxaloem
後重新模擬後即可運作。
Quartus II 64-bit 15.0 Web Edition¶
晶片版本與軟體版本轉換錯誤¶
如果使用Altera Cyclone III晶片與Quartus II 32-bit 13.1 Web Edition所輸出的專案,在Quartus II 64-bit 15.0 Web Edition會因為此軟體版本不支援Altera Cyclone III,因此會出現以下錯:
Error (114006): Database file /home/timmy/Git/Learn-VHDL/CH6/CH6-2/db/BCD_seven_seg_A.sld_design_entry_dsc.sci, created by Quartus II Version 13.1.0 Build 162 10/23/2013 SJ Web Edition software, not compatible with current Quartus II Version 15.0.0 Build 145 04/22/2015 SJ Web Edition software
如果出現上述問題,請將專案使用Quartus II 32-bit 13.1 Web Edition開啟後接受轉成Altera Cyclone V的晶片後儲存專案,再使用Quartus II 64-bit 15.0 Web Edition即可開起來。
使用Ubuntu 18.04 LTS系統缺少libpng12函式庫¶
如果在Ubuntu 18.04 LTS安裝Quartus II 64-bit 15.0 Web Edition,安裝完成後會出現以下問題:
quartus: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory
因為Ubuntu 18.04 LTS之後的系統取消了libpng12函式庫,因此要自己從網路上下載安裝,有分成64位元版本與32位元版本。
點擊連結進入網頁後,向下滑動到Built files
部分,找到libpng12-0
的deb安裝檔,例如64位元的libpng12-0_1.2.54-1ubuntu1.1_amd64.deb
連結,點擊下載。
下載後使用sudo dpkg -i libpng12-0_1.2.54-1ubuntu1.1_amd64.deb
安裝libpng12-0
,成功之後應該能夠在Ubuntu 18.04 LTS執行Quartus II 64-bit 15.0 Web Edition。
使用Ubuntu 18.04 LTS系統缺少libXft函式庫¶
如果在Ubuntu 18.04 LTS安裝Quartus II 64-bit 15.0 Web Edition,安裝完成使用ModelSim
或ModelSim-Altera
後會出現以下問題:
Determining the location of the ModelSim executable...
...
**** Running the ModelSim simulation ****
/home/timmy/altera/15.0/modelsim_ae/linuxaloem/vsim -c -do BCD_seven_seg_seven_four_two_four_eight.do
/home/timmy/altera/15.0/modelsim_ae/linuxaloem/vish: error while loading shared libraries: libXft.so.2: cannot open shared object file: No such file or directory
Error.
透過以下方式安裝缺少的函式庫就可以解決。
sudo apt-get install libxft2 libxft2:i386 lib32ncurses5
Xilinx Vivado 2020.1¶
Java圖形界面問題¶
Xilinx Vivado 2022.1¶
Xilinx ISE 14.7¶
由於Ubuntu 22.04 系統都不會內建 32bit 的C語言相關的函式庫,因此安裝上都會很慘,會出現錯誤訊息。
The environment variables are written to settings[32|64].(c)sh at "/opt/Xilinx/14.7/ISE_DS". To launch the Xilinx tools, first source the settings script:
C-shell 64 bit environment...
source /opt/Xilinx/14.7/ISE_DS/settings64.csh
Shell, Bash shell, Korn Shell 64 bit environment...
. /opt/Xilinx/14.7/ISE_DS/settings64.sh
C-shell 32 bit environment...
source /opt/Xilinx/14.7/ISE_DS/settings32.csh
Shell, Bash shell, Korn Shell 32 bit environment...
. /opt/Xilinx/14.7/ISE_DS/settings32.sh
https://bowfinger.de/blog/2022/07/running-xilinx-ise-14-7-in-docker/
Tag: #數位邏輯設計 #數位邏輯 #digital-logic #digital-logic-design #DigitalLogic #DigitalLogicDesign #digitallogic #digitallogicdesign #開放環境建置