亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        軟硬件協(xié)同的計算機組成課程實驗

        2018-07-21 06:11:26彭蔓蔓李建江
        計算機教育 2018年7期
        關(guān)鍵詞:存儲器模擬器流程

        彭蔓蔓,吳 強,李建江

        (1.湖南大學 信息科學與工程學院,湖南 長沙 410082;2. 北京科技大學 計算機與通信工程學院,北京 100083)

        1 計算機組成課程實驗教學現(xiàn)狀

        ACM/IEEE在2016年公布的計算機工程課程體系指南(CE2016)和2013年公布的計算機科學課程體系指南(CS2013)都把計算機體系結(jié)構(gòu)和組成(architecture and organization)列為核心知識模塊之一[1-2]。各個大學為計算機及相關(guān)專業(yè)開設(shè)了計算機組成或類似課程,并安排了對應(yīng)的課程實驗[3-4]。

        計算機組成課程實驗通常以硬件設(shè)計為主要內(nèi)容,其中CPU設(shè)計一般作為核心,輔之以運算器、存儲器、I/O接口等硬件模塊的設(shè)計,目的在于使學生理解和掌握如何運用前期數(shù)字邏輯或類似課程所學的邏輯電路設(shè)計知識完成計算機系統(tǒng)主要硬件部件的設(shè)計[5]。

        由于硬件設(shè)計較為繁雜,在實際教學中,學生往往會因為對硬件工作流程理解不夠,在設(shè)計初期不知如何開始而產(chǎn)生畏難情緒。為便于學生理解硬件工作原理,不少學校采用軟件模擬器或仿真程序的方式為學生展示硬件工作過程,使學生易于理解有關(guān)知識,完成硬件電路的設(shè)計[6-7]。

        隨著現(xiàn)場可編程門陣列(FPGA)的發(fā)展和應(yīng)用,計算機組成課程實驗的硬件設(shè)計越來越多地轉(zhuǎn)移到基于FPGA的實驗平臺上[8-10]。采用基于FPGA的實驗平臺進行計算機組成課程實驗常常遇到的問題是學生缺乏對FPGA設(shè)計流程和相應(yīng)軟件工具的了解,在設(shè)計中容易因為一些簡單問題,如軟件設(shè)置、器件選擇、流程狀態(tài)等,不知如何解決而使設(shè)計過程陷入停頓,需要教師在實驗內(nèi)容和教學方法上進行改進,以適應(yīng)新的實驗平臺。

        2 實驗方案

        考慮到硬件設(shè)計尤其是CPU設(shè)計不僅僅是硬件設(shè)計,也涉及軟件相關(guān)知識,如編譯原理,硬件設(shè)計的流程也少不了相關(guān)的軟件工具,如模擬驗證程序等,因此,我們提出一種軟硬件協(xié)同的計算機組成實驗方案,主要包括:①把匯編器、模擬器等軟件工具納入實驗項目中;②設(shè)定匯編器、模擬器的輸出形式與硬件設(shè)計測試所需的格式一致;③利用上述工作構(gòu)建一個閉環(huán)的設(shè)計流程。

        2.1 課程簡介

        計算機組成課程在教學計劃中作為必修課,被安排在大二下學期,開設(shè)給計算機科學與技術(shù)、軟件工程、通信工程等學科及相關(guān)專業(yè)的學生。計算機組成課程的先修課數(shù)字邏輯或數(shù)字電路會被安排在大二上學期。另外,所有專業(yè)的學生都會在大一下學期學習C/C++程序設(shè)計課程。因此,在學習計算機組成課程時,學生已經(jīng)修完了軟件和硬件方面的必要課程,具備一定的軟件和硬件設(shè)計能力。

        按照學校的要求,計算機組成課程采用“大班授課,小班討論”,輔之以課程實驗的方式組織教學[3]。課程的總學時為96課時,其中課堂教學64課時,課程實驗32課時,每次4節(jié)課,共計8次實驗課。每次實驗課通常會安排一個實驗項目,要求當場完成并演示,課后提交實驗報告,但是對于較大或者較難的實驗項目,會安排兩次實驗課來完成。

        2.2 實驗項目

        實驗項目以CPU設(shè)計為核心,包括主要硬件部件和相關(guān)的模擬器、匯編器等軟件工具,結(jié)合課程教學進度的考慮,安排如表1所示的實驗項目。

        實驗項目中主要包括運算器、存儲器和CPU三大部件,每個部件都有硬件設(shè)計和對應(yīng)的模擬器設(shè)計。模擬器設(shè)計的主要目的是為相應(yīng)的硬件電路設(shè)計提供一個可用于驗證的參考,因此,通常安排在硬件電路設(shè)計之前完成。不過,因為存儲器功能比較簡單,所以存儲器模擬器和硬件電路設(shè)計合并在了一個實驗項目中。

        實驗項目中的匯編器設(shè)計主要是為CPU模擬器和CPU硬件電路提供二進制指令代碼輸入,這個工具一方面可以使學生不必手工把指令翻譯成二進制代碼,減少出錯概率,另一方面也有利于學生在測試CPU時采用更多的測試指令序列,提高實驗效率。

        2.3 進度計劃

        計算機組成課程實驗的6個實驗項目計劃安排8次實驗課,需要在8周時間內(nèi)完成。考慮到實驗項目之間有圖1所示的邏輯關(guān)系,實驗項目也要遵循由簡到繁、由部分到整體的循序漸進過程,同時考慮到CPU模擬器設(shè)計和CPU硬件設(shè)計較復(fù)雜、工作量較大,因此,CPU模擬器設(shè)計和CPU硬件設(shè)計2個實驗安排2次實驗課(2周),其余4個實驗項目都安排1次實驗課(1周)。具體的進度計劃為:第1周,運算器模擬器設(shè)計;第2周,運算器硬件設(shè)計;第3周,匯編器設(shè)計;第4周,存儲器模擬器和存儲器硬件設(shè)計;第5—6周,CPU模擬器設(shè)計;第7—8周,CPU硬件設(shè)計。

        2.4 設(shè)計流程

        實驗項目和進度計劃的核心思想是通過軟硬件協(xié)同的設(shè)計流程來幫助學生理解和掌握相關(guān)知識及技能。設(shè)計流程的基本步驟有:①設(shè)計軟件模擬器,模擬所需的功能;②設(shè)計硬件電路,實現(xiàn)所需的功能;③針對測試輸入,利用第①步中的軟件模擬器產(chǎn)生參考輸出,并與第②步所設(shè)計電路的輸出做比較,驗證結(jié)果的正確性;④如果發(fā)現(xiàn)模擬器和電路的輸出不一致,檢查軟件模擬器和硬件電路的實現(xiàn),修改錯誤,直到結(jié)果一致。

        表1 實驗項目

        圖1 實驗項目邏輯關(guān)系

        圖2展示了上述設(shè)計流程在CPU設(shè)計過程中的實際運用,這一設(shè)計流程使得CPU設(shè)計形成了從測試程序輸入到設(shè)計結(jié)果驗證的一個閉環(huán),學生可以利用這個閉環(huán)不斷測試和改進設(shè)計,直到達到設(shè)計目標。

        圖2 CPU設(shè)計流程

        第1周和第2周安排的運算器模擬器和硬件設(shè)計是讓學生按照這種軟硬件協(xié)同的設(shè)計流程進行初步的訓練。第4周安排的存儲器模擬器和硬件設(shè)計是對這種軟硬件協(xié)同設(shè)計流程的強化。第3周的匯編器設(shè)計和最后4周的CPU模擬器和硬件設(shè)計則是對學生是否掌握這種軟硬件協(xié)同設(shè)計流程的綜合考核。

        3 實驗方案在教學中的應(yīng)用

        我們在2016和2017兩年的計算機組成課程中采用了軟硬件協(xié)同的實驗方案,學生的課程評價顯示他們對這一實驗方案是接受和歡迎的。課程討論和課后交流中,學生反映設(shè)計模擬器和匯編器的實驗項目對他們理解硬件運行原理,完成硬件設(shè)計的幫助很大。

        3.1 模擬器設(shè)計

        學生在實驗中需要設(shè)計3個模擬器,運算器模擬器、存儲器模擬器和CPU模擬器。預(yù)估的教學難點為CPU模擬器的設(shè)計,但在教學中,學生針對運算器和存儲器模擬器的設(shè)計提出的問題更多。這主要是學生在以前的課程中很少接觸模擬器,因此對于如何設(shè)計模擬器沒有可借鑒的思路。在教學中,我們以學生學過的數(shù)字邏輯課程中的加法電路為例來說明模擬器進行功能模擬的方法。雖然這個例子比較簡單,但是從學生反映來看,這樣舉例說明比單純地講解模擬器設(shè)計方法更易于理解。

        經(jīng)過運算器和存儲器模擬器的設(shè)計訓練后,學生對于模擬器的設(shè)計有了了解,在設(shè)計CPU模擬器時主要問題是如何確定CPU的輸入和輸出。我們提示他們考慮CPU與存儲器的接口,CPU取指的指令序列,以及CPU內(nèi)部寄存器和存儲器的內(nèi)容變化,學生往往很快就理解并可以繼續(xù)進行設(shè)計。

        3.3 匯編器設(shè)計

        學生在匯編器設(shè)計中提出的問題集中在“偽指令”方面。我們在匯編器設(shè)計中,為了方便數(shù)據(jù)的放置,增加了數(shù)據(jù)偽指令。由于數(shù)據(jù)偽指令不屬于CPU指令集,學生往往不理解為什么需要這些偽指令,也容易把它們與CPU指令混淆,以為CPU有這些數(shù)據(jù)偽指令。我們通過匯編過程舉例講解、實際程序反匯編的方式來向?qū)W生解釋需要數(shù)據(jù)偽指令的原因,數(shù)據(jù)偽指令的特點和匯編器對其的處理。經(jīng)過講解后,學生普遍能夠理解數(shù)據(jù)偽指令的目的及其翻譯方法。

        3.4 設(shè)計流程

        在采用基于FPGA的實驗平臺后,硬件設(shè)計工具往往是FPGA廠商提供的設(shè)計軟件。這些軟件本身通常是商業(yè)軟件的免費版本,功能和設(shè)計流程復(fù)雜,在實際教學中需要學生花大量時間了解和掌握。

        為了減輕學生學習這些硬件設(shè)計工具的負擔,幫助他們盡快熟悉設(shè)計流程,我們要求學生采用硬件描述語言進行硬件設(shè)計,并把實驗項目中模擬器和匯編器的輸出都設(shè)定為硬件描述語言能接收或規(guī)定的形式。這樣模擬器和匯編器的輸出結(jié)果能由硬件描述語言文件接口讀取,為測試驗證所用,從而使設(shè)計流程運轉(zhuǎn)起來。

        學生的反應(yīng)肯定了軟硬件協(xié)同的設(shè)計流程,雖然學生在初期對于輸出格式的要求存在疑問,不理解為什么采用這種格式,但在經(jīng)歷過一次硬件測試之后,都極為認可這種利用模擬器產(chǎn)生參考輸出,與電路輸出做比較的方式,因為這顯著提高了測試的效率。學生在熟悉這一流程后,能夠不斷改進他們的硬件設(shè)計,達到設(shè)計目標。

        4 結(jié) 語

        通過把模擬器和匯編器設(shè)計納入計算機組成課程實驗項目中,與相關(guān)的硬件部件設(shè)計相結(jié)合,構(gòu)建一個軟硬件協(xié)同的設(shè)計流程,使學生能有效地生成參考結(jié)果,用于測試和驗證,從而不斷地改進硬件設(shè)計,達到設(shè)計目標。近兩年的實驗教學效果表明這一軟硬件協(xié)同的實驗方案有利于學生理解計算機系統(tǒng)主要硬件部件的工作原理,掌握它們的設(shè)計方法和設(shè)計技能。我們也將通過更多教學實踐持續(xù)改進這個軟硬件協(xié)同的實驗方案。

        猜你喜歡
        存儲器模擬器流程
        了不起的安檢模擬器
        吃水果有套“清洗流程”
        靜態(tài)隨機存儲器在軌自檢算法
        盲盒模擬器
        劃船模擬器
        違反流程 致命誤判
        勞動保護(2018年5期)2018-06-05 02:12:10
        本刊審稿流程
        析OGSA-DAI工作流程
        動態(tài)飛行模擬器及其發(fā)展概述
        存儲器——安格爾(墨西哥)▲
        在教室伦流澡到高潮hnp视频| 亚洲av日韩一卡二卡| 麻豆文化传媒精品一区观看| 男女啪动最猛动态图| 蜜桃尤物在线视频免费看| 欧洲熟妇色xxxx欧美老妇性| 欧美日韩精品| 亚洲VA不卡一区| 99在线视频精品费观看视| 午夜一区二区三区av| 精品福利一区二区三区| 色噜噜亚洲男人的天堂| 精品人妻中文无码av在线| 中文字幕一区二区三区久久网站| 国产精品nv在线观看| 日本女同性恋一区二区三区网站| 国产麻花豆剧传媒精品mv在线| 日韩精品区一区二区三vr| 亚洲国产中文在线二区三区免 | 亚洲日本va中文字幕久久| 日本一区二区三区在线播放| 国内自拍视频在线观看h| 亚洲发给我的在线视频| 久久综网色亚洲美女亚洲av| 青青国产揄拍视频| 国产欧美一区二区精品性色| 亚洲AV秘 无码一区二区在线| 国产自拍av在线观看| 国产精品国产三级国产av剧情| 国产乱xxⅹxx国语对白| 一本色道av久久精品+网站| 国产360激情盗摄一区在线观看| 色噜噜亚洲精品中文字幕| 国产精品情侣呻吟对白视频| 国产黄在线观看免费观看不卡| 在线观看国产内射视频| 99亚洲女人私处高清视频| 综合亚洲伊人午夜网| 麻豆精品传媒一二三区| 国产成人精品无码一区二区老年人 | a级毛片在线观看|