Verilog HDL程式設計教程

Verilog HDL程式設計教程

《Verilog HDL程式設計教程》是2004年1月人民郵電出版社出版的圖書,作者是王金明。

內容簡介

本書對Verilog HDL程式設計作了系統全面的介紹,以可綜合的設計為重點,同時對仿真和模擬也作了深入的闡述。本書以Verilog-1995標準為基礎,全面介紹了Verilog HDL的詞法、語法、語句,可綜合程式的編寫,仿真程式的編寫,一般數字邏輯的實現,複雜邏輯和算法的實現等,討論了設計中的方法與技巧,並以大量經過驗證的設計實例為依據,深入淺出地闡述了Verilog程式開發所涉及的各個方面。對Verilog-2001的新增語法結構也作了介紹。著眼於實用是本書的出發點,由於HDL語言的學習與使用必須依託一定的EDA環境,因此對典型EDA軟體的使用與接口也作了介紹。本書可作為電子工程、通信工程及相關專業高年級本科生和研究生教學用書,也可供從事電路設計和系統開發的工程設計人員閱讀參考。

圖書目錄

第1章 EDA技術綜述

本章內容簡介

1.1 引言

1.2 EDA技術及其發展

1.3 設計方法與設計技術

1.3.1 Top-down設計

1.3.2 Bottom-up設計

1.3.3 IP復用技術與SOC

1.4 EDA設計的實現

1.5 硬體描述語言

思考與練習

第2章 EDA設計軟體與設計流程

本章內容簡介

2.1 EDA軟體工具概述

2.1.1 集成的CPLD/FPGA開發工具

2.1.2 輸入工具(Design Input Tools)

2.1.3 邏輯綜合工具(Synthesis Tools)

2.1.4 仿真工具(Simulation Tools)

2.1.5 IC版圖工具

2.1.6 其他EDA工具

2.2 EDA設計的流程

2.2.1 輸入(Design Input)

2.2.2 綜合(Synthesis)

2.2.3 適配(Fitter)

2.2.4 仿真(Simulation)

2.2.5 編程(Program)

思考與練習

第3章 Verilog HDL設計初步

本章內容簡介

3.1 Verilog語言的歷史及與C語言的比較

3.2 完整的Verilog HDL設計

3.2.1 4位全加器和4位計數器

3.2.2 綜合

3.2.3 仿真

3.3 Verilog模組基本結構剖析

3.3.1 Verilog模組的結構

3.3.2 邏輯功能定義

思考與練習

第4章 Verilog HDL語言要素

本章內容簡介

4.1 詞法

4.1.1 空白符和注釋

4.1.2 數字與字元串(Numbers & Strings)

4.1.3 標識符(Identifiers)

4.1.4 運算符(Operators)

4.1.5 關鍵字(Keywords)

4.2 數據類型

4.2.1 連線型(Net Type)

4.2.2 暫存器型(Register Type)

4.2.3 parameter

4.3 暫存器和存儲器

4.3.1 暫存器

4.3.2 存儲器

4.4 運算符

4.4.1 運算符

4.4.2 運算符的優先權

思考與練習

第5章 Verilog HDL行為語句

本章內容簡介

5.1 概述

5.2 過程語句

5.2.1 always過程語句

5.2.2 initial語句

5.3 塊語句

5.3.1 串列塊begin-end

5.3.2 並行塊fork-join

5.4 賦值語句

5.4.1 持續賦值與過程賦值

5.4.2 阻塞賦值與非阻塞賦值

5.5 條件語句

5.5.1 if-else語句

5.5.2 case語句

5.5.3 條件語句使用要點

5.6 循環語句

5.6.1 for語句

5.6.2 repeat語句

5.6.3 while和forever語句

5.7 編譯嚮導

5.7.1 宏替換`define

5.7.2 檔案包含`include

5.7.3 條件編譯`ifdef、`else、`endif

思考與練習

第6章 進程、任務與函式

本章內容簡介

6.1 進程(process)

6.1.1 進程

6.1.2 進程間的通信

6.2 任務(task)

6.3 函式(function)

6.3.1 函式

6.3.2 任務與函式的區別

6.4 順序執行與並發執行

6.5 Verilog-2001新增語法結構簡介

思考與練習

第7章 Verilog HDL的描述風格

本章內容簡介

7.1 概述

7.2 結構描述

7.2.1 Verilog HDL內置門元件

7.2.2 門級結構描述

7.3 行為描述方式

7.4 數據流描述方式

7.5 不同描述風格的例子

7.5.1 半加器

7.5.2 1位全加器

7.5.3 4位全加器

思考與練習

第8章 仿真

本章內容簡介

8.1 概述

8.2 系統任務與系統函式

8.2.1 $display與$write

8.2.2 $monitor與$strobe

8.2.3 $time與$realtime

8.2.4 $finish與$stop

8.2.5 $readmemh與$readmemb

8.2.6 $random

8.2.7 檔案輸出

8.3 用戶自定義元件(UDP)

8.3.1 組合電路UDP元件

8.3.2 時序邏輯UDP元件

8.3.3 UDP元件縮記符

8.4 延時模型的表示

8.4.1 時間標尺定義`timescale

