文档库 最新最全的文档下载
当前位置:文档库 › 计算机组成原理实验报告

计算机组成原理实验报告

计算机组成原理实验报告
计算机组成原理实验报告

实验报告

专业班级 物联网1302

姓 名 何孔阳 机器号: 58

学 号 20133740 E-mail 745072328@https://www.wendangku.net/doc/aa14585743.html, 分步成绩 实验表现

实验报告

总成绩

实验一 寄存器及数据输出实验

一、实验目的

1、掌握寄存器器件的工作原理,了解COP2000模型机所用主要寄存器的位置、作用、数据通路及控制信号;

2、掌握寄存器组的工作原理;

3、了解计算机中多个寄存器不能同时向内部数据总线送出数据的事实——COP2000实验仪选择某个寄存器(允许其向DBUS 上输出数据)的方法。

二、实验原理 (一)寄存器

COP2000用74HC574来构成寄存器,74HC574的功能如下:

1,在CLK 的上升沿将输入端的数据打入到8个触发器中。

2,当OC=1时触发器的输出被关闭,当OC=0时触发器输出数据。

74HC574工作波形图

1、累加器A 、暂存器W 实验

计算机组成原理

2、地址寄存器MAR、堆栈寄存器ST、输出寄存器OUT实验

寄存器MAR原理图

寄存器ST原理图

寄存器OUT原理图

(二)寄存器组

寄存器组R原理图

74HC139含有两个独立的2—4译码器,其引脚与内部逻辑、功能表见实验指导书。

(三)数据输出实验

COP2000实验仪中有7个寄存器可以向DBUS输出数据,但在某一特定时刻只能有一个寄存器输出数据。由X0、X1、X2控制信号决定那一个寄存器向数据总线输出数据,而这三个控制信号为74HC138译码器的三个选择输入端。74HC138用于选片。

数据输出选择器原理图

X2 X1 X0 输出寄存器

0 0 0 IN-OE 外部中断

0 0 1 IA-OE 中断向量

0 1 0 ST-OE 堆栈寄存器

0 1 1 PC-OE PC寄存器

1 0 0 D-OE 直通门

1 0 1 R-OE 右移门

1 1 0 L-OE 左移门

1 1 1 没有输出

三、实验内容

1、A、W的写入

按下表连线

连接信号孔接入孔

1 J1座J3座

2 AEN K0

3 WEN K1

4 ALUCK CLOCK

(1)将数据写入A寄存器

用手动开关K23—K16进行DBUS[7:0]的数据输入

K23 K22 K21 K20 K19 K18 K17 K16

0 1 0 1 0 1 0 1

置控制信号:

K0(AEN)K1(WEN)

0 1

给CLOCK跳变信号:按住CLOCK脉冲键,注意哪个寄存器的黄色指示灯亮起,就是你所选的要写入的寄存器。放开CLOCK键,一个上升沿即产生,观察寄存器写入的值。

(2) 将数据写入W寄存器

置数据:

K23 K22 K21 K20 K19 K18 K17 K16

0 1 0 1 0 1 0 1

置控制信号:

K0(AEN)K1(WEN)

1 0

给CLOCK跳变信号,观察寄存器写入的值。

2、R?的写入与读出

按下表连接线

连接信号孔接入孔

1 J1座J3座

2 RRD K11

3 RWR K10

4 SB K1

5 SA K0

6 RCK CLOCK

(1) R?的写入

写入R0:

置数据:

K23 K22 K21 K20 K19 K18 K17 K16

0 1 0 1 0 1 0 1 置控制信号:

K11(RRD)K10(RWR)K1(SB)K0(SA)

1 0 0 0

给出CLOCK脉冲上升沿。

写入R1:

置数据:

K23 K22 K21 K20 K19 K18 K17 K16

0 1 0 1 0 1 0 1 置控制信号:

K11(RRD)K10(RWR)K1(SB)K0(SA)

1 0 0 1

给出CLOCK脉冲上升沿。

写入R2:

置数据:

K23 K22 K21 K20 K19 K18 K17 K16

0 1 0 1 0 1 0 1 置控制信号:

K11(RRD)K10(RWR)K1(SB)K0(SA)

1 0 1 0

给出CLOCK脉冲上升沿。

写入R3:

置数据:

K23 K22 K21 K20 K19 K18 K17 K16

0 1 0 1 0 1 0 1

置控制信号:

K11(RRD)K10(RWR)K1(SB)K0(SA)

1 0 1 1

给出CLOCK脉冲上升沿。

(2) R?的读出

自己设置RRD、RWR、SB及SA信号,观察R?的红色指示灯及液晶显示内容。

读R0:

置控制信号:

K11(RRD)K10(RWR)K1(SB)K0(SA)

0 1 0 0

液晶显示为:

55

置控制信号:

K11(RRD)K10(RWR)K1(SB)K0(SA)

0 1 0 1

液晶显示为:

55

读R2:

置控制信号:

K11(RRD)K10(RWR)K1(SB)K0(SA)

0 1 1 0

液晶显示为:

55

读R3:

置控制信号:

K11(RRD)K10(RWR)K1(SB)K0(SA)

0 1 1 1

液晶显示为:

55

3、MAR、ST、OUT寄存器实验

按下表连接线

连接信号孔接入孔

1 J2座J3座

2 MAROE K14

3 MAREN K15

4 STEN K12

5 OUTEN K13

6 MARCK CLOCK

(1) MAR的写入

置数据:

K23 K22 K21 K20 K19 K18 K17 K16

0 1 0 1 0 1 0 1

置控制信号:

K14(MAROE)K15(MAREN)K12(STEN)K13(OUTEN)

1 0 1 1

给出CLOCK脉冲上升沿。

(2) ST的写入

置数据:

K23 K22 K21 K20 K19 K18 K17 K16

0 1 0 1 0 1 0 1

置控制信号:

K14(MAROE)K15(MAREN)K12(STEN)K13(OUTEN)

1 1 0 1

给出CLOCK脉冲上升沿。

置数据:

K23 K22 K21 K20 K19 K18 K17 K16

0 1 0 1 0 1 0 1 置控制信号:

K14(MAROE)K15(MAREN)K12(STEN)K13(OUTEN)

1 1 1 0

给出CLOCK脉冲上升沿。

4、数据输出实验

按下表连线

连接信号孔接入孔

1 J1座J3座

2 X0 K0

3 X1 K1

4 X2 K2

置下表的控制信号,写出指示灯的状态:

X2 X1 X0 指示灯液晶显示(数据总线值)

0 0 0 亮输入门(K23—K16)

0 0 1 亮中断向量(由拨动开关给出)

0 1 0 亮堆栈寄存器

0 1 1 亮PC寄存器

1 0 0 亮D直通门

1 0 1 亮R右移门

1 1 0 亮L左移门

1 1 1 灭没有输出

实验二计数器实验

一、实验目的

1、掌握程序计数器PC和微程序计数器μPC的工作原理;

2、掌握COP2000中需要对PC进行置数的条件;

二、实验原理

(一)微程序计数器μPC

COP2000实验仪中,微程序计数器uPC由2片74HC161组成的。指令总线IBUS[7:0]的高六位被接到μPC预置输入的高六位,μPC预置的低两位被置为0。两片161的连接为同步连接。低片161的CEP、CET已置为有效,而其进位输出端TC接至高片161的CEP、CET。

μPC原理图

