计算机组成原理课设A6
目录
1、课程设计选题
2、系统的总体设计
3微程序控制器设计
4指令系统设计
、时序产生器.
6、微程序流程图设计
7操作控制器单元设计……
7.1设计微指令格式和微指令代码表
7.2设计地址转移逻辑电路
8模型机单元电路设计
8.1 ALU
45667788899
8.2 PSW
8.3MUX41
8.4MUx42
10
8.5LS273
8.6 DECODER
8.7PC.…
.12
8. 8 ROM
8.9|R
8.10 CONVERT
13
8.11MUX32
13
8.12FEN2
14
8.13 RAM
8.14MU×31
15
8.15 COUNTER
8.16CROM.…
16
8.17顶层图
20
9汇编语言设计
21
9.1程序功能.
21
9.2编程算法.
21
9.3汇编语言与机器语言
21
10功能仿真测试
24
11课设小结
附录:各单元ⅥHDL代码
27
1、课程设计选题
设讣一台嵌入式CISC模型计算机
采用定长C門周期、联合控制方式,并运行能完成一定功能的机器语言源程序进行验证,机器
言源程序功能如下:
输入包含10个整数(无符号数)的数组M,输出中位数
2、系统的总体设计
2.Ⅰ嵌入式CISC模型机的数据通路框图
指令忌⊥U
据
1490
CR1
16
STO Ro
MP5口
多吊开
多路开关
地址总毙
也址寄存
程序计数器
LTAR
LE C
F2
R
作控制情号
操作控籼器日译码器
工R
PC〕R
通工0口
I五工
日状态字存器
3微程序控制器设计
指令寄存器IR
状态条件
操作码
地址转移
微地址玄存器
逻辑
地址译码
做合令信号
控制存储器
微命令寄存器P字段
採作控制字段
4指令系统设计
此模型的系统共设计了共有10条指令,分别为:MOV、IN、STO、INC、JB、ADD、LAD、CMP
OUT、DEC
具休指令格式如下:
指令
指令格式
助记符
15--
功能
98
0
12
10
MOV
0001
ⅩX
Rd
m
立即数im→Rd
Rd, im
将输入数据存到Rd寄存
0010
Rd
XXXXXXXX
Rd
器
STO
0011
Rd
(Rs)→(Rd),将Rs的内容
XXXXXXXX
Rs(Rd)
存到Rd地址中
INC
(Rd)+1→Rd,锁存标志位
0100
XX
Rd
XXXXXXXX
Rd
SF和ZF
JB
0101
若为负数且不为0,则
XX
XX
addr
addr
addr→PC
0110
S
Rd
XXXXXXX
Rd+Rs→Rd
Rd. Rs
LAD
(Rs))→(Rd),将Rs地
(Rs),Rd
0l1
S
Rd
XXXXXXXX
址的内容读到寄存器Rd
CMP
1000
(RD)-(RS),锁存SF和
RD
RS. RD
CF
OUT
1001
S
XⅩ
XXXXXXX
(Rs)→输出设备
Rs
DEC
(Rd)-1→Rd,锁存标志位
1010
Rd
XXⅩⅩXXⅩ
Rd
SF和ZF
2、对Rs和Rd的规定
Rs或Rd
选定的寄存器
00
RO
01
RI
10
R2
R3
3、模型机规定数搪的表示采用定点整数原码表示,单字长为8位,其格式如下
76
43210
尾数
5、时序产生器
T1、T2、T3、T4与CLR、CLK之间的关系图如下:
CLR
CLK
T1
T2
T3
TA
一个CP周期—
6、微程序流程图设计
00
PC->ABUSOD
RD ROM
BUS-≥R
00
P1)
MOV
STO
ADD
CMP
OUT
DEC
01
02
03
04
06
07
08
09
R5->X
IR(A)->Rd SW->Rd Rd->AR
A
X+Y>Rd
Rd->X
Rs-2LED
Y+1->Rd
BUS
ZE
VOC
X-Y
Y-1->Rd
P12)
RD EOM
C
F
CF-1
DEIS->RD
日ZF=0
IR(A)->PC
7操作控制器单元设计
7.1设计微指令格式和微指令代码表
CISC模型机系统使用的微指令采用全水平型微指令,字长为26位,其中微命令字段为18位,
P字段为2位,后继微地址为6位,其格式如下:
LDPC LDAR LDIR LDRi LDSW Rs_B S2 51 SO ALU_ B SW_B LED_B RD_D CS_ D RAM B CS_I ADDR B P1 F:
u- uAC
操作控制字段
顺序控制字段
由微指令格式和微程序流程图编写的微指令代码表如下表所示。在微指令代码表中微命令字段
从左至右代表的微命令信号依次为:LOAD、LDPC、LDAR、LDIR、LDRi、 LDPSW、RsB、S2、S1、S0、
ALUB、SWB、LEDB、RDD、CSD、RAMB、CSI、ADRB。
微
微命令宇段
P1 P2 kA5-u AO
地
址
LOAD LDPC LDAR LDIR-DRi LDPSW Rs_B S2 S1 So ALU B SW_B LED_ 3 RDD CS D RAM B CS_I ADDE B
001101001000111111011000000
0110001010001111111000000000
021000101000101111110000000
031010001
0011111110000000B
0410001110
00|111111100000000
051000001000011
000000
06|100011110001111111001000
0710100000001111111100001100
081000011001111111110000000c0
091000000
0000000
0A1000111011011111110000000
0B|1000000000111001110000000
0C|1
00010100011110011000000
1001
0010001|11111|10001000
7.2设计地址转移逻辑电路
地址转移逻辑电路是根据微程序流程图中的菱形框部分及多个分支微地址,利用微地址寄存器
的异步置“1”端,实现微地址的多路转移。由于是采用逻辑电路来实现的,故称之为地址转移逻辑
电路。在微指令流程图中,进行P(1)(高电平冇效)测试吋,根据指令的操作码Is~I1强制修改
后继微地址的低四位;进行P(2)(高电平有效)测试时,根据符号标志位SF进行两路分支,并且
都在T4内形成后继微指令的微地址。
由于微地址寄存器中的触发器异步置“1”端低电平有效,与A~μA0对应的异步置“1”控制
信号SEA4~SF0的逻辑表达式为:(μA5的异步置“1”端SE5实际未使用)
SE5=1
SE4=(CF·ZF)·P(2)
SE3
15
SE2=14·P(1)·74
SE1=l13·P(1)·T4
SE0=l12·P(1)·T4
8模型机单元电路设计
8.1 ALU
算术逻辑运算单元可执行满足题目要求的5种运算∶即比较、加1、减1、加法,同时修改相应的标
志位,锁存标志位的状态依赖于程序状态字PSW的时钟控制信号 LDPSW。ALU的6种功能受S2、S1、
S0的控制,当S2S1S=“110"时,实现的是将Y通过AL传送到数据总线。A凵U的功能如表所示
SO
功能
0
0
X+Y,修改CF、ZF
0
0
Y-X,修改CF、ZF
0
0
Y+1,修改CF、Z
0
Y-1,修改CF、ZF
Y
ALU单元图:
ALU
X了·
Y[『··] COUT7--
92
⊥
8.2 PSW
LDPSW上升沿有效,PSW单元图:
s
LDPs凵cF
cF⊥工NzF
ZF_工N
8.3MUX41
4选1数据选择器单元№UⅩ4_1在数据输入控制信号的控制下(源寄存器编码1、Ⅵ10,选择4个
通用寄存器(R0~R3)中的某一个寄存器,具体功能如下
输入
输出
LI1
I10
K[7..0]
RO7.0
0
R17.0
R2[7.0]
R3[7.0
MUX41单元图
ruX耳1
尺【7■@了
RE【7a■61Xa
尺日[7--9了
工1
工⊥
8. 4 MUX4 2
4选1数据选择器单元MUXⅩ4_1在数据输入控制信号的控制下(源寄存器编码I1、10),选择4
个通用寄存器(R0~R3)中的某一个寄存器,具体功能如下
输入
输出
19
I8
X[7..0]
0
0
RO[7.0]
0
R17.O]
R2[7.0
R3[7.0]
MUX41单元图
rUx4已
R②[7,g
尺1[■
R[,西了Y,D
REEF..0I
85LS273
4个通用寄存器(R0~R3)的外部时钟控制信号CLK是由目的寄存器Rd的编码19、18经24译码器
译码后分别和LDR相与后得到的,上升沿有效,功能如表所示
LDRI
1 9
1 8
功能
R0的时钟控制信号有效
R的时钟控制信号有效
R2的时钟控制信号有效
R3的时钟控制信号有效