计算机组成原理实验报告

《计算机组成与系统结构》

实验指导书

计算机与信息工程系

2013年7月

目录

实验概述 .......................................................... 实验项目一专用寄存器(1)........................................... 实验项目二通用寄存器.............................................. 实验项目三专用寄存器(2)........................................... 实验项目四数据输出/移位门......................................... 实验项目五微程序计数器............................................ 实验项目六运算器.................................................. 实验项目七程序计数器.............................................. 实验项目八存储器读写.............................................. 实验项目九微程序存储器读写........................................ 实验项目十中断.................................................... 实验项目十一模型计算机设计........................................

实验概述

一、实验目的

1.加深对讲授内容的理解,通过实验来掌握计算机系统原理。熟练地掌握计算机中每个部件的电路设计

方法并完成调试和分析结果。

2.熟悉所用的仿真软件。学会使用仿真软件上机调试电路。

3.通过使用实验箱实验来观察系统运行结果。

二、实验准备工作

1.熟悉所用的实验箱和计算机的性能和使用方法。

2.复习和掌握与本次实验有关的教学内容。

3.每个实验之前设计好实验所需电路。

三、实验报告

实验报告应包括以下内容:实验目的、实验内容、运行结果、对运行结果的分析以及本次实验所取得的经验。

四、实验任务与时间安排

五、参考教材

《计算机组成原理》唐朔飞着高等教育出版社

《计算机组成与结构》王爱英着清华大学出版社

实验项目一专用寄存器(1)

一、实验目的

掌握模型机中专用寄存器结构、工作原理及其控制方法。

二、实验内容

1、实验要求

利用CPTH 实验仪上的K16..K23 开关做为DBUS 的数据,其它开关做为控制信号,将数据写入专用寄存器A、工作寄存器W,然后读出数据。

2、实验原理

CPTH 用74HC574 来构成寄存器。74HC574 的引脚图见图1,功能如下:

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

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

实验原理图如图2和图3所示。

3、实验步骤

首先设置手动模式:按[TV/ME]键三次,进入"Hand......"手动状态。

(1)按照下表连接线。

(2)连接数据线:K16~K23 分别连接D0~D7。

(3)系统清零K23-K16开关置零,按[RST]钮。

(4)将55H写入A寄存器。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据55H:

置控制信号为:

图1 74HC574 的引脚图

图3 寄存器W原理图

图2 寄存器A原理图

按住STEP脉冲键,CK由高变低,这时寄存器A的黄色选择指示灯亮,表明选择A寄存器。放开STEP 键,CK由低变高,产生一个上升沿,数据55H被写入A寄存器。

(5)将66H写入W寄存器。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据66H

置控制信号为:

按住STEP脉冲键,CK由高变低,这时寄存器W 的黄色选择指示灯亮,表明选择W寄存器。放开STEP 键,CK 由低变高,产生一个上升沿,数据66H 被写入W 寄存器。

操作注意事项:*数据是在放开STEP键后改变的,也就是CK的上升沿数据被打入。

*WEN,AEN为高时,即使CK有上升沿,寄存器的数据也不会改变。

实验项目二通用寄存器

一、实验目的

掌握模型机中通用寄存器结构、工作原理及其控制方法。

二、实验内容

1、实验要求

利用CPTH 实验仪上的K16..K23 开关做为DBUS 的数据,其它开关做为控制信号,将数据写入R0,R1,R2,R3寄存器并读出。

2、实验原理

通用寄存器的原理图如图4所示。

图4 通用寄存器原理图

3、实验步骤

首先设置手动模式:按[TV/ME]键三次,进入"Hand......"手动状态。

(1)按照下表连接线。

(2)将11H写入R0寄存器。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据11H:

按下表置控制信号。

按住STEP 脉冲键,CK 由高变低,这时寄存器R0 的黄色选择指示灯亮,表明选择R0 寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据11H 被写入R0 寄存器。

(3)将22H写入R1寄存器。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据22H

置控制信号为:

按住STEP 脉冲键,CK 由高变低,这时寄存器R1 的黄色选择指示灯亮,表明选择R1 寄存器。放开STEP 键,CK由低变高,产生一个上升沿,数据22H被写入R1 寄存器。

(4)将33H写入R2寄存器。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据33H

置控制信号为:

按住STEP 脉冲键,CK 由高变低,这时寄存器R2 的黄色选择指示灯亮,表明选择R2 寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据33H被写入R2 寄存器。

(5)将44H写入R3寄存器。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据44H:

置控制信号为:

按住STEP 脉冲键,CK 由高变低,这时寄存器R3 的黄色选择指示灯亮,表明选择R3 寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据44H被写入R3 寄存器。

注意观察:数据是CK的上升沿数据被打入。K1(SB),K0(SA) 用于选择寄存器。

(6)读R0寄存器。

置控制信号为:

这时寄存器R0 的红色输出指示灯亮,R0 寄存器的数据送上数据总线。此时数据总线指示灯L7... L0为:00010001. 将K11(RRD)置为1,关闭R0 寄存器输出。

(7)读R1寄存器。

置控制信号为:

这时寄存器R1 的红色输出指示灯亮,R1 寄存器的数据送上数据总线。此时数据总线指示灯L7... L0为: 00100010。 将K11(RRD)置为1, 关闭R1 寄存器输出。

(7)读R2寄存器。 置控制信号为:

这时寄存器R2 的红色输出指示灯亮,R2 寄存器的数据送上数据总线。此时数据总线指示灯L7... L0为: 00110011。 将K11(RRD)置为1, 关闭R2 寄存器输出。

(8)读R3寄存器。 置控制信号为:

这时寄存器R3 的红色输出指示灯亮,R3 寄存器的数据送上数据总线。此时数据总线指示灯L7... L0为: 01000100。 将K11(RRD)置为1, 关闭R3 寄存器输出。

注意观察:

1.数据在K11(RRD)为0 时输出,不是沿触发,与数据打入不同。

实验项目三 专用寄存器(2)

一、实验目的

掌握模型机中其它专用寄存器结构、工作原理及其控制方法。

二、实验内容

1、实验要求

利用CPTH 实验仪上的K16..K23 开关做为DBUS 的数据,其它开关做为控制信号,将数据写入MAR 寄存器、ST 寄存器、OUT 寄存器并读出。

2、实验原理

MAR 寄存器、ST 寄存器、OUT 寄存器的原理图分别如图5、6、7所示。

3、实验步骤

首先设置手动模式:按[TV/ME]键三次,进入"Hand......"手动状态。 (1)按照下表连接线。

(1)将12H 写入MAR 寄存器。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据12H : 置控制信号为:

按住STEP 脉冲键,CK 由高变低,这时寄存器MAR 的黄色选择指示灯亮,表明选择MAR 寄存器。放开STEP 键,CK 由低变高,产生一个上升沿,数据12H 被写入MAR 寄存器。

K14(MAROE)为0, MAR 寄存器中的地址输出,MAR 红色输出指示灯亮。 将K14(MAROE)置为1,关闭MAR 输出。 (2)将34H 写入ST 寄存器。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据34H 置控制信号为:

按住STEP 脉冲键,CK 由高变低,这时寄存器ST 的黄色选择指示灯亮,表明选择ST 寄存器。放开STEP 键,CK 由低变高,产生一个上升沿,数据34H 被写入ST 寄存器。

(3)将56H 写入OUT 寄存器。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据56H 置控制信号为:

