數字邏輯是計算機硬件系列課程的入門課程,主要包括組合邏輯和時序邏輯兩部分,是一門重要的基礎課程。通過該課程的教學,讓學生理解數字電路設計和分析的基本方法,并在實踐過程中深入掌握,因此實驗教學在該課程的教學過程中占有舉足輕重的作用,也是掌握理論知識的關鍵。
《清華大學計算機系列教材:數字邏輯實踐教程》是清華大學計算機系數字電路實驗課程的指導教材,經過多年的使用積累,形成一套行之有效的實驗方法,核心是強調基礎和動手能力。《清華大學計算機系列教材:數字邏輯實踐教程》緊緊圍繞數字邏輯課程的教學目的,在清華大學計算機系自主開發的實驗平臺上,設計開發了多種實驗,既包括傳統的通用邏輯器件實驗,又包括目前流行的可編程實驗內容;實驗開展既保證了充分的動手能力培養,又注重了實驗設計的開放性和靈活性。通過基礎的實驗內容,逐步引導學生掌握數字邏輯的理論知識,并掌握數字電路的設計和分析方法。
《清華大學計算機系列教材:數字邏輯實踐教程》可供高等學校計算機專業學生學習“數字邏輯”課程時作為實驗教材使用,也可供計算機專業工作人員及相關從業人員自學參考。
數字邏輯課程是信息類專業的一門硬件入門課程,在計算機專業中是計算機組成原理、接口技術等課程的先導課程,有著很重要的基礎支撐作用。由于課程的主要理論知識都是在硬件電路的基礎上進行講解的,因此數字邏輯課程的實驗是課程教學的一個重要環節,有了實踐環節才能更好地掌握理論知識,并能夠靈活地進行數字電路的設計和分析。
數字邏輯課程的實驗教學主要采用兩種方式進行。第一種方式是傳統的使用小規模通用邏輯器件,例如74系列的芯片進行電路搭建拼裝實驗,要求學生按照實驗內容根據給定的芯片進行邏輯設計。這種方式需要學生設計并實際動手連接電路,同時使用儀器進行調試,有著很好的親身體驗過程,通過這一過程可以很好地提高學生的操作和調試能力,但是由于是給定的芯片,學生的設計受到一定的限制,影響了自由發揮的空間。第二種方式是采用可編程芯片進行實驗,在EDA 軟件平臺上使用硬件描述語言進行數字電路的設計,由EDA工具自動完成邏輯編譯、邏輯化簡、邏輯綜合及優化、邏輯仿真,直至對特定目標芯片的適配編譯、邏輯映射和編程下載等工作。使用這一方式可以使學生擺脫傳統方式中煩瑣的物理連線與查錯,同時邏輯設計及實現有了更自由的發揮空間,可以進行更高層次的設計。但是這一方式由于主要是在軟件上進行設計,會導致學生缺乏對實際硬件電路的直觀認識,并不利于學生動手能力的培養。這兩種方式各有其優缺點,第一種方式是第二種方式的基礎,只有有了對實際硬件的直觀印象和動手能力才能更好地進行第二種方式的設計,而第二種方式是今后數字電路設計的趨勢,可以幫助人們更好地進行實驗。因此本書兼顧傳統的通用邏輯器件的實驗內容,也加入可編程邏輯器件的內容,并根據實驗需要設計開發了實驗平臺,本書的實驗都是以該實驗平臺為基礎進行的。
由于數字邏輯實驗本身是一個硬件入門性質的實驗,因此本書并不追求高難度的實驗內容,大部分的實驗都是非常基礎的實驗,涵蓋了儀器使用、組合邏輯電路設計、時序電路設計和可編程器件實驗等內容,每一個實驗都有詳細的實驗預習、實驗原理、實驗任務等內容,適合數字邏輯教學使用。全書共分為5章,各章的主要內容如下。
第1章概述: 介紹數字電路實驗的基本知識,以及集成電路的封裝,并介紹數字電路實驗的基本要求和調試方法。
第2章儀器使用: 主要介紹示波器、萬用表和數字邏輯實驗平臺的使用方法和注意事項。
第3章可編程器件及應用: 簡單介紹可編程器件的原理和構成,并安排硬件設計語言簡介內容,同時簡要介紹EDA軟件的使用方法。
第4章通用邏輯器件實驗: 安排通用邏輯器件的實驗內容,包括電路特性的測量,組合邏輯電路的設計,時序電路的設計等多個實驗。
第5章可編程器件實驗: 安排可編程器件實驗的內容,包括組合邏輯和時序邏輯電路,都與前一章相對應,并加入一些新的綜合性實驗內容。本書的實驗內容都是在實際實驗教學中總結出來的,有很好的教學使用樣例,如有需要可以聯系作者。在采用本書的實驗時,可以根據具體的實驗課時和進度安排重新組織和規劃,也可以在實驗平臺基礎上設計新的實驗內容。
本書的通用邏輯器件實驗內容參考繼承了高文煥老師的《電子技術實驗》中的部分內容。感謝清華大學計算機系的高玉超等老師及同學對本書的編寫所提供的支持。限于作者的水平及能力,書中可能還存在不足甚至錯誤之處,懇請廣大讀者批評指正。
作者
2014年5月
第1章概述
1.1數字電路實驗基本知識
1.2實驗集成電路及封裝
1.3數字電路實驗基本要求
1.4數字電路的基本測試和調試方法
第2章儀器使用
2.1示波器
2.1.1數字示波器的基本構成
2.1.2數字示波器DSOX2012A
2.1.3示波器的使用
2.2萬用表
2.2.1組成及外觀
2.2.2操作說明
2.3數字邏輯實驗平臺
第3章可編程器件及應用
3.1可編程邏輯器件
3.1.1FPGA工作原理及內部結構
3.1.2CPLD工作原理及內部結構
3.1.3EPM240簡介
3.2硬件描述語言VHDL簡介
3.2.1基本結構
3.2.2語言元素
3.2.3基本描述語句
3.3Quartus軟件使用
3.3.1Quartus簡介
3.3.2Quartus設計流程
3.3.3Quartus仿真
3.3.4下載配置CPLD
第4章通用邏輯器件實驗
4.1與非門電路的測試
4.1.1實驗目的
4.1.2實驗任務
4.1.3實驗原理及參考電路
4.1.4實驗內容
4.1.5預習要求
4.1.6注意事項
4.1.7實驗報告要求
4.1.8思考題
4.2簡單組合邏輯電路的設計
4.2.1實驗目的
4.2.2實驗任務
4.2.3實驗原理
4.2.4實驗內容
4.2.5研究內容
4.2.6預習要求
4.2.7實驗報告要求
4.2.8思考題
4.3組合電路中的競爭與冒險
4.3.1實驗目的
4.3.2實驗任務
4.3.3實驗原理
4.3.4實驗內容
4.3.5研究內容
4.3.6預習要求
4.3.7實驗報告要求
4.3.8思考題
4.4計數器電路實驗
4.4.1實驗目的
4.4.2實驗任務
4.4.3實驗原理
4.4.4實驗內容
4.4.5研究內容
4.4.6預習要求
4.4.7實驗報告要求
4.4.8思考題
4.5定時控制電路的設計
4.5.1實驗目的
4.5.2實驗任務
4.5.3實驗電路與實驗
4.5.4預習要求
4.5.5實驗內容
4.5.6研究內容
4.5.7實驗報告要求
4.5.8思考題
第5章可編程器件實驗
5.1點亮數字人生
5.1.1實驗目的
5.1.2實驗任務
5.1.3實驗原理
5.1.4實驗設計與實現
5.1.5預習要求
5.1.6實驗內容
5.1.7研究內容
5.1.8實驗報告要求
5.2多路選擇器
5.2.1實驗目的
5.2.2實驗任務
5.2.3實驗原理
5.2.4預習要求
5.2.5實驗內容
5.2.6研究內容
5.2.7實驗報告要求
5.3四位加法器
5.3.1實驗目的
5.3.2實驗任務
5.3.3實驗原理
5.3.4預習要求
5.3.5實驗內容
5.3.6研究內容
5.3.7實驗報告要求
5.4計數器的設計
5.4.1實驗目的
5.4.2實驗任務
5.4.3實驗原理
5.4.4預習要求
5.4.5實驗內容
5.4.6研究內容
5.4.7實驗報告要求
5.5串行密碼鎖
5.5.1實驗目的
5.5.2實驗任務
5.5.3實驗原理
5.5.4預習要求
5.5.5實驗內容
5.5.6研究內容
5.5.7實驗報告要求
5.6彩燈實驗
5.6.1實驗目的
5.6.2實驗原理
5.6.3預習要求
5.6.4實驗內容
5.6.5研究內容
5.6.6實驗報告要求
5.7交通燈綜合實驗
5.7.1實驗目的
5.7.2實驗任務
5.7.3實驗原理
5.7.4預習要求
5.7.5實驗內容
5.7.6研究內容
5.7.7實驗報告要求
5.8貪吃蛇游戲綜合實驗
5.8.1實驗目的
5.8.2實驗內容
5.8.3實驗報告要求
附錄A器件引腳圖
附錄BCPLD引腳
附錄C點亮數字人生例程
1.3數字電路實驗基本要求
與其他實驗一樣,數字電路實驗基本包括三個主要環節:實驗預習、實驗開展和實驗總結,這三者缺一不可,每一步都需要做好才能將實驗做好。在具體的實驗過程中首先要確定實驗內容,設計出實驗電路,然后采用較好的實驗方式和步驟,同時充分掌握和正確利用集成電路器件及其構成的數字電路獨有的特點和規律,合理選擇儀器設備和元器件,再進行調試并進行實驗記錄,最后實驗完成后寫出完整的實驗報告和體會。
1.實驗預習
認真預習是做好實驗的基礎,實驗預習的好壞關系著實驗能否順利開展,而且直接影響實驗效果。每一個實驗都有實驗預習要求,同學需要認真閱讀實驗指導書,明確實驗目的要求,理解實驗原理,并認真復習有關實驗的基本原理,掌握有關器件使用方法,擬出實驗方法和步驟,做到實驗過程中心中有數,并利用仿真軟件對所預習的實驗內容進行仿真模擬,以保證所預習設計的內容正確,這樣不但可拓寬設計思路,也可大大節省實際在實驗室操作的時間和調試的時間,提高實驗效率。
在實驗預習的過程中,完成預習報告,其內容如下。
(1)對于通用邏輯器件的實驗,應該設計好實驗電路圖,該圖應該是邏輯圖和連線圖的混合,既便于連接線,又反映電路原理,并在圖上標出器件型號、使用的引腳號及元件數值,必要時還必須用文字說明。
(2)若邏輯設計采用硬件描述語言,則必須給出源程序及必要的文字注釋,以及弓}腳連接關系。
(3)如果需要時請給出軟件仿真結果或波形。
(4)擬訂具體實驗方法和步驟。
(5)擬好記錄實驗數據的表格,同時給出理論值。
2.實驗開展
在具體進行實驗的過程中,首先應該根據預習報告,準備好實驗所需的儀器設備和裝置并安放適當;然后按照預定的實驗方案和步驟,連接實驗電路并進行調試,同時記錄實驗所得各項數據、波形及出現的問題。
在實驗中,如果出現問題或錯誤,應該根據預習報告仔細檢查電路,獨立思考,耐心排除,并記下排除故障的過程和方法。
……