本書內容是針對數位設計方面的課程所設計,除了可做為電機、電子與資訊工程等相關科系的教科書外,更可做為數位設計者的參考書籍。在教材的設計上,除了包含傳統數位設計的基本概念與邏輯函數外,同時也兼顧使用CAD(計算機輔助設計)工具軟體來完成實際的應用。為了完成此學習過程,以AlteraR QuartusR II軟體為基礎的CAD工具已包含在本書所附加的光碟內。
本書內容由近代的數位設計原理開始,經過閘、邏輯裝置與暫存器等人為的設計層次,並使用VHDL硬體描述語言以高層次的演算法完成系統的設計,最後以近代的CAD工具為基礎進行模擬,並在實際晶片上完成硬體電路。
本書介紹的CAD工具為Altera Quartus II軟體,能提供設計到Altera CPLD與FPGA的自動對映。Quartus II提供的設計輸入方式包含硬體描述語言與圖形編輯方式,並能以整合的方式同時使用這兩種方式完成電路設計。
本書共分為十三章,並劃分為Altera Quartus II軟體的發展環境與使用方法(第0章),數位設計基本原理(第1~3章),VHDL硬體描述語言基礎(第4~5章),組合邏輯電路設計(第6~8章)與序向邏輯電路設計(第9~12章)。課程內容分為:
第0章:Altera Quartus II軟體介紹
介紹如何使用Quartus II軟體來做邏輯電路設計。本章中以fir_filter濾波器設計為例,以由上而下的方式,一個步驟接著一個步驟的導引方式來完成使用Quartus II設計fir_filter濾波器。
第1章:數位設計概念
除了介紹近代數位設計的一般性概念外,並說明如何使用電子設計自動化(EDA)軟體工具來執行合成與模擬,以完成在可程式邏輯裝置上的實際實作。
第2章:數字系統與數碼
從數字系統簡介開始,發展產生各種數字系統的表示法與轉換。另外,也描述一些常用的資料表示方式與各種數碼。
第3章:基本邏輯原理
發展與硬體實作無關的邏輯觀念與布林代數,說明布林代數在數位邏輯電路上的應用,並介紹各種邏輯函數的簡化方式。
第4章:VHDL硬體描述語言的基本概念
除了介紹整個VHDL的設計環境外,並對VHDL的程式基本架構與基本的語言組織做完整的描述。
第5章:VHDL程式設計
學習使用行為模型、資料流程模型與結構化模型等三種基本的VHDL方法來完成邏輯電路與系統的描述。另外,還實際使用Quartus II軟體完成以VHDL程式設計加減法電路的合成與模擬。
第6章:組合邏輯設計原理
介紹組合邏輯電路的分析方法與設計程序,並說明如何使用通用閘,最後用實際的邏輯閘來實作完成設計的邏輯函數。
第7章:組合邏輯裝置設計
以基本邏輯閘設計許多常見的組合邏輯裝置,如全加器、解碼器、編碼器、多工器、解多工器、同位電路、比較器等,並描述如何使用VHDL來完成這些指定的功能。
第8章:算術邏輯單元的設計
先提出一個典型的算術邏輯單元(ALU)設計,並且發展出一系列設計其他算術邏輯單元結構的設計步驟,最後並說明如何以Quartus II元件庫模組(LPM)來完成算術邏輯單元的VHDL程式設計。
第9章:序向邏輯基本裝置
以序向(有限狀態)機的觀念來描述基本序向邏輯電路(閂及正反器),並說明序向處理的一些基本概念。
第10章:暫存器與計數器
說明資料儲存的實際裝置,並設計各種型式的暫存器與計數器。
第11章:同步序向電路
使用狀態圖與狀態表等傳統設計工具分析序向電路,並發展將設計規格轉換成狀態圖的演算法,進而設計各種同步序向電路。
第12章:非同步序向電路
描述非同步序向邏輯電路基本模式的基本觀念,說明危機或競跑情況的分析程序,進而發展設計無競跑非同步序向電路。