《计算机组成原理》实验报告——TEC-2实验系统——运算器实验
| 實(shí)驗(yàn)名稱: TEC-2實(shí)驗(yàn)計算機(jī)運(yùn)算器實(shí)驗(yàn) | 實(shí)驗(yàn)地點(diǎn):10-413 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 一.實(shí)驗(yàn)?zāi)康?/p> 1.???? 了解和掌握Am2901運(yùn)算器的組成結(jié)構(gòu)和工作原理; 2.???? 認(rèn)識和掌握TEC-2機(jī)運(yùn)算器的組成和工作原理; 3.??? 認(rèn)識和掌握TEC-2機(jī)運(yùn)算器相關(guān)控制信號的含義和使用方法; ? | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 二.實(shí)驗(yàn)原理 Am2901運(yùn)算器 1.Am2901 芯片內(nèi)部組成結(jié)構(gòu) AM2901 芯片是一個4位的位片結(jié)構(gòu)的運(yùn)算器部件,是一個完整的運(yùn)算器,只是位數(shù)較少,具有很好的典型性,是個理想的教學(xué)實(shí)例。其內(nèi)部組成結(jié)構(gòu)如下圖所示: ? ①。4 位的ALU,實(shí)現(xiàn)實(shí)種運(yùn)算功能,其每一位上的2個輸入端數(shù)據(jù)分別用R和S表示,則這8種功能是R+S,S-R,R-S 3種算術(shù)運(yùn)算和R S, R S, /R S, R S,/(R S)5咱邏輯運(yùn)算,這8種功能的選擇控制,是用外部送入的3位編碼值I5—I3實(shí)現(xiàn)的。ALU還能給出CN+4,F,OVR和F = 0000 4位狀態(tài)信息,并能接收最低位的一個進(jìn)位輸入信號CN。ALU還給出了超前進(jìn)位信號/G和/P。 ? ②。16個4位的通用寄存器組,用R0-R15表示,和1個4位的Q寄存器。通用寄存器組為雙端口讀出(用A地址與B地址選取擇每個寄存器)和單端口(用B地址選取擇)控制寫入的運(yùn)行方式,而且運(yùn)算后的結(jié)果經(jīng)一個移位器實(shí)現(xiàn)寫入(左移,不移,右移)。Q寄存器本身具有左移,右移功能且能接收ALU的運(yùn)算結(jié)果,左右移位時,就有移出,移入信號RAM3,RAM0,Q3,Q0, 4個入號,它們都通過具有雙向傳送功能的三態(tài)門實(shí)現(xiàn)的。 ? ③。該芯片能接收外部送入的4位數(shù)據(jù)D3-D0,并輸出奇制勝們的數(shù)據(jù)Y3-Y0。Y3-Y0可以是通用寄存器A端口上的輸出或ALU的運(yùn)算結(jié)果F,并還受輸出允許控制信號/OE的控制,僅在/OE為低時,Y3-Y0才有輸出,否則處于高阻態(tài)。 ④。從圖上可以看到,ALU的兩個輸入端R和S分別可以接收D輸入,A端口或邏輯0數(shù)據(jù),和A端口,B端口,Q寄存器或邏輯0數(shù)據(jù),Am2901器件只選取用了它們可能的全部12種組合中的8種,即A-Q,A-B,0-Q,0-B,0-A,D-A,D-Q,和D-0這8種,并用外部送來的3位控制碼I2-I0來選擇這是種組合。 ⑤。Am2901還采用另外來貨位外部送來的控制信號I8-I6,一是選擇向外部送出的數(shù)據(jù)的來源(A口數(shù)據(jù)還是ALU運(yùn)算結(jié)果),二是選擇其內(nèi)部的通用寄存器組和Q寄存器接收不接收和如何接收數(shù)據(jù)庫寫入(左移,右移,直送)。 ⑥。通用寄存器組通過A端口,B端口讀出內(nèi)容的輸出處均有鎖存器線路支持,以保證在執(zhí)行諸如A+B結(jié)果送B運(yùn)算時操作的正確性。 ? 3.2.3Am2901芯片的控制信號及其控制碼與操作 Am2901芯片的控制信號有9個,即I8-I0,這回個控制信號分成三組,它們是: 這三組控制信號與相應(yīng)控制碼的關(guān)系如下表: 表3.1 Am2901 9個控制信號I8~I0
注:R、S中的“0”為邏輯0。 ? 3.2.4:TEC-2機(jī)運(yùn)算器 一:TEC-2機(jī)運(yùn)算器主體結(jié)構(gòu) 4片間的連接關(guān)系是: (1)16位的數(shù)據(jù) 輸入由4片各自的D3-D0組成,其位序號人高位芯片向低位芯片順序排成D15-D0 (2)16位的數(shù)據(jù) 輸出由4片各自的Y3-Y0組成,其位序號人高位芯片向低位芯片順序排成Y15-Y0. (3)有高低位進(jìn)位關(guān)系的3組信號,在高低位相鄰芯片間連接關(guān)系是: ①:高位芯片的RAM0與低位芯片的RAM3相連 ②:高位芯片的Q0與低位芯片的Q3相連 ③:在串行進(jìn)位方式下,高位芯片的Cn與低位芯片的Cn+4相連;若選用AM2902芯片(與74LS182芯片功能相同,兩者可以互換使用)實(shí)現(xiàn)并行進(jìn)位,則低位的3個芯片的并行進(jìn)位信號/G和/P應(yīng)送往Am2902的相并沒有管腳,并將各自對應(yīng)的片間進(jìn)位輸出信號送入相鄰高位芯片Am2901的Cn管腳。同時支持串,并行丙種方式,有利于教學(xué)實(shí)驗(yàn)中方便地觀察與測量每種進(jìn)位方式的進(jìn)位延遲時間。 此時,最低位芯片的RAM0與Q0是該16位的運(yùn)算器的最低位的移入/出信號,最高位芯片的RAM3與Q3是運(yùn)算器最高位的移入/出信號,均需有另外的邏輯電路與之連接,最低位的Cn是整個運(yùn)算器的最低位進(jìn)位輸入信號。最高位的CN+4是16位完整運(yùn)算器的進(jìn)位輸出信號。 ??? 同理,只有最高們芯片的F3和OVR有意義,低位的3個芯片的F3和OVR不被使用, ??? 4個芯片的F=0000管腳連接在一起,并經(jīng)一個電阻接到+5V電源,已得到16位的ALU的運(yùn)算結(jié)果為“0”的標(biāo)志位信號。 (4):其它的幾組輸入信號,支4片Am2901器件來說應(yīng)有相同的值,包括/OE(控制選 通Y的輸出),A地址,B地址,I8-80(控制Am2901的運(yùn)算功能,數(shù)據(jù)來源,結(jié)果的處置)和工作脈沖CP,故應(yīng)將4個芯片的這些的各對應(yīng)管腳連接在一起. ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?微指令中三位微碼(SST)與標(biāo)志位的關(guān)系 ? 三位微碼與這8種處理的對應(yīng)關(guān)系,已用表格形式給出。 本器件共用了4個輸出端,即引用17.18.19.20分別組出CZVS4個標(biāo)志位的值,并采用寄存器型邏輯記憶本次操作結(jié)果,此時每個輸出引腳的表達(dá)式必須用C:=…的形式定義,且引腳的時鐘脈沖信號必須引入。引腳13的/OE信號接地,表示輸出信號是不被禁止的。 本器件共有14個輸入信號,分別人引腳2-11,引腳14,引腳21-23送入,信號名字已給了央Gal20v8的描碠信息中。這些輸入如何決定每一個輸出位的結(jié)果,以邏輯表達(dá)式形式組出在每一個輸出位的定義中。描述表中每行最右側(cè)在分號之后給出的是注釋內(nèi)容。 ? 表3.2三位微碼與狀態(tài)位的關(guān)系表
? 二:運(yùn)算器最低位進(jìn)位信號的給出與控制(SCi) 運(yùn)算器最低位的進(jìn)位信號Cin,可能為0.1.C標(biāo)志的值 ,為了調(diào)試與實(shí)驗(yàn)的方便,有時可送入一個連續(xù)的進(jìn)位方波信號,當(dāng)認(rèn)運(yùn)算器執(zhí)行16位全1與這個最低閏的進(jìn)位方波信號相加時,則加法器每一位的輸出結(jié)果均為方波,有利于觀察與調(diào)試. 表3.3
? 三:運(yùn)算器最高位,最低位的移入信號(SSH) 移入通用寄存器中的移入信號RAM15和RAM0,以及乘商寄存器中的移入信號Q15和Q0.左移時,向RAM0,或RAM0與Q0移入數(shù)據(jù),右移時,向RAM15,或RAM15與Q15移入數(shù)據(jù),我們把5條移位指令和剩除法計算中的聯(lián)合移位都考慮進(jìn)去,可以歸納出如下4種結(jié)果,并用兩位微碼SSH區(qū)分它們。 ? 表3.4
說明: ? 表中“X”為任意值,表示取任意值都不受影響 ? 當(dāng)通用寄存器本身移位時,Q寄存器不受影響 ? 乘除法運(yùn)算要求通用寄存器與Q寄存器聯(lián)合移位,沒有Q寄存器單獨(dú)移位功能 ? 左右移是由指令功能確定的 ? SSH為0,用于邏輯移位指令 為1,用于循環(huán)移位指令 為2,用于乘除法運(yùn)算的聯(lián)合移位及上商 為3,用于算術(shù)右移指令,或補(bǔ)碼乘法計算 ? | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 三.實(shí)驗(yàn)內(nèi)容: 脫機(jī)和聯(lián)機(jī)時運(yùn)算器實(shí)驗(yàn) 在脫機(jī)與聯(lián)機(jī)兩種方式下,可以用一些數(shù)據(jù)實(shí)現(xiàn)多種運(yùn)算,以控制其操作過程與功能 檢查所得結(jié)果的正確性。 (一) 脫機(jī)方式 1.??? 將TEC-2機(jī)功能開關(guān)FS4置為“1”。 2.??? 將TEC-2機(jī)主脈沖置為單步方式,即將STEP/CONT開關(guān)撥向STEP一邊。 3.??? 用D0+0→R0將立即數(shù)D0(A000H)置入寄存器R0(0000)。具體的微型開關(guān)和數(shù)據(jù)開關(guān)按下表進(jìn)行設(shè)置: 波特率開關(guān)?? 數(shù)據(jù)開關(guān) SW2(共12位,最末三位未用)???? SW1(共12位) MI876??? MI543??? MI210??? 未用?????? A口 B口(R0)?? SCi? SSH D15-D0 011? 000? 111? 000? 0000?????? 0000?????? 00?? 00?? A000H 設(shè)置好各控制信號(MI8-MI0),并設(shè)置好十六位數(shù)據(jù)開關(guān)為“A000H”,即“1010 0000 0000 0000”后,按壓一次STEP鍵,將立即數(shù)D0置入寄存器R0中。 ? 4.??? 用D1+0→R1將立即數(shù)D1(4000H)置入寄存器R1(0001)。具體的微型開關(guān)和數(shù)據(jù)開關(guān)按下表進(jìn)行設(shè)置: 波特率開關(guān)?? 數(shù)據(jù)開關(guān) SW2(共12位,最末三位未用)???? SW1(共12位) MI876??? MI543??? MI210??? 未用?????? A口 B口(R1)?? SCi? SSH D15-D0 011? 000? 111? 000? 0000?????? 0001?????? 00?? 00?? 4000H 用同樣的方法將立即數(shù)D1置入寄存器R1中。 5.??? 對寄存器R0、R1初始化后,便可對R0和R1進(jìn)行各種算術(shù)、邏輯運(yùn)算,此時R0保存的數(shù)據(jù)為D0(A000H),R1保存的數(shù)據(jù)為D1(4000H)。 6.??? 將開關(guān)S2 S1 S0置于“110”時,指示燈將顯示ALU的運(yùn)算結(jié)果;將開關(guān)S2 S1 S0置于“000”時,指示燈將顯示SVZC的狀態(tài),對應(yīng)TEC-2機(jī)上H25 = S,H26 = V,H27 = Z,H28 = C。 ? 7.??? 對R0和R1進(jìn)行各種算術(shù)、邏輯運(yùn)算。 ? (二) 聯(lián)機(jī)方式 啟動TEC-2機(jī),進(jìn)入監(jiān)控程序狀態(tài):具體操作如下: ? 1.??? 將TEC-2機(jī)的FS1~FS4置為1010,STEP/CONT置成CONT。 2.??? 打開計算機(jī)電源開關(guān),使計算機(jī)正常啟動。打開TEC-2電源開關(guān),TEC-2大板左上角一排指示燈亮。 3.??? 運(yùn)行通訊程序PCEC,在DOS下命令提示(按默認(rèn)設(shè)置:選擇1,N)。聯(lián)機(jī)后,進(jìn)入聯(lián)機(jī)狀態(tài),用A命令輸入下列程序:(ENTER表示) >A800 ENTER MOV???? R0,A000 MOV???? R1,4000 ADD???? R0, R1 SUB???? R0,R1 OR????? R0,R1 AND???? R0,R1 XOR???? RO, R1 ADC???? R0, R1 SHL??? RO INC??? RO? RET4.??? 用“G”命令運(yùn)行程序 在命令行提示符狀態(tài)下輸入: > G800 執(zhí)行上面輸入的程序 5.??? 用“R”命令觀察運(yùn)行結(jié)果及狀態(tài) 在命令行提示符狀態(tài)下輸入: >R 觀察運(yùn)行結(jié)果及狀態(tài) 屏幕將顯示: R0=8001? R1=4000…… 6.??? 用“T”或“P”命令單步執(zhí)行 在命令行提示符狀態(tài)下輸入: >T 或 >P 執(zhí)行之后,觀察運(yùn)行結(jié)果及狀態(tài)。 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 四.? 實(shí)驗(yàn)器材 1.??? TEC-2機(jī)一臺,電腦一臺 2.??? TEC-2模擬軟件一套 ? ? ????????????????????????????????????????? ?????? ? | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 五.? 實(shí)驗(yàn)分析與設(shè)計 1.??? 脫機(jī)實(shí)驗(yàn) ? 2.??? 聯(lián)機(jī)實(shí)驗(yàn) MOV???? R0,A000 MOV???? R1,4000 ADD???? R0, R1 SUB???? R0,R1 OR????? R0,R1 AND???? R0,R1 RET?????? MOV???? R0,A000 MOV???? R1,4000 ADD???? R0, R1 SUB???? R0,R1 OR????? R0,R1 AND???? R0,R1 XOR???? RO, R1 ADC???? R0, R1 SHL??? RO INC??? RO? RET | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 六.? 思考題 在脫機(jī)方式下進(jìn)行運(yùn)算器實(shí)驗(yàn)時,在按STEP鍵之前和按STEP鍵之后,ALU的輸出結(jié)果及狀態(tài)SVZC有何不同,為什么?根據(jù)Am2901運(yùn)算器的組成結(jié)構(gòu)及其工作原理加以說明。 答: (1)設(shè)置好相應(yīng)微碼和AB口地址之后,立即輸出該運(yùn)算功能的運(yùn)算結(jié)果,此時ALU也已經(jīng)得到SVZC的值,但并沒有傳給標(biāo)志寄存器。按STEP之后,ALU的輸出結(jié)果則為運(yùn)算器再做一次運(yùn)算的結(jié)果,這時SVZC所顯示的值則為上一步標(biāo)志位寄存器的值。 (2)根據(jù)Am2901運(yùn)算器的組成結(jié)構(gòu)可以知道,ALU是一個組合邏輯電路,設(shè)置A、B相應(yīng)的值之后,相應(yīng)的數(shù)據(jù)便會立即被傳送到ALU中進(jìn)行相應(yīng)的運(yùn)算,并且顯示出對應(yīng)的運(yùn)算結(jié)果也會被存在存儲器里面。按下STEP之后,在脈沖的作用下,. 上一步的運(yùn)算結(jié)果也會被存在寄存器里面,但控制碼和地址沒有改變,所以上一步的運(yùn)算結(jié)果會重新被送到ALU中進(jìn)行運(yùn)算,此時ALU的結(jié)果為一步運(yùn)算結(jié)果再進(jìn)行一次運(yùn)算的數(shù)據(jù)。 SVZC存儲在狀態(tài)標(biāo)志寄存器中,其值的改變需要有脈沖信號的作用才能改變,所以在按STEP之前,SVZC的值不變,按下STEP之后,SVZC顯示的值才是上一步標(biāo)志位的狀態(tài)值。?????? ????????????????????????????????????????? ? ? | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 七.? 實(shí)驗(yàn)心得 1.??? 了解和掌握Am2901運(yùn)算器的組成結(jié)構(gòu)和工作原理; 2.??? 認(rèn)識和掌握TEC-2機(jī)運(yùn)算器的組成和工作原理; 3.??? 認(rèn)識和掌握TEC-2機(jī)運(yùn)算器相關(guān)控制信號的含義和使用方法; ? ? | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
總結(jié)
以上是生活随笔為你收集整理的《计算机组成原理》实验报告——TEC-2实验系统——运算器实验的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《IBM-PC汇编语言程序设计》(第2版
- 下一篇: 《计算机组成原理》实验报告——TEC-2