计算机硬件课程设计报告——拓展接口的复杂模型机设计

从此珍惜你 范文 报告范文
精选回答

计算机硬件课程设计报告——拓展接口的复杂模型机设计本文简介:计算机硬件课程设计报告——拓展接口的复杂模型机设计学院:计算机科学与工程学院专业:计算机科学与技术班级:组员1:组员2:起止时间:目录一、实验目的··············································3二、实验内容························

计算机硬件课程设计报告——拓展接口的复杂模型机设计本文内容:

计算机硬件课程设计报告

——拓展接口的复杂模型机设计

学院:

计算机科学与工程学院

专业:

计算机科学与技术

班级:

组员1:

组员2:

起止时间:

目录

一、实验目的··············································3

二、实验内容··············································3

三、实验思路··············································3

四、实验原理··············································3

五、实验步骤·············································10

六、实验设计·············································11

七、实验心得·············································14

一、实验目的

经过一系列硬件课程的学习及相关实验后,做一个综合的系统性的设计,这在硬件方面是一个提高,进一步培养实践能力。

二、实验内容

搭建一台有拓展接口的8位模型机,指令系统要求有10条以上,其中包括运算类指令、传送类指令、控制转移类指令、输入输出指令、停机指令等。

三、实验思路

1、确定设计目标:确定所设计计算机的功能和用途。

2、确定指令系统:确定数据的表示格式、位数、指令的编码、类型、需要设计哪些指令及使用的寻址方式。

3、确定总体结构与数据通路:总体结构设计包含确定各部件设置以及它们之间的数据通路结构,列出各种信息传送路径以及实现这些传送所需要的微命令。

4、设计指令执行流程:数据通路确定后,就可以设计指令系统中每条指令的执行流程。根据指令的复杂程度。每条指令所需要的机器周期数。对于微程序控制的计算机,根据总线结构,需要考虑哪些微操作可以安排在同一个微指令中。

5、确定微程序地址:根据后续微地址的形成方法,确定每条微程序地址及分支转移地址。

6、根据微指令格式,将微程序流程中的所有微操作进行二进制代码化,写入到控制存储器中的相应单元中。

7、组装、调试:在总装调试前,先按功能模块进行组装和分调,因为只有功能模块工作正常后,才能保证整机的运行正确。

四、实验原理

1、指令系统及指令格式

(1)数据格式8位。

(2)指令格式:

指令系统应包括:算术逻辑运算指令、访存指令、控制转移指令、I/O指令、停机指令。

一般指令格式如下:

OP-CODE(4位)

RS(2位)

RD(2位)

DATA/ADDR(8位)

其中RS、RD可以是R0、R1、R2中任一个,它们的代码分别为00、01、10。DATA为立即数,ADDR为内存地址。

(3)指令系统:

读写端口指令:PIN

PORT,RD

POUT

RS,PORT

访存指令:LOAD

[ADDR],RD

STA

RS,[ADDR]

读取立即数指令:MOV

DATA

RD

算术运算指令:ADD

RS,RD

SUB

RS,RD

逻辑运算指令:XOR

RS,RD

AND

RS,RD

NOT

RD

跳转指令:JMP

ADDR

JZ

ADDR

停机指令:HALT

运行微程序

PC->AR

PC+1

RAM->BUS

BUS->IR

RAM->BUS

BUS->AR

PC->AR

PC+1

RS->BUS

BUS->RAM

RAM->BUS

BUS->AR

PC->AR

PC+1

RAM->BUS

BUS->RD

RAM->BUS

BUS->RD

PC->AR

PC+1

RS->LDDR1

RD->LDDR2

LDDR1-LDDR2->RD

RS->LDDR1

RD->LDDR2

LDDR1+LDDR2->RD

RS->LDDR1

RD->LDDR2

LDDR1异或LDDR2->RD

RS->LDDR1

RD->LDDR2

LDDR1与LDDR2->RD

