verilog hdl程式設計實例詳解

verilog hdl程式設計實例詳解

《verilog hdl程式設計實例詳解》是關於veriloghdl程式設計語言的圖書,作者是張延偉、楊金岩、葛愛學。

圖書簡介

本書內容來自作者實際工作經驗的總結及平常收集整理的相關資料,步驟詳細,實例豐富,講述循序漸進,是廣大ic設計工程師、電子工程人員和高校師生不可多得的一本veriloghdl參考用書。

書籍目錄

目錄:

本書通過100多個模組實例,詳細地講解了veriloghdl程式設計語言,全書共分13章,內容涉及veriloghdl語言基本概念、建模、同步設計、異步設計、功能驗證等,實例包括各種加法器/計數器、乘法器/除法器、編碼器/解碼器、狀態機、spimastercontroller、i2cmastercontroller、canprotocolcontroller、memory模組、jpeg圖像壓縮模組、加密模組、ata控制器、8位risc-cpu等及各個實例模組相應的testbench,所舉實例具有很強的實用性和代表性,每個實例均給出了介紹、功能分析、程式代碼和結果演示。

本書內容來自作者實際工作經驗的總結及平常收集整理的相關資料,步驟詳細,實例豐富,講述循序漸進,是廣大ic設計工程師、電子工程人員和高校師生不可多得的一本veriloghdl參考用書。

目錄

第1章veriloghdl基礎知識1

1.1veriloghdl的基礎語言知識1

1.1.1綜述1

1.1.2veriloghdl語法特性2

1.1.3veriloghdl數據類型4

1.1.4veriloghdl運算符5

1.1.5veriloghdl程式結構6

1.2modelsimse使用簡介8

第2章加法器/計數器實例10

2.11bit半加法器adder設計實例10

2.1.11bit半加法器adder設計10

2.1.2addertestbench設計11

2.1.3addertestbench執行結果及仿真波形12

2.21bit全加法器full_add設計實例13

2.2.11bit全加法器full_add設計13

2.2.2full_addtestbench設計15

2.2.3full_addtestbench執行結果及仿真波形16

2.3同步4bit全加法器adder4設計實例17

2.3.1同步4bit全加法器adder4設計17

2.3.2adder4testbench設計18

2.3.3adder4testbench執行結果及仿真波形20

2.44bit計數器count4設計實例22

2.4.14bit計數器count4設計22

2.4.2count4testbench設計22

2.4.3count4testbench執行結果及仿真波形23

2.58bitbcd碼計數器count60設計實例24

2.5.18bitbcd碼計數器count60設計24

2.5.2count60testbench設計27

2.5.3count60testbench執行結果及仿真波形27

第3章乘法器/除法器實例29

3.1加法樹乘法器add_tree_mult設計實例29

3.1.1加法樹乘法器add_tree_mult設計29

3.1.2add_tree_multtestbench設計32

3.1.3add_tree_multtestbench執行結果及仿真波形33

3.2查找表乘法器lookup_mult設計實例34

3.2.1查找表乘法器lookup_mult設計34

3.2.2lookup_multtestbench設計37

3.2.3lookup_multtestbench執行結果及仿真波形37

3.3布爾乘法器booth_mult設計實例39

3.3.1布爾乘法器booth_mult設計39

3.3.2booth_multtestbench設計42

3.3.3booth_multtestbench執行結果及仿真波形44

3.4移位除法器shift_divider設計實例46

3.4.1移位除法器shift_divider設計46

3.4.2shift_dividertestbench設計52

3.4.3shift_dividertestbench執行結果及仿真波形55

第4章編碼器/解碼器實例57

4.1二進制編碼器bin_enc設計實例57

4.1.1二進制編碼器bin_enc設計57

4.1.2bin_enctestbench設計59

4.1.3bin_enctestbench執行結果及仿真波形60

4.2曼徹斯特編解碼器manch_ed設計實例60

4.2.1曼徹斯特編碼器manch_en設計60

4.2.2manch_entestbench設計63

4.2.3manch_entestbench執行結果及仿真波形64

4.2.4曼徹斯特解碼器manch_de設計65

4.2.5manch_detestbench設計67

4.2.6manch_detestbench執行結果及仿真波形68

4.2.7曼徹斯特編解碼器manch_ed設計69

4.3密勒解碼器miller_de設計實例70

4.3.1密勒解碼器miller_de總體設計70

4.3.2檢測模組signal_detect設計71

4.3.3signal_detecttestbench設計73

4.3.4signal_detecttestbench執行結果及仿真波形75

4.3.5解碼模組decode設計76

4.3.6decodetestbench設計79

4.3.7decodetestbench執行結果及仿真波形80

4.3.8密勒解碼器miller_de頂層設計81

第5章狀態機實例83

5.1狀態機介紹83

5.216位乘法器狀態機實現84

5.2.116位乘法器mult16設計84

5.2.2mult16testbench設計86

5.3交通控制燈控制設計87

5.3.1交通控制燈traffic總體構架87

5.3.2traffic狀態機設計88

5.3.3traffictestbench設計91

5.3.4traffictestbench執行結果及仿真波形93

5.4pci匯流排目標接口狀態機設計93

5.4.1pci匯流排介紹93

5.4.2pci匯流排目標接口總體構架94