当RES=0时,μPC被清0;

当IREN=0时,在CK的上升沿,预置数据被打入μPC。指令总线(IBUS)上的数据可来自一片74HC245。

当IREN=1时,在CK的上升沿,μPC加1。

(二)程序计数器PC

程序计数器PC由2片74HC161组成,能完成加1和预置数功能。程序计数器的输出由74HC245保存,74HC245与74HC161的输出相连,74HC245(2)的输出连接地址总线,74HC245(1)的输出接到数据总线(当LDPC=0时)。

程序计数器原理图

当指令正常执行时,程序计数器完成加1操作;当执行转移指令时,74HC161用预置数功能,从数据总线接收要跳转的地址。当RES=0时,PC计数器被清0。当PC+1=1时,在CK的上升沿,PC计数器加一;当LDPC=0时,在CK的上升沿,预置数据被打入PC计数器;当PCOE=0时,PC值送地址总线。

在COP2000中,计数允许控制端PC+1由PCOE取反产生。

PC跳转控制电路原理:在COP2000中,虚拟一片74HC151器件(做在控制芯片CPLD95108中)来决定PC是否被预置。74HC151为八选一数据选择器,其真值表及工作原理如下图所示。

PC预置控制原理图

当ELP=1时,LDPC=1,不允许PC被预置;

当ELP=0,IR3=0,IR2=0时,且Cy=1时,LDPC=非Cy,当PC被预置;

当ELP=0,IR3=0,IR2=1时,且Z=1时,LDPC=非Z,当PC被预置;

当ELP=0,IR3=1,IR2=X时,LDPC=0,PC被预置。

三、实验内容

(一)PC实验

1、PC加一实验

连接线表

连接信号孔接入孔作用有效电平

1 J2座J3座将K23—K16接入DBUS[7:0]

2 JRC K0 C标志输入

3 JRZ K1 Z标志输入

4 PCOE K2 PC输出到地址总线低电平有效

5 JIR2 K3 预置选择

6 JIR3 K4 预置选择

7 ELP K5 预置允许低电平有效

8 PCCK CLOCK PC工作脉冲上升沿打入

置控制信号为:

K2(PCOE)K5(ELP)

0 1

按一次CLOCK脉冲键,CLOCK产生一个上升沿,数据PC被加一。

2、PC预置实验

二进制开关K23—K16置入数据:

K23 K22 K21 K20 K19 K18 K17 K16

0 1 0 1 0 1 0 1 置控制信号为:

ELP (K5)

IR3

(K4)

IR2

(K3)

JRZ

(K1)

JRC

(K0)

LDPC

PC预置指

示灯状态

1 X X X X 1 灭

0 0 0 X 1 0 亮

0 0 0 X 0 1 灭

0 0 1 1 X 0 亮

0 0 1 0 X 1 灭

0 1 X X X 0 亮

每置控制信号后,按一下CLOCK键,观察PC的变化。注意:X表示为任意值

(二)μPC实验

按下表所示连线

连接信号孔接入孔作用有效电平

1 J2座J3座将K23┈K16接入DBUS[7┈0]

2 IREN K0 预置μPC低电平有效

3 EMEN K1 EM存储器工作使能低电平有效

4 EMWR K2 EM存储器写能低电平有效

5 EMRD K3 EM存储器读能低电平有效

6 IRCK CLOCK μPC工作脉冲上升沿打入

1、μPC加一实验

设置控制信号为:

K3(EMRD) K2(EMWR) K1(EMEN) K0(IREN)

X X X 1

按一次CLOCK一次,CLOCK产生一个上升沿,μPC的输出数据被加一。

2、μPC预置数据实验

用二进制开关K23~K16将数据送到数据总线(DBUS),置数据??H

K23 K22 K21 K20 K19 K18 K17 K16

0 1 0 1 0 1 0 1

设置控制信号为:

K3(EMRD) K2(EMWR) K1(EMEN) K0(IREN)

1 0 0 0

按住CLOCK键,CLOCK由高变低,这时μPC的黄色预置指示灯亮,表明μPC被预置数。放开CLOCK 键,CLOCK产生下降沿,数据??H被写入μPC寄存器。

四、思考题

寄存器

1、AEN、WEN同时为高电平或同时为低电平时,给出CLOCK上升沿,会有什么结果?并解释之答:AEN、WEN同为低电平时,AW寄存器同时写入相同的数据;AEN、WEN同为高电平时,AW寄存器都不写入数据。

2、寄存器组的数据读出与CLOCK脉冲是否有关系?由此说明寄存器的数据打入与读出在控制上的差别。

答:寄存器组的数据读出与CLOCK脉冲没有有关系。寄存器的输入需要CLOCK上升沿控制,而读出只需要OC低电平控制信号。

3、总结寄存器部分实验有多少个控制信号,并写出其作用。

答:AEN、WEN为寄存器A、W写入控制信号,低电平有效;

RRD、RWR为寄存器组分别为读出和写入控制信号,1、0代表写入,0、1代表读出;

SB、SA为寄存器组选定信号,00--R0、01--R1、10--R2、11--R3;

MAROE、MAREN、STEN、OUTEN为MAR、ST、OUT寄存器控制信号。MAROE:控制MAR 内容是否输出到ABUS。MAREN、STEN、OUTEN分别控制DBUS中数据写入寄存器的选定。011--MAR、101--ST、110--OUT

计数器

1、请叙述程序计数器PC、微程序计数器μPC工作原理,两者在预置条件上有何区别?

答:程序计数器PC工作原理如下:程序计数器是包含当前正在执行的指令的地址,当某个指令被获取,程序计数器的存储地址加一,指向顺序中的下一个指令。在程序开始执行前,必须将它的起始地址,即第一条指令所在的内存单元地址送入程序计数器。当执行指令时,处理器将自动修改PC的内容,即每执行一条指令PC增加一个量,这个量等于指令所含的字节数,以便使其保持的总是将要执行的下一条指令的地址。由于大多数指令都是按顺序来执行的,所以修改的过程通常只是简单的对PC加1,但是,当遇到转移指令如JMP指令时,后继指令的地址必须从指令寄存器中的地址字段取得。在这种情况下,下一条从内存取出的指令将由转移指令来规定,而不像通常一样按顺序来取得。微程序计数器μPC工作原理如下:一般情况下,由μPC+1来指向下条微指令在控存中的地址,只有遇到转移类微指令才会改变μPC的内容以实现微程序的转移。这种结构的优点是微指令的字长有效缩短,从12

而可减少控制存储器的容量。两者在预置条件上的区别如下:(1)对于μPC,当RES=0时,μPC 被清0;当IREN=0时,在CK的上升沿,预置数据被打入μPC。指令总线(IBUS)上的数据可来自一片74HC245。当IREN=1时,在CK的上升沿,μPC加1。(2)对于PC,当ELP=1时,LDPC=1,不允许PC被预置;当ELP=0,IR3=0,IR2=0时,且Cy=1时,LDPC=非Cy,当PC被预置;当ELP=0,IR3=0,IR2=1时,且Z=1时,LDPC=非Z,当PC被预置;当ELP=0,IR3=1,IR2=X时,LDPC=0,PC被预置。

2、在程序计数器PC中ELP控制信号的作用;设置什么控制信号可实现PC计数操作?

答:ELP为1时,LDPC为1,不允许PC被预置;ELP为0时,允许PC被预置。