8.4.2 延時的表示方法

8.4.3 延時說明塊(specify塊)

8.5 測試平台(Test Bench)

8.5.1 Test Bench

8.5.2 測試程式的編寫

8.6 仿真示例

8.6.1 組合電路的仿真

8.6.2 時序電路的仿真

思考與練習

第9章 Verilog HDL設計進階

本章內容簡介

9.1 基本組合電路的設計

9.1.1 簡單門電路

9.1.2 編解碼器

9.1.3 數據選擇器

9.1.4 用組合電路實現的ROM

9.2 基本時序電路的設計

9.2.1 D觸發器與JK 觸發器

9.2.2 鎖存器與暫存器

9.2.3 計數器

9.2.4 ROM/RAM模組

9.2.5 串/並轉換

9.3 簡單的微處理器

9.3.1 設計實現

9.3.2 仿真

9.4 乘累加器(MAC)的設計

思考與練習

第10章 設計方法與設計技巧的探討

本章內容簡介

10.1 可綜合的設計技術的討論

10.1.1 可綜合的Verilog HDL結構

10.1.2 可綜合設計的要點

10.2 流水線設計技術(Pipeline Design)

10.3 資源共享(Resource Sharing)

10.4 有限狀態機(FSM)設計

10.4.1 基於狀態機的設計

10.4.2 頻率計控制器設計舉例

10.4.3 幾點討論

10.5 多層次結構電路的設計

10.5.1 圖形與文本混合設計

10.5.2 文本設計

10.6 阻塞與非阻塞賦值使用要點

10.6.1 進程的設計

10.6.2 阻塞賦值與非阻塞賦值

10.6.3 套用要點

10.7 片記憶體儲器的使用

10.7.1 片記憶體儲器

10.7.2 設計舉例

10.8 如何消除毛刺

10.8.1 毛刺的產生

10.8.2 毛刺的消除

思考與練習

第11章 Verilog HDL綜合設計實踐

本章內容簡介

11.1 數字跑表

11.1.1 設計輸入與編譯

11.1.2 仿真

11.2 4位數字頻率計

11.2.1 功能與原理

11.2.2 設計實現

11.3 交通燈控制器

11.3.1 功能要求

11.3.2 設計實現

11.4 樂曲演奏電路

11.4.1 音調的控制

11.4.2 音長的控制

11.4.3 樂曲演奏電路源程式

11.5 自動售飲料機的設計

11.6 實用多功能數字鐘

11.6.1 功能

11.6.2 源程式

11.7 計費器設計

思考與練習

第12章 算法與複雜邏輯的實現

本章內容簡介

12.1 加法器設計

12.1.1 級連加法器

12.1.2 並行加法器

12.1.3 超前進位加法器

12.1.4 流水線加法器

12.2 乘法器設計

12.2.1 並行乘法器

12.2.2 移位相加乘法器

12.2.3 查找表乘法器

12.2.4 加法樹乘法器

12.3 FIR濾波器的設計

12.3.1 FIR濾波器的結構

12.3.2 抽頭係數編碼

12.3.3 原始碼及仿真

12.4 數字相關器

12.5 信道編解碼器

12.5.1 線性分組碼編解碼器

12.5.2 循環碼編解碼器

12.6 CRC校驗碼

思考與練習

第13章 EDA軟體使用指南

本章內容簡介

13.1 概述

13.2 Synplify Pro使用指南

13.2.1 Synplify Pro的性能特點

13.2.2 Synplify Pro使用指南

13.2.3 Synplify Pro與MAX+PLUS II的接口

13.3 Synplify 使用指南

13.3.1 Synplify的功能特點

13.3.2 Synplify使用舉例

13.4 ModelSim使用指南

13.4.1 ModelSim功能仿真

13.4.2 ModelSim時序仿真

13.5 ispLEVER使用指南

13.5.1 ispLEVER的特點

13.5.2 基於ispLEVER的Verilog設計

13.6 MAX+PLUS II使用指南

13.7 Quartus II使用指南

13.7.1 創建工程檔案

13.7.2 編譯

13.7.3 仿真

13.7.4 Synplify Pro與Quartus II的接口

13.8 結束語

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

附錄B Synplify Pro/Synplify可綜合的Verilog結構

附錄C MAX+PLUS II軟體支持的Verilog結構

附錄D 形式化句法定義

附錄E 附帶光碟內容及說明

參考文獻

相關詞條

相關搜尋

熱門詞條

聯絡我們