P(1)

LOAD

STA

MOV

ADD

SUB

XOR

AND

RD->LDDR2

LDDR2取非->RD

RAM->BUS

BUS->PC

PC->AR

PC+1

PC->AR

PC+1

P(3)测试

后续地址20H

30H

读出地址送PC

20H

复位

Y

N

01

01

NOT

JMP

JZ

右边接下图

左边接上图

2、

指令微操作流程

3、微指令格式

微指令为24位2进制编码,其中24位分配及编码方式如下:

(1)第24位至第19位分配方式:

24

23

22

21

20

19

S3

S2

S1

S0

M

Cn

第24位至第19位编码方式方式:

(2)第18位至第16位分配方式:

18

17

16

WE

A9

A8

第18位至第16位编码方式方式:

WE

A9

A8

功能

0

0

0

INPUT

0

0

1

RAM读

1

0

1

RAM写

1

1

0

LED,写接口

0

1

1

0

1

0

写接口

(3)

第15位至第7位分配方式:

151413

121110

987

A

B

C

第15位至第7位编码方式:

A字段:

15

14

13

选择

0

0

0

0

0

1

LDRi

0

1

0

LDDR1

0

1

1

LDDR2

1

0

0

LDIR

1

0

1

LOAD

1

1

0

LDAR

B字段:

12

11

10

选择

0

0

0

0

0

1

RS-B

0

1

0

RD-B

0

1

1

RI-B

1

0

0

299-B

1

0

1

ALU-B

1

1

0

PC-B

C字段:

9

8

7

选择

0

0

0

0

0

1

P(1)

0

1

0

P(2)

0

1

1

P(3)

1

0

0

P(4)

1

0

1

AR

1

1

0

LDPC

(4)第6位至第1位分配方式:

6

5

4

3

2

1

uA5

uA4

uA3

uA2

uA1

uA0

第6位至第1位指示下一条微指令的地址。

(5)299移位控制表:

299-b

s1

s0

m

功能

0

0

0

任意

保持

0

1

0

0

循环右移

0

1

0

1

带进位循环右移

0

0

1

0

循环左移

0

0

1

1

带进位循环左移

任意

1

1

任意

装数

4、微程序地址入口的形成

P(1)是用来译码指令寄存器的I7、I6、I5、I4,用于一般指令,微程序入口址为OP+10H

P(2)是用来译码指令寄存器的I3、I2,用于不同寻址方式指令,入口地址转OP+20H

P(3)是用来译码判断标志位C、Z,用于条件转移指令,条件成立转OP+30H,条件不成立转OP+20H

P(4)是用来译码控制台操作的SWB、SWA,用于手动操作。

5、寄存器地址译码电路

6、微程序装载格式

机器指令格式:$Pxxxx

微指令格式:$Mxxxxxxxx

把它们保存为.TXT文件。

注:1)程序中字母要大写。

2)机器指令地址按顺序,微指令地址可不按顺序。

7、模型机的时序

8、模型机的数据通路

9、模型机组装电路图

10、8255接口简介

(1)8255芯片简介

8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。具有3个通道3种工作方式的可编程并行接口芯片。

其各口功能可由软件选择,使用灵活,通用性强。8255可作为单片机与多种外设连接时的中间接口电路。

8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。同时必须具有与外设连接的接口A、B、C口。由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。

1)

与CPU连接部分

根据定义,8255能并行传送8位数据,所以其数据线为8根D0~D7。由于8255具有3个通道A、B、C,所以只要两根地址线就能寻址A、B、C口及控制寄存器,故地址线为两根A0~A1。此外CPU要对8255进行读、写与片选操作,所以控制线为片选、复位、读、写信号。

2)

与外设接口部分

根据定义,8255有3个通道A、B、C与外设连接,每个通道又有8根线与外设连接,所以8255可以用24根线与外设连接。

3)

控制器