3、对微程序计数器μPC进行预置操作时,如果置入数据12H,μPC模块中的数码管还显示12吗?观察结果并解释之。

答:不显示12,显示13,因为会进行加1操作

五、实验体会及建议

实验遇到的问题及解决办法;

实验内容是否合适:(内容多,适中,内容少);适中

对本次实验的建议,以及以后实验内容安排的建议等。

计算机组成原理实验

计算机组成原理上机实验指导

一、实验准备和实验注意事项 1.本课程实验使用专门的TDN-CM++计算机组成原理教学实验设备,使用前后均应仔细检查主机板,防止导线、元件等物品落入装置导致线路短路、元件损坏。 2.完成本实验的方法是先找到实验板上相应的丝印字及其对应的引出排针,将排针用电缆线连接起来,连接时要注意电缆线的方向,不能反向连接;如果实验装置中引出排针上已表明两针相连,表明两根引出线部已经连接起来,此时可以只使用一根线连接。 3.为了弄清计算机各部件的工作原理,前面几个实验的控制信号由开关单元“SWITCH UNIT”模拟输入;只有在模型机实验中才真正由控制器对指令译码产生控制信号。在每个实验开始时需将所有的开关置为初始状态“1”。 4.本实验装置的发光二极管的指示灯亮时表示信号为“0”,灯灭时表示信号为“1”。 5.实验接线图中带有圆圈的连线为实验中要接的线。 6.电源关闭后,不能立即重新开启,关闭与重启之间至少应有30秒间隔。 7.电源线应放置在机专用线盒中。 8.保证设备的整洁。

二、实验设备的数据通路结构 利用本实验装置构造的模型机的数据通路结构框图如下图。其中各单元部已经连接好,单元之间可能已经连接好,其它一些单元之间的连线需要根据实验目的用排线连接。 图0-2 模型机数据通路结构框图

实验一运算器实验:算术逻辑运算实验 一.实验目的 1.了解运算器的组成结构; 2.掌握运算器的工作原理; 3.掌握简单运算器的数据传送通路。 4.验证运算功能发生器(74LSl81)的组合功能。 二.实验设备 TDN-CM++计算机组成原理教学实验系统一台,排线若干。 三.实验原理 实验中所用的运算器数据通路如图1-l所示。其中两片74LSl81以串行方式构成8位字长的ALU,ALU的输出经过一个三态门(74LS245)和数据总线相连。三态门由ALU-B控制,控制运算器运算的结果能否送往总线,低电平有效。 为实现双操作数的运算,ALU的两个数据输入端分别由二个锁存器DR1、DR2(由74LS273实现)锁存数据。要将数据总线上的数据锁存到DR1、DR2中,锁存器的控制端LDDR1和LDDR2必须为高电平,同时由T4脉冲到来。 数据开关(“INPUT DEVICE”)用来给出参与运算的数据,经过三态门(74LS245)后送入数据总线,三态门由SW-B控制,低电平有效。数据显示灯(“BUS UNIT”)已和数据总线相连,用来显示数据总线上的容。 图中已将用户需要连接的控制信号用圆圈标明(其他实验相同,不再说明),其中除T4为脉冲信号外,其它均为电平信号。由于实验电路中的时序信号均已连至“W/R UNIT”的相应时序信号引出端,因此,在进行实验时,只需将“W/R UNIT”的T4接至“STATE UNIT”的微动开关KK2的输出端,按动微动开关,即可获得实验所需的单脉冲。 ALU运算所需的电平控制信号S3、S2、S1、S0、Cn、M、LDDR1、LDDR2、ALU-B、SW-B均由“SWITCH UNIT”中的二进制数据开关来模拟,其中Cn、ALU-B、SW-B为低电平有效,LDDRl、LDDR2为高电平有效。 对单总线数据通路,需要分时共享总线,每一时刻只能由一组数据送往总线。

计算机组成原理实验七

图16 启停单元布局图 序电路由1片74LS157、2片74LS00、4个LED PLS2、PLS3、PLS4)组成。当LED发光时 图17

图17 时序单元布局图 (二)启停、脉冲单元的原理 1.启停原理:(如图18) 启停电路由1片7474组成,当按下RUN按钮,信号输出RUN=1、STOP=0,表示当前实验机为运行状态。当按下STOP 按钮,信号RUN=0、STOP=1,表示当前实验机为停止状态。当 系统处于停机状态时,微地址、进位寄存器都被清零,并且可 通过监控单元来读写内存和微程序。在停止状态下,当HALT 时有一个高电平,同时HCK有一个上升沿,此时高电平被打入 寄存器中,信号输出RUN=1、STOP=0,使实验机处于运行状态。

图18 启停单元原理图 2.时序电路: 时序电路由监控单元来控制时序输出(PLS1、PLS2、PLS3、PLS4)。实验所用的时序电路(如图19)可产生4个等间隔的时序信号PLS1、PLS2、PLS3、PLS4。为了便于监控程序流程,由监控单元输出PO信号和SIGN脉冲来实现STEP(微单步)、GO (全速)和HALT(暂停)。当实验机处于运行状态,并且是微单步执行,PLS1、PLS2、PLS3、PLS4分别发出一个脉冲,全速执行时PLS1、PLS2、PLS3、PLS4脉冲将周而复始的发送出去。在时序单元中也提供了4个按钮,实验者可手动给出4个独立的脉冲,以便实验者单拍调试模型机。

图19 时序电路图 实验步骤 1.交替按下“运行”和“暂停”,观察运行灯的变化(运行:RUN 亮;暂停:RUN灭)。 2.把HALT信号接入二进制拨动开关,HCK接入脉冲单元的PLS1。按下表接线 接入开关位号 信号定 义 HCK PLS1孔 HALT H13孔 3.按启停单元中的停止按钮,置实验机为停机状态,HALT=1。 4.按脉冲单元中的PLS1脉冲按键,在HCK上产生一个上升

计算机组成原理实验

计算机组成原理 一、8 位算术逻辑运算 8 位算术逻辑运算实验目的 1、掌握简单运算器的数据传送通路组成原理。 2、验证算术逻辑运算功能发生器74LS181的组合功能。 8 位算术逻辑运算实验内容 1、实验原理 实验中所用的运算器数据通路如图3-1所示。其中运算器由两片74LS181以并/串形成8位字长的ALU构成。运算器的输出经过一个三态门74LS245(U33)到ALUO1插座,实验时用8芯排线和内部数据总线BUSD0~D7插座BUS1~6中的任一个相连,内部数据总线通过LZD0~LZD7显示灯显示;运算器的两个数据输入端分别由二个锁存器74LS273(U29、U30)锁存,两个锁存器的输入并联后连至插座ALUBUS,实验时通过8芯排线连至外部数据总线EXD0~D7插座EXJ1~EXJ3中的任一个;参与运算的数据来自于8位数据开并KD0~KD7,并经过一三态门74LS245(U51)直接连至外部数据总线EXD0~EXD7,通过数据开关输入的数据由LD0~LD7显示。 图中算术逻辑运算功能发生器74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M并行相连后连至SJ2插座,实验时通过6芯排线连至6位功能开关插座UJ2,以手动方式用二进制开关S3、S2、S1、S0、CN、M来模拟74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M;其它电平控制信号LDDR1、LDDR2、ALUB`、SWB`以手动方式用二进制开关LDDR1、LDDR2、ALUB、SWB来模拟,这几个信号有自动和手动两种方式产生,通过跳线器切换,其中ALUB`、SWB`为低电平有效,LDDR1、LDDR2为高电平有效。 另有信号T4为脉冲信号,在手动方式下进行实验时,只需将跳线器J23上T4与手动脉冲发生开关的输出端SD相连,按动手动脉冲开关,即可获得实验所需的单脉冲。 2、实验接线 本实验用到4个主要模块:⑴低8位运算器模块,⑵数据输入并显示模块,⑶数据总线显示模块,⑷功能开关模块(借用微地址输入模块)。