按住STEP 脉冲键,CK 由高变低,这时寄存器OUT 的黄色选择指示灯亮,表明选择OUT 寄存器。放开STEP 键,CK 由低变高,产生一个上升沿,数据56H 被写入OUT 寄存器。

图5 MAR 寄存器原理图 图6 ST 寄存器原理图

图7 OUT 寄存器原理图

实验项目四 数据输出/移位门

一、实验目的

1、掌握模型机中数据总线的原理。

2、掌握运算器中移位功能的实现方法。

二、实验内容

1、实验要求

利用CPTH 实验仪的开关做为控制信号,将指定寄存器的内容读到数据总线DBUS 上;观察移位门输出结果。

2、实验电路

CPTH 中有7 个寄存器可以向数据总线输出数据,但在某一特定时刻只能有一个寄存器输出数据,由X2,X1,X0决定那一个寄存器输出数据 ,下表是X2,X1,X0与各个寄存器的关系表。图8是总线上的7个寄存器的控制端原理图。 3、实验步骤

首先设置手动模式:按[TV/ME]键三次,进入"Hand......"手动状态。

(1)按照下表连接线。

(2)数据输出。

置下表的控制信号,检验输出结果。

(2)移位。

ALU 直接输出和零标志位产生原理图如图9所示。 ALU 左移输出原理图、ALU 右移输出原理图分别如图10 和图11所示。 直通门将运算器的结果不移位送总线。当X2X1X0=100 时运算器结果通过直通门送到数据总线。同时,直通门上还有判0 电路,当运算器的结果为全0 时,Z=1,右移门将运算器的结果右移一位送总线。当X2X1X0=101 时运算器结果通过右通门送到数据总线。

(3)将55H 写入A 寄存器。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据55H 置控制信号为:

按住STEP 脉冲键,CK 由高变低,这时寄存器A 的黄色选择指示灯亮,表明选择A 寄存器。放开STEP 键,CK 由低变高,产生一个上升沿,数据55H 被写入A 寄存器。

S2S1S0=111 时运算器结果为寄存器A 内容。

注意观察:移位与输出门是否打开无关,无论运算器结果如何,移位门都会给出移位结果。但究竟把那一个结果送数据总线由X2X1X0输出选择决定。

实验项目五 微程序计数器

一、实验目的

掌握模型机中微程序计数器结构、工作原理及其控制方法。

二、实验内容

1、实验要求

利用CPTH 实验仪上的K16..K23 开关做为DBUS 的数据,其它开关做为控制信号,实现微程序计数器uPC 的写入和加1功能。

2、实验原理

图图9 ALU 图10 ALU 左移输出原理图

图11 ALU 右移输出原理图

微程序计数器的原理图如图12所示。

74HC161 是一片带预置的4 位二进制记数器。功能如下:

当RST = 0 时,记数器被清0;

当IREN = 0 时,在CK的上升沿,预置数据被打入记数器;

当IREN = 1 时,在CK的上升沿,记数器加1;

TC为进位,当记数到F(1111)时,TC=1;

CEP、CET 为记数使能,当CEP=CET=1 时,记数器工作;CEP=CET=0 时,记数器保持原值。

图12 uPC原理图理图

3、实验步骤

(1)按照下表连接线。

(2) uPC 加1。

置控制信号为:

按一次STEP脉冲键,CK产生一个上升沿,数据uPC 被加1。

(3)uPC 打入。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据12H:

置控制信号为:

当EMWR,EMEN=0时,数据总线(DBUS)上的数据被送到指令总线(IBUS)上。

按住STEP脉冲键,CK由高变低,这时寄存器uPC的黄色预置指示灯亮,表明uPC被预置。放开STEP 键,CK由低变高,产生一个上升沿,数据10H被写入uPC寄存器。

实验项目六运算器

一、实验目的

掌握模型机中算术逻辑运算单元的控制方法。

二、实验内容

1、实验要求

利用CPTH 实验仪的K16..K23 开关做为DBUS 数据,其它开关做为控制信号,将数据写累加器A和工作寄存器W,并用开关控制ALU的运算方式,实现运算器的功能。

2、实验原理

CPTH 中的运算器由一片CPLD实现,有8 种运算(见下表),通过S2、S1、S0 来选择,运算数据由保存到寄存器A及寄存器W 中,运算结果输出到直通门D。

3、实验步骤

(1)按照下表连接线。

(2)将55H写入A寄存器。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据55H:

置控制信号为:

按住STEP脉冲键,CK由高变低,这时寄存器A的黄色选择指示灯亮,表明选择A寄存器。放开STEP 键,CK由低变高,产生一个上升沿,数据55H被写入A寄存器。

(3)将33H写入W寄存器。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据33H:

置控制信号为:

按住STEP脉冲键,CK由高变低,这时寄存器W 的黄色选择指示灯亮,表明选择W寄存器。放开STEP 键,CK 由低变高,产生一个上升沿,数据33H 被写入W 寄存器。

(4)置下表的控制信号,检验运算器的运算结果。

注意观察:运算器在加上控制信号及数据(A,W)后,立刻给出结果,不需时钟。

实验项目七程序计数器

一、实验目的

掌握模型机中程序计数器PC 的工作原理及其控制方法。

二、实验内容

1、实验要求

利用CPTH 实验仪上的K16..K23 开关做为DBUS 的数据,其它开关做为控制信号,实现程序计数器PC 的写入及加1 功能。

2、实验原理

PC 是由两片74HC141构成的八位带预置记数器,预置数据来自数据总线。记数器的输出通过74HC245(PCOE )送到地址总线。PC 值还可以通过74HC245(PCOE_D )送回数据总线。PC 原理图由图13所示。

在CPTH 中,PC+1 由PCOE 取反产生。 当RST = 0 时,PC 记数器被清0。

当LDPC = 0 时,在CK 的上升沿,预置数据被打入PC 记数器。 当PC+1 = 1 时,在CK 的上升沿,PC 记数器加1。 当PCOE = 0 时,PC 值送地址总线。

PC 打入控制电路由一片74HC151构成(isp1016实现)。原理图如图14所示。功能表见下表。 当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 被预置。 3、实验步骤

(1)按照下表连接线。

(2)按照下表设置控制信号。

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

(3)二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据12H : 置控制信号为:

每置控制信号后,按一下STEP 键,观察PC 的变化。

实验项目八 存储器读写

一、实验目的 掌握模型机中程序存储器的工作原理及控制方法。

二、实验内容

1、实验要求

利用CPTH 实验仪上的K16..K23 开关做为DBUS 的数据,其它开关做为控制信号,实现程序存储器EM 的读写操作。

2、实验原理

存储器EM 由一片6116RAM 构成,是用户存放程序和数据的地方。存储器EM 通过一片74HC245 与数据总线相连。存储器EM 的地址可选择由PC 或MAR 提供。

存储器EM 的数据输出直接接到指令总线IBUS ,指令总线IBUS 的数据还可以来自一片74HC245。当ICOE 为0 时,这片74HC245 输出中断指令B8。

EM 原理图如图15所示。

EM 原理图

3、实验步骤

(1)按照下表连接线。

(2)按照下表置控制信号。 (3)将地址0 写入MAR 。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据00H :

图3 PC 原理图 图13 寄存器W 原理图

图14 PC 打入控制原理图

置控制信号为:

按STEP键, 将地址0 写入MAR。

(4)将数据11H写入EM[0]。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据11H:

置控制信号为:

按STEP键, 将数据11H写入EM[0]。

