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

案例教學法在計算機系統結構課程中的應用

2018-09-17 07:49:36丁賢慶李建華
計算機教育 2018年9期
關鍵詞:指令案例課程

陳 田,丁賢慶,路 強,安 鑫,李建華

(合肥工業大學 計算機與信息學院,安徽 合肥 230009)

0 前言

計算機系統結構課程是計算機專業的一門核心專業課程,知識點較多——有指令集結構、流水線結構、指令靜態調度、指令動態調度、cache存儲、多核并行編程等主要知識點。在參考文獻[1-2]中,強調了動畫教學和模擬器教學;動畫教學需要教師課前制作好相關的動畫,課程講解中教師將PPT和演示動畫相結合教學;模擬器教學需要教師編寫對應的模擬器軟件,利用該軟件,動態模擬和顯示指令的執行過程。比較有名的模擬器軟件有winDLX和DLXView。在參考文獻[3]中,強調了并行算法編程的重要性,要求在學習計算機結構概念的同時,增強MPI并行編程能力的訓練。

通過近幾年計算機系統結構課程的教學,筆者發現該課程存在以下問題:①課程概念較多,學生覺得內容抽象、枯燥難學;②課程學時少、教學知識點多,特別是與計算機系統結構有關的新技術和新結構更新很快,這些新知識也要添加到課程中;③綜合性實驗難度較大,難以在短時間內實現;④verilog硬件描述語言沒有前序課程涉及,學生完全自學感覺費力,課設中要用到該部分知識。針對問題,吸收國內外計算機系統結構方面的先進教學理念,可以將先進教學方法和創新思想引入課堂。改變以往的灌輸式、照本宣科式的教學模式,采用案例式教學為主,并和啟發式教學、引導式教學和討論式教學相結合,通過促進學生自主學習,提高教學效果。此外,緊跟國際計算機技術發展潮流,不斷更新計算機系統結構課程內容,在有限的教學學時內協調好經典知識和先進技術的講授關系,通過引入科技發展的新成果和前言知識,拓寬學生的視野。

1 案例教學法的具體實現

為了更好地調動學生學習的積極性,為了將抽象的理論和實踐結合,可以在課程教學中,結合CPU設計這個具體案例來講解重要知識點。CPU設計案例教學法分為3步:第1步,圍繞著CPU設計這個案例,通過提出問題來激發學生主動思考、自主學習;第2步,通過理論知識點的引導式學習,給后續的CPU具體設計打好鋪墊;第3步,課堂上給出CPU設計的框架結構,通過設計作業讓學生課后完成具體設計,以此來鍛煉學生的動手能力、創新能力。

1.1 CPU設計問題的提出

在課程教學中可以先用2個學時補充verilog相關知識,然后給出任務:設計一個具有6條指令的CPU。這6條指令分別是Load指令、Store指令、Mov指令、Add指令、Xor指令和Bnz指令,這6條指令涵蓋了訪存指令、傳送指令、算術與邏輯指令和分支指令,具有一定的代表性。假設這6條指令的機器碼已經給出(如圖1所示)。

圖1 6條指令的機器碼

1.2 結合案例設計過程學習主要知識點

課程案例設計教學中將該任務分解成多個子任務。實現每個子任務前,先講解理論知識點,然后用verilog實現框架結構。圍繞著每個子過程的設計,學生可以先提出問題,進行知識點學習。理論講解以引導為主、自學為輔。教學中強調夯實基礎,注重綜合應用,減少重復。將學生由“被動實踐”變為“主動實踐”,學生的質疑力、觀察力和協同力得到了培養和提高。

1.2.1 結合機器碼的分段,學習I、R、J類型指令格式

