定 價:45 元
叢書名:普通高等教育“十三五”電子信息類規(guī)劃教材
- 作者:丁山
- 出版時間:2018/1/8
- ISBN:9787111583752
- 出 版 社:機械工業(yè)出版社
- 中圖法分類:TN702
- 頁碼:280
- 紙張:膠版紙
- 版次:1
- 開本:16K
本書根據(jù)以提高工程設計能力為目的,深入淺出的對EDA技術(shù)、VHDL硬件描述語言、FPGA開發(fā)應用及相關(guān)知識做了系統(tǒng)和完整的介紹,使讀者通過本書的學習與實驗,能初步了解和掌握EDA的基本內(nèi)容及實用技術(shù)。本書包括EDA的基本知識、常用EDA工具的使用方法和目標器件的結(jié)構(gòu)原理、以向?qū)问胶蛯嵗秊橹鞯姆椒ń榻B多種不同的設計方法、對VHDL的設計優(yōu)化以及基于EDA技術(shù)的典型設計項目。各章都安排了習題和針對性較強的實驗與設計。書中例舉的大部分VHDL設計實例和試驗實現(xiàn)EDA工具平臺是Vivado集成開發(fā)環(huán)境,硬件平臺是Basys3Artix—7FPGA開發(fā)平臺。并在EDA實驗系統(tǒng)上通過硬件測試。本書可作為高等院校電子工程、通信、工業(yè)自動化、計算機應用技術(shù)、儀器儀表、數(shù)字信號或圖像處理等學科的本科生或研究生的電子設計、EDA技術(shù)課程和VHDL硬件描述語言的教材及實驗指導書,同時也可以作為相關(guān)專業(yè)人員的自學參考書。
隨著半導體產(chǎn)業(yè)進入深納米的時代. 可編程邏輯器件向高密度、高速度、低價格方向迅速發(fā)展. EDA 技術(shù)在電子信息、通信、自動控制及計算機應用等領(lǐng)域的重要性日益突出.目前EDA 技術(shù)已經(jīng)成為電子信息類專業(yè)一門重要的專業(yè)基礎(chǔ)課程. 是電子信息類專業(yè)學生必須掌握的專業(yè)基礎(chǔ)知識和基本技能. 為了使學生掌握EDA 基本設計工具和設計方法. 在EDA 開發(fā)軟件上本書使用在FPGA 市場占有率第一的Xilinx 公司推出和發(fā)布的Vivado 設計套件. 該套件是一款基于業(yè)界標準的開放式開發(fā)環(huán)境. 可以利用Xilinx 公司推出的領(lǐng)先一代的硬件、軟件和I/ O 全面可編程的SoC - Zynq7000 系列實現(xiàn)數(shù)字系統(tǒng)、DSP 系統(tǒng)和嵌入式系統(tǒng)的設計. 作者力圖將EDA 技術(shù)最新發(fā)展成果、現(xiàn)代電子設計最前沿理論和技術(shù)、國際上業(yè)界普遍接受和認可的EDA 軟硬件開發(fā)平臺的使用方法奉獻給廣大讀者.本書力求全面、實用. 對例題做到詳細分析和解釋. 既可以幫助讀者學習理解知識和概念. 降低學習難度. 又具有啟發(fā)性. 幫助讀者更加輕松、迅速地理解和掌握本書內(nèi)容.本書在內(nèi)容的組織上共分14 章. 各章的具體內(nèi)容如下:第1 章為緒論. 主要概述了EDA 技術(shù)及其重要性. EDA 包含的知識體系結(jié)構(gòu). 如HDL、EDA 的工作軟件等. 比較了傳統(tǒng)電子設計方法與EDA 技術(shù)各自的特點. 同時對EDA技術(shù)的發(fā)展歷程、特點和優(yōu)勢. 以及利用EDA 進行工程設計的流程進行了簡要介紹.第2 章主要介紹了可編程邏輯器件的基本結(jié)構(gòu)和工作原理. 以及相關(guān)的編程、測試和配置方法. 首先對可編程邏輯器件進行了概述. 主要介紹了可編程邏輯器件的發(fā)展歷史. 并對可編程邏輯器件通過不同的劃分方式進行了分類. 接著重點介紹了高密度可編程邏輯器件CPLD 和FPGA 的結(jié)構(gòu)原理和工作特點. 然后詳細地闡述了JTAG 邊界掃描技術(shù)的硬件測試原理. 并對CPLD 的編程方法和配置方式進行了介紹. 最后介紹了本書使用的Basys3 開發(fā)板.第3 章主要講述了VHDL 語言的基本語法知識. 是使用VHDL 進行EDA 設計的基礎(chǔ).首先介紹了VHDL 程序的基本結(jié)構(gòu). 一個完整的VHDL 設計由庫、程序包、實體、結(jié)構(gòu)體和配置組成. 其中實體和結(jié)構(gòu)體是基本組成部分. 然后介紹了VHDL 語言中的文字規(guī)則、數(shù)據(jù)對象、數(shù)據(jù)類型和操作符等內(nèi)容. 最后介紹了VHDL 中預定義的屬性.第4 章主要講述了VHDL 語句的基本內(nèi)容. VHDL 中的語句可以分為兩大類: 順序語句和并行語句. 在此基礎(chǔ)上介紹了各種語句的語法以及使用方法、程序包的構(gòu)成和配置、子程序的概念及其使用方法. 并給出常用設計舉例.第5 章主要講述了有限狀態(tài)機的基本概念、特點和基本結(jié)構(gòu)等基礎(chǔ)內(nèi)容. 在此基礎(chǔ)上.對Moore 型狀態(tài)機和Mealy 型狀態(tài)機的結(jié)構(gòu)、特性和設計方法進行了詳細的舉例說明. 然后介紹了狀態(tài)位置直接輸出型編碼、順序編碼、枚舉類型編碼及一位熱碼編碼四種不同的狀態(tài)編碼方式. 以及程序直接導引法及狀態(tài)編碼檢測法兩種安全狀態(tài)機的設計方法. 最后比較全面地對有限狀態(tài)機進行了介紹.第6 章介紹了EDA 的硬件系統(tǒng)設計中VHDL 的優(yōu)化設計. 首先介紹了FPGA/ CPLD 的Ⅳ資源利用優(yōu)化. 資源優(yōu)化主要包括資源共享、邏輯優(yōu)化和串行化. 由于對于大多數(shù)的設計來說. 速度優(yōu)化比資源優(yōu)化更重要. 所以介紹了速度優(yōu)化. 并依次闡述了流水線設計、寄存器配平、關(guān)鍵路徑法、乒乓操作法和加法樹法. 最后詳細介紹了如何排除和避免毛刺或隨機干擾信號. 主要包括延時方式去毛刺、邏輯方式去毛刺和定時方式去毛刺.第7 章介紹了Vivado 設計套件的基本知識以及Vivado 設計套件的界面信息. 首先. 簡單介紹了Vivado 設計套件的特性. 其次介紹了使用Vivado 設計套件的系統(tǒng)級設計流程. 然后介紹了Vivado 設計套件的安裝過程. 之后介紹了各個工程文件夾存放的文件類型以及網(wǎng)表文件的相關(guān)知識. 最后介紹了Vivado 設計套件的基本界面信息.第8 章介紹了在Vivado 集成開發(fā)環(huán)境的工程模式下設計工程的基本設計實現(xiàn)流程. 工程模式下的基本設計實現(xiàn)主要步驟包括: 創(chuàng)建一個新的設計工程、創(chuàng)建并添加新的設計文件、RTL 詳細描述和分析、設計綜合、行為級仿真、建立約束、設計實現(xiàn)和分析、靜態(tài)時序分析、設計時序仿真以及生成編程文件并下載到目標芯片.第9 章介紹了Vivado 集成設計環(huán)境下創(chuàng)建和封裝用戶IP 的基本流程. 創(chuàng)建和封裝用戶IP的主要步驟包括: 創(chuàng)建一個用于定制用戶IP 的工程、設置定制IP 的庫名和目錄以及封裝IP.第10 章介紹了在Vivado 集成開發(fā)環(huán)境下基于IP 的簡單系統(tǒng)的設計實現(xiàn)流程. 基于IP的系統(tǒng)設計實現(xiàn)主要步驟包括: 創(chuàng)建一個新的設計工程、創(chuàng)建基于IP 的系統(tǒng)、行為級仿真、設計綜合、建立約束、設計實現(xiàn)和分析、靜態(tài)時序分析、設計時序仿真以及生成編程文件并下載到目標芯片.第11 章介紹了如何使用Vivado 集成開發(fā)環(huán)境和Basys3 開發(fā)板設計實現(xiàn)鍵控流水燈實驗的設計. 首先介紹了鍵控流水燈的設計要求和功能描述. 其次介紹了鍵控流水燈的層次化設計方案. 主要包括三部分內(nèi)容. 分別是分頻模塊. 流水燈顯示模塊和按鍵控制模塊. 最后對鍵控流水燈設計進行了硬件測試.第12 章介紹了搶答器實驗設計. 首先介紹了搶答器的設計要求和功能描述. 其次制訂了三人搶答器的層次化設計方案. 主要包括三部分內(nèi)容. 分別是分頻器模塊、搶答鑒別器模塊和數(shù)碼管顯示模塊. 然后對搶答器進行了頂層設計和仿真. 最后對搶答器的設計進行了硬件測試.第13 章主要介紹了一個簡單的數(shù)字鐘實驗設計. 首先介紹了數(shù)字鐘的設計要求和功能描述. 然后介紹了數(shù)字鐘的層次化設計方案. 主要包括三部分內(nèi)容. 分別是分頻器模塊、計數(shù)模塊和數(shù)碼管顯示模塊. 之后對數(shù)字鐘進行了頂層設計和仿真. 最后對本次設計進行了硬件測試.第14 章介紹了如何使用Vivado 集成開發(fā)環(huán)境和Basys3 開發(fā)板進行簡單的UART 實驗設計. 實驗分為兩部分. 一部分是接收器的設計實現(xiàn). 另一部分是發(fā)送器的設計實現(xiàn). 在兩部分中分別介紹了接收器和發(fā)送器的層次化設計方案. 并對其進行了硬件測試.本書內(nèi)容充實. 系統(tǒng)全面. 重點突出. 闡述循序漸進. 由淺入深. 書中所有例題均在Vivado 環(huán)境下運行通過. 本書配有免費的電子課件. 歡迎選用本書作為教材的教師登錄www.. cmpedu.. com 下載或發(fā)郵件到wangkang ̄maizi9@126.. com 索取.參加本書編寫、校對及程序測試工作的還有吳金輝、王輝等. 在此表示感謝.由于作者水平有限. 書中難免有錯誤和不足之處. 懇請各位專家和讀者批評指正.
編 者
前 言
第1 章 緒論 1
1. 1。牛模 技術(shù)概要 1
1. 1. 1 EDA 技術(shù)的含義 1
1. 1. 2。牛模 技術(shù)的發(fā)展歷程 1
1. 1. 3。牛模 的基本特征 3
1. 1. 4。牛模 技術(shù)的優(yōu)勢 5
1. 2。牛模 技術(shù)的實現(xiàn)目標 7
1. 3 硬件描述語言 8
1. 3. 1。郑龋模 8
1. 3. 2。郑澹颍椋欤铮 HDL 9
1. 3. 3。郑龋模 和Verilog HDL 的比較 9
1. 4 常用的EDA 工具 10
1. 4. 1 設計輸入編輯器 11
1. 4. 2 綜合器 11
1. 4. 3 仿真器 13
1. 4. 4 適配器 13
1. 4. 5 編程下載 14
1. 5。牛模 的工程設計流程 14
1. 6。郑椋觯幔洌 概述 17
1. 7。牛模 技術(shù)的發(fā)展趨勢 17
本章小結(jié) 19
習題 19
第2 章。茫校蹋 與FPGA 的結(jié)構(gòu)原理 20
2. 1 PLD 概述 20
2. 1. 1。校蹋 入門 20
2. 1. 2 常見的PLD 21
2. 1. 3。校蹋 的優(yōu)點 22
2. 1. 4。校蹋 的發(fā)展趨勢 23
2. 2 簡單PLD 的結(jié)構(gòu)原理 24
2. 2. 1 邏輯符號表示方法 25
2. 2. 2。校遥希 的結(jié)構(gòu)原理 25
2. 2. 3。校蹋 的結(jié)構(gòu)原理 26
2. 2. 4。校粒 的結(jié)構(gòu)原理 26
2. 2. 5。牵粒 的結(jié)構(gòu)原理 31
2. 3。茫校蹋 的結(jié)構(gòu)原理 35
2. 3. 1 CPLD 的基本結(jié)構(gòu) 35
2. 3. 2 基于乘積項的可編程邏輯器件 36
2. 4。疲校牵 的結(jié)構(gòu)原理 39
2. 4. 1 查找表型FPGA 的邏輯結(jié)構(gòu) 41
2. 4. 2 Xilinx 公司7 系列FPGA 簡介 43
2. 4. 3。疲校牵 與CPLD 的區(qū)別 47
2. 5 硬件測試 48
2. 6。茫校蹋/ FPGA 的編程與配置 49
2. 7。拢幔螅螅 開發(fā)板介紹 50
2. 7. 1 電源電路 51
2. 7. 2。蹋牛 燈電路和數(shù)碼管電路 51
2. 7. 3 按鍵電路和撥碼開關(guān)電路 52
2. 7. 4。郑牵 顯示電路和I/ O 擴展電路 53
本章小結(jié) 53
習題 54
第3 章。郑龋模 入門基礎(chǔ) 55
3. 1 VHDL 的基本結(jié)構(gòu) 55
3. 1. 1 實體 56
3. 1. 2 結(jié)構(gòu)體 57
3. 1. 3 庫、程序包和配置 57
3. 2 VHDL 的文字規(guī)則 59
3. 2. 1 數(shù)字型文字 60
3. 2. 2 字符串型文字 60
3. 2. 3 標識符 60
3. 2. 4 下標 61
3. 3。郑龋模 的數(shù)據(jù)對象 62
3. 3. 1 常數(shù) 62
3. 3. 2 變量 62
3. 3. 3 信號 62
3. 3. 4 文件 63
3. 4。郑龋模 的數(shù)據(jù)類型 63
3. 4. 1。郑龋模 預定義數(shù)據(jù)類型 64
3. 4. 2 用戶自定義數(shù)據(jù)類型 67
3. 4. 3 數(shù)據(jù)類型間的轉(zhuǎn)換 68
Ⅵ
3. 5。郑龋模 的操作符 69
3. 6 VHDL 預定義屬性 73
本章小結(jié) 75
習題 76
第4 章。郑龋模 硬件描述語言 77
4. 1 進程語句 77
4. 2 賦值語句 78
4. 3 順序描述語句 80
4. 3. 1。桑 語句 80
4. 3. 2。茫粒樱 語句 82
4. 3. 3。蹋希希 語句 83
4. 3. 4 NEXT 語句和EXIT 語句 84
4. 3. 5。祝粒桑 語句 85
4. 3. 6。遥牛裕眨遥 語句 86
4. 3. 7 NULL 語句 87
4. 4 元件例化語句 87
4. 5 生成語句 90
4. 6 塊語句 91
4. 7 程序包和配置 93
4. 7. 1 程序包 93
4. 7. 2 配置 94
4. 8 子程序 95
4. 8. 1 過程 96
4. 8. 2 函數(shù) 97
4. 9 其他語句 99
4. 10 常用設計舉例 100
4. 10. 1 結(jié)構(gòu)體的三種描述方式 100
4. 10. 2 組合邏輯電路設計 102
4. 10. 3 時序邏輯電路設計 107
本章小結(jié) 113
習題 113
第5 章 有限狀態(tài)機設計 114
5. 1 概述 114
5. 1. 1 狀態(tài)機的特點 114
5. 1. 2 狀態(tài)機的分類 115
5. 2。郑龋模 狀態(tài)機的一般形式 116
5. 2. 1 一般狀態(tài)機的結(jié)構(gòu) 116
5. 2. 2 狀態(tài)機的設計流程 118
5. 2. 3 狀態(tài)機的狀態(tài)轉(zhuǎn)移圖描述 118
5. 2. 4 狀態(tài)機的狀態(tài)說明部分 119
5. 3 Moore 型狀態(tài)機的設計 120
5. 3. 1 單進程Moore 型狀態(tài)機 120
5. 3. 2 多進程Moore 型狀態(tài)機 122
5. 4。停澹幔欤 型狀態(tài)機的設計 125
5. 5 狀態(tài)編碼 127
5. 5. 1 順序編碼 127
5. 5. 2 枚舉類型編碼 128
5. 5. 3 狀態(tài)位直接輸出型編碼 128
5. 5. 4 一位熱碼編碼 129
5. 6 安全狀態(tài)機設計 129
5. 6. 1 程序直接導引法 129
5. 6. 2 狀態(tài)編碼檢測法 130
本章小結(jié) 130
習題 130
第6 章。郑龋模 優(yōu)化設計 132
6. 1 資源優(yōu)化 132
6. 1. 1