计算机组成原理实验

实验一基础汇编语言程序设计 一、实验目的: 1、学习和了解TEC-XP16教学实验系统监控命令的用法。 2、学习和了解TEC-XP16教学实验系统的指令系统。 3、学习简单的TEC-XP16教学实验系统汇编程序设计。 二、预习要求: 1、学习TEC-XP16机监控命令的用法。 2、学习TEC-XP16机的指令系统、汇编程序设计及监控程序中子程序调用。 3、学习TEC-XP16机的使用,包括开关、指示灯、按键等。 4、了解实验内容、实验步骤和要求。 三、实验步骤: 在教学计算机硬件系统上建立与调试汇编程序有几种操作办法。 第一种办法,是使用监控程序的A命令,逐行输入并直接汇编单条的汇编语句,之后使用G命令运行这个程序。缺点是不支持汇编伪指令,修改已有程序源代码相对麻烦一些,适用于建立与运行短小的汇编程序。 第二种办法,是使用增强型的监控程序中的W命令建立完整的汇编程序,然后用M命令对建立起来的汇编程序执行汇编操作,接下来用G命令运行这个程序。适用于比较短小的程序。此时可以支持汇编伪指令,修改已经在内存中的汇编程序源代码的操作更方便一些。 第三种办法,是使用交叉汇编程序ASEC,首先在PC机上,用PC机的编辑程序建立完整的汇编程序,然后用ASEC对建立起来的汇编程序执行汇编操作,接下来把汇编操作产生的二进制的机器指令代码文件内容传送到教学机的内存中,就可以运行这个程序了。适用于规模任意大小的程序。

在这里我们只采用第一种方法。 在TEC-XP16机终端上调试汇编程序要经过以下几步: 1、使教学计算机处于正常运行状态(具体步骤见附录联机通讯指南)。 2、使用监控命令输入程序并调试。 ⑴用监控命令A输入汇编程序 >A 或>A 主存地址 如:在命令行提示符状态下输入: A 2000↙;表示该程序从2000H(内存RAM区的起始地址)地址开始 屏幕将显示: 2000: 输入如下形式的程序: 2000: MVRD R0,AAAA ;MVRD 与R0 之间有且只有一个空格,其他指令相同 2002: MVRD R1,5555 2004: ADD R0,R1 2005: AND R0,R1 2006: RET ;程序的最后一个语句,必须为RET 指令 2007:(直接敲回车键,结束A 命令输入程序的操作过程) 若输入有误,系统会给出提示并显示出错地址,用户只需在该地址重新输入正确的指令即可。 ⑵用监控命令U调出输入过的程序并显示在屏幕上 >U 或>U 主存地址

计算机组成原理实验完整版

河南农业大学 计算机组成原理实验报告 题目简单机模型实验 学院信息与管理科学学院 专业班级计算机科学与技术2010级1班 学生姓名张子坡(1010101029) 指导教师郭玉峰 撰写日期:二○一二年六月五日

一、实验目的: 1.在掌握各部件的功能基础上,组成一个简单的计算机系统模型机; 2.了解微程序控制器是如何控制模型机运行的,掌握整机动态工作过程; 3定义五条机器指令,编写相应微程序并具体上机调试。 二、实验要求: 1.复习计算机组成的基本原理; 2.预习本实验的相关知识和内容 三、实验设备: EL-JY-II型计算机组成原理试验系统一套,排线若干。 四、模型机结构及工作原理: 模型机结构框图见实验书56页图6-1. 输出设备由底板上上的四个LED数码管及其译码、驱动电路构成,当D-G和W/R均为低电平时将数据结构的数据送入数据管显示注:本系统的数据总线为16位,指令、地址和程序计数器均为8位。当数据总线上的数据打入指令寄存器、地址寄存器和程序寄存器时,只有低8位有效。 在本实验我们学习读、写机器指令和运行机器指令的完整过程。在机器指令的执行过程中,CPU从内存中取出一条机器指令到执行结束为一个指令周期,指令由微指令组成的序列来完成,一条机器指令对应一段微程序。另外,读、写机器指令分别由相应的微程序段来完成。

为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,必须设计三个控制操作微程序。 存储器读操作(MRD):拨动清零开关CLR对地址、指令寄存器清零后,指令译码器输入CA1、CA2为“00”时,按“单步”键,可对RAM连续读操作。 存储器写操作(MWE):拨动清零开关CLR对地址、指令寄存器清零后,指令译码器输入CA1、CA2为“10”时,按“单步”键,可对RAM连续写操作。 启动程序(RUN):拨动开关CLR对地址、指令寄存器清零后,指令译码器输入CA1、CA2为“11”时,按“单步”键,即可转入第01号“取指”微指令,启动程序运行。 注:CA1、CA2由控制总线的E4、E5给出。键盘操作方式有监控程序直接对E4、E5赋值,无需接线。开关方式时可将E4、E5接至控制开关CA1、CA2,由开关控制。 五、实验内容、分析及参考代码: 生成的下一条微地址 UA5 UA0 MS5 MS0 微地址

计算机组成原理 实验4

实验四模型机设计 1 实验目的 (1) 掌握一个简单CPU的组成原理。 (2) 在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。 (3) 为其定义五条机器指令,编写相应的微程序,并上机调试掌握整机概念。 2 实验设备 PC机一台,TD-CMA实验系统一套。 3 实验原理 本实验要实现一个简单的CPU,并且在此CPU的基础上,继续构建一个简单的模型计算机。CPU由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如图4-1所示。这个CPU在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU必须和主存挂接后,才有实际的意义,所以还需要在该CPU的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。 图4-1 基本CPU构成原理图 除了程序计数器(PC),其余部件在前面的实验中都已用到,在此不再讨论。系统的程序计数器(PC)和地址寄存器(AR)集成在一片CPLD芯片中。CLR连接至CON单元的总清端CLR,按下CLR按钮,将使PC清零,LDPC和T3相与后作为计数器的计数时钟,当LOAD为低时,计数时钟到来后将CPU内总线上的数据打入PC。

T3 CLR 图4-2 程序计数器(PC)原理图 本模型机和前面微程序控制器实验相比,新增加一条跳转指令JMP,共有五条指令:IN(输入)、ADD(二进制加法)、OUT(输出)、JMP(无条件转移),HLT(停机),其指令格式如下(高4位为操作码): 助记符机器指令码说明 IN0010 0000IN R0 ADD0000 0000R0 + R0 R0 OUT0011 0000R0 OUT JMP addr1110 0000 ********addr PC HLT0101 0000停机 其中JMP为双字节指令,其余均为单字节指令,********为addr对应的二进制地址码。微程序控制器实验的指令是通过手动给出的,现在要求CPU自动从存储器读取指令并执行。根据以上要求,设计数据通路图,如图4-3所示。 本实验在前一个实验的基础上增加了三个部件,一是PC(程序计数器),另一个是AR(地址寄存器),还有就是MEM(主存)。因而在微指令中应增加相应的控制位,其微指令格式如表4-1所示。

