內容簡介
《Verilog HDL數字集成電路高級程序設計》係統地對Verilog HDL程序設計方法進行說明,明確瞭數字可綜閤邏輯設計和測試仿真程序設計在Verilog HDL語言中的不同,通過對典型的組閤邏輯電路、時序邏輯電路、混閤電路和測試程序的設計舉例,較為完整地說明瞭Verilog HDL語言在數字集成電路中的設計方法。
全書共分10章。第1章是Verilog HDL數字集成電路設計方法概述;第2章是Verilog HDL模塊和結構化建模;第3章是Verilog HDL數據流描述和運算符;第4章是Verilog HDL行為級描述;第5章是Verilog HDL測試和仿真;第6章是Verilog HDL組閤電路設計:第7章是Verilog HDL時序電路設計;第8章是Verilog HDL存儲器設計;第9章是Verilog HDL設計風格;第10章是Verilog HDL高級程序設計。
學習《Verilog HDL數字集成電路高級程序設計》需要具備數字電路和Verilog HDL基礎知識。
《Verilog HDL數字集成電路高級程序設計》可作為集成電路設計和HDL課程的研究生教材及本科生的輔導和設計參考教材,也可以作為數字集成電路設計工程師的參考書。
內頁插圖
目錄
第1章 Verilog HDL數字集成電路
設計方法概述
1.1 數字集成電路的發展和設計方法的演變
1.2 Verilog HDL的發展和國際標準
1.3 Verilog HDL語言的設計思想和可綜閤特性
1.4 用Verilog HDL進行數字集成電路設計的優點
1.5 功能模塊的可重用性
1.6 VerilogHDL在數字集成電路設計流程中的作用
本章小結
思考題和習題
第2章 Verilog HDL模塊和結構化建模
2.1 模塊
2.2 模塊的調用和結構化建模
2.2.1 模塊調用方式
2.2.2 模塊端口對應方式
2.2.3 模塊建模例程
2.3 門級建模
2.3.1 門級元件的調用
2.3.2 門級模塊調用例程
2.4 開關級建模
2.4.1 開關級建模
2.4.2 開關級建模例程
本章小結
思考題和習題
第3章 Verilog HDL數據流描述和運算符
3.1 連續賦值語句(ass堙n)
3.1.1 顯式連續賦值語句
3.1.2 隱式連續賦值語句
3.1.3 迮續賦值語句(assign)例程
3.1.4 連續賦值語句使用中的注意事項
3.2 VerilogHDL中的運算符
3.2.1 算術運算符
3.2.2 關係運算符及相等運算符
3.2.3 邏輯運算符
3.2.4 按位運算符
3.2.5 歸約運算符
3.2.6 移位運算符
3.2.7 條件運算符
3.2.8 連接和復製運算符
3.3 VerilogHDL數據流建模例程
本章小結
思考題和習題
第4章 Verilog HDL行為級描述
4.1 過程語句
4.1.1 initial過程語句
4.1.2 always過程語句和敏感事件錶
4.1.3 過程語句使用中信號類型的定義
4.1.4 awlays過程語句中敏感事件的形式
4.2 語句塊
4.2.1 串行語句塊
4.2.2 並行語句塊
4.2.3 語句塊的使用
4.3 過程賦值語句
4.3.1 阻塞賦值語句
4.3.2 非阻塞賦值語句
4.4 條件分支語句
4.4.1 if條件分支語句
4.4.2 case條件分支語句
4.4.3 條件分支語句的特慮和隱藏鎖存器的産生
4.5 循環語句
4.5.1 forever循環語句
4.5.2 repeat循環語句
4.5.3 while循環語句
4.5.4 for循環語句
4.5.5 循環語句的可綜閤性
本章小結
思考題和習題
第5章 Verilog HDL測試和仿真
5.1 Verilog HDL測試仿真結構
5.2 測試激勵描述方式
5.2.1 信號的初始化
5.2.2 延遲控製
5.2.3 initial和always過程塊的使用
5.2.4 串行與並行語句塊産生測試信
5.2.5 阻塞與非阻塞描述方式産生測試信號
5.3 任務和函數
5.3.1 任務(Task)
5.3.2 函數(Function)
5.3.3 函數和任務的嵌套
5.4 典型測試嚮量的産生方式
5.4.1 任意波形信號的産生
5.4.2 時鍾信號
5.4.3 用函數和電路産生測試信號
5.4.4 復位信號
5.4.5 總綫信號産生
5.5 組閤邏輯電路仿真環境的搭建
5.6 時序邏輯電路仿真環境的搭建
5.7 測試嚮量的選擇和覆蓋率
5.8 係統任務和函數的使用
5.8.1 顯示任務
5.8.2 文件管理任務
5.8.3 仿真控製任務
5.8.4 時間函數
5.8.5 隨機函數
5.9 編譯預處理語句
5.9.1 宏定義
5.9.2 文件包含處理
5.9.3 仿真時間標度
5.9.4 條件編譯
5.9.5 其他語句
5.10 路徑延遲和參數
5.10.1 門級元器件延遲說明
5.10.2 延遲說明塊
5.10.3 延遲參數的定義
5.10.4 路徑延遲的設置
5.10.5 延遲值類型
5.11時序檢查
5.11.1 使用穩定窗口的時序檢查
5.11.2 時鍾和控製信號的時序檢查
5.12用戶自定義元件(UDP)
5.12.1 組閤電路的UDP
5.12.2 時序電路的UDP
本章小結
思考題和習題
第6章 Verilog HDL組閤電路設計
第7章 Verilog HDL時序電路設計
第8章 Verilog HDL存儲器設計
第9章 Verilog HDL設計風格
第10章 Verilog HDL高級程序設計
參考文獻
前言/序言
隨著集成電路技術的飛速發展,集成電路的製造工藝已經達到14nm甚至更小尺寸,數字集成電路的規模越來越大,復雜度越來越高。為瞭提高設計的效率和可靠性,融閤瞭電子技術、計算機技術和智能化技術的EDA(Electronics Design Automation)工具已經在高速復雜數字集成電路設計中得到瞭廣泛應用。
硬件描述語言(HDL)是現代專用集成電路(ASIC)EDA設計的重要設計和仿真語言。目前,大部分數字集成電路設計者都在使用HDL創建高層次、結構化、基於語言的抽象電路描述,利用已有的設計技術綜閤齣所需硬件電路,並對其進行功能驗證和時序分析。
對於準備從事集成電路設計和FPGA設計的研究生和工程師來說,需要瞭解如何在設計流程的關鍵階段正確使用HDL,從而在綜閤後獲得期望的電路。為此需要在瞭解HDL基本語法結構的基礎上,深入理解電路的設計方法、綜閤特性和測試仿真方法。本書就是為這樣一個目標而撰寫的。
VerilogHDL是被廣泛采用的一種硬件描述語言,目前許多有關VerilogHDL的書籍重點關注的是講解語言和語法,較少分析VerilogHDL語言和相應數字電路的關係,以及如何通過設計得到與目標相符閤的電路係統。與這些書籍不同,本書著眼點主要放在VerilogHDL的設計方法上,這是編寫本書的基本齣發點。
本書主要根據VerilogHDL國際標準IEEE1364,對使用HDL進行數字集成電路設計、驗證和綜閤的方法進行講解和分析;對於基於IP的設計及方式、可綜閤代碼風格、係統程序設計架構等高級程序設計方法也進行瞭規範化說明。通過HDL設計方法和大量的實用電路的設計,使讀者能夠對VerilogHDL數字集成電路設計技術有一個全麵瞭解。
本書重點集中在如何在數字電路設計中的設計、綜閤和驗證階段閤理使用VerilogHDL。由於VerilogHDL本質上是對數字電路的一種描述方法,因此學習本書時需要深入瞭解數字電路設計基礎知識,同時至少熟悉一種編程語言,這有助於通過閱讀獲取有用知識,並提高設計能力。本書通過典型的設計例程,討論瞭VerilogHDL核心設計方法和驗證方法,以便幫助讀者快速掌握相關知識內容,並希望藉助於這些典型例程,為讀者在設計復雜電路時提供幫助。
數字電路中通常采用真值錶、狀態轉移圖和算法狀態圖對組閤電路和時序電路進行分析和錶示,在本書中將這些方法用於VerilogHDL的設計和分析,可以提高對設計方法的理解。同時,對於目前在信號處理、自動控製、數值計算等應用中所采用的一些設計方法,如查找錶(LUT)、級數展開和有限狀態機進行瞭說明和舉例,希望能夠幫助讀者擴展設計思路。
目前數字集成電路普遍采用基於IP的設計方式,以提高集成電路的設計效率、規範設計方式、形成商業化的集成電路設計模式。本書對於集成電路和FPGA設計中IP的使用、綜閤和測試仿真進行瞭完整的講解,通過學習可以初步掌握相關的設計方法和流程。
在VerilogHDL高級程序設計章節中,例舉瞭一個完整的采用BPSK調製解調的無綫通信係統設計,該方案已經用於ZigBee芯片中。通過該例程,可以幫助設計人員建立係統級設計的概念,有助於瞭解大規模集成電路的設計工作。
本書的另外一個特點是總結、歸納和分析瞭HDL設計代碼風格和可綜閤電路的關係。通過典型例程及分析,初步建立程序設計代碼風格的概念,對於實際設計過程中設計代碼的編寫和程序代碼分析,會起到重要的作用。
本書列舉大量實例的目的主要是希望讀者在使用VerilogHDL進行超大規模集成(VLSI)電路設計時,學習如何應用關鍵步驟進行設計和驗證。書中所列舉的實例是完整的,並在Modelsim和Synplify軟件中進行瞭編譯、綜閤和仿真。
本書重點對於設計方法、測試方法和代碼風格等進行講解,對於VerilogHDL基本語法和不常用的概念未作介紹。本書適閤作為集成電路設計和HDL課程的研究生教材,以及相應本科生的輔導和設計參考教材,對於希望通過實例學習VerilogHDL,並將這種語言應用於集成電路設計和測試的專業工程師,也會起到一定的幫助。本書假定讀者已具有布爾代數和數字邏輯設計等背景知識,並具有一定的數字電路設計經驗。
全書共分10章。第1章是VerilogHDL數字集成電路設計方法概述;第2章是VerilogHDL模塊和結構化建模;第3章是VerilogHDL數據流描述和運算符;第4章是VerilogHDL行為級描述;第5章是VerilogHDL測試和仿真;第6章是VerilogHDL組閤電路設計;第7章是VerilogHDL時序電路設計;第8章是VerilogHDL存儲器設計;第9章是VerilogHDL設計風格;第10章是VerilogHDL高級程序設計。
十分感謝對於本書的齣版作齣貢獻的老師和學生們。感謝湘潭大學黃嵩人教授、西安交通大學張鴻教授、北京工業大學候立剛教授、西北工業大學張盛兵教授對本書提齣的建設性意見。在本書中,蔡覺平完成瞭第1章和第9章的內容和程序驗證,馮必先和褚潔完成瞭第2~4章的內容和程序驗證,翁靜純完成瞭第5章的內容,國際留學生阮文長和王科完成瞭第6~7章內容,李嬌完成瞭第8章的內容和程序驗證,楊雲鋒完成瞭第10章的內容和程序驗證。感謝馬原、徐維佳、宋喆喆、同亞娜和溫凱林在集成電路設計流程、代碼質量評估等方麵的大量實際工作。感謝課題組其他同學對於本書齣版所作的努力。我們非常高興能夠與負責本書齣版工作的西安電子科技大學齣版社李惠萍編輯一起工作。她的支持和鼓勵,以及對本書創作過程的指導,確保瞭本書的齣版質量。
希望通過本書的齣版,為緻力於集成電路設計的同學和工程師提供幫助。
編者
2015年8月
Verilog HDL數字集成電路高級程序設計 下載 mobi epub pdf txt 電子書