国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于計(jì)算機(jī)原型系統(tǒng)的系統(tǒng)結(jié)構(gòu)類實(shí)驗(yàn)的一體化實(shí)驗(yàn)體系建設(shè)

2013-04-29 19:12:05傅翠嬌曹慶華任作成
計(jì)算機(jī)教育 2013年8期
關(guān)鍵詞:教學(xué)改革

傅翠嬌 曹慶華 任作成

摘要:分析現(xiàn)有的計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)類實(shí)驗(yàn)課程中存在的問題,提出基于計(jì)算機(jī)原型系統(tǒng)的一體化實(shí)驗(yàn)體系建設(shè)方案,明確了課程之間的關(guān)系和定位,并通過一個(gè)綜合性的實(shí)驗(yàn)實(shí)例進(jìn)行詳細(xì)說明。

關(guān)鍵詞:計(jì)算機(jī)原型系統(tǒng);實(shí)驗(yàn)體系建設(shè);教學(xué)改革;計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)

0、引言

隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,基于EDA的設(shè)計(jì)已經(jīng)成為硬件設(shè)計(jì)的主要方式。以前的基于小型模擬計(jì)算機(jī)系統(tǒng)的實(shí)驗(yàn)已經(jīng)不再適應(yīng)實(shí)驗(yàn)教學(xué)的要求。傳統(tǒng)實(shí)驗(yàn)教學(xué)模式大多采用中小規(guī)模集成電路芯片在面包板上搭建各種常見數(shù)字電路的方式,工作量大且易出錯(cuò)。而新的實(shí)驗(yàn)教學(xué)模式是利用硬件描述語言和EDA工具,先在計(jì)算機(jī)上進(jìn)行設(shè)計(jì)、修改和仿真,然后通過仿真波形可以直觀地觀察到電路內(nèi)部各個(gè)信號(hào)的變化情況,再將設(shè)計(jì)下載到實(shí)驗(yàn)臺(tái)上的PLD芯片中,進(jìn)一步驗(yàn)證設(shè)計(jì)的正確性。通過一系列綜合性實(shí)驗(yàn),不僅可以加深學(xué)生對計(jì)算機(jī)硬件基本知識(shí)的理解,而且有助于學(xué)生對這些知識(shí)點(diǎn)的融會(huì)貫通。通過在實(shí)驗(yàn)臺(tái)上不斷地調(diào)試與驗(yàn)證,學(xué)生的動(dòng)手能力、分析問題和解決問題的能力得到了鍛煉。

1、目前實(shí)驗(yàn)教學(xué)中存在的問題

目前北京航空航天大學(xué)計(jì)算機(jī)學(xué)院的計(jì)算機(jī)硬件類必修實(shí)驗(yàn)課程主要包括數(shù)字邏輯實(shí)驗(yàn)、計(jì)算機(jī)組成原理實(shí)驗(yàn)和計(jì)算機(jī)接口與通信實(shí)驗(yàn)。這3門實(shí)驗(yàn)課程通過不斷地進(jìn)行實(shí)驗(yàn)教學(xué)改革,取得了很大的進(jìn)步,并已建立了以EDA為開發(fā)工具、以設(shè)計(jì)為主的新型計(jì)算機(jī)硬件實(shí)驗(yàn)體系,但是目前還存在一些問題。

1.1 缺乏完整的實(shí)驗(yàn)體系

1.1.1 實(shí)驗(yàn)內(nèi)容有重復(fù)

不同的實(shí)驗(yàn)課程之間會(huì)出現(xiàn)重復(fù)的實(shí)驗(yàn)內(nèi)容。例如數(shù)字邏輯實(shí)驗(yàn)和計(jì)算機(jī)組成原理實(shí)驗(yàn)都是以計(jì)算機(jī)原型系統(tǒng)為目標(biāo)進(jìn)行設(shè)計(jì)的,但二者在存儲(chǔ)器設(shè)計(jì)上有所重復(fù)。另外,數(shù)字邏輯實(shí)驗(yàn)中基本實(shí)驗(yàn)的有限狀態(tài)機(jī)的設(shè)計(jì)部分主要以ADC 0809控制器設(shè)計(jì)為例,而在計(jì)算機(jī)接口與通信實(shí)驗(yàn)的基礎(chǔ)實(shí)驗(yàn)中的AD模數(shù)轉(zhuǎn)換控制電路設(shè)計(jì)也是以ADC 0809控制器設(shè)計(jì)為例進(jìn)行的。

