Verilog HDL與數字系統設計簡明教程

本書分3部分,第1部分(第1~6章)是語法部分,詳細講解Verilog HDL語法知識和基本套用;第2部分(第7~9章)是實例部分,通過從已公布的成熟原始碼中精選的50多個最具代表性的建模實例,輔以框圖和詳細注釋幫助讀者理解程式,從而學習典型電路單元的建模方法;第3部分(第10章)是系統設計實戰,為初學者展示了一個小型系統的詳細設計流程。 本書內容豐富、實用性強,適合高等院校相關專業高年級學生和研究生學習和閱讀,對參加相關工作的工程技術人員也有很強的參考價值。

目錄
第1章 初識Verilog HDL 1
1.1 什麼是Verilog HDL 1
1.2 主要功能 1
1.3 設計流程 2
1.4 基本結構 2
1.4.1 模組的概念 3
1.4.2 模組調用 4
1.4.3 測試模組 5
1.5 程式設計基礎 6
1.5.1 程式格式 7
1.5.2 注釋語句 7
1.5.3 標識符和關鍵字 8
1.5.4 參數聲明 8
1.5.5 預處理指令 8
第2章 數據類型與表達式 12
2.1 數據類型 12
2.1.1 常量 12
2.1.2 變數 14
2.2 表達式 21
2.2.1 運算元 21
2.2.2 操作符 24
第3章 行為建模方法 32
3.1 數據流行為建模 32
3.1.1 連續賦值語句 32
3.1.2 線網聲明賦值 33
3.1.3 時延的概念 34
3.1.4 線網時延 35
3.1.5 用數據流建模方式實現1位全加器 36
3.2 順序行為建模 36
3.2.1 過程結構語句 36
3.2.2 時序控制 42
3.2.3 語句塊 45
3.2.4 過程性賦值 48
3.2.5 if語句 55
3.2.6 case語句 58
3.2.7 循環語句 60
3.2.8 握手協定實例 63
第4章 結構建模方法 65
4.1 Verilog HDL內置基元 66
4.1.1 內置基本門 66
4.1.2 上拉、下拉電阻 70
4.1.3 MOS開關 71
4.1.4 雙向開關 73
4.1.5 給基元定義時延 74
4.1.6 描述實例數組 74
4.1.7 內置基元建模實例 74
4.2 用戶定義基元 76
4.2.1 UDP的定義 76
4.2.2 組合電路UDP 77
4.2.3 時序電路UDP 78
4.2.4 Verilog HDL速記符號 80
4.2.5 電平觸發和邊沿觸發混合的UDP 81
4.3 模組實例化 83
4.3.1 連線埠關聯方式 83
4.3.2 懸空連線埠 85
4.3.3 連線埠匹配 85
4.3.4 模組參數值 86
4.3.5 建模實例 88
4.4 行為描述和結構描述的混合使用 90
第5章 任務、函式及其他 91
5.1 任務 91
5.1.1 任務定義 91
5.1.2 任務調用 92
5.2 函式 94
5.2.1 函式定義 94
5.2.2 函式調用 95
5.3 系統任務和函式 96
5.3.1 顯示任務 96
5.3.2 檔案輸入/輸出任務 99
5.3.3 時間標度任務 101
5.3.4 仿真控制任務 102
5.3.5 時序驗證任務 102
5.3.6 仿真時間函式 102
5.3.7 實數變換函式 103
5.3.8 隨機函式 103
5.4 其他重要概念 104
5.4.1 禁止語句 104
5.4.2 命名事件 105
5.4.3 層次路徑名 107
5.4.4 共享任務和函式 109
5.4.5 VCD檔案 111
5.4.6 指定塊 117
5.4.7 強度 117
第6章 編寫測試程式 120
6.1 測試模組 120
6.2 產生輸入信號 121
6.2.1 特定值序列 121
6.2.2 重複模式 123
6.3 從文本檔案中讀取向量 127
6.4 向文本檔案中寫入向量 129
6.5 測試程式實例 130
6.5.1 半加器 130
6.5.2 5位計數器 131
6.5.3 2選1選擇器 133
6.5.4 2-4解碼器 134
6.5.5 D觸發器 135
第7章 初級建模實例 138
7.1 觸發器 138
7.1.1 上升沿觸發器 138
7.1.2 帶異步復位端的上升沿觸發器 139
7.1.3 帶異步置位端的上升沿觸發器 140
7.1.4 帶異步復位端和異步置位端的上升沿觸發器 140
7.1.5 帶同步復位端的上升沿觸發器 141
7.1.6 帶同步置位端的上升沿觸發器 142
7.1.7 帶異步復位端和輸出使能端的上升沿觸發器 142
7.2 鎖存器 143
7.2.1 帶使能端的鎖存器 143
7.2.2 可異步選通數據的鎖存器 143
7.2.3 可選通使能端的鎖存器 144
7.2.4 帶異步復位端的鎖存器 145
7.3 編碼器 145
7.4 解碼器 146
7.5 多路數據選擇器 147
7.5.1 用if-else構造的4選1選擇器 147
7.5.2 用case構造的4選1選擇器 148
7.5.3 用case構造的12選1選擇器 149
7.5.4 帶忽略位的多路選擇器 150
7.6 計數器 151
7.6.1 帶計數使能端和異步復位端的8位計數器 151
7.6.2 可設定計數輸出並帶異步復位端的8位計數器 152
7.6.3 可設定計數輸出並帶使能端、進位端和復位端的8位計數器 153
7.7 輸入輸出緩衝器 154
7.7.1 三態緩衝器 154
7.7.2 雙向緩衝器 155
7.8 加法器 156
7.8.1 半加器 156
7.8.2 全加器 157
7.8.3 串列進位加法器 159
7.8.4 超前進位加法器 160
7.9 移位暫存器 165
7.10 頻率轉換器 166
7.11 模數轉換器 169
第8章 高級建模實例 172
8.1 狀態機建模 172
8.1.1 乘法器狀態機 172
8.1.2 互動狀態機 174
8.1.3 Moore型有限狀態機 178
8.1.4 Mealy型有限狀態機 180
8.2 序列檢測器 182
8.3 FIFO(先入先出電路) 185
8.3.1 16×16FIFO 185
8.3.2 4×16FIFO 187
8.4 UART(通用異步收發器) 196
第9章 程式綜合實例 208
9.1 可綜合設計 208
9.1.1 綜合的概念 208
9.1.2 可綜合 209
9.1.3 可綜合及不可綜合的結構 209
9.2 綜合實例 210
9.2.1 組合邏輯電路 210
9.2.2 時序邏輯電路 211
9.2.3 存儲器 224
9.2.4 布爾方程 225
9.2.5 有限狀態機 226
9.2.6 通用移位暫存器 232
9.2.7 算術邏輯單元(ALU) 233
9.2.8 二進制計數器 236
9.2.9 加法器 237
9.2.10 數值比較器 237
9.2.11 解碼器 238
9.2.12 三態門 240
9.2.13 序列檢測器 241
第10章 系統設計實戰 244
10.1 系統功能分析 244
10.1.1 計算機的基本結構 245
10.1.2 典型微處理器系統結構及工作原理 245
10.1.3 普通計算器的基本結構 247
10.2 系統設計規劃 247
10.2.1 系統功能模組劃分 247
10.2.2 鍵盤輸入模組 249
10.2.3 暫存器組 251
10.2.4 算術邏輯單元 252
10.2.5 顯示部分 255
10.2.6 系統結構 257
10.3 程式設計與仿真 258
10.3.1 鍵盤輸入模組程式與仿真 258
10.3.2 ALU模組程式與仿真 263
10.3.3 顯示部分程式與仿真 283
10.3.4 頂層模組程式設計 292
10.4 邏輯綜合 292

相關詞條

熱門詞條

聯絡我們