馮永健
(廣東石油化工學院 廣東 525000)
計算機硬件虛擬實驗室主要為學生提供學習的虛擬仿真環境。整個系統由設備庫、虛擬元器件庫、虛擬實驗平臺以及虛擬實驗室的管理與維護這三部分組成。由虛擬實驗平臺提供網絡訪問的服務器,在學生進行虛擬硬件實驗的過程中,可通過實驗平臺的功能來實現程序的設計、運行以及信號的檢測等,主要是以仿真的面包板為中心,并結合儀表、IC元器件庫、電路板制作工具等,來幫助學生實現數字電路的模擬、設計、除錯與調適等[2]。當學生進行計算機硬件實驗時,把所用的IC元件插到面包板內,再運用電線對IC元件進行聯接;完成電路設計后,接上電源、開關、時序脈沖、LED等,同時監測電路的運行;如果電路運行不恰當,可通過探測棒、示波器等幫助除錯。在虛擬實驗平臺上,面包板是實驗設計和運行的關鍵,在實驗設計時,其主要是用于聯接電線和IC元件,在硬件實驗運行過程中,主要發揮傳輸電平信號的作用。
通過對整個計算機硬件虛擬實驗平臺進行詳細分析,并結合系統的特點,來設計整個系統。對于實驗平臺的設計,主要包括以下幾種:
(1)通用器件類:主要是用以封裝相對應的虛擬元器件,以便提供標準規范的器件尺寸與外觀形態,從而實現引腳信號擴散、器件移動以及其它功能。
屬性:chip As Object ’具體器件的指針,指向某個虛擬器件類的實例
方法:Paint ()’畫出器件的外觀
事件:ValueChange()’當電平改變時,將信號數據擴散到與之相連的控件上
(2)虛擬器件類:可運用虛擬器件對IC元件的結構與功能進行模擬。


(3)虛擬儀表儀器類:主要是對微機實驗中常見的儀表儀器進行仿真模擬,為各種常見的儀表儀器定義一個類,而其實體對應于一個具體的儀表或儀器,例如開關、電源、LED、信號發生器、探測棒、示波器等[3]。
(4)虛擬電線類:可對微機實驗中的電線功能進行模擬,并可提供多種不同顏色的電線。

(5)虛擬面包板類:可對面包板功能進行模擬。運用虛擬插孔承接電線與IC元件的虛擬引腳,從而在面包板上實現器件的聯接、信號擴散等其他輔助功能。


