我的 FPGA 學習歷程(01)—— FPGA 基礎知識和 Quartus 的安裝


       高級的嵌入式市場主要分為以下三類:ARM、DSP 和 FPGA。

       其中 ARM 是行業內的佼佼者,目前幾乎所有的安卓智能手機都使用 ARM 授權的 CPU架構;而 DSP(數字信號處理器) 早年就被大面積的應用與電話、DVD、通訊基站等領域。DSP 與 ARM 的區別在於,ARM 是通用 CPU,DSP 則是專用 CPU。FPGA 則與他們不同,FPGA 的名稱的由來是由於 FPGA 功能的成型是在實驗室等通常工作環境下進行的;區別與專有集成電路 (ASIC)在晶圓工廠的制造,所以 FPGA 被稱為是 現場可編程門陣列。

       我的開發板是 黑金 AX301,當時傻乎乎的以為 FPGA 一定是比 51 高級的芯片,在商品介紹圖片上的 VGA 接口,考慮到我的是筆記本電腦的顯示器不可外接,在調試時需要一個外接屏幕顯示打印信息,於是又另買了個 7寸的 VGA 顯示器(-____-)。

我的開發板長這個樣子(紅色的配套的下載器,必須的):

2

       拿到開發板后,需要做的事情:

  1. 看看板子附帶的光盤資料,包括用戶手冊、原理圖等等。熟悉下資料。
  2. 第二步,altera 官網注冊一個賬號,下載一個 Quartus 軟件。
  3. 熟悉光盤里的資料。
  4. 按照視頻上的要求打開一個 Quartus 工程(.qpf 結尾)。
  5. 裝好 USB-Blaster 驅動連上開發板的 Jtag 口,下載一個(.sof)文件看看效果。
  6. 按照 PDF 教程里的說明轉化(.sof)文件文件為(.jic)文件,並燒錄到 EPCS 里去。

Quartus 有 免費使用 的網絡版本,免費版本與注冊版本的區別如下:

  1. 免費版沒有多線程編譯的功能,如果是多核 CPU,免費版只會使用其中一個 CPU,編譯速度會慢一些。
  2. 免費版如果使用了 IP 核,生成的燒錄文件(.sof)只能在線使用(一直連着電腦),而(.pof)只能使用一個小時。
  3. 免費版中 Qsys 或者 SOPCBuilder中只能使用 NIOS 精簡核,否則 quartus 編譯報錯。

Quartus 其他版本的區別:

  1. 9 ~ 10 版本中默認包括了圖形仿真激勵輸入工具,10 ~ 12 版本中又把他刪除了,但在 13 之后的版本再次添加該工具,如果沒有圖形仿真激勵輸入工具要想仿真只能通過編寫 testbench 腳本,testbench 腳本的編寫和 Modelsim 的操作方法對於初學者而言會是個巨大的障礙。
  2. 11 版本之后 Qsys 會代替 SOPCbuilder 用於構建 NIOS 處理器。 
  3. 14 版本之后的 Quartus 只存在對 64 位機器的支持,而 Modelsim 目前只有 32位版本的。也就是說,如果用戶安裝了 14 之后的版本,在運行 Modelsim仿真軟件時需要 CPU 的虛擬化功能。

總的來說,對於入門而言免費的版本就足夠了。

       黑金社區為開發板制作了整套 PDF 教程,而且難得文筆輕松活潑。可惜對我而言筆記性質的教程是教不會初學者什么,想要看懂那些教程需要事先有硬件從業者的經歷以及相關知識。

       此外光盤上還附帶有夏文宇老師的《數字邏輯設計》 PDF 版,這本書從語法的角度詳細描述了 verilog 語言,但可能由於成書較早,書中並沒有嚴格的區分可綜合邏輯和不可綜合邏輯,更要命的是沒有介紹實驗的方法,讀者並不知道該用什么軟件來練習書中的例子。

       當時在網上查不到任何關於 verilog 的入門視頻,只能去買本《FPGA數字邏輯設計教程——Verilog》作為教材硬着頭皮去啃了。意外的的是老外寫的書着實質量不錯,可惜譯作是以 xilinx 公司的 FPGA 作為練習的例子,使用 ISE 作為開發環境。本以為多多少少的會有些問題,但 verilog 語言強大的通用性消去了不同廠家產品的區別;當我試着把書中的多個開關輸入改為常數,把多個 LED 燈減少到不超過 4 個 LED 燈作為練習,一年下來的入門學習並沒有受到什么影響。

上面講的英文詞匯,可能會讓人覺得雲里霧里,難以理清它們之間的關系和區別。這里簡單的以 51 單片機作為對比,介紹下 FPGA 的相關術語。

名稱

FPGA

FPGA

8051

生產廠商

Altera

Xilinx

STC

設計工具

Quartus

ISE

Keil

語言

Verilog HDL、VHDL

Verilog HDL、VHDL

C

        最后講一下 Quartus 的安裝,Quartus 是 Altera 公司的產品,它同時支持 Windows 和 Linux 操作系統。其中 Web 版本的下載和使用是免費的,任何人可以到 Altera 官網去注冊下載,百度搜索也可以得到一些下載鏈接,這里假設您已經下載好了對應您機器的版本。

        無論是下載組合包,還是獨立文件或者是 DVD 鏡像,解壓后應該能找到類似以下的一些文件,當然不同的版本會有些區別:

准備的文件_thumb[1]

雙擊 setup.bat 或者 QuartusSetup.exe 開始安裝,安裝中可能會出現窗口假死的情況,這是由於磁盤讀寫達到上限所導致的

1_thumb[1]

許可證,不管他,(¬︿̫̿¬☆)哼。

2_thumb[1]

安裝路徑選擇,不想失敗的話就不要做任何修改,默認的是在 C:\altera\13.0sp1,不是在 C:\Program Files\altera\13.0sp1。安裝目錄不允許有任何中文、空格或者特殊符號;同樣的,工程目錄也是如此。

3_thumb[2]

Quartus 安裝選項,64 位機器的請勾上 Quartus II 64-bit support,Modelsim-Altera 也存在免費和付費的版本。

4_thumb[1]

如果安裝了 DSP Builder 就會有這一步,DSP Builder 可以聯合 Matlab 進行 DSP 的設計,這里我沒有裝 Matlab,需要的同學請自行設定。

5_thumb[1]

准備安裝,這里需要大約 9G,顯示分區空余 57G。6_thumb[1]

耐心的等上大約 30 分鍾,配置好的可能會快一些,安裝過程中會有些小彈窗。

8_thumb[1]

完畢,下圖的三個選項是:是否創建桌面快捷方式、是否立即啟動 Quartus 軟件、是否反饋用戶信息。

9_thumb[1]

裝完后,如果提示沒有安裝器件庫,像這樣:

device_unable_thumb[1]

點擊上圖中的確定或是在 Tool 菜單中打開器件安裝工具,注:較老版本的 Quartus 沒有這個 Install Devices 選項:

devices_install_thumb[1]

devices_1_thumb[1]

找到你存放器件庫壓縮包(.qdz)的目錄:

devices_2_thumb[1]

選擇要安裝的器件庫,如果目錄下有多個 qdz 文件,這里會顯示更多。

devices_3_thumb[2]

devices_4_thumb[1]

成功,Quartus 安裝完成。o(^▽^)o

devices_6_thumb[1]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM