计算机体系结构实验设计文档模板.docx

上传人:b****7 文档编号:10807264 上传时间:2023-02-23 格式:DOCX 页数:18 大小:42.94KB
下载 相关 举报
计算机体系结构实验设计文档模板.docx_第1页
第1页 / 共18页
计算机体系结构实验设计文档模板.docx_第2页
第2页 / 共18页
计算机体系结构实验设计文档模板.docx_第3页
第3页 / 共18页
计算机体系结构实验设计文档模板.docx_第4页
第4页 / 共18页
计算机体系结构实验设计文档模板.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

计算机体系结构实验设计文档模板.docx

《计算机体系结构实验设计文档模板.docx》由会员分享,可在线阅读,更多相关《计算机体系结构实验设计文档模板.docx(18页珍藏版)》请在冰豆网上搜索。

计算机体系结构实验设计文档模板.docx

计算机体系结构实验设计文档模板

表1指令系统定义

编号

汇编码

操作

指令码

1

MOVA,Ri

(Ri)→A

00000iii

2

MOVRi,A

(A)→Ri

00001iii

3

MOVA,@Ri

(7EH[Ri])→A

00010iii

4

MOV@Ri,A

(A)→7EH[Ri]

00011iii

5

MOVA,#data8

Data8→A

00100000dddddddd

6

MOVRi,#data8

Data8→Ri

00101iiidddddddd

7

ADDA,Ri

(A)+(Ri)→A

00110iii

8

SUBA,Ri

(A)–(Ri)→A

00111iii

9

SUBA,addr

(A)-(addr)→A

01000000addrhaddrl

10

LDAaddr

(addr)→A

01001000addrhaddrl

11

STAaddr

(A)→addr

01010000addrhaddrl

12

JCaddr

ifCY=1thenaddr→PCelse(PC)+3→PC

01011000addrhaddrl

13

JMPaddr

addr→PC

01100000addrhaddrl

14

JNKBaddr

ifKRIX=0thenaddr→PCelse(PC)+3→PC

01101000addrhaddrl

15

JNPBaddr

ifPRIX=0thenaddr→PCelse(PC)+3→PC

01110000addrhaddrl

16

JNZadde

IfZ=0thenaddr→PCelse(PC)+3→PC

01111000addrhaddrl

17

RSP

7fffH→SP

10000000

18

PUSHA

A→堆栈,SP-1

10001000

19

POPA

SP+1,堆栈→A

10010000

20

CMPA,#data8

(A)-Data8,按结果置C和Z

10011000dddddddd

21

RRCA

(A)右移一位

10100000

22

CPL@Ri

取反(7EH(Ri))存储单元

10101iii

23

CALLaddr

保存PC进栈,按addr转到子程序

10110000addrhaddrl

24

RET

PC退栈,子程序返回

10111000

注:

对寄存器间接寻址指令,如MOV@Ri,A,由于Ri为8位,而存储器地址为16位,故取Ri为地址低8位,高8位固定为7EH。

图1CPU结构框图

图1微程序控制计算机CPU框图

表2指令流程定义

编号

汇编码

指令流程

0

取指令(所有指令的最后一步)

T0:

(PC)MC=00>AB;(M)CRDX=0>DBGI=0>IR;

(PC)+1PINC=0>PC;(A)GC=0>ACT;MPLD=0;

1

MOVA,Ri

T1:

(Ri)MA=0S=011>ALUMB=00>DBGA=0>A;

2

MOVRi,A

T1:

(ACT)S=010>ALUMB=00>DBWRE=0>Ri;

3

MOVA,@Ri

T1:

(Ri)MA=1S=011>ALUMB=00>DBGA2=0>ADRL;

7EHAHS=0>ADRH;

T2:

(ADR)MC=01>AB;(M)CRDX=0>DBGA=0>A;

4

MOV@Ri,A

T1:

(Ri)MA=1S=011>ALUMB=00>DBGA2=0>ADRL;

7EHAHS=0>ADRH;

T2:

(ADR)MC=01>AB;(ACT)S=010>ALUMB=00>DBCWRX=0>M;

5

MOVA,#data

T1:

(PC)MC=00>AB;(M)CRDX=0>DBGA=0>A;(PC)+1PINC=0>PC;

6

MOVRi,#data

T1:

(PC)MC=00>AB;(M)CRDX=0>DBWRE=0>Ri;(PC)+1PINC=0>PC;

7

ADDA,Ri

T1:

(ACT)+(Ri)MA=1S=000>ALUMB=00>DBGA=0>A;COUTCP=0ME=0>CY;

8

SUBA,Ri

T1:

(ACT)-(Ri)MA=1S=001>ALUMB=00>DBGA=0>A;COUTCP=0ME=0>CY;

9

SUBA,addr

T1:

(PC)MC=00>AB;(M)CRDX=0>DBGA1=0>ADRH;(PC)+1PINC=0>PC;

T2:

(PC)MC=00>AB;(M)CRDX=0>DBGA2=0>ADRL;(PC)+1PINC=0>PC;

T3:

(ADR)MC=01>AB;(M)CRDX=0>DBGT=0>TMP;

T4:

(PC)MC=00>AB;(ACT)-(TEMP)MA=1S=001>ALUMB=00>DBGA=0>A;COUTCP=0ME=0>CY;

10

LDAaddr

T1:

(PC)MC=00>AB;(M)CRDX=0>DBGA1=0>ADRH;(PC)+1PINC=0>PC;

T2:

(PC)MC=00>AB;(M)CRDX=0>DBGA2=0>ADRL;(PC)+1PINC=0>PC;

T3:

(ADR)MC=01>AB;(M)CRDX=0>DBGA=0>A;

11

STAaddr

T1:

(PC)MC=00>AB;(M)CRDX=0>DBGA1=0>ADRH;(PC)+1PINC=0>PC;

T2:

(PC)MC=00>AB;(M)CRDX=0>DBGA2=0>ADRL;(PC)+1PINC=0>PC;

T3:

(ADR)MC=01>AB;(ACT)S=010>ALUMB=00>DBCWRX=0>M;

12

JCaddr

T1:

(PC)MC=00>AB;(M)CRDX=0>DBGA1=0>ADRH;(PC)+1PINC=0>PC;

T2:

(PC)MC=00>AB;(M)CRDX=0>DBGA2=0>ADRL;(PC)+1PINC=0>PC;

T3:

(ADR)MC=01>ABPLD2,1,0=001>PC;

13

JMPaddr

T1:

(PC)MC=00>AB;(M)CRDX=0>DBGA1=0>ADRH;(PC)+1PINC=0>PC;

T2:

(PC)MC=00>AB;(M)CRDX=0>DBGA2=0>ADRL;(PC)+1PINC=0>PC;

T3:

(ADR)MC=01>ABPLD2,1,0=010>PC;

14

JNKBaddr

T1:

(PC)MC=00>AB;(M)CRDX=0>DBGA1=0>ADRH;(PC)+1PINC=0>PC;

T2:

(PC)MC=00>AB;(M)CRDX=0>DBGA2=0>ADRL;(PC)+1PINC=0>PC;

T3:

(ADR)MC=01>ABPLD2,1,0=011>PC;

15

JNPBaddr

T1:

(PC)MC=00>AB;(M)CRDX=0>DBGA1=0>ADRH;(PC)+1PINC=0>PC;

T2:

(PC)MC=00>AB;(M)CRDX=0>DBGA2=0>ADRL;(PC)+1PINC=0>PC;

T3:

(ADR)MC=01>ABPLD2,1,0=100>PC;

16

JNZaddr

T1:

(PC)MC=00>AB;(M)CRDX=0>DBGA1=0>ADRH;(PC)+1PINC=0>PC;

T2:

(PC)MC=00>AB;(M)CRDX=0>DBGA2=0>ADRL;(PC)+1PINC=0>PC;

T3:

(ADR)MC=01>ABPLD2,1,0=010>PC;

17

RSP

T1:

7FFFHSSP=11>SP;

18

PUSHA

T1:

(SP)MC=10>AB;(ACT)S=010>ALUMB=00>DBCWRX=0>M;(SP)-1SSP=01>SP;

19

POPA

T1:

(PC)MC=00>AB;(SP)+1SSP=10>SP;

T2:

(SP)MC=10>AB;(M)CRDX=0>DBGA=0>A

20

CMPA,#data

T1:

(PC)MC=00>AB;(M)CRDX=0>DBGT=0>TEMP;(PC)+1PINC=0>PC;

T2:

(PC)MC=00>AB;A-TEMPCP=0,ZP=0>置位

21

RRCA

T1:

A与CY循环右移

22

CPL@Ri

T1:

T1:

(Ri)MA=1S=011>ALUMB=00>DBGA2=0>ADRL;

7EHAHS=0>ADRH;

T2:

(ADR)MC=01>AB;(M)CRDX=0>DBGT=0>TMP;T3:

(ADR)MC=01>AB;/(TMP)S=100>ALUMB=00>DBCWRX=0>M;

23

CALLaddr

T1:

(PC)MC=00>AB;(M)CRDX=0>DBGA1=0>ADRH;(PC)+1PINC=0>PC;

T2:

(PC)MC=00>AB;(M)CRDX=0>DBGA2=0>ADRL;(PC)+1PINC=0>PC;

T3:

(SP)MC=10>AB;(PCH)MB=01>DBCWRX=0>M;(SP)-1SSP=01>SP;

T4:

(SP)MC=10>AB;(PCL)MB=10>DBCWRX=0>M;(SP)-1SSP=01>SP;

T5:

(ADR)MC=01>ABPLD2,1,0=010>PC;

24

RET

T1:

(SP)+1SSP=10>SP;

T2:

(SP)MC=11>AB;(M)CRDX=0>DBGA2=0>ADRL;(SP)+1SSP=10>SP;

T3:

(SP)MC=11>AB;(M)CRDX=0>DBGA1=0>ADRH;

T4:

(ADR)MC=01>ABPLD2,1,0=010>PC;

注1:

除箭头上标注的信号,其它信号皆为无效状态。

注2:

MA、MB、MC等分别为MXA、MXB、MXC的缩写。

表3微操作信号表

部件

信号

功能

有效位

累加器A

GA

RRC

A功能

GA

累加器A接数允许

禁止(无操作)

移位

0

1

0

暂存器TMP

GT

TMP接数允许

0

暂存器ACT

GC

暂存器接数允许

0

寄存器Ri

WRE

寄存器写入允许

0

MUXA(FB的多路选择)

MXA

ALU的第二个操作数多路开关选择

0:

寄存器内容送ALU

1:

暂存器TMP送ALU

算术逻辑运算单元ALU

S2,S1,S0

ALU功能

S2S1S0

F=A+B

F=A-B

F=A

F=B

F=~B

备用

备用

备用

000

001

010

011

100

101

110

111

CY

MXE

进位位CY接数COUT

CY接数移位输入

0

1

CP

CY接数允许

0

指令寄存器IR

GI

指令寄存器IR接数允许

0

地址寄存器ADR

GA1

高位地址寄存器ADRH接数允许

0

GA2

低位地址寄存器ADRL接数允许

0

MUXC(地址AB多路开关选择)

MXC1,0

MUXC功能

MC1MC0

PC送至地址总线AB

ADR送至地址总线AB

SP送至地址总线AB

备用

00

01

10

11

程序计数器PC

PINC

PC加1信号

0

PRST

PC清零信号

0

MUXD(控制PC接数的多路选择)

PLD2,1,0

PC接数控制

PLD2PLD1PLD0

禁止

CY=1转移

ZY=0

KB=0

PB=0

必转

备用

000

001

010

011

100

101

其余

微程序计数器MPC

MPLD

MPC接数允许

0

存储器M

CRDX

读存储器

0

CWRX

写存储器

0

堆栈SP

SSP

SP减一信号

01

SP增一信号

10

SP初始化为7FFFH

11

MUXB(数据总线DB多路开关选择)

MXB1,0

MUXB功能

MXDB1MXDB2

ALU结果送至数据总线DB

PCH送至数据总线DB

PCL送至数据总线DB

三态

00

01

10

11

注意:

✧图1中的寄存器选择信号(RC、RB、RA)不属于微指令编码范围,应直接来自指令码(I2、I1、I0)。

表4微指令控制微操作对应表

微指令的

控制位

微操作

有效状态

微操作

功能描述

0

WRE

0

1

GA

0

2

RRC

0

3

GC

0

4

GT

0

5

GI

0

6

GA1

0

7

AHS

0

8

GA2

0

9

OB

0

10

MXB0

X

11

MXB1

X

12

ZP

0

13

CP

0

14

MXE

0

15

S0

X

16

S1

X

17

S2

X

18

MXA

0

19

PLD0

X

20

PLD1

X

21

PLD2

X

22

PINC

0

23

SSP0

X

24

SSP1

X

25

MXC0

X

26

MXC1

X

27

MPLD

0

28

CRDX

0

29

CWRX

0

30

31

指令助记符

微指令

29

28

27

26

25

24

23

22

21

20

19

18

17

16

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

信号

CWRX

CRDX

MPLD

MXC1

MXC0

SSP1

SSP0

PINC

PLD2

PLD1

PLD0

MXA

S2

S1

S0

MXE

CP

ZP

MXB1

MXB0

OB

GA2

AHS

GA1

GI

GT

GC

RRC

GA

WRE

有效状态

0

0

0

X

X

0

0

0

X

X

X

0

X

X

X

0

0

0

X

X

0

X

0

X

0

0

0

0

0

0

无效状态

1

1

1

X

X

1

1

1

X

X

X

1

X

X

X

1

1

1

X

X

1

X

1

X

1

1

1

1

1

1

取指令

000

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

1

0

1

0

1

1

1

001-6

MOVA,Ri

007

1

1

1

0

0

0

0

1

0

0

0

0

0

1

1

0

1

1

0

0

0

1

1

1

1

1

1

1

0

1

008

取指令

MOVRi,A

00F

1

1

1

0

0

0

0

1

0

0

0

0

0

1

0

0

1

1

0

0

0

1

1

1

1

1

1

1

1

0

010

取指令

MOVA,@Ri

017

1

1

1

0

0

0

0

1

0

0

0

0

0

1

1

0

1

1

0

0

0

0

0

1

1

1

1

1

1

1

018

1

0

1

0

1

0

0

1

0

0

0

0

0

1

1

0

1

1

1

1

1

1

1

1

1

1

1

1

0

1

019

取指令

MOV@Ri,A

01F

1

1

1

0

0

0

0

1

0

0

0

0

0

1

1

0

1

1

0

0

0

0

0

1

1

1

1

1

1

1

020

0

1

1

0

1

0

0

1

0

0

0

0

0

1

0

0

1

1

0

0

0

1

1

1

1

1

1

1

1

1

021

取指令

ADDA,Ri

027

1

1

1

0

0

0

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

0

1

028

取指令

SUBA,Ri

02F

1

1

1

0

0

0

0

1

0

0

0

0

0

0

1

0

0

0

0

0

0

1

1

1

1

1

1

1

0

1

030

取指令

MOVA,#data

037

1

0

1

0

0

0

0

0

0

0

0

0

0

1

1

0

1

1

1

1

1

1

1

1

1

1

1

1

0

1

038

取指令

MOVRi,#datta

03F

1

0

1

0

0

0

0

0

0

0

0

0

0

1

1

0

1

1

1

1

1

1

1

1

1

1

1

1

1

0

040

取指令

LDAaddr

047

1

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

0

1

1

1

1

1

1

048

1

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

1

0

1

1

1

1

1

1

1

1

049

1

0

1

0

1

0

0

1

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

1

1

1

1

1

0

1

04A

取指令

指令助记符

微指令

29

28

27

26

25

24

23

22

21

20

19

18

17

16

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

信号

CWRX

CRDX

MPLD

MXC1

MXC0

SSP1

SSP0

PINC

PLD2

PLD1

PLD0

MXA

S2

S1

S0

MXE

CP

ZP

MXB1

MXB0

OB

GA2

AHS

GA1

GI

GT

GC

RRC

GA

WRE

有效状态

0

0

0

X

X

X

X

0

X

X

X

0

X

X

X

0

0

0

X

X

0

0

0

0

0

0

0

0

0

0

无效状态

1

1

1

X

X

X

X

1

X

X

X

1

X

X

X

1

1

1

X

X

1

1

1

1

1

1

1

1

1

1

STAaddr

04F

1

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

0

1

1

1

1

1

1

050

1

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

1

0

1

1

1

1

1

1

1

1

051

0

1

1

0

1

0

0

1

0

0

0

0

0

1

0

0

1

1

0

0

0

1

1

1

1

1

1

1

1

1

052

取指令

JCaddr

057

1

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

0

1

1

1

1

1

1

058

1

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

1

0

1

1

1

1

1

1

1

1

059

1

1

1

0

1

0

0

1

0

0

1

0

0

0

0

0

1

1

1

1

1

1

1

1

1

1

1

1

1

1

05A

取指令

JMPaddr

05F

1

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

0

1

1

1

1

1

1

060

1

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

1

0

1

1

1

1

1

1

1

1

061

1

1

1

0

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 财会金融考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1