计算机组成原理 - 实验报告
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 即为运算结果。
运算器功能编码
算数运算M | S2 | S1 | S0 | 功能 |
---|---|---|---|---|
0 | 0 | 0 | 0 | A+B+C |
0 | 0 | 0 | 1 | A−B−C |
0 | 0 | 1 | 0 | RLC |
0 | 0 | 1 | 1 | RRC |
0 | 1 | 0 | 0 | A+B |
0 | 1 | 0 | 1 | A−B |
0 | 1 | 1 | 0 | RL |
0 | 1 | 1 | 1 | RR |
M | S2 | S1 | S0 | 功能 |
---|---|---|---|---|
1 | 0 | 0 | 0 | B |
1 | 0 | 0 | 1 | /A |
1 | 0 | 1 | 0 | A−1 |
1 | 0 | 1 | 1 | A=0 |
1 | 1 | 0 | 0 | A#B |
1 | 1 | 0 | 1 | A&B |
1 | 1 | 1 | 0 | A+1 |
1 | 1 | 1 | 1 | A |
通用寄存器实验
寄存器组写操作
[b]目的寄存器写编码[/b]目标使能 | 通用寄存器目标编址 | ||||
---|---|---|---|---|---|
K19...K17 | IR | K16 | K6 | 功能说明 | |
o2...o0 | IR1 | OP | W | T4 | |
0 | 0 | 0 | ↑ | CX字写 | |
0 | 0 | 1 | ↑ | CL偶字节写 | |
000 | 0 | 1 | X | ↑ | CH奇字节写 |
1 | 0 | 0 | ↑ | DX字写 | |
1 | 0 | 1 | ↑ | DL偶字节写 | |
1 | 1 | X | ↑ | DH奇字节写 |
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...K8 | IR | K7 | K6 | 功能说明 |
X2...X0 | IR1 | XP | W | |
0 | 0 | 0 | CX字读 | |
0 | 0 | 1 | CL偶字节读 | |
001 | 0 | 1 | X | CH奇字节读 |
1 | 0 | 0 | DX字读 | |
1 | 0 | 1 | DL偶字节读 | |
1 | 1 | X | DH奇字节读 |
打开总线编码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/M | IP | T3上升沿打入 | T3上升沿打入 |
1 | 1 | X | PC保持 |
1 | 0 | ↑ | PC加1 |
0 | 0 | ↑ | PC装载 |
打开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
操作码定长控制
IR | Idz | 操作码长度 | 操作码位置 | 说明 |
---|---|---|---|---|
0 | 1 | 8位(字节) | IR7~IR0 | 通用编码 |
0 | 0 | 4位(半字节) | IR7~IR4 | 定长编码 |
取指操作
IR | MWR | T2 | T4 | 功能说明 |
---|---|---|---|---|
0 | 1 | ↑ | - | 打操作码 |
0 | 1 | - | ↑ | 打操作数 |
0 | 0 | - | ↑ | DBUS→IR |
IR | MWR | OP | W | 功能说明 |
---|---|---|---|---|
0 | 0 | 0 | 0 | IR字写 |
0 | 0 | 0 | 1 | IRL偶字节读 |
0 | 0 | 1 | X | IRH奇字节读 |
微控制实验
实验目的
熟悉微控制器的控制原理掌握微控制器的实现方法
微程序控制器
[b]微程序控制器组成结构[/b]控制存储器 CM
微程序计数器 μPC
[b]微程序执行过程[/b]
启动取指微指令或微程序,根据程序计数器PC所提供的指令地址,从EM主存中取出所要执行的机器指令,送入指令寄存器IR、指令译码器ID中,并且完成PC+1,指向机器指令的下址单元。
根据ID译码器中的指令码,把微地址形成电路产生的机器指令起始微地址打入μPC。
从μPC所指定的CM控制存储器单元分时输出微操作控制字段与下续微地址控制字段。
微指令的操作控制字段经译码或直接产生一组微指令,控制有关功能部件完成微程序所规定的微操作。
微指令的下址段及当前PSW、INQ等标志送往微地址形成电路,产生下条微指令的地址,进入读取与执行下条微指令。如此循环,直到一条机器指令的微程序全部执行完毕。
[b]微指令格式及编码[/b]
本系统采用字段直接编码法,把微指令操作控制字段划分为若干个子字段,每个子字段的所有微命令进行统一编码。
控制器特约定义
零微址单元格式下址段 | 微指令控制段 |
---|---|
FF FF | FF FF FF |
总结
平时我们所能见到的都是计算机的外部结构,而在计算机组成原理的学习中,让我们逐步对计算机的内部结构有了一些了解,课本上的内容始终都停留在理论部分,而在这几次的实验课程中,我们动手研究去验证书上的内容,同时也对运算器、存储器、控制器以及I/O端口等各个系统内部结构有了很深的了解。虽然照着实验指导书上可以完成相关的操作,并且根据前面的内容与注释可以看懂当前操作的目的,但是在整个设备中还有好多好多没有接触到的部分,现在只是学到了局部的一些概念,想要哪天去完成一件完整的有意义的设计还需要很长时间去学习!
相关文章推荐
- [Other]计算机组成原理分解实验:实验三 二进制补码加法器
- 山东大学软件学院计算机组成原理实验3
- 【计算机组成原理】用MARS做实验
- 计算机组成原理实验二:四位补码运算器
- 中山大学计算机组成原理多周期CPU实验
- [Other]计算机组成原理分解实验:实验四 时序系统
- 计算机组成原理实验之模拟整机实验考核试题
- 计算机组成原理 实验1 Cache模拟器的实现
- [置顶] [计算机组成原理][R-I-J型指令CPU设计实验总结]
- 计算机组成原理-存储器实验
- 计算机组成原理课程设计实验一:验证74LS181运算和逻辑功能
- 计算机组成原理实验之微程序控制器实验
- 计算机组成原理实验
- 计算机组成原理第二版(唐朔飞)5个实验
- 计算机组成原理综合实验
- 山东大学软件学院计算机组成原理实验二
- 计算机组成原理实验二:RAM实验
- 计算机组成原理实验三:二进制补码加法器
- 山东大学计算机组成原理整机实验
- 计算机组成原理(1)实验2