陳 潤,琚生根,周 剛,陳祥東
(四川大學(xué) 計(jì)算機(jī)學(xué)院,四川 成都 610065)
基于PBL教學(xué)法的計(jì)算機(jī)組成原理實(shí)驗(yàn)項(xiàng)目研究
陳 潤,琚生根,周 剛,陳祥東
(四川大學(xué) 計(jì)算機(jī)學(xué)院,四川 成都 610065)
為克服當(dāng)前計(jì)算機(jī)組成原理課程實(shí)驗(yàn)教學(xué)中的諸多問題,提高教學(xué)效率,該文將PBL教育法引入計(jì)算機(jī)組成原理實(shí)驗(yàn)的教學(xué)中,研究了適合PBL教學(xué)法的組成原理實(shí)驗(yàn)項(xiàng)目的具體設(shè)計(jì)和實(shí)現(xiàn)方案,完成了具有基本功能的計(jì)算機(jī)系統(tǒng)設(shè)計(jì),發(fā)掘了實(shí)驗(yàn)設(shè)備潛能,使PBL教學(xué)法能更好地開展。實(shí)踐表明,該教學(xué)法有效地輔助了理論課的學(xué)習(xí),訓(xùn)練了學(xué)生工程設(shè)計(jì)和自主創(chuàng)新的能力。
組成原理實(shí)驗(yàn);PBL教育法;數(shù)據(jù)通路;指令;微指令
PBL教學(xué)法是基于問題學(xué)習(xí)教學(xué)法的簡稱,該方法起源于20世紀(jì)50年代的醫(yī)學(xué)教育,近年來已被廣泛用于其他教育領(lǐng)域[1-3]。與傳統(tǒng)以學(xué)科為基礎(chǔ)的教學(xué)法不同,PBL是一種以學(xué)生為學(xué)習(xí)主體的教育方法,而不是傳統(tǒng)教學(xué)中的以教師講授為主。該方法將學(xué)習(xí)與任務(wù)或問題掛鉤,將學(xué)習(xí)設(shè)置在學(xué)生通過自主探索和合作來解決問題的過程之中,從而培養(yǎng)學(xué)生解決問題和自主學(xué)習(xí)的能力,調(diào)動(dòng)學(xué)生學(xué)習(xí)的主動(dòng)性和積極性。
計(jì)算機(jī)組成原理是計(jì)算機(jī)專業(yè)學(xué)習(xí)計(jì)算機(jī)基礎(chǔ)和計(jì)算機(jī)硬件工作原理的一門基礎(chǔ)課程[4-5],作為一門硬件類課程,其實(shí)驗(yàn)教學(xué)肩負(fù)著引導(dǎo)學(xué)生由理論到實(shí)踐、由抽象到形象的重要任務(wù),它的開展情況直接影響該門課程的學(xué)習(xí),其教育方法、教育內(nèi)容一直都是教育工作者關(guān)注和研究的熱點(diǎn)[6-9]。
因此,本文探討將PBL教育法引入計(jì)算機(jī)組成原理實(shí)驗(yàn)教學(xué)的開展中,并重點(diǎn)探討基于PBL教育法的實(shí)驗(yàn)項(xiàng)目的研究和改造。
基于PBL教育法的計(jì)算機(jī)組成原理實(shí)驗(yàn)開展的關(guān)鍵在于改變?cè)械囊来伍_展計(jì)算機(jī)各部件實(shí)驗(yàn),教師講解,學(xué)生再按照實(shí)驗(yàn)指導(dǎo)書驗(yàn)證功能的教學(xué)方法,讓整門實(shí)驗(yàn)課圍繞“如何從硬件和軟件上來設(shè)計(jì)和實(shí)現(xiàn)一個(gè)計(jì)算機(jī)系統(tǒng)”這一大問題展開,大問題中同時(shí)包含各種需要解決的小問題。實(shí)驗(yàn)中,讓學(xué)生盡量自主探索,自主學(xué)習(xí),成為學(xué)習(xí)的主體,而教師僅作為問題的設(shè)計(jì)者和學(xué)習(xí)過程的啟發(fā)者和幫助者。教師設(shè)置合適的問題,學(xué)生可以根據(jù)情況進(jìn)行分組,然后自行查閱資料,通過實(shí)驗(yàn)系統(tǒng)的部件實(shí)驗(yàn)來積累知識(shí),掌握各部件的工作原理,討論可行性方案,設(shè)計(jì)指令系統(tǒng),設(shè)計(jì)數(shù)據(jù)通路,設(shè)計(jì)微指令,最終在實(shí)驗(yàn)系統(tǒng)上完成計(jì)算機(jī)系統(tǒng)的軟硬件設(shè)計(jì),并驗(yàn)證通過。
PBL教育法中,學(xué)生的一切學(xué)習(xí)內(nèi)容是以問題為主軸架構(gòu)的,因此,問題的設(shè)計(jì)在整個(gè)教育法中尤其重要,好的問題案例是做好PBL教學(xué)的基本前提。目前,現(xiàn)有的計(jì)算機(jī)組成原理實(shí)驗(yàn)案例大多來自各個(gè)廠家的實(shí)驗(yàn)指導(dǎo)書,屬于驗(yàn)證性實(shí)驗(yàn),缺少適合PBL教育法的實(shí)驗(yàn)[10-13],因此我們有必要對(duì)目前的實(shí)驗(yàn)項(xiàng)目進(jìn)行研究和改造,設(shè)計(jì)出適合開展PBL教育法的案例作為問題導(dǎo)向,使其更好地發(fā)揮對(duì)學(xué)習(xí)過程的指導(dǎo)作用。
2.1 PBL問題導(dǎo)向的建立
計(jì)算機(jī)組成原理的最終教學(xué)目標(biāo)是使學(xué)生掌握計(jì)算機(jī)各個(gè)組成部件的工作原理以及各部件之間的連接,形成較完整的計(jì)算機(jī)組成與工作原理模型,建立完整的計(jì)算機(jī)整機(jī)概念。目前,我校使用的是西安唐都公司推出的新一代的TD-CMA教學(xué)實(shí)驗(yàn)設(shè)備,因此,本文實(shí)驗(yàn)項(xiàng)目的設(shè)計(jì)以此為基礎(chǔ),將PBL教學(xué)法的問題導(dǎo)向設(shè)計(jì)為將實(shí)驗(yàn)箱的各個(gè)部件整合起來,搭建計(jì)算機(jī)(也稱為模型機(jī))的硬件系統(tǒng),并設(shè)計(jì)該模型機(jī)的指令系統(tǒng),最后編寫程序完成某種功能來進(jìn)行驗(yàn)證。在本文中,以實(shí)現(xiàn)具有基本的運(yùn)算、訪問、輸入、輸出功能的模型機(jī)為例。
2.2 模型機(jī)指令系統(tǒng)確立
確定了問題導(dǎo)向,即所設(shè)計(jì)計(jì)算機(jī)的功能和用途后,接著應(yīng)該確定模型機(jī)的指令系統(tǒng),包括數(shù)據(jù)的表示格式、位數(shù)、指令的編碼、類型以及需要設(shè)計(jì)哪些指令和使用的尋址方式。
2.2.1數(shù)據(jù)格式
模型機(jī)規(guī)定數(shù)據(jù)采用定點(diǎn)整數(shù)補(bǔ)碼表示,字長為八位,最高位為符號(hào)位,數(shù)值表示范圍是-27≤X≤27-1。
2.2.2 指令格式
模型機(jī)設(shè)計(jì)算數(shù)邏輯指令、I/O指令、訪問及轉(zhuǎn)移3大類指令共7條。
1)算數(shù)邏輯指令
算數(shù)邏輯類指令包括加(ADD)和減(SUB),都為單字節(jié)指令,尋址方式采用寄存器直接尋址,其指令格式如下:
7 6 5 4 3 2 1 0 OP-CODE RS RD
其中OP-CODE為操作碼,RS為源寄存器,RD為目的寄存器。
2)訪問及轉(zhuǎn)移指令
模型機(jī)設(shè)計(jì)兩條訪問指令,即存數(shù)(STA)和取數(shù)(LAD),一條無條件轉(zhuǎn)移指令(JMP),都為雙字節(jié)指令,尋址模式都為直接尋址,指令格式如下:
7 6 5 4 3 2 1 0 OP-CODE 0 0 RD E
其中,OP-CODE為操作碼,RD為目的寄存器,E為地址。
3)I/O指令
輸入(IN)和輸出(OUT)指令采用雙字節(jié)指令,其指令格式如下:
7 6 5 4 3 2 1 0 OP-CODE RS RD P
其中,OP-CODE為操作碼,RS為源寄存器,RD為目的寄存器,P為I/O端口號(hào)。
2.2.3 指令系統(tǒng)
本模型機(jī)共有7條基本指令,其助記符號(hào)、格式和功能如表1所示。
表1 模型機(jī)指令描述
2.3 總體結(jié)構(gòu)和數(shù)據(jù)通路設(shè)計(jì)
模型機(jī)總體結(jié)構(gòu)設(shè)計(jì)包括確定各部件的設(shè)置以及它們之間的數(shù)據(jù)通路結(jié)構(gòu)。應(yīng)根據(jù)設(shè)計(jì)目標(biāo)合理地設(shè)置各個(gè)部件,如運(yùn)算器部件的結(jié)構(gòu)、控制器的控制方式等。而數(shù)據(jù)通路決定了計(jì)算機(jī)的結(jié)構(gòu),其結(jié)構(gòu)也應(yīng)該合理設(shè)置,不同的數(shù)據(jù)通路決定了執(zhí)行指令的不同操作。
本模型機(jī)的數(shù)據(jù)通路框圖如圖1所示。
圖1 數(shù)據(jù)通路圖
2.4 微指令設(shè)計(jì)
數(shù)據(jù)通路圖確定后,就可以設(shè)計(jì)指令系統(tǒng)中每條指令的執(zhí)行流程。根據(jù)指令的復(fù)雜程度,確定每條指令所需要的機(jī)器周期數(shù),根據(jù)總線結(jié)構(gòu),考慮哪些微操作可以安排在同一條微指令中。最后設(shè)計(jì)出微程序流程圖,確定微地址,如圖2所示。
圖2 微程序流程圖
其中,公共“取指”微指令的判斷測試字段為P<1>測試,本模型機(jī)用指令寄存器的高六位作為測試條件,共7路分支,對(duì)應(yīng)7條機(jī)器指令,占用7個(gè)固定微地址單元。
然后按照實(shí)驗(yàn)系統(tǒng)建議的微指令格式,參照?qǐng)D2,將每條微指令代碼化,譯成二進(jìn)制代碼表,由于微指令較多,本文以SUB、STA、IN這3條指令為例,如表2所示。并將二進(jìn)制代碼表轉(zhuǎn)換為聯(lián)機(jī)操作時(shí)的十六進(jìn)制格式文件。
表2 二進(jìn)制代碼表
2.5 組裝、調(diào)試
設(shè)計(jì)一段機(jī)器程序來驗(yàn)證模型機(jī)的功能,本文設(shè)計(jì)實(shí)現(xiàn)以下運(yùn)算:從IN單元讀入兩個(gè)數(shù),分別存于R0和R1,將兩個(gè)數(shù)相加,再用兩數(shù)的和減去MEM中13H單元中的自定數(shù)據(jù),并分別將加法和減法的結(jié)果送到OUT單元顯示,并存儲(chǔ)于MEM的14H和15H單元中。具體程序如表3所示。
表3 機(jī)器指令程序
最后,按照數(shù)據(jù)通路圖,將實(shí)驗(yàn)系統(tǒng)的各個(gè)部件連線,并將寫好的微指令和機(jī)器指令文件在聯(lián)機(jī)的狀態(tài)下直接寫入到實(shí)驗(yàn)系統(tǒng)的控制器微存和主存中,檢查確認(rèn)無誤后運(yùn)行程序,觀察OUT單元的顯示結(jié)果和內(nèi)存單元的數(shù)值是否正確。也可以在單步的狀態(tài)下通過實(shí)驗(yàn)系統(tǒng)的動(dòng)態(tài)數(shù)據(jù)通路圖和微程序流程圖來觀測指令的執(zhí)行過程。
在問題的驅(qū)動(dòng)下,通過這樣一個(gè)從無到有,從硬件到軟件的設(shè)計(jì)過程可以幫助學(xué)生很好地建立計(jì)算機(jī)整機(jī)概念,鍛煉他們獨(dú)立思考和解決問題的能力,很好地克服傳統(tǒng)組成原理實(shí)驗(yàn)教學(xué)中的諸多不足。在今后的教學(xué)中,為了使PBL教學(xué)法更好地開展,應(yīng)進(jìn)一步發(fā)掘?qū)嶒?yàn)系統(tǒng)潛能,多開發(fā)和設(shè)計(jì)類似的實(shí)驗(yàn)項(xiàng)目,并加以規(guī)范描述建立標(biāo)準(zhǔn)化案例庫,從而減少資源浪費(fèi),提高教學(xué)效率。
[1]劉銀萍,彭端,蔣力立.PBL教學(xué)模式在綜合性實(shí)驗(yàn)中的應(yīng)用[J].實(shí)驗(yàn)科學(xué)與技術(shù),2011,9(3):78-81.
[2]朱麗.PBL教學(xué)模式在計(jì)算機(jī)教學(xué)中的應(yīng)用[J].軟件導(dǎo)刊,2013,12(1):177-179.
[3]童桂,鄭忻.PBL在“數(shù)據(jù)庫原理及應(yīng)用”教學(xué)中的模式構(gòu)建[J].中國電力教育,2010(35):55-57.
[4]鐘國輝.以設(shè)計(jì)性實(shí)驗(yàn)為牽引的微機(jī)原理課程教學(xué)[J].高等工程教育研究,2013(3):154-158.
[5]肖敏.淺析計(jì)算機(jī)組成原理綜合設(shè)計(jì)性實(shí)驗(yàn)的教學(xué)實(shí)踐[J].教育教學(xué)論壇,2014(22):216-218.
[6]姜欣寧,陳宇.“計(jì)算機(jī)組成原理專題實(shí)驗(yàn)”的教學(xué)改革[J].實(shí)驗(yàn)技術(shù)與管理,2013,30(4):162-165.
[7]張磊,鄭榕,田軍峰.計(jì)算機(jī)組成原理理論實(shí)驗(yàn)教學(xué)無縫結(jié)合的新方法[J].實(shí)驗(yàn)室研究與探索,2013,32(5):168-172.
[8]方愷晴,張洪杰.計(jì)算機(jī)組成原理實(shí)驗(yàn)課程教學(xué)新方法的探論[J].計(jì)算機(jī)教育,2007(4):52-55.
[9]顏俊松.計(jì)算機(jī)組成原理實(shí)驗(yàn)教學(xué)研究與探索[J].重慶高教研究,2008,27(1):101-102.
[10]趙洋.《計(jì)算機(jī)組成原理》復(fù)雜指令模型機(jī)設(shè)計(jì)與實(shí)現(xiàn)[J].科技信息,2006(S2):161-162.
[11]喬道跡.《計(jì)算機(jī)組成原理》課程復(fù)雜模型機(jī)的深度開發(fā)[J].裝備制造技術(shù),2009(5):114-117.
[12]張宇華,周瑩.《計(jì)算機(jī)組成原理》綜合性、設(shè)計(jì)性實(shí)驗(yàn)的開發(fā)與實(shí)現(xiàn)[J].現(xiàn)代計(jì)算機(jī),2004(9):98-100.
[13]丁紅勝.CPU與簡單模型機(jī)設(shè)計(jì)實(shí)驗(yàn)中的關(guān)鍵問題分析[J].計(jì)算機(jī)教育,2013(15):13-17.
Study of Experimental Project for the Principles of Computer Organization Based on PBL
CHEN Run,JU Shenggen,ZHOU Gang,CHEN Xiangdong
(School of Computer Science,Sichuan University,Chengdu 610065,China)
To overcome the problems in the experiment teaching of the course and improve the teaching efficiency,problem based learning(PBL)education act was introduced to the experimental teaching of computer organization principle,design and implementation of experimental project for the principles of computer organization based on PBL was studied.A computer system with basic function was designed,including the design of instruction system,overall structure,data path,micro instruction and machine program which verified the function of the model machine,etc.It not only explored the potential of the experiment equipment,effectively supported the PBL education and theory lesson,but also exercised the students’ability of engineering design and creativity.
organization principle experiment;PBL education act;data path;instruction;micro instruction
G64
A
10.3969/j.issn.1672-4550.2016.06.040
2015-11-25;修改日期:2016-10-25
四川大學(xué)實(shí)驗(yàn)技術(shù)立項(xiàng)資助項(xiàng)目(2015-106,2015-108);四川大學(xué)計(jì)算機(jī)學(xué)院實(shí)驗(yàn)技術(shù)立項(xiàng)資助項(xiàng)目。
陳潤(1980-),女,博士,工程師,主要從事智能系統(tǒng)、信息安全方面的研究。
實(shí)驗(yàn)科學(xué)與技術(shù)2016年6期