该【杭电计组实验5-6-7(章老师不插板实验报告) 】是由【飞行的优优】上传分享,文档一共【13】页,该文档可以免费在线阅读,需要了解更多关于【杭电计组实验5-6-7(章老师不插板实验报告) 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。实验报告
2016年5月10日成绩:
姓名
学号
班级
专业
计算机科学与技术
课程名称
《计算机构成原理课程设计》
任课老师
章复嘉
指导老师
章复嘉
机位号
实验序号
5,6,7
实验名称
存放器堆设计实验,MIPS汇编器与模拟器
实验取,指令与译指令
实验时间
第6周~第14
实验地址
一教225
实验设施号
周
一、实验程序源代码
实验五
modulemain(
input[0:0]wea,
input[7:2]addra,
utput[31:0]douta,
nputClk,Reset,
inputWrite_Reg,
input
[4:0]
W_Addr,
input[31:0]W_Data,
input[4:0]R_Addr_A,R_Addr_B,
output[31:0]R_Data_A,R_Data_B
);
RAMA1(
.clka(Clk),//inputclka
.wea(wea),//input[0:0]wea
.addra(addra[7:2]),//input[5:0]addra
.dina(R_Data_A),//input[31:0]dina
.douta(douta)//output[31:0]douta
);
fourB1(
.Clk(Clk),
.Reset(Reset),
.Write_Reg(Write_Reg),
.W_Addr(W_Addr),
.W_Data(W_Data),
R_Addr_A(R_Addr_A),
.R_Addr_B(R_Addr_B),
.R_Data_A(R_Data_A),
.R_Data_B(R_Data_B)
);
endmodule
moduleRAM(
inputclka,input[0:0]
wea,
input[7:2]addra,
input[31:0]dina,
output[31:0]douta
;
RAM_Byour_instance_name(
.clka(clka),//inputclka
.wea(wea),//input[0:0]wea
.addra(addra[7:2]),//input
.dina(dina),//input[31
.douta(douta)//output[31
[5:0]addra
:0]dina
:0]douta
);
endmodule
#100;
Reset=0;?Clk=0;
?
#100;
W_Addr=5'b11011;
W_Data=32'b1111111**********;
?Clk=0;
?
#50;
Clk=1;
#100;
??R_Addr_A=5'b11011;
??R_Addr_B=0;
Clk=0;
?Write_Reg=0;
#100;
?R_Addr_A=5'b11011;
??Write_Reg=0;
Clk=0;
W_Addr=0;
W_Data=0;
??
??#10;
Clk=0;
wea=1;
addra=8'b00110100;
#10;
?Clk=1;
?
?#100;
wea=0;
??addra=8'b00110100;
?
??#100;
?Clk=0;
?#10;
?Clk=1;
B
#100;
?clka=0;
ea=0;
ddra=6'b000001;
??
#100;
clka=1;
wea=0;
??addra=6'b000001;
??
#100;
?clka=0;
??wea=1;
??addra=6'b000001;
dina=32'b111111111100011111111**********;
#100;?clka=1;
wea=1;
addra=6'b000001;
实验6
nor
$1,$0,$0;
#$1=FFFF_FFFF
sltu
$2,$0,$1;
#$2=0,000_0001
add
$3,$2,$2;
#$3=0000_00
02
add
$4,$3,$2;
#$4=0000_0003
add
$5,$4,$3;
#$5=0000_0005
add
$6,$5,$3;
#$6=0000_0007
sllv
$7,$6,$2;
#$7=0000_000E
add
$9,$5,$6;
#$9=0000_000C
sllv$8,$6,$9;
#$8=0000_7000
xor
$9,$1,$8;
#$9=FFFF_8FFF
add
$10,$9,$1;
#$10=FFFF_8FFE
sub
$11,$8,$7;
#$11=0000_6FF2
sub
$12,$7,$8;
#$12=FFFF_900E
add
$13,$9,$12;
#$13=FFFF_200D
or
$14,$9,$12;
#$14=FFFF_9FFF
or
$15,$6,$7;
#$15=0000_000F
nor
$16,$5,$7;
#$16=FFFF_FFF0
add$17,$7,$3;
#$17=0000_0010
sllv
$18,$8,$17;
#$18=7000_0000
sllv$19,$3,$17;
#$19=0002_0000
sllv$20,$19,$7;
#$20=8000_0000
sub
$21,$1,$20;
#$21=7FFF_FFFF
or
$22,$18,$21;
#$22=7FFF_FFFF
add
$23,$20,$22;
#$23=FFFF_FFFF
sub
$24,$18,$19;
#$24=6FFE_0000
sub
$25,$19,$18;
#$25=9002_0000
xor
$26,$1,$18;
#$26=8FFF
_FFFF
sltu$27,$22,$20;
#$27=0000_0
001
sltu$28,$26,$20;
#$28=0000_0000
sub
$29,$22,$2;
#$29=7FFF_FFFE
add
$30,$20,$2;
#$30=8000_0001
add
$31,$11,$26;
#$31=90
00_6FF1
实验7:
moduleInst(clk,rst,Inst_Code,PC_new,PC);
inputwireclk,rst;
outputwire[31:0]Inst_Code;
outputwire[31:0]PC_new;
outputreg[31:0]PC;
initial
begin
PC=32'h0000_0000;
end
ROMInst_ROM(
.addra(PC[7:2]),//
input
[5
:0]
addra
.clka(clk),//inputclka
.douta(Inst_Code)
//output[
31
:0]douta
);
assignPC_new=PC+4;
always@(negedgeclkorposedgerst)
begin
f(rst)
?PC=32'h0000_0000;
?else
??PC={24'h000000,PC_new[7:0]};
nd
endmodule
Inst_ROM文件:
emory_initialization_radix=16;
memory_initialization_vector=00000827,0001102b,004
21820,006
22020,00832
820,00a33020,00463804,0
0a64820,0126400
4
,00284826,
01215020,01
075822,00e8602
2,012c6820,012
c
7025,00c7782
5,00a
78027
,
00e3882
0,02289004,0223980
4,00f3a004
,0
034a822,0255b02
5,0
296b8
2
0,0253c0
22,0272c822,0032d026,02d4d8
2b,0354e02b,02c
2e822,0282f02
,017af820;
二、仿真波形
实验五
实验六
实验七:
三、电路图
实验5
杭电计组实验5-6-7(章老师不插板实验报告) 来自淘豆网m.daumloan.com转载请标明出处.