1.1.2 課程之間缺少銜接

目前北京航空航天大學(xué)數(shù)字邏輯實(shí)驗(yàn)與組成原理實(shí)驗(yàn)之間的內(nèi)容結(jié)合地比較好。在數(shù)字邏輯實(shí)驗(yàn)中所設(shè)計(jì)的基本部件(如寄存器、乘法器以及存儲(chǔ)器等)都可以在計(jì)算機(jī)組成原理實(shí)驗(yàn)中利用。但是計(jì)算機(jī)接口與通信實(shí)驗(yàn)和計(jì)算機(jī)組成原理實(shí)驗(yàn)之間的內(nèi)容銜接較差。隨著學(xué)生設(shè)計(jì)的MIPS指令集的CPU日益成熟,計(jì)算機(jī)接口與通信實(shí)驗(yàn)逐漸過渡到使用MIPS CPU來代替嵌入式軟核NIOS CPU,從而將計(jì)算機(jī)原型系統(tǒng)的底層內(nèi)容添加到計(jì)算機(jī)接口與通信實(shí)驗(yàn)中㈣。

1.1.3 課程定位不明確

每門課程的定位應(yīng)當(dāng)明確,通過一門課程解決一個(gè)問題,從而循序漸進(jìn)地達(dá)到培養(yǎng)目標(biāo)。但是目前教學(xué)中還存在各門課程相對獨(dú)立、自成體系、缺乏整體考慮的問題,學(xué)生難以建立起整體的概念。

1.2 學(xué)生還未形成進(jìn)行硬件編程的思維方式

硬件編程的思維方式與軟件編程的思維方式略有不同。硬件描述語言一般是并行執(zhí)行的。目前學(xué)生還沒有建立起并行的概念,沒有完全掌握硬件程序的調(diào)試、分析方法。因此我們在數(shù)字邏輯實(shí)驗(yàn)中要有意識(shí)地在這方面加強(qiáng)對學(xué)生的培養(yǎng),通過對這3門課程的學(xué)習(xí)使學(xué)生逐步掌握硬件設(shè)計(jì)技能。

2、一體化實(shí)驗(yàn)體系建設(shè)方案

我們需要理清計(jì)算機(jī)硬件類實(shí)驗(yàn)課程之間的關(guān)系,明確各課程的定位,從而建立一個(gè)新的、一體化的,以掌握一種硬件設(shè)計(jì)方法、設(shè)計(jì)一個(gè)實(shí)驗(yàn)平臺(tái)、系統(tǒng)地掌握計(jì)算機(jī)硬件知識(shí)、培養(yǎng)創(chuàng)新人才為目標(biāo)的,實(shí)驗(yàn)內(nèi)容循序漸進(jìn)、步步深入的,實(shí)驗(yàn)方法靈活多樣的,教學(xué)質(zhì)量大幅提高的實(shí)驗(yàn)體系和創(chuàng)新平臺(tái)。

2.1 課程關(guān)系

計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)類實(shí)驗(yàn)遵循馮·諾伊曼計(jì)算機(jī)模型。通過不同層次的實(shí)驗(yàn),可以使學(xué)生逐步深入理解計(jì)算機(jī)的內(nèi)部邏輯關(guān)系、功能部件、性能以及交互方式,掌握基于硬件描述語言和EDA工具的、進(jìn)行邏輯設(shè)計(jì)的方法和過程,完成計(jì)算機(jī)原型系統(tǒng)的設(shè)計(jì)。該設(shè)計(jì)包括綜合數(shù)字系統(tǒng)設(shè)計(jì)和調(diào)試在內(nèi)的軟件設(shè)計(jì),并且能讓學(xué)生編寫出執(zhí)行速度快、資源利用率高、性能接近于最優(yōu)的程序。

目前計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)類實(shí)驗(yàn)中的必修課主要有:數(shù)字邏輯實(shí)驗(yàn)、計(jì)算機(jī)組成原理實(shí)驗(yàn)、硬件描述語言與EDA工具實(shí)驗(yàn)、計(jì)算機(jī)接口與通信實(shí)驗(yàn),且以培養(yǎng)學(xué)生的軟硬件協(xié)同設(shè)計(jì)能力、工程實(shí)踐能力和科研實(shí)踐素養(yǎng)以及團(tuán)隊(duì)協(xié)作精神為目標(biāo)[3]。所以在進(jìn)行實(shí)驗(yàn)體系建設(shè)時(shí),我們要根據(jù)計(jì)算機(jī)系統(tǒng)的內(nèi)在邏輯關(guān)系重新整合各門課程的知識(shí)分布和銜接關(guān)系,以達(dá)到實(shí)驗(yàn)內(nèi)容相互支撐、成果形式層次遞進(jìn)的效果。

(1)知識(shí)點(diǎn)的劃分。3門課程的知識(shí)點(diǎn)要既能覆蓋全部又避免重復(fù)。

(2)課程內(nèi)容的設(shè)置。課程內(nèi)容在設(shè)置時(shí)要保證前后相繼、由淺入深、不斷深化。

(3)相同的實(shí)驗(yàn)環(huán)境。3門課程采用相同的實(shí)驗(yàn)環(huán)境(軟件環(huán)境Quartus II和FPGA板康芯實(shí)驗(yàn)板),根據(jù)課程內(nèi)容逐步設(shè)計(jì)出與課程完全吻合的實(shí)驗(yàn)平臺(tái),并采用相同的硬件描述語言Verilog。學(xué)生通過反復(fù)練習(xí),熟練掌握一種硬件設(shè)計(jì)方法、一種解決問題的思維方式、一類FPGA實(shí)驗(yàn)板的使用方法,從而保證在掌握概念和原理的同時(shí),熟練掌握硬件設(shè)計(jì)方法和技能,建立起計(jì)算機(jī)硬件整機(jī)的概念。

2.2 課程定位

計(jì)算機(jī)硬件實(shí)驗(yàn)課程的目標(biāo)在于培養(yǎng)學(xué)生的實(shí)踐動(dòng)手能力、編程設(shè)計(jì)能力、探索創(chuàng)新能力以及分析問題解決問題的能力,讓學(xué)生形成硬件編程的思維方式,并建立計(jì)算機(jī)整機(jī)概念。

下面分別介紹每門課程的定位。

2.2.1 數(shù)字邏輯實(shí)驗(yàn)

數(shù)字邏輯實(shí)驗(yàn)是基礎(chǔ)。它主要解決的問題是掌握硬件實(shí)驗(yàn)的基本技能以及組合邏輯電路和時(shí)序邏輯電路的原理。

該課程的目標(biāo)是讓學(xué)生學(xué)習(xí)實(shí)驗(yàn)平臺(tái)的使用方法,掌握硬件編程語言、EDA工具的使用、硬件描述的綜合與仿真,使學(xué)生能設(shè)計(jì)一些基本的時(shí)序邏輯電路和組合邏輯電路,培養(yǎng)學(xué)生的硬件編程思維方式。

2.2.2 計(jì)算機(jī)組成原理實(shí)驗(yàn)

計(jì)算機(jī)組成原理實(shí)驗(yàn)是核心。它起著承上啟下的作用,是讓學(xué)生建立起整機(jī)概念的關(guān)鍵。它能幫助學(xué)生理解和掌握一臺(tái)計(jì)算機(jī)整機(jī)系統(tǒng)的軟件、硬件組成及相互之間的配合。其他課程要圍繞計(jì)算機(jī)組成原理實(shí)驗(yàn)展開。數(shù)字邏輯實(shí)驗(yàn)課程要解決基本器件的設(shè)計(jì)和工具使用的問題,計(jì)算機(jī)組成原理實(shí)驗(yàn)要解決應(yīng)用微處理器的問題。本課程要求學(xué)生重點(diǎn)掌握MIPS指令系統(tǒng)及指令周期、數(shù)據(jù)通路、系統(tǒng)控制等,在此基礎(chǔ)上深化對硬件編程語言的理解。