(5)将地址1 写入MAR。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据01H:

置控制信号为:

按STEP键, 将地址1 写入MAR。

(6)将数据22H写入EM[1]。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据22H:

置控制信号为:

按STEP键,将数据22H写入EM[1]。

(7)将地址0 写入MAR。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据00H:

置控制信号为:

按STEP键, 将地址0 写入MAR。

(8)读EM[0]。

置控制信号为:

EM[0]被读出:11H。

(9)将地址1写入MAR。

二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据01H:

置控制信号为:

按STEP键,将地址1写入MAR。

(10)读EM[1]。

置控制信号为:

EM[1]被读出:22H:

实验项目九微程序存储器读写

一、实验目的

1、掌握微程序控制方式模型机的基本工作原理。

2、掌握微程序存储器uM的控制方法。

二、实验内容

1、实验要求

利用CPTH 实验仪上的开关做为控制信号,实现微程序存储器uM 的输出功能。

2、实验原理

存储器uM 由三片6116RAM 构成,共24 位微指令,采用水平型微指令格式。存储器的地址由uPC 提供, 片选及读信号恒为低, 写信号恒为高. 存储器uM 始终输出uPC 指定地址单元的数据。

存储器uM原理图如图16所示。

3、实验步骤

(1)按照下表连接线。

(2)微程序存储器uM 读出。

置控制信号为:K0为1。

(3)uM 输出uM[0]的数据。

按一次STEP脉冲键,CK产生一个上升沿,数据uPC 被加1。

(4)uM 输出uM[1]的数据。

按一次STEP脉冲键,CK产生一个上升沿,数据uPC 被加1。

uM 输出uM[2]的数据。

实验项目十中断

一、实验目的

掌握模型机的中断功能的工作原理及中断过程中,申请、响应、处理、返回各阶段时序。

二、实验内容

1、实验要求

利用CPTH实验仪上的开关做控制信号,实现中断功能。

2、实验原理

中断电路有两个D触发器,分别用于保存中断请求信号(IREQ)及中断响应信号(IACK)。INT 有上升沿时,IREQ 触发器被置为1。当下一条指令取指时(IREN=0), 存贮器EM 的读信号(EMRDP)被关闭,同时产生读中断指令(ICEN)信号, 程序的执行被打断转而去执行B8指令响应中断。在取B8 的同时置IACK触发器被置为1,禁止新的中断响应。EINT信号置0,IACK,IREQ触发器为0,中断电路可以响应新的中断。

中断控制器原理图如图17所示。

3、实验步骤

(1)按照下表连接线。

(2)置控制信号。

短路块选择端JINT指向RG侧,按RG 脉冲键,产生中断请求,此时黄色REQ 指示灯亮,同时B8 输出红色指示灯。

按STEP脉冲键,产生取指脉冲,黄色ACK 指示灯亮。

置控制信号为:

REQ,ACK灯灭。

实验项目十一模型计算机设计

一、实验目的

1、掌握微程序控制模型计算机的基本工作原理和设计方法。

2、掌握微程序存储器uM的控制方法和上位机软件的使用方法。

二、实验内容

1、实验要求

设计模型计算机,并利用CPTH 实验仪的上位机软件控制该模型计算机,实现模型机的数据传送功能。

图17 中断控制器原理图

2、实验原理

2.1 模型机总体结构

CPTH 模型计算机包括了一个标准CPU 所具备所有部件,这些部件包括:运算器ALU、累加器A、工作寄存器W、左移门L、直通门D、右移门R、寄存器组R0-R3、程序计数器PC、地址寄存器MAR、堆栈寄存器ST、中断向量寄存器IA、输入端口IN、输出端口寄存器OUT、程序存储器EM、指令寄存器IR、微程序计数器uPC、微程序存储器uM,以及中断控制电路、跳转控制电路。其中运算器和中断控制电路以及跳转控制电路用CPLD 来实现,其它电路都是用离散的数字电路组成。微程序控制部分也可以用组合逻辑控制来代替。

模型机为8 位机,数据总线、地址总线都为8位,但其工作原理与16位机相同。相比而言8 位机实验减少了烦琐的连线,但其原理却更容易被学生理解、吸收。

模型机的指令码为8 位,根据指令类型的不同,可以有0 到 2 个操作数。指令码的最低两位用来选择R0-R3 寄存器,在微程序控制方式中,用指令码做为微地址来寻址微程序存储器,找到执行该指令的微程序。而在组合逻辑控制方式中,按时序用指令码产生相应的控制位。在本模型机中,一条指令最多分四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。模型机有24 位控制位以控制寄存器的输入、输出,选择运算器的运算功能,存储器的读写。24 位控制位分别介绍如下:EMRD:程序存储器EM读信号。

PCOE:将程序计数器PC的值送到地址总线ABUS上。

EMEN:将程序存储器EM 与数据总线DBUS接通,由EMWR和EMRD决定是将DBUS数据写到EM 中,还是从EM读出数据送到DBUS。

IREN:将程序存储器EM读出的数据打入指令寄存器IR和微指令计数器uPC。

EINT:中断返回时清除中断响应和中断请求标志,便于下次中断。

ELP:PC打入允许,与指令寄存器的IR3、IR2位结合,控制程序跳转。

MAREN:将数据总线DBUS上数据打入地址寄存器MAR。

MAROE:将地址寄存器MAR的值送到地址总线ABUS上。

OUTEN:将数据总线DBUS上数据送到输出端口寄存器OUT里。

STEN:将数据总线DBUS上数据存入堆栈寄存器ST中。

RRD:读寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。

RWR:写寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。

CN:决定运算器是否带进位移位,CN=1带进位,CN=0不带进位。

FEN:将标志位存入ALU内部的标志寄存器。

X2、X1、X0三位组合来译码选择将数据送到DBUS上的寄存器。

WEN:将数据总线DBUS的值打入工作寄存器W中。

AEN:将数据总线DBUS的值打入累加器A中。

S2:S2、S1、S0三位组合决定ALU做何种运算。

2.2 模型机寻址方式

模型机的寻址方式分五种:

累加器寻址:操作数为累加器A,例如“CPL A”是将累加器A 值取反,还有些指令是隐含寻址累加器A,例如“OUT”是将累加器A的值输出到输出端口寄存器OUT。

寄存器寻址:参与运算的数据在R0-R3 的寄存器中,例如“ADD A,R0”指令是将寄存器R0 的值加上累加器A的值,再存入累加器A中。

寄存器间接寻址:参与运算的数据在存储器EM 中,数据的地址在寄存器R0-R3中,如“MOV A,@R1”指令是将寄存器R1 的值做为地址,把存储器EM 中该地址的内容送入累加器A中。

存储器直接寻址:参与运算的数据在存储器EM 中,数据的地址为指令的操作数。例如“AND A,40H”指令是将存储器EM 中40H 单元的数据与累加器A的值做逻辑与运算,结果存入累加器A。

立即数寻址:参与运算的数据为指令的操作数。例如“SUB A,#10H”是从累加器A中减去立即数10H,结果存入累加器A。

2.3 模型机指令集

模型机的缺省的指令集分几大类:算术运算指令、逻辑运算指令、移位指令、数据传输指令、跳转指令、

指令/微指令表(insfile1.mic)见下表。

3、实验步骤

(1)运行CPTH,新建文件。

(2)录入下表中第3列,保存为EX1.ASM。

(3)单击菜单“汇编”的“汇编下载”。

(5)按“复位”。

