999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

計算機硬件實驗統一平臺設計

2008-12-31 00:00:00全成斌管曉培李山山湯志忠
計算機教育 2008年18期

文章編號:1672-5913(2008)18-0003-03

摘要:針對目前計算機硬件系列實驗課程,我們采用大規模和超大規模集成電路和可編程器件,研究設計了統一硬件實驗平臺。本文介紹了為配套設計而開發的用以輔助實驗的軟件系統,并描述了平臺的功能和代表性實驗過程。

關鍵詞:大規模;可編程器件;統一硬件實驗平臺;軟件系統

中圖分類號:G642 文獻標識碼:A

Design of Union Platform of Computer Hardware Experiment

QUAN Cheng-bin, GUAN Xiao-pei, LI Shan-shan, TANG Zhi-zhong

(Tsinghua University, Lab for Computer Education, Beijing 100084, China)

Abstract: This paper describes the research and design on union hardware platform which bases on large-scale and ultra-

large-scale integrated circuits and programmable devices and supports the current series of computer hardware courses. At thesame time, it describes the software system going with the hardware platform, which helps the experiments a lot. Then it describes the capability of the union platform and the experiment process with the platform.

Key Words: large-scale, programmable devices, union hardware platform, software system

1引言

目前國內的計算機硬件課程實驗呈現出實驗平臺分散化的特點,各個課程采用了各自獨立的實驗平臺。各種平臺的集成度還比較低,大量使用小規模集成電路,所采用的可編程器件多為小規模的GAL,學生實驗還要用很多外部飛線,系統的靈活性非常小[1]。國際部分知名高校的硬件課程比較集中,實驗平臺統一,很多采用了基于大規模可編程器件的實驗平臺來完成實驗。在這些方面,國內的實驗和實驗平臺還有較大差距[2]。

為了推動計算機硬件類實驗改革,提高學生實驗方法和實驗效率,我們設計出了一套計算機硬件實驗統一平臺,下面就其功能、設計方法以及實驗過程分別描述。

2計算機硬件實驗統一平臺的功能

計算機硬件實驗統一平臺支持清華大學計算機硬件類主干實驗,包括:數字電路基礎實驗、數字邏輯、組成原理、系統結構以及微機接口等課程。

對于數字電路基礎課程,支持的實驗內容如表1所示。

對于數字邏輯設計課程,支持全部實驗,如表2。

對于組成原理課程,支持如表3所列的實驗。

針對系統結構課程[3],我們支持如表4所列的實驗。

同時,我們支持如表5所列的微機接口課程實驗。

3計算機硬件實驗統一平臺的設計

為了在統一的實驗平臺上滿足各硬件課程的實驗,我們采用了模塊化結構來設計實驗平臺,平臺的整體設計如圖1所示。

平臺整體分為軟硬件兩個部分。軟件部分主要在學生PC上運行,實現對硬件實驗系統的監控;硬件部分主要是實驗平臺。學生PC與硬件實驗平臺通過USB或者串口連接,根據通信接口協議實現學生PC對硬件實驗系統的動態監控。

軟件部分按照模塊化設計分為界面、通信、監控調試、下載以及內嵌的編譯解釋器等模塊。

硬件部分分為板上公共邏輯模組,實驗模組以及對應各個實驗課程的數字邏輯輔助模組,組成原理輔助模組、微機接口輔助模組和系統結構輔助模組。這里各個實驗課程輔助模組之間不是完全分離的,我們通過相互比較采用了一定的重疊復用,提高了硬件利用率。例如,數字邏輯輔助模組中包含對于微機接口輔助模組中相關接口模塊的利用,兩者復用了部分接口。諸如此類的復用,大大提高了整體硬件平臺的利用率。

3.1軟件部分

軟件部分的各個模塊中,界面模塊設計了友好的人機交互方式,包含對硬件板的狀態顯示,以及對于特定實驗的輸入、編譯、輸出顯示;通信部分依據特定的通信協議和硬件平臺進行通信;監控調試部分,抓取通信部分可見的板上信號變化,由界面部分顯示,支持通過運行控制實現調試功能(例如CPU系統實驗中控制CPU的運行);下載模塊負責硬件平臺各個可寫部分的內容的下載;內嵌的編譯解釋器,完成了匯編語言的編譯功能。

整體的軟件平臺部分,采用軟件工程的設計思想,充分考慮軟件平臺自身的可擴展性和易維護性,更大程度地提高了硬件平臺的功能可擴展性。依據規范化的軟件工程思想,我們合理設計了軟件模塊,做到“design for change”和“design for reuse”[4]。

例如,在通信模塊的設計過程中我們采用了Factory Method,將通信協議抽象出來,作為單獨的父類,通信模塊直接調用協議父類。這樣,以后如果相關協議需要改變的時候,只要對應修改協議本身的內容,其他部分甚至調用協議的通信模塊都無需改變,達到了良好的軟件復用。通過這種設計,我們能夠使軟件修改維護的代價降到最低。上述過程的示意圖如圖2。