8255将3个通道分为两组,即PA0~PA7与PC4~PC7组成A组,PB0~PB7与PC0~PC3组成B组。如图7.5所示,相应的控制器也分为A组控制器与B组控制器,各组控制器的作用如下:

(1)

A组控制器:控制A口与上C口的输入与输出。

(2)

B组控制器:控制B口与下C口的输入与输出。

(2)

读写端口指令

1)读端口指令格式:PIN

PORT,RD

OP-CODE(4位)

RS(2位)

00

PORT

2)写端口指令格式:POUT

RS,PORT

OP-CODE(4位)

00

RD(2位)

PORT

3)

读写端口指令微操作:

PC->AR

PC+1

RAM->BUS

BUS->AR

读端口数据送入寄存器

PC->AR

PC+1

RAM->BUS

BUS->AR

寄存器数据写入端口数据

(3)8255的编程

8255的初始化编程较简单,只需要一个控制字就把3个端口设置完成。

1)

写入方式控制字。方式控制字决定端口A、B、C的工作方式。

2)

经过初始化编程之后,处理器执行读端口指令和写端口指令,对3个数据端口进行读写就可以实现处理器与外设之间的数据交换。

五、实验步骤

(1)按照给定模型机组装电路图连接电路;

(2)连通实验箱与PC机,打开CMP软件,测试实验箱是否正常;

(3)设计微指令,画出其微操作流程图,并翻译成相应的微指令格式;

(4)设计包含这些微指令的机器指令程序,并翻译成相应机器指令格式;

(5)把设计好微指令和机器指令保存为TXT文件,然后装载入CMP;

(6)打开复杂模型机,然后用单步机器指令运行程序并调试;

(7)检查输出结果是否正确,最后撰写实验报告。

六、实验设计

1、

设计机器指令

在实验设计中,我们定义了12条指令,分别为他们编码,如下表所示:

基本指令

指令代码

PIN

0000

POUT

0001

LOAD

0010

STA

0011

MOV

0100

ADD

0101

SUB

0110

AND

0111

XOR

1000

NOT

1001

JMP

1010

JZ

1011

2、

设计微指令

A

B

C

微操作

00018001

00

000000

011

000

000

000

000001

0101ED82

01

000000

011

110

110

110

000010

PC->AR,PC+1->PC

0200C050

02

000000

001

100

000

001

010000

RAM->BUS,BUS->IR

PIN

1001ED83

10

000000

011

110

110

110

000011

PC->AR,PC+1->PC

0300E004

03

000000

001

110

000

000

000100

RAM->BUS,BUS->AR

04011001

04

000000

010

001

000

000

000001

读端口数据送入寄存器

POUT

1101ED85

11

000000

011

110

110

110

000101

PC->AR,PC+1->PC

0500E006

05

000000

001

110

000

000

000110

RAM->BUS,BUS->AR

06030201

06

000000

110

000

001

000

000001

寄存器写入端口数据

LOAD

1201ED87

12

000000

011

110

110

110

000111

PC->AR,PC+1->PC

0700E008

07

000000

001

110

000

000

001000

RAM->BUS,BUS->AR

08009001

08

000000

001

001

000

000

000001

RAM->BUS,BUS->Ri

STA

1301ED89

13

000000

011

110

110

110

001001

PC->AR,PC+1->PC

0900E00A

09

000000

001

110

000

000

001010

RAM->BUS,BUS->AR

0A028201

0A

000000

101

000

001

000

000001

Ri->BUS,BUS->RAM

MOV

1401ED8B

14

000000

011

110

110

110

001011

PC->AR,PC+1->PC

0B009001

0B

000000

001

001

000

000

000001

RAM->BUS,BUS->Ri

ADD

1501A20C

15

000000

011

010

001

000

001100

Ri->LDDR1

0C01B40D

0C

000000

011

011

010

000

001101

Ri->LDDR2

0D959A01

0D

100101