(6)按“单步”运行,打开“跟踪”标签,观察微程序和微地址变化,按下表记录变化情况,并填写

每一步的功能。

计算机组成原理实验报告

重庆理工大学 《计算机组成原理》 实验报告 学号 __11503080109____ 姓名 __张致远_________ 专业 __软件工程_______ 学院 _计算机科学与工程 二0一六年四月二十三实验一基本运算器实验报告

一、实验名称 基本运算器实验 二、完成学生:张致远班级115030801 学号11503080109 三、实验目的 1.了解运算器的组成结构。 2.掌握运算器的工作原理。 四、实验原理: 两片74LS181 芯片以并/串形式构成的8位字长的运算器。右方为低4位运算芯片,左方为高4位运算芯片。低位芯片的进位输出端Cn+4与高位芯片的进位输入端Cn相连,使低4位运算产生的进位送进高4位。低位芯片的进位输入端Cn可与外来进位相连,高位芯片的进位输出到外部。 两个芯片的控制端S0~S3 和M 各自相连,其控制电平按表2.6-1。为进行双操作数运算,运算器的两个数据输入端分别由两个数据暂存器DR1、DR2(用锁存器74LS273 实现)来锁存数据。要将内总线上的数据锁存到DR1 或DR2 中,则锁存器74LS273 的控制端LDDR1 或LDDR2 须为高电平。当T4 脉冲来到的时候,总线上的数据就被锁存进DR1 或DR2 中了。 为控制运算器向内总线上输出运算结果,在其输出端连接了一个三态门(用74LS245 实现)。若要将运算结果输出到总线上,则要将三态门74LS245 的控制端ALU-B 置低电平。否则输出高阻态。数据输入单元(实验板上印有INPUT DEVICE)用以给出参与运算的数据。其中,输入开关经过一个三态门(74LS245)和内总线相连,该三态门的控制信号为SW-B,取低电平时,开关上的数据则通过三态门而送入内总线中。 总线数据显示灯(在BUS UNIT 单元中)已与内总线相连,用来显示内总线上的数据。控制信号中除T4 为脉冲信号,其它均为电平信号。 由于实验电路中的时序信号均已连至“W/R UNIT”单元中的相应时序信号引出端,因此,需要将“W/R UNIT”单元中的T4 接至“STATE UNIT”单元中的微动开关KK2 的输出端。在进行实验时,按动微动开关,即可获得实验所需的单脉冲。 S3、S2、 S1、S0 、Cn、M、LDDR1、LDDR2、ALU-B、SW-B 各电平控制信号则使用“SWITCHUNIT”单元中的二进制数据开关来模拟,其中Cn、ALU-B、SW-B 为低电平有效,LDDR1、LDDR2 为高电平有效。 对于单总线数据通路,作实验时就要分时控制总线,即当向DR1、DR2 工作暂存器打入数据时,数据开关三态门打开,这时应保证运算器输出三态门关闭;同样,当运算器输出结果至总线时也应保证数据输入三态门是在关闭状态。 运算结果表

计算机组成原理实验报告_存储系统设计实验

实验四存储系统设计实验 一、实验目的 本实训项目帮助大家理解计算机中重要部件—存储器,要求同学们掌握存储扩展的基本方法,能设计MIPS 寄存器堆、MIPS RAM 存储器。能够利用所学习的cache 的基本原理设计直接相联、全相联,组相联映射的硬件cache。 二、实验原理、内容与步骤 实验原理、实验内容参考: 1、汉字字库存储芯片扩展设计实验 1)设计原理 该实验本质上是8个16K×32b 的ROM 存储系统。现在需要把其中一个(1 号)16K×32b 的ROM 芯片用4个4K×32b 的芯片来替代,实际上就是存储器的 字扩展问题。a) 需要4 片4个4K×32b 芯片才可以扩展成16K×32b 的芯片。 b) 目标芯片16K个地址,地址线共14 条,备用芯片12 条地址线,高两位(分 线器分开)用作片选,可以接到2-4 译码器的输入端。c) 低12 位地址直接连 4K×32b 的ROM 芯片的地址线。4个芯片的32 位输出直接连到D1,因为同时 只有一个芯片工作,因此不会冲突。 芯片内数据如何分配: a) 16K×32b 的ROM 的内部各自存储16K个地址,每个地址里存放4个字节数 据。地址范围都一样:0x0000~0x3FFF。 b) 4个4K×32b 的ROM,地址范围分别是也都一样:0x000~0xFFF,每个共有 4K个地址,现在需要把16K×32b 的ROM 中的数据按照顺序每4个为一组分 为三组,分别放到4个4K×32b 的ROM 中去。HZK16_1 .txt 中的1~4096 个数据放到0 号4K 的ROM 中,4097~8192 个数据放到 1 号4K 的 ROM 中,8193~12288 个数据放到2 号4K 的ROM 中,12289~16384个 数据放到3 号4K 的ROM 中。 c) 注意实际给的16K 数据,倒数第二个4K(8193~12288 个数据)中部分 是0,最后4K(12289~16384 数据)全都是0。因此在ROM 4K_3 号后部分 都是0,ROM 4K_3 中都是0。 2)电路设计 地址线连接

计算机组成原理存储器实验报告

计算机组成原理存储器实验报告 一、实验目的 本实验旨在通过实践了解存储器的基本原理和实现方式,掌握存储器的读写操作。 二、实验原理 存储器是计算机中用于存储数据和程序的设备,其按照不同的存取方式可分为随机存储器(RAM)和只读存储器(ROM)。其中RAM是一种易失性存储器,其存储的数据会随着电源关闭而丢失;而ROM则是一种非易失性存储器,其存储的数据在电源关闭后仍能保持不变。 本实验使用的是一个8位RAM,其具有256个存储单元,每个存储单元可以存储8位数据。RAM可以进行读写操作,读操作是将存储单元中的数据读取到CPU中,写操作是将CPU中的数据写入到存储单元中。存储单元的地址是由地址线来控制的,本实验中使用的是8位地址线,因此可以寻址256个存储单元。 三、实验仪器 本实验使用的主要仪器有:存储器板、八位开关、八位数码管、八位LED灯、地址选择开关和地址计数器等。

四、实验过程 1. 准备工作:将存储器板与开发板进行连接,并将八位开关、八位数码管、八位LED灯、地址选择开关和地址计数器等连接到存储器板上。 2. 设置地址:使用地址选择开关来设置需要读写的存储单元的地址。 3. 写操作:将需要存储的数据通过八位开关输入到CPU中,然后将CPU中的数据通过写信号写入到存储单元中。 4. 读操作:将需要读取的存储单元的地址通过地址选择开关设置好,然后通过读信号将存储单元中的数据读取到CPU中。 5. 显示操作:使用八位数码管或八位LED灯来显示读取到的数据或写入的数据。 6. 重复上述操作,进行多次读写操作,观察存储器的读写效果和数据变化情况。 五、实验结果 通过本次实验,我们成功地进行了存储器的读写操作,并观察到了存储器中数据的变化情况。在实验过程中,我们发现存储器的读写速度非常快,可以满足计算机的高速运算需求。同时,存储器的容量也非常大,可以存储大量的数据和程序,为计算机提供了强大的

计算机组成运算器实验报告

