最新计算机组成原理课程设计Word下载.docx
《最新计算机组成原理课程设计Word下载.docx》由会员分享,可在线阅读,更多相关《最新计算机组成原理课程设计Word下载.docx(23页珍藏版)》请在冰豆网上搜索。
指令系统及ALU设计
1.7号,14号,28号,33号指令设计;
2.机器周期产生电路;
3.74LS139译码器。
2.前言(绪论)
加强对计算机组成原理的理解,并将理论和时间结合在一起,在实践中体会设计和学习的乐趣,并进一步了解计算机各个模块的原理。
3.设计主体
【课程设计内容】
1.指令系统设计
第7号指令:
助记符:
ADDA,EM
格式:
操作码和地址码
操作码:
ADD
地址码:
A,EM
功能:
将存储器EM地址的值加入累加器A中
寻址方式:
直接寻址
第14号指令:
SUBA,@R?
SUB
A,@R?
从累加器A中减去间址存储器的值
寄存器间接寻址
第28号指令:
ORA,#II
OR
A,#II
累加器A“或”立即数II
立即数寻址
第33号指令:
MOVR?
A
MOV
R?
A
将A中的值送入R?
中
2.模型机硬件设计:
题目:
机器周期产生电路
设计电路,实现A、B类指令分别有2和4个机器周期。
3.逻辑电路设计:
74LS139译码器。
功能:
实现双二—四译码器
机器周期
A
B
CYACYB
CYA‘CYB’
CYA’CYB’
M0
00
11
00
01
M1
10
M2
M3
【系统设计】
1.模型机逻辑框图
图1
图2
图3
2.指令系统设计
ADDA,EM
指令类型:
算术运算指令
指令格式:
001110
XX
操作码及寻址类型
第14号指令:
SUBA,@R?
001101
XX
操作码及R?
的选择00,01,10,11
第28号指令:
ORA,#II
逻辑运算指令
010111XX
操作码
MOVR?
数据传送指令
001001
操作码及R?
的选择00,01,10,11
3.微操作控制信号
1、XRD:
外部设备读信号,当给出了外设的地址后,输出此信号,从指定外设读数据。
2、EMWR:
程序存储器EM写信号。
3、EMRD:
程序存储器EM读信号。
4、PCOE:
将程序计数器PC的值送到地址总线ABUS上(MAR)。
5、EMEN:
将程序存储器EM与数据总线DBUS接通,由EMWR和EMRD决
是将DBUS数据写到EM中,还是从EM读出数据送到DBUS。
6、IREN:
将程序存储器EM读出的数据打入指令寄存器IR。
7、EINT:
中断返回时清除中断响应和中断请求标志,便于下次中断。
8、ELP:
PC打入允许,与指令寄存器IR3、IR2位结合,控制程序跳转。
9、FSTC:
进位置1,CY=1
10、FCLC:
进位置0,CY=0
11、MAREN:
将地址总线ABUS上的地址打入地址寄存器MAR。
12、MAROE:
将地址寄存器MAR的值送到地址总线ABUS上。
13、OUTEN:
将数据总线DBUS上数据送到输出端口寄存器OUT里。
14、STEN:
将数据总线DBUS上数据存入堆栈寄存器ST中。
15、RRD:
读寄存器组R0-R3,寄存器R?
的选择由指令的最低两位决定。
16、RWR:
写寄存器组R0-R3,寄存器R?
17、CN:
决定运算器是否带进位移位,CN=1带进位,CN=0不带进位。
18、FEN:
将标志位存入ALU内部的标志寄存器。
19、WEN:
将数据总线DBUS的值打入工作寄存器W中。
20、AEN:
将数据总线DBUS的值打入累加器A中。
21-23:
X2~X0:
X2、X1、X0三位组合来译码选择将数据送到DBUS上的寄存器。
24-26:
S2~S0:
S2、S1、S0三位组合决定ALU做何种运算。
4.指令执行流程
编号
助记符
功能
机器码
周期总数CT
节拍数
微操作
控制信号
涉及的硬件
1
_FATCH_
取指令
000000XX
T2
PC→MAR
PCOE,MAREN
PC,MAR,EM,W,IR
T1
EM→W
EMEN,EMRD,WEN
T0
W→IR
IREN
PC+1
7
ADDA,
EM
001110XX
111
T7
POCE,MAREN
PC,MAR,EM,W,A,ALU,F
T6
PC→PC+1
T5
W→MAR
WEN,WAREN
T4
EMEN,WEN
T3
A+W→DBUS→A
S2~S0,AEN,FEN
14
SUBA,
@R
001101XX
101
→DBUS→MAR
RRD,MAREN,
X2~X0
R,DBUS,MAR,EM,A,W,ALU,F
ALU(A-W)→DBUS
→A
28
ORA,#II
011011XX
PCOEMAREN
PC,MAR,EM,W,A,
ALU,F
EM→W,
EMEN,EMRDWEN
WORA→DBUS
→A
S2~S0,AEN
33
100000XX
011
A→DBUS→R?
AEN
A,DBUS,A
流程图如下:
图47号指令流程图
图5第14号指令
图628号指令
图7第33号指令
指令周期安排:
图8分3号指令
【系统实现】
1.模型机实现
1)逻辑电路的图形符号表示、功能
图9
(2)系统实现
libraryIEEE;
useIEEE.STD_LOGIC_1164.ALL;
--Uncommentthefollowinglibrarydeclarationifusing
--arithmeticfunctionswithSignedorUnsignedvalues
--useIEEE.NUMERIC_STD.ALL;
--Uncommentthefollowinglibrarydeclarationifinstantiating
--anyXilinxprimitivesinthiscode.
--libraryUNISIM;
--useUNISIM.VComponents.all;
entitycycleis
Port(A:
inSTD_LOGIC;
B:
CYA:
CYB:
CLK:
cya1:
OUTSTD_LOGIC;
cyb1:
OUTSTD_LOGIC);
endcycle;
architectureBehavioralofcycleis
begin
PROCESS(CLK)IS
BEGIN
IF(CLK'
EVENTANDCLK='
1'
)THEN
IF(A='
)THEN
IF(CYA='
0'
ANDCYB='
)THEN
cya1<
='
;
cyb1<
ENDIF;
IF(CYA='
ENDIF;
ENDIF;
IF(B='
ENDIF;
ENDPROCESS;
endBehavioral;
1、逻辑电路设计
(1)逻辑电路的图形符号表示、功能
图10
useIEEE.STD_LOGIC_ARITH.ALL;
useIEEE.STD_LOGIC_UNSIGNED.ALL;
----Uncommentthefollowinglibrarydeclarationifinstantiating
----anyXilinxprimitivesinthiscode.
entityyjyis
inSTD_LOGIC_VECTOR(1downto0);
Y1:
outSTD_LOGIC_VECTOR(3downto0);
Y2:
outSTD_LOGIC_VECTOR(3downto0));
endyjy;
architectureBehavi