复杂模型机课程设计报告正文.docx

上传人:b****7 文档编号:9508352 上传时间:2023-02-05 格式:DOCX 页数:36 大小:504.78KB
下载 相关 举报
复杂模型机课程设计报告正文.docx_第1页
第1页 / 共36页
复杂模型机课程设计报告正文.docx_第2页
第2页 / 共36页
复杂模型机课程设计报告正文.docx_第3页
第3页 / 共36页
复杂模型机课程设计报告正文.docx_第4页
第4页 / 共36页
复杂模型机课程设计报告正文.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

复杂模型机课程设计报告正文.docx

《复杂模型机课程设计报告正文.docx》由会员分享,可在线阅读,更多相关《复杂模型机课程设计报告正文.docx(36页珍藏版)》请在冰豆网上搜索。

复杂模型机课程设计报告正文.docx

复杂模型机课程设计报告正文

一、模型机结构图

图1模型机结构框图

图1中运算器ALU由U7—U10四片74LS181构成,暂存器1由U3、U4两片74LS273构成,暂存器2由U5、U6两片74LS273构成。

微控器部分控存由U13—U15三片2816构成。

除此之外,CPU的其它部分都由EP1K10集成(其原理见系统介绍部分)。

存储器部分由两片6116构成16位存储器,地址总线只有低八位有效,因而其存储空间为00H—FFH。

输出设备由底板上的四个LED数码管及其译码、驱动电路构成,当D-G和W/R均为低电平时将数据总线的数据送入数码管显示。

在开关方式下,输入设备由16位电平开关及两个三态传输芯片74LS244构成,当DIJ-G为低电平时将16位开关状态送上数据总线。

在键盘方式或联机方式下,数据可由键盘或串口输入,然后由监控程序直接送上数据总线,因而外加的数据输入电路可以不用。

注:

本系统的数据总线为16位,指令、地址和程序计数器均为8位。

当数据总线上的数据打入指令寄存器、地址寄存器和程序计数器时,只有低8位有效。

二、工作原理

1.数据格式

本实验计算机采用定点补码表示法表示数据,字长为16位,其格式如下:

15

1413……0

符号

尾数

 

其中第16位为符号位,数值表示范围是:

-32768≤X≤32767。

2.指令格式

(1)算术逻辑指令

设计9条单字长算术逻辑指令,寻址方式采用寄存器直接寻址。

其格式如下:

7654

32

10

OP-CODE

rs

rd

 

其中OP-CODE为操作码,rs为源寄存器,rd为目的寄存器,并规定:

OP-CODE

0111

1000

1001

1010

1011

1100

1101

1110

1111

指令

CLR

MOV

ADD

SUB

INC

AND

NOT

ROR

ROL

rs或rd

选定寄存器

00

Ax

01

Bx

10

Cx

9条算术逻辑指令的名称、功能和具体格式见表1。

(2)存储器访问及转移指令

存储器的访问有两种,即存数和取数。

它们都使用助记符MOV,但其操作码不同。

转移指令只有一种,即无条件转移(JMP)。

指令格式如下:

76

54

32

10

00

M

OP-CODE

rd

D

其中OP-CODE为操作码,rd为寄存器。

M为寻址模式,D随M的不同其定义也不相同,如下表所示:

OP-CODE

00

01

10

指令说明

写存储器

读存储器

转移指令

寻址模式M

有效地址E

D定义

说明

00

E=(PC)+1

立即数

立即寻址

10

E=D

直接地址

直接寻址

11

E=100H+D

直接地址

扩展直接寻址

注:

扩展直接寻址用于面包板上扩展的存储器的寻址。

(3)I/O指令

输入(IN)和输出(OUT)指令采用单字节指令,其格式如下:

7654

32

10

OP-CODE

addr

rd

 

其中,当OP-CODE=0100且addr=10时,从“数据输入电路”中的开关组输入数据;当OP-CODE=0100且addr=01时,将数据送到“输出显示电路”中的数码管显示。

3.指令系统

有14条基本指令,其中算术逻辑指令8条,访问内存指令和程序控制指令4条。

输入输出指令2条。

表1列出了各条指令的格式、汇编符号和指令功能。

 

表1指令格式

汇编符号

指令的格式

功能

MOVrd,rs

1000rsrd

rs→rd

ADDrd,rs

1001rs rd

rs+rd→rd

SUBrd,rs

1010rsrd

rd-rs→rd

INCrd

1011rdrd

