计算机组成原理中央处理器CPU模型设计课程设计.docx
- 文档编号:23875600
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:21
- 大小:177.60KB
计算机组成原理中央处理器CPU模型设计课程设计.docx
《计算机组成原理中央处理器CPU模型设计课程设计.docx》由会员分享,可在线阅读,更多相关《计算机组成原理中央处理器CPU模型设计课程设计.docx(21页珍藏版)》请在冰豆网上搜索。
计算机组成原理中央处理器CPU模型设计课程设计
课程设计报告
课程名称计算机组成原理
设计题目中央处理器(CPU)模型设计
实验日期2012-12-18至2013-1-10
指导教师
系名计算机科学系
专业计算机科学与技术
班级10计科1班
姓名
学号
1系统分析1
1.1设计背景1
1.2设计目标1
2设计题目及要求1
2.1设计目的1
2.2使用设备2
2.3设计说明2
2.4设计内容3
3设计详细步骤4
3.1数据通路4
3.1.1数据通路设计4
3.1.2数据通路分析4
3.2指令系统5
3.2.1指令分类5
3.2.2指令格式6
3.2.3指令汇总9
4.3指令执行流程及其方框图11
4.3.1机器周期和节拍11
4.3.2指令执行流程的方框图11
4.3.3微操作节拍安排13
4心得体会19
中央处理器(CPU)模型设计
1系统分析
1.1设计背景
此次课程设计,是在通过计算机组成原理理论课和几次实验课的学习基础上,尝试设计一个简单的模型机指令系统,并设计出模型机的数据通路以及指令系统的指令执行流程。
1.2设计目标
设计一个模型计算机的指令系统及指令执行流程。
指令系统要支持简单的寻址方式,并且包括算术逻辑类指令、逻辑运算类指令、数据传送类指令、堆栈操作指令、程序控制类指令、I/O输入/输出指令、标志位置位清零指令;指令执行流程则要给出微操作的时间安排。
2设计题目及要求
2.1设计目的
通过课程设计,进一步加深对中央处理器的结构和功能的理解,初步掌握中央处理器的设计方法和步骤,为今后从事计算机系统设计打下初步的基础。
2.2使用设备
PC机一台
2.3设计说明
⑴CPU性能指标:
⑴CPU字长8位;
⑵数据总线:
8位;
⑶地址总线:
8位,最大寻址空间为256字;
⑷I/O独立编址,4位地址码,最大支持16个I/O端口;
⑸时钟:
1MHz
⑹机器周期:
4个时钟周期;
⑺CPU输出的控制信号:
/MR、/MW、/IOR、/IOW
⑵CPU基本构成:
①运算器:
功能参考74LS181(正逻辑);
②微操作信号发生器:
采用组合逻辑控制方式;
③时钟电路与时序发生器。
⑶CPU主要寄存器:
①ALU锁存器X、Y,指令不可访问;
②ALU输出移位器,采用三选一数据选择器实现,具有直通、左移1位、右移1位的功能;
③通用寄存器组R0~R7;
④SP:
堆栈指针;
⑤IR:
指令寄存器;
⑥PC:
程序计数器,具有+1功能;
⑦FLAG:
标志寄存器,8位,能独立置位或清零;
⑧DR:
数据缓冲寄存器,双向,指令不可访问;
⑨AR:
地址寄存器,单向,指令不可访问。
2.4设计内容
⑴设计模型机的数据通路;
⑵设计一个功能相对完整的指令系统:
①算术运算类指令(加、减、增1、减1);
②逻辑运算符指令(与、或、非、异或、移位运算);
③数据传送类指令;
④堆栈操作指令;
⑤程序控制类指令(相对转移、绝对转移、子程序调用、子程序返回);
⑥I/O输入/输出指令;
⑦标志位置位、清零指令;
⑶设计指令执行流程及其方框图。
2.5设计要求
⑴指令系统:
①指令长度为单字节和双字节两种;
②操作码长度固定;
③支持立即寻址、直接寻址、寄存器直接寻址、寄存器间接寻址等方式;
⑵设计指令执行流程,给出微操作的时间安排。
3设计详细步骤
3.1数据通路
3.1.1数据通路设计
3.1.2数据通路分析
⑴取指令数据通路分析
①PC→AR→MEM→DR→IR
②PC+1→PC
⑵指令执行通路分析
1RiopRj→Ri
Ri→X
Rj→Y
F→Ri
2(Ri)→Rj
Ri→AR
data→DR→Rj
③Ri→(Rj)
Rj→AR
Ri→DR→M
3.2指令系统
3.2.1指令分类
指令按不同的分类方法可划分为:
⑴按指令长度划分为单字指令和双字指令;
⑵按操作数划分为无操作数指令、单操作数指令、双操作数指令;
⑶按指令的功能和执行步骤划分为三组:
A组:
在取指后一步完成。
基本指令:
NOP,ADD,SUB,INC,DEC,AND,OR,XOR,SHL,SHR,MVRR,JR,JRC,JRNC,JRZ,JRNZ
扩展指令:
ADC,SBB,NOT,RCL,RCR,ASR,JMPR,STC,CLC
B组:
在取指后两步完成。
基本指令:
MVRD,LDRR,STRR,PUSH,POP,JMPA,RET,IN,OUT
扩展指令:
CALR
C组:
在取指后三步完成。
基本指令:
CALA
3.2.2指令格式
模型机支持单字和双字指令,第一个指令字的高8位为指令操作码字段,低8位和双字指令的第二个字为操作数、地址字段,共有三种格式:
操作码
DR
SR
I/O端口地址
/相对偏移量
立即数,直接存储器地址
根据指令长度、操作数不同划分为5种:
⑴单字、无操作数指令
格式:
操作码
000000
基本指令:
NOP;空操作
RET;子程序返回
扩展指令:
STC;置进位标志位C
CLC;清进位标志位C
⑵单字、单操作数指令
格式:
操作码
DR000
000SR
OFFECT
I/OPort
基本指令:
INCDR;DR←DR+1
DECDR;DR←DR-1
SHLDR;DR逻辑左移
SHRDR;DR逻辑右移
JROFFSET;无条件转移到ADR
JRCOFFSET;当C=1时转移到ADR
JRNCOFFSET;当C=0时转移到ADR
JRZOFFSET;当Z=1时转移到ADR
JRNZOFFSET;当Z=0时转移到ADR
PUSHSR;SR入栈
POPDR;弹出栈顶数据送入DR
INI/Oport;I/O端口输入
OUTI/Oport;I/O端口输出
扩展指令:
NOTDR;DR←
RCLDR;DR与C循环左移
RCRDR;DR与C循环右移
ASRDR;DR算术右移,最高位保持不变,最高位移入C
JMPRSR;无条件转移到SR指向的地址
CALRSR;调用SR指向的子程序
⑶单字,双操作数指令
格式:
操作码
DR
SR
基本指令:
ADDDR,SR;DR←DR+SR
SUBDR,SR;DR←DR-SR
ANDDR,SR;DR←DR∧SR
ORDR,SR;DR←DR∨SR
XORDR,SR;DR←DR
SR
MVRRDR,SR;DR←SR
LDRRDR,SR;DR←[SR]
STRRDR,SR;[DR]←SR
扩展指令:
ADCDR,SR;DR←DR+SR+C
SBBDR,SR;DR←DR-SR-C
⑷双字、单操作数指令
格式:
操作码
00
00
ADR
基本指令;
JMPAADR;无条件转移到地址ADR
CALAADR;调用首地址为ADR的子程序
⑸双字、双操作数指令
格式:
操作码
(6位)
DR
SR
DATA/ADR
基本指令:
MVRDDR,DATA;DR←DATA
3.2.3指令汇总
基本指令
指令
类型
指令格式
汇编语言
操作数
个数
CZVS
功能说明
A
组
00000000
NOP
0
****
空操作
0001DRSR
ADDDR,SR
2
****
DR←DR+SR
0010DRSR
SUBDR,SR
2
****
DR←DR-SR
0011DRSR
ANDDR,SR
2
****
DR←DR∧SR
0100DRSR
XORDR,SR
2
****
DR←DR
SR
0101DRSR
MVRRDR,SR
2
▪▪▪▪
DR←SR
100001DR
INCDR
1
****
DR←DR+1
100010DR
DECDR
1
****
DR←DR-1
100011DR
SHLDR
1
*▪▪▪
DR←DR*2
100100DR
SHRDR
1
*▪▪▪
DR←DR/2
100101OFFSET
JRADR
1
▪▪▪▪
无条件跳转的ADR
100110OFFSET
JRCADR
1
▪▪▪▪
C=1时跳转的ADR
100111OFFSET
JRNCADR
1
▪▪▪▪
C=0时跳转的ADR
101000OFFSET
JRZADR
1
▪▪▪▪
Z=1时跳转的ADR
101001OFFSET
JRNZADR
1
▪▪▪▪
Z=0时跳转的ADR
B
组
101010DR
DATA(8位)
MVRDDR,DATA
2
▪▪▪▪
DR←DATA
0110DRSR
LDRRDR,[SR]
2
▪▪▪▪
DR←[SR]
0111DRSR
STRR[DR],SR
2
▪▪▪▪
[DR]←SR
101011SR
PUSHSR
1
▪▪▪▪
SR入栈
101100DR
POPDR
1
▪▪▪▪
DR←出栈
10110100
ADR(8位)
JMPAADR
1
▪▪▪▪
无条件跳转到ADR
10111000
RET
0
▪▪▪▪
子程序返回
101111I/Oport
INI/Oport
1
▪▪▪▪
RO←[I/Oport]
110000I/Oport
OUTI/Oport
1
▪▪▪▪
[I/Oport]←R0
C组
11000100
ADR(8位)
CALAADR
1
▪▪▪▪
调用首地址为ADR的子程序
说明:
表中CZVS一栏,*表示该标志位在指令执行后被重置,▪表示该标志位不受指令执行的影响。
4.3指令执行流程及其方框图
4.3.1机器周期和节拍
取指周期FT;取源操作数周期ST;取目的操作数周期DT;执行周期ET。
节拍:
P1~P4。
4.3.2指令执行流程的方框图
4.3.3微操作节拍安排
⑴取指令周期
T1:
OPC=1,LAR=1
T2:
MEMR=1,OPC=1,OPALU+1=1
T3:
LPC=1
T4:
LDR2=1,ODR1=1,LIR=1
⑵指令NOP执行周期
T1:
T2:
T3:
T4:
⑶指令ADDRi,Rj执行周期
T1:
ORi=1,LX=1
T2:
ORj=1,LY=1,OPADD=1
T3:
OF=1,LRi=1
T4:
⑷指令SUBRi,Rj执行周期
T1:
ORi=1,LX=1
T2:
ORj=1,LY=1,OPSUB=1
T3:
OF=1,LRi=1
T4:
⑸指令INCRi执行周期
T1:
ORi=1,LX=1,OPSUB=1
T2:
OF=1,LRi=1
T3:
T4:
⑹指令DECRi执行周期
T1:
ORi=1,LX=1,OPDEC=1
T2:
OF=1,LRi=1
T3:
T4:
⑺指令ANDRi,Rj执行周期
T1:
ORi=1,LX=1
T2:
ORj=1,LY=1,OPAND=1
T3:
OF=1,LRi=1
T4:
⑻指令ORRi,Rj执行周期
T1:
ORi=1,LX=1
T2:
ORj=1,LY=1,OPOR=1
T3:
OF=1,LRi=1
T4:
⑼指令XORRi,Rj执行周期
T1:
ORi=1,LX=1
T2:
ORj=1,LY=1,OPXOR=1
T3:
OF=1,LRi=1
T4:
⑽指令SHLRi执行周期
T1:
ORi=1,LX=1,OPSHL=1
T2:
OF=1,LRi=1
T3:
T4:
⑾指令SHRRi执行周期
T1:
ORi=1,LX=1,OPSHR=1
T2:
OF=1,LRi=1
T3:
T4:
⑿指令MVRRRi,Rj执行周期
T1:
ORi=1,LRj=1
T2:
T3:
T4:
⒀指令JROFFSET执行周期
T1:
OPC=1,LX=1
T2:
OOFFSET=1,LY=1,OPADD=1
T3:
OF=1,LPC=1
T4:
⒁指令JRCOFFSET执行周期
T1:
OPC=1,LX=1
T2:
OOFFSET=1,LY=1,OPADD=1
T3:
OF=1,LPC=1
T4:
⒂指令JRNCOFFSET执行周期
T1:
OPC=1,LX=1
T2:
OOFFSET=1,LY=1,OPADD=1
T3:
OF=1,LPC=1
T4:
⒃指令JRZOFFSET执行周期
T1:
OPC=1,LX=1
T2:
OOFFSET=1,LY=1,OPADD=1
T3:
OF=1,LPC=1
T4:
⒄指令JRNZOFFSET执行周期
T1:
OPC=1,LX=1
T2:
OOFFSET=1,LY=1,OPADD=1
T3:
OF=1,LPC=1
T4:
⒅指令ADCRi,Rj执行周期
T1:
ORi=1,LX=1
T2:
ORj=1,LY=1,OPADC=1
T3:
OF=1,LRi=1
T4:
⒆指令SBBRi,Rj执行周期
T1:
ORi=1,LX=1
T2:
ORj=1,LY=1,OPSBB=1
T3:
OF=1,LRi=1
T4:
⒇指令NOTRi执行周期
T1:
ORi=1,LX=1,OPNOT=1
T2:
OF=1,LRi=1
T3:
T4:
(21)指令RCLRi执行周期
T1:
ORi=1,LX=1,OPRCL=1
T2:
OF=1,LRi=1
T3:
T4:
(22)指令RCRRi执行周期
T1:
ORi=1,LX=1,OPRCR=1
T2:
OF=1,LRi=1
T3:
T4:
(23)指令ASRRi执行周期
T1:
ORi=1,LX=1,OPASR=1
T2:
OF=1,LRi=1
T3:
T4:
(24)指令JMPRRj执行周期
T1:
ORj=1,LPC=1
T2:
T3:
T4:
(25)指令STC执行周期
T1:
OFLAG=1,LX=1,OPSTC=1
T2:
OF=1,LFLAG=1
T3:
T4:
(26)指令CLC执行周期
T1:
OFLAG=1,LX=1,OPCLC=1
T2:
OF=1,LFLAG=1
T3:
T4:
6.2微操作节拍安排表
根据表可列出每个微操作命令的初始逻辑表达式,经化简,整理便可获得能用现成电路实现微操作命令逻辑表达式。
例如,跟据表可写出M(MAR)→MDR微命令的逻辑表达式:
M(MAR)→MDR
=FE*T1+IND*T1(ADD+STA+LDA+JMP+BAN)+EX*T1(ADD+LDA)
=T1{FE+IND*(ADD+STA+LDA+JMP+BAN)+EX*(ADD+LDA)}
式中ADD,STA,LDA,JMP,BAN均来自操作码译码器的输出
4心得体会
在这次课程设计之前,先重新复习了一下课本的理论原理,又上网把流程稍微了解了一下,以及结合前几次实验,基本明白了设计的基本原理。
但还是存在了一些疑问和困惑,最后通过和同学交流讨论,并动手实践才解决了这些问题,通过排这次实验学会了很多计算机组成原理的方面实践中解决问题的知识。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理 中央处理器 CPU 模型 设计 课程设计