EDA技術與Verilog HDL設計

EDA技術與Verilog HDL設計

本書根據電子類課程課堂教學和實驗的要求,以提高學生的動手實踐能力和工程設計能力為目的,對EDA技術和FPGA設計的相關知識進行系統和完整的介紹。 本書內容新穎,技術先進,由淺入深,既有關於EDA技術、FPGA器件和Verilog硬體描述語言的系統介紹,又有豐富的設計實例。本書配套多媒體電子課件、實驗與設計和程式代碼。

圖書內容

本書根據電子類課程課堂教學和實驗的要求,以提高學生的動手實踐能力和工程設計能力為目的,對EDA技術和FPGA設計的相關知識進行系統和完整的介紹。

本書內容新穎,技術先進,由淺入深,既有關於EDA技術、FPGA器件和Verilog硬體描述語言的系統介紹,又有豐富的設計實例。本書配套多媒體電子課件、實驗與設計和程式代碼。

目 錄

第1章 EDA技術概述 1

1.1 EDA技術及其發展歷程 1

1.2 EDA技術的特徵和優勢 3

1.2.1 EDA技術的特徵 3

1.2.2 EDA技術的優勢 5

1.3 EDA設計的目標和流程 7

1.3.1 EDA設計的目標 7

1.3.2 EDA設計的流程 8

1.3.3 數字積體電路的設計 8

1.3.4 模擬積體電路的設計 10

1.4 EDA技術與ASIC設計 10

1.4.1 ASIC的特點與分類 10

1.4.2 ASIC的設計方法 11

1.4.3 SoC設計 13

1.5 硬體描述語言 16

1.5.1 VHDL 16

1.5.2 Verilog HDL 17

1.5.3 ABEL-HDL 18

1.5.4 Verilog HDL和VHDL的比較 18

1.6 EDA設計工具 19

1.6.1 EDA設計工具分類 19

1.6.2 EDA公司及其工具介紹 21

1.7 EDA技術的發展趨勢 23

習題1 25

第2章 可程式邏輯器件基礎 26

2.1 概述 26

2.1.1 可程式邏輯器件的發展歷程 26

2.1.2 可程式邏輯器件的分類 27

2.1.3 可程式邏輯器件的優勢 29

2.1.4 可程式邏輯器件的發展趨勢 30

2.2 PLD器件的基本結構 31

2.2.1 基本結構 31

2.2.2 電路符號 32

2.2.3 PROM 34

2.2.4 PLA 35

2.2.5 PAL 36

2.2.6 GAL 36

2.3 CPLD/FPGA器件概述 38

2.3.1 Lattice的CPLD/FPGA 38

2.3.2 Xilinx的CPLD/FPGA 39

2.3.3 Altera的CPLD/FPGA 40

2.3.4 CPLD和FPGA的異同 42

2.4 可程式邏輯器件的基本資源 43

2.4.1 功能單元 43

2.4.2 I/O引腳 44

2.4.3 布線資源 44

2.4.4 片內RAM 45

2.5 可程式邏輯器件的編程元件 46

2.5.1 熔絲型開關 47

2.5.2 反熔絲型開關 47

2.5.3 浮柵編程元件 48

2.5.4 基於SRAM的編程元件 50

2.6 可程式邏輯器件的設計與開發 51

2.6.1 CPLD/FPGA設計流程 51

2.6.2 CPLD/FPGA開發工具 53

2.6.3 CPLD/FPGA的套用選擇 55

2.7 可程式邏輯器件的測試技術 57

2.7.1 邊界掃描測試原理 58

2.7.2 IEEE1149.1標準 58

2.7.3 邊界掃描策略及相關工具 62

習題2 62

第3章 典型FPGA/CPLD的結構與配置 63

3.1 Stratix高端FPGA系列 63

3.1.1 Stratix器件 63

3.1.2 Stratix Ⅱ器件 65

3.2 Cyclone低成本FPGA系列 68

3.2.1 Cyclone器件 68

3.2.2 Cyclone Ⅱ器件 73

3.3 典型CPLD器件 79

3.3.1 MAX Ⅱ器件 79

3.3.2 MAX 7000器件 80

3.4 FPGA/CPLD的配置 82

3.4.1 CPLD器件的配置 83

3.4.2 FPGA器件的配置 83

習題3 88

第4章 Quartus Ⅱ集成開發工具 89

4.1 Quartus Ⅱ原理圖設計 89

4.1.1 半加器原理圖設計輸入 89

4.1.2 編譯與仿真 92

4.1.3 1位全加器編譯與仿真 96

4.2 Quartus Ⅱ的最佳化設定 97

4.2.1 分析與綜合設定 97

4.2.2 最佳化布局布線 99

4.2.3 設計可靠性檢查 104

4.3 Quartus Ⅱ的時序分析 105

4.3.1 時序設定與分析 105

4.3.2 時序逼近 106

4.4 基於宏功能模組的設計 108

4.4.1 Megafunctions庫 108

4.4.2 Maxplus2庫 113

4.4.3 Primitives庫 114

習題4 115

實驗與設計 117

第5章 Verilog HDL語法與要素 132

5.1 Verilog HDL簡介 132

5.2 Verilog HDL模組的結構 133

5.3 Verilog HDL語言要素 136

5.4 常量 138

5.4.1 整數 138

5.4.2 實數 139

