王 莉
(山西大同大學計算機與網(wǎng)絡工程學院,山西大同 037009)
計算機組成原理是計算機類各專業(yè)的必修核心課程之一,在計算機學科中起到承上啟下的作用。這門課的實驗環(huán)節(jié)涉及計算機內(nèi)部各硬件部件的工作原理,主要包括運算器、存儲器、總線、控制器、模型機及微程序設計等實驗內(nèi)容[1-2]。通過實驗可以加深學生對課程理論內(nèi)容的理解,也可以培養(yǎng)學生的動手能力、設計能力及思考創(chuàng)新能力。
傳統(tǒng)的計算機組成原理實驗一般是采用專用的實驗箱,我校采用的是天煌教儀的THTJZ-1 實驗箱,從學生上課情況來看,實驗箱教學存在許多不足:
(1)硬件固定,設計受限。由于傳統(tǒng)實驗箱系統(tǒng)的硬件結構是固定的,學生只能通過按按鈕的方式進行驗證性實驗,不能進行設計性實驗,而且所有的實驗都突破不了實驗箱硬件的限制,因此,實驗環(huán)節(jié)不能很好的幫助學生理解理論知識,更不能培養(yǎng)學生的創(chuàng)新設計能力;
(2)硬件環(huán)境投資較大。在學生規(guī)模日益增長的情況下,實驗箱套數(shù)明顯不足,故傳統(tǒng)實驗箱教學的實驗室建設需要較大的硬件投資;
(3)故障維護艱難。實驗箱出現(xiàn)故障會導致整臺實驗箱報廢,所以實驗箱維護困難,浪費嚴重[3]。
此外,為滿足疫情期間《計算機組成原理》線上教學開展的需求,結合計算機專業(yè)特點與電子系統(tǒng)設計方法,在計算機組成原理實驗教學中引入了開源的“多思計算機組成原理網(wǎng)絡虛擬實驗系統(tǒng)”。該系統(tǒng)支持電路設計,采用GPL 開源許可協(xié)議,能夠以B/S 和單機兩種模式運行[4]。經(jīng)過一學期的應用實踐,采用“多思計算機組成原理網(wǎng)絡虛擬實驗系統(tǒng)”實現(xiàn)了《計算機組成原理》實驗環(huán)節(jié)所涉及的所有實驗,效果令人滿意,充分調(diào)動了學生自己動手和動腦思考的積極性,從而提高了學生的動手能力、設計能力和思考創(chuàng)新能力。
“多思計算機組成原理網(wǎng)絡虛擬實驗系統(tǒng)”是由湖南學院張雯雰老師設計開發(fā)的,屬于開源軟件,系統(tǒng)有兩種運行模式:單機模式和B/S模式。
虛擬實驗系統(tǒng)設計并實現(xiàn)了多個經(jīng)典實驗,同時具有高度的可擴展性,支持電路設計,可以方便開展設計性實驗。例如在微程序控制器實驗中,系統(tǒng)并沒有屏蔽微程序控制器內(nèi)部電路將其抽象、封裝為一個組件,而是給出了微地址生成邏輯、微地址寄存器、微程序存儲器和時序發(fā)生器組成的具體電路,便于實驗者了解控制器的工作原理,理解微指令中順序控制部分的作用[5]。系統(tǒng)主界面包括菜單欄、工具欄、工具箱和工作區(qū)四個部分,如圖1 所示。每一個實驗開啟,要根據(jù)實驗電路圖,自行選擇合適的元器件,并將其從工具箱拖到工作區(qū),然后用連接線連接每個元器件對應的引腳進行設計。
圖1 多思虛擬實驗系統(tǒng)主界面
《計算機組成原理》這門課程的實驗環(huán)節(jié)強調(diào)整機概念,即要讓學生通過實驗了解計算機硬件的整體工作原理,為此,對實驗環(huán)節(jié)進行了必要的分解。
根據(jù)不同的功能部件,設計了全加器實驗、運算器實驗、存儲器實驗、總線與微命令實驗4 個傳統(tǒng)驗證性實驗,以及累加器實驗、程序計數(shù)器實驗、微程序控制器實驗、簡單模型機實驗、微程序設計實驗5個拓展實驗,最后安排了模型機課程設計。驗證性實驗采用虛實結合的方式開展,即在實驗箱驗證實驗課后增加虛擬仿真設計實驗來改善實驗效果,拓展試驗和課程設計全部在虛擬仿真系統(tǒng)中完成,具體實驗安排如表1所示。
表1 實驗內(nèi)容安排
2.2.1 全加器實驗案例
基于傳統(tǒng)實驗箱的教學是無法做全加器實驗的,所以不能深刻理解全加器的邏輯結構和電路實現(xiàn)。多思虛擬仿真平臺提供了常用的門電路部件,學生可以根據(jù)全加器的邏輯表達式,自行設計并完成全加器的電路仿真實現(xiàn)。圖2 為一位全加器虛擬實驗電路。
圖2 所示的全機器虛擬實驗電路是基于全加器的邏輯表達式Si=Ai⊕Bi⊕Ci-1,Ci=AiBi+(Ai⊕Bi)Ci-1搭建的。實驗使用的主要元器件有:異或門、與非門、開關SW 和指示燈Led,其中三個SW 分別是Ai,Bi,Ci-1,兩個Led 分別是Si和Ci,通過手工設置三個SW 的值,觀察兩個Led的亮滅變化。
有了一位全加器的實驗電路,引導學生進一步設計兩位甚至多位串行進位并行加法器,通過這樣的實驗,會理解并行加法器中進位傳遞的工作原理。
2.2.2 簡單模型機實驗案例
簡單模型機實驗是《計算機組成成原理》實驗教學中的一個難點,在傳統(tǒng)實驗箱中無法完成,實驗要綜合前面實驗2 到實驗7 的電路,將運算器模塊、存儲器模塊和控制器模塊通過總線連接在一起,組成一個簡單的模型機,其虛擬實驗電路如圖3所示。
圖3 簡單模型機虛擬實驗電路
在完成了簡單模型機的邏輯電路設計之后,就可以完全理解運算器(74LS181)、存儲器(RAM6116)、微程序控制器(EPROM2716C3)、時序產(chǎn)生器(Sequa Timer)、寄存器(74LS273)等主要邏輯部件之間的數(shù)據(jù)通路連接,從而進一步掌握機器指令、微程序、微指令之間的關系,了解計算機的工作過程。
通過以上兩個案例以及一學期具體實驗開展情況分析,在我?!队嬎銠C組成原理》實驗教學中引入“多思計算機組成原理網(wǎng)絡虛擬實驗系統(tǒng)”是非常有必要的。通過虛擬仿真實驗平臺,可以充實實驗內(nèi)容,豐富實驗方法和手段,與傳統(tǒng)實驗箱教學相比,學生不受實驗室硬件條件的限制,除了基本的驗證性實驗之外,還可以大膽思考、設計、仿真。通過虛擬實驗可以加深學生對課程理論內(nèi)容的理解,也可以培養(yǎng)學生的動手能力、設計能力及思考創(chuàng)新能力。