计算机组成原理第二次上机实验报告
青岛理工大学
实 验 报 告
实验课程: 计算机组成原理I
实验日期: 2015年 10月23日, 交报告日期:2015 年11月2日,成绩:
实验地点:现代教育技术中心303
计算机工程 学院,计算机科学与技术 专业, 班级:计算132班
实验指导教师:林孟达 批阅教师:林孟达
同组学生姓名学号
实验课题及内容
按照题目要求设计一个通用寄存器组的逻辑,决定外部的端口(名称、有效电平)和内部各元件的连接,画出系统框图和逻辑图,设计仿真数据,用VHDL编程和仿真。
实验内容:
一、主要元件设计
1.16位寄存器
功能要求:同步并行置数,异步复位(清零),三态输出,片选信号,读/写控制。
2.地址译码器
功能要求:3-8译码器。
二、顶层设计
用层次结构设计的方法设计一个通用寄存器组。包括8个16位寄存器,1个地址译码器等元件。
功能要求:每个寄存器能够同步并行置数,异步复位(清零),三态输出。每个都可以(用地址)独立访问。
三、仿真
设计仿真波形数据,要考虑到所有可能的情况。在实验报告中必须清楚说明仿真波形数据是怎样设计的。
四、深入的课题
① 上面设计的通用寄存器组,每次只能访问一个寄存器。如果想同时访问两个寄存器,应该怎样设计?
② 16位的寄存器每次读/写都是一个16位字,如果需要写入的是8位的字,即将8位的字写到16位寄存器的高8位或低8位(例如,16位寄存器A由AH和AL两个8位的寄存器组成),读出时,可一次读16位。应该怎样设计?
逻辑设计 1、3-8译码器系统框图
端口说明:a(2-0):输入信号
S(2-0):使能端,s0是高电平有效,s1,s2是低电平有效。
y(0-7):输出端口
3-8译码器逻辑函数:
2、16位寄存器系统框图
端口说明:d(0-15):输入
q(0-15):输出
cp,reset,chip,rw,z:分别是时钟信号,异步清零信号,片选信号,读写控制信 号,三态输出。
通用寄存器组系统框图
通用寄存器组
端口说明: d(0-15):数据输入
q(0-15):数据输出
a(0-2):译码器的输入
s(0-2):使能端控制
cp,z,reset,rw:分别是时钟信号,三态输出,异步清零,读写控制
三、仿真设计
1、3-8译码器:
3-8译码器功能表
输入输出s0 s1 s2 a2 a1 a0 y7 y6 y5 y4 y3 y2 y1 y01 0 0
1 0 0
1 0 0
1 0 0
1 0 0
1 0 0
1 0 0
1 0 0 0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1 1 1 1 1 1 1 1 0
1 1 1 1 1 1 0 1
1 1 1 1 1 0 1 1
1 1 1 1 0 1 1 1
1 1 1 0 1 1 1 1
1 1 0 1 1 1 1 1
1 0 1 1 1 1 1 1
0 1 1 1 1 1 1 1
从它的功能表可以知道输入的数据是有限的且只有八组,故可以按照功能表对全部数据进行仿真。
16位寄存器:
16位寄