最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

1.4QUARTUS開發(fā)工具-明德揚至簡設計法原理與應用

2022-12-21 10:24 作者:明德揚易老師  | 我要投稿

這是本文的文檔編號:001500000031

需要看對應的視頻,請點擊視頻編號:001200000073

1、本章主要介紹FPGA的兩大制造商——Xinlinx和Altera,基于每個廠商生產的FPGA芯片都要在對應的開發(fā)工具上才能進行設計,其中Xilinx芯片的開發(fā)工具包括vivado,Altera的開發(fā)工具是Quartus。

2、本章通過一個上板例程來介紹quartus prime軟件的使用方法。
3、這是ALTERA文檔

第一階段設 計基礎



第四章?
QUARTUS開發(fā)工具


1?軟件介紹

Quartus prime?是Altera公司的綜合性PLD/FPGA開發(fā)軟件,原理圖、VHDL、VerilogHDL以及AHDL(Altera Hardware?支持Description Language)等多種設計輸入形式,內嵌自有的綜合器以及仿真器,可以完成從設計輸入到硬件配置的完整PLD設計流程。

Altera Quartus prime?作為一種可編程邏輯的設計環(huán)境,?由于其強大的設計能力和直觀易用的接口,越來越受到數字系統(tǒng)設計者的歡迎。當前官方提供下載的最新版本是v17.0。

Altera Quartus prime?(15.1和更高版本)設計軟件是業(yè)界唯一提供FPGA和固定功能HardCopy器件統(tǒng)一設計流程的設計工具。工程師使用同樣的低價位工具對?Stratix FPGA進行功能驗證和原型設計,又可以設計HardCopy Stratix器件用于批量成品。系統(tǒng)設計者現在能夠用Quartus prime軟件評估HardCopy Stratix器件的性能和功耗,相應地進行最大吞吐量設計。

Altera的Quartus prime可編程邏輯軟件屬于第四代PLD開發(fā)平臺。該平臺支持一個工作組環(huán)境下的設計要求,其中包括支持基于Internet的協作設計。Quartus平臺與Cadence、ExemplarLogic、?MentorGraphics、Synopsys和Synplicity等EDA供應商的開發(fā)工具相兼容。改進了軟件的LogicLock模塊設計功能,增添了FastFit編譯選項,推進了網絡編輯性能,而且提升了調試能力。


2?第一個上板例程軟件:
Quartus prime?15.1



本教材及案例,均使用Quartus?prime?15.1。其他版本的軟件,在界面上略有不同,為了避免未知的錯誤,強烈推薦使用此版本。

本章介紹Quartusprime軟件的基本特征,展示如何使用Verilog硬件描述語言來設計和實現電路。使用GUI來實現Quartus?prime指令。通過本份章,讀者將學習到:





2.1?開始

在Quartus prime中設計的每個邏輯電路或子電路,叫做一個工程。軟件每次運行一個工程,并將所有信息保存在單一文件夾中。欲開始一個新的邏輯電路設計,第一步就是新建一個文件夾來保存文件。為了保存本指南的設計文件,在D盤新建introtutorial文件夾。指南者運行的范例為一個簡單的雙路燈控電路。

打開Quartus prime軟件,將看到類似于圖2的畫面。該顯示畫面包括若干窗口,用戶可使用鼠標選擇,以訪問Quartus?prime軟件的相關功能。Quartus prime提供的大多數命令都可用菜單形式來訪問。例如,在圖2中,在File標簽下點擊左鍵,可打開如圖3所示的菜單。用左鍵單擊Exit可退出?Quartus?prime軟件。



圖?49

圖2 Quartus prime主體顯示



圖?50

圖3 File菜單一例

對于有些命令,需要連續(xù)訪問兩個或以上的菜單才可以使用。


2.2?新建工程

按如下步驟新建工程:

1.?選擇File>New Project Wizard,以打開圖4所示窗口,可通過Don't show me this introduction again跳過此窗口步驟。單擊Next,出現圖51所示窗口。



圖?51

圖4?引導的任務顯示



圖?52

圖5?創(chuàng)建新的工程

2.?選擇工作文件夾introtutorial,也可以使用您自己設定的文件夾。工程必須有一個名字,通常情況下,與頂層設計實體的名字相同。如圖5所示,選擇light作為工程名和頂層實體名。單擊Next。因為還沒有創(chuàng)建introtutorial文件夾,Quartus?prime彈出一個對話框,詢問是否新建所需文件夾,如圖6所示。單擊Yes,將會引出圖7所示的窗口。



圖?53