5.4.3 字元串 140

5.5 數據類型 141

5.5.1 net型 141

5.5.2 variable型 142

5.6 參數 144

5.7 向量 145

5.8 運算符 147

習題5 152

實驗與設計 152

第6章 Verilog HDL行為語句 157

6.1 過程語句 157

6.1.1 always過程語句 158

6.1.2 initial過程語句 161

6.2 塊語句 162

6.2.1 串列塊begin-end 162

6.2.2 並行塊fork-join 163

6.3 賦值語句 163

6.3.1 持續賦值與過程賦值 163

6.3.2 阻塞賦值與非阻塞賦值 165

6.4 條件語句 166

6.4.1 if-else語句 166

6.4.2 case語句 168

6.5 循環語句 172

6.5.1 for語句 172

6.5.2 repeat、while、forever語句 173

6.6 編譯指示語句 175

6.7 任務與函式 177

6.7.1 任務 177

6.7.2 函式 178

6.8 順序執行與並發執行 181

習題6 182

實驗與設計 183

第7章 Verilog HDL設計的層次與風格 188

7.1 Verilog HDL設計的層次 188

7.2 門級結構描述 188

7.2.1 Verilog HDL內置門元件 189

7.2.2 門級結構描述 191

7.3 行為描述 192

7.4 數據流描述 193

7.5 不同描述風格的設計 194

7.5.1 半加器設計 194

7.5.2 1位全加器設計 195

7.5.3 4位加法器設計 197

7.6 多層次結構電路的設計 197

7.7 基本組合電路設計 200

7.7.1 編解碼器 200

7.7.2 其他組合電路 202

7.8 基本時序電路設計 202

7.8.1 觸發器 202

7.8.2 鎖存器與暫存器 203

7.8.3 計數器與串/並轉換器 205

7.8.4 簡易微處理器 205

7.9 三態邏輯設計 207

習題7 209

實驗與設計 209

第8章 Verilog HDL設計進階 214

8.1 小數分頻 214

8.2 Verilog HDL有限狀態機設計 216

8.2.1 有限狀態機的Verilog HDL

描述 217

8.2.2 狀態編碼 222

8.2.3 狀態編碼的定義 223

8.3 字元液晶顯示控制 225

8.3.1 字元液晶H1602B 225

8.3.2 用狀態機實現字元顯示控制 228

8.4 VGA圖像的顯示與控制 231

8.4.1 VGA圖像顯示原理與時序 231

8.4.2 VGA圖像顯示與控制的實現 235

8.5 點陣式液晶顯示控制 240

8.6 樂曲演奏電路 245

習題8 250

實驗與設計 252

第9章 Verilog HDL仿真與測試 270

9.1 系統任務與系統函式 270

9.2 用戶自定義元件 274

9.2.1 組合電路UDP元件 275

9.2.2 時序邏輯UDP元件 276

9.3 延時模型的表示 278

9.3.1 時間標尺定義'timescale 278

9.3.2 延時的表示與延時說明塊 279

9.4 測試平台 280

9.5 組合電路和時序電路的仿真 283

9.5.1 組合電路的仿真 283

9.5.2 時序電路的仿真 285

習題9 285

實驗與設計 286

第10章 Verilog HDL數字設計實例 292

10.1 加法器的Verilog HDL設計實例 292

10.1.1 全加器的設計 292

10.1.2 行波加法器的設計 293

10.1.3 超前進位加法器的設計 294

10.1.4 流水線技術在加法器設計中的

套用 296

10.2 乘法器的Verilog HDL設計實例 299

10.2.1 移位相加乘法器設計原理 299

10.2.2 移位相加乘法器的Verilog HDL

實現 300

10.2.3 布斯乘法器設計原理 301

10.2.4 布斯乘法器的Verilog HDL

實現 303

10.3 漢明編解碼器的Verilog HDL設計

實例 304

10.3.1 漢明編碼原理 304

10.3.2 漢明編碼的解碼原理 306

10.3.3 漢明編解碼的Verilog HDL

實現 307

10.4 ST-BUS匯流排接口設計 308

10.4.1 ST-BUS匯流排時序關係 308

10.4.2 ST-BUS匯流排接口實例 310

習題10 313

實驗與設計 313

第11章 Verilog HDL數字通信常用模組

設計實例 324

11.1 信號音發生器的Verilog HDL設計

實例 324

11.1.1 線性碼、A律碼轉換原理 324

11.1.2 信號音發生器Verilog HDL

實例 327

11.2 比特同步的Verilog HDL設計

實例 331

11.2.1 鎖相功能的自同步法原理 331

11.2.2 鎖相比特同步的EDA實現

方法 333

11.3 基帶差分編碼的Verilog HDL設計

實例 337

11.3.1 PSK調製和差分編碼原理 337

11.3.2 PSK差分編碼設計 340

11.4 GMSK調製電路的Verilog HDL設計

實例 343

11.4.1 GMSK調製基本原理 343

11.4.2 GMSK調製實現的基本方法 345

11.4.3 GMSK基帶調製實現的

Verilog HDL實例 346

習題11 353

實驗與設計 353

附錄A Verilog HDL(IEEE Std 1364-1995)

關鍵字 360

附錄B Verilog HDL(IEEE Std 1364-2001)

關鍵字 361

參考文獻 362

相關詞條

相關搜尋

熱門詞條

聯絡我們