CHSVL系統為用戶提供了一個可以實現計算機硬件模擬實驗的仿真環境,可讓學習者在網絡環境下進入到虛擬實驗室,并按照實驗教學大綱中所規定的內容,進行微機實驗。該系統主要有以下幾方面的功能:
(1)可添加擴充設備與元器件。CHSVL系統提供了開發虛擬元器件的環境,使用者根據實際情況,自由選取虛擬元件庫中原有的模型,并通過改變其屬性、重新組合元件的方式,從而形成新的虛擬元件,方便使用者進行硬件實驗[5]。
(2)實現計算機硬件的仿真試驗。CHSVL系統有良好的人機接口,這一特點對于協助用戶完成硬件電路的設計有很大幫助。此外,還配備有單步執行方式、虛擬數字示波器、虛擬探測棒等來協助除錯工作,并將計算機硬件實驗的內容儲存成文件形式,以便用戶能夠進行連貫性實驗,或是作為以后參考的依據。
(3)信息共享功能。使用者可通過運用廣播形式或私有形式,和其他使用者進行數據共享和信息交流,可向其他用戶傳遞自己的設計思想或是微機實驗的結果數據,亦可在出現疑難問題無法解決時,和其他用戶討論解決方案[6]。
(4)實驗清除與復原的功能。CHSVL系統具有清除與復原的功能。清除指的是清除實驗設計工作區上的所有組件,而如果僅僅要單獨刪除某一組件,則應將鼠標移至該組件上,然后選擇菜單中的刪除操作;復原指的是在電路實驗出現錯誤的情況下,可將其返回到前一狀態,即消除當前錯誤。
(5)自動化電路偵錯功能。CHSVL系統具有自動偵查、檢測人為疏忽的功能。在實驗電路編輯結束后,合上電源開關進行仿真,此時該系統會檢測用戶設計的電路,以便發現是否存在人為的疏忽。
(6)顯示電路圖,方便用戶操作。學習者在進行電路編輯時,通常會使用IC手冊,以便隨時查閱自己所需要的IC資料。為了學習者使用上的方便,在CHSVL系統中添加了這項功能,并提供一些計算機硬件電路試驗的實例[7]。學習者只需把鼠標移至該IC處,右擊鼠標便可看到該IC的屬性數據以及相應的電路圖,并且其引腳圖形對應于IC芯片外觀圖形,只需根據界面上顯示的資料,便可直接進行配線作業。
(7)自動捕獲功能。在虛擬平臺上進行程序編輯時,在系統中設置鼠標捕獲功能,這給用戶在接線過程中提供了很大的方便。例如在選擇某一連線或某一IC芯片時,只需把鼠標移動至所需位置,在系統的自動化操作下,把IC芯片或連線調至背景網絡里,在對準位置后,便可取得準確的地址。
在虛擬實驗室中,主要是通過運用引腳來實現不同元器件的聯接。在計算機硬件虛擬實驗過程中,連線是信號傳輸的介質,其以Avtive控件的形式存在,是一個獨立的整體,在外觀上,通過連線的線和點控制,從而實現連線工作正常運行。在Sender函數作用下,針對一對一的連接模式,可實現對信號接收與信號發送的控制,在此過程中不會出現信號的沖突。然而在多種不同的對接連線中,存在大量信號的同時接收或發送,在系統抗干擾能力較弱的情況下,往往會出現一定的沖突。虛擬實驗有其自身的特點,針對同一時間不同信號的接收與發送,可通過進行適當的邏輯處理,在信號源分析它們存在的不同關系,然后在進行邏輯處理時,將多種對接連線轉變成一對一對接的連線類型。具體的實施方法是:首先分析各個信號端的關系,同時確定出其屬于何種連線類型,若為只發送一個信號,而有不同點的接收,則屬于一對多的連線類型;如果是多信號發送、多不同接收點,則可判斷為多對多的對接連線類型。通過進行詳細分析后在電路中設置邏輯門電路,在其作用下,能夠很好地實現一對一的連線工作。
在用戶進行計算機硬件虛擬實驗時,通常將數字信號當作數據處理的對象,對電路和虛擬元器件的關系進行分析。在虛擬實驗平臺中,虛擬連線是重要的信號介質,這主要體現在:若虛擬元件里的關系出現變化后,引腳值也出現相應變化,會造成信號連線的連線值隨之發生改變,這種情況被稱為電路觸發,主要是通過Sender方式來實現的。
CHSVL系統是虛擬機的實驗平臺,其主要由以下四個模塊構成:編譯模塊、引腳模塊、信號輸出模塊及虛擬機仿真運行模塊。在系統的運行過程中,必須保證能夠實現編譯、數據檢測與數據輸出的操作,只有這樣,才能確保計算機硬件虛擬實驗環境不受影響。
在虛擬機實驗中,主要是通過運用多線程來實現多種不同系統操作,從而提高各種線程之間的通信效率,使系統操作更加快捷、方便。通過數據緩沖方式,虛擬機可實現不同模塊的同時間運行。由于虛擬及仿真運行模塊占用系統時間較長,為了實現同步運行要求,實驗系統通常采取的是緩存機制,在引腳??臁⒕幾g模塊、仿真運行模塊以及信號輸出模塊設立對應的緩沖區,從而實現多模塊同步運行和多線程的同步控制[8]。
總之,計算機硬件虛擬實驗平臺能夠充分實現硬件電路的仿真連接設計,為計算機專業的學習者提供了更好的學習環境。但是在設計與應用過程中依然存在一些不足,例如在使用虛擬機時,往往出現連貫性不強、互動性差等缺點,并且在使用軟件過程中,功能不容易操作,操作步驟復雜等[9]。因此在實際工作中,要不斷探索創新,完善對虛擬實驗室的開發與設計,只有這樣,才能為大型虛擬實驗室提供良好條件。
[1]黃家瑜,李云.計算機硬件實驗教學改革的探討[J].福建師范大學學報(自然科學版).2011,6(02):59-60.
[2]蔡妙嫻,楊路明.計算機硬件虛擬實驗平臺的設計及實現[J].計算機與數字工程.2012,9(01):59.
[3]王旭華.探究虛擬機技術與計算機網絡實驗[J].電腦知識與技術.2012,4(11):47