圖6?創(chuàng)建新的工程文件夾與否?



圖?54

圖7 工程類型



圖?55

圖8?添加用戶指定設計文件

3.?如果沒有已存在的設計文件,單擊Next,將會打開如圖8所示的畫面。



圖?56

圖8?選擇器件家族和指定的器件

4.?教學板采用的器件為Cyclone?ⅣE?EP4CE15F23C8。此處選擇Cyclone ⅣE器件家族。單擊Next,出現圖9所示畫面。



圖?57

圖9?指定第三方EDA工具

5.?用戶可指定一些第三方EDA工具。默認不改變。單擊Next,出現圖10所示窗口。

6.?設置一覽如圖10所示。單擊Finish,返回Quartus?prime主體窗口。標題欄將顯示light工程,如圖11所示。



圖?58

圖10?工程設置一覽



圖?59

圖11 Quartus prime顯示已建工程


2.3?使用Verilog代碼設計輸入

作為一個設計范例,我們將采用雙路的燈控電路,如圖?60所示。此燈可由兩個按鍵中的任一按鍵來控制,x1和x2,按鍵按下的為0。真值表也同時在圖中給出。注意輸入x1和x2是異或的關系,但是我們仍然用門來顯示。



圖 60


圖12?燈控電路

所需電路,如圖13所示,使用Verilog代碼來描述。注意,Verilog模塊叫做 light,這個圖5所示的名稱是一致的。此代碼的編輯可以使用任何可存儲ASCprime碼的文本編輯器,或者使用Quartus prime自帶的編輯器。當然,文件的名稱可以任意?。欢晚攲覸erilog模塊的名稱一致,是一個設計慣例。文件名稱必須帶.v擴展名,用以指示此文件為 Verilog文件。所有,我們使用light.v這個名稱。



圖?61

圖13?圖12所示電路的Verilog代碼


2.3.1?使用Quartus?prime文本編輯器

本節(jié)將展示如何使用Quartus prime文本編輯器。如果你喜歡使用其他文本編輯器來創(chuàng)建Verilog源文件,可以逃過此節(jié)。選擇File>New打開圖14所示窗口,選擇?Verilog HDL File,并單擊OK。這將打開文本編輯器窗口。第一步是指定所創(chuàng)建的文件的名稱。選擇File>Save As,打開圖15所示的對話框。選擇存儲類型為Verilog HDL File,填寫名稱為light.v。單擊Save,打開圖16所示窗口。輸入圖13所示的代碼。使用Ctrl+s保存該文件。



圖?62

圖14?選擇新建的文件類型



圖?63

圖15?命名文件



圖?64

圖16?文本編輯器窗口


2.3.2?使用Verilog模板

對于設計者來說,Verilog的語法有時很難被記住。為了解決問題,文本編輯器提供了Verilog模板集。這些模板提供了不同類型的Verilog表達的范例,譬如module聲明、always塊和設置語句的陳述??梢酝ㄟ^Edit>Insert Template>Verilog HDL來瀏覽這些模板,以熟悉這些資源,這是相當值得的。


2.3.3?添加設計文件到工程中

正如圖7所討論的那樣,我們可以告訴Quartus?prime軟件,哪些文件是當前工程的一部分。要查看當前的light工程中已包含的文件列表,選擇?Assignment>Setting>File,這將打開圖17所示畫面。另外一個可用的方法是選擇標簽?Project>Add/Remove Files in Project。

使用Quartus prime文本編輯器創(chuàng)建文件時,勾上Add file to current project選項,所創(chuàng)建文件即自動加入到工程文件列表。如果使用的不是Quartus?prime自帶的文本編輯器,那么圖17,列表中就沒有所創(chuàng)建的文件,此時必須手動添加文件到工程文件列表中。欲添加文件到工程文件列表中,單擊圖17中的?File Name:的按鈕,彈出圖18所示對話框,選擇light.v,單擊Open。再次查看圖17畫面,此時所添加的文件就已經在文件列表了。需要注意的是,在大多數案例中,Quartus?prime軟件可根據各個實體自動找到正確的文件,即使某些文件沒有被認真地添加到工程中。

然而,對于包含許多文件的復雜工程,按照上述方法,添加指定所需文件到工程中,是一個很好的設計慣例。



圖?65

圖17?設置窗口



圖?66

圖18?選擇文件


2.4?編譯設計電路

在light.v中Verilog代碼,要經過幾個Quartus?prime工具的處理:分析代碼、綜合電路以及生成目標芯片的實現內容。這些應用程序被聚集在一起,且被稱作編譯器。

選擇Processing>Start Compilation運行編譯器,或者單擊



按鈕運行。在編譯過程中,Quartus prime的左邊會顯示不同階段的進度。全部100%即表示編譯成功。

當編譯成功后,可以通過



按鈕手動打開編譯報告。




圖?67

圖19?編譯報告

在此窗口的左面,列出了許多信息的列表。如圖19所示,本工程使用了1個LE和3個引腳。



2.4.1?錯誤

在編譯期間,Quartus prime在消息窗口,會顯示生成的消息。如果此Verilog設計正確,其中一條消息就會顯示編譯成功及無錯誤。

如果編譯不是零錯誤,那么在Verilog代碼中,至少有一個錯誤。在這種情況下,與錯誤對應的消息就會在消息窗口顯示。雙擊某條錯誤信息,該信息將會滾動顯示完整;并且打開Quartus?prime自帶文本編譯器,Verilog代碼中的某行將被高亮顯示。類似的,編譯器也會顯示許多警告消息。同樣的方法也適用于查看完整的警告消息。針對于某條錯誤或警告消息,想得到更多信息,可選住此條消息,然后按住F1功能鍵,即可查看。

我們將light.v的最后一行改成endmodules,重新編譯。Quartus?prime彈出對話框,報告編譯錯誤;單擊OK,以確認。編譯報告如圖20所示。在消息窗口,單擊Error標簽,顯示圖21所示消息。雙擊第一條錯誤信息,Quartus?prime文本編輯器打開light.v,最后一行被高亮,如圖22所示。修正代碼,重新編譯,直至成功為止。




圖?68

圖20?編譯報告




圖?69

圖21?錯誤信息




圖?70

圖22?指示錯誤代碼的位置


2.5?引腳分配

我們使用LED6(連接的信號線為LED1_NET)代表f,sw0和sw1分別代表x1和x2,所需引腳如圖23所示。選擇Assignments>Pin Planner(或單擊



按鈕),打開圖26所示窗口,在下方Location下面輸入要配置的管腳。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?圖?71



圖?72



圖23?所需引腳

圖?73



圖24引腳分配


2.6?編程及配置FPGA器件

2.6.1?安裝下載電纜驅動

USB-Blaster用戶,請參考http://www.altera.com.cn/literature/ug/ug_usb_blstr.pdf

ByteBlaster prime用戶,請參考http://www.altera.com.cn/literature/ug/ug_bbprime.pdf

EthernetBlaster用戶,請參考http://www.altera.com.cn/literature/ug/ug_ebcc.pdf


2.6.2?JTAG編程

將USB-Blaster與FPGA開發(fā)板連接在一起,打開FPGA開發(fā)板電源,回到Quartus?prime主題窗口。選擇Tools>Progrmmer或單擊



按鈕,打開圖35所示窗口。選擇Mode為JTAG。缺省情況下,USB-Blaster沒有被選中,單擊Hardware Setup按鈕,在彈出的窗口選擇USB-Blaster,如圖36所示,單擊Close退出。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ???74



圖36?編程器窗口

圖?75



圖37?硬件設置窗口

如圖37所示,light.sof已被列入窗口。如果沒有列入的話,單擊Add File,選擇light.sof文件加入。這是一個由編譯器的匯編模塊生成的二進制文件,它包含配置FPGA器件的數據。.sof文件后綴,表示 SRAM目標文件(SRAM Object File)。同時可以注意到,選中的器件為EP4CE15F23。勾上Program/Configure,單擊 Start開始下載。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??76



圖38?下載SRAM目標文件


2.7?測試設計電路

下載完畢后,就可以測試實現的電路了。使用sw0和sw1]輸入所有可能值,觀察LED亮滅是否和預期一致。

如果與預期不致,那么就需要去定位問題,此時將使用到SINGNALTAP工具,請看下一章內容。



1.4QUARTUS開發(fā)工具-明德揚至簡設計法原理與應用的評論 (共 條)

分享到微博請遵守國家法律
汾西县| 康平县| 古丈县| 陕西省| 凉城县| 克东县| 安化县| 岑巩县| 黎平县| 东海县| 东乡族自治县| 闻喜县| 内乡县| 广汉市| 英德市| 改则县| 辉南县| 高台县| 鄂州市| 望都县| 高陵县| 连平县| 米脂县| 天门市| 渝北区| 江达县| 丰原市| 镶黄旗| 鱼台县| 黔南| 张掖市| 九台市| 明星| 高淳县| 三江| 清远市| 新化县| 乌鲁木齐县| 宜川县| 凤阳县| 永德县|