于湛麟
(渤海大學 信息科學與技術學院,遼寧 錦州 121000)
計算機組成原理實驗是計算機組成原理課程的實驗環節[1],是涉及計算機內部工作機理的硬件類實驗,
主要內容包括運算器、存儲器、控制器、時序電路、總線傳輸控制和模型機系統設計等。通過實驗可使學生掌握計算機硬件設計、制造、調試和運行維護等多方面的技能,訓練學生的動手能力,培養創新能力以及認真、嚴謹的科研作風。
傳統的計算機組成原理實驗一般是采用專用的實驗箱,存在的主要問題是,硬件結構固定,在計算機組成、功能實現等方面直觀性較差,學生實驗時的主要工作僅僅是在相應硬件模塊間插接連線,大多是驗證性實驗,學生不能自己設計模塊,所有的實驗很難突破實驗箱的限制,因此不能很好的加強學生對課程理論知識的理解,更談不上培養創新能力了。
Multisim10是一種專門用于電路仿真和設計的軟件之一[2-8],最大的特點是高度的系統集成化、圖形化,簡單易用、形象直觀。電路的原理圖輸入構建、仿真、分析和結果顯示均在同一個環境中完成,不需在不同的應用程序間來回切換;各種元器件形象直觀,電路結構和形式與教材完全相同,整個軟件系統的操作過程較為簡便,學習和使用很方便。
在Multisim仿真軟件中虛擬仿真計算機組成原理實驗,是一種先進的實驗模式,學生可把重點放在計算機各組成部分的設計和仿真驗證上,即豐富了實驗內容、方法和手段,又有效地提高了實驗的直觀性及效果,使實踐環節更好地達到教學目的。
以下用Multisim10版本對計算機組成原理的存儲器進行仿真研究。
存儲器仿真,選用靜態存儲器SRAM6116為核心器件,6116的功能表如表1所示。其中~CS為片選信號,~OE為輸出允許信號,~WE為寫允許信號,I/O0~I/O7為 8位數據輸入/輸出端口。
SRAM6116有A10~A0為11位地址輸入量,存儲容量為2k×8位,通過虛擬仿真,驗證數據的讀寫工作過程及工作特性。

表1 6116功能表Tab.1 Function table for 6116
在Multisim10中構建的存儲器仿真實驗系統如圖1所示。
通過局部總線BUS1連接的8位開關組J1、電阻R8~R1、地址寄存器74LS273用于產生和存放8位地址。8位開關組的狀態設置成由鍵盤上的 8、7、6、5、4、3、2、1 鍵控制,開關向下撥動為0、向上撥動為1;地址寄存器74LS273的輸出端接外部地址總線A-BUS,地址值由8個指示燈X18~X11顯示,燈亮為 1、等滅為 0;狀態受開關J2、J3控制的信號 LDAR、T3經與門74LS08產生地址寄存器74LS273的CLK時鐘輸入信號。

圖1 Multisim10中存儲器的仿真電路Fig.1 Simulation circuit of the memory in Multisim 10
通過局部總線BUS2連接的8位開關組J4、電阻R16~R9用于產生8位輸入數據值,8位開關組的狀態設置成由鍵盤上的 Q、W、E、R、T、Y、U、I鍵控制,開關向下撥動為 0、向上撥動為1。局部總線BUS2、外部數據總線D-BUS之間通過三態傳輸門74LS126連接,三態傳輸門的控制端受開關F控制,開關接5 V時三態傳輸門處于工作狀態、開關接地時三態傳輸門處于禁止狀態。外部數據總線D-BUS上的數據值由8個指示燈X28~X21顯示,燈亮為1、等滅為0。進行寫操作時三態傳輸門處于工作狀態,指示燈X28~X21顯示的是經三態傳輸門傳輸到外部數據總線D-BUS上的輸入數據值;進行讀操作時三態傳輸門處于禁止狀態,指示燈X28~X21顯示的是靜態存儲器6116輸出的數據值。
靜態存儲器SAM使用一片6116。6116芯片的地址線的低8位 A0~A7接在外部地址總線A-BUS上、高3位A8~A10接地,數據線I/O0~I/O7接在外部數據總線D-BUS上,6116芯片的實際使用容量為28=256字節。6116芯片的工作狀態由開關J6產生的CE信號控制,CE=0時存儲器工作、CE=1時存儲器不工作;6116芯片的讀、寫方式由開關J7產生的WE信號控制,WE=0時存儲器進行寫操作、WE=1時存儲器進行讀操作。
寫入的仿真過程如圖2所示,表2所示是按寫入步驟寫入數據的示例。

