EDA技術與VHDL設計(第2版)

EDA技術與VHDL設計(第2版)

本書根據電子信息類課程教學和實驗要求,以提高學生的實踐動手能力和工程設計能力為目的,對EDA技術和VHDL設計的相關知識進行系統和完整的介紹。全書共10章,主要內容包括:EDA技術概述、可程式邏輯器件基礎、典型FPGA/CPLD的結構與配置、原理圖與宏功能模組設計、VHDL設計輸入方式、VHDL結構與要素、VHDL基本語句與基本設計、VHDL設計進階、數字接口實例及分析、通信算法實例及分析等。

圖書內容

本書根據電子信息類課程教學和實驗要求,以提高學生的實踐動手能力和工程設計能力為目的,對EDA技術和VHDL設計的相關知識進行系統和完整的介紹。全書共10章,主要內容包括:EDA技術概述、可程式邏輯器件基礎、典型FPGA/CPLD的結構與配置、原理圖與宏功能模組設計、VHDL設計輸入方式、VHDL結構與要素、VHDL基本語句與基本設計、VHDL設計進階、數字接口實例及分析、通信算法實例及分析等。

本書內容新穎,技術先進,由淺入深,既有關於EDA技術、大規模可程式邏輯器件和VHDL硬體描述語言的系統介紹,又有豐富的設計套用實例。本書提供配套電子課件、程式代碼和習題參考答案。

目 錄

第1章 EDA技術概述 1

1.1 EDA技術及其發展歷程 1

1.2 EDA技術的特徵和優勢 3

1.2.1 EDA技術的基本特徵 4

1.2.2 EDA技術的優勢 6

1.3 EDA設計的目標和流程 7

1.3.1 EDA技術的實現目標 8

1.3.2 EDA設計流程 8

1.3.3 數字積體電路的設計 9

1.3.4 模擬積體電路的設計 10

1.4 EDA技術與ASIC設計 11

1.4.1 ASIC的特點與分類 11

1.4.2 ASIC的設計方法 12

1.4.3 SoC設計 15

1.5 硬體描述語言 18

1.5.1 VHDL 18

1.5.2 Verilog HDL 19

1.5.3 AHDL 19

1.5.4 Verilog HDL和VHDL的比較 20

1.6 EDA設計工具 20

1.6.1 EDA設計工具分類 21

1.6.2 EDA公司與工具介紹 22

習題1 25

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

2.1 概述 26

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

2.1.2 可程式邏輯器件分類 27

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

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

2.2 PLD器件的基本結構 32

2.2.1 基本結構 32

2.2.2 電路符號 33

2.2.3 PROM 34

2.2.4 PLA 35

2.2.5 PAL 36

2.2.6 GAL 37

2.3 CPLD/FPGA的結構特點 39

2.3.1 Lattice公司的CPLD/FPGA 39

2.3.2 Xilinx公司的CPLD/FPGA 41

2.3.3 Altera和Actel公司的CPLD/FPGA 44

2.3.4 CPLD和FPGA的異同 45

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

2.4.1 功能單元 46

2.4.2 輸入-輸出焊盤 46

2.4.3 布線資源 47

2.4.4 片內RAM 49

2.5 可程式邏輯器件的編程工藝 50

2.5.1 熔絲型開關 50

2.5.2 反熔絲型開關 51

2.5.3 浮柵編程器件 51

2.5.4 基於SRAM的編程器件 54

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

2.6.1 CPLD/FPGA設計流程 54

2.6.2 CPLD/FPGA開發工具 57

2.6.3 CPLD/FPGA的套用選擇 59

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

2.7.1 邊界掃描測試原理 62

2.7.2 IEEE 1149.1標準 62

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

習題2 66

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

3.1 Stratix高端FPGA系列 68

3.1.1 Stratix器件 68

3.1.2 Stratix II器件 71

3.2 Cyclone低成本FPGA系列 74

3.2.1 Cyclone器件 74

3.2.2 Cyclone II器件 78

3.3 典型CPLD器件 84

3.3.1 MAX II器件 84

3.3.2 MAX 7000器件 85

3.4 FPGA/CPLD的配置 87

3.4.1 CPLD器件的配置 88

3.4.2 FPGA器件的配置 89

習題3 93

第4章 原理圖與宏功能模組設計 94

4.1 Quartus II原理圖設計 94

4.1.1 半加器原理圖輸入 94

4.1.2 半加器編譯 97

4.1.3 半加器仿真 99

4.1.4 全加器設計與仿真 101

4.2 Quartus II的最佳化設定 102

4.2.1 Settings設定 102

4.2.2 分析與綜合設定 104

4.2.3 最佳化布局布線 104

4.2.4 使用設計助手檢查設計可靠性 110

4.3 Quartus II的時序分析 112

4.3.1 時序設定與分析 112

4.3.2 時序逼近 115

4.4 宏功能模組設計 117

4.4.1 Megafunctions庫 117

4.4.2 Maxplus2庫 126