011

001

101

000

000001

LDDR1+LDDR2->Ri

SUB

1601A20E

16

000000

011

010

001

000

001110

Ri->LDDR1

0E01B40F

0E

000000

011

011

010

000

001111

Ri->LDDR2

0F619B41

0F

011000

011

001

101

101

000001

LDDR1-LDDR2->Ri

AND

1701A220

17

000000

011

010

001

000

100000

Ri->LDDR1

2001B421

20

000000

011

011

010

000

100001

Ri->LDDR2

21159A01

21

000101

011

001

101

000

000001

LDDR1与LDDR2->Ri

XOR

1801A222

18

000000

011

010

001

000

100010

Ri->LDDR1

2201B423

22

000000

011

011

010

000

100011

Ri->LDDR2

23699A01

23

011010

011

001

101

000

000001

LDDR1+LDDR2->Ri

NOT

1901B424

19

000000

011

011

010

000

100100

Ri->LDDR2

24099A01

24

000010

011

001

101

000

000001

LDDR1+LDDR2->Ri

JMP

1A01EDA5

1A

000000

011

110

110

110

100101

PC->AR,PC+1->PC

2500D181

25

000000

001

101

000

110

000001

RAM->BUS,BUS->PC

JZ

1B01ECEF

1B

000000

011

110

110

011

101111

PC->AR,PC+1->PC

2F018001

2F

000000

011

000

000

000

000001

分支测试失败

3F00D181

3F

000000

001

101

000

110

000001

分值测试成功

3、

设计验证程序

汇编指令

(前一个操作数为源操作数,

后一个操作数为目的操作数)

MOV

90H,R2

POUT

R2,03H

PIN

00H,R1

MOV

02H,R2

ADD

R1,R2

XOR

R1,R2

NOT

R2

LOAD

[20H],R0

JMP

30H

SUB

R0,R0

JZ

40H

AND

R0,R2

POUT

R2,01H

4、汇编程序与机器指令程序的转换

地址

机器指令码(二进制)

机器指令码(十六进制)

指令

01

01000010

42H

MOV

90H,R2

02

10010000

90H

03

00011000

18H

POUT

R2,03H

04

00000011

03H

05

00000001

01H

PIN

00H,R1

06

00000000

00H

07

00010100

14H

POUT

R1,01H

08

00000001

01H

09

01000010

42H

MOV

02H,R2

0A

00000010

02H

0B

01010110

56H

ADD

R1,R2

0C

10000110

86H

XOR

R1,R2

0D

10010010

92H

NOT

R2

0E

00100000

20H

LOAD

[20H],R0

0F

01000000

20H

10

10100000

A0H

JMP

30H

11

00110000

30H

30

01100000

60H

SUB

R0,R0

31

10110000

B0H

JZ

40H

32

01000000

40H

40

011100010

72H

AND

R0,R2

41

00011000

18H

POUT

R2,01H

42

00000001

01H

5、建立联机操作文件

为了从PC机下载工作程序和微程序,需要建立联机操作文件,该文件是普通的文本文件,扩展名为TXT,可用记事本来建立。

源程序如下:

$P0401

$P0500

$P0614

$P0701

$P0842

$P0902

$P0A56

$P0B86

$P0C92

$P0D20

$P0E20

$P0FA0

$P1030

$P3060

$P31B0

$P3240

$P4072

$P4118

$P4201

$M00018001

$M0101ED82

$M0200C050

$M1001ED83

$M0300E004

$M04011001

$M1101ED85

$M0500E006

$M06030201

$M1201ED87

$M0700E008

$M08009001

$M1301ED89

$M0900E00A

$M0A028201

$M1401ED8B

$M0B009001

$M1501A20C

$M0C01B40D

$M0D959A01

$M1601A20E

$M0E01B40F

$M0F619B41

$M1701A220

$M2001B421

$M21159A01

$M1801A222

$M2201B423