2.2.3 計(jì)算機(jī)接口與通信實(shí)驗(yàn)

計(jì)算機(jī)接口與通信實(shí)驗(yàn)是完善、提高和應(yīng)用。學(xué)生通過對外圍器件的學(xué)習(xí),完善了計(jì)算機(jī)的整機(jī)概念。在此基礎(chǔ)上設(shè)計(jì)應(yīng)用性的實(shí)驗(yàn)對學(xué)生來說是提高。本課程重點(diǎn)掌握基本外部芯片、基本的輸入/輸出部件的設(shè)計(jì)和應(yīng)用。

3、基于計(jì)算機(jī)原型系統(tǒng)的一體化的實(shí)驗(yàn)實(shí)例

該實(shí)例利用并行接口8255A實(shí)現(xiàn)一個(gè)簡單的計(jì)算器功能,通過8255A輸入兩個(gè)8位的數(shù)據(jù),MIPS CPU將兩個(gè)數(shù)據(jù)相加或者相減,并將計(jì)算結(jié)果通過8255A輸出到數(shù)碼管上。這個(gè)實(shí)例以MIPS CPU為核心,包含了數(shù)字邏輯實(shí)驗(yàn)中設(shè)計(jì)的ALU等部件,通過計(jì)算機(jī)組成原理實(shí)驗(yàn)形成了MIPS CPU部件,再結(jié)合計(jì)算機(jī)接口與通信實(shí)驗(yàn)中設(shè)計(jì)的8255A等外圍接口部件,實(shí)現(xiàn)了一個(gè)小型的數(shù)字系統(tǒng)。如果在此基礎(chǔ)上把操作系統(tǒng)和編譯等內(nèi)容包含進(jìn)去就構(gòu)成了一個(gè)計(jì)算機(jī)原型系統(tǒng)。

3.1 設(shè)計(jì)思路

為了實(shí)現(xiàn)使用程序查詢方式在8255A與CPU之間交換數(shù)據(jù),我們需要8255A工作在0方式。根據(jù)設(shè)計(jì)要求,我們需要兩個(gè)8位數(shù)據(jù)口作為數(shù)據(jù)輸入口,一個(gè)8位數(shù)據(jù)口作為數(shù)據(jù)輸出口,共需要3個(gè)8位數(shù)據(jù)口,此外還需要一些控制信號(hào),所以至少需要兩片8255A芯片。第一片8255A的A口和B口工作在0方式,均作為數(shù)據(jù)輸入。第二片8255A的A口和B口也工作在0方式,A口作為輸入,B口作為輸出,并使用PA0作為數(shù)據(jù)輸入后完成并執(zhí)行加法運(yùn)算的信號(hào),使用PAl作為數(shù)據(jù)輸入后完成并執(zhí)行減法運(yùn)算的信號(hào)。MIPS CPU循環(huán)查詢第二塊8255A芯片的A口數(shù)據(jù),一旦發(fā)現(xiàn)輸入數(shù)據(jù)PA0或者PAl不為0,就從第一塊8255A芯片的A口和B口讀取兩個(gè)數(shù)據(jù)到某個(gè)寄存器,然后計(jì)算兩個(gè)寄存器內(nèi)的數(shù)據(jù)的和或者差,并將結(jié)果輸出到第二片8255A的B口。

3.2 系統(tǒng)的整體結(jié)構(gòu)

系統(tǒng)需要的器件主要有MIPS CPU、兩片并行接口8255A,還需要一個(gè)芯片能根據(jù)地址在內(nèi)存和兩塊8255A芯片中做出片選,部分代替總線的功能。其總體結(jié)構(gòu)如圖1所示。