计算机组成运算器实验报告 《计算机组成运算器实验报告》 摘要: 本实验旨在通过实验操作,深入理解计算机组成原理中的运算器部分。通过对运算器的组成结构和工作原理进行研究和实验,加深对计算机内部运算过程的理解。 一、实验目的 1. 了解运算器的基本组成结构和工作原理; 2. 掌握运算器的逻辑运算和算术运算的实现方法; 3. 通过实验操作,加深对计算机组成原理中运算器部分的理解。 二、实验设备 1. 计算机组成原理实验箱; 2. 逻辑门、加法器、寄存器等实验器件; 3. 万用表、示波器等实验仪器。 三、实验内容 1. 运算器的基本组成结构及功能分析; 2. 运算器的逻辑运算和算术运算实验操作; 3. 运算器的工作原理分析及实验验证。 四、实验结果与分析 通过实验操作,成功实现了运算器的逻辑运算和算术运算,并对其工作原理进行了深入分析。实验结果表明,运算器的逻辑运算和算术运算均能够按照设计要求进行,符合计算机组成原理中的相关理论知识。

五、实验结论 通过本实验,加深了对计算机组成原理中运算器部分的理解,掌握了运算器的基本组成结构和工作原理,并成功实现了相关实验操作。这对于进一步深入学习计算机组成原理和计算机系统结构具有重要意义。 六、实验感想 本实验让我对计算机组成原理中的运算器部分有了更深入的理解,也增强了我对计算机内部运算过程的认识。通过实际操作,我对计算机组成原理的相关知识有了更加直观的认识,对于今后深入学习计算机相关课程和进行科研工作具有积极的促进作用。 通过本次实验,我对计算机组成原理中的运算器部分有了更深入的理解,也增强了我对计算机内部运算过程的认识。通过实际操作,我对计算机组成原理的相关知识有了更加直观的认识,对于今后深入学习计算机相关课程和进行科研工作具有积极的促进作用。

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

计算机组成原理的实验报告计算机组成原理的实验报告 程序控制器实验 一、实验目的: (1) 理解时序产生器的原理,了解时钟和时序信号的波形。 (2) 掌握微程序控制器的功能、组成知识。 (3) 掌握微指令格式和各字段功能。 (4) 掌握微指令的编制、写入、观察微程序的运行 二、实验设备 PC机一台,TD―CM3+实验系统一套。 三、实验内容及要求: (一)实验原理: 微程序控制电路与微指令格式 (A) 微程序控制电路 微程序控制器的组成见图10,其中控制存储器采用3片2816的EPROM,具有掉电保 2 护功能,微命令寄存器18位,用两片8D触发器(74273)和一片4D(74175)触发器组成。微地址寄存器6位,用三片正沿触发的双D触发器(7474)组成,它们带有清“0”端和预置端。在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为下一条微指令地址。当T4时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修改。 在该实验电路中设有一个编程开关(位于实验板右上方),它具有三种状态:PROM (编程)、READ(校验)、RUN(运行)。当处于“编程状态”时,实验者可根据微地址和微指令格式将微指令二进制代码写入到控制存储器2816中。当处于“校验状态”时,可以对写入控制存储器中的二进制代码进行验证,从而可以判断写入的二进制代码是否正确。当处于“运行状态”时,只要给出微程序的入口微地址,则可根据微程序流程图自动执行微程序。图中微地址寄存器输出端增加了一组三态门,目的是隔离触发器的输出,增加抗干扰能力,并用来驱动微地址显示灯。 微程序控制器原理图图10

计算机组成原理运算器实验报告(一)

计算机组成原理运算器实验报告(一) 计算机组成原理运算器实验报告 实验目的 •理解计算机组成原理中运算器的工作原理 •学习运算器的设计和实现方法 •掌握运算器的性能指标和优化技巧 实验背景 计算机组成原理是计算机科学与技术专业中的重要课程之一,通 过学习计算机组成原理,可以深入理解计算机的工作原理及内部结构。运算器是计算机的核心组成部分之一,负责执行各种算术和逻辑运算。在本次实验中,我们将通过实践的方式,深入了解并实现一个简单的 运算器。 实验步骤 1.确定运算器的功能需求 –确定需要支持的算术运算和逻辑运算 –设计运算器的输入和输出接口 2.实现运算器的逻辑电路

–根据功能需求,设计并实现运算器的逻辑电路 –确保逻辑电路的正确性和稳定性 3.验证运算器的功能和性能 –编写测试用例,对运算器的功能进行验证 –测量运算器的性能指标,如运算速度和功耗 4.优化运算器的设计 –分析运算器的性能瓶颈,并提出优化方案 –优化运算器的电路设计,提高性能和效率 实验结果与分析 通过以上步骤,我们成功实现了一个简单的运算器。经过测试,运算器能够正确执行各种算术和逻辑运算,并且在性能指标方面表现良好。经过优化后,运算器的速度提高了20%,功耗降低了10%。 实验总结 通过本次实验,我们深入了解了计算机组成原理中运算器的工作原理和设计方法。通过实践,我们不仅掌握了运算器的实现技巧,还学会了优化运算器设计的方法。这对于进一步加深对计算机原理的理解以及提高计算机系统性能具有重要意义。 参考文献 •[1] 《计算机组成原理》

•[2] 张宇. 计算机组成原理[M]. 清华大学出版社, 2014. 实验目的补充 •掌握运算器的工作原理和组成要素 •学习如何设计和实现运算器的各个模块 •理解运算器在计算机系统中的重要性和作用 实验背景补充 计算机组成原理是计算机科学中的基础课程,它研究计算机硬件 和软件之间的关系,帮助我们理解计算机系统的工作原理和内部结构。运算器是计算机的核心部件之一,负责执行各种算术和逻辑运算,对 计算机的性能和功能起着重要作用。 实验步骤补充 1.确定运算器的功能需求 –确定需要支持的算术运算,如加法、减法、乘法、除法等 –确定需要支持的逻辑运算,如与、或、非、异或等 –设计运算器的输入和输出接口,如数据输入和结果输出的方式 2.实现运算器的逻辑电路 –根据功能需求,设计并实现运算器的逻辑电路

计算机组成原理实验报告-寄存器实验

千里之行,始于足下。 计算机组成原理实验报告-寄存器实验计算机组成原理实验报告-寄存器实验》 一、实验目的 本次实验旨在通过设计和实现一个基本的寄存器,加深对计算机组成原理 中寄存器的理解,并掌握寄存器在计算机中的应用。 二、实验设备及软件 1. 实验设备:计算机 2. 实验软件:模拟器软件Mars 3. 实验材料:电路图、线缆、元器件 三、实验原理 寄存器是计算机的一种重要组成部分,用于存储数据和指令。一个基本的 寄存器通常由一组触发器组成,可以存储多个位的信息。本实验中,我们需要 设计一个16位的寄存器。 四、实验步骤 1. 确定寄存器的结构和位数:根据实验要求,我们需要设计一个16位的 寄存器。根据设计要求,选择合适的触发器和其他元器件。 2. 组装寄存器电路:根据电路图,将选择好的元器件按照电路图连接起来。 3. 连接电路与计算机:使用线缆将寄存器电路连接到计算机的相应接口上。 4. 编写程序:打开Mars模拟器软件,编写程序来测试寄存器的功能。可 以编写一段简单的程序,将数据写入寄存器并读取出来,以验证寄存器的正确性。 5. 运行程序并测试:将编写好的程序加载到Mars模拟器中,并运行程序,观察寄存器的输出和模拟器的运行结果。 第1页/共3页

