本科实验课程报告。
2016 至2017学年第 1 学期)
课程名称: 计算机组成原理。
专业名称: 计算机科学与技术
行政班级1410081
学号: 141006125
姓名黄梦阳。
指导教师李玉玲。
报告时间: 2016 年 12 月 4 日。
实验一。实验地点实验日期成绩:
1、 实验目的。
1)熟悉硬软件环境。
2)学习和了解tec-xp教学实验系统监控命令的用法。
3)了解tec-xp教学实验系统的指令系统。
2、 实验要求。
使用教学机前,熟悉tec-xp教学机的各个组成部分及使用方法。
3、 实验原理。
1)tec-xp 教学机的面板结构: 控制部件主要由运算部件 alu、控制部件—
组合逻辑控制器和微程序处理器、存储部件——rom 和 ram、控制存储器等芯片构成。
2)工作模式选择00010或00110 ,00010更稳定: 连续运行程序、采用微程序控制器、联机、 16 位机。
3)教学机的监控命令格式及含义:
汇编命令 a[adr]:输入单条指令,并将汇编之后的机器**存入相应的内存单元中。有错误提示,但功能并不完善;
反汇编命令 u[adr]:从指定或默认地址开始反汇编 15 条指令,并将结果显示处理;
执行程序命令 g[adr]:从指定或默认地址开始连续运行一个用户程序;
单条指令执行命令t[adr],p[adr]:从命令指定或 pc 指定地址开始单条执行;指令显示/修改寄存器内容命令r[reg]:当 r 命令不带参数时只是显示所有寄存器的内容;当 r 命令带参数时显示指定寄存器的内容,并可修改其值;
显示存储器内容命令 d[adr]:从指定或默认地址开始显示内存 128 个存储字的内容;
修改存储器内容命令 e[adr]:从指定或默认地址开始逐字显示每个内存字的内容并等待用户键入一个新值存回该单元,用空格切换各个单元,用回车结束 e 命令的执行。
4、 实验步骤。
1.完成教学机与pc机的联机操作。
2.练习常用的tec-xp教学机监控命令。
(1)r命令。
r;r r0;
(2)d命令显示存储内容。
d 200(3)e命令修改存储器内容。
e 2000
3.输入给定的汇编程序,单步跟踪执行。
a 2000
2000: mvrd r0, aaaa ;mvrd 与 r0 之间有一个空格,其他同。
2002: mvrd r1, 5555
2004: add r0, r1
2005: and r0, r1
2006: ret ↙ 程序的最后一个语句,必须为 ret 指令。
5、 实验结果及总结。
1)实验结果:用反汇编命令 u 2000↙ 查看存储成功,并逐步跟踪执行得出正确结果,即r0 5555 。
2)总结:输入的汇编程序可以用反汇编命令查看,此时语言为易接受语言。
实验二。实验地点实验日期成绩:
1、 实验目的。
1)了解计算机中半导体存储器 ram和 e2prom 的功能和区别;
2)理解并掌握半导体存储器芯片的扩展和验证方式。
2、 实验要求。
实验前先复习存储器字、位扩展的方法,并熟悉所做实验的内容。
3、 实验原理。
1)随机存储器 ram 的读写特性是:在不断电的情况下, cpu 可以对该存储器的任何单元进行随机读写操作,其中内容可以长期保存;但该存储器是易失性的存储器,一旦断电,其中数据均被清空。本实验要在监控状态下,分别使用不同的监控命令对该 ram 存储芯片的读写特性进行验证。
由于是联机测试,需要将 tec-xp 的功能开关先置为 00110。
2)扩展用的 e2prom 芯片,其读操作和 ram 一样,而其写操作, 由于要先擦除信息再写入,因此需要一定的延迟时间,大约为 1 毫秒。在对 e2prom 进行写操作时, 应加入一段延时子程序的调用,以完成正确的读写。
4、 实验步骤。
1. tec-xp 教学机现有 ram 存储区的读写特性验证。
1)检查 fpga 下方的插针按下列要求短接。
标有“ /mwr”“ rd”的插针左边两个短接;
标有“ /mrd”“ gnd”的插针右边两个短接;
标有“ romlcs”和“ ramlcs”的插针短接。
2)使用 e 命令修改 ram 中某存储单元的值。
在命令行提示符状态下输入:
e 2020↙
屏幕将显示: 2020 内存单元原值:
按如下形式输入: 2020 原值: 2222(空格)原值: 3333(空格)原值: 4444(空格)
原值: 5555↙
注意: e 命令之后的地址应为 2000~25ffh 之间的某一个单元。
3)使用 d 命令查看所修改单元的内容。
d 2020↙
这里查看到的数据,应与上一步中输入的数据一致。
4)断电后重新启动教学机,使用 d 命令再次查看所修改单元的内容。
d 2020↙
这里发现原来置入到这几个内存单元的值已经改变。因此,用户使用 ram 时,必须在。
每次断电重启后,重新写入所需要的数据。
5)使用 a 命令输入一段指令序列。
a 2000↙
按如下形式输入:
2000: mvrd r0, aaaa
2002: mvrd r1, 5555
2004: and r0, r1
2005: ret
这里,对 ram 使用 a 命令写入连续的指令不会出错。
6)单步方式执行以上指令序列,观察结果。
t 2000↙
r0 的值变为 aaaah,其余寄存器的值不变。
t↙r1 的值变为 5555h,其余寄存器的值不变。
t↙r0 的值变为 0000h,其余寄存器的值不变。
7)教学机断电重启后,以上数据仍然会丢失。
2. 扩展容量的读写特性验证。
1) 用 e 修改扩展单元的内容, 并用 d 查看结果。
假定第 2 步中的扩展连接采用的是默认地址 4000h~5fffh,使用 e 命令修改该地址范围内的某几个单元,再用 d 命令查看数据的修改情况。
将教学机断电后重新启动,再次查看以上修改单元的值,分析原因。
2)控制程序。
实验使用的 e2prom 芯片不能直接用 a 命令输入程序,单字节的指令可能会写进去,双字节指令的低位会出错(建议试一试例如: a 5000: mvrd r0,aaaa,该指令是否写进 5000 开始的地址,需要 u 命令验证)。
因此, 可以将程序放到 ram( 6116)中,使用程序读写扩展空间 5000h~500fh 单元。
从 2000h 单元开始输入主程序:
2000) mvrd r0, 0030
mvrd r2, 0010 ; r2 记录循环次数。
mvrd r3, 5000 ; r3 的内容为 16 位内存地址。
2006) strr [r3], r0 ;将 r0 寄存器的内容放到 r3 给出的内存单元中。
cala 2200 ;调用程序地址为 2200 的延时子程序。
inc r0 ; r0 加 1
inc r3 ; r3 加 1
dec r2 ; r2 减 1
jrnz 2006 ; r2 不为 0 跳转到 2006h
ret 3)延时子程序。
从 2200h 单元开始输入延时子程序:
2200) push r3
mvrd r3, 0001
2203) dec r3
jrnz 2203
pop r3
ret 4)运行程序,查看结果。
在命令提示符下输入: g 2000↙, 运行主程序。使用 d 命令查看 5000h~500fh 单元中的数据。
5、 实验结果及总结。
在扩展容量的读写特征验证中,第(3)步中的第二行**:由于时间设定不够,数据会写丢,所以将0001改为1000,方可保存到单元中。
通过这次实验,我们了解了存储器的基本功能,掌握了数据的存储过程,熟悉理解了存储器的组成和控制。
实验三。实验地点实验日期成绩:
1、 实验目的。
1)深入了解 am2901 运算器的功能与具体用法;
2)深化运算器部件的组成、设计、控制与使用等知识。
2、 实验要求。
1)实验前,认真了解 am2901 运算器的基本结构,预习所需实验的内容,并在课前填写实验步骤**,对于实验数据和实验结果进行预期性的分析,以提高实验效率;
2)实验过程中,要按正确流程操作,防止损坏设备,分析可能遇到的各种现象,判断结果是否正确,记录运行结果。
3)实验之后,认真写出实验报告,包括对遇到的各种现象的分析,实验步骤和实验结果。
3、 实验原理。
控制信号表:
4、 实验步骤。
1)实验方式设置。
将 tec-xp 教学机左下方的 5 个功能开关设置为 1**00(单步、 16 位、脱机);先按一下“ reset”按键,再按一下“ start”按键,进行初始化。
2)逐条指令执行,并核对结果完成初始化后,请按顺序控制运算器执行每条指令,每条指令执行时请记录按 start前和按 start 后两个时刻的状态,若与预期结果不同,请查找问题并思考原因。
操作系统课程设计进程调度
批处理系统的作业调度模拟。一 课程设计目的。1 加深对作业概念的了解 2 深入了解批处理系统如何组织作业 管理作业和调度作业 3 巩固相关的理论知识 二 课程设计预备知识。1 作业控制块的概念和结构 2 作业的创建 3 作业的调度算法 4 c语言的相关知识。三 课程设计内容要求。1 编写程序完成批处...
操作系统课程设计 进程管理
操作系统。课程设计报告。题目 专业 班级 姓名 学号 指导老师 年月日。操作系统 课程设计任务书。一 课程设计题目 任选一个题目 1.模拟进程管理。2.模拟处理机调度。3.模拟存储器管理。4.模拟文件系统。5.模拟磁盘调度。二 设计目的和要求。1.设计目的。操作系统原理 课程设计是计算机科学与技术专...
进程调度算法操作系统课程设计
操作系统原理。课程设计报告。题目 进程调度算法。班级 软件09 姓名 李宗仁 指导老师 张老师 进程调度算法。一 实验目的。通过优先权法与轮转调度算法的模拟加深对进程概念和进程调度过程的理解,掌握进程状态之间的切换,同时掌握进程调度算法的实现方法和技巧。二 实验内容。1 用c语言或c 语言来实现对n...