第一篇:計(jì)算機(jī)組成原理 中斷實(shí)驗(yàn)
實(shí)驗(yàn)五中斷實(shí)驗(yàn)
實(shí)驗(yàn)地點(diǎn):格致A315 實(shí)驗(yàn)日期:2016年12月29日
一、實(shí)驗(yàn)?zāi)康?/p>
學(xué)習(xí)和掌握中斷產(chǎn)生、響應(yīng)、處理等技術(shù);
二、實(shí)驗(yàn)說(shuō)明及內(nèi)容 說(shuō)明:
1.要求中斷隱指令中執(zhí)行關(guān)中斷功能,如果用戶(hù)中斷服務(wù)程序允許被中斷,必須在中斷服務(wù)程序中執(zhí)行EI開(kāi)中斷命令。
2.教學(xué)機(jī)的中斷系統(tǒng)共支持三級(jí)中斷,由三個(gè)無(wú)鎖按鍵確定從右到左依次為一、二、三級(jí)中斷,對(duì)應(yīng)的INT2、INT1、INT0的編碼分別是01、10、11,優(yōu)先級(jí)也依次升高。這決定了它們的中斷向量(即中斷響應(yīng)后,轉(zhuǎn)去執(zhí)行的程序地址)為XXX4、XXX8、XXXC;可以看到,每級(jí)中斷實(shí)際可用的空間只有四個(gè)字節(jié),故這個(gè)空間一般只存放一條轉(zhuǎn)移指令,而真正的用戶(hù)中斷服務(wù)程序則存放在轉(zhuǎn)移指令所指向的地址。
3.用戶(hù)需擴(kuò)展中斷隱指令、開(kāi)中斷指令、關(guān)中斷指令、中斷返回指令及其節(jié)拍。
內(nèi)容:
1.?dāng)U展中斷隱指令。
2.?dāng)U展開(kāi)中斷指令EI、關(guān)中斷指令DI、中斷返回指令I(lǐng)RET。
3.確定中斷向量表地址。中斷向量表是以 XXX4H為首地址的一段內(nèi)存區(qū)。高12位由用戶(hù)通過(guò)置中斷向量用的插針(在三個(gè)無(wú)鎖按鍵下方)確定。三級(jí)中斷對(duì)應(yīng)的中斷向量為XXX4H、XXX8H、XXXCH。當(dāng)有中斷請(qǐng)求且被響應(yīng)后,將執(zhí)行存放在該中斷的中斷向量所指向的內(nèi)存區(qū)的指令。
4.填寫(xiě)中斷向量表。在上述的XXX4H、XXX8H、XXXCH地址寫(xiě)入三條JR OFFSET轉(zhuǎn)移指令,OFFSET分別對(duì)應(yīng)三段中斷服務(wù)程序的相對(duì)地址。但在本仿真終端中輸入時(shí),用戶(hù)不需要計(jì)算偏移量,直接輸入要轉(zhuǎn)向的絕對(duì)地址即可。
5.編寫(xiě)中斷服務(wù)程序。中斷服務(wù)程序可以放在中斷向量表之后,中斷服務(wù)程序可實(shí)現(xiàn)在程序正常運(yùn)行時(shí)在計(jì)算機(jī)屏幕上顯示與優(yōu)先級(jí)相對(duì)應(yīng)的不同字符; 6.編寫(xiě)主程序??删帉?xiě)一死循環(huán)程序,等待中斷;
三、實(shí)驗(yàn)過(guò)程及步驟
1.填寫(xiě)中斷向量表。
(1)選擇3級(jí)中斷的中斷向量為2104H、2108H、210CH。
(2)教學(xué)機(jī)中下方有一個(gè)12們波特開(kāi)關(guān),設(shè)置中斷向量的高12位為:0010 0001 0000.開(kāi)關(guān)向上為1,向下為0.(3)填寫(xiě)中斷向量表:
從2104H單元開(kāi)始輸入下面的程序:
(2104)JR 2120
;跳轉(zhuǎn)到中斷服務(wù)程序(2108)JR 2130(210C)JR 2140
2.編寫(xiě)中斷服務(wù)程序
該中斷服務(wù)程序,先開(kāi)中斷,顯示字符“BI”和對(duì)應(yīng)的中斷優(yōu)先級(jí)“1”、“2”或“3”后,等待從鍵盤(pán)輸入一個(gè)字符,在鍵盤(pán)輸入一個(gè)字符后,顯示該字符和字符“EI”,然后退出當(dāng)前中斷服務(wù)程序,返回中斷斷點(diǎn),繼續(xù)執(zhí)行。用A、E命令從2120H單元開(kāi)始輸入下面的程序(標(biāo)有*的語(yǔ)句要用E命令輸入)2120:PUSH R0 2121: PUSH R3 2122: MVRD R3,31 2124: JR 2150
2130: PUSH R0 2131: PUSH R3 2132: MVRD R3,32 2134: JR 2150
2140: PUSH R0 2141: PUSH R3 2142: MVRD R3,33 2144: JR 2150
*2150: EI 2151: MVRD R0,0042 2153: CALA 2200 2155: MVRD R0,0049 2157: CALA 2200 2159: MVRR R0,R3 215A: CALA 2200
215C: IN 81 215D: SHR R0 215E: SHR R0 215F: JRNC 215C 2160: IN 80
2161: MVRD R0,0045 2163 CALA 2200 2165: MVRD R0,0049 2167: CALA 2200 2169: MVRR R0,R3 216A: CALA 2200 216C: POP R3 216D: POP R0 *216E: IRET
2200: PUSH R0 2201: IN 81 2202: SHR R0 2203: JRNC 2201 2204: POP R0 2205: OUT 80 2206: RET
3、編寫(xiě)主程序
從地址2000H開(kāi)始輸入下列程序 *2000: EI 2001: MVRD R0,0036 2003: CALA 2200 2005: MVRD R0,4000 2007: DEC R0 2008: JRNZ 2007 2009: JR 2001 200A: RET
4、運(yùn)行主程序,等待、響應(yīng)中斷。在命令行提示符狀態(tài)下輸入: G 2000
屏幕將連續(xù)顯示“6”.在程序執(zhí)行過(guò)程中接下教學(xué)機(jī)右下方任意一個(gè)無(wú)鎖按鍵。此時(shí),教學(xué)機(jī)轉(zhuǎn)向執(zhí)行本級(jí)中斷服務(wù)程序。在接收鍵盤(pán)一個(gè)字符后,退出當(dāng)前級(jí)的中斷服務(wù)程序,恢復(fù)中斷現(xiàn)場(chǎng),接著執(zhí)行斷點(diǎn)處的程序。若在此期間,又有更高一級(jí)的中斷請(qǐng)求,則教學(xué)機(jī)轉(zhuǎn)向執(zhí)行該級(jí)的中斷服務(wù)程序。需要注意的是,若當(dāng)前中斷為高級(jí)的中斷,則不會(huì)響應(yīng)低級(jí)中斷。
5、擴(kuò)展提高內(nèi)容:在保證上述案例所有功能條件下,補(bǔ)充實(shí)現(xiàn):(1)按鍵盤(pán)上的任意鍵退出中斷過(guò)程中要求顯示所按鍵字符;
(2)將主程序的死循環(huán)修改為按空格鍵退出循環(huán)。
四、實(shí)驗(yàn)結(jié)果及分析
實(shí)驗(yàn)結(jié)論:通過(guò)中斷可以調(diào)用子程序,同時(shí)中斷可以嵌套,同時(shí)中斷也有優(yōu)先級(jí),優(yōu)先級(jí)較高的優(yōu)先調(diào)用,優(yōu)先級(jí)較低的要等到優(yōu)先級(jí)比他高的中斷調(diào)用以后才調(diào)用。
實(shí)驗(yàn)心得體會(huì):通過(guò)本次實(shí)驗(yàn)懂得了什么是中斷,同時(shí)也學(xué)會(huì)了中斷的調(diào)用,以及中斷的優(yōu)先級(jí)和中斷的調(diào)用次序。同時(shí)通過(guò)本次實(shí)驗(yàn)我懂了計(jì)算機(jī)內(nèi)部線(xiàn)程與進(jìn)程的調(diào)用。在寫(xiě)入程序的時(shí)候,監(jiān)控程序的A命令只支持基本指令,擴(kuò)展指令應(yīng)用E命令將指令代碼寫(xiě)入到相應(yīng)的存儲(chǔ)單元中;上述程序中帶*者為擴(kuò)展指令。在擴(kuò)展實(shí)驗(yàn)中,應(yīng)循環(huán)地址寫(xiě)為實(shí)驗(yàn)指導(dǎo)書(shū)上默認(rèn)的“2007”導(dǎo)致輸入的“6”不能一直循環(huán),導(dǎo)致實(shí)驗(yàn)不能成功,最后在老師的指導(dǎo)下,發(fā)現(xiàn)錯(cuò)誤,及時(shí)將地址改正為“2009”,獲取到循環(huán)值后,最后實(shí)驗(yàn)成功,讓我意識(shí)到做實(shí)驗(yàn)時(shí),應(yīng)該準(zhǔn)確、細(xì)心的操作和輸入正確的值。
教師評(píng)閱:
第二篇:計(jì)算機(jī)組成原理實(shí)驗(yàn)
ALU設(shè)計(jì)
module ALU(ALU_OP,AB_SW,F_LED_SW,LED);
input[2:0] ALU_OP,AB_SW,F_LED_SW;
output[7:0] LED;reg[7:0] LED;
reg[31:0] A,B,F;reg OF,ZF;
always@(*)begin
end
always@(*)begin
ZF=0;OF=0;case(ALU_OP)
3'b000: begin F=A&B;end 3'b001: begin F=A|B;end 3'b010: begin F=A^B;end 3'b011: begin F=~(A|B);end 3'b100: begin {OF,F}=A+B;OF=OF^F[31];end 3'b101: begin {OF,F}=A-B;OF=OF^F[31];end 3'b110: begin F=A
3'b000: begin A=32'h0000_0000;B=32'h0000_0000;end 3'b001: begin A=32'h0000_0003;B=32'h0000_0607;end 3'b010: begin A=32'h8000_0000;B=32'h8000_0000;end 3'b011: begin A=32'h7FFF_FFFF;B=32'h7FFF_FFFF;end 3'b100: begin A=32'h8000_0000;B=32'hFFFF_FFFF;end 3'b101: begin A=32'hFFFF_FFFF;B=32'h8000_0000;end 3'b110: begin A=32'h1234_5678;B=32'h3333_2222;end 3'b111: begin A=32'h9ABC_DEF0;B=32'h1111_2222;end endcase endcase
if(F==32'b0)ZF=1;end
always@(*)begin
end case(F_LED_SW)
3'b000: LED=F[7:0];3'b001: LED=F[15:8];3'b010: LED=F[23:16];3'b011: LED=F[31:24];default:begin LED[7]=ZF;LED[0]=OF;LED[6:1]=6'b0;end endcase
endmodule 管腳配置
NET “AB_SW[0]” LOC = T10;NET “AB_SW[1]” LOC = T9;NET “AB_SW[2]” LOC = V9;NET “ALU_OP[0]” LOC = M8;NET “ALU_OP[1]” LOC = N8;NET “ALU_OP[2]” LOC = U8;NET “F_LED_SW[0]” LOC = V8;NET “F_LED_SW[1]” LOC = T5;NET “F_LED_SW[2]” LOC = B8;NET “LED[0]” LOC = U16;NET “LED[1]” LOC = V16;NET “LED[2]” LOC = U15;NET “LED[3]” LOC = V15;NET “LED[4]” LOC = M11;NET “LED[5]” LOC = N11;NET “LED[6]” LOC = R11;NET “LED[7]” LOC = T11;寄存器 module jicunqi(input Clk, input Reset, input [4:0] Reg_Addr, input Write_Reg, input [1:0] Sel, input AB, output reg [7:0] LED);reg [31:0] W_Data;wire [31:0] R_Data_A,R_Data_B,LED_Data;REG RU1(Clk,Reset,Reg_Addr,Reg_Addr,Reg_Addr,W_Data,Write_Reg,R_Data_A,R_Data_B);assign LED_Data=AB?R_Data_A : R_Data_B;always @(*)begin
W_Data=32'h0000_0000;
LED=8'b0000_0000;
if(Write_Reg)
begin
case(Sel)
2'b00: W_Data= 32'h1234_5678;
2'b01: W_Data= 32'h89AB_CDEF;2'b10: W_Data= 32'h7FFF_FFFF;2'b11: W_Data= 32'hFFFF_FFFF;endcase end
else
begin
case(Sel)
2'b00: LED=LED_Data[7:0];2'b01: LED=LED_Data[15:8];2'b10: LED=LED_Data[23:16];2'b11: LED=LED_Data[31:24];
endcase end end endmodule `timescale 1ns / 1ps // REG.v module REG(input Clk, input Reset, input [4:0] R_Addr_A, input [4:0] R_Addr_B, input [4:0] W_Addr, input [31:0] W_Data, input Write_Reg, output [31:0] R_Data_A, output [31:0] R_Data_B);
reg [31:0] REG_Files[0:31];integer i;
assign R_Data_A=REG_Files[R_Addr_A];assign R_Data_B=REG_Files[R_Addr_B];
always @(posedge Clk or posedge Reset)begin
if(Reset)
begin
for(i=0;i<=31;i=i+1)
REG_Files[i]<=32'h0000_0000;
end
else
begin
if(Write_Reg)
begin
REG_Files[W_Addr]<=W_Data;
end end end endmodule
管腳配置 NET “Clk” LOC=“C9”;NET “Reset” LOC=“D9”;NET “Reg_Addr[4]” LOC=“T5”;NET “Reg_Addr[3]” LOC=“V8”;NET “Reg_Addr[2]” LOC=“U8”;NET “Reg_Addr[1]” LOC=“N8”;NET “Reg_Addr[0]” LOC=“M8”;NET “Write_Reg” LOC=“V9”;NET “Sel[1]” LOC=“T9”;NET “Sel[0]” LOC=“T10”;NET “AB” LOC=“A8”;NET “LED[7]” LOC=“T11”;NET “LED[6]” LOC=“R11”;NET “LED[5]” LOC=“N11”;NET “LED[4]” LOC=“M11”;NET “LED[3]” LOC=“V15”;NET “LED[2]” LOC=“U15”;NET “LED[1]” LOC=“V16”;NET “LED[0]” LOC=“U16”;
第三篇:_計(jì)算機(jī)組成原理實(shí)驗(yàn)2
計(jì)算機(jī)組成原理實(shí)驗(yàn)日志
實(shí)驗(yàn)題目:
進(jìn)位、移位控制實(shí)驗(yàn)
實(shí)驗(yàn)?zāi)康模?/p>
(1)了解帶進(jìn)位控制的運(yùn)算器的組成結(jié)構(gòu);(2)驗(yàn)證帶進(jìn)位控制的運(yùn)算器的功能。(3)了解移位發(fā)生器74LS299的功能;(4)驗(yàn)證移位控制電路的組合功能。實(shí)驗(yàn)主要步驟:
一、進(jìn)位
(1)按圖1.2-2連接實(shí)驗(yàn)電路并檢查無(wú)誤。(2)打開(kāi)電源開(kāi)關(guān)。
(3)用輸入開(kāi)關(guān)向暫存器DR1和DR2置數(shù),方法同前。
(4)關(guān)閉數(shù)據(jù)輸入三態(tài)門(mén)(SW-B=1),打開(kāi)ALU輸出三態(tài)門(mén)(ALU-B=0),并使LDDR1=0、LDDR2=0,關(guān)閉寄存器打入控制門(mé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),它為零狀態(tài)時(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)位。
圖1.2-1 帶進(jìn)位運(yùn)算器通路圖
圖1.2-2 帶進(jìn)位運(yùn)算實(shí)驗(yàn)接線(xià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)為1、0、0、1、0,此時(shí)數(shù)據(jù)總線(xiàn)上顯示的數(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)位標(biāo)志燈亮,則無(wú)進(jìn)位,反之則有進(jìn)位。因?yàn)樽黾臃ㄟ\(yùn)算時(shí)數(shù)據(jù)總線(xiàn)一直顯示的數(shù)據(jù)為DR1+DR2+CY,所以當(dāng)有進(jìn)位輸入到進(jìn)位鎖存器時(shí),總線(xiàn)顯示的數(shù)據(jù)將為加上當(dāng)前進(jìn)位鎖存器中鎖存的進(jìn)位的結(jié)果。
二、移位
(1)按圖1.3-2連接實(shí)驗(yàn)電路并檢查無(wú)誤。(2)打開(kāi)電源開(kāi)關(guān)。(3)向移位寄存器置數(shù)。
①撥動(dòng)輸入開(kāi)關(guān),形成二進(jìn)制數(shù)01101011(或其它數(shù)值)。
②使SWITCH UNIT單元中的開(kāi)關(guān)SW-B=0,打開(kāi)數(shù)據(jù)輸入三態(tài)門(mén)。③使S0=
1、S1=1,并按動(dòng)微動(dòng)開(kāi)關(guān)KK2,則將二進(jìn)制數(shù)01101011置入了移位寄存器。
④使SW-B=1,關(guān)閉數(shù)據(jù)輸入三態(tài)門(mén)。(4)移位運(yùn)算操作。
①參照表1.3-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,觀(guān)察移位結(jié)果。
②根據(jù)移位控制電路功能表1.3-1中的內(nèi)容,分析移位運(yùn)算的結(jié)果是否正確。
圖1.3-2 移位運(yùn)算實(shí)驗(yàn)接線(xiàn)圖
實(shí)驗(yàn)結(jié)果: 一.進(jìn)位
向DR1中置入80H 向DR2中置入 80H CY初始位置為亮 0 加法完成后 CY為滅總線(xiàn)顯示01H 二.移位
輸入00011000 移位后 00110000 心得體會(huì):
通過(guò)本次實(shí)驗(yàn)了解了的帶進(jìn)位的加法和移位器的原理。
第四篇:_計(jì)算機(jī)組成原理實(shí)驗(yàn)3
計(jì)算機(jī)組成原理實(shí)驗(yàn)日志3 實(shí)驗(yàn)題目:
靜態(tài)隨機(jī)存儲(chǔ)器實(shí)驗(yàn) 實(shí)驗(yàn)?zāi)康模?/p>
掌握靜態(tài)隨機(jī)存儲(chǔ)器RAM工作特性及數(shù)據(jù)的讀/寫(xiě)方法。實(shí)驗(yàn)主要步驟:
(1)形成時(shí)鐘脈沖信號(hào)T3。具體接線(xiàn)方法和操作步驟如下:
①接通電源,把示波器接到方波信號(hào)源的輸出插孔H23調(diào)節(jié)電位器W1及W2,使H23端輸出實(shí)驗(yàn)所期望的頻率和占空比的方波。
②將時(shí)序電路模塊(STATE UNIT)單元中的φ和信號(hào)源單元(SIGNAL UNIT)中的H23排針相連。
③在時(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,則T3端輸出連續(xù)的方波信號(hào),此時(shí)調(diào)節(jié)電位器W1,用示波器觀(guān)察,使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)按圖2-2連接實(shí)驗(yàn)線(xiàn)路,仔細(xì)查線(xiàn)無(wú)誤后接通電源。
圖2-2 靜態(tài)隨機(jī)存儲(chǔ)器實(shí)驗(yàn)接線(xiàn)圖(3)寫(xiě)存儲(chǔ)器。給存儲(chǔ)器的00、01、02、03、04地址單元中分別寫(xiě)入數(shù)據(jù)11H、12H、13H、14H、15H。
由上面的存儲(chǔ)器實(shí)驗(yàn)原理圖(圖2-2)看出,由于數(shù)據(jù)和地址全由一個(gè)數(shù)據(jù)開(kāi)關(guān)給出,因此要分時(shí)地給出。下面的寫(xiě)存儲(chǔ)器要分兩個(gè)步驟:第一步寫(xiě)地址,先關(guān)掉存儲(chǔ)器的片選(CE=1),打開(kāi)地址鎖存器門(mén)控信號(hào)(LDAR=1),打開(kāi)數(shù)據(jù)開(kāi)關(guān)三態(tài)門(mén)(SW-B=0),由開(kāi)關(guān)給出要寫(xiě)入的存儲(chǔ)單元的地址,按動(dòng)START產(chǎn)生T3脈沖將地址打入到地址鎖存器;第二步寫(xiě)數(shù)據(jù),關(guān)掉地址鎖存器門(mén)控信號(hào)(LDAR=0),打開(kāi)存儲(chǔ)器片選(CE=0),使之處于寫(xiě)狀態(tài)(CE=0,WE=1),由開(kāi)關(guān)給出此單元要寫(xiě)入的數(shù)據(jù),按動(dòng)STRAT產(chǎn)生T3脈沖將數(shù)據(jù)寫(xiě)入到當(dāng)前的地址單元中。寫(xiě)其他單元依次循環(huán)上述步驟。
寫(xiě)存儲(chǔ)器流程如圖2-3所示(以向00號(hào)單元寫(xiě)入11H為例)。
圖2-3 寫(xiě)存儲(chǔ)器流程圖
(4)讀存儲(chǔ)器。
依次讀出第00、01、02、03、04號(hào)單元中的內(nèi)容,觀(guān)察上述各單元中的內(nèi)容是否與前面寫(xiě)入的一致。同寫(xiě)操作類(lèi)似,讀每個(gè)單元也需要兩步:第一步寫(xiě)地址,先關(guān)掉存儲(chǔ)器的片選(CE=1),打開(kāi)地址鎖存器門(mén)控信號(hào)(LDAR=1),打開(kāi),由開(kāi)關(guān)給出要讀存儲(chǔ)單元的地址,按動(dòng)START產(chǎn)生T3脈沖將地址打入到地址鎖存器;第二步讀存儲(chǔ)器,關(guān)掉數(shù)據(jù)開(kāi)關(guān)三態(tài)門(mén)(SW-B=1),打開(kāi)存儲(chǔ)器(CE=0),使它處于讀狀態(tài)(CE=0,WE=0),此時(shí)數(shù)據(jù)總線(xiàn)上顯示的數(shù)據(jù)即為從存儲(chǔ)器當(dāng)前地址中讀出的數(shù)據(jù)內(nèi)容。讀其他單元依次循環(huán)上述步驟。
讀存儲(chǔ)器操作流程如下圖2-4所示(以從00號(hào)單元讀出11H數(shù)據(jù)為例)。
圖2-4 讀存儲(chǔ)器流程圖
實(shí)驗(yàn)結(jié)果:
置入存儲(chǔ)器地址00 寫(xiě)入存儲(chǔ)器數(shù)據(jù) 11H 置入存儲(chǔ)器地址01 寫(xiě)入存儲(chǔ)器數(shù)據(jù)12H 置入存儲(chǔ)器地址02 寫(xiě)入存儲(chǔ)器數(shù)據(jù)13H 置入存儲(chǔ)器地址03 寫(xiě)入存儲(chǔ)器數(shù)據(jù)14H 置入存儲(chǔ)器地址04 寫(xiě)入存儲(chǔ)器數(shù)據(jù)15H
讀數(shù)據(jù)
置入存儲(chǔ)器地址00 讀出存儲(chǔ)器數(shù)據(jù)11H 置入存儲(chǔ)器地址01 讀出存儲(chǔ)器數(shù)據(jù)12H 置入存儲(chǔ)器地址02 讀出存儲(chǔ)器數(shù)據(jù)13H 置入存儲(chǔ)器地址03 讀出存儲(chǔ)器數(shù)據(jù)14H 置入存儲(chǔ)器地址04 讀出存儲(chǔ)器數(shù)據(jù)15H 實(shí)驗(yàn)思考題
(1)一片靜態(tài)存儲(chǔ)器6116(2K×8),容量是多大?因?qū)嶒?yàn)箱上地址寄存器只有8位接入6116的A7-A0,而高三位A8-A10接地,所以實(shí)際存儲(chǔ)容量是多少?為什么?
答:容量是16kbit大小,當(dāng)只有A7-A0只有8位字時(shí),實(shí)際容量是256*8=4Kbit大小。(2)歸納出向存儲(chǔ)器寫(xiě)入一個(gè)數(shù)據(jù)的過(guò)程,包括所需的控制信號(hào)(為“1”還是為“0”)有效。
答:根據(jù)實(shí)驗(yàn)指導(dǎo)書(shū)上WR0有效,此時(shí)為寫(xiě)入數(shù)據(jù)
心得體會(huì):
通過(guò)這次實(shí)驗(yàn)掌握了靜態(tài)存儲(chǔ)器的基本原理,以及存儲(chǔ)器是如何寫(xiě)入數(shù)據(jù)和讀取數(shù)據(jù)的,強(qiáng)化了計(jì)算機(jī)存儲(chǔ)器的理解
第五篇:計(jì)算機(jī)組成原理實(shí)驗(yàn)(存儲(chǔ)器)
實(shí)驗(yàn)3 半導(dǎo)體存儲(chǔ)器原理實(shí)驗(yàn)
(一)、實(shí)驗(yàn)?zāi)康?/p>
(1)熟悉靜態(tài)隨機(jī)存儲(chǔ)器RAM和只讀存儲(chǔ)器ROM的工作特性和使用方法;(2)熟悉半導(dǎo)體存儲(chǔ)器存儲(chǔ)和讀出數(shù)據(jù)的過(guò)程;(3)了解使用半導(dǎo)體存儲(chǔ)器電路時(shí)的定時(shí)要求。
(二)、實(shí)驗(yàn)要求
利用Quartus Ⅱ器件庫(kù)提供的參數(shù)化存儲(chǔ)單元,設(shè)計(jì)一個(gè)由128X8位的RAM和128X8位的ROM構(gòu)成的存儲(chǔ)器系統(tǒng)。請(qǐng)?jiān)O(shè)計(jì)有關(guān)邏輯電路,要求仿真通過(guò),并設(shè)計(jì)波形文件,驗(yàn)證該存儲(chǔ)器系統(tǒng)的存儲(chǔ)與讀出。
(三)、實(shí)驗(yàn)原理圖與仿真圖
ram內(nèi)所存儲(chǔ)的數(shù)據(jù):
rom內(nèi)所存儲(chǔ)的數(shù)據(jù):
仿真圖如下:
(四)心得體會(huì)
本次試驗(yàn)中,我們應(yīng)該熟練掌握Quartus Ⅱ軟件的使用方法;熟悉靜態(tài)隨機(jī)存儲(chǔ)器RAM和只讀存儲(chǔ)器ROM的工作特性和使用方法;熟悉半導(dǎo)體存儲(chǔ)器存儲(chǔ)和讀出數(shù)據(jù)的過(guò)程;了解使用半導(dǎo)體存儲(chǔ)器電路時(shí)的定時(shí)要求。并且制定實(shí)驗(yàn)方案然后進(jìn)行實(shí)驗(yàn)驗(yàn)證。要學(xué)會(huì)將學(xué)到的知識(shí)運(yùn)用到實(shí)際中。