您的位置:首页 > 理论基础

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

2016-12-10 10:58 1896 查看

实验环境

Dais−CMX16+

实验内容

第一次实验

手动实验环境

十六位机运算器实验

第二次实验

通用寄存器实验

准双向I/O口实验

地址总线组成实验

第三次实验

十六位数据总线实验

存储器读写实验

指令总线运用实验

第四次实验

微控制器实验

内容详细

手动控制实验环境

所谓手动控制,就是用二进制拨动开关模拟微控制信号,以手动方式设置相互关联的逻辑控制电位,建立“源与目”的有效状态,实现和完成实验制定的控制任务。

实验目的

在 Dais−CMX16+ 手控态提供“在线”与“搭接”两种实验方式,“在线”态其内部线路已按规范连接,“搭接”态则可忽略微控制器组成环节,自定义和连接单元部件与关联电路。

本次实验采用“搭接”方式,一方面可以让我们了解实验箱“在线”态内部一些线路,另一方面也是让我们动手体验一次实验连接环节与实验拆除环节。

十六位机运算器实验

实验目的

掌握十六位机字与字节运算的数据传输格式,验证运算功能发生器及进位控制组合功能。

实验原理

通过准双向I/O输入输出端口给出参与运算的数据,两个运算寄存器 AX,BX 与 ALU 相连,给出相应的功能编码,然后经过 ALU 运算后输出到 FUN 。

实验过程

总线源编码选择 IOR ,打开字写功能,通过 I/O 单元向累加器 AX 与暂存器 BX 置数。

总线源编码选择 ALU ,通过 M、S2、S1、S0 选择相应的逻辑运算或算数运算。

FUN 即为运算结果。

运算器功能编码

算数运算

MS2S1S0功能
0000A+B+C
0001A−B−C
0010RLC
0011RRC
0100A+B
0101A−B
0110RL
0111RR
逻辑运算

MS2S1S0功能
1000B
1001/A
1010A−1
1011A=0
1100A#B
1101A&B
1110A+1
1111A

通用寄存器实验

寄存器组写操作

[b]目的寄存器写编码[/b]

目标使能通用寄存器目标编址
K19...K17IRK16K6功能说明
o2...o0IR1OPWT4
000CX字写
001CL偶字节写
00001XCH奇字节写
100DX字写
101DL偶字节写
11XDH奇字节写
[b]寄存器组写入[/b]

K21 (MWR) EM程序存储器写使能

K16 (OP) 目标部件奇偶标志

K2 (LDIR) IR指令寄存器写使能

首先打开总线编码的IOR功能(利用 K6 (M) 确定总线字长)

CX地址:00

DX地址:02

LDIR与MWR置为0

打入CX或DX地址到IR指令寄存器中

关闭LDIR与MWR

K19...K17=000 为CX字写操作

写入数据

其中,我们可以利用 K6(W) 来指定总线字长,从而可以实现寄存器组的字写入与字节写入。

寄存器组读操作

[b]源寄存器读编码[/b]

源编码通用寄存器源地址
K10...K8IRK7K6功能说明
X2...X0IR1XPW
000CX字读
001CL偶字节读
00101XCH奇字节读
100DX字读
101DL偶字节读
11XDH奇字节读
[b]寄存器组读取[/b]

打开总线编码IOR功能

LDIR、MWR、OP置0,IR可写

打入CX或DX地址到IR,以便于读取

关闭LDIR与MWR

总线功能选择RRD ( K10...K6=001 )

在寄存器组读取过程中,我们可以通过改变 K6 来控制是字读操作还是字节读操作,如果处于字节操作中,利用 K7 可选择CL 与 CH,从而可以分别传输寄存器高位与地位内容到总线中。

问题

打入IR指令寄存器的CX与DX地址00与02是否是在出厂时规定好的数据

如果打入的地址是其他数据为什么也可以选择到CX寄存器

准双向I/O口实验

I/O写操作

[b]数据来源FUN[/b]

K10...K6=11000 其中 K10...K8=110 指总线选择ALU

K7...K6=00 即 XP=0 与 W=0 打开IO字写操作

[b]AX取反送数据总线[/b]

K15...K11=11001

K15=1 ALU进行逻辑运算

K13...K11=001 即 S2...S0=001 进行的逻辑运算为 ¬A

[b]IO写选通[/b]

K19...K16=0100

K19 RXW(寄存器写使能)

K18 DI(目标寄存器编址)

K17 IOW(I/O写使能)

K16 目的奇偶位

I/O读操作

总线源编码 K10...K8=100 选择IOR功能

W=0 P=0 IO字写

K19...K16=1010 BX写选通并打入一条数据到BX

关闭写选通,总线编码选择ALU,并使ALU输出BX的值( M=1 S2...S0=000 )

有关I/O字节读写操作

I/O口的写操作只能在当前状态为全F时写入,因为输入和输出同时只能有一个有效,或者另一种方法是I/O口高八位输出,低八位输入,相反也可行。

地址总线组成实验

程序计数器实验

操作对象:PC

目标部件定义节拍功能说明
E/MIPT3上升沿打入T3上升沿打入
11XPC保持
10PC加1
00PC装载
[b]实验流程[/b]

打开IOR功能,IO字写

打开 LDPC(K22) PC程序计数器更新位

