计算机组成与系统结构实验报告1_第1页
计算机组成与系统结构实验报告1_第2页
计算机组成与系统结构实验报告1_第3页
计算机组成与系统结构实验报告1_第4页
计算机组成与系统结构实验报告1_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、乐山士尊计算机组成原理实验报告评语:课中检查完成的题号及题数: 课后完成的题号与题数:成绩:自评成绩:95实验报告实验名称:基于Verilog语言的运算器和存储器设计与实现日期: 2015.11.2班级: 10011303 学号: 2013302534 姓名: 杨添文 一、实验目的:1、了解运算器的组成结构。2、掌握运算器的工作原理。3、掌握静态随机存储器RAM工作特性及数据的读写方法。二、实验内容:1、基本运算器实验。2、静态随机存储器实验。三、项目要求及分析:1、基本运算器实验:要求:验证和实现运算器的数据运算功能。这些运算除了常规的加、 减、乘、除等基本的算术运算之外,还包括能进行“逻辑

2、判断”的逻辑处理 能力,即“与”、“或”、“非”这样的基本逻辑运算以及数据的比较、移 位等操作。分析:(1)运算器原理图如下图所示乐山士尊计算机组成原理实验报告3运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器 A和暂存器B,三个部件同时接受来自A和 B的数据,各部件对操作数进行何种运算由控制信号 S3-60来决定,任何 时候,多路选择开关只选择三部件中一个部件的结果作为 ALU的输出。如 果是算术运算,还将置进位标志 FC,在运算结果输出前,置 ALU零标志。(2) ALU和外围电路的连接如下图所示:(图中的小方框代表排针座)*7二,1LilAlLDA

3、LDB Cn S3. -50ALU B(3)运算器的逻辑功能表如表所示.ins LTkR CT! Sts. Bfl'运算类型S3S2S1S0功能逻辑运算0 0 0 0F=A (直通)0 0 0 1F=B (直通)0 0 1 0F=AB(FZ)0 0 1 1F=A+B(FZ)0 1 0 0F=/A(FZ)移位运算0 1 0 1尸=谴辑右移B (取低3位)位(FZ)0 1 1 0F=磔辑左移B (取低3位)位(FZ)0 1 1 1F=A术右移B (取低3位)位 (FZ)1 0 0 0F=A1环右移B (取低3位)位(FZ)算术运算1 0 0 1F=AJ口 B( FC, FZ)1 0 1 0

4、F=AJ口劭口Cn(FC, FZ)1 0 1 1F=AM B( FC, FZ)1 1 0 0F=AM 1( FC, FZ)1 10 1F=AJ口 1( FC, FZ)1 1 1 0(保留)1 1 1 1(保留)2、静态随机存储器实验:要求:实现静态随机存储器的读写操作,通过软件中的数据通路图来 观测实验结果。分析:(1)实验原理图如下图所示:LLK12存储器数据线接至数据总线,数据总线上接有 8个LED灯显示D7 - D0 的内容。地址线接至地址总线,地址总线上接有8个LED灯显示A7-A0的内容,地址由地址锁存器(74LS273位于PC&A第元)给出。数据开关(位 于IN单元)经一个

5、三态门(74LS245连至数据总线,分时给出地址和数 据。地址寄存器为 8位,接入6116的地址A7-A0, 6116的高三位地址 A10HA8接地,所以其实际容量为 256字节。(2)实验中的读写控制逻辑如下图所示:荏0E功能1XX不选择010读001写000写IOM用来选择是对I/O 还是对MEM®行读写操作,RD=1时为读,WR=1 时为写。四、具体实现:1、基本运算器实验:(1)按下图连接实验电路,并检查无误。图中将用户需要连接的信号 用圆圈标明(其它实验相同)。c一 nC一 J T2MC单死(2)将时序单元的状态开关置为单步'档,MEM单元的编程开关置 为运行档。(

6、3)打开电源开关,如果听到有嘀报警声,说明有总线竞争现象,乐山士尊计算机组成原理实验报告应立即关闭电源,重新检查接线,直到错误排除。然后按动CON单 元的CLR按钮,将运算器的A B和FC FZ青零。(4)用输入开关向暂存器A置数。 拨动CON单元的SD27-SD20数据开关,形成二进制数01100101 (或其它数值),数据显示亮为1',灭为0'。 置LDA=1 LDB=0按动时序单元的TS按钮,产生一个T2上沿, 则将二进制数01100101置入暂存器A中,暂存器A的值通过ALU单 元的A7-A0八位LED灯显示。(5)用输入开关向暂存器B置数。 拨动CON单元的SD27-