在講解指令系統之前,首先拋出3個問題讓同學們思考。問題1:圖1中的指令怎樣分段。從而看出操作碼和地址碼部分?問題2:怎樣看出圖1地址碼部分對應的操作數代表的是整數還是浮點數?問題3:怎樣知道地址碼中對應的是內存地址還是寄存器編號?然后帶著這3個問題開始指令系統部分理論學習[4-5]。最后給出上述3個問題的答案。問題1:在MIPS指令集中,將機器碼分為I、R、J三種類型,在I類型指令中將機器碼分為4段。在R類型指令中將機器碼分為6段。在J類型指令中將機器碼分為2段。問題2:數據表示常見的有兩種。其一是帶標志符的數據表示,通過操作數的前幾位指明數據是整數還是浮點數。另一種是通過不同的操作碼來指明后面的操作數是整數還是浮點數。問題3:通過操作碼來指明地址碼中對應的是內存地址還是寄存器編號。回答完問題后,再結合圖1中的機器碼來介紹MIPS、arm和X86不同指令集的優缺點。

1.2.2 結合操作碼的設計,學習流水線和流水線中狀態機的設計(譯碼)

講解指令流水線之前,首先提出2個問題。問題1:圖1中6條指令怎樣實現能使總執行時間最短?問題2:如果這些指令的操作碼已經知道,怎樣設計指令譯碼器部分?帶著這兩個問題,開始流水線章節的理論學習,最后給出上述2個問題的答案。問題1:采用流水線技術能夠加快多條指令的執行速度[6]。問題2:由于不同操作碼對應的控制信號不同,可以用時序電路設計中常用到的狀態機設計技術來實現。

1.2.3 結合操作碼的設計,學習相關的檢測機理

在介紹流水線中“相關”理論知識點之前,首先提出一個問題,圖1中6條指令中,如果出現后面指令需要用到前面指令的結果,怎樣檢測和處理?帶著該問題學習指令相關的理論知識點,然后給出問題答案:在流水線的譯碼階段,檢測前后兩條指令的地址碼是否相同,如果相同就認為出現了數據相關。處理數據相關的辦法很多,其中常用解決方法是:由“相關”檢測電路發控制信號給多路開關從而使數據定向通路打開,或者使后一條指令暫停,或者通過編譯器進行指令靜態調度來消除數據相關。

1.2.4 結合地址碼的設計,講述訪存階段

講述流水線中訪存階段時,首先提出2個問題。問題1:如何在指令中指明尋址方式?問題2:由于存儲器地址的特殊性,如何在間接尋址中,計算出正確的絕對地址?介紹完寄存器尋址、立即數尋址、間接尋址等10種尋址方式后,給出答案。問題1:在指令系統中尋址方式可以通過操作碼來指明,一般系統中只保留常用的幾種尋址方式,從而使譯碼系統簡化,提高性價比。問題2:可以在流水線的執行階段來實現絕對地址的計算,這樣就可以不必額外添加進行絕對地址計算的運算器,但是需要增加多路開關來實現地址和數據的分時選擇和計算。

1.2.5 結合運算器設計,講述定向通路,并行操作(多操作部件的設計),超長指令字技術

在講述運算器的設計時,首先提出3個問題。問題1:圖1中6條指令對應的運算器怎樣實現性價比高?問題2:如果有減法指令,怎樣在加法器上設計?問題3:如果要實現多條指令完全并行執行,運算器怎樣設計?講述完運算器的主要功能和結構特點等主要知識點后,給出上述問題的答案。問題1:圖1中6條指令對應的運算器應該采用復用技術,共用同一個運算器,通過多路開關控制運算器的輸入,并且構成指令流水線,性價比更好。問題2:對于減法指令,可以通過補碼結構轉換為加法,從而減少硬件成本。問題3:如果要實現多條指令完全并行執行,運算器就需要設置多個,例如設置整數運算器、浮點運算器、地址運算器等,利用硬件成本代價的增加來提高并行速度。

1.2.6 結合流水線指令階段和寫回階段,講述Tomasulo算法和指令動態執行技術