计算机组成原理实验五

上海大学计算机学院 《计算机组成原理实验》报告一 姓名:学号:教师: 时间:机位:报告成绩: 实验名称:指令系统实验 一、实验目的:1. 读出系统已有的指令,并理解其含义。 2. 设计并实现一条新指令。 二、实验原理:利用CP226实验仪(用74HC754即8D型上升沿触发器)上的K16…K23 开关为数据总线DBUS设置数据,其他开关作为控制信号,一条指令执行完 毕PC会自动加1,系统顺序执行下一条指令,但系统要进入一个新的指令序 列时,如跳转、转子程序等,必须给PC打入新的起始值——新指令序列的 入口地址。实验箱实现把数据总线的值(目标地址)打入PC的操作,以更新 PC值。 三、实验内容:1. 考察机器指令64的各微指令信号,验证该指令的功能。(假设R0=77H, A=11H, 77地址单元存放56H数据,64指令的下一条指令为E8) 2. 修改机器指令E8,使其完成“输出A+W的结果左移一位后的值到OUT” 操作。 四、实验步骤:1. 考察机器指令64的各微指令信号,验证该指令的功能。(假设R0=77H, A=11H, 77地址单元存放56H数据,64指令的下一条指令为E8) ①在初始化系统(Reset),进入微程序存储器模式(μEM状态),用NX键观 察64H,65H,66H,67H, 地址中原有的微指令,分析并查表确定其功能。 ②在EM状态下,Adr打入A0,DB打入64;按NX键,Adr显示A1,DB 打入E8。 ③在μEM状态下,在E8H、E9H、EAH、EBH下分别打入:FFDED8、CBFFFF、 FFFFFF、FFFFFF。 ④给μPC状态下,打入μPC(00)、PC(A0)、A(11)、W(00),按3次 NX输入R0(77)。 ⑤按下STEP键,观察实验现象。 2. 修改机器指令E8,使其完成“输出A+W的结果左移一位后的值到OUT” 操作。 ⑥继续按STEP键,直到进入E8状态下。 ⑦在EM状态下,打入Adr为77,DB为56。 ⑧按STEP键执行指令,观察实验现象。 五、实验现象:OUT寄存器的值为5A。 六、数据记录、分析与处理:实验结果和预期的一样。 七、实验结论:1、机器指令64对应的各微指令码为:FF77FF、D7BFEF、FFFE92、CBFFFF。其功能为:将R0寄存器的值打入地址寄存器MAR;存贮器EM将MAR输出地址所对应的值打入W寄存器;ALU直通门输出的值打入A寄存器,A、W中的值进行“与”运算,结果在A输出;PC+1,读出下一条指令并立即执行。 八、建议:暂无。

计算机组成原理--实验七--脱机方式下微代码装入与执行实验

实验七脱机方式下微代码装入与执行实 验 一、实验目的 (1)通过微程序的编制、装入、执行,验证微程序控制的工作方法。 (2)观察微程序的运行过程,未进行简单模型计算机实验作准备。 二、实验原理 (1)时序信号 (2)指令与微指令周期 (3)机器指令与机器指令周期 (4)微程序控制器逻辑结构 (5)微程令流程分析 (6)微程令译码分析 三、实验过程 (1)连线 ①把时钟单元(CLOCK UNIT)的T1-T4接到微程序控制单元(MAIN CONTROL UNIT)的T1-T4。用另一根线把时钟单元(CLOCK UNIT)的T4接到微程序控制单元(MAIN CONTRO UNIR)的T4。 ②把手动控制开关单元(MANUAL UNIT)的MA6-MA0接到微程序 控制单元(MAIN CONTROL UNIT)的MA6-MA0。 (2)写入伪代码操作过程

①拨动一下开关,即实现“1—0—1”,产生一个清除脉冲,使微 程序控制单元(MAIN CONTROL UNIT)初始化。 ②把微程序控制单元(MAIN CONTROL UNIT)右上角的编程开关置 于“READ”状态 ③把时钟单元(CLOCK UNIT)的RUN/STEP开关置于“STEP”状态。 ④在手动控制单元(MANUAL UNIT)的MA6-MA0开关上拨入微控 制存储器地址开关MA6—MA0,按表2-15从00H开始。 ⑤在微程序控制单元(MAIN CONTROL UNIT)的微指令代码开关 MK23-MK0上按表2-15的内容拨入24位的微指令,微指令代码显示灯上显示拨入的微指令代码。 ⑥按动时钟单元(CLOCK UNIT)的“START”按键,产生一组时序信 号(T1—T4),作用是把微指令代码开关MK23-MK0上的24位的微指令代码希尔与MA6—MA0指定的微程序控制存储器(2816)单元中,并显示MA6—MA0微程序控制存储器地址。 ⑦把MA6—MA0开关上微控至存储器地址加1,变成01H, 02H,………,重复上面第(5)、第(6)两步直接把表2-15中微指令代码全部写入微程序控制储存器(2816)中。 (3)校验微代码操作过程 ①拨动一下开关,即实现“1—0—1”,产生一个清除脉冲,使微 程序控制单元(MAIN CONTROL UNIT)初始化。 ②把微程序控制单元(MAIN CONTROL UNIT)右上角的编程开关置 于“READ”状态,确保RUN/STEP开关置于“STEP”状态。

《计算机组成原理》实验七、综合实验

实验七综合设计 一.实验目的: 1、掌握程序的结构。 2、掌握程序的设计、调试方法。 二.实验内容: 假设有一组数据:5,-4,0,3,100,-51,请编一程序,判断:每个数大于0,等于0,还是小于0;并输出其判断结果。 即: 1 当x>0 y= 0 当x=0 -1 当x<0 DA TA SEGMENT X DB -25 Y DB ? DA TA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DA TA START:MOV AX,DA TA MOV DS,AX ;初始化 MOV AL,X ;X取到AL中 CMP AL,0 ;AL中的内容和0比较 JGE BIG ;大于等于0,转BIG MOV BL,-1 ;否则为负数,-1送BL JMP EXIT ;转到结束位置 BIG: JE EE ;AL中的内容是否为0,为0转EE MOV BL,1 ;否则为在于0,1送BL JMP EXIT ;转到结束位置 EE: MOV BL,0 ;0送BL中 EXIT: MOV Y,BL ;BL中内容送入Y单元 MOV AH,4CH INT 21H ;程序结束 CODE ENDS END START ;汇编结束

三.实验要求: 实验前要做好充分准备,包括汇编程序清单、调试步骤、调试方法,以及对程序结果的分析等。 四.编程提示: 1、首先将原始数据装入起始地址为XX的字节存储单元中。 2、将判断结果以字符串的形式存放在数据区中,以便在显示输出时调用。 3、其中判断部分可采用CMP指令,得到一个分支结构,分别输出“y=0”, “y=1”, “y=-1”。 4、程序中存在一个循环结构,循环6次,调用6次分支结构后结束。 五.思考题: 程序中的原始数据是以怎样的形式存放在数据区中的?请用DEBUG调试程序观察并分析。 六.实验报告: 1、程序说明。说明程序的功能、结构。 2、调试说明。包括上机调试的情况、上机调试步骤、调试所遇到的问题是如何解决的,并对调试过程中的问题进行分析,对执行结果进行分析。 3、画出程序框图。 4、写出源程序清单和执行结果。 5、回答思考题。