7、SD20数据开关,形成二进制数10100111 (或其它数值)。 置LDA=0 LDB=1按动时序单元的TS按钮,产生一个T2上沿, 则将二进制数10100111置入暂存器B中,暂存器B的值通过ALU单 元的B7-B0八位LED灯显示。(6)改变运算器的功能设置,观察运算器的输出。置 ALU_B=0 LDA=0 LDB=0然后按表1-1-1置S3、S2、S1、S0和Cn的数值,并观察 数据总线LED显示灯显示的结果。如置S3、S2、S1、S0为0010, 运算器作逻辑与运算,置S3、S2、S1、S0为1001,运算器作加法 运算。如果实验箱和PC联机操作,则可通过软件中的数据通路图来观测 实验

8、结果,方法是:打开软件,选择联机软件的“【实验】一【运 算器实验】",打开运算器实验的数据通路图,如下图所示。进行 上面的手动操作,每按动一次TS按钮,数据通路图会有数据的流 动,反映当前运算器所做的操作,或在软件中选择“【调试】一【单 周期】”,其作用相当于将时序单元的状态开关置为单步档后 按动了一次TS按钮,数据通路图也会反映当前运算器所做的操作。2、静态随机存储器实验:(1)关闭实验系统电源,按下图连接实验电路,并检查无误,图中将 用户需要连接的信号用圆圈标明。TS15皇声序单加M京藏曷工,.加胪刑单元MK WF t IUE trt理制曲线 1H KD I0UA7J. AO&#