4.4.3 Primitives庫 127

習題4 129

第5章 VHDL設計輸入方式 132

5.1 Quartus II的VHDL輸入設計 132

5.1.1 創建工程檔案 133

5.1.2 編譯 134

5.1.3 仿真 136

5.2 Synplify Pro的VHDL輸入設計 137

5.2.1 用Synplify Pro綜合的過程 139

5.2.2 Synplify Pro與Quartus II的接口 142

5.3 Synplify的VHDL輸入設計 143

習題5 146

第6章 VHDL結構與要素 147

6.1 實體 147

6.1.1 類屬參數說明 148

6.1.2 連線埠說明 149

6.1.3 實體描述舉例 150

6.2 結構體 151

6.2.1 結構體的命名 151

6.2.2 結構體信號定義語句 152

6.2.3 結構體功能描述語句 152

6.2.4 結構體描述方法 152

6.3 VHDL庫 154

6.3.1 庫的種類 154

6.3.2 庫的用法 155

6.4 VHDL程式包 157

6.4.1 程式包組成和格式 157

6.4.2 VHDL標準程式包 158

6.5 配置 159

6.5.1 默認配置 159

6.5.2 結構體的配置 161

6.6 VHDL文字規則 163

6.6.1 標誌符 163

6.6.2 數字 164

6.6.3 字元串 164

6.7 VHDL數據類型 165

6.7.1 預定義數據類型 165

6.7.2 自定義數據類型 167

6.7.3 用戶自定義的子類型 169

6.7.4 數據類型的轉換 169

6.8 VHDL操作符 171

6.8.1 邏輯操作符 171

6.8.2 關係操作符 171

6.8.3 算術操作符 172

6.8.4 並置操作符 173

6.8.5 操作符重載 173

6.9 數據對象 174

6.9.1 常量 174

6.9.2 變數 175

6.9.3 信號 176

6.9.4 檔案 176

習題6 177

第7章 VHDL基本語句與基本設計 178

7.1 順序語句 178

7.1.1 賦值語句 178

7.1.2 IF語句 178

7.1.3 CASE語句 181

7.1.4 LOOP語句 182

7.1.5 NEXT語句 184

7.1.6 EXIT語句 184

7.1.7 WAIT語句 185

7.1.8 子程式調用語句 186

7.2 並行語句 188

7.2.1 並行信號賦值語句 188

7.2.2 進程語句 191

7.2.3 並行過程調用語句 192

7.2.4 元器件例化語句 193

7.2.5 生成語句 195

7.3 VHDL組合邏輯電路設計 198

7.4 VHDL時序邏輯電路設計 204

7.4.1 觸發器 204

7.4.2 暫存器 206

7.4.3 計數器 207

7.4.4 分頻器 208

習題7 211

第8章 VHDL設計進階 212

8.1 VHDL行為描述方式 212

8.2 VHDL結構化描述方式 214

8.3 VHDL RTL描述方式 217

8.4 有限狀態機(FSM)設計 218

8.4.1 Moore和Mealy狀態機的選擇 218

8.4.2 有限狀態機的描述方式 220

8.4.3 有限狀態機的同步和復位 228

8.4.4 改進的Moore型有限狀態機 234

8.4.5 小結 239

習題8 240

第9章 數字接口實例及分析 242

9.1 ST-BUS匯流排接口設計 242

9.1.1 ST-BUS匯流排時序關係 242

9.1.2 ST-BUS匯流排接口實例 244

9.2 數字復接分接接口技術及設計 248

9.2.1 數字復接分接接口技術原理 249

9.2.2 同步數字復接分接接口設計實例 250

9.3 I2C接口設計 256

9.3.1 I2C匯流排工作原理 257

9.3.2 I2C匯流排接口設計實例 259

9.4 GMSK基帶調製接口設計 265

9.4.1 GMSK調製基本原理 265

9.4.2 GMSK調製實現的基本方法 267

9.4.3 GMSK基帶調製接口的實現代碼 268

習題9 286

第10章 通信算法實例及分析 287

10.1 偽隨機序列的產生、檢測設計 287

10.1.1 m序列的產生 287

10.1.2 m序列的性質 288

10.1.3 m序列發生器的VHDL設計 288

10.1.4 m序列檢測電路的VHDL設計 290

10.2 比特同步設計 294

10.2.1 鎖相功能的自同步法原理 294

10.2.2 鎖相比特同步的EDA實現方法 296

10.3 基帶差分編碼設計 305

10.3.1 PSK調製和差分編碼原理 305

10.3.2 PSK差分編碼設計 308

10.4 FIR濾波器設計 314

10.4.1 FIR濾波器簡介 314

10.4.2 使用MATLAB設計FIR濾波器 316

10.4.3 FIR濾波器的FPGA普通設計 317

10.4.4 FIR濾波器的並行FPGA最佳化設計 319

習題10 326

參考文獻 327

相關詞條

熱門詞條

聯絡我們