计算机组成原理_实验报告四(含答案)

湖南科技学院 电子与信息工程学院 实验报告 课程名称: 姓名: 学号: 专业: 班级: 指导老师:

实验四微程序控制组成实验 一、实验目的及要求 1.将微程序控制器同执行部件(整个数据通路)联机,组成一台模型计算机。 2.用微程序控制器控制模型计算机的数据通路。 3.执行给定的简单程序,掌握机器指令与微指令的关系,牢固建立计算机的整机概念。 二、实验电路 本次实验将前面几个实验中的所模块,包括运算器、存储器、通用寄存器堆等同微程序控制器组合在一起,构成一台简单的模型机。这是最复杂的一个实验,也将是最有收获的一个实验。 在前面的实验中,实验者本身作为“控制器”,完成了对数据通路的控制。而在本次实验中,数据通路的控制将交由微程序控制器来完成。实验机器从内存中取出一条机器指令到执行指令结束的一个指令周期,是由微程序完成的,即一条机器指令对应一个微程序序列。 实验电路大致如下面框图所示。其中控制器是控制部件,数据通路是执行部件,时序发生器是时序部件。需使用导线将各个部件控制信号与控制器相连。 三、实验主要仪器设备 1.TEC-5计算机组成实验系统1台 2.逻辑测试笔一支(在TEC-5实验台上) 四、实验任务 1.对机器指令组成的简单程序进行译码。将下表的程序按机器指令格式手工汇编成二进制机器代码, 此项任务请在预习时完成。 2. 3.使用控制台命令将寄存器内容初始化为:R0=11H,R1=22H,R2=0AAH。

4.使用控制台命令将任务1中的程序代码存入内存中(注意起始地址为30H),以及将内存地址为 11H的单元内容设置为0AAH。 5.用单拍(DP)方式执行一遍程序,执行时注意观察各个指示灯的显示并做好记录(完成实验表格), 从而跟踪程序执行的详细过程(可观察到每一条微指令的执行过程)。 6.用连续方式再次执行程序。这种情况相当于计算机正常的工作。程序执行到STP指令后自动停机。 读出寄存器中的运算结果,与理论值比较。 五、实验步骤和实验结果记录 1.程序译码。 2.实验接线(本实验接线比较多,需仔细) 只要把上表种同列的信号用线连接即可,一共接线33条。 接好线后,将编程开关拨到“正常位置”。合上电源,按CLR#按钮,使TEC-5实验实验系统处于初始状态。 3.实验任务3:使用控制台命令将寄存器内容初始化为:R0=11H,R1=22H,R2=0AAH的操作步骤及结果记录。 (1)掌握写寄存器WRF的原理和步骤(详见实验参考资料)。 (2)操作过程如下:

计算机组成原理实验五存储器读写实验

实验五 存储器读写实验实验目的 1. 掌握存储器的工作特性。 2. 熟悉静态存储器的操作过程,验证存储器的读写方法。 二、实验原理 表芯片控制信号逻辑功能表

2. 存储器实验单元电路 芯片状态 控制信号状态 DO-D7 数据状态 M-R M -W 保持 1 1 高阻抗 读出 0 1 6116-^总钱 写人 1 0 总线-*6116 无效 报警 ^2-10 D7—DO A7—A0