圖2 寫入的仿真過程Fig.2 Write the simulation process
讀出的仿真過程如圖3所示。按圖3所示的讀出仿真過程可讀出表2所示各數據單元的內容,觀察到讀出與寫入的內容相同,從而驗證了存儲器[9]的讀寫工作過程。
從以上的分析可以看出,在計算機組成原理實驗中可以較為方便地引入Multisim10仿真系統,從而豐富了實驗內容、方法和手段,與以往傳統的實驗方法相比,學生在實驗過程中可把重點放在模型計算機的設計和仿真、驗證上,彌補了真實實驗在計算機組成、功能實現等方面直觀性較差的不足,使實踐環節更好地達到教學目的。仿真系統的引入,也是學生接觸到了現代電子設計的新方法、新手段,激發了學生的積極性和創造性,使整個課程實驗的效果得到很大提高。

表2 6116的寫入數據表Tab.2 6116 write data table

圖3 讀出的仿真過程Fig.3 Read out the simulation process
[1]唐朔飛.計算機組成原理[M].2版.北京:高等教育出版社,2008.
[2]陸明洲,何菊.基于Multisim的計算機組成原理實驗仿真[J].實驗技術與管理,2007,24(12):94-98.LU Ming-zhou,HE Ju.Experiment simulation of computer organization principle based on Multisim [J].Experimental Technology and Management,2007,24(12):94-98.
[3]任駿原.用Multisim仿真軟件分析觸發器的狀態變化過程[J].實驗科學與技術,2011,9(1):53-56.Ren Jun-yuan.The state transition analyzing of flip-flop by multisim[J].Experiment Science&Technology,2011,9(1):53-56.
[4]任駿原.Multisim在觸發器工作波形分析中的應用 [J].現代電子技術,2010,33(15):184-186.Ren Jun-yuan.An application of multisim to the working wave analyzing of Flip-flop[J].Modern Electronics Technique,2010,33(15):184-186.
[5]任駿原.74LS161異步置零法構成任意進制計數器的Multisim仿真[J].電子設計工程,2011,19(14):135-137.REN Jun-yuan.Multisim simulation for modulo-n counter composed by 74LS161with asynchronous reset method[J].Electronic Design Engineering,2011,19(14):135-137.
[6]任駿原.數字電子技術實驗教學模式的改革與實踐[J].渤海大學學報:自然科學版,2010,31(2):l65-167.REN Jun-yuan.The reformation and practice of digital electronics practice teachingmode[J].Journal of Bohai University:Natural Science Edition,2010,31(2):l65-167.
[7]騰香.二進制譯碼器邏輯功能的Multisim仿真方案 [J].現代電子技術,2010,33(20):11-13.TENG Xiang.Multisim simulation program of binary decoder logic function[J].Modern Electronics Technique,2010,33(20):11-13.
[8]馬敬敏.基本RS觸發器工作狀態的Multisim仿真 [J].電子設計工程,2011,19(17):24-26.MA Jing-min.Multisim simulation of basic RS flip-flop working conditions[J].Electronic Design Engineering,2011,19(14):24-26.
[9]王天輝,馬立元,張延生.基于LabVIEW的存儲器檢測系統研究[J].現代電子技術,2009(24):186-188.WANG Tian-hui,MA Li-yuan,ZHANG Yan-sheng.Research on test system of memory based on LabVIEW[J].Modern Electronics Technique,2009(24):186-188.