9、39;犷展单元GXDwc3元IN.T7T(2)将时序单元的状态开关置为单步档(时序单元的介绍见附录 二),MEM单元的编程开关置为运行档。(3)将CON单元的IOR开关置为1 (使IN单元无输出),打开电源开关,如果听到有嘀报警声,说明有总线竞争现象,应立即关 闭电源,重新检查接线,直到错误排除。(4)给存储器的00H 01H 02H 03H 04H地址单元中分别写入数据 11H 12H 13H 14H 15Ho由前面的存储器实验原理图可以看出, 由于数据和地址由同一个数据开关给出,因此数据和地址要分时 写入,先写地址,具体操作步骤为:先关掉存储器的读写( WR=0 RD=0 ,然后利用数据开

10、关设定地址,输出地址到数据总线(IOR=0),最后打开地址寄存器门控信号(LDAR=1 ,按动TS产 生T2脉冲,即将地址打入到AR中。再写数据,具体操作步骤为: 先关掉存储器的读写(WR=0 RD=0和地址寄存器门控信号(LDAR=0 ,然后利用数据开关给出要写入的数据,输出数据到 数据总线(IOR=。,最后使存储器处于写状态(WR=1RD=Q IOM=。, 按动TS产生T2脉冲,即将数据打入到存储器中。写存储器的流 程如下图所示(以向00地址单元写入11H为例):地址打AAF(00000000)TN中心置亚域 (00000000)IN中几置数据 t(XK)Q001)教据打入加M (0001

11、0001)(5)依次读出第00、01、02、03、04号单元中的内容,观察上述各单元中的内容是否与前面写入的一致。同写操作类似,也要先 给出地址,然后进行读,地址的给出和前面一样,而在进行读操作时,应先关闭IN单元的输出(IOR=。,然后使存储器处 于读状态(WR=0 RD=1 IOM=0),此时数据总线上的数即为 从存储器当前地址中读出的数据内容。读存储器的流程如下图 所示(以从00地址单元读出11H为例):7乐山;尊计算机组成原理实验报告/而/ IR = 0 'RD 二 0 I皿二0 I0R = 0 UMR = 1 T2 -n;狙 =0 RD = I 10U = 0 tOR - 1

12、 小皿=0WK - 0阳 -0DM = 0IDft = 1LDAH = 0JOR = 0LDAR - 0/(6)如果实验箱和PC联机操作,则可通过软件中的数据通路图来观测实验结果,方法是:打开软件,选择联机软件的“【实验】一进行上面的手动操作,每按动一次TS按钮,数据通路图会有数据【存储器实验】",打开存储器实验的数据通路图,如下图所示。的流动,反映当前存储器所做的操作 (即使是对存储器进行读,也 应按动一次TS按钮,数据通路图才会有数据流动),或在软件中 选择“【调试】一【单周期】",其作用相当于将时序单元的状态 开关置为单步档后按动了一次TS按钮,数据通路图也会反映 当

13、前存储器所做的操作。3、用Verilog语言在Modelsim上实现:源代码:module logic_operation#(paramete门SA_WIDTH = 4, DATA_WIDTH = 8)(input sys_clock,input sys_reset,input ISA_WIDTH - 1 : 0 control,input DATA_WIDTH - 1 : 0 data_a,input DATA_WIDTH - 1 : 0 data_b,output regDATA_WIDTH - 1 : 0 result);integer i;always (posedge sys_clo

14、ck or posedge sys_reset) begin if (sys_reset = 1'b0) beginresult <= 4'b0;endelse begincase (control)4'b0000: beginfor (i = 0; i < DATA_WIDTH; i = i + 1) resulti = data_ai;end4'b0001: beginfor (i = 0; i < DATA_WIDTH; i = i + 1) resulti = data_bi;end4'b0010: beginfor (i =

15、0; i < DATA_WIDTH; i = i + 1) resulti = data_ai & data_bi;end4'b0011: beginfor (i = 0; i < DATA_WIDTH; i = i + 1) resulti = data_ai | data_bi;end4'b0100: beginfor (i = 0; i < DATA_WIDTH; i = i + 1)resulti=data_ai;enddefault:;endcaseendendendmodule五、调试运行结果:运算类型群运算于继运算算数运算R 股股A7僵股

16、ATAf实验结果以表格方式呈现:结果*(65咫=9FC=CGF二 CAT?片 S) FC二 5; 和-:"-(:F-CED fZ- (0) FC=W) F-CAJ yz-(ti) FC-E ?(CA) F(0) FC=(0) P=(3S)<Zz(U)50=(1) R=(B2FZ(O) FOCI)10 0 0X(D)2(CA巾(0)心1001X叫冲FC=(1)101 OgG)X10 1 O(FC=1JXF=(OD) kFC=, U _1X七出H F2=(U)FC=(1)-.100X"rz=而:101XF=(6&) F3=(0) FC=(O)11:0X保留1111

17、X保留A7A7黯"A7股A7F=EAJ 7% FO 六、思考题的解答与分析:1、基本运算器实验:(1)利用上述运算器能否实现大于 8位二进制数的算术运算?如果能, 需要采取什么样的措施?答:可以利用上述运算器实现大于 8位的二进制算数运算,前提是, 将上述两个寄存器连接起来实现一个 16位的寄存器,输入与输出都可以 利用这个寄存器。(2)给出一组数据,验证桶形移位器的功能。答:设计了一个8位桶形移位器,能左右进行循环移位,移位的数量可以在07进行变化。以下是源代码,3位选择移位数,还有一位是方向选择:module shifteU(IN,S,d,out);input 7:0 IN;in

18、put 2:0 S;input d;output7:0 out;reg7:0 out;always (IN or S or d) begin if(d)case(S)3'b000:beginout<=IN; end3'b001:beginout7<=IN0;out6:0<=IN7:1;end3'b010:beginout7:6<=IN1:0;out5:0<=IN7:2; end3'b011:beginout7:5<=IN2:0;out4:0<=IN7:3; end3'b100:beginout7:4<=IN

19、3:0;out3:0<=IN7:4; end11乐山;尊计算机组成原理实验报告3'b101: begin out7:3<=IN4:0; out2:0<=IN7:5; end 3'b110: beginout7:2<=IN5:0; out1:0<=IN7:6; end 3'b111: beginout7:1<=IN6:0; out0<=IN7; end endcase else if(d) case(S) 3'b000: begin out<=IN;end 3'b001: begin out0<=IN7

20、; out7:1<=IN6:0; end 3'b010: beginout1:0<=IN7:6; out7:2<=IN5:0; end 3'b011: beginout2:0<=IN7:5; out7:3<=IN4:0; end 3'b100: beginout3:0<=IN7:4; out7:4<=IN3:0; end3'b101: begin out4:0<=IN7:3; out7:5<=IN2:0;end3'b110: begin out5:0<=IN7:2; out7:6<=IN1

21、:0;end3'b111: begin out6:0<=IN7:1; out7<=IN0; end endcase end endmodule2 、静态随机存储器:(1)随机存储器和只读存储器的区别是什么,能否通过外加电路实 现用随机存储器代替只读存储器?答:只读存储器就是ROM而随机存储器就是RAM只读存储器是只能读出事先所存数据的固态半导体存储器,ROMf存数据,一般是装入整机前事先写好的,整机工作过程中只能读出,而不 像随机存储器那样能快速地、方便地加以改写。RO网存数据稳定,断电后所存数据也不会改变;具结构较简单,读出较方便,因而常用于存 储各种固定程序和数据,就像电脑硬盘一样。随即存储器是以相同速度高速地、随机地写入和读出数据(写入速 度和读出速度可以不同)的一种半导体存储器,RAM勺优点是存取速度快、 读写方便,缺点是数据不能长久保持,断电后自行消失,因此主要用于 计算机主存储器等要求快速存储的系统,比

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论