在講述指令動態執行技術時,首先提出2個問題。問題1:圖1中6條指令能否順序流出,亂序執行?怎樣實現?問題2:能否設計一個能實現100條指令亂序的執行系統?如果能需要考慮哪些問題?講述完Tomasulo算法和指令保留站知識點后,給出問題的答案。問題1:圖1中6條指令能順序流出,亂序執行,關鍵是要有多個保留站和多個執行部件,通過保留站消除指令之間的相關,通過多個執行部件的并行工作,實現了亂序執行。問題2:要實現100條指令的亂序執行,系統設計中就要求至少有100個保留站,執行部件數量如果比較少,很難有好的并行性,并且100條指令之間相關檢測硬件結構非常復雜,總之,100條指令的亂序執行理論上能實現,但是硬件成本高,系統性價比低。

圍繞著CPU設計提出對應的問題,只是為了激發學生們主動學習積極性,通過verilog硬件描述語言來動手設計CPU,就可以將理論知識和實踐結合,加深對相關知識點的理解和掌握,同時通過設計的完成,鍛煉了學生們的動手能力和創新能力。設計過程以課堂引導為主,學生自主設計為輔。這樣就與課內學時比較少的實際情況相吻合,同時給學生們課后作業留下了任務,達到了課內教學和課外訓練的齊頭并進。

1.3 案例教學中采用的軟硬件環境和系統框架圖

案例教學中采用的硬件是Xilinx virtex5開發板,軟件環境是ISE10.4。課程教學時將該設計任務分解成多個子任務,包括取指令部件的設計、譯碼部件的設計、運算器部件的設計、存儲器部件的設計、寫回部件的設計等,實現每個子任務前,先講解理論知識點,然后用verilog實現框架結構。這樣就將理論知識點和動手設計結合起來,一邊講,一邊練,一邊討論,激發了學生學習的興趣。在設計環節主要是通過verilog硬件描述語言設計出對應的硬件結構[7,2]。對于五段指令流水線,可以先畫出系統框圖(如圖2所示),根據系統框圖給出每個verilog代碼模塊的輸入與輸出引腳。

圖2 流水線系統框圖

案例設計中,需要設計時鐘模塊。時鐘模塊可以提供對主時鐘信號的分頻、倍頻、移相等功能,給流水線電路提供對應的時鐘信號(如圖3所示)。在時鐘模塊中,輸入信號有CLKIN_IN和復位信號RST_IN,輸出信號為CLK0_OUT、CLK180_OUT和鎖頻信號LOCKED_OUT。只有在輸出時鐘信號穩定的情況下,鎖頻信號LOCKED_OUT才變為有效的高電平,否則為低電平。圖4是時鐘波形圖。從圖4中可以看出,在鎖頻信號LOCKED_OUT上升沿來臨前,時鐘信號CLK0_OUT、CLK180_OUT的信號是不穩定的。在時鐘信號穩定后, CLK0_OUT信號的相位與CLKIN_IN相位相同,CLK180_OUT信號的相位與CLKIN_IN相位相差180度。

圖3 時鐘模塊圖

圖4 時鐘波形圖

案例教學中,針對每個流水段先確定輸入和輸出引腳數目,然后設計輸出和輸入之間的邏輯結構。為了激發學生學習的積極性,上課時只給出系統框圖和關鍵模塊的設計,其它次要部分就作為設計作業,讓學生課后完成,完成的作業要提交給老師評分。通過這種動手設計,學生能主動思考問題,積極給出設計結果,同時還會為下次課的學習積極準備,激發了學生求解未知知識的興趣。教師也能通過學生的設計,收獲頗多。

2 案例法教學效果

理論結合實踐,采用案例教學法具有理解快、記憶效果好的特點。從實施的效果來看,學生上課積極性得到提高,實驗完成質量穩步上升,學生自主學習和研究的熱情高漲,培養了學生的設計能力和創新能力,達到了本課程要求的培養研究和應用兼重的復合型人才的目標。在學生教學評價中,學生反饋是“通過設計,全面認識了計算機系統”“設計過程就是一個非常好的理解和掌握過程”“看著我的設計作品,我有種成就感”等。 通過統計發現,采用案例教學法后,期末考試平均成績得到了提升,成績為“優秀”的人數也在上升。同樣,采用案例教學法后,課程設計完成難度和優秀比例也得到了提升。

3 結語

計算機技術的不斷發展,推動著課程建設的不斷改革和創新[8]。筆者下一步的改革思路是:以自主設計的CPU為核心,完善外設和操作系統、編譯系統,從而形成一個完整的系統。方法是:采用FPGA設計基于arm指令集的CPU,在非易失性存儲器flash中裝載linux嵌入式操作系統。通過配置引導程序參數,使系統啟動時能直接運行flash存儲器中存放的虛擬機和嵌入式應用程序。通過開發嵌入式驅動程序,讓CPU可以接收輸入外設傳送過來的信號,也可以控制輸出外設進行正確的工作。這種案例教學法對于學生全面理解課程知識點,加強動手能力和創新設計能力的培養有著積極的意義[9]。

猜你喜歡
指令案例課程
聽我指令:大催眠術
案例4 奔跑吧,少年!
少先隊活動(2021年2期)2021-03-29 05:40:48
數字圖像處理課程混合式教學改革與探索
軟件設計與開發實踐課程探索與實踐
計算機教育(2020年5期)2020-07-24 08:53:38
為什么要學習HAA課程?
隨機變量分布及統計案例拔高卷
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
發生在你我身邊的那些治超案例
中國公路(2017年7期)2017-07-24 13:56:38
一個模擬案例引發的多重思考
中國衛生(2015年4期)2015-11-08 11:16:06
主站蜘蛛池模板: 欲色天天综合网| 欧美精品啪啪一区二区三区| 老司机午夜精品视频你懂的| 亚洲天堂日本| 亚亚洲乱码一二三四区| 精品福利国产| 国产美女精品一区二区| 精品国产一二三区| 亚洲日韩精品无码专区| www.99精品视频在线播放| 91高清在线视频| 免费高清毛片| 激情六月丁香婷婷四房播| 亚洲成人黄色网址| 精品国产香蕉伊思人在线| 毛片卡一卡二| 国产成人调教在线视频| 成人av手机在线观看| 国产精品成人AⅤ在线一二三四| 亚洲天堂视频在线观看免费| 亚洲欧美综合精品久久成人网| 91麻豆精品视频| 亚洲AV成人一区二区三区AV| 日韩经典精品无码一区二区| 99热这里只有精品国产99| 四虎成人免费毛片| 国产高清在线观看91精品| 久久人体视频| 精品视频第一页| 久久精品这里只有国产中文精品| 日韩亚洲综合在线| 国产精品内射视频| 黄色三级网站免费| 四虎国产精品永久一区| 999在线免费视频| 久久综合AV免费观看| 国产91无码福利在线| 欧美www在线观看| 国产国模一区二区三区四区| jizz国产视频| 伊人久久综在合线亚洲2019| 午夜成人在线视频| 亚洲经典在线中文字幕| a毛片基地免费大全| 免费aa毛片| 亚洲人成成无码网WWW| 大香伊人久久| 久久中文电影| 玖玖精品视频在线观看| 色综合成人| 在线观看国产精美视频| 国产97视频在线| 欧美在线免费| 婷婷六月综合| 99热这里只有精品在线播放| 日日拍夜夜操| 成年人国产视频| 波多野结衣无码AV在线| 久久精品娱乐亚洲领先| 91热爆在线| 日韩国产精品无码一区二区三区| 在线99视频| 亚洲乱码精品久久久久..| 97久久精品人人做人人爽| 欧美激情视频二区| 九色国产在线| 亚洲综合第一页| 成人年鲁鲁在线观看视频| 色哟哟精品无码网站在线播放视频| 亚洲国产精品不卡在线| 一级全免费视频播放| 沈阳少妇高潮在线| 中文字幕在线日韩91| 亚洲国产欧美国产综合久久| 中文字幕66页| 国产成人精品在线| 精品国产污污免费网站| 免费av一区二区三区在线| 日韩亚洲高清一区二区| 丁香婷婷久久| 成人免费视频一区二区三区| a天堂视频在线|