5.4.3pci匯流排目標接口statemachine設計95

5.4.4pcitargettestbench設計106

5.4.5pcitargettestbench執行結果及仿真波形108

第6章spimastercontroller實例111

6.1spi協定介紹111

6.2spimastercontroller設計113

6.2.1spimastercontroller總體構架113

6.2.2時鐘產生模組spi_clgen設計113

6.2.3串列接口模組spi_shift設計115

6.2.4spi_top頂層模組設計121

6.3spimastercontrollertestbench設計126

6.3.1spi_toptestbench總體構架126

6.3.2模擬wishbonemaster模組設計126

6.3.3模擬spislave模組設計128

6.3.4spi_toptestbench頂層模組設計129

6.3.5spi_toptestbench執行結果及仿真波形129

第7章i2cmastercontroller實例132

7.1i2c匯流排介紹132

7.2i2cmastercontroller設計135

7.2.1i2cmastercontroller總體構架135

7.2.2bit傳輸模組i2c_master_bit_ctrl設計136

7.2.3byte傳輸模組i2c_master_byte_ctrl設計142

7.2.4i2c_master_top模組設計146

7.3i2cmastercontrollertestbench設計150

7.3.1i2c_master_toptestbench總體構架150

7.3.2wishbonemaster模組設計150

7.3.3i2c_slave_model模組設計151

7.3.4i2c_master_toptestbench頂層模組設計155

7.3.5i2c_master_toptestbench執行結果及仿真波形160

第8章canprotocolcontroller實例162

8.1canprotocolcontroller總體構架162

8.2canprotocolcontroller模組設計165

8.2.1canprotocolcontroller總體構架165

8.2.2位時序操作模組can_btl設計166

8.2.3bitstream處理模組can_bsp設計171

8.3canprotocolcontrollertestbench設計181

8.3.1can_toptestbench總體構架181

8.3.2testtask設計181

8.3.3can_toptestbench頂層模組設計185

8.3.4can_toptestbench執行結果及仿真波形187

第9章memory模組實例190

9.1異步fifo設計實例190

9.1.1異步fifo簡介190

9.1.2異步fifo設計192

9.1.3異步fifotestbench設計194

9.2ddrsdramcontroller設計實例200

9.2.1sdram簡介200

9.2.2ddrsdramcontroller設計201

9.2.3ddrsdramcontrollertestbench設計212

第10章jpeg圖像壓縮模組實例218

10.1jpeg圖像壓縮模組簡介218

10.2色度空間轉換csc設計實例219

10.2.1色度空間簡介219

10.2.2色度空間轉換csc設計220

10.2.3色度空間轉換csctestbench設計223

10.3離散餘弦變換dct設計實例226

10.3.1離散餘弦變換簡介226

10.3.2離散餘弦變換dct設計227

10.3.3離散餘弦變換dcttestbench設計235

10.4量化取整qnr設計實例238

10.4.1量化取整簡介238

10.4.2量化取整qnr設計239

10.4.3量化取整qnrtestbench設計244

10.5哈夫曼編碼huffman_enc設計實例248

10.5.1哈夫曼編碼簡介248

10.5.2哈夫曼編碼huffman_enc設計248

10.5.3哈夫曼編碼huffman_enctestbench設計252

第11章des/aes加密模組實例258

11.1des加密模組設計258

11.1.1des加密算法介紹258

11.1.2des加密模組設計260

11.1.3des加密模組testbench設計276

11.2aes加密模組設計279

11.2.1aes加密算法介紹279

11.2.2aes加密模組設計280

11.2.3aes加密模組testbench設計295

第12章ata主機控制器實例300

12.1ata協定介紹300

12.1.1ata協定300

12.1.2ata數據傳輸方式300

12.1.3ata命令傳輸301

12.2ata主機控制器設計302

12.2.1ata主機控制器總體構架302

12.2.2atahost_controller設計304

12.2.3pio時序控制器atahost_pio_tctrl設計307

12.2.4運行計數器模組ro_cnt設計310

12.2.5atahost_wb_slave設計311

12.3ata主機控制器testbench設計317

12.3.1ata主機控制器testbench總體構架317

12.3.2ata設備ata_device設計317

12.3.3io_test1task設計321

12.3.4io_test2task設計323

12.3.5int_testtask設計327

12.3.6rst_testtask設計329

12.3.7test_bench_top設計330

12.3.8ata主機控制器testbench執行結果及仿真波形332

第13章8位risc-cpu實例335

13.1risc-cpu介紹335

13.1.1risc-cpu基本構架335

13.1.2risc-cpu的功能及模組的劃分336

13.2risc-cpu設計336

13.2.1risc-cpu總體構架336

13.2.2算術邏輯單元alu設計339

13.2.3可選擴展模組exp設計340

13.2.4指令解碼器idec設計342

13.2.5暫存器檔案regs設計345

13.2.6可程式存儲器pram設計346

13.2.7cpu設計347

13.3risc-cputestbench設計358

13.3.1risc-cputestbench總體構架358

13.3.2risc-cputask設計359

13.3.3risc-cputestbench頂層設計363

13.3.4risc-cputestbench執行結果及仿真波形364

縮略語366

參考文獻368

相關詞條

相關搜尋

熱門詞條

聯絡我們