在本實(shí)驗(yàn)中,當(dāng)?shù)刂沸∮?28時(shí),表示的是內(nèi)存地址,則將總線數(shù)據(jù)寫入內(nèi)存或者從內(nèi)存讀取數(shù)據(jù)到總線上;當(dāng)?shù)刂反笥?28時(shí),從兩片8255A中讀寫數(shù)據(jù)。

3.3 系統(tǒng)各模塊設(shè)計(jì)

我們首先設(shè)計(jì)系統(tǒng)的各功能模塊,接著設(shè)計(jì)MIPS匯編程序,最后生成頂層文件,綁定引腳并下載驗(yàn)證。

3.3.1 MIPS CPU模塊

MIPS CPU是一個(gè)實(shí)現(xiàn)了MIPS指令集的32位精簡指令集CPUN。本實(shí)驗(yàn)只關(guān)注MIPS CPU的外部接口,并為調(diào)試方便為MIPS CPU增加了很多接口,但實(shí)際上真正需要的接口只有CLK、DataReady、RData、PCIk、BE、RW、Adrr、WData,其作用分別是:時(shí)鐘信號(hào)、數(shù)據(jù)準(zhǔn)備好信號(hào)、讀入數(shù)據(jù)信號(hào)、時(shí)鐘輸出信號(hào)、讀取模式信號(hào)、讀寫信號(hào)、地址、寫入數(shù)據(jù)信號(hào)。

如圖2所示是MIPS CPU的符號(hào)模塊。MIPS CPU文件的時(shí)序仿真波形文件如圖3所示。

3.3.2 8255A可編程并行接口模塊

在本實(shí)驗(yàn)中,8255A芯片工作在O方式,即A口、B口、c口的高低四位可以自行指定作為輸入/輸出端口使用。我們可以根據(jù)自己的約定把一些端口作為控制位使用。8255A的符號(hào)模塊如圖4所示。

我們對8255A可編程并行接口進(jìn)行時(shí)序仿真后,8255A芯片A口輸入B口輸出的仿真波形文件如圖5所示。

3.3.3 總線控制器模塊設(shè)計(jì)

總線控制器(BUS Controller)是本次實(shí)驗(yàn)的核心器件,它的主要功能是根據(jù)MIPS CPU所要讀寫的地址,輸出相應(yīng)的片選信號(hào)和地址信息,控制將8255A的數(shù)據(jù)或者內(nèi)存中的數(shù)據(jù)輸出到總線上或者將總線上的數(shù)據(jù)寫入到8255A的某些端口或內(nèi)存中。在本實(shí)驗(yàn)中,當(dāng)?shù)刂沸∮?28時(shí),表示內(nèi)存地址,則將總線數(shù)據(jù)寫入內(nèi)存或者從內(nèi)存讀取數(shù)據(jù)到總線上;當(dāng)?shù)刂反笥诘扔?28時(shí),從兩塊8255A并口中讀取數(shù)據(jù)。當(dāng)?shù)刂反笥?28時(shí),我們要根據(jù)之前所規(guī)定的端口號(hào),產(chǎn)生相應(yīng)的8255A控制信號(hào),從而實(shí)現(xiàn)對8255A相應(yīng)的端口進(jìn)行讀寫。相應(yīng)的8255A芯片的控制信息如表1所示。

總線控制器的符號(hào)模塊如圖6所示。

總線控制器的仿真波形文件如圖7所示。

由于使用了兩片8255A芯片,因此我們需要一個(gè)譯碼器和一個(gè)多路選擇器,以便在兩片8255A芯片中做出選擇。譯碼器的符號(hào)模塊如圖8所示,多路選擇器的符號(hào)模塊如圖9所示。

另外我們還需要七段數(shù)碼管顯示電路,它能夠?qū)?shù)字轉(zhuǎn)換為七段數(shù)碼管的顯示信號(hào)。七段數(shù)碼管顯示電路的符號(hào)模塊如圖10所示。

3.4 編寫MIPS CPU匯編程序

