《計(jì)算機(jī)原理實(shí)驗(yàn)》教學(xué)大綱算術(shù)邏輯運(yùn)算實(shí)驗(yàn).doc
《《計(jì)算機(jī)原理實(shí)驗(yàn)》教學(xué)大綱算術(shù)邏輯運(yùn)算實(shí)驗(yàn).doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《《計(jì)算機(jī)原理實(shí)驗(yàn)》教學(xué)大綱算術(shù)邏輯運(yùn)算實(shí)驗(yàn).doc(29頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
實(shí)驗(yàn)二 算術(shù)邏輯運(yùn)算實(shí)驗(yàn)(4 課時(shí)) [實(shí)驗(yàn)?zāi)康腯 了解運(yùn)算器的組成結(jié)構(gòu) 掌握運(yùn)算器的工作原理 學(xué)習(xí)運(yùn)算器的設(shè)計(jì)方法 掌握簡(jiǎn)單運(yùn)算器的數(shù)據(jù)傳送通路 驗(yàn)證運(yùn)算功能發(fā)生器74LS181的組合功能 [實(shí)驗(yàn)設(shè)備] TDN-CM+或TDN-CM++教學(xué)實(shí)驗(yàn)系統(tǒng)一套 [實(shí)驗(yàn)原理] 實(shí)驗(yàn)中所用的運(yùn)算器數(shù)據(jù)通路圖如圖2-1所示。圖中所示的是由兩片74LS181以并/串形式構(gòu)成的8位字長(zhǎng)的ALU。右方為低4位運(yùn)算芯片,左方為高4位運(yùn)算芯片。低位芯片的進(jìn)位輸出端Cn+4與高位芯片輸入端Cn相連,使低4位運(yùn)算產(chǎn)生的進(jìn)位送進(jìn)高4位運(yùn)算中。低位芯片的進(jìn)位輸入端Cn可與外來(lái)進(jìn)位相連,高位芯片的進(jìn)位輸出端引至外部。兩個(gè)芯片的控制端S0-S3和M各自相連,其控制電平按表2-1所示。 為進(jìn)行雙操作數(shù)運(yùn)算,運(yùn)算器的兩個(gè)數(shù)據(jù)輸入端分別由兩個(gè)數(shù)據(jù)暫存器DR1,DR2來(lái)鎖存數(shù)據(jù)。要將內(nèi)總線上的數(shù)據(jù)鎖存到DR1,DR2中,則鎖存器的控制端LDDR1,LDDR2須為高電平。當(dāng)T4脈沖來(lái)到的時(shí)候,總線上的數(shù)據(jù)就被鎖存進(jìn)DR1或DR2中了。 為控制運(yùn)算器向內(nèi)總線上輸出運(yùn)算結(jié)果,在其輸出端連接了一個(gè)三態(tài)門。若要將運(yùn)算結(jié)果輸出到總線上,則要將三態(tài)門74LS245的控制端ALU-B置低電平。否則輸出高阻狀態(tài)。 數(shù)據(jù)輸入單元(實(shí)驗(yàn)板上印有INPUT DEVICE)用以給出參與運(yùn)算的數(shù)據(jù)。其中,輸入開(kāi)關(guān)經(jīng)過(guò)一個(gè)三態(tài)門和內(nèi)總線相連,該三態(tài)門的控制信號(hào)為SW-B,取低電平時(shí),開(kāi)關(guān)上的數(shù)據(jù)則通過(guò)三態(tài)門而送入內(nèi)總線中。 總線數(shù)據(jù)顯示燈(在BUS UNIT單元中)已與內(nèi)總線相連,用來(lái)顯示內(nèi)總線上的數(shù)據(jù)??刂菩盘?hào)中除T4為脈沖信號(hào),其他均為電平信號(hào)。 圖中已將用戶需要連接的控制信號(hào)用圓圈標(biāo)明。由于實(shí)驗(yàn)電路中的時(shí)序信號(hào)已連至W/R UNIT的相應(yīng)時(shí)序信號(hào)引出端,因此,在進(jìn)行實(shí)驗(yàn)時(shí),只需將W/R UNIT的T4接至STATE UNIT的微動(dòng)開(kāi)關(guān)KK2的輸出端,按動(dòng)微動(dòng)開(kāi)關(guān),即可獲得實(shí)驗(yàn)所需的單脈沖,而S3,S2,S1,S0,Cn,M,LDDR1,LDDR2,ALU-B,SW-B各電平控制信號(hào)用SWITCH UNIT 中的二進(jìn)制數(shù)據(jù)開(kāi)關(guān)來(lái)模擬,其中Cn,ALU-B,SW-B為低電平有效,LDDR1,LDDR2為高電平有效。 對(duì)于單總線數(shù)據(jù)通路,做實(shí)驗(yàn)時(shí)要分時(shí)控制總線,即當(dāng)向DR1,DR2工作暫存器打入數(shù)據(jù)時(shí),數(shù)據(jù)開(kāi)關(guān)三態(tài)門打開(kāi),這時(shí)應(yīng)保證運(yùn)算器輸出三態(tài)門關(guān)閉;同樣,當(dāng)運(yùn)算器輸出結(jié)果至總線時(shí)應(yīng)保證數(shù)據(jù)輸入三態(tài)門關(guān)閉。 [實(shí)驗(yàn)步驟] 1. 按圖2-2連接實(shí)驗(yàn)電路并檢查無(wú)誤。圖中將用戶需要連接的信號(hào)線用小圓圈標(biāo)明。 圖2-2 2. 開(kāi)電源開(kāi)關(guān) 3. 用輸入開(kāi)關(guān)向暫存器DR1置數(shù) a) 波動(dòng)輸入開(kāi)關(guān)形成二進(jìn)制數(shù)01100101(或其他數(shù)值)。(數(shù)據(jù)顯示燈亮為0,滅為1)。 b) 使SWITCH UNIT單元中的開(kāi)關(guān)SW-B=0(打開(kāi)數(shù)據(jù)輸入三態(tài)門)、ALU-B=1(關(guān)閉ALU輸出三態(tài)門)、LDDR1=1,LDDR2=0 c) 按動(dòng)微動(dòng)開(kāi)關(guān)KK2,則將二進(jìn)制數(shù)01100101置入DR1中。 4. 用輸入開(kāi)關(guān)向暫存器DR2置數(shù) a) 波動(dòng)輸入開(kāi)關(guān)形成二進(jìn)制數(shù)10100111(或其他數(shù)值)(數(shù)據(jù)顯示燈亮為0,滅為1)。 b) SW-B=0,ALU-B=1保持不變,改變LDDR1,LDDR2,使LDDR1=0,LDDR2=1 c) 按動(dòng)微動(dòng)開(kāi)關(guān)KK2,則將二進(jìn)制數(shù)10100111置入DR2中 5. 檢驗(yàn)DR1,DR2中存的數(shù)是否正確 a) 關(guān)閉數(shù)據(jù)輸入三態(tài)門(SW-B=1),打開(kāi)ALU輸出三態(tài)門(ALU-B=0),并使LDDR1=0,LDDR2=0,關(guān)閉寄存器。 b) 置S3,S2,S1,S0,M為11111,總線顯示燈則顯示DR1中的數(shù) c) 置S3,S2,S1,S0,M為10101,總線顯示燈則顯示DR2中的數(shù) 6. 改變運(yùn)算器的功能設(shè)置,觀察運(yùn)算器的輸出 a) SW-B=1,ALU-B=0保持不變 b) 按表2-2置S3,S2,S1,S0,M,Cn的數(shù)值,并觀察總線顯示燈顯示的結(jié)果。例如置S3,S2,S1,S0,M,Cn的數(shù)值為100101,運(yùn)算器做加法運(yùn)算,S3,S2,S1,S0,M,Cn的數(shù)值為011000,運(yùn)算器做減法運(yùn)算。 7. 驗(yàn)證74LS181的算術(shù)運(yùn)算和邏輯運(yùn)算功能(采用正邏輯) 在給定DR1=65,DR2=A7的情況下,改變運(yùn)算器的功能設(shè)置,觀察運(yùn)算器的輸出,填入表2-1,并和理論分析進(jìn)行比較、驗(yàn)證。 表2-1 DR1 DR2 S3 S2 S1 S0 M=0 (算術(shù)運(yùn)算) M=1 (邏輯運(yùn)算) Cn=1 無(wú)進(jìn)位 Cn=0 有進(jìn)位 65 A7 0 0 0 0 F=65 F=66 F=9A 65 A7 0 0 0 1 F=E7 F=E8 F=18 65 A7 0 0 1 0 F=7D F=7E F=82 0 0 1 1 F= F= F= 0 1 0 0 F= F= F= 0 1 0 1 F= F= F= 0 1 1 0 F= F= F= 0 1 1 1 F= F= F= 1 0 0 0 F= F= F= 1 0 0 1 F= F= F= 1 0 1 0 F= F= F= 1 0 1 1 F= F= F= 1 1 0 0 F= F= F= 1 1 0 1 F= F= F= 1 1 1 0 F= F= F= 1 1 1 1 F= F= F= 實(shí)驗(yàn)三 進(jìn)位控制實(shí)驗(yàn)(3課時(shí)) [實(shí)驗(yàn)?zāi)康腯 了解帶進(jìn)位控制的運(yùn)算器的組成結(jié)構(gòu) 驗(yàn)證帶進(jìn)位控制的算術(shù)運(yùn)算功能發(fā)生器的功能 按指定數(shù)據(jù)完成集中指定的算術(shù)運(yùn)算 [實(shí)驗(yàn)設(shè)備] TDN-CM+或TDN-CM++教學(xué)實(shí)驗(yàn)系統(tǒng)一套 [實(shí)驗(yàn)原理] 圖3-1 進(jìn)位控制運(yùn)算器的實(shí)驗(yàn)原理如圖3-1所示,在實(shí)驗(yàn)2的基礎(chǔ)上增加進(jìn)位控制部分。運(yùn)算器最高位進(jìn)位輸出Cn+4連接到一個(gè)鎖存器(用74LS74實(shí)現(xiàn))的輸入端D,其寫入由T4和AR信號(hào)控制。鎖存器控制端的控制信號(hào)AR必須置為低電平,T4是脈沖信號(hào),實(shí)驗(yàn)時(shí)將T4連至STATE UNIT的微動(dòng)開(kāi)關(guān)KK2上。當(dāng)T4脈沖來(lái)到時(shí),進(jìn)位結(jié)果就被鎖存到鎖存器中了,發(fā)光二極管這是顯示為“滅”。同時(shí)也將本次的進(jìn)位輸出結(jié)果帶進(jìn)了下次的運(yùn)算中,作為下次運(yùn)算的進(jìn)位輸入。 [實(shí)驗(yàn)步驟] 1. 按圖3-2連接實(shí)驗(yàn)線路,仔細(xì)檢查無(wú)誤。 圖3-2 2. 打開(kāi)電源開(kāi)關(guān) 3. 用輸入開(kāi)關(guān)向暫存器DR1和DR2置數(shù),方法實(shí)驗(yàn)2. 4. 關(guān)閉數(shù)據(jù)輸入三態(tài)門(SW-B=1),打開(kāi)ALU輸出三態(tài)門(ALU-B=0),并使LDDR1=0,LDDR2=0,關(guān)閉寄存器打入控制門 5. 對(duì)進(jìn)位標(biāo)志清零 實(shí)驗(yàn)板上SWITCH UNIT單元中的CLR開(kāi)關(guān)為標(biāo)志CY,ZI的清零開(kāi)關(guān),它為零時(shí)是清零狀態(tài),所以將此開(kāi)關(guān)做1->0->1操作,即可使標(biāo)志位清零。注意,進(jìn)位標(biāo)志指示燈CY亮?xí)r表示進(jìn)位標(biāo)志為0,無(wú)進(jìn)位。標(biāo)志指示燈CY滅時(shí)表示進(jìn)位為“1”,有進(jìn)位。 6. 驗(yàn)證帶進(jìn)位運(yùn)算及進(jìn)位鎖存功能 使Cn=1,AR=0,進(jìn)行帶進(jìn)位算術(shù)運(yùn)算。例如做加法運(yùn)算,使ALU-B=0,S3,S2,S1,S0,M狀態(tài)為10010,此時(shí)數(shù)據(jù)總線上顯示的數(shù)據(jù)為DR1加DR2加當(dāng)前進(jìn)位標(biāo)志的和。但這時(shí)的進(jìn)位狀態(tài)還沒(méi)有打入進(jìn)位鎖存器中,它是要靠T4節(jié)拍脈沖來(lái)打入的。這個(gè)結(jié)果是否有進(jìn)位產(chǎn)生,則要按動(dòng)微動(dòng)開(kāi)關(guān)KK2,若進(jìn)位指示燈亮,則無(wú)進(jìn)位,反之則有進(jìn)位。因做加法運(yùn)算時(shí)數(shù)據(jù)總線一直顯示的數(shù)據(jù)為DR1+DR2+CY,所以當(dāng)有進(jìn)位輸入到進(jìn)位鎖存器后,總線顯示的數(shù)據(jù)將為加上當(dāng)前進(jìn)位鎖存器中鎖存的進(jìn)位位的結(jié)果。 實(shí)驗(yàn)四 移位運(yùn)算實(shí)驗(yàn)(2 課時(shí)) [實(shí)驗(yàn)?zāi)康腯 了解移位發(fā)生器74LS299的功能 驗(yàn)證移位控制電路的組合功能 [實(shí)驗(yàn)設(shè)備] TDN-CM+或TDN-CM++教學(xué)實(shí)驗(yàn)系統(tǒng)一套 [實(shí)驗(yàn)原理] 圖4-1 移位運(yùn)算實(shí)驗(yàn)原理圖 圖4-1所示為移位控制電路。其中使用了一片74LS299作為移位發(fā)生器,其8位輸入/輸出端可連接至內(nèi)部總線。74LS299移位器的片選控制信號(hào)為299-B,在低電平時(shí)有效。T4為其控制脈沖信號(hào),由W/R UNIT單元中得T4接至STATE UNIT單元中的單脈沖發(fā)生器KK2上產(chǎn)生,S0、S1、M,作為移位控制信號(hào),此移位控制邏輯功能如表4-1所示。 299-B S1 S0 M 功能 0 0 0 任意 保持 0 1 0 0 循環(huán)右移 0 1 0 1 帶進(jìn)位循環(huán)右移 0 0 1 0 循環(huán)左移 0 0 1 1 帶進(jìn)位循環(huán)左移 任意 1 1 任意 裝數(shù) 表4.1 移位控制電路功能表 [實(shí)驗(yàn)步驟] 1. 按圖4-2連接實(shí)驗(yàn)線路,仔細(xì)檢查無(wú)誤。 圖4-2 移位運(yùn)算實(shí)驗(yàn)電路接線圖 2. 打開(kāi)電源開(kāi)關(guān)。 3. 向移位寄存器置數(shù)。 a) 撥動(dòng)輸入開(kāi)關(guān)形成二進(jìn)制數(shù)01101011(或其它數(shù)值)。 b) 使SWITCH UNIT 單元中的開(kāi)關(guān)SW-B=0,打開(kāi)數(shù)據(jù)輸入三態(tài)門。 c) 使S0=1、S1=1,并撥動(dòng)微動(dòng)開(kāi)關(guān)KK2,則將01101011置入了移位寄存器。 d) 使SW-B=1,關(guān)閉數(shù)據(jù)輸入三態(tài)門。 4. 移位運(yùn)算操作。參照表4.1中的內(nèi)容,先將S1、S0置為0、0,檢查移位寄存器單元裝入的數(shù)是否正確,然后通過(guò)改變S0、S1、M、299-B的狀態(tài),并按動(dòng)微動(dòng)開(kāi)關(guān)KK2,觀察移位結(jié)果。 實(shí)驗(yàn)五 存儲(chǔ)系統(tǒng)實(shí)驗(yàn)(5課時(shí)) [實(shí)驗(yàn)?zāi)康腯 掌握靜態(tài)隨機(jī)存儲(chǔ)器RAM工作特性及數(shù)據(jù)的讀寫方法 [實(shí)驗(yàn)設(shè)備] TDN-CM+或TDN-CM++教學(xué)實(shí)驗(yàn)系統(tǒng)一套 [實(shí)驗(yàn)原理] 圖5-1 存儲(chǔ)器實(shí)驗(yàn)原理圖 實(shí)驗(yàn)所用的半導(dǎo)體靜態(tài)存儲(chǔ)器電路原理如圖5-1所示,實(shí)驗(yàn)中的靜態(tài)存儲(chǔ)器由一片6116(2K*8)構(gòu)成,其數(shù)據(jù)線接至數(shù)據(jù)總線,地址線由地址鎖存器(74LS273)給出。地址燈AD0-AD7與地址線相連,顯示地址線內(nèi)容。數(shù)據(jù)開(kāi)關(guān)經(jīng)一個(gè)三態(tài)門(74LS245)連至數(shù)據(jù)總線,分時(shí)給出地址和數(shù)據(jù)。 因地址寄存器為8位,所以接入6116的地址為A7-A0,而高三位A8-A10接地,所以其實(shí)際容量為256字節(jié)。6116有三條控制線:CE(片選線)、OE(讀線)、WE(寫線)。當(dāng)片選有效(CE=0)時(shí),OE=0時(shí)進(jìn)行讀操作,WE=0時(shí)進(jìn)行寫操作。本實(shí)驗(yàn)中將OE常接地,在此情況下,當(dāng)CE=0、WE=0時(shí)進(jìn)行讀操作。CE=0、WE=1時(shí)進(jìn)行寫操作,其寫時(shí)間與T3脈沖寬度一致。 實(shí)驗(yàn)時(shí),將T3脈沖接至實(shí)驗(yàn)板上時(shí)序電路模塊的TS3響應(yīng)插孔中,其脈沖寬度可調(diào),其他電平控制信號(hào)由SWITCH UNIT單元的二進(jìn)制開(kāi)關(guān)模擬,其中SW-B為低電平有效,LDAR為高電平有效。 [實(shí)驗(yàn)步驟] 1. 形成時(shí)鐘脈沖信號(hào)T3,具體接線方法和操作步驟如下: a) 接通電源,用示波器接入方波信號(hào)源的輸出插孔H23,調(diào)節(jié)電位器W1及W2,使H23端輸出實(shí)驗(yàn)所期望的頻率及占空比的方波。 b) 將時(shí)序電路模塊(STATE UNIT)單元中的Φ和信號(hào)源單元(SIGNAL UNIT)中的H23排針相連。 c) 在時(shí)序電路模塊中有兩個(gè)二進(jìn)制開(kāi)關(guān)STOP和STEP。將STOP開(kāi)關(guān)置為RUN狀態(tài)、STEP開(kāi)關(guān)置為EXEC狀態(tài)時(shí),按動(dòng)微動(dòng)開(kāi)關(guān)START,則TS3端即輸出為連續(xù)的方波信號(hào),此時(shí)調(diào)節(jié)電位器W1,用示波器觀察,使T3輸出實(shí)驗(yàn)要求的脈沖信號(hào)。當(dāng)STOP開(kāi)關(guān)置為RUN狀態(tài)、STEP開(kāi)關(guān)置為STEP狀態(tài)時(shí),每按動(dòng)一次微動(dòng)開(kāi)關(guān)START,則T3輸出一個(gè)單脈沖,其脈沖寬度與連續(xù)方式相同。若用PC聯(lián)機(jī)軟件中的示波器功能也能看到波形,可以代替真實(shí)示波器。 2. 按圖5-2連接實(shí)驗(yàn)線路,仔細(xì)查線無(wú)誤后接通電源。由于存儲(chǔ)器模塊內(nèi)部的連線已經(jīng)接好,因此只需完成實(shí)驗(yàn)電路的形成、控制信號(hào)模擬開(kāi)關(guān)、時(shí)鐘脈沖信號(hào)T3與存儲(chǔ)模塊的外部連接。 圖5-2 實(shí)驗(yàn)接線圖 3. 寫存儲(chǔ)器 給存儲(chǔ)器的00、01、02、03、04地址單元分別寫入數(shù)據(jù)11、12、13、14、15。 由上面的存儲(chǔ)器實(shí)驗(yàn)原理圖看出,由于數(shù)據(jù)和地址全由一個(gè)數(shù)據(jù)開(kāi)關(guān)來(lái)給出,這就要分時(shí)進(jìn)行地址和數(shù)據(jù)的傳輸。下面的寫存儲(chǔ)器要分兩個(gè)步驟,第一步寫地址,先關(guān)掉存儲(chǔ)器的片選(CE=1),打開(kāi)地址鎖存器門控信號(hào)(LDAR=1),打開(kāi)數(shù)據(jù)開(kāi)關(guān)三態(tài)門(SW-B=0),由開(kāi)關(guān)給出要寫存儲(chǔ)單元的地址,按動(dòng)START產(chǎn)生T3脈沖,將地址打入到地址鎖存器;第二步寫數(shù)據(jù),關(guān)掉地址鎖存器門控信號(hào)(LDAR=0),打開(kāi)存儲(chǔ)器片選,使處于寫狀態(tài)(CE=0,WE=1),由開(kāi)關(guān)給出此單元要寫入的數(shù)據(jù),按動(dòng)START產(chǎn)生T3脈沖將數(shù)據(jù)寫入到當(dāng)前的地址單元中。寫其他單元依次循環(huán)上述步驟。寫存儲(chǔ)器流程如下:(以向00號(hào)單元寫入11為例) 4. 讀存儲(chǔ)器 依次讀出第00、01、02、03、04號(hào)單元的內(nèi)容,觀察上述各單元的內(nèi)容是否與前面寫入的一致。同寫操作類似,讀每個(gè)單元也需要兩步,第一步寫地址,先關(guān)掉存儲(chǔ)器的片選(CE=1),打開(kāi)地址鎖存器門控信號(hào)(LDAR=1),打開(kāi)數(shù)據(jù)開(kāi)關(guān)三態(tài)門(SW-B=0),由開(kāi)關(guān)給出要寫存儲(chǔ)單元的地址,按動(dòng)START產(chǎn)生T3脈沖將地址打入到地址鎖存器;第二步讀存儲(chǔ)器,關(guān)掉地址鎖存器門控信號(hào)(LDAR=0),關(guān)掉數(shù)據(jù)開(kāi)關(guān)三態(tài)門(SW-B=1),使片選存儲(chǔ)器處于讀狀態(tài)(CE=0,WE=0),此時(shí)數(shù)據(jù)總線上顯示的數(shù)據(jù)即為從存儲(chǔ)器當(dāng)前地址中讀出的數(shù)據(jù)內(nèi)容。讀其它單元依次循環(huán)上述步驟。 讀存儲(chǔ)器操作流程如下:(以從00號(hào)單元讀出11數(shù)據(jù)為例) 實(shí)驗(yàn)六 系統(tǒng)總線控制實(shí)驗(yàn)(4課時(shí)) [實(shí)驗(yàn)?zāi)康腯 理解總線的概念及其特性 掌握總線傳輸控制特性 [實(shí)驗(yàn)設(shè)備] TDN-CM+或TDN-CM++教學(xué)實(shí)驗(yàn)系統(tǒng)一套 [實(shí)驗(yàn)原理] 實(shí)驗(yàn)所用總線傳輸實(shí)驗(yàn)框圖如圖6-1所示,它將集中不同的設(shè)備掛至總線上,有存儲(chǔ)器、輸入設(shè)備、輸出設(shè)備、寄存器。這些設(shè)備都需要有三態(tài)輸出控制,按照傳輸要求恰當(dāng)有序的控制它們,就可實(shí)現(xiàn)總線信息傳輸。 圖6. 1 總線傳輸實(shí)驗(yàn)框圖 實(shí)驗(yàn)要求: 根據(jù)掛在總線上的幾個(gè)基本部件,設(shè)計(jì)一個(gè)簡(jiǎn)單的流程: a) 輸入設(shè)備將一個(gè)數(shù)打入R0寄存器; b) 輸入設(shè)備將另一個(gè)數(shù)打入地址寄存器; c) 將R0寄存器中的數(shù)寫入到當(dāng)前地址的存儲(chǔ)器中; d) 將當(dāng)前地址的存儲(chǔ)器中的數(shù)用LED數(shù)碼管顯示 [實(shí)驗(yàn)步驟] 1. 按照?qǐng)D6-2實(shí)驗(yàn)接線圖進(jìn)行連線。 2. 具體操作步驟圖示如下: 初始狀態(tài)應(yīng)設(shè)為:首先應(yīng)關(guān)閉所有三態(tài)門(SW-B=1,CS=1,R0-B=1,LED-B =1),并將關(guān)聯(lián)的信號(hào)置為:LDAR=0,LDR0=0,W/R(RAM)=1,W/R(LED)=1。然后參照如下操作流程,先給數(shù)據(jù)開(kāi)關(guān)置數(shù),打開(kāi)數(shù)據(jù)輸出三態(tài)門,撥動(dòng)LDR0控制信號(hào)做0->1->0動(dòng)作,使產(chǎn)生一個(gè)上升沿將數(shù)據(jù)打入到R0中;然后繼續(xù)給數(shù)據(jù)開(kāi)關(guān)置數(shù),撥動(dòng)LDAR控制信號(hào)做0->1->0動(dòng)作,使產(chǎn)生一個(gè)上升沿將數(shù)據(jù)打入到AR中;關(guān)閉數(shù)據(jù)開(kāi)關(guān)三態(tài)門,打開(kāi)R0寄存器輸出控制,使存儲(chǔ)器處于寫狀態(tài)(W/R=0,CS=0)將R0中的數(shù)據(jù)寫到存儲(chǔ)器中;關(guān)閉存儲(chǔ)器片選,關(guān)閉R0寄存器輸出,使存儲(chǔ)器處于讀狀態(tài)(W/R=1,CS=0),打開(kāi)LED片選,撥動(dòng)LED的W/R控制信號(hào)做1->0->1動(dòng)作,使產(chǎn)生一個(gè)下降沿將數(shù)據(jù)打入到LED中。 圖6. 2 實(shí)驗(yàn)接線圖 圖6. 3 實(shí)驗(yàn)步驟圖 實(shí)驗(yàn)七 微控制器的組成與設(shè)計(jì)實(shí)驗(yàn)(6課時(shí)) [實(shí)驗(yàn)?zāi)康腯 掌握時(shí)序產(chǎn)生器的組成原理 掌握微程序控制器的組成原理 掌握微程序的編制、寫入,觀察微程序的運(yùn)行 [實(shí)驗(yàn)設(shè)備] TDN-CM+或TDN-CM++教學(xué)實(shí)驗(yàn)系統(tǒng)一套 [實(shí)驗(yàn)原理] 微程序控制器的基本任務(wù)是完成當(dāng)前指令的翻譯和執(zhí)行,即將當(dāng)前指令的功能轉(zhuǎn)換成可以控制硬件邏輯部件工作的微命令序列,完成數(shù)據(jù)傳送和各種處理操作。它的執(zhí)行方法就是將控制各部件動(dòng)作的微命令的集合進(jìn)行編碼,即將微命令的集合仿照機(jī)器指令一樣,用數(shù)字代碼的形式表示,這種表示成為微指令。這樣就可以用一個(gè)微指令序列表示一條機(jī)器指令,這種微指令序列稱為微程序。微程序存儲(chǔ)在一種專用的存儲(chǔ)器中,稱為控制存儲(chǔ)器。 實(shí)驗(yàn)所用的時(shí)序電路原理如圖7-1所示,可產(chǎn)生4個(gè)等間隔的時(shí)序信號(hào)TS1-TS4,其中Φ為時(shí)序信號(hào),由實(shí)驗(yàn)臺(tái)右上方的方波信號(hào)源提供,可產(chǎn)生頻率及脈寬可調(diào)的方波信號(hào)。學(xué)生可根據(jù)實(shí)驗(yàn)自行選擇方波信號(hào)的頻率及脈寬。為了便于控制程序的運(yùn)行,時(shí)序電路發(fā)生器也設(shè)置了一個(gè)啟??刂朴|發(fā)器Cr,是TS1-TS4信號(hào)輸出可控。圖中STEP(單步)、STOP(停機(jī))分別是來(lái)自實(shí)驗(yàn)板上方中部的兩個(gè)二進(jìn)制開(kāi)關(guān)STEP、STOP的模擬信號(hào)。START鍵是來(lái)自實(shí)驗(yàn)板上方中不一個(gè)微動(dòng)開(kāi)關(guān)START的按鍵信號(hào)。當(dāng)STEP開(kāi)關(guān)為0時(shí)(EXEC),一旦按下啟動(dòng)鍵,運(yùn)行觸發(fā)器Cr一直處于“1”狀態(tài),因此時(shí)序信號(hào)TS1-TS4將周而復(fù)始地發(fā)送出去。當(dāng)STEP為1(STEP)時(shí),一旦按下啟動(dòng)鍵,機(jī)器便處于單步運(yùn)行狀態(tài),即此時(shí)只發(fā)送一個(gè)CPU周期的時(shí)序信號(hào)就停機(jī)。利用單步方式,每次只讀一條微指令,可以觀察微指令的代碼與當(dāng)前微指令的執(zhí)行結(jié)果。另外,當(dāng)機(jī)器連續(xù)運(yùn)行時(shí),如果STOP開(kāi)關(guān)置“1”(STOP),也會(huì)使機(jī)器停機(jī)。 由于時(shí)序電路的內(nèi)部線路已經(jīng)連好,所以只需將時(shí)序電路與方波信號(hào)源連接(即將時(shí)序電路的時(shí)鐘脈沖輸入端Φ接至方波信號(hào)發(fā)生器輸出端H23),時(shí)序電路的CLR已接至實(shí)驗(yàn)板左下方的CLR模擬開(kāi)關(guān)上。 微程序控制電路與微指令格式 a) 微程序控制電路 微程序控制器的組成如圖7-2,其中控制存儲(chǔ)器采用3片2816的EEPROM,具有掉電保護(hù)功能,微命令寄存器18位,用兩片8D觸發(fā)器(273)和一片4D(175)觸發(fā)器組成。微地址寄存器6位,用三片正沿觸發(fā)器的雙D觸發(fā)器(74)組成,它們帶有清“0”端和預(yù)置端。在不判別測(cè)試的情況下,T2時(shí)刻打入微地址寄存器的內(nèi)容即為下一條微指令地址。當(dāng)T4時(shí)刻進(jìn)行測(cè)試判別時(shí),轉(zhuǎn)移邏輯滿足條件后輸出的負(fù)脈沖通過(guò)強(qiáng)置端將某一觸發(fā)器置為“1”狀態(tài),完成地址修改。 在該實(shí)驗(yàn)電路中設(shè)有一個(gè)編程開(kāi)關(guān)(位于實(shí)驗(yàn)板右上方),它具有三種狀態(tài):PROM(編程)、READ(校驗(yàn))、RUN(運(yùn)行)。當(dāng)處于編程狀態(tài)時(shí),學(xué)生可根據(jù)微地址和微指令格式將微指令二進(jìn)制代碼寫入到控制存儲(chǔ)器2816中。當(dāng)處于校驗(yàn)狀態(tài)時(shí),可以對(duì)寫入控制存儲(chǔ)器中的二進(jìn)制代碼進(jìn)行驗(yàn)證,從而可以判斷寫入的二進(jìn)制代碼是否正確。當(dāng)處于運(yùn)行狀態(tài)時(shí),只要給出微程序的入口微地址,則可根據(jù)微程序流程圖自動(dòng)執(zhí)行微程序。圖中微地址寄存器輸出端增加了一組三態(tài)門,目的是隔離觸發(fā)器的輸出,增加抗干擾能力,并用來(lái)驅(qū)動(dòng)微地址顯示燈。 b) 微指令格式 微指令字長(zhǎng)24位,其控制位順序如表7-1。其中UA5-UA0為6位的后續(xù)微地址,A、B、C為三個(gè)譯碼字段,分別由三個(gè)控制位譯碼出多位。 表6-1 微指令格式 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 S3 S2 S1 S0 M Cn WE A9 A8 A B C μA5 μA4 μA3 μA2 μA1 μA0 A字段 B字段 C字段 15 14 13 選擇 12 11 10 選擇 9 8 7 選擇 0 0 0 0 0 0 0 0 0 0 0 1 LDRi 0 0 1 RS-B 0 0 1 P(1) 0 1 0 LDDR1 0 1 0 RD-B 0 1 0 P(2) 0 1 1 LDDR2 0 1 1 RI-B 0 1 1 P(3) 1 0 0 LDIR 1 0 0 299-B 1 0 0 P(4) 1 0 1 LOAD 1 0 1 ALU-B 1 0 1 AR 1 1 0 LDAR 1 1 0 PC-B 1 1 0 LDPC B字段中的RS-B、RD-B、R1-B分別為源寄存器選通信號(hào)、目的寄存器選通信號(hào)及變址寄存器選通信號(hào),其功能是根據(jù)機(jī)器指令來(lái)進(jìn)行三個(gè)工作寄存器R0、R1及R2的選通譯碼,其原理如圖7-3,圖中10-14為指令寄存器的0-4位,LDRi為打入工作寄存器信號(hào)的譯碼器使能控制位。 圖7-3 寄存器譯碼 C字段中的P(1) — P(4) 是四個(gè)測(cè)試位,其功能是根據(jù)機(jī)器指令及相應(yīng)微代碼進(jìn)行譯碼,使微程序轉(zhuǎn)入相應(yīng)的微地址入口,從而實(shí)現(xiàn)微程序的順序、分支、循環(huán)運(yùn)行,其原理如圖7-4所示,圖中17-12為指令寄存器的7-2位輸出,SE5-SE1為微控器單元微地址鎖存器的強(qiáng)置端輸出。AR為算術(shù)運(yùn)算是否影響進(jìn)位及判零標(biāo)志控制位,其為零有效。 圖7-4 指令譯碼 [實(shí)驗(yàn)步驟] (1)本實(shí)驗(yàn)采用五條機(jī)器指令:IN(輸入)、ADD(二進(jìn)制加法)、STA(存數(shù))、OUT(輸出)、JMP(無(wú)條件轉(zhuǎn)移),其指令格式如下(前4位為操作碼): 其中IN為單字長(zhǎng)(8位),其余為雙字長(zhǎng)指令,為addr對(duì)應(yīng)的二進(jìn)制地址碼。 為了向RAM中裝入程序和數(shù)據(jù),檢查寫入是否正確,并能啟動(dòng)程序執(zhí)行,還必須設(shè)計(jì)三個(gè)控制臺(tái)操作微程序。 存儲(chǔ)器讀操作(KRD):撥動(dòng)總清開(kāi)關(guān)CLR后,控制臺(tái)開(kāi)關(guān)SWB、SWA為00時(shí),按START微動(dòng)開(kāi)關(guān),可對(duì)RAM連續(xù)手動(dòng)讀操作。 存儲(chǔ)器寫操作(KWE):撥動(dòng)總清開(kāi)關(guān)CLR后,控制臺(tái)開(kāi)關(guān)SWB、SWA置為01時(shí),按START微動(dòng)開(kāi)關(guān)可對(duì)RAM進(jìn)行連續(xù)手動(dòng)寫入。 啟動(dòng)程序:撥動(dòng)總清開(kāi)關(guān)CLR后,控制臺(tái)開(kāi)關(guān)SWB、SWA置為11時(shí),按START微動(dòng)開(kāi)關(guān),即可轉(zhuǎn)入到第01號(hào)取指微指令,啟動(dòng)程序運(yùn)行。 上述三條控制臺(tái)指令用兩個(gè)開(kāi)關(guān)SWB、SWA的狀態(tài)來(lái)設(shè)置,其定義如下: 圖7-5為所設(shè)計(jì)的幾條機(jī)器指令對(duì)應(yīng)的參考微程序流程圖,將全部微程序按微指令格式變成二進(jìn)制代碼,可得到表7-2的二進(jìn)制代碼表。 圖7-5中一個(gè)舉行方框表示一條微指令,方框中的內(nèi)容為該指令執(zhí)行的微操作,右上角的數(shù)字是該條指令的微地址,為表示方便,所有微地址使用八進(jìn)制表示。向下的箭頭指出了下一條要執(zhí)行的指令。P(1)-P(4)為測(cè)試字,根據(jù)條件使微程序產(chǎn)生分支。 表7-2 二進(jìn)制微代碼表 微地址 S3 S2 S1 S0 M CN WE A9 A8 A B C μA5…μA0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 1 0 0 0 0 0 1 0 0 2 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 3 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 4 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 0 1 0 1 0 5 0 0 0 0 0 0 0 1 1 0 1 0 0 0 1 0 0 0 0 0 0 1 1 0 0 6 1 0 0 1 0 1 0 1 1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 1 0 7 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 1 0 0 0 0 0 1 1 1 2 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 1 0 0 0 0 1 1 1 1 3 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 4 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 1 0 0 1 0 1 1 0 1 5 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 6 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 7 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 1 0 1 2 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 1 0 0 1 0 0 1 0 2 1 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 1 0 0 1 0 1 0 0 2 2 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 1 1 1 2 3 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 2 5 0 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 1 2 6 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 0 0 0 0 0 0 1 2 7 0 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 0 0 0 1 0 0 0 0 3 0 0 0 0 0 0 1 1 0 1 0 0 0 1 0 1 0 0 0 0 1 0 0 0 1 (2)按圖7-6連接實(shí)驗(yàn)線路,仔細(xì)查線無(wú)誤后接通電源。 圖7-6 微控器實(shí)驗(yàn)接線圖 (3)觀測(cè)時(shí)序信號(hào) 用雙蹤示波器(或用聯(lián)機(jī)軟件的PC示波器功能)觀察方波信號(hào)源的輸出端H23,調(diào)節(jié)電位器W1,使輸出波形的頻率最慢。將時(shí)序電路中的STOP開(kāi)關(guān)置為RUN,STEP開(kāi)關(guān)置為EXEC。按動(dòng)START按鍵,測(cè)量TS1、TS2、TS3、TS4各點(diǎn)的波形,比較它們的相互關(guān)系,畫出其波形,并標(biāo)注測(cè)量所得的脈沖寬度,見(jiàn)圖7-7。 圖7-7 時(shí)序狀態(tài)圖 (4)觀察微程序控制器的工作原理 a)編程 1)將編程開(kāi)關(guān)置為PROM(編程)狀態(tài)。 2)將實(shí)驗(yàn)板上STATE UNIT中的STEP置為STEP,STOP置為RUN狀態(tài)。 3)用二進(jìn)制模擬開(kāi)關(guān)置微地址MA5-MA0。 4)在MK24-MK1開(kāi)關(guān)上置微代碼,24位開(kāi)關(guān)對(duì)應(yīng)24位顯示燈,開(kāi)關(guān)量為0時(shí)燈滅,開(kāi)關(guān)量為1時(shí)燈滅。 5)啟動(dòng)時(shí)序電路(按動(dòng)啟動(dòng)按鈕START),即將微代碼寫入到EEPROM2816的相應(yīng)地址對(duì)應(yīng)的單元中。 6)重復(fù)3)-5)步驟,將表5-2的微代碼寫入2816。 b)校驗(yàn) 1)將編程開(kāi)關(guān)置為READ(校驗(yàn))狀態(tài)。 2)將實(shí)驗(yàn)板的STEP開(kāi)關(guān)置為STEP狀態(tài)。STOP開(kāi)關(guān)置為RUN狀態(tài)。 3)用二進(jìn)制開(kāi)關(guān)置好微地址MA5-MA0。 4)按動(dòng)START鍵,啟動(dòng)時(shí)序電路,讀出微代碼。觀察顯示燈MD24-MD1的狀態(tài)(燈亮為0,燈滅為1),檢查讀出的微代碼是否與寫入的相同。如果不同,則將開(kāi)關(guān)置于PROM編程狀態(tài),重新執(zhí)行a)編程步驟即可。 c)單步運(yùn)行 1)將編程開(kāi)關(guān)置于RUN(運(yùn)行)狀態(tài)。 2)實(shí)驗(yàn)板的STEP及STOP開(kāi)關(guān)保持原狀。 3)操作CLR開(kāi)關(guān)(撥動(dòng)開(kāi)關(guān)在實(shí)驗(yàn)板右下角)使CLR信號(hào)1->0->1,微地址寄存器MA5-MA0清零,從而明確本機(jī)的運(yùn)行入口微地址為000000(二進(jìn)制)。 4)按動(dòng)START鍵,啟動(dòng)時(shí)序電路,則每按動(dòng)一次啟動(dòng)鍵,讀出一條微指令后停機(jī),此時(shí)實(shí)驗(yàn)臺(tái)上的微地址顯示燈和微命令顯示燈將顯示所讀出的一條指令。 注意:在當(dāng)前條件下,可將MICRO-CONTROLLER單元的SE6-SE1接至SWITCH UNIT中的S3-Cn對(duì)應(yīng)二進(jìn)制開(kāi)關(guān)上,可通過(guò)強(qiáng)置端SE1-SE6人為設(shè)置分支地址。首先將SE1-SE6對(duì)應(yīng)二進(jìn)制開(kāi)關(guān)置為1,當(dāng)需要人為設(shè)置分支地址時(shí),將某個(gè)或幾個(gè)二進(jìn)制開(kāi)關(guān)置0,相應(yīng)的微地址位即被強(qiáng)置為1,從而改變下一條微指令的地址。(二進(jìn)制開(kāi)關(guān)置為0,相應(yīng)的微地址位將被強(qiáng)置為0) d)連續(xù)運(yùn)行 1)將編程開(kāi)關(guān)置為RUN(運(yùn)行)狀態(tài)。 2)將實(shí)驗(yàn)板的單步開(kāi)關(guān)STEP置為EXEC狀態(tài)。 3)使CLR從1->0->1,此時(shí)微地址寄存器清“0”,從而給出取指微指令的入口地址為000000(二進(jìn)制)。 4)啟動(dòng)時(shí)序電路,則可連續(xù)讀出微指令。 實(shí)驗(yàn)八 基本模型機(jī)的設(shè)計(jì)與實(shí)現(xiàn)(4課時(shí)) [實(shí)驗(yàn)?zāi)康腯 在掌握部件單元電路實(shí)驗(yàn)的基礎(chǔ)上,進(jìn)一步將其組成系統(tǒng)構(gòu)造一臺(tái)基本模型計(jì)算機(jī) 為其定義五條機(jī)器指令,并編寫相應(yīng)的微程序,具體上機(jī)調(diào)試掌握整機(jī)概念 [實(shí)驗(yàn)設(shè)備] TDN-CM+或TDN-CM++教學(xué)實(shí)驗(yàn)系統(tǒng)一套 PC微機(jī)一臺(tái) [實(shí)驗(yàn)原理] 部件實(shí)驗(yàn)過(guò)程中,各部件單元的控制信號(hào)是認(rèn)為模擬產(chǎn)生的,而本次試驗(yàn)將在微程序控制下自動(dòng)產(chǎn)生各部件單元控制信號(hào),實(shí)現(xiàn)特定指令的功能。這里,計(jì)算機(jī)數(shù)據(jù)通路的控制將由微程序控制器來(lái)完成,CPU從內(nèi)存中取出一條機(jī)器指令到指令執(zhí)行結(jié)束的一個(gè)指令周期全部由微指令組成的序列來(lái)完成,及一條機(jī)器指令對(duì)應(yīng)一段微程序。 本實(shí)驗(yàn)采用五條機(jī)器指令:IN(輸入)、ADD(二進(jìn)制加法)、STA(存數(shù))、OUT(輸出)、JMP(無(wú)條件轉(zhuǎn)移),其指令格式如下(前4位為操作碼): 其中IN為單字長(zhǎng)(8位),其余為雙字長(zhǎng)指令,為addr對(duì)應(yīng)的二進(jìn)制地址碼。 為了向RAM中裝入程序和數(shù)據(jù),檢查寫入是否正確,并能啟動(dòng)程序執(zhí)行,還必須設(shè)計(jì)三個(gè)控制臺(tái)操作微程序。 存儲(chǔ)器讀操作(KRD):撥動(dòng)總清開(kāi)關(guān)CLR后,控制臺(tái)開(kāi)關(guān)SWB、SWA為00時(shí),按START微動(dòng)開(kāi)關(guān),可對(duì)RAM連續(xù)手動(dòng)讀操作。 存儲(chǔ)器寫操作(KWE):撥動(dòng)總清開(kāi)關(guān)CLR后,控制臺(tái)開(kāi)關(guān)SWB、SWA置為01時(shí),按START微動(dòng)開(kāi)關(guān)可對(duì)RAM進(jìn)行連續(xù)手動(dòng)寫入。 啟動(dòng)程序:撥動(dòng)總清開(kāi)關(guān)CLR后,控制臺(tái)開(kāi)關(guān)SWB、SWA置為11時(shí),按START微動(dòng)開(kāi)關(guān),即可轉(zhuǎn)入到第01號(hào)取指微指令,啟動(dòng)程序運(yùn)行。 上述三條控制臺(tái)指令用兩個(gè)開(kāi)關(guān)SWB、SWA的狀態(tài)來(lái)設(shè)置,其定義如下: 根據(jù)以上要求設(shè)計(jì)數(shù)據(jù)通路框圖,如圖8-1,微代碼定義如表8-1所示。 系統(tǒng)涉及到的微程序流程圖見(jiàn)圖8-2,這里取指是公用微指令,為了能確定不同機(jī)器指令有各自不同的微程序轉(zhuǎn)向,我們?cè)谶@里以指令寄存器的前4位(IR7-IR4)作為測(cè)試條件,引入了P(1)指令測(cè)試字段,如此,對(duì)于5條機(jī)器指令,就可以有5路P(1)測(cè)試分支,對(duì)于每一指令分別予以微程序解釋。 控制臺(tái)操作為P(4)測(cè)試,它以控制臺(tái)開(kāi)關(guān)SWB、SWA作為測(cè)試條件,出現(xiàn)了3路分支,占用3個(gè)固定微地址單元。當(dāng)分支微地址單元固定后,剩下的其它地方就可以一條微指令占用控存一個(gè)微地址單元隨意填寫。注意:微程序流程圖上的單元地址為八進(jìn)制。 當(dāng)全部微程序設(shè)計(jì)完畢后,應(yīng)將每條微指令代碼化,表8-2即為將圖8-2的微程序流程圖按微指令格式轉(zhuǎn)化而成的“二進(jìn)制微代碼表”。 下面介紹指令寄存器(IR):指令寄存器用來(lái)保存當(dāng)前正在執(zhí)行的一條指令。當(dāng)執(zhí)行一條指令時(shí),先把它從內(nèi)存取到指令寄存器中,然后對(duì)其進(jìn)行譯碼、執(zhí)行。指令劃分為操作碼和地址碼字段,由二進(jìn)制數(shù)構(gòu)成,為了執(zhí)行任何給定的指令,必須對(duì)操作碼進(jìn)行測(cè)試【P(1)】,通過(guò)節(jié)拍脈沖T4的控制以便識(shí)別所要求的操作?!爸噶钭g碼器”(實(shí)驗(yàn)板上標(biāo)有“INS DECODE”的芯片)根據(jù)指令中的操作碼譯碼強(qiáng)置微控器單元的微地址,使下一條微指令指向相應(yīng)的微程序首地址。 本系統(tǒng)有兩種外部I/O設(shè)備,一種是二進(jìn)制代碼開(kāi)關(guān),它作為輸入設(shè)備(INPUT DEVICE);另一種是數(shù)碼塊,它作為輸出設(shè)備(OUTPUT DEVICE)。例如:輸入時(shí),二進(jìn)制開(kāi)關(guān)數(shù)據(jù)直接經(jīng)過(guò)三態(tài)門送到總線上,只要開(kāi)關(guān)狀態(tài)不變,輸入的信息也不便。輸出時(shí),將輸出數(shù)據(jù)送到數(shù)據(jù)總線上,當(dāng)寫信號(hào)(W/R)有效時(shí),將數(shù)據(jù)打入輸出鎖存器,驅(qū)動(dòng)數(shù)碼塊顯示。 本實(shí)驗(yàn)設(shè)計(jì)及其指令程序如下: [實(shí)驗(yàn)步驟] (1) 按圖8-3連接實(shí)驗(yàn)線路。 (2) 寫程序 方法一:手動(dòng)寫入 A) 先將及其指令對(duì)應(yīng)的微代碼正確寫入2816中,由于在實(shí)驗(yàn)五微程序控制實(shí)驗(yàn)中已將微代碼寫入EEPROM芯片中,對(duì)照表8-2校驗(yàn)正確后就可使用。 B) 使用控制臺(tái)KWE和KRD微程序進(jìn)行機(jī)器指令程序的裝入和檢查。 a) 使編程開(kāi)關(guān)處于RUN,STEP為“STEP”狀態(tài),STOP為“RUN”狀態(tài)。 b) 撥動(dòng)總清開(kāi)關(guān)CLR(1->0->1),微地址寄存器清零,程序計(jì)數(shù)器清零。然后使控制臺(tái)SWB、SWA開(kāi)關(guān)置為01,按動(dòng)一次啟動(dòng)開(kāi)關(guān)START,微地址顯示燈顯示010001,再按動(dòng)一次START,微地址燈顯示010100,此時(shí)數(shù)據(jù)開(kāi)關(guān)的內(nèi)容置為要寫入的機(jī)器指令,安東路iangciSTART鍵后,即完成該條指令的寫入。若仔細(xì)閱讀KWE的流程,就不難發(fā)現(xiàn),機(jī)器指令的首地址總清后為零,以后每個(gè)循環(huán)PC會(huì)自動(dòng)加1,所以,每次按動(dòng)START,只有在微地址燈顯示010100時(shí),才設(shè)置內(nèi)容,知道所有機(jī)器指令寫完。 c) 寫完程序后須進(jìn)行校驗(yàn)。撥動(dòng)總清開(kāi)關(guān)CLR(1->0->1)后,微地址清零。PC計(jì)數(shù)器清零,然后使控制臺(tái)開(kāi)關(guān)SWB、SWA為00,按動(dòng)啟動(dòng)START,微地址燈將顯示010000,再按START,微地址燈顯示為010010,第三次按START,微地址燈顯示為010111,再按START后,此時(shí)輸出單元的數(shù)碼管顯示為該首地址中的內(nèi)容。不斷按動(dòng)START,以后每個(gè)循環(huán)PC會(huì)自動(dòng)加1,可檢查后續(xù)單元內(nèi)容。每次在微地址燈顯示為010000時(shí),是將當(dāng)前地址中的機(jī)器指令寫入到輸出設(shè)備中顯示。 方法二:聯(lián)機(jī)讀/寫程序 按照規(guī)定格式,將機(jī)器指令及表8-2微指令二進(jìn)制表編輯成十六進(jìn)制的如下格式文件。微指令格式中的微指令代碼為將表8-2中的24位微代碼從左到右分成3個(gè)8位,將此三個(gè)8位二進(jìn)制代碼化為相應(yīng)的十六進(jìn)制數(shù)即可。 用聯(lián)機(jī)軟件的“轉(zhuǎn)儲(chǔ)-裝載”功能將該格式文件裝載入實(shí)驗(yàn)系統(tǒng)即可。 (3) 運(yùn)行程序 A) 單步運(yùn)行程序 a) 使編程開(kāi)關(guān)處于RUN狀態(tài),STEP為STEP狀態(tài),STOP為RUN狀態(tài)。 b) 撥動(dòng)總清開(kāi)關(guān)CLR(0->1),微地址清零,程序計(jì)數(shù)器清零。程序首地址為00H。 c) 單步運(yùn)行一條微指令,每按動(dòng)一次START鍵,即單步運(yùn)行一條微指令。對(duì)照微程序流程圖,觀察微地址顯示燈是否和流程一致。 d) 當(dāng)運(yùn)行結(jié)束后,可檢查存數(shù)單元(0BH)中的結(jié)果是否和理論值一致。 B) 連續(xù)運(yùn)行程序 a) 使STATE UNIT中的STEP開(kāi)關(guān)置為EXEC狀態(tài)。STOP開(kāi)關(guān)置為RUN狀態(tài)。 b) 撥動(dòng)CLR開(kāi)關(guān),清微地址及程序計(jì)數(shù)器,然后按動(dòng)START,系統(tǒng)連續(xù)運(yùn)行程序,稍后將STOP撥至“STOP”時(shí),系統(tǒng)停機(jī)。 c) 停機(jī)后,可檢查存數(shù)單元(0BH)結(jié)果是否正確。 C) 若聯(lián)機(jī)運(yùn)行程序時(shí),進(jìn)入DEBUG調(diào)試界面,總清開(kāi)關(guān)CLR(0->1)清零后,程序首地址為00H,按相應(yīng)功能鍵即可聯(lián)機(jī)運(yùn)行、調(diào)試程序。(軟件使用說(shuō)明請(qǐng)看《用戶手冊(cè)》)- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來(lái)的問(wèn)題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開(kāi)word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 計(jì)算機(jī)原理實(shí)驗(yàn) 計(jì)算機(jī) 原理 實(shí)驗(yàn) 教學(xué)大綱 算術(shù) 邏輯運(yùn)算
鏈接地址:http://www.hcyjhs8.com/p-8799298.html