rd+1→rd

ANDrd,rs

1100rsrd

rs∧rd→rd

NOTrd

1101rdrd

/rd→rd

RORrd

1110rdrd

┌──→rd→─┐

└──────┘

ROLrd

1111rdrd

┌──←rd←─┐

└──────┘

MOV[D],rd

001000rd

rd→[D]

D

MOVrd,[D]

001001rd

[D]→rd

D

MOVrd,D

000001rd

D→rd

D

JMPD

0000 10 00

D→PC

D

INrd,KIN

010010rd

KIN→rd

OUTDISP,rd

010001rd

rd→DISP

 

表2:

参考机器指令

汇编符号

功能

十六进制代码

INAX,KIN

KIN——>AX

0048H

INBX,KIN

KIN——>BX

0049H

INCX,KIN

KIN——>CX

004AH

MOVAX,XXXXH

XXXXH——>AX

0004H,XXXXH

MOVBX,XXXXH

XXXXH——>BX

0005H,XXXXH

MOVCX,XXXXH

XXXXH——>CX

0006H,XXXXH

MOVAX,[XXXXH]

[XXXXH]——>AX

0024H,XXXXH

MOVBX,[XXXXH]

[XXXXH]——>BX

0025H,XXXXH

MOVCX,[XXXXH]

[XXXXH]——>CX

0026H,XXXXH

MOV[XXXXH],BX

BX——>[XXXXH]

0021H,XXXXH

MOVBX,AX

AX——>BX

0081H

MOVCX,AX

AX——>CX

0082H

ADDAX,BX

AX+BX——>AX

0094H

ADDBX,AX

AX+BX——>BX

0091H

SUBAX,BX

AX—BX——>AX

00A4H

INCAX

AX+1——>AX

00B0H

ANDAX,BX

AX∧BX——>AX

00C4H

ANDBX,AX

AX∧BX——>BX

00C1H

NOTAX

Not(AX)——>AX

00D0H

JMPXXXXH

XXXXH低8位——>PC

0008H,XXXXH

ROLAX

AX循环左移一位

00F0H

RORAX

AX循环右移一位

00E0H

OUTDISP,CX

CX——>DISP

0046H

注:

KIN表示开关输入单元,DISP表示显示输出单元,[XXXXH]表示存储地址XXXXH中的数据。

机器指令的执行过程如下:

首先将指令在外存储器的地址送上地址总线,然后将该地址上的指令传送至指令寄存器,这就是“取指”过程。

之后必须对操作码进行P1测试,根据指令的译码将后续微地址中的某几位强制置位,使下一条微指令指向相应的微程序首地址,这就是“译码”过程(其原理见图8)。

然后才顺序执行该段微程序,这是真正的指令执行过程。

在所有机器指令的执行过程中,“取指”和“译码”是必不可少的,而且微指令执行的操作也是相同的,这些微指令称为公用微指令,对应于图9中01、02、75地址(8进制)的微指令。

75地址为“译码”微指令,该微指令的操作为P

(1)测试,测试结果出现多路分支。

本实验用指令寄存器的前4位(I7-I4)作为测试条件,出现12路分支,占用12个固定微地址单元。

如I7—I4相同,则还需进行P2测试,以指令寄存器的I3、I2位作为测试条件,以区分不同的指令,如MOV指令和IN、OUT指令。

三、设计的指令系统

1、指令

000049INBXKIN

010021MOV[0001H]BX

020001

030049INBXKIN

040021MOV[0000H]BX

050000

060049INBXKIN

070021MOV[0002H]BX

080002

090049INBXKIN

0A0024MOVAX[0002H]

0B0002

0C00A4SUBAXBX

0D00F0ROLAX

0E0025MOVBX[0000H]

0F0000

1000C4ANDAXBX

110025MOVBX[0001H]

120001

130091ADDBXAX

140021MOV[0001H]BX

150001

160026MOVCX[0001H]

170001

180046OUTDISPCX

190008JMP0009

1A0009

2、流程图

(1)INBXKIN

(2)MOV[0001H]BX

(3)INBXKIN

(4)MOV[0000H]BX

(5)INBXKIN

(6)MOV[0002H]BX

(7)INBXKIN

(8)MOVAX[0002H]

(9)SUBAXBX

(10)ROLAX

(11)MOVBX[0000H]

(12)ANDAXBX

(13)MOVBX[0001H]

(14)ADDBXAX

(15)MOV[0001H]BX

