編輯推薦
全書結構和內容做瞭優化,增加瞭試驗與設計的環節,便於實踐教學;重視基礎,麵嚮應用,緊密聯係實際;闡述力求準確、簡約,避免煩瑣,以做到深入淺齣;所有舉例均經過綜閤工具或仿真工具的驗證。本書與《數字係統設計與VHDL》(電子工業齣版社,2010年5月)一書構成姊妹篇。
內容簡介
本書根據EDA 課程教學要求,以提高數字設計能力為目的,係統闡述FPGA 數字係統開發的相關知識,主要內容包括EDA 技術概述、FPGA/CPLD 器件、Verilog 硬件描述語言等。全書以Quartus Ⅱ、Synplify Pro軟件為平颱,以Verilog―1995 和Verilog―2001 語言標準為依據,以可綜閤的設計為重點,通過大量經過驗證的數字設計實例,闡述數字係統設計的方法與技術,由淺入深地介紹Verilog 工程開發的知識與技能。
作者簡介
解放軍理工大學教授,在高校從事多年的通信類本科生和研究生的教學工作,以及相關的科研工作,著有教材多部。
目錄
第1章 EDA技術概述 1
1.1 EDA技術及其發展 1
1.2 Top-down設計與IP核復用 4
1.2.1 Top-down設計 4
1.2.2 Bottom-up設計 5
1.2.3 IP復用技術與SoC 5
1.3 數字設計的流程 7
1.3.1 設計輸入 7
1.3.2 綜閤 9
1.3.3 布局布綫 9
1.3.4 仿真 10
1.3.5 編程配置 10
1.4 常用的EDA軟件工具 10
1.5 EDA技術的發展趨勢 14
習題1 15
第2章 FPGA/CPLD器件 16
2.1 PLD器件概述 16
2.1.1 PLD器件的發展曆程 16
2.1.2 PLD器件的分類 17
2.2 PLD的基本原理與結構 19
2.2.1 PLD器件的基本結構 19
2.2.2 PLD電路的錶示方法 20
2.3 低密度PLD的原理與結構 21
2.4 CPLD的原理與結構 26
2.4.1 宏單元結構 26
2.4.2 典型CPLD的結構 27
2.5 FPGA的原理與結構 30
2.5.1 查找錶結構 30
2.5.2 典型FPGA的結構 32
2.6 FPGA/CPLD的編程元件 37
2.7 邊界掃描測試技術 41
2.8 FPGA/CPLD的編程與配置 43
2.8.1 在係統可編程 43
2.8.2 CPLD器件的編程 44
2.8.3 FPGA器件的配置 44
2.9 FPGA/CPLD器件概述 50
2.10 FPGA/CPLD的發展趨勢 54
習題2 55
第3章 Quartus Ⅱ集成開發工具 56
3.1 Quartus Ⅱ原理圖設計 56
3.1.1 半加器原理圖設計輸入 56
3.1.2 編譯與仿真 60
3.1.3 1位全加器編譯與仿真 64
3.2 Quartus Ⅱ的優化設置 65
3.2.1 分析與綜閤設置 65
3.2.2 優化布局布綫 67
3.2.3 設計可靠性檢查 72
3.3 Quartus Ⅱ的時序分析 73
3.3.1 時序設置與分析 73
3.3.2 時序逼近 75
3.4 基於宏功能模塊的設計 77
3.4.1 Megafunctions庫 77
3.4.2 Maxplus2庫 82
3.4.3 Primitives庫 83
習題3 85
實驗與設計 87
3-1 簡易數字鍾 87
3-2 序列産生器 88
3-3 m序列發生器 89
3-4 8位帶符號乘法器 89
3-5 模24方嚮可控計數器 92
3-6 用鎖相環模塊實現倍頻和分頻 94
第4章 Verilog設計初步 97
4.1 Verilog簡介 97
4.2 Verilog模塊的結構 98
4.3 Verilog基本組閤電路設計 102
4.3.1 用Verilog設計基本組閤電路 102
4.3.2 用Verilog設計加法器 102
4.4 Verilog基本時序電路設計 105
4.4.1 用Verilog設計觸發器 105
4.4.2 用Verilog設計計數器 106
習題4 108
實驗與設計 108
4-1 Synplify Pro綜閤器的使用方法 108
4-2 Synplify綜閤器的使用方法 112
第5章 Verilog語法與要素 114
5.1 Verilog語言要素 114
5.2 常量 115
5.2.1 整數(Integer) 115
5.2.2 實數(Real) 117
5.2.3 字符串(Strings) 117
5.3 數據類型 118
5.3.1 net型 118
5.3.2 variable型 119
5.4 參數 121
5.5 嚮量 123
5.6 運算符 125
習題5 129
實驗與設計 130
5-1 RAM存儲器設計 130
5-2 用rom模塊實現4×4無符號數乘法器 132
第6章 Verilog行為語句 136
6.1 過程語句 136
6.1.1 always過程語句 137
6.1.2 initial過程語句 140
6.2 塊語句 141
6.2.1 串行塊begin-end 141
6.2.2 並行塊fork-join 142
6.3 賦值語句 143
6.3.1 持續賦值與過程賦值 143
6.3.2 阻塞賦值與非阻塞賦值 144
6.4 條件語句 145
6.4.1 if-else語句 146
6.4.2 case語句 147
6.5 循環語句 151
6.5.1 for語句 152
6.5.2 repeat、while、forever語句 153
6.6 編譯指示語句 155
6.7 任務與函數 156
6.7.1 任務(task) 156
6.7.2 函數(function) 158
6.8 順序執行與並發執行 161
習題6 162
實驗與設計 163
6-1 4×4矩陣鍵盤檢測電路 163
6-2 計數器設計 164
第7章 Verilog設計的層次與風格 167
7.1 Verilog設計的層次 167
7.2 門級結構描述 167
7.2.1 Verilog HDL內置門元件 168
7.2.2 門級結構描述 170
7.3 行為描述 171
7.4 數據流描述 172
7.5 不同描述風格的設計 173
7.5.1 半加器設計 173
7.5.2 1位全加器設計 174
7.5.3 4位加法器設計 176
7.6 多層次結構電路的設計 177
7.7 基本組閤電路設計 179
7.7.1 門電路 179
7.7.2 編譯碼器 179
7.7.3 其他組閤電路 181
7.8 基本時序電路設計 182
7.8.1 觸發器 182
7.8.2 鎖存器與寄存器 182
7.8.3 計數器與串並轉換器 184
7.8.4 簡易微處理器 185
7.9 三態邏輯設計 187
習題7 189
實驗與設計 189
7-1 數字錶決器 189
7-2 FIFO緩存器設計 192
第8章 Verilog有限狀態機設計 195
8.1 有限狀態機 195
8.2 有限狀態機的Verilog描述 197
8.2.1 用三個過程描述 198
8.2.2 用兩個過程描述 199
8.2.3 單過程描述方式 201
8.3 狀態編碼 203
8.3.1 常用的編碼方式 203
8.3.2 狀態編碼的定義 207
8.4 有限狀態機設計要點 209
8.4.1 復位和起始狀態的選擇 209
8.4.2 多餘狀態的處理 209
習題8 211
實驗與設計 211
8-1 流水燈控製器 211
8-2 汽車尾燈控製器 213
8-3 狀態機A/D采樣控製電路 214
8-4 用狀態機實現字符液晶顯示控製 215
第9章 Verilog設計進階 222
9.1 加法器設計 222
9.1.1 級連加法器 222
9.1.2 數據流描述的加法器 223
9.1.3 超前進位加法器 224
9.1.4 流水綫加法器 225
9.2 乘法器設計 226
9.2.1 並行乘法器 226
9.2.2 移位相加乘法器 228
9.2.3 布斯乘法器 231
9.2.4 查找錶乘法器 233
9.3 奇數分頻與小數分頻 234
9.3.1 奇數分頻 234
9.3.2 半整數分頻與小數分頻 235
9.4 VGA圖像的顯示與控製 237
9.4.1 DE2―70的VGA顯示電路 237
9.4.2 VGA圖像顯示原理與時序 238
9.4.3 VGA圖像顯示與控製的實現 241
9.5 點陣式液晶顯示控製 247
9.6 樂麯演奏電路 252
習題9 257
實驗與設計 259
9-1 數字跑錶 259
9-2 實用多功能數字鍾 266
第10章 Verilog設計的優化 275
10.1 設計的可綜閤性 275
10.2 流水綫設計技術 277
10.3 資源共享 281
10.4 過程 283
10.5 阻塞賦值與非阻塞賦值 285
習題10 289
實驗與設計 289
10-1 小數分頻 289
10-2 如何在FPGA設計中消除毛刺 291
10-3 消抖動電路 294
第11章 Verilog仿真與測試 295
11.1 係統任務與係統函數 295
11.2 用戶自定義元件 299
11.2.1 組閤電路UDP元件 300
11.2.2 時序邏輯UDP元件 301
11.3 延時模型的錶示 303
11.3.1 時間標尺定義`timescale 303
11.3.2 延時的錶示與延時說明塊 304
11.4 測試平颱 305
11.5 組閤和時序電路的仿真 308
11.5.1 組閤電路的仿真 308
11.5.2 時序電路的仿真 310
習題11 310
實驗與設計 311
11-1 用ModelSim仿真8位二進製加法器 311
11-2 仿真乘纍加器 316
第12章 Verilog語言的發展 318
12.1 Verilog―2001語法結構 318
12.1.1 語法結構的擴展與增強 318
12.1.2 設計管理 324
12.1.3 係統任務和係統函數的擴展 326
12.1.4 VCD文件的擴展 329
12.2 Verilog―2002語法結構 330
12.2.1 硬件單元建模 331
12.2.2 屬性 334
12.2.3 編程語言接口 338
習題12 339
第13章 通信與信號處理設計實例 340
13.1 m序列發生器 340
13.1.1 m序列的原理與性質 340
13.1.2 m序列産生器設計 342
13.2 Gold碼 344
13.2.1 Gold碼的原理與性質 344
13.2.2 Gold碼産生器設計 345
13.3 CRC校驗碼 347
13.4 FSK解調 349
13.5 數字過零檢測與等精度頻率測量 352
13.5.1 數字過零檢測法 352
13.5.2 等精度頻率測量 353
13.6 QPSK調製器的FPGA實現 356
13.7 FIR數字濾波器 359
13.8 FPGA信號處理基礎及浮點計算實例 363
13.8.1 定點數的錶示法 363
13.8.2 浮點數的錶示法 364
13.8.3 定點數到浮點數的格式轉換 366
13.8.4 浮點數乘法 368
13.8.5 浮點數加法 371
13.8.6 浮點數除法 374
習題13 376
實驗與設計 376
13-1 信號音産生器 376
13-2 異步串行接口(UART) 383
附錄A Verilog HDL(IEEE Std 1364―1995)關鍵字 389
附錄B Verilog HDL(IEEE Std 1364―2001)關鍵字 390
附錄C DE2係統介紹 391
附錄D DE2―70係統介紹 393
附錄E 有關術語與縮略語 395
參考文獻 400
前言/序言
數字係統設計與Verilog HDL(第5版) 下載 mobi epub pdf txt 電子書