打开 E/M(K23) 当IP有效时,E/M:0=PC装载,1=PC加1

置数并给一个上升沿打入

总线编码 X2...X0=000 选择PC,DBUS即为PC的值

地址寄存器与堆栈寄存器实验

操作对象:AR或SP

[b]实验流程[/b]

打开IOR功能,IO字写

地址寄存器:目的编码选择MAR,偶寻址

堆栈寄存器:目的编码选择SP,偶寻址

置数并给其一个上升沿打入

十六位数据总线实验

实验原理

[b]字与字节体系[/b]

系统总线宽度为十六位,通过 W 来控制字长, W=0 16位字操作, W=1 8位字操作。

[b]源奇偶的运用[/b]

在字节传递中由于总线的互通,形成“奇送偶”或“偶送奇”的八位字节总线,其使能端定义为低电平选通,逻辑表达式为:

G(偶字节)=!W(字长)#XP(源奇偶)

G(奇字节)=!XP(源奇偶)

[b]目的奇偶的运用[/b]

在目的寻址中亦由字长控位“ W ”与目的地址的奇偶性动态定义当前目的字长,其逻辑表达式为:

!O(偶字节)=!OP(目的奇偶)

!O(奇字节)=!W(字长)#OP(目的奇偶)

[b]数据传递规则[/b]

系统在十六位原理计算机的字节操作中运用总线互联机制,以原址的奇偶性形成“奇递偶”或“偶递奇”两者互通的八位字节总线,具体可通过 W、XP、OP 控制相应功能。

实验步骤

总线编码选择 IOR ,并打开 I/O 口字写功能

通过 W、XP、OP 调整为想要实现的操作。

置数,并给一个时钟沿将数据写入寄存器

对比置数内容与寄存器内容,得出结论

存储器读写实验

实验目的

熟悉和了解存储器组织与总线组成的数据通路。

实验原理

实验所用设备存储器组织由二片6116构成具有奇偶概念的十六位信息存储体系,该存储体系AddBus由IP指针和AR指针分时提供,E/M控位为“1”时选通IP,反之选通AR。

实验内容

[b]数据存储器字写[/b]

利用 I/O 端口可输入数据。

打开存储器写时可将数据写入存储器 EM 中。

[b]数据段读操作[/b]

利用 I/O 端口为 AR 写入地址。

从存储器读数据到总线 (RAM -> 总线)

指令总线运用实验

实现目的

熟悉和了解指令总线的数据通路与构成途径

掌握指令部件的“取指”规则及地址段运用技巧

实验原理

在取指操作中指令信息由主存流向指令寄存器 IR 和指令译码器 ID ,若取操作数亦可经三态门流向数据总线,指令总线(IBUS)也是主存及 IR 与数据总线之间的互递通路,在主存读写周期与数据总线双向交换信息,在通用寄存器或内存寻址操作中透过数据总线单向传递地址信息。

实验项目

指令寄存器IR

指令编译器ID

操作码定长控制

IRIdz操作码长度操作码位置说明
018位(字节)IR7~IR0通用编码
004位(半字节)IR7~IR4定长编码
指令寄存器操作方法

取指操作

IRMWRT2T4功能说明
01-打操作码
01-打操作数
00-DBUS→IR
写操作

IRMWROPW功能说明
0000IR字写
0001IRL偶字节读
001XIRH奇字节读

微控制实验

实验目的

熟悉微控制器的控制原理

掌握微控制器的实现方法

微程序控制器

[b]微程序控制器组成结构[/b]

控制存储器 CM

微程序计数器 μPC

[b]微程序执行过程[/b]

启动取指微指令或微程序,根据程序计数器PC所提供的指令地址,从EM主存中取出所要执行的机器指令,送入指令寄存器IR、指令译码器ID中,并且完成PC+1,指向机器指令的下址单元。

根据ID译码器中的指令码,把微地址形成电路产生的机器指令起始微地址打入μPC。

从μPC所指定的CM控制存储器单元分时输出微操作控制字段与下续微地址控制字段。

微指令的操作控制字段经译码或直接产生一组微指令,控制有关功能部件完成微程序所规定的微操作。

微指令的下址段及当前PSW、INQ等标志送往微地址形成电路,产生下条微指令的地址,进入读取与执行下条微指令。如此循环,直到一条机器指令的微程序全部执行完毕。

[b]微指令格式及编码[/b]

本系统采用字段直接编码法,把微指令操作控制字段划分为若干个子字段,每个子字段的所有微命令进行统一编码。

控制器特约定义

零微址单元格式

下址段微指令控制段
FF FFFF FF FF

总结

平时我们所能见到的都是计算机的外部结构,而在计算机组成原理的学习中,让我们逐步对计算机的内部结构有了一些了解,课本上的内容始终都停留在理论部分,而在这几次的实验课程中,我们动手研究去验证书上的内容,同时也对运算器、存储器、控制器以及I/O端口等各个系统内部结构有了很深的了解。

虽然照着实验指导书上可以完成相关的操作,并且根据前面的内容与注释可以看懂当前操作的目的,但是在整个设备中还有好多好多没有接触到的部分,现在只是学到了局部的一些概念,想要哪天去完成一件完整的有意义的设计还需要很长时间去学习!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: