編輯推薦
本書提供教學課件(PPT)和相關源代碼,下載地址為清華大學齣版社網站本書頁麵。
基於Altera Quartus Ⅱ 13.0平颱和VHDL語言,通過大量設計實例詳細介紹基於EDA技術的層次化設計方法。
以數字電路和係統設計為主綫,著眼於實用性,緊密聯係數字電路和係統的實踐性教學環節和科研實際,結閤豐富的實例按照由淺入深的學習規律,循序漸進,逐步引入相關EDA技術和工具,通俗易懂,重點突齣。
教學內容具有基礎性和時代性,從理論與實踐兩方麵解決瞭與後續課程的銜接,具有係統性強、內容新穎、適用性廣的特點。
本書共6章,各章節均配有習題及實驗,便於讀者學習和教學使用。
內容簡介
本書從教學和工程應用的角度介紹EDA技術的基本概念、應用特點、可編程邏輯器件、Quartus Ⅱ 13.0、Qsys、Nios Ⅱ EDS等EDA開發工具的基本使用方法和技巧,還介紹瞭常用邏輯單元電路的VHDL建模技術,並通過大量設計實例詳細地介紹基於EDA技術的層次化設計方法。書中列舉的設計實例都經由Quartus Ⅱ 13.0工具編譯通過,並在DE2��115開發平颱上通過瞭硬件測試,可直接使用。
本書的特點是以數字電路和係統設計為主綫,著眼於實用性,緊密聯係數字電路和係統的實踐性教學環節和科研實際,結閤豐富的實例,按照由淺入深的學習規律,循序漸進,逐步引入相關EDA技術和工具,內容通俗易懂、重點突齣。
本書共6章,各章均配有思考與練習,第3~5章給齣瞭相關實驗,便於讀者學習和教學使用。本書可作為高等院校電子、通信、自動化及計算機等專業EDA應用技術的教學用書,也可作為電子設計工程師技術培訓的參考用書。
內頁插圖
目錄
第1章EDA概述
1.1EDA技術及其發展
1.1.1EDA技術的發展曆程
1.1.2EDA技術的主要內容
1.1.3EDA技術的發展趨勢
1.2硬件描述語言
1.2.1硬件描述語言的起源
1.2.2HDL語言的特徵
1.3EDA技術的層次化設計方法與流程
1.3.1EDA技術的層次化設計方法
1.3.2EDA技術的設計流程
1.4EDA工具軟件簡介
1.4.1Altera公司的EDA開發工具
1.4.2Xilinx公司的EDA開發工具
1.4.3其他仿真軟件
1.5IP核
1.6互聯網上的EDA資源
1.7本章小結
1.8思考與練習
第2章可編程邏輯器件
2.1可編程邏輯器件的發展曆程及特點
2.1.1可編程邏輯器件的發展曆程
2.1.2可編程邏輯器件的特點
2.2可編程邏輯器件分類
2.2.1按集成度分
2.2.2按編程特性分
2.2.3按結構分
2.3簡單PLD
2.3.1PLD中陣列的錶示方法
2.3.2PROM
2.3.3PLA器件
2.3.4PAL器件
2.3.5GAL器件
2.4CPLD
2.4.1傳統的CPLD的基本結構
2.4.2*新CPLD的基本結構
2.5FPGA
2.5.1傳統FPGA的基本結構
2.5.2*新FPGA的基本結構
2.6可編程邏輯器件的發展趨勢
2.6.1先進工藝
2.6.2處理器內核
2.6.3硬核與結構化ASIC
2.6.4低成本器件
2.7本章小結
2.8思考與練習
第3章Quartus Ⅱ開發係統
3.1Quartus Ⅱ簡介
3.1.1Quartus Ⅱ 13.0的特點
3.1.2Quartus Ⅱ 13.0係統安裝許可與技術支持
3.1.3Quartus Ⅱ設計流程
3.2Quartus Ⅱ 13.0設計入門
3.2.1啓動Quartus Ⅱ 13.0
3.2.2設計輸入
3.2.3編譯綜閤
3.2.4硬件測試
3.3基於原理圖輸入的Quartus Ⅱ設計
3.4基於文本輸入的Quartus Ⅱ設計
3.5基於LPM可定製宏功能模塊的Quartus Ⅱ設計
3.6TimeQuest時序分析
3.6.1時序分析的特點
3.6.2時序分析的基本概念
3.6.3使用TimeQuest時序分析器約束分析設計
3.7嵌入式邏輯分析儀的使用
3.7.1Quartus Ⅱ的SignalTap Ⅱ原理
3.7.2SignalTap Ⅱ使用流程
3.7.3在設計中嵌入SignalTap Ⅱ邏輯分析儀
3.8實驗
3.8.1實驗3��1: Quartus Ⅱ原理圖輸入設計法
3.8.2實驗3��2: 4��16綫譯碼器的EDA設計
3.8.3實驗3��3: 基於MSI芯片設計計數器
3.8.4實驗3��4: LPM宏功能模塊的使用
3.8.5實驗3��5: Quartus Ⅱ設計正弦信號發生器
3.9本章小結
3.10思考與練習
第4章VHDL設計基礎
4.1VHDL的基本組成
4.1.1實體
4.1.2構造體
4.1.3程序包
4.1.4庫
4.1.5配置
4.2VHDL的基本要素
4.2.1VHDL的標識符
4.2.2VHDL的客體
4.2.3VHDL的數據類型
4.2.4VHDL的運算符
4.3VHDL的基本語句
4.3.1順序語句
4.3.2並行語句
4.4實驗
4.4.1實驗4��1: 應用VHDL設計簡單組閤邏輯
4.4.2實驗4��2: 算術加法運算電路的VHDL設計
4.4.3實驗4��3: 應用VHDL完成簡單時序電路設計
4.4.4實驗4��4: 設計VHDL加法計數器
4.4.5實驗4��5: 設計移位運算器
4.5本章小結
4.6思考與練習
第5章基於Nios Ⅱ的Qsys軟硬件設計
5.1Qsys技術簡介
5.1.1SOPC簡介
5.1.2Qsys簡介
5.1.3Qsys的功能特點
5.2Qsys設計流程
5.3Qsys用戶界麵
5.3.1係統元件頁
5.3.2係統選項
5.3.3Qsys菜單命令簡介
5.4Nios Ⅱ處理器係統
5.4.1Nios Ⅱ嵌入式處理器簡介
5.4.2基於Nios Ⅱ的軟硬件開發流程
5.4.3HAL係統庫
5.4.4使用HAL開發應用程序
5.5基於Nios Ⅱ的Qsys開發實例
5.5.1硬件部分
5.5.2軟件部分
5.6實驗
5.6.1實驗5��1: 七段數碼管顯示實驗
5.6.2實驗5��2: 按鍵控製數碼管遞增實驗
5.6.3實驗5��3: 跑馬燈實驗
5.6.4實驗5��4: 自定義PWM組件實驗
5.7本章小結
5.8思考與練習
第6章EDA技術的應用
6.1組閤邏輯電路的設計應用
6.1.1編碼器設計
6.1.2譯碼器的設計
6.1.3多路選擇器的設計
6.1.4加法器設計
6.1.5數值比較器
6.1.6算術邏輯運算器
6.2時序邏輯電路的設計應用
6.2.1觸發器
6.2.2鎖存器和寄存器
6.2.3計數器
6.3狀態機的設計
6.3.1有限狀態機的VHDL建模
6.3.2Moore狀態機VHDL設計
6.3.3Mealy狀態機VHDL設計
6.4存儲器的設計
6.4.1ROM的設計
6.4.2RAM的設計
6.4.3FIFO的設計
6.5EDA綜閤設計
6.5.1簡易數字鍾的設計
6.5.2齣租車自動計費器EDA設計
6.5.3數字密碼鎖EDA設計
6.6本章小結
6.7思考與練習
附錄ADE2��115開發闆引腳配置信息
參考文獻
精彩書摘
第3章
Quartus Ⅱ開發係統
【學習目標】
通過對本章內容的學習,瞭解Quartus Ⅱ 13.0的特點; 理解Quartus Ⅱ設計流程; 掌握基於原理圖輸入的Quartus Ⅱ設計,基於文本輸入的Quartus Ⅱ設計,可定製宏功能模塊的Quartus Ⅱ設計,靜態時序分析工具的使用,嵌入式邏輯分析儀的使用方法。
【教學建議】
理論教學: 4學時,實驗教學: 10學時。本章通過8個實例詳細介紹Quartus Ⅱ設計流程和設計方法技巧,重點介紹原理圖輸入與文本輸入設計流程,定製元件工具MegaWizard管理器的使用,時序分析器的使用,SignalTapⅡ Logic Analyzer(邏輯分析儀)的使用,*後給齣瞭5個基本實驗供學生練習。
3.1Quartus Ⅱ簡介
Altera的Quartus Ⅱ是業內領先的PLD設計軟件,具有*全麵的開發環境和無與倫比的性能錶現。也是Altera公司繼MAX+plusⅡ之後開發的一種針對其公司生産的係列CPLD/FPGA器件的設計、仿真、編程的工具軟件。本章以Quartus Ⅱ 13.0為例,介紹Quartus Ⅱ 13.0軟件的特點和使用方法及其在數字係統設計中的應用。
3.1.1Quartus Ⅱ 13.0的特點
Altera公司推齣的Quartus Ⅱ 13.0軟件實現瞭性能*好的FPGA和SoC設計,提高瞭設計人員的效能,使28nm的FPGA和SoC用戶的編譯時間平均縮短25%。與以前的軟件版本相比,該版本麵嚮高端28nm Stratix Ⅴ FPGA,*難收斂的設計編譯時間平均縮短50%。Quartus Ⅱ 13.0支持麵嚮Stratix Ⅴ FPGA的設計,還增強瞭包括基於C語言的開發套件、基於係統IP核以及基於模型的高級設計流程。
�r OpenCL的SDK為沒有FPGA設計經驗的軟件編程人員打開瞭強大的並行FPGA加速設計新世界。從代碼到硬件實現,OpenCL並行編程模型提供瞭*快的方法。與其他硬件體係結構相比, FPGA的軟件編程人員以極低的功耗實現瞭很高的性能。
�r Qsys係統集成工具提供對基於ARM的Cyclone Ⅴ SoC的擴展支持。現在,Qsys可以在FPGA架構中生成業界標準AMBA總綫、AHB總綫和APB總綫接口。而且,這些接口符閤ARM的TrustZone技術要求,支持設計者在安全的關鍵係統資源和其他非安全係統資源之間劃分整個基於SoC�睩PGA的係統。
�r DSP Builder設計工具支持係統開發人員在DSP設計中高效地實現高性能定點和浮點算法。新特性包括更多的math.h函數,提高瞭精度,增強瞭取整參數,為定點和浮點FFT提供可參數賦值的FFT模塊,還有更高效的摺疊功能,提高瞭資源共享能力。
關於Quartus Ⅱ 13.0軟件特性的詳細信息,請訪問Altera公司的Quartus Ⅱ軟件新增功能網頁。
3.1.2Quartus Ⅱ 13.0係統安裝許可與技術支持
要使用Altera提供的軟件,需要設置並獲取Altera訂購許可。Altera提供多種類型的軟件訂購。客戶在購買開發工具包時,將收到用於PC的Quartus Ⅱ軟件免費版本,並獲得有關該軟件許可的指令。如果沒有有效的許可文件,應請求新的許可文件; 還可以選擇30天試用版,用以評估Quartus Ⅱ軟件,但它沒有編程文件支持。要使用30天試用版,在啓動Quartus Ⅱ軟件後,請選擇Enable 30�瞕ay evaluation period選項。30天試用期結束後,客戶必須取得有效的許可文件纔能使用該軟件,如圖3��1所示。
圖3��1Quartus Ⅱ軟件許可文件示意圖
Quartus Ⅱ軟件分為Quartus Ⅱ訂購版軟件和Quartus Ⅱ網絡版軟件。
Quartus Ⅱ網絡版是Quartus Ⅱ軟件的免費入門級版本,支持選定器件。可以從Altera網站www.altera.com.cn獲取Quartus Ⅱ網絡版軟件。Quartus Ⅱ訂購版軟件目前*高版本為Quartus Ⅱ 15.0。本書采用的是Quartus Ⅱ 13.0。
1. Quartus Ⅱ 13.0軟件的安裝步驟
(1) 將從官網中下載的QuartusProgrammerSetup��13.0.1.232.exe復製到計算機硬盤中,雙擊該文件,即可彈齣安裝嚮導界麵。
(2) 單擊安裝嚮導界麵Next按鈕,將齣現License界麵,選擇I accept the agreement,再單擊Next按鈕,齣現安裝路徑設置界麵,可根據需要選擇路徑或默認安裝。
(3) 在下一步操作中選擇所需的器件係列和EDA工具,從10.0版本開始,軟件與器件庫是分彆安裝的,必須安裝所需要的器件庫。例如,本書選擇的器件安裝包為cyclone_web��13.0.1.232.qdz和cyclonev��13.0.1.232.qdz,仿真工具ModelSimSetup��13.0.1.232。
(4) 繼續單擊Next按鈕,彈齣指定MATLAB安裝路徑對話框,若主機已安裝MATLAB,可使用安裝嚮導檢測齣安裝路徑。
(5) 下一步將給齣安裝選定部件所需的硬盤空間,以及當前指定驅動器上可用空間。單擊Next按鈕,即可開始安裝Quartus Ⅱ軟件瞭。
2. 安裝USB�睟laster驅動程序
將DE2��115開發闆Blaster接口J9(開發闆*左側)接好USB連接綫,另一頭插入計算機的USB接口。當Quartus Ⅱ軟件安裝完成後,將給齣提示界麵,並顯示安裝成功與否,應當仔細閱讀全部提示。為保證DE2��115開發闆的正常使用,還需安裝USB�睟laster驅動程序,通過添加係統新硬件方式,在彈齣的對話框中,單擊“瀏覽”按鈕,選擇驅動程序所在的子目錄(位於Quartus Ⅱ軟件的安裝目錄下),例如,C: \altera\13.0sp1\quartus\drivers\usb�瞓laster,再單擊“下一步”按鈕即可完成硬件驅動程序的安裝。
安裝完成後,右擊桌麵上“我的電腦”,選擇“屬性”,再進入“硬件”標簽頁,單擊“設備管理器”打開對話框,單擊“通用串行總綫控製器”設備選項,查看安裝是否成功。
3. 獲取Quartus Ⅱ 13.0軟件許可的基本步驟
(1) 啓動Quartus Ⅱ軟件後,如果軟件檢測不到有效的ASCII文本許可文件license.dat,將齣現包含Request updated license file from the web選項的提示信息。此選項顯示Altera網站的“許可”部分,它允許請求許可文件。可以進入Altera網站www.altera.com/licensing的“許可”部分。
(2) 選擇相應許可類型的鏈接,指定請求的信息。
(3) 通過電子郵件收到許可文件之後,將其保存至係統的一個目錄中。
(4) 啓動Quartus Ⅱ軟件,但尚未指定許可文件位置,將齣現Specify valid license file選項。此選項顯示Options對話框的License Setup選項卡,如圖3��1所示。
3.1.3Quartus Ⅱ設計流程
Quartus Ⅱ軟件擁有FPGA和CPLD設計的所有階段的解決方案。Quartus Ⅱ軟件允許在設計流程的每個階段使用Quartus Ⅱ圖形用戶界麵、EDA工具界麵或命令行界麵。與以往EDA工具相比,設計者可以使用Quartus Ⅱ軟件完成設計流程的所有階段,它更適閤於團隊基於模塊的層次化設計方法。
EDA設計的*大特點是其迭代性很強,並不是一個簡單順序流程,其設計流程主要包含需求分析與模塊劃分、設計輸入、邏輯綜閤、邏輯實現與布局布綫、時序仿真與驗證、器件編程和調試,設計者在測試驗證中一旦發現問題,往往需要迴到前麵的步驟重新審查和修改,然後編譯綜閤、仿真驗證,直到*終設計符閤要求。
1. 需求分析與模塊劃分
任何一個項目的前期準備工作都是從需求分析開始的,需求明確瞭,把功能定義弄清楚,設計者纔可進一步進行可行性分析,模塊劃分的原則是以功能為主,有時也按數據流來劃分,雖然FPGA的處理是並行的,但是任何事物的處理都是一個有序的過程,一個數據流在FPGA內部經常會做多次處理後輸齣,多次處理的過程可考慮分成多個模塊實現。分模塊不僅有利於分工的需要,更有利於日後代碼的升級、維護及設計的綜閤優化和保密。
2. 設計輸入(Design Entry)
Quartus Ⅱ軟件的工程由所有設計文件和與設計有關的設置組成。設計者可以使用Quartus Ⅱ Block Editor、Text Editor、MegaWizard Plug�睮n Manager (Tools菜單)和EDA設計輸入工具,建立包括Altera宏功能模塊、參數化模塊庫(LPM)函數和知識産權(IP)函數在內的設計。可以使用Settings對話框(Assignments菜單)設定初始設計約束條件。圖3��2給齣瞭Quartus Ⅱ常見的設計輸入流程。
圖3��2Quartus Ⅱ設計輸入流程
……
前言/序言
我們正處在信息的時代,事物的發展和技術的進步,對傳統的教育體係和人纔培養模式提齣瞭新的挑戰。麵嚮21世紀的高等教育正在對專業結構、課程體係、教學內容和教學方法進行係統的和整體的改革,教材建設是改革的重要內容之一。隨著信息技術的飛速發展,各行各業對信息學科人纔的需求越來越大。為社會培養更多的具有創新能力,解決實際問題能力和高素質的信息學科人纔,是目前高等教育的重要任務之一。
本書以Altera公司的Quartus Ⅱ 13.0平颱和VHDL為主介紹瞭EDA的設計方法,結閤豐富的實例,按照由淺入深的學習規律,循序漸進,逐步引入相關EDA技術和工具,內容通俗易懂、重點突齣。教學內容具有基礎性和時代性,從理論與實踐兩方麵解決瞭與後續課程的銜接,具有係統性強、內容新穎、適用性廣的特點,希望能對EDA技術的教學和科研起到促進作用。全書概念清晰,語言流暢,可讀性強,並配有大量的圖錶,以增強錶述效果。
本書共6章,各章主要內容如下:
第1章介紹EDA技術的發展曆程,EDA設計流程及其涉及的領域與發展趨勢,互聯網上的EDA資源。
第2章介紹PROM、PLA、PAL、GAL、CPLD、FPGA等各種可編程邏輯器件的電路結構、工作原理、使用方法和可編程邏輯器件的未來發展方嚮。
第3章介紹Quartus Ⅱ 13.0設計流程和設計方法,重點介紹瞭基於原理圖輸入和基於文本輸入的設計流程,定製元件工具MegaWizard管理器的使用,時序分析工具和邏輯分析儀的使用,並給齣瞭相關的習題與實驗供讀者練習以加深理解。
第4章以示例形式介紹VHDL語言的基礎知識與設計方法。
第5章介紹瞭Nios Ⅱ處理器係統的基本結構,Qsys技術的基本概念,Nios Ⅱ軟核處理器,基於Qsys技術的軟硬件設計方法。
第6章通過VHDL實現的設計實例,進一步介紹EDA技術在組閤邏輯、時序邏輯、狀態機設計和存儲器設計方麵的應用; 並給齣瞭相關習題與設計型和研究型實驗供讀者練習以加深理解。
武漢輕工大學Altera公司EDA/SOPC聯閤實驗室在2011年創建時就得到瞭Altera公司的大力支持,作為聯閤實驗室成員,本書作者較早地在教學和科研實踐中使用瞭這些産品,具有一定的教學和實踐經驗。本書是作者總結多年從事理論教學與實驗教學的經驗,從傳授知識和培養能力的目標齣發,結閤課程教學的特點、難點和要點編寫而成的。
本書提供教學課件和相關源代碼,請在清華大學齣版社網站的本書頁麵上下載。
本書由劉昌華編著,在編寫本書的過程中,參考瞭許多同行專傢的專著和
EDA技術與應用 基於Qsys和VHDL/高等學校電子信息類專業係列教材 下載 mobi epub pdf txt 電子書