團2-8存储器实验电路逻辑图 三、实验过程 1. 连线 1) 连接实验一(输入、输出实验)的全部连线。 2) 按逻辑原理图连接M-W M-R 两根信号低电平有效信号线 3) 连接A7-A0 8根地址线。 4) 连接B-AR 正脉冲有效信号 2. 顺序写入存储器单元实验操作过程 1) 把有B-AR 控制开关全部拨到0,把有其他开关全部拨到1,使全部信号都处 于无效 状态。 2) 在输入数据开关拨一个实验数据,如“ 00000001”即16进制的01耳 把IO-R 控制开关拨下,把地址数据送到总线。 3) 拨动一下B-AR 开关,即实现“1-0-1 ”产生一个正脉冲,把地址数据送地 址寄存器保存。 4) 在输入数据开关拨一个实验数据,如“ 10000000',即16进制的80耳 把IO-R 控 制开关拨下,把实验数据送到总线。 3. 存储器实验电路 0 O O 0 0 olo O O O O 0 00 OUTPUT L/O :W 8-AR £ ■」2 ■七 ol^Fgr' L P O 74LS273 A7- AO vz 0 o|o 0 r 6116 A7 INPUT D7-O0 [olololololololol T2

计算机组成原理实验6

第六节 CPU组成与机器指令执行实验 一、实验目的 (1)将微程序控制器同执行部件(整个数据通路)联机,组成一台模型计算机; (2)用微程序控制器控制模型机数据通路; (3)通过CPU运行九条机器指令(排除中断指令)组成的简单程序,掌握机器指令与微指令的关系,牢固建立计算机的整机概念。 二、实验电路 本次实验用到前面四个实验中的所有电路,包括运算器、存储器、通用寄存器堆、程序计数器、指令寄存器、微程序控制器等,将几个模块组合成为一台简单计算机。因此,在基本实验中,这是最复杂的一个实验,也是最能得到收获的一个实验。 在前面的实验中,实验者本身作为“控制器”,完成数据通路的控制。而在本次实验中,数据通路的控制将由微程序控制器来完成。CPU从内存取出一条机器指令到执行指令结束的一个机器指令周期,是由微指令组成的序列来完成的,即一条机器指令对应一个微程序。 三、实验设备 (1)TEC-9计算机组成原理实验系统一台 (2)双踪示波器一台 (3)直流万用表一只 (4)逻辑测试笔一支 四、实验任务 (1)对机器指令系统组成的简单程序进行译码。 (2)按照下面框图,参考前面实验的电路图完成连线,控制器是控制部件,数据通路(包括上面各模块)是执行部件,时序产生器是时序部件。连线包括控制台、时序部分、数据通路和微程序控制器之间的连接。其中,为把操作数传送给通用寄存器组RF,数据通路上的RS1、RS0、RD1、RD0应分别与IR3至IR0连接,WR1、WR0也应接到IR1、IR0上。 开关控制 控制台时序发生器 时序信号 开关控制指示灯信号控制信号时序信号 控制信号 微程序控制器数据通路 指令代码、条件信号

计算机组成原理实验实验报告

计算机组成原理实验报告 学院信息与管理科学学院 专业班级计算机科学与技术2010级2班学生姓名毛世均 1010101046 指导教师郭玉峰 撰写日期:二○一二年六月四日

SA4=1 1.根据上边的逻辑表达式,分析58页图6-2的P1测试和P4测试两条指令的微地址转移方向。 P1测试:进行P1测试时,P1为0,其他的都为1, 因此SA4=1, SA3=I7,SA2=I6,SA1=,SA0=I4 微地址011001,下址字段为001000下址字段001000译码后,高两位不变,仍然为00,低四位受到机器指令的高四位I7-I4的影响。 机器指令的高四位为0000时,下一条微指令地址为001000,转到IN 操作。机器指令高四位0010时,下一条微指令地址为001010,转到MOV 操作。机器指令高四位为0001时,下一条微指令地址为001001,转到ADD 操作。机器指令高四位为0011时,下一条微指令地址为001011,转到OUT 操作。机器指令高四位为0100时,下一条微指令地址001100,转到JMP 操作 P4测试:进行P4测试时,P4为0,其他的都为1. 因此SA4=SA3=SA2=1,SA1=CA2,SA0=CA1 微地址000000,下址字段为010000. 010000被译码之后,高四位不变,0100低两位由CA2和CA1控制。CA2和CA1的值是由单片机的键盘填入控制的。 当实验选择CtL2=1时,CA2和CA1被填入0和1,这时低两位被译码电路翻译成01,所以下一条微地址就是010001,然后进入写机器指令的状态。当实验选择CtL2=2时,CA2和CA1被填入1和0,这时低两位被译码电路翻译成10,所以下一条微地址就是010010,然后进入读机器指令的状态。当实验选择CtL2=2时,CA2和CA1被填入1和1,这时低两位被译码电路翻译成 11,所以下一条微地址就是010011,然后进入运行机器指令的状态。 2.分析实验六中五条机器指令的执行过程。

计算机组成原理实验报告5- PC实验

2.5 PC实验 姓名:孙坚学号:134173733 班级:13计算机日期:2015.5.15 一.实验要求:利用CPTH 实验仪上的K16..K23 开关做为DBUS 的数据,其它开关做为控制信号,实现程序计数器PC的写入及加1 功能。 二.实验目的:1、了解模型机中程序计数器PC的工作原理及其控制方法。2、了解程序执行过程中顺序和跳转指令的实现方法。 三.实验电路:PC 是由两片74HC161构成的八位带预置记数器,预置数据来自数据总线。记数器的输出通过74HC245(PCOE)送到地址总线。PC 值还可以通过74HC245(PCOE_D)送回数据总线。 PC 原理图 在CPTH 中,PC+1 由PCOE 取反产生。 当RST = 0 时,PC 记数器被清0 当LDPC = 0 时,在CK的上升沿,预置数据被打入PC记数器 当PC+1 = 1 时,在CK的上升沿,PC记数器加一 当PCOE = 0 时,PC值送地址总线

PC打入控制原理图 PC 打入控制电路由一片74HC151 八选一构成(isp1016实现)。 当ELP=1 时,LDPC=1,不允许PC被预置 当ELP=0 时,LDPC 由IR3,IR2,Cy,Z确定 当IR3 IR2 = 1 X 时,LDPC=0,PC 被预置 当IR3 IR2 = 0 0 时,LDPC=非Cy,当Cy=1时,PC 被预置 当IR3 IR2 = 0 1 时,LDPC=非Z,当Z=1 时,PC 被预置 连接线表 四.实验数据及步骤: 实验1:PC 加一实验

置控制信号为: 按一次STEP脉冲键,CK产生一个上升沿,数据PC 被加一。 实验2:PC 打入实验 二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据12H 置控制信号为: 每置控制信号后,按一下STEP键,观察PC的变化。 五.心得体会: 经过上一个实验的练习,在做这个实验的时候更加得心应手,了解了模型机中程序计数器PC的工作原理及其控制方法,还有了解了程序执行过程中顺序和跳转指令的实现方法。

《计算机组成原理》实验报告四

《计算机组成原理》 实 验 报 告 学院:数学与计算机学院 专业:软件工程 班级学号: 学生姓名: 实验日期: 2014-11-8 指导老师: 成绩评定: 西华大学数学与计算机学院计算机组成原理实验 室 实验四存储器和总线实验 一、实验目的 熟悉存储器和总线的硬件电路

二、实验要求 按照实验步骤完成实验项目,熟悉存储器的读、写操作,理解在总线上数据传输的方法。 三、实验说明 (一)存储器和总线的构成 1.总线由一片74LS245、一片74LS244组成,把整个系统分为内部总线和外部总线。二片74LS374锁存当前的数 据、地址总线上的数据以供LED显示。(如图8)

图8 总线布局图 2.存储器采用静态RAM(1片6264) 3.存储器的控制电路由一片74LS32和74LS08组成。如图9

图9 存储器控制电路布局图(二)存储器和总线的原理

1.总线的原理:由于本系统内使用8根地址线、8根数据线,所以使用一片74LS245作为数据总线,另一片 74LS244作为地址总线(如图10)。总线把整个系统分为内部数据、地址总线和外部数据、地址总线,由于数据总线需要进行内外部数据的交换,所以由BUS信号来控制数据的流向,当BUS=1时数据由内到外,当 BUS=0时数据由外到内。 图10 总线单元 2.由于本系统内使用8根地址线、8根数据线,所以6264的A8~A12接地,其实际容量为256个字节(如图11)。 6264的数据、地址总线已经接在总线单元的外部总线 上。存储器有3个控制信号:地址总线设置存储器地 址,RM=0时,把存储器中的数据读出到总线上;当 WM=0,并且EMCK有一个上升沿时,把外部总线上的数据写入存储器中。为了更方便地编辑内存中的数 据,在实验机处于停机状态时,可由监控来编辑其中的数据。

计算机组成原理实验报告

实验一8位程序计数器PC[7:0]的设计 实验要求: 1.分别用图形方式和V erilog HDL语言设计8位程序计数器,计数器带有复位,计数,转移功能。 2.具体要求参见1_部件实验内容.doc说明文件。 实验实现: 1.用图形方式设计实现8位程序计数器,用到了两个74LS161四位十六进制计数器,主要步骤是两个四位十六进制计数器的串联,低四位计数器的进位端RCO连到高四位计数器的进位使能端ENT,然后连上reset、clk、ir[7:0]、t[1:0]、pc[7:0]、rco等输入输出信号,最后加上转移控制逻辑即可。注意两个十六进制计数器是同步的,具体参见PC_8bit.gdf文件。 2.编译通过,建立波形仿真文件,设置输入信号参数。注意在一张图中同时实现复位(reset低位有效)、计数、转移功能,最后加上一些文字注释即可,具体参见PC_8bit.scf文件。 3.用V erilog HDL语言设计实现8位程序计数器。在已经实现.gdf文件的基础上使用库函数形式是很容易编写出.v文件的,不过学生选择了行为描述方式实现,因为后者更具有通用性,依次实现8位程序计数器的复位、计数、转移功能即可,具体参见PC_8bit.v文件。 4.编译仿真类似上述步骤2。 实验小结: 1.这是计算机组成原理的第一个实验,比较简单,按照实验要求即可完成实验。通果这次实验,我对Max+Plus软件的使用方法和V erilog HDL语言编程复习了一遍,为后面的实验打好基础。 实验二CPU运行时序逻辑的设计 实验要求: 1.用V erilog HDL 语言设计三周期时序逻辑电路,要求带复位功能,t[2:0]在非法错误状态下能自动恢复。(比如说110恢复到001)。 2.具体要求参见1_部件实验内容.doc说明文件。 实验实现: 1.用V erilog HDL 语言设计实现带复位和纠错功能的三周期时序逻辑电路。输入clk外部时钟信号和reset复位信号(低位有效),输出ck内部时钟信号和三周期信号t[2:0]。利用两级3位移位式分频逻辑实现,具体参见cycle_3.v文件。 2.编译通过,建立波形仿真文件,设置clk外部时钟信号和reset复位信号,Simulate 即可输出实验要求中显示的波形。 实验小结: 1.刚做这个实验的时候不知道CPU运行时序逻辑设计的真实用途,在进一步学习了计算机组成原理的理论知识,做cpu4实验后才知道是用来由外部时钟信号clk产生内部时钟信号ck以及三周期信号t[2:0]的。刚完成本次实验的时候未添加三周期信号t[2:0]的自动功能,后来完成cpu4后补上了。 实验三静态存储器的设计与读写验证 实验要求: 1.设计一个SRAM存储器,地址和数据都是8位,存储容量是256个字节。 2.采用异步的时序逻辑设计方式,数据是双向的,输入输出不寄存,存储器的地址也不寄存。 3.具体要求参见1_部件实验内容.doc说明文件。 实验实现:

计算机组成原理实验1.

计算机组成原理实验1 运算器(脱机)实验 通过开关、按键控制教学机的运算器执行指定的运算功能,并通过指示灯观察运算结果。实验原理: 为了控制Am2901运算器能够按照我们的意图完成预期的操作功能,就必须向其提供相应的控制信号和数据。 控制信号包括 1、选择送入ALU的两路操作数据R和S的组合关系(实际来源)。 2、选择ALU的八种运算功能中我们所要求的一种。这可通过提供三位功能选择码I5、 I4、I3实现。 3、选择运算结果或有关数据以什么方式送往何处的处理方案,这主要通过通用寄存器 组合和Q寄存器执不执行接收操作或位移操作,以及向芯片输出信息Y提供的是 什么内容。这是通过I8、I7、I6三位结果选择码来控制三组选择门电路实现的。 外部数据包括 1、通过D接收外部送来的数据 2、应正确给出芯片的最低位进位输入信号C n 3、关于左右移位操作过程中的RAM3、RAM0、Q3和Q0的处理。 4、当执行通用寄存器组的读操作时,由外部送入的A地址选中的通用寄存器的内容送 往A端口,由B地址选中的通用寄存器的内容送往B端口,B地址还用作通用寄 存器的写汝控制。 对于芯片的具体线路,需说明如下几点: 1、芯片结果输出信号的有无还受一个/OE(片选)信号的控制。 2、标志位F=0000为集电极开路输出,容易实现“线与”逻辑,此管脚需经过一个电阻 接到+5V。 3、RAM3、RAM0、Q3和Q0均为双向三态逻辑,一定要与外部电路正确连接。 4、通用寄存器组通过A端口、B端口读出内容的输出处均有锁存器线路支持。 5、该芯片还有两个用于芯片间完成高速进位的输出信号/G和/P。 6、Am2901芯片要用一个CLK(CP)时钟信号作为芯片内通用寄存器、锁存器和Q寄 存器的打入信号。 实验步骤如下: (1)选择运算器要完成的一项运算功能,包括数据来源,运算功能,结果保存等;(2)需要时,通过数据开关向运算器提供原始数据; (3)通过24位的微型开关向运算器提供为完成指定运算功能所需要的控制信号; (4)通过查看指示灯或用电表量测,观察运算器的运行结果(包括计算结果和特征标志)。实验准备 12为微型开关的具体控制功能分配如下: A口和B口地址:送给Am2901器件用于选择源与目的操作数的寄存器编号; I8~I0:选择操作数来源、运算操作功能、选择操作数处理结果和运算器输出内容的3组3位控制码; Sci,SSH和SST:用于确定运算器最低位的进位输入、移位信号的入/出和怎样处理Am2901产生的状态标志位的结果。

计算机组成原理实验五参考

实验五CPU组成与机器指令执行实验 第一步,对机器指令系统组成的简单程序进行译码。 第二步,接线 本实验的接线比较多,需仔细。 1.将跳线开关J1用短路子短接。时序发生器的输入TJI接控制存储器的输出TJ。控制器的输入C接运算器ALU的C。控制器的输入IR7、IR6、IR5、IR4依次指令寄存器IR的输出IR7、IR6、IR5、IR4。共6条线。

2.控制器的输出LDIR(CER)、LDPC(LDR4)、PC_ADD、PC_INC、M4、LDIAR、LDAR1(LDAR2)、AR1_INC、M3、LDER、IAR_BUS#、SW_BUS#、RS_BUS#、ALU_BUS、CEL#、LRW、WRD、LDDR1(LDDR2)、M1(M2)、S2、S1、S0 依次与数据通路的对应信号连接。共27条线。

3.指令寄存器IR的输出IR0接双端口寄存器堆的RD0、WR0,IR1接RD1、WR1,IR2接RS0,IR3接RS1。共6条线。 合上电源。按CLR#按钮,使实验系统处于初始状态。 第三步,利用控制台微程序KLD设置通用寄存器R2、R3的值 在本操作中,我们打算使R2 = 60H,R3 = 61H。 1.令DP = 0,DB = 0,DZ =0,使实验系统处于连续运行状态。令SWC = 0、SWB = 1、SWA = 1,使实验系统处于寄存器加载工作方式KLD。按CLR#按钮, 使实验系统处于初始状态。 2.在SW7—SW0上设置一个存储器地址,该存储器地址供设置通用寄存器使用。 该存储器地址最好是不常用的一个地址,以免设置通用寄存器操作破坏重要的存储 器单元的内容。例如可将该地址设置为0FFH。按一次QD按钮,将0FFH写入AR1 和AR2。

计算机组成原理实验报告4

上海大学计算机学院 实验名称:指令系统实验 一、实验目的 1. 读出系统已有的指令,并理解其含义。 2. 设计并实现一条新指令。 二、实验原理 微程序和机器指令,实验箱的机器指令系统,实验箱机器指令系统的布线,实验箱机器指令系统的工作原理,实验箱PC的打入原理,程序存储器模式下的操作。 三、实验内容 1. 考察机器指令64的各微指令信号,确定该指令的功能。 (假设R0=77, A=11, 77单元存放56H数据,64指令的下一条指令为E8) 2. 修改机器指令E8,使其完成“输出A+W的结果左移一位后的值到OUT”操作。 3*. 修改机器指令F0,使其完成“A+R2的结果右移一位的值到OUT”的操作 四、实验步骤 实验任务一:

考察机器指令64的各微指令信号,确定该指令的功能。 实验步骤: 1.初始化系统(Reset),进入μEM,在Adr字段送入64,按NX键,可查看其对应的微指令: 64: FF 77 FF 65: D7 BF EF 66:FF FE 92 67:CB FF FF 2.分析其二进制代码,分析其控制功能 64: 1111 1111 0111 0111 1111 1111 从寄存器R?中取出地址打入地址寄存器MAR。 65: 1110 0111 1011 1111 1110 1111 把地址寄存器MAR的存储器值EM打入寄存器W。 66:1111 1111 1111 1110 1001 0010 把寄存器A和寄存器W中的数据进行或运算后打入寄存器A和标志位C,Z。 67:1100 1011 1111 1111 1111 1111 读出下一条指令并立即执行。 四条指令功能:把寄存器A和寄存器R?中地址内存的数据进行或运算,结果保存在寄存器A中,然后执行下一条指令。 实验任务二: 1.分解任务:修改机器指令E8,使其完成“输出A+W的结果左移一位后的值到OUT”操作的操作。第一步完成A+W;并把“左移一位的值送OUT”;第二步完成取指令。 2.编制微指令:由“控制总线功能对应表”,可确定这四步基本操作的微指令码为:

相关文档
相关文档 最新文档