3.2硬件部分

硬件平臺放置于實驗箱內,整體結構分為板上公共邏輯模組(包括通信模塊、下載控制及存儲模塊、控制模塊等),實驗模組(以實驗編寫模塊為核心)以及各個輔助模組(包括雜項模塊、接口模塊、存儲模塊、時鐘模塊等),如圖3所示。

其中通信模塊完成板上內容的對外發送。控制模塊實現板上的控制以及信號的采集,并能夠將采集信號發送給通信模塊。下載控制模塊和下載存儲模塊完成板上可編程部分內容動態下載。實驗編寫模塊由可編程器件(例如EP2C20Q240等FPGA)構成,單獨成為實驗模組。時鐘模塊發生一系列時鐘信號,存儲模塊完成對需要存儲結構實驗的支持,接口模塊分布了VGA、PS2、串口等等各種接口,開關顯示以及雜項模塊由實驗所需的開關、數碼管以及其他變阻器等雜項構成,這些雜項組合就可以構成各個實驗課程的輔助模組的一部分。

在硬件系統的設計中,我們著重考慮整個硬件平臺使用實驗模塊為基礎,由于課程的多樣性,需要提供多種“接口”,而FPGA接口有限,這就需要一定程度上考慮FPGA接口的復用。同時存在著需要同時使用多個接口的實驗,因此是在綜合考慮的基礎上分配使用接口的。

4計算機硬件實驗過程簡介

整體來說,我們支持了如第2部分所述的所有實驗。由于篇幅所限,這里以三個較為有代表性的實驗為例介紹硬件實驗過程。

4.1基本組合邏輯設計實驗

數字邏輯設計課程實驗中的基本組合邏輯設計實驗中,實驗目的是要求學生設計實現一位半加器。學生在對一位半加器的相關知識進行了解或者復習上課內容之后,即可得到如4所示的邏輯原理圖。

在對原理圖進行真值表計算、驗證無誤之后,就可以使用開關顯示以及雜項模塊中的2個開關作為An和Bn,2個顯示燈作為Cn和Sn,按照對應關系確定2個輸入和2個輸出在實驗模塊上的編號,就可以進行管腳綁定。從而進行FGPA內部內容的VHDL編寫,經過仿真和波形驗證后,就可以將編譯好的目標代碼,通過學生PC軟件系統燒入實驗FPGA,接著就可以通過事先定義好的輸入和輸出端點進行實驗觀察了。

4.2VGA接口顯示實驗

該實驗中,學生需要參考VGA相關內容,理解VGA接口的信號定義。通過查找實驗指示書,得到實驗板上VGA接口的信號線所關聯到的FPGA的管腳分別為R0-3、G0-3、B0-3、Vsync以及Hsync,并且得到這14個輸出信號與VGA接口輸出的相互關系。這樣就可以實際編寫FPGA的內容,在FPGA上完成一個VGA接口設計,同樣經過仿真、驗證,運用學生PC軟件系統下載運行,從而達到實驗要求的圖像通過VGA接口顯示在所連接的顯示器上的目標。

4.3CPU cache設計實驗

在系統結構的實驗中[5],CPU cache設計實驗要求學生在實現多流水CPU的基礎上添加實現cache結構,整個實驗結構設計如圖5所示。

首先學生在前序實驗中對于PipeLine的CPU已經設計實現,這里原本的CPU通過Controller對于Memory的直接讀取變成了通過IC和DC兩條總線,通過指令cache(IC)和數據cache(DC)的分別讀取,整體外部連接不需要改變,只需要學生在原本實現pipeline CPU的FPGA內在CPU和Memory Controller之間添加IC和DC的邏輯。

需要學生完成的實驗主要分為如下3個步驟:

① 在FPGA[6]內部實現Memory controller結構,連接Memory后,完整測試Memory controller的正確性以及性能。這里Memory可以直接采用硬件平臺中的Ram結構。可以采用如下的測試方法:用實驗模塊的FPGA完成Memory Controller結構,讀取Memory之后的內容寫回Memory,再發送到軟件部分查看讀取結果是否正確。而性能測試,則可以通過長時間循環讀取計時來測量。這里需要注意的是,經過長時間固定次數的循環讀取Memory的固定空間來測試最終的準確性和效率的時候,由于開頭需要寫入Memory而最后需要核對固定空間的Memory內容。而我們無法通過硬件上信號觀察的方法來觀測Memory固定空間的所有內容(即使1K Bits這樣的小數據攤開放在硬件實驗平臺上也是無法讓人接受的),這樣我們的軟件平臺對于Memory的讀出和寫入功能就顯得尤為重要了。