锲而不舍,金石可镂。 五、实验结果 在本次实验中,我们成功设计和实现了一个16位的寄存器,并进行了相关测试。经过多次测试,寄存器的功能和性能良好,能够准确地存储和读取数据。 六、实验心得 通过本次实验,我对寄存器的结构和工作原理有了更深入的了解。寄存器 作为计算机的一种重要组成部分,起着存储和传输数据的作用。通过实际操作 和测试,我更加清楚了寄存器在计算机中的应用和重要性。 在实验过程中,我遇到了一些问题,如电路连接不稳定、程序错误等,但 通过仔细检查和调试,最终解决了这些问题。这次实验也让我深刻体会到了学 习计算机组成原理的重要性,只有深入理解原理并通过实践运用,才能真正掌 握计算机的工作原理和能力。 通过这个实验,我有了更深入的认识和理解,对计算机组成原理的学习也 更加系统和完整。我将继续努力学习和研究,提高自己的理论知识和实践能力,为今后更深入的学习和研究打下坚实的基础。 七、实验总结 通过本次寄存器实验,我不仅对寄存器的结构和原理有了更深入的了解, 还巩固了对计算机组成原理的学习。通过设计和实现一个基本的寄存器,我更 加清楚地认识到寄存器在计算机中的重要性。 在实验过程中,我遇到了一些困难和问题,但通过仔细分析和思考,我最 终找到了解决问题的方法。这次实验让我学会了如何将理论知识应用到实践中,提高了我的实践能力和创新精神。

计算机组成原理实验报告

1. 寄存器 五、实验总结 按照实验要求进行连接和操作,对通用寄存器组进行了数据的写入和读出,两组数据完全对照,得到了预期效果,说明了存入数据的正确性,在整个过程中也对寄存器组的构成和硬件电路有了更深层次的理解。 2. 运算器 五、实验总结 基本熟悉了整个实验系统的基本结构,了解了该实验装置按功能分成几大区,学会何时操作各种开关、按键。最重要的是通过实验掌握了运算器工作原理,熟悉了算术/逻辑运算的运算过程以及控制这种运算的方法,了解了进位对算术与逻辑运算结果的影响,对时序是如何起作用的没太弄清楚,相信随着后续实验的进行一定会搞清楚的 3。存储器 五、实验总结 按照实验要求连接器材设备元件,按照给定步骤进行实验操作.通过向静态RAM中写入数据并读出数据,在INPUT单元输入数并存入地址寄存器,再向相应的地址单元存入数,验证读出数据时,只需再INPUT单元输入想要读出单元的地址,再通过片选端CE读出存储单元内的数据,其中We=0是控制写端,WE=1控制读,CE低电平有效。实验过程遇到一些问题,对实验内容不是很熟,有待提高。

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

计算机组成原理移位运算实验报告

计算机组成原理移位运算实验报告 移位运算是计算机中非常基础的运算之一,用于将二进制数的位数进行移动。移位运算可分为左移和右移两种,左移是将二进制数的位数向左移动,右移则是将二进制数的位数向右移动。移位运算通常用于二进制数的乘除运算、数据压缩、程序优化等方面。在本次实验中,我们将通过Verilog HDL 设计一个移位器,实现移位运算。 1. 实验原理和设计 设计移位器需要对移位运算的原理有一定的理解。在二进制数的移位运算中,移位的方向和位移的距离都是明确的,因此我们可以通过调整输入信号的位置,分别实现左移和右移。具体实现方法可以采用逻辑门电路实现,也可以采用移位指令指令直接实现。在本次实验中,我们采用逻辑门的实现方法。 移位器的设计主要分为以下几个步骤: 1. 采用Verilog HDL 自定义输入端口和输出端口。 2. 采用逻辑门电路实现移位器,包括左移和右移两种方式。 3. 对移位器进行仿真调试,验证移位器的正确性。

以下是实验所采用的Verilog HDL 代码: module shifter( input [15:0] in_data, input [1:0] shift_direction, input [3:0] shift_distance, output [15:0] out_data ); wire [15:0] shift_out; assign shift_out = shift_direction[0] ? (in_data << shift_distance) : (in_data >> shift_distance); assign out_data = shift_direction[1] ? (in_data << shift_distance) : (in_data >> shift_distance); endmodule 代码中定义了4 个输入端口和一个输出端口,在输入端口中,`in_data` 为需要进行移位的二进制数,`shift_direction` 为移动方向(0 为右移,1 为左移),

计算机组成原理实验报告

实验一8位程序计数器PC[7:0]的设计 实验要求: 1.分别用图形方式和Verilog 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.用Verilog HDL语言设计实现8位程序计数器。在已经实现.gdf文件的基础上使用库函数形式是很容易编写出.v文件的,不过学生选择了行为描述方式实现,因为后者更具有通用性,依次实现8位程序计数器的复位、计数、转移功能即可,具体参见PC_8bit.v文件。 4.编译仿真类似上述步骤2。 实验小结: 1.这是计算机组成原理的第一个实验,比较简单,按照实验要求即可完成实验。通果这次实验,我对Max+Plus软件的使用方法和Verilog HDL语言编程复习了一遍,为后面的实验打好基础。 实验二CPU运行时序逻辑的设计 实验要求: 1.用Verilog HDL 语言设计三周期时序逻辑电路,要求带复位功能,t[2:0]在非法错误状态下能自动恢复。(比如说110恢复到001)。 2.具体要求参见1_部件实验内容.doc说明文件。 实验实现: 1.用Verilog 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.用图形文件方式设计实现SRAM,用到了库文件lpm_ram_io。主要步骤是在Max+Plus下调用库

计算机组成原理实验报告_32位ALU设计实验

实验三32位ALU设计实验 一、实验目的 学生理解算术逻辑运算单元(ALU)的基本构成,掌握Logisim 中各种运算组件的使用方法,熟悉多路选择器的使用,能利用前述实验完成的32位加法器、Logisim 中的运算组件构造指定规格的ALU 单元。 二、实验原理、内容与步骤 实验原理、实验内容参考: 1、32位加法功能的原理与设计 1)设计原理 1,被加数A(32位), 2,被加数B(32位), 3,前一位的进位CIN(1位), 4,此位二数相加的和S(32位), 5,此位二数相加产生的进位COUT(1位)。 要实现32位的二进制加法,一种自然的想法就是将1位的二进制加法重复32次(即逐位进位加法器)。这样做无疑是可行且易行的,但由于每一位的CIN都是 由前一位的COUT提供的,所以第2位必须在第1位计算出结果后,才能开始计算; 第3位必须在第2位计算出结果后,才能开始计算,等等。而最后的第32位必须 在前31位全部计算出结果后,才能开始计算。这样的方法,使得实现32位的二进 制加法所需的时间是实现1位的二进制加法的时间的32倍。 2)电路设计 32位加法功能 2、32位减法功能的原理与实现 1)变减法为加法的原理 1.在Y引脚处使用求补器(32位),即可变减法为加法 2.用构造好的32位加法器。Y各位取反,C0取1,即可达到减法变加法。无符号 数的减法溢出,带加减功能的ALU的进位取反后表示,有符号数的减法溢出,仍 然用最高位和符号位是否相等来判断 2)电路设计

32位减法功能 3、加减溢出检测的设计(不考虑乘除法) 1)有符号数溢出的设计 有符号数溢出的设计2)无符号数溢出的设计

计算机组成运算器实验报告

