计组实验课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《计算机组成实验C》
课程设计
适用专业:电子信息类专业
专业:计算机科学与技术
班级:计科四班
学号:2 0 1 2 2 3 7 8
姓名:王云龙
指导教师:陈红梅
实验学期: 2014-2015第1学期
西南交通大学
信息科学与技术学院
简化计算机系统的设计
一.实验目的
通过学习简单的指令系统及其各指令的操作流程,用VHDL语言实现简单的处理器模块,并通过调用存储器模块,将处理器模块和存储器模块连接形成简化的计算机系统。
二. 实验内容
1. 用VHDL语言实现简单的处理器模块。
2. 调用存储器模块设计64×8的存储器模块。
3. 将简单的处理器模块和存储器模块连接形成简单的计算机系统。
4. 将指令序列存入存储器,然后分析指令执行流程。
三. 预习要求:1、学习简单指令集。2、学习各指令的操作流程。
四. 实验报告
1. BLOCK图
2.内存文件
内存文件中的数据:
3. 程序设计
4.仿真波形图
执行过程解释:
指令Load,Add,Move,Sub,And,Or,Xor,Shr,Shl的执行需要两个时钟周期,即两个状态0,1;
指令Swap的执行需要三个时钟周期,即三个状态0,1,2;
指令Jz,Jmp的执行需要4个时钟周期,即四个状态0,1,2,3;
指令Read,Write的执行需要5个时钟周期,即状态0,1,2,3,4;
(1)刚开始reset信号为0,所有寄存器清零,状态清零,之后reset=1,clock有效,开始取指令并执行;
(2)取地址为000H指令:Idle,无操作,pc=pc+1;
(3)取地址为001H指令:Load 5,操作为R0=5H,pc=pc+1;
(4)取地址为002H指令:Move R1,R0,操作为R1=R0=5H,pc=pc+1;
(5)取起始地址为003H指令:Read 01F,操作为R0=(01F)=39H,pc=pc+1;
(6)取地址为005H指令:Shl R1,操作为R1=(R1左移一位),操作完成后R1=0AH;
(7)取地址为006H指令:Add R0,R1,操作为R0=R0+R1,操作完成后R0=43H;
(8)取起始地址为007H指令:Write 01E,操作为(01EH)=R0=43H;
(9)取地址为009H指令:Sub R0,R1,操作为R0=R0-R1,操作完成后R0=39H;
(10)取地址为00AH指令:Swap R0,R1,操作为R1和R0的值互换,完成后R1=39H,R0=0AH;
(11)取地址为00BH指令:OR R0,R1,操作为R0=R0 OR R1,完成后R0=3BH;
(12)取地址为00CH指令:Shr R1,操作为R1=(R1右移一位),完成后R1=1CH;
(13)取地址为00DH指令:AND R0,R1,操作为R0=R0 AND R1,完成后R0=18H;
(14)取地址为00EH指令:Move R2,R0,操作为R2=R0,完成后R2=18H;
(15)取地址为00FH指令:Move R3,R1,操作为R3=R1,完成后R3=1CH;
(16)取地址为010H指令:XOR R2,R3,操作为R2=R2 XOR R3,完成后R2=04H;
(17)取起始地址为011H指令:Read 01E,操作为R0=(01EH)=43H;
(18)取起始地址为013H指令:Jz 019,操作为如果R0=00H,则跳转到起始地址为019H的指令开始执行,否则继续执行下一条指令,由于R0=43H,故不跳转,继续执行;
(19)取起始地址为015H指令:Read 01D,操作为R0=(01DH)=00H;
(20)取起始地址为017H指令:Jmp 013,操作为无条件跳转到起始地址为013H的指令(Jz 019)开始执行;
(21)取起始地址为013H指令:Jz 019,由于此时的R0=00H,故跳转到起始地址为019H的指令(Stop)开始执行;
(22)取地址为019H指令:Stop,停止执行。
5. 实验感想