② 在FPGA內完成IC和DC結構。這樣,得到以Memory為一端,IC bus與DC bus為另一端的FPGA,從而測試IC和DC的正確性以及速度情況。整體的連接和測量就可以采用和步驟1相仿的方式進行。

③ 完成整個實驗內容。在步驟2的FPGA內結構基礎上添加多流水CPU,測試完成整個實驗。整體的測試就可以通過CPU的運行效率和準確性來得到結果了。

從這個實驗我們可以看出,尤其在完成復雜實驗的過程中,整個軟件部分對于硬件平臺的監測是十分重要的。

5結束語

計算機硬件實驗統一平臺,采用了大規模可編程邏輯器件,結合先進的軟硬件設計思想和設計方法,將計算機硬件類主干實驗統一到一個平臺完成,為計算機硬件類實驗課程的綜合和改革提供了平臺基礎,為深化課程改革和課程建設做好了準備。其中軟件系統設計采用軟件工程思想,盡可能減小了軟件系統的維護以及擴展的代價,同時極大程度的減少了軟件系統對于硬件系統內容的依賴,并減小了對于硬件系統擴展性的約束。

通過軟硬件配合形成計算機硬件實驗的統一平臺,使得原本在分散實驗平臺上完成的實驗得到統一的支持,消減了因多種平臺帶來的教學成本,更為重要的是提高了學生的學習效率,取得了良好的實驗效果。

參 考 文 獻

[1] 湯志忠, 楊春武. 開放式實驗CPU設計[M]. 北京:清華大學出版社,2007,6.

[2] 湯志忠. 清華“計算機專業實踐”課程的創新與實踐[J]. 計算機教育,2006,(7):7-9.

[3] 鄭緯民, 湯志忠. 計算機系統結構[M]. 北京:清華大學出版社,2001,9.

[4] 白征. SWEBOK: Software Engineering Body of Knowledge[J]. 計算機科學,2001,28(7):108-111.

[5]John L. Hennessy, David A. Patterson. 計算機系統結構:量化研究方法[M]. 北京:電子工業出版社,2004,7.

[6] Wayne Wolf. 基于FPGA的系統設計[M]. 北京:機械工業出版社,

2006,5.

主站蜘蛛池模板: 黄片在线永久| 正在播放久久| 国国产a国产片免费麻豆| 欧美亚洲一区二区三区导航| 亚洲日韩Av中文字幕无码| 在线五月婷婷| 国产麻豆另类AV| 99草精品视频| www精品久久| 91精品啪在线观看国产| 欧美国产视频| 久久亚洲美女精品国产精品| 日本久久网站| 尤物特级无码毛片免费| 午夜福利视频一区| 久久婷婷国产综合尤物精品| 高h视频在线| 国产系列在线| 国产91视频免费观看| 久久久久久尹人网香蕉| 日韩二区三区无| 久久久亚洲国产美女国产盗摄| 在线观看精品自拍视频| 亚洲精品成人福利在线电影| 99这里精品| 亚洲bt欧美bt精品| 中国国语毛片免费观看视频| 国产内射在线观看| 综合社区亚洲熟妇p| 色哟哟精品无码网站在线播放视频| 中文字幕在线视频免费| 亚洲天堂久久新| 欧美第一页在线| 伊人久久久久久久| 国产av剧情无码精品色午夜| 国产精品久久久久久久久kt| 91国内在线视频| 老汉色老汉首页a亚洲| 在线国产三级| 亚洲国产日韩一区| 又黄又湿又爽的视频| 91精品久久久久久无码人妻| 成人韩免费网站| 香蕉伊思人视频| 国产精品视频久| 99久久免费精品特色大片| 国产黄在线免费观看| 99久久这里只精品麻豆| 亚洲人成网站色7777| 自拍亚洲欧美精品| 专干老肥熟女视频网站| 无码人妻免费| 国产精品开放后亚洲| 婷婷色婷婷| 久操中文在线| www.亚洲色图.com| 精品国产亚洲人成在线| 国产欧美日韩精品综合在线| 在线另类稀缺国产呦| 久青草国产高清在线视频| 精品国产黑色丝袜高跟鞋| 欧美成人第一页| 国产微拍一区| 国产97视频在线观看| 国产在线观看99| 一本久道久综合久久鬼色| 九九久久99精品| 亚洲天堂日本| 九九久久99精品| 特级毛片8级毛片免费观看| 久久99热66这里只有精品一 | 大乳丰满人妻中文字幕日本| 亚洲男女天堂| 91区国产福利在线观看午夜 | 日韩av无码DVD| 四虎影视8848永久精品| 无码一区二区波多野结衣播放搜索| 成人精品在线观看| 特级aaaaaaaaa毛片免费视频| 欧美日韩中文国产| 日韩第八页| 国产呦精品一区二区三区网站|