我們將各個(gè)元件連好后,就開始編寫MIPS匯編程序。本設(shè)計(jì)使用將程序硬編碼在內(nèi)存中的做法??刂七壿嬋缦滤荆?/p>

1)第一塊8255A的初始化:CS=0,RD=1,WR=0,AI=1,A0=1,控制字為8b10010010;

2)第二塊8255A的初始化:CS=0,RD=1,WR=0,AI=1,A0=1,控制字為8b10010000;

3)然后循環(huán)查詢第二塊8255A芯片的A口,當(dāng)PA0或者PAl為高電平時(shí),表示數(shù)據(jù)準(zhǔn)備好;

4)CPU分別從第一塊8255A芯片的A口和B口讀取兩個(gè)8位整數(shù)到兩個(gè)寄存器;

5)進(jìn)行判斷,如果PAl為1執(zhí)行減法指令,如果PA0為1執(zhí)行加法指令,計(jì)算結(jié)果保存在某個(gè)寄存器中。

6)將結(jié)果輸出到第二塊8255A芯片的B口。

頂層文件的仿真波形如圖11所示。

3.5 生成頂層文件

之后我們需要對系統(tǒng)進(jìn)行綁定引腳,進(jìn)行一次全編譯。系統(tǒng)頂層文件如圖12所示。

4、結(jié)語

目前,包括數(shù)字邏輯實(shí)驗(yàn)、計(jì)算機(jī)組成原理實(shí)驗(yàn)以及計(jì)算機(jī)接口與通信實(shí)驗(yàn)在內(nèi)的系統(tǒng)結(jié)構(gòu)類實(shí)驗(yàn)已經(jīng)建成了一體化的實(shí)驗(yàn)體系。經(jīng)過多輪實(shí)驗(yàn)教學(xué)驗(yàn)證,該體系能切實(shí)提高學(xué)生的設(shè)計(jì)能力,幫助學(xué)生理解和掌握計(jì)算機(jī)基礎(chǔ)知識(shí)并建立計(jì)算機(jī)整機(jī)的概念。

猜你喜歡
教學(xué)改革
完全學(xué)分制下選課管理的思考與實(shí)踐
考試周刊(2016年76期)2016-10-09 10:08:04
金工實(shí)習(xí)教育對工科院校創(chuàng)客教育影響分析
考試周刊(2016年76期)2016-10-09 10:04:11
新形勢下小學(xué)語文教學(xué)方法研究
考試周刊(2016年76期)2016-10-09 08:47:08
譯林版英語教材的人文特點(diǎn)研究
成才之路(2016年26期)2016-10-08 11:33:49
當(dāng)前農(nóng)村學(xué)校實(shí)施“新教育實(shí)驗(yàn)”的研究
成才之路(2016年25期)2016-10-08 10:05:54
構(gòu)建和改進(jìn)現(xiàn)代化學(xué)校美育工作體系研究
成才之路(2016年25期)2016-10-08 10:04:29
中職學(xué)?!吧菊n堂”的調(diào)查研究與實(shí)踐
成才之路(2016年25期)2016-10-08 10:03:04
高校三維動(dòng)畫課程教學(xué)方法研究
成才之路(2016年25期)2016-10-08 10:00:36
基于人才培養(yǎng)的技工學(xué)校德育實(shí)效性研究
成才之路(2016年25期)2016-10-08 09:51:08
現(xiàn)代信息技術(shù)在高職數(shù)學(xué)教學(xué)改革中的應(yīng)用研究
科技視界(2016年20期)2016-09-29 12:59:03
丰都县| 兴山县| 萨迦县| 隆林| 大姚县| 株洲县| 卢湾区| 米泉市| 湘潭县| 海林市| 什邡市| 永德县| 迁西县| 广德县| 邓州市| 罗定市| 保康县| 黑水县| 兴安县| 江门市| 商丘市| 淮北市| 永丰县| 灌南县| 巍山| 台山市| 林口县| 墨玉县| 海原县| 昭觉县| 翼城县| 武鸣县| 中超| 济宁市| 商洛市| 松原市| 淮阳县| 蕲春县| 安福县| 青田县| 岳阳县|