跳轉到

第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位元版本。

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,安裝完成使用ModelSimModelSim-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 #開放環境建置