(16)MOVCX[0001H]

(17)OUTDISPCX

(18)JMP0009

1.列出指令助记符,对应的机器指令形式

2.画出指令对应的指令周期流程图

 

四、微指令格式及各字段格式

 

微程序设计的关键技术之一是处理好每条微指令的下地址,以保证程序正确高效地进行。

本系统采用分段编码的指令格式,采用断定方式确定下一条微指令的地址。

每条微指令由24位组成,

其控制位顺序如下:

24

23

22

21

20

19

18

17

16

151413

121110

987

6

5

4

3

2

1

S3

S2

S1

S0

M

Cn

WE

1A

1B

F1

F2

F3

uA5

uA4

uA3

uA2

uA1

uA0

S3S2S1S0MCn为运算器的方式控制,WE为外部器件的读写信号,‘1’表示写,‘0’表示读;1A、1B用于选通外部器件;微指令中的uA5-uA0为6位的后续微地址。

F1、F2、F3三个字段的编码方案如表2:

表2F1、F2、F3编码方案

F1字段

F2字段

F3字段

151413

选择

121110

选择

987

选择

000

LRi

000

RAG

000

P1

001

LOAD

001

ALU-G

001

AR

010

LDR2

010

RCG

010

P3

011

自定义

011

自定义

011

自定义

100

LDR1

100

RBG

100

P2

101

LAR

101

PC-G

101

LPC

110

LDIR

110

299-G

110

P4

111

无操作

111

无操作

111

无操作

五、编写每条指令对应的微程序

000049INBXKIN

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

24000000000111111100010101007F15

27000000011000111111000001018FC1

01000000000101101101000010005B42

010021MOV[0001H]BX

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

22000000000101101101000111005B47

07000000010101111111100101015FE5

45000000000111111100100000007F20

400000001101111001110000010379C1

01000000000101101101000010005B42

020001

030049INBXKIN

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

24000000000111111100010101007F15

27000000011000111111000001018FC1

01000000000101101101000010005B42

040021MOV[0000H]BX

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

22000000000101101101000111005B47

07000000010101111111100101015FE5

45000000000111111100100000007F20

400000001101111001110000010379C1

01000000000101101101000010005B42

050000

060049INBXKIN

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

24000000000111111100010101007F15

27000000011000111111000001018FC1

01000000000101101101000010005B42

070021MOV[0002H]BX

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

22000000000101101101000111005B47

07000000010101111111100101015FE5

45000000000111111100100000007F20

400000001101111001110000010379C1

01000000000101101101000010005B42

080002

090049INBXKIN

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

24000000000111111100010101007F15

27000000011000111111000001018FC1

01000000000101101101000010005B42

0A0024MOVAX[0002H]

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

22000000000101101101000111005B47

07000000010101111111100101015FE5

45000000000111111100100000007F20

41000000010000111111000001010FC1

01000000000101101101000010005B42

0B0002

0C00A4SUBAXBX

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

320000000001000001111011000041EC

540000000000101001111011010029ED

550110000000000011110000016003C1

01000000000101101101000010005B42

0D00F0ROLAX

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

370011000000000001111110013001F9

71000100000111110111111010107DFA

72000000000000110111000001000DC1

01000000000101101101000010005B42

0E0025MOVBX[0000H]

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

22000000000101101101000111005B47

07000000010101111111100101015FE5

45000000000111111100100000007F20

41000000010000111111000001010FC1

01000000000101101101000010005B42

0F0000

1000C4ANDAXBX

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

340000000001000001111100110041F6

630000000000101001111101010029F5

65101110000000001111000001B803C1

01000000000101101101000010005B42

110025MOVBX[0001H]

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

22000000000101101101000111005B47

07000000010101111111100101015FE5

45000000000111111100100000007F20

41000000010000111111000001010FC1

01000000000101101101000010005B42

120001

130091ADDBXAX

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

310000000001000001111010100041EA

520000000000101001111010110029EB

531001010000000011110000019403C1

01000000000101101101000010005B42

140021MOV[0001H]BX

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

22000000000101101101000111005B47

07000000010101111111100101015FE5

45000000000111111100100000007F20

400000001101111001110000010379C1

01000000000101101101000010005B42

150001

160026MOVCX[0001H]

01000000000101101101000010005B42

02000000010110111111111101016FFD

75000000010110111000010000016E10

22000000000101101101000111005

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

当前位置:首页 > 初中教育 > 政史地

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

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