$M23699A01

$M1901B424

$M24099A01

$M1A01EDA5

$M2500D181

$M1B01ECEF

$M2F018001

$M3F00D181

七、实验心得

经过两天的学习、设计和开发,带有拓展接口的复杂模型机基本上算是开发完成了,其功能基本能够符合设计需求,基本能够达到硬件课程设计基本目的。当然,在这个过程中也参阅了不少书籍并从中受益匪浅,学到了不少东西和技巧。但由于设计时间较短,所以该模型机还有许多不尽人意的地方,这些都有待进一步改善。通过学习,我不仅掌握了基本的硬件知识和理论,并且增强了自学和深入思考的能力。因此,参加这次硬件课程设计,不仅仅是只是做出了一个模型机而已,更培养和加强了自主学习、深入思考问题的能力,可以说是一举多得。

作为一名计算机学院的学生,我们觉得这样的课程设计是十分有意义的。我们在课堂上掌握的仅仅是专业基础课的理论面,如何去运用现实中的各种硬件部件?如何去面对现实中的各种程序设计?如何把我们所学到的专业基础理论知识运用到实践中去呢?我想做类似的课程设计就为我们提供了良好的实践平台。在做本次课程设计的过程中,我感触最深的当属翻阅了很多次课本和指导书。这次的课程设计,可是说是对进入大学里来所有涉及到硬件的课程的一次大综合,她所涉及到的知识面涵括了计算机组成原理和微机接口技术等。可以说,这次的课程设计是对我们所学硬件知识的一次大融合,有助于我们在更高层次上把握和理解硬件基础知识。

计算机技术浩瀚无边,需要我们学习的知识非常之多。借助于本次课程设计,无论是从技术上还是对知识的理解上讲,都对我们今后步入社会都打下了一个良好的基础。总之,通过这次的生产实习,我学会了很多,也了解了很多。在这,我真诚的感谢辅导过我的老师,还有帮助过我的同学们。谢谢!

等个旧人 2022-07-19 20:49:24

相关推荐

你是否压抑过度呢

你会不会被压抑过度呢?想要更加了解的话,快点测试一下吧!【题目】公车上,邻座睡着的人把头靠在你肩上,你会怎么办?1、用肩膀推回去2、马上离开座位3、不会觉得不快,所以不加以理睬4、想了想,还是忍耐下去你会压抑过...
展开详情

十二生肖相爱指南

肖鼠据生肖恋爱观反应,喜欢在恋爱过程骑驴找马的肖鼠者,容易出现中途换角的情况,如女性会以对方事业、财力、家世背景作为衡量依据;男性则更现实的希望娶进经济条件好或是能力强过于他的妻子,以助事业发展。最佳配偶:相龙...
展开详情

假如某天你闪婚了,那是因为?

题目:和暧昧的人第一次约会,男人主动的接触你身体时,你最反感他碰你哪里?1.搂你的腰2.捏你臀部3.摸你脸蛋4.抓你的手1.选搂你的腰终于找到真命天子或真命天女的时,你就会不顾一切闪电结婚:这类型的人遇到非常来...
展开详情

从口渴测你的野蛮指数

生活中,你的野蛮指数有多高呢?想要知道答案的话,快来测试一下吧!【题目】当你一个人在语言不通的非洲,你非常口渴,好不容易看见一个卖水的老婆婆,你会怎么做?a、找人帮忙b、算了不买了,忍一下吧c、边比边说d、比手...
展开详情

你的心会为谁留位置

不同的人,在你的心里会占据不同的位置,有的人占的位置在前、有的人占的位置在后,有的人占据的空间大、有的人占据的空间小人心的空间是有限的,我们不能为每个人在心里留出位置。但是或许会有那样一个人,会让你在心里无论何...
展开详情

精选推荐更多>

千万缕的意思

