计算机组成原理 "改进建议",计算机组成原理实验报告 电子科技大学

《计算机组成原理实验报告 电子科技大学》由会员分享,可在线阅读,更多相关《计算机组成原理实验报告 电子科技大学(21页珍藏版)》请在人人文库网上搜索。

1、计算机专业类课程实验报告课程名称:计算机组成原理学院专业:计算机科学与工程 计算机科学与技术学生姓名:*学号:20120600*指导教师:吴晓华日期:2014年11月30日实 验 报 告实验一1、 实验名称: ALU设计实验2、 实验内容和目的 :(1)实验内容:设计一个4bit ALU,实现两个4bit二进制数的算术运算和逻辑运算 1、算术运算(加、减);2、 逻辑运算(与、或、置1、清0);(2) 实验目的:1.熟悉ALU的工作原理;2. 掌握用硬件描述语言设计ALU的方法;3、 实验原理:利用veilog hdl语言编写实现实验要求的逻辑功能实现代码。要求实现两个四位二进制数的算数运算和。

2、逻辑运算,有三个输入,分别是输入的两个四位二进制数和一个控制信号,有两个输出,分别是仅为信号和运算结果的输出。考虑到是电路的逻辑代码设计简化,采用case语句来实现。所有的输入都会对最终的结果和进位输出产生影响。在连线时,八个开关分为两组,分别控制两个四位二进制数的各位,有五个指示灯,四个显示结果的输出,一个用来显示进位信号。4、 实验器材(设备、元器件)硬件平台:pc软件平台:windows xp5、 实验步骤:先利用仿真软件进行程序的编写,编译调试运行,结果无误后,在仿真软件上绑定对应开关和连线,打开电路板电源,进行控制操作,观察指示灯的亮灭情况,根据实际的逻辑结果来验证实验代码及连线的正。

3、确性,若与实际结果不相符,检查连线以及实验代码,重新进行处理。6、 实验数据及结果分析:(1) 实验代码:module pz(in1,in2,se,count,c);input3:0 in1,in2;input2:0 se;output3:0 count;output c;reg3:0 count;reg c;always(in1,in2,se)begincase(se)3b000:c,count=in1+in2;3b001:c,count=in1-in2;3b010:count=in1 & in2;3b011:count=in1 | in2;3b100:count=0000;3b101:co。

4、unt=1111;default:count=5bx;endcaseendendmodule(2) 实验结果照片:8 实验结论、心得体会和改进建议:(1) 思考题:在进行算术运时,7(0111)+8(1000)=11117(0111)- 8(1000)=1111其输出结果都是1111,为什么?答:因为计算时都采用二进制补码来运算,而前者进行相加的两个数都是正数,其补码为其本身。而后者进行补码的减法运算时,要对减数求补,转换成加法运算,所以最终所得结果相同。 (2) 实验结论、心得体会和改进建议:在设计逻辑电路是使用了实现该逻辑功能最简单的方式,case语句,在编写实验代码时需要注意always。

5、语句中的输出变量必须提前声明为reg型的变量。注意根据实验指导书绑定正确的接线。电 子 科 技 大 学实 验 报 告实验二1、 实验名称:静态存储器的设计二、实验学时:4三、实验内容和目的:(1)实验目的:1.掌握存贮器的读写控制方法;(读信号、写信号、片选信号)2.掌握存储器的字扩展和位扩展方法;3.掌握用硬件描述语言设计存贮器的方法;4.了解存储器种类、工作原理和特点.(2) 实验内容:用字扩展和位扩展的方式,设计一个 32X8的静态存储器,能够对其随机的读写.其中: 32表示地址的寻址空间大小,8表示数据单元的位数;4、 实验原理:利用veilog hdl语言编写实现实验要求的逻辑功能实。

6、现代码。1.设计一个16X4的可随机读写的存储器模块;2.利用16X4存储器模块,通过实例化完成对所需要的存储器,因为是16X4扩展为32X 8,所以将16X4两两分为一组刚好两组 。 3.数据、地址的输入/输出a 、数据/地址的输入: 开关控制;b 、数据的输出: 指示灯显示;4.控制信号a 、片选: 低有效;b 、读: 低有效;c 、写: 上升沿有效;五、实验器材(设备、元器件)硬件平台:pc软件平台:windows xp6、 实验步骤:先根据实验内容,实验目的,实验要求编写实现所需逻辑功能的实验代码,然后在仿真软件上进行编译链接运行,无误后进行宋旭单元与电路板相关接口的绑定,对电路板进行。

7、连线,练好后进行实际操作,观察电路板上指示灯的亮灭情况,根据实际的逻辑结果判断实验代码以及连线是否正确,若输出有误,则重新检查连线以及代码是否有逻辑问题。七、实验数据及结果分析:(1)实验代码:module m(din,addr,wr,rd,cs,dout);parameter D_WIDTH = 8;parameter A_WIDTH = 5;inputD_WIDTH-1:0 din;inputA_WIDTH-1:0 addr;input wr,rd,cs;output 7:0dout;regD_WIDTH-1:0 ram(2*A_WIDTH)-1:0;wire D_WIDTH-1:0 do。

8、ut;ram16_4 ram16_4_1(.din(din3:0),.addr(addr3:0),.wr(wr),.rd(rd),.cs(addr4|cs),.dout(dout3:0);ram16_4 ram16_4_2(.din(din7:4),.addr(addr3:0),.wr(wr),.rd(rd),.cs(addr4|cs),.dout(dout7:4);ram16_4 ram16_4_3(.din(din3:0),.addr(addr3:0),.wr(wr),.rd(rd),.cs(addr4)|cs),.dout(dout3:0);ram16_4 ram16_4_4(.din(。

9、din7:4),.addr(addr3:0),.wr(wr),.rd(rd),.cs(addr4)|cs),.dout(dout7:4);endmodulemodule ram16_4(din,addr,wr,rd,cs,dout);parameter D_WIDTH = 4;parameter A_WIDTH = 4;inputD_WIDTH-1:0 din;inputA_WIDTH-1:0 addr;input wr,rd,cs;outputD_WIDTH-1:0dout;reg D_WIDTH-1:0 ram (2*A_WIDTH)-1:0;wire D_WIDTH-1:0 dout;always (posedge wr)if (!cs)ramaddr = din;assign dout = (!(rd|cs)?ramaddr:4bzzzz; endmodule(2) 实验结果截图:8、 实验结论、心得体会和改进建议:对于存储器的扩充有字扩充和位扩充,在编写实验代码时首先得编写出实验所需要的基本单元16X4的存储器,通过对该存储器模块的实例化来实现实验所需要用到的存储器,实验内容比较简单,只要按照实验要求和步骤结合实验目的进行正确操作,实验都能成功。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值