《Verilog-HDL實用設計與工程製作》是2016年7月北京航空航天大學出版社出版的圖書,作者是劉衛玲、常曉明。
基本介紹
- 中文名:Verilog-HDL實用設計與工程製作
- 作者:劉衛玲、常曉明
- ISBN:9787512421172
- 定價:59元
- 出版社:北京航空航天大學出版社
- 出版時間:2016年7月
- 裝幀:平裝
- 開本:16開
內容簡介,圖書目錄,
內容簡介
本書從實踐的角度出發,全面介紹硬體描述語言Verilog-HDL,通過與具體電路實驗的結合,使讀者能夠輕鬆地掌握Verilog-HDL的語法、結構、功能及簡單套用。
全書共分8章,第1~5章,通過套用Verilog-HDL描述的各種邏輯電路實例,詳細講解該語言的語法結構和FPGA的開發流程;第6章,介紹硬體開發應具備的條件;第7章,講解數字電路系統的設計思路;第8章,通過列舉12個簡單的套用實例,詳細介紹工程套用系統的設計與實現的全過程。書中給出的全部仿真結果和硬體實現均經過驗證。全書的所有Verilog-HDL實例檔案可在北京航空航天大學出版社網站的“下載專區”進行下載。
本書可作為學習數字設計的初學者和工程技術人員的入門書、工具書和參考資料。
圖書目錄
第1章 硬體描述語言………………………………………………………………… 1
1.1 什麼是硬體描述語言HDL ………………………………………………… 1
1.2 基本邏輯電路的Verilog-HDL描述………………………………………… 1
1.2.1 與門邏輯電路的描述…………………………………………………… 1
1.2.2 與非門邏輯電路的描述………………………………………………… 5
1.2.3 非門邏輯電路的描述…………………………………………………… 6
1.2.4 或門邏輯電路的描述…………………………………………………… 6
1.2.5 或非門邏輯電路的描述………………………………………………… 7
1.2.6 緩衝器邏輯電路的描述………………………………………………… 8
1.3 邏輯仿真……………………………………………………………………… 8
1.3.1 頂層模組的編寫………………………………………………………… 9
1.3.2 暫存器類型定義………………………………………………………… 10
1.3.3 線網類型定義…………………………………………………………… 10
1.3.4 底層模組的調用………………………………………………………… 10
1.3.5 輸入連線埠波形的描述…………………………………………………… 10
1.3.6 二與門邏輯電路的邏輯仿真結果……………………………………… 11
第2章 AlteraFPGA開發板及開發流程簡介……………………………………… 12
2.1 FPGA 開發板及開發環境…………………………………………………… 12
2.1.1 FPGA 開發板簡介……………………………………………………… 12
2.1.2 FPGA 開發環境………………………………………………………… 17
2.2 二與門邏輯電路的開發實例………………………………………………… 20
2.2.1 工程檔案的建立………………………………………………………… 20
2.2.2 源檔案的建立…………………………………………………………… 23
2.2.3 綜合分析………………………………………………………………… 27
2.2.4 ModelSim 仿真………………………………………………………… 27
2.2.5 引腳配置………………………………………………………………… 32
2.2.6 編譯與下載……………………………………………………………… 32
2.2.7 硬體測試………………………………………………………………… 34
第3章 組合邏輯電路……………………………………………………………… 35
3.1 數據選擇器…………………………………………………………………… 35
3.1.1 2 1數據選擇器……………………………………………………… 35
3.1.2 2 1數據選擇器的Verilog-HDL描述……………………………… 36
3.1.3 4 1數據選擇器……………………………………………………… 37
3.1.4 4 1數據選擇器的Verilog-HDL描述……………………………… 37
3.1.5 條件操作符的使用方法………………………………………………… 38
3.1.6 數據選擇器的行為描述方式…………………………………………… 39
3.1.7 case語句的使用方法…………………………………………………… 40
3.1.8 if else語句的使用方法……………………………………………… 41
3.1.9 function函式的使用方法……………………………………………… 42
3.1.10 用於仿真的頂層模組………………………………………………… 42
3.1.11 數據選擇器的邏輯仿真結果………………………………………… 43
3.2 數據比較器…………………………………………………………………… 44
3.2.1 最簡單的數據判斷方法………………………………………………… 45
3.2.2 2位數據比較器………………………………………………………… 45
3.2.3 2位數據比較器的Verilog-HDL描述……………………………… 48
3.2.4 2位數據比較器的邏輯仿真結果……………………………………… 49
3.2.5 數據比較器的數據寬度擴展…………………………………………… 50
3.2.6 4位數據比較器的Verilog-HDL描述……………………………… 52
3.2.7 4位數據比較器的邏輯仿真結果……………………………………… 54
3.3 編碼器………………………………………………………………………… 55
3.3.1 2位二進制編碼器……………………………………………………… 55
3.3.2 2位二進制編碼器的Verilog-HDL描述…………………………… 56
3.3.3 2位二進制編碼器的邏輯仿真結果…………………………………… 57
3.4 解碼器………………………………………………………………………… 58
3.4.1 BCD碼解碼器………………………………………………………… 58
3.4.2 非完全描述的邏輯函式和邏輯表達式的簡化………………………… 60
3.4.3 BCD碼解碼器的Verilog-HDL描述………………………………… 61
3.4.4 BCD碼解碼器的邏輯仿真結果……………………………………… 63
第4章 觸發器……………………………………………………………………… 64
4.1 異步RS觸發器……………………………………………………………… 64
4.1.1 異步RS觸發器的邏輯符號…………………………………………… 64
4.1.2 異步RS觸發器的Verilog-HDL描述……………………………… 65
4.1.3 異步RS觸發器的邏輯仿真結果……………………………………… 66
4.1.4 always塊語句的使用方法…………………………………………… 67
4.2 同步RS觸發器……………………………………………………………… 67
4.2.1 同步RS觸發器的邏輯符號…………………………………………… 67
4.2.2 同步RS觸發器的Verilog-HDL描述……………………………… 68
4.2.3 同步RS觸發器的邏輯仿真結果……………………………………… 69
4.3 異步T觸發器……………………………………………………………… 69
4.3.1 異步T觸發器的邏輯符號…………………………………………… 69
4.3.2 異步T觸發器的Verilog-HDL描述………………………………… 70
4.3.3 異步T觸發器的邏輯仿真結果……………………………………… 71
4.4 同步T觸發器……………………………………………………………… 72
4.4.1 同步T觸發器的邏輯符號…………………………………………… 72
4.4.2 同步T觸發器的Verilog-HDL描述………………………………… 72
4.4.3 同步T觸發器的邏輯仿真結果……………………………………… 73
4.5 同步D觸發器……………………………………………………………… 74
4.5.1 同步D觸發器的邏輯符號…………………………………………… 74
4.5.2 同步D觸發器的Verilog-HDL描述………………………………… 75
4.5.3 同步D觸發器的邏輯仿真結果……………………………………… 76
4.6 帶有復位端的同步D觸發器……………………………………………… 76
4.6.1 帶有復位端的同步D觸發器的邏輯符號…………………………… 76
4.6.2 帶有復位端的同步D觸發器的Verilog-HDL描述………………… 77
4.6.3 帶有復位端的同步D觸發器的邏輯仿真結果……………………… 78
4.7 同步JK觸發器……………………………………………………………… 79
4.7.1 同步JK觸發器的邏輯符號…………………………………………… 79
4.7.2 同步JK觸發器的Verilog-HDL描述……………………………… 80
4.7.3 同步JK觸發器的邏輯仿真結果……………………………………… 82
第5章 時序邏輯電路……………………………………………………………… 83
5.1 暫存器………………………………………………………………………… 83
5.1.1 暫存器的組成原理……………………………………………………… 83
5.1.2 暫存器的Verilog-HDL描述………………………………………… 85
5.1.3 暫存器的邏輯仿真結果………………………………………………… 86
5.2 移位暫存器…………………………………………………………………… 86
5.2.1 串列輸入/並行輸出移位暫存器的組成原理………………………… 86
5.2.2 並行輸入/串列輸出移位暫存器的組成原理………………………… 87
5.2.3 移位暫存器的Verilog-HDL描述…………………………………… 89
5.2.4 移位暫存器的邏輯仿真結果…………………………………………… 91
5.3 計數器………………………………………………………………………… 92
5.3.1 二進制非同步計數器…………………………………………………… 92
5.3.2 四進制非同步計數器…………………………………………………… 93
5.3.3 下降沿觸髮型計數器及2N 進制非同步計數器的組成原理………… 94
5.3.4 非同步計數器的Verilog-HDL描述………………………………… 96
5.3.5 多層次結構的Verilog-HDL設計…………………………………… 98
5.3.6 非同步計數器的邏輯仿真結果………………………………………… 99
5.3.7 四進制同步計數器…………………………………………………… 100
5.3.8 四進制同步計數器的Verilog-HDL描述…………………………… 100
5.3.9 任意進制同步計數器的Verilog-HDL描述………………………… 101
5.3.10 同步計數器的邏輯仿真結果………………………………………… 103
第6章 硬體開發應具備的條件…………………………………………………… 105
6.1 貼片元件的手工焊接……………………………………………………… 105
6.1.1 什麼是貼片元件? …………………………………………………… 105
6.1.2 為什麼要採用貼片元件? …………………………………………… 108
6.1.3 如何進行貼片元件的手工焊接? …………………………………… 108
6.2 一些常用貼片元件的封裝………………………………………………… 112
6.2.1 貼片電阻……………………………………………………………… 112
6.2.2 貼片電容……………………………………………………………… 113
6.2.3 貼片三極體…………………………………………………………… 115
6.2.4 貼片集成電阻………………………………………………………… 118
6.2.5 貼片積體電路………………………………………………………… 118
6.3 硬體開發應具備的工具和材料…………………………………………… 122
6.3.1 必備的工具和材料…………………………………………………… 122
6.3.2 更方便工作的工具和材料…………………………………………… 126
6.4 硬體開發應具備的儀器儀表……………………………………………… 131
6.4.1 必備的儀器儀表……………………………………………………… 131
6.4.2 更方便工作的儀器儀表……………………………………………… 132
6.5 硬體開發應具備的基本常識……………………………………………… 134
6.5.1 常用電路符號的表示方法…………………………………………… 134
6.5.2 電子電路的基本單位………………………………………………… 135
6.5.3 邏輯門的正確描述法………………………………………………… 136
6.5.4 其他知識……………………………………………………………… 137
第7章 數字電路系統的實用設計………………………………………………… 139
7.1 簡單的可程式單脈衝發生器……………………………………………… 139
7.1.1 由系統功能描述時序關係…………………………………………… 139
7.1.2 流程圖的設計………………………………………………………… 140
7.1.3 系統功能描述………………………………………………………… 140
7.1.4 邏輯框圖……………………………………………………………… 141
7.1.5 延時模組的詳細描述及仿真………………………………………… 142
7.1.6 功能模組Verilog-HDL描述的模組化方法………………………… 146
7.1.7 輸入檢測模組的詳細描述及仿真…………………………………… 147
7.1.8 計數模組的詳細描述………………………………………………… 151
7.1.9 可程式單脈衝發生器的系統仿真…………………………………… 151
7.1.10 電路設計中常用的幾個有關名詞…………………………………… 156
7.2 脈衝計數…………………………………………………………………… 162
7.2.1 脈衝計數器的設計…………………………………………………… 162
7.2.2 parameter的使用方法……………………………………………… 165
7.2.3 repeat循環語句的使用方法………………………………………… 165
7.2.4 系統函式$random 的使用方法……………………………………… 165
7.2.5 特定脈衝序列的發生………………………………………………… 166
7.3 脈衝頻率的測量…………………………………………………………… 171
7.3.1 脈衝頻率測量的原理………………………………………………… 172
7.3.2 頻率測量模組的設計………………………………………………… 172
7.3.3 while循環語句的使用方法………………………………………… 178
7.4 脈衝周期的測量…………………………………………………………… 178
7.4.1 脈衝周期測量的原理………………………………………………… 179
7.4.2 周期測量模組的設計(一)…………………………………………… 179
7.4.3 forever循環語句的使用方法………………………………………… 185
7.4.4 disable禁止語句的使用方法………………………………………… 185
7.4.5 周期測量模組的設計(二)…………………………………………… 186
7.4.6 兩種周期測量模組設計的對比……………………………………… 191
7.5 脈衝高電平和低電平持續時間的測量…………………………………… 192
7.5.1 脈衝高電平和低電平持續時間測量的工作原理…………………… 192
7.5.2 高低電平持續時間測量模組的設計………………………………… 192
7.5.3 改進型高低電平持續時間測量模組的設計………………………… 201
7.5.4 begin聲明語句的使用方法………………………………………… 208
7.5.5 initial語句和always語句的使用方法……………………………… 209
第8章 實用設計與工程製作……………………………………………………… 211