千万缕的意思是千丝万缕,千条丝、万条线。
千丝万缕造句:
1、两家公司有着千丝万缕的不解之缘。
2、自然界中的事物都存在着千丝万缕的联系。
3、我们在日常生活中更是与月亮有千丝万缕的联系。
4、春姑娘悄悄地来了,和煦的阳光从竹林的叶片枝杆中洒下了千丝万缕的金线,为竹林增添了生机。
5、宝黛二人之间的种种,有如千丝万缕,数来数不来,话也话不完。
6、新社会与旧社会有千丝万缕的关系。
7、人与人之间,人与社会之间,发生着千丝万缕的联系。
8、学校并不是世外桃源,它和社会有着千丝万缕的联系,所以学校教育、社会教育和家庭教育三者必须有机地结合起来。
9、原来是春姑娘把千丝万缕的线条从天空中投了下来。
10、我已经在不知不觉间和雨结下了千丝万缕的牵绊。

一狼洞其中词类活用

“一狼洞其中”的词类活用:洞,名词作动词,意思是“打洞”。出自《狼》:“一狼洞其中,意将隧入以攻其后也。身已半入,止露尻尾。屠自后断其股,亦毙之。乃悟前狼假寐,盖以诱敌。”
译文:另一只狼正在挖洞,打算从通道进入来攻击屠户的后面。身体已经进入了大半,只露出屁股和尾巴。屠户从后面砍掉了狼的大腿,也杀死了这只狼。他才知道前面的狼是假装睡觉,大概是用这种方法来诱骗敌人。
《狼》是清代小说家蒲松龄创作的文言短篇小说。描绘了贪婪、凶狠、狡诈的狼的形象。启示我们对待像狼一样的恶人,不能妥协退让,而要像屠夫一样勇敢斗争、善于斗争,这样才会取得胜利。

科学实践观创立的作者

科学实践观创立者是马克思。
马克思主义科学实践观的基本内容:
一、实践的本质:
实践是指人能动地改造客观世界的对象性活动,有两方面含义:
1、实践的一般本质:实践是人改造客观世界的物质活动,具有物质的性质和形式,具有直接现实性的特点。
2、实践的特殊本质:实践又是人所特有的对象性活动,实践以人为主体,以客观事物为对象,并把人的目的、能力等本质力量对象化为客观实在,创造出一个属人的对象世界,具有主体性的特点。
二、实践是人的存在方式:
实践的本质决定了实践在人类生活中具有基础和根本的地位,实践构成了人类存在的基本方式。实践是人类生命的特殊运动形式,实践创造了人的基本特征,实践使人成为“社会存在物”,“有意识的类存在物”和“能动的自然存在物”。创造出了人之为人的一切特征,把人类从动物界提升出来。实践是人类的特殊生命形式,即它是社会生命的运动形式。正是在实践过程中,人成为一种自我创造的主体性存在。

人间烟火气最抚凡人心的意思

“人间烟火味,最抚凡人心”的意思是指市井百态、寻常生活最能抚慰世俗人的思想了。抚的意思是抚慰,安抚。凡人心则是指“世俗人之心”。
烟火,yān huǒ,汉语词汇,即炊烟。借指住户、人家生火而燃起的烟火。
出处:
1、《庄子·徐无鬼》:“豕虱自以为安室利处,不知屠者之一旦鼓臂布草,操烟火,而己与豕俱焦也。”
2、《后汉书·吴汉传》:“飨士秣马,闭营三日不出,乃多树幡旗,使烟火不绝。”
3、《北史·魏陇西公仑传》:“今日大风既劲,若今推草车方轨并进,乘风纵烟火,以精兵自后乘之,破之必矣。”
近义词:烽火、人烟、焰火。
常见热点问答
热点搜索
1-20
21-40
41-60
61-80
81-100
101-120
121-140
141-160
161-180
181-200
作文大全
1-20
21-40
41-60
61-80
81-100
101-120
121-140
141-160
161-180
181-200