Verilog 晶片設計, 3/e
內容描述
<本書優點特色>
1.作者將IC設計實務經驗深入於範例探討,且每一範例均經過模擬驗證。2.本書除了基本的設計技巧外,亦說明多模組整合設計之技術。希望藉由此書帶領讀者進入以Verilog為主的各種相關設計領域中,熟悉Verilog語言全貌。3.本書提供範例程式光碟,方便讀者使用。
<內容簡介>
本書將IC設計實務經驗深入於範例探討,且每一範例均經過模擬驗證。除了基本的設計技巧外,亦說明多模組整合設計之技術。希望藉由此書帶領讀者進入以Verilog為主的各種相關設計領域中,熟悉Verilog語言全貌,更希望藉由它,幫助讀者完成各種晶片之設計。內容包含有:數位邏輯設計與Verilog發展沿革、Verilog設計風格與觀念、Verilog設計結構、閘層(Gate Level)描述、資料流描述設計、行為描述、函數及任務、自定邏輯電路與狀態機、Verilog程式設計技巧、電路的延遲時序設定、專題實務設計範例等,適合科大資工、電子、電機系教授「數位邏輯設計」、「數位邏輯設計實習」之課程或相關業界人士及有興趣之讀者使用。
<目錄>
第1章 數位邏輯設計與Verilog發展沿革1.1 電腦輔助設計與積體電路產業 1-21.2 硬體描述語言(Hardware Description Language, HDL) 1-41.3 積體電路晶片設計流程 1-5第2章 Verilog設計風格與觀念2.1 Verilog設計風格 2-22.1.1 設計者與變更原因 2-22.1.2 設計內文說明 2-22.1.3 設計過程注意事項 2-32.2 Verilog基本觀念 2-42.2.1 運算子(Operator) 2-52.2.2 註解說明(Comment)與空格(White space) 2-52.2.3 數字(Number) 2-62.2.4 字串(Strings) 2-82.2.5 識別字、關鍵字及系統函數(Identifiers, Keywords and Sy2.2.6 將訊息顯示於標準之輸出 2-102.2.7 模擬監視 2-132.2.8 結束模擬 2-14第3章 Verilog設計結構3.1 設計方法(Design methodologies) 3-33.2 模組(Modules) 3-43.3 連接埠(Ports) 3-53.4 模組例證(Module instantiations) 3-83.5 資料型態(Data types) 3-93.5.1 數值集合 3-93.5.2 連接線(Nets) 3-103.5.3 暫存器(Registers) 3-113.5.4 向量(Vectors) 3-113.5.5 數字(Numbers) 3-123.5.6 參數(Parameters) 3-133.5.7 陣列(Array)與記憶體(Memory) 3-143.5.8 三態(Tri-state) 3-14第4章 閘層(Gate Level)描述4.1 and、or、nand、nor、xor及xnor閘 4-24.2 buf及not閘 4-44.3 實例說明 4-64.4 多工器(Multiplexer)實例 4-19第5章 資料流描述設計(Dataflow Modeling)5.1 連續指定(Continuous assignment ) 5-25.2 表示式(Expression) 5-35.2.1 常數值表示式 5-35.2.2 運算元(Operand) 5-45.2.3 運算子(Operators) 5-45.3 應用實例 5-225.3.1 3對8解碼器 5-225.3.2 4對2編碼器 5-245.3.3 4位元加法器 5-265.3.4 1對4解多工器 5-295.3.5 3位元多數(Majority)位元表決器 5-315.3.6 1位元全減器 5-33第6章 行為描述6.1 程序結構(Procedual constructs) 6-26.1.1 initial區塊 6-26.1.2 Always區塊 6-26.2 程序指定(Procedural assignment) 6-86.2.1 方塊程序指定 6-96.2.2 非方塊程序指定 6-126.3 begin...end方塊敘述 6-166.4 if敘述 6-166.5 case敘述 6-326.6 casez敘述 6-396.7 casex敘述 6-436.8 迴 圈 6-466.8.1 for迴圈 6-466.8.2 while迴圈 6-606.8.3 forever迴圈 6-616.8.4 repeat迴圈 6-626.9 命名begin...end區塊敘述 6-656.10 fork...join區塊敘述 6-676.11 wait準位感測控制 6-686.12 實用範例 6-696.12.1 二位數BCD計數器 6-696.12.2 四位元BCD加法器 6-746.12.3 十六位元組雙埠RAM 6-796.12.4 十六位元組單埠RAM 6-83第7章 函數及任務7.1 函數(Function) 7-27.2 任務(Task) 7-127.3 函數呼叫函數 7-187.4 任務呼叫函數及任務 7-207.5 系統函數與任務 7-237.5.1 與實數有關之系統函數與任務 7-247.5.2 顯示($display)與寫入($write)之系統任務 7-257.5.3 驅動器(drivers)計數系統函數$countdirvers 7-257.5.4 檔案輸出系統任務 7-267.5.5 完成執行之系統任務 7-277.5.6 時序檢查系統之任務 7-277.5.7 測試訊號系統任務 7-287.5.8 載入記憶體系統任務 7-297.5.9 時間刻度系統函數與任務 7-307.5.10 儲存與重新啟動系統任務 7-327.5.11 重置系統任務 7-337.5.12 其他系統任務與函數 7-33第8章 自定邏輯電路與狀態機8.1 自定邏輯電路設計方法 8-38.2 自定組合邏輯電路 8-38.3 自定序向邏輯電路 8-78.4 狀態機 8-118.4.1 Moore狀態機 8-128.4.2 Mealy狀態機 8-28第9章 Verilog程式設計技巧9.1 Verilog程式設計技巧 9-29.1.1 如何設計可合成電路 9-29.1.2 數學運算式之順序及群集 9-39.1.3 if敘述與case敘述之比較 9-49.2 編譯器指引(Compiler directives) 9-59.2.1 include 9-59.2.2
define與undef 9-79.2.3
timescale 9-89.2.4 resetall 9-99.2.5
ifdef、else與
endif 9-9第10章 電路的延遲時序設定10.1 邏輯閘延遲(Gate delay) 10-210.2 連接線訊號轉換延遲(Net delay) 10-410.3 模組路徑延遲(Module path delay) 10-510.3.1 特定區塊(Specify blocks) 10-510.3.2 特定參數(Specify parameters) 10-910.4 邊緣感應路徑延遲(Edge-sensitive path delay) 10-1010.5 狀態相關路徑延遲(State-dependent path delay) 10-1310.6 延遲時間值設定 10-16第11章 專題實務設計範例11.1 0 ~ 9999 十進制計數器 11-211.2 16位元移位式乘法器 11-1011.3 16位元固定點式乘法器 11-1511.4 16位元布斯(Booth)乘法器 11-2011.5 16位元移位式(Shifting)除法器 11-2511.6 16位元重存(Restoring)與非重存(Non-Restoring)除法器 11-11.7 移動蛇(Running snake)控制電路 11-4011.8 鍵盤控制電路 11-5211.9 循環餘數核對(Cyclic Redundancy Check, CRC)電路 11-6211.10 浮點數運算器電路 11-7111.10.1 浮點數加法器 11-7211.10.2 浮點數乘法器 11-80