计算机组成运算器实验报告 计算机组成运算器实验报告 引言: 计算机是当今社会不可或缺的工具,而计算机的核心部件之一就是运算器。运 算器是计算机中负责执行算术和逻辑运算的部件,它的设计和实现对计算机的 整体性能起着至关重要的作用。本实验旨在通过设计和搭建一个简单的运算器,深入理解和掌握计算机组成原理。 一、实验目的 本次实验的主要目的是通过搭建一个基于逻辑门的8位运算器,了解和掌握运 算器的基本原理和设计方法。具体目标如下: 1. 学习和理解运算器的基本功能和工作原理; 2. 掌握逻辑门的基本知识和使用方法; 3. 设计和实现一个具有加法、减法、乘法和除法功能的8位运算器; 4. 验证运算器的正确性和可靠性。 二、实验原理 1. 运算器的功能 运算器是计算机中执行算术和逻辑运算的核心部件,其主要功能包括加法、减法、乘法和除法等。通过逻辑门的组合和控制信号的输入,可以实现各种不同 的运算操作。 2. 逻辑门的基本原理 逻辑门是运算器中最基本的构建单元,它根据输入信号的不同,产生相应的输 出信号。常见的逻辑门包括与门、或门、非门等。通过逻辑门的组合和级联,

可以构建出更复杂的逻辑电路,实现各种逻辑运算。 3. 运算器的设计方法 运算器的设计方法主要包括两种:组合逻辑设计和时序逻辑设计。组合逻辑设计是指根据输入信号的组合,直接输出相应的结果。时序逻辑设计是指根据输入信号的变化过程,按照一定的时序规则输出结果。 三、实验过程 1. 运算器的整体设计 根据实验要求,我们需要设计一个具有加法、减法、乘法和除法功能的8位运算器。首先,我们需要确定运算器的输入和输出信号的格式和位数。然后,根据运算操作的特点,选择合适的逻辑门进行组合和级联,实现各种运算操作。 2. 逻辑门的选择和连接 在设计运算器时,我们需要根据实际需求选择适当的逻辑门。例如,对于加法操作,我们可以选择全加器进行设计;对于减法操作,可以选择加法器和取反器进行设计;对于乘法和除法操作,可以选择移位寄存器和与门进行设计。通过逻辑门的连接和控制信号的输入,可以实现各种运算操作。 3. 运算器的验证和测试 在完成运算器的设计和搭建后,我们需要进行验证和测试,确保其功能的正确性和可靠性。可以通过输入不同的测试数据,观察输出结果是否符合预期。同时,还可以通过性能测试和稳定性测试,评估运算器的性能和可靠性。 四、实验结果与分析 经过反复的设计和调试,我们成功搭建了一个具有加法、减法、乘法和除法功能的8位运算器。在测试过程中,我们输入了不同的测试数据,并观察了输出

计算机组成原理实验报告

实验一:数字逻辑——交通灯系统设计子实验1: 7 段数码管驱动电路设计 (1)理解利用真值表的方式设计电路的原理; (2)利用Logisim 真值表自动生成电路的功能,设计一个 7 段数码管显示驱动。 二、实验方案设计 7 段数码管显示驱动的设计方案: (1)输入:4 位二进制 (2)输出:7 段数码管 7 个输出控制信号 (3)电路引脚: (4)实现功能:利用 7 段数码管显示 4 位二进制的 16 进制值 (5)设计方法: 由于该实验若直接进行硬件设计会比较复杂,而7 段数码管显示的真值表较容易掌握,所以我们选择由真值表自动生成电路的方法完成该实验。 先分析设计 7 段数码管显示驱动的真值表,再利用Logisim 中的“分析组合逻辑电路”功能,将真值表填入,自动生成电路。 (6)真值表的设计: 由于是 4输入 7输出,真值表共有 16 行。7输出对应 7个引脚,所以需要依次对照LED 灯的引脚顺序进行设计,如下图所示(注意LED 的引脚顺序): 三、实验步骤 (1)在实验平台下载实验框架文件RGLED.circ; (2)在Logisim 中打开RGLED.circ 文件,选择数码管驱动子电路;

(3)点击“工程”中的“分析组合逻辑电路”功能,先构建4输入和7输出,再在“真值表”中,将已设计好的真值表的所有数值仔细对照着填入表格中,确认无误后点击“生成电路”,自动生成的电路如下图所示: (4)将子电路封装为如下形式:

(5)进行电路测试: ·自动测试 在数码管驱动测试子电路中进行测试; ·平台评测 自动测试结果满足实验要求后,再利用记事本打开RGLED.circ 文件,将所有文字信息复制粘贴到Educoder 平台代码区域,点击评测按钮进行测试。 四、实验结果测试与分析 (1)自动测试的部分结果如下: (2)平台测试结果如下: 综上,本实验测试结果为通过,无故障显示。 本实验的关键点在于:在设计时需要格外注重LED 灯的引脚顺序,保证0-9 数字显示的正确性,设计出正确的真值表。

计算机组成原理实验报告心得体会

计算机组成原理实验报告心得体会在参与计算机组成原理实验的过程中,我深切感受到了计算机的工作原理以及其内部各组件之间的协调配合。通过实际操作和观察,我对计算机的结构与功能有了更加深入的理解,并积累了一些宝贵的心得体会。 首先,实验中我学会了正确连接计算机的各个硬件组件,并理解了它们之间的作用和关系。在搭建计算机的过程中,我明白了CPU作为计算机的核心部件,负责进行指令的执行和数据的处理;内存是存储器,储存着计算机运行时所需的数据和程序;硬盘作为永久性存储设备,用于长期保存数据等。通过实际操作,我更加清楚地了解了计算机各部件之间的联系与交互,使我对计算机的工作原理有了更为深刻的认识。 其次,实验中我体会到了计算机组成原理对计算机性能的影响。在实验过程中,我尝试了不同运算速度的CPU、不同容量的内存和不同类型的硬盘,发现它们对计算机的整体性能产生了重要影响。CPU的速度越快,计算速度也就越快;内存容量的增加可以提供更大的数据存取空间,从而加快计算速度;而硬盘的类型和容量不仅影响计算机的启动速度,还影响到数据的读写速度。通过这些实验,我认识到了计算机组成原理对于计算机性能的重要性,这对于今后的计算机设计与应用有着重要的启示。 再次,实验使我深刻领悟到了优秀的计算机组成原理设计对于计算机系统的稳定性和可靠性的重要性。在实验过程中,我遇到了各种各

样的问题,如硬件连接错误、部件损坏等,这使得我的计算机无法正 常工作。通过分析问题的原因和解决方案,我深刻了解到计算机组成 原理的合理设计对于整个计算机系统的稳定性至关重要。一个出色的 计算机组成原理设计可以确保计算机各组件之间的互相适配和兼容性,减少故障和错误的发生,提高计算机系统的可靠性和稳定性。 最后,实验还让我认清了计算机组成原理与计算机应用之间的内在 联系。计算机组成原理作为计算机科学的基础学科,它的研究和应用 对于计算机科学的进一步发展起到了重要的推动作用。掌握了计算机 组成原理之后,我们才能更好地利用计算机的功能和性能进行应用开 发和创新。实验过程中,我深切感受到了计算机组成原理和计算机应 用之间的紧密关系,这对我今后的学习和职业发展有着深远的影响。 通过这次实验,我不仅对计算机组成原理有了更深入的理解,同时 也对计算机的运作机制和应用有了更清晰的认识。我相信这对我今后 的学习和职业发展都将有着重要的影响。我将继续深入学习计算机组 成原理,不断提升自己的技术水平,以更好地应对未来的挑战和机遇。

计算机组成原理实验报告精品9篇

计算机组成原理实验报告 课程名称计算机组成原理实验 学院计算机 专业班级 学号 学生姓名 指导教师 20年月日

实验一:基础汇编语言程序设计实验 1实验目的 ●学习和了解TEC-XP+教学实验监控命令的用法; ●学习和了解TEC-XP+教学实验系统的指令系统; ●学习简单的TEC-XP+教学实验系统汇编程序设计。 2实验设备及器材 ●工作良好的PC机; ●TEC-XP+教学实验系统和仿真终端软件PCEC。 3实验说明和原理 实验原理在于汇编语言能够直接控制底层硬件的状态,通过简单的汇编指令查看、显示、修改寄存器、存储器等硬件内容。 实验箱正如一集成的开发板,而我们正是通过基础的汇编语言对开发板进行使用和学习,过程中我们不仅需要运用汇编语言的知识,还需要结合数字逻辑中所学的关于存储器、触发器等基本器件的原理,通过串口通讯,实现程序的烧录,实验箱与PC端的通讯。 4实验内容 1)学习联机使用TEC-XP+教学实验系统和仿真终端软件PCEC; 2)学习使用WINDOWS界面的串口通讯软件; 3)使用监控程序的R命令显示/修改寄存器内容、D命令显示存储内容、E命令 修改存储内容; 4)使用A命令写一小段汇编程序,U命令反汇编输入的程序,用G命令连续 运行该程序,用T、P命令单步运行并观察程序单步执行情况。

5实验步骤 1)准备一台串口工作良好的PC机器; 2)将TEC-XP+放在实验台上,打开实验箱的盖子,确定电源处于断开状态; 3)将黑色的电源线一段接220V交流电源,另一端插在TEC-XP+实验箱的电源 插座里; 4)取出通讯线,将通讯线的9芯插头接在TEC-XP+实验箱上的串口"COM1"或 "COM2"上,另一端接到PC机的串口上; 5)将TEC-XP+实验系统左下方的六个黑色的控制机器运行状态的开关置于正 确的位置,再找个实验中开关应置为001100(连续、内存读指令、组合逻辑、联机、16位、MACH), 6)控制开关的功能在开关上、下方有标识;开关拨向上方表示"1",拨向下方表示 "0","X"表示任意,其他实验相同; 7)打开电源,船型开关盒5V电源指示灯亮; 8)在PC机上运行PCEC16.EXE文件,根据连接的PC机的串口设置所用PC机 的串口为"1"或"2",其他的设置一般不用改动,直接回车即可; (8)按一下"RESET"按键,再按一下"START"按键,主机上显示: 6实验截图及思考题 【例3】计算1到10的累加和。

计算机组成原理实验报告-汉字编码与校验设计实验

实验一汉字编码与校验设计实验 一、实验目的 本实训将帮助同学们巩固对计算机中数据表示方法的理解,要求能设计汉字国标码与区位码之间的转换电路,能批量获取汉字机内码并用点阵形式进行显示。通过设计16 位数据的海明编解码电路,16 位数据的CRC 并行编解码电路,帮助同学们理解校验码传输过程。通过校验码流水传输实验帮助大家提前建立流水线的基本概念 二、实验原理、内容与步骤 实验原理、实验内容参考: 1、汉字编码原理 1)机内码与区位码 区位码转换为十六进制+2020H得到国标码,国标码+8080H得到机内码。 区位码(十六进制)+A0A0H=机内码 机内码-A0A0H=区位码(十六进制) 2)存储器数据编辑 使用实验里附带的十六进制编辑器,在使用ASCII码保存的记事本编辑,记得得 到。 2、汉字编码电路设计 国标转区位码

汉字显示 3、海明编码原理与设计 1)编码原理 若有效消息b1b2b3b4=1011,则先将它分别填入第3,5,6,7位,再分组进行奇偶统计,分别填入校验位P1,P2,P3的值。这里分组采用偶校验,因此,要保证3组校验位的取值都满足偶校验规则。各校验码的取值如下: P1=H3⊕H5⊕H7=b1⊕b2⊕b4=1⊕0⊕1=0 P2=H3⊕H6⊕H7=b1⊕b3⊕b4=1⊕1⊕1=1 P3=H5⊕H6⊕H7=b2⊕b3⊕b4=0⊕1⊕1=0 这样就得到了海明码 2)分组原理 在海明码H1~Hn中,位号数(1,2,3,。。。,n)为2的权值的那些位,即1(20),2,4,。。。,2r-1位,作为奇偶校验码,并记作P1,P2,P3,。。。,P r,余下各位则为有效信息位。与N=11,k=7,r=4相应海明码可示意为 位号 1 2 3 4 5 6 7 8 9 10 11 P i占位P1P2 b1 P3 b2 b3 b4 P4 b5 b6 b7 其中,b i均为有效信息。 3)校验位逻辑与电路设计

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

计算机组成原理实验报告 实验项目存储器 一、实验目的: 1)理解计算机主存储器的分类及作用。 2)掌握TEC-CA实验台上的存储器器件的工作原理及读写方法。 二、实验原理: 在TEC-CA开放式CPU实验教学系统实验台上,有2片静态存储器器件HM6116。HM6116 有8位数据总线和11位地址总线。2片HM6116构成了2k X 16bits的静态存储器,与FPGA-CPU一起构成了能够运行测试程序的计算机。图6-41是FPGA-CPU和2片HM6116连接示意图。 对于FPGA-CPU来说,实验台上的2片HM6116的CS是接地的,因此不需要对它们的CS 进行控制。FPGA-CPU产生的16位存储器地址A15—A0只有11位地址A10—A0送往2片HM6116,其余5位地址A15—A11没有使用。FPGA-CPU的16位存储器数据总线D15—D0和2片HM6116相连,1片HM6116的I/O7—I/O0接D7—D0,另1片HM6116的I/O7—I/O0接D15—D8。FPGA-CPU 输出的存储器控制信号FWR直接送2片HM6116的WE;FWR在实验台经过一个反相器反相后送2片HM6116的OE。因此FPGA-CPU只要在存储器地址总线A10—A0设置好地址,在数据总线D15—D0上送出被写数据,然后在FWR上产生一个负脉冲,就能将数据写入指定的存储器单元;只要在存储器地址总线A10—A0设置好地址,然后使FWR为高电平,就能在数据总线D15—D0

上接收到从指定的存储器单元读出的数据。 三、实验步骤: (1)实验台设置成FPGA-CPU附加外部RAM运行模式“011”。 该调试模式要能够实现模拟FPGA-CPU对实验台存储器的存数、取数功能。即 REGSEL = 0、CLKSEL = 1、FDSEL = 1。使用实验台上的单脉冲,即STEP_CLK短路子短接,短路子RUN_CLK断开。由于当FDSEL=0时,指示灯D15—D0显示的是开关SD15—SD0的值,因此开关FDSEL必须为1。这种方式除了FPGA-CPU的时钟是单脉冲外,其余都与单片机控制FPGA-CPU调试模式完全一样。 (2)将设计在Quartus Ⅱ下输入,编译后下载到TEC-CA上的FPGA中。(3)首先按实验台上的CPU复位按钮,使存储器地址寄存器复位为0,然后不断观察实验台上的指示灯,察看结果与预想的是否一致。 四、实验现象及分析: 画出程序的逻辑框图(流程图)

相关文档
最新文档