090401013李宁.docx

上传人:b****8 文档编号:9640107 上传时间:2023-02-05 格式:DOCX 页数:14 大小:121.61KB
下载 相关 举报
090401013李宁.docx_第1页
第1页 / 共14页
090401013李宁.docx_第2页
第2页 / 共14页
090401013李宁.docx_第3页
第3页 / 共14页
090401013李宁.docx_第4页
第4页 / 共14页
090401013李宁.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

090401013李宁.docx

《090401013李宁.docx》由会员分享,可在线阅读,更多相关《090401013李宁.docx(14页珍藏版)》请在冰豆网上搜索。

090401013李宁.docx

090401013李宁

 

辽宁工业大学

计算机组成原理课程设计(论文)

题目:

一台模型计算机设计与测试

——乘法指令流程

院(系):

电子与信息工程学院

专业班级:

计算机109班

学号:

090401013

学生姓名:

李宁

指导教师:

郭延峰

教师职称:

副教授

起止时间:

2012-01-02至2012-01-06

 

课程设计(论文)任务及评语

院(系):

电子与信息工程学院教研室:

计算机科学与技术

学号

090401013

学生姓名

李宁

专业班级

计算机091班

课程设计(论文)题目

一台模型计算机设计与测试

——乘法指令流程

课程设计(论文)任务

利用试验箱中的电路模块组合成为一台简单计算机,数据通路的控制由微程序控制器完成,CPU从内存取出一条机器指令到执行指令结束的一个机器指令周期,是由微指令组成的序列完成。

主要设计内容:

1.将微程序控制器同执行部件联机,组成一台模型计算机;

2.用微程序控制器控制模型机数据通路;

3.通过CPU运行机器指令,编写加法指令所对应的微程序。

要求:

1、根据题目和试验箱中的电路模块设计一台简单计算机,并画出电路原理图以及微程序流程图。

2、认真独立完成所规定的设计内容(4000字左右),严禁相互抄袭;

3、撰写、打印设计说明书一份。

指导教师评语及成绩

 

平时成绩:

论文质量:

答辩:

总成绩:

指导教师签字:

学生签字:

年月日

目录

第1章设计方案1

1.1引言1

1.2总体方案论述1

第2章一台模型计算机的硬件设计3

2.1数据通路的设计3

2.2微程序控制器设计6

2.3拟机的设计与调试7

第3章微程序设计9

3.1微程序流程图9

3.2微程序代码的设计与测试10

第4章课程设计总结11

参考文献12

第1章设计方案

1.1引言

本次课程设计的主要目的是为了让学生掌握计算机总体设计思想,理解软硬件结合设计计算机的思想。

TEC-4计算机组成原理实验系统由北京邮电大学计算机学院、清华同方教学仪器设备公司、深圳拓普威电子技术有限公司联合研制。

它是一个8位计算机模型实验系统,可用于大专、本科、硕士研究生计算机组成原理课课程、计算机系统结构课程的教学实验,对提高学生的动手能力、提高学生对计算机整体和各组成部分的理解、提高学生的计算机系统综合设计能力都会有很大的帮助。

TEC-4计算机组成原理实验系统特点:

1.计算计模型简单、使用,运算器数据通路、控制器、控制台各部分划分清晰。

2.计算机模型采用了数据总线和指令总线双总线体制,能够实现流水控制。

3.控制器有微程序控制器或者硬布线控制器两种类型,每种类型又有流水和非流水两种方式。

4.寄存器堆由1片ispLSI1016组成,运算器由1片ispLSI1024组成,设计新颖。

5.试验台上包括了1片在系统编程芯片ispLSI1032,学生可以用它实现硬布线控制器。

6.该系统能做运算器组成、双端口存储器、数据通路、微程序控制器、中断、CPU组成与机器指令执行、流水微程序控制器、硬布线控制器、流水硬布线控制器等多种实验。

7.电源部分采用模块电源,重量轻,具有抗电源对地短路能力。

8.采用自锁紧累接接线方式,接线可靠。

1.2总体方案论述

本次课程设计分为7个子题目,可以使用计算机组成原理实验中的所有电路,包括运算器、存储器、通用寄存器堆、程序计数器、指令寄存器、微程序控制器等。

将几个模块组合成为一台简单的计算机。

本次程序设计中,数据通路的控制将由微程序控制器来完成。

CPU从内存中取出一条机器指令到执行指令结束的一个机器指令周期,是由微指令组成的序列来完成的,即一条机器指令对应一个微程序。

此次课程设计所用到的设备有:

TEC-4计算机组成原理实验系统一台、双踪示波器一台、直流万用表一只和逻辑测试笔一支。

第2章一台模型计算机的硬件设计

2.1数据通路的设计

1.运算器

运算器部件是计算机中进行数据加工的部件,其主要功能包括:

(1)执行数值数据的算术加减乘除等运算,执行逻辑数据的与或非等逻辑运算,由一个被称为ALU的线路完成。

(2)暂时存放参加运算的数据和中间结果,由多个通用寄存器来承担。

(3)运算器通常也是数据传输的通路。

图1

2.存储器

(1)双端口存储器RAM

双端口存储器由一片IDT7132(U36)及少量附加控制电路组成。

IDT7132是2048字节的双端口静态随机存储器,本机实际使用256字节。

IDT7132两个端口可同时进行读、写操作。

在本机中,左端口的数据连线数据总线DBUS,可进行读、写操作,右端口数据和指令总线INS连接,输出到指令寄存器IR,作为只读端口使用。

存储器IDT7132有6个控制引脚:

CEL#,LRW,OEL#,CER#,RRW,OER#。

CEL#,LRW,OEL#控制左端口读、写操作;CER#,RRW,OER#控制右端口读、写操作。

CEL#为左端口选择引脚,低有效,为高时禁止左端口操作;LRW为高时,左端口进行读操作,LRW为低时,左端口进行写操作;OER#为低时,将左端口读出的数据放到数据总线DBUS上。

CER#,RRW,OER#控制右端口读、写操作的方式与CEL#,LRW,OER#控制左端口读、写操作的方式类似,不过右端口读出的数据放到指令总线上而不是数据总线上。

本机设计中,OER#已固定接地,RRW固定接高电平,CER#由CER反相产生。

当CER=1时,右端口读出数据,并放到指令总线INS上;当CER=0时,禁止右端口操作。

左端口的OEL#由LRW经反相产生,不需单独控制。

当CEL#=0且LRW=1时,左端口进行读操作;当CER#=0且LRW=0时,在T3的上升沿开始进行写操作,将数据总线上的数据写入存储器。

(2)地址寄存器AR1和AR2

地址寄存器AR1(U37)和AR2(U27,U28)提供双端口存储器的地址。

AR1是1片GAL22V10,具有加1功能,提供双端口存储器左端口的地址。

AR1从数据总线DBUS接收数据。

AR1的控制信号是LDAR1和AR1-INC。

当AR1-INC=1时,在T4的上升沿,AR1的值加1;当LDAR1=1时,在T4的上升沿,将数据总线DBUS的数据打入地址寄存器AR1。

AR2由2片74HC298组成,有两个数据输入端,一个来自程序计数器PC,另一个来自数据总线DBUS。

AR2的控制信号是LDAR2和M3。

M3选择数据来源,当M3=1时,选中数据总线DBUS;当M3=0时,选中程序计数器PC。

LDAR2控制何时接收地址,当LDAR=1时,在T2的下降沿将选中的数据源上的数据打入AR2。

(3)指令寄存器IR

指令寄存器IR是1片74HC374(U20)。

它的数据端从双端口存储器接收数据(指令)。

当LDIR=1时,在T4的上升沿将来自双端口存储器的指令打入指令寄存器IR保存。

指令的操作码部分送往控制器译码,产生各种所需的控制信号。

大多数情况下,指令的操作数部分应连到寄存器堆(用户自己连接),选择参与运算的寄存器。

在某些情况下,指令的操作数部分也参与新的PC的计算。

本实验系统设计了12条基本的机器指令,均为单字长(8位)指令。

指令功能及格式如表2所示。

表2中的X代表随意值;RS1-RS0指的是寄存器堆的B端口选择信号RS1,RS0,RD1,RD0指的是寄存器堆的A端口选择信号RD1-RD0,不过由于运算结果需写回,因此它也同时指WR1,WR0,用户需将它们对应连接。

另一点需说明的是,为了简化运算,指令JCD中的D是一个4位的正数,用D3D2D1D0表示。

3.数据通路

(1)数据通路的功能

数据通路:

数据在功能部件之间传送的路径称为数据通路。

运算器与各寄存器之间的传送路径就是中央处理器内部数据通路。

“数据通路”描述了信息从什么地方开始,中间经过哪个寄存器或多路开关,最后传送到哪个寄存器,都要加以控制。

建立数据通路的任务,是由“操作控制部件”来完成。

数据通路的功能是实现CPU内部的运算器和寄存器以及寄存器之间的数据交换。

(2)数据通路的基本结构:

数据通路的基本结构主要有两种方式:

图2

CPU内部总线方式:

将所有的寄存器的输入端和输出端都连接到一条或多条公共的通路上,这种结构比较简单,但是数据传输存在较多的冲突现象,性能较低,如果连接各部件的总线只有一条,则称单总线结构;如果CPU中有两条或更多的总线,则构成双总线结构和多总线结构。

在双总线或多总线结构中,数据的传递可以同时进行。

专用数据通路方式(不采用CPU内部总线方式):

根据指令执行过程中的数据和地址的流动放心安排连接线路,避免使用共享的总线,性能比较高,但硬件量大。

2.2微程序控制器设计

1.加法指令控制寄存器

(1)机器指令格式

名称

助记符

功能

指令格式

R7R6R5R4

R3R2

R1R0

加法

ADDRd,Rs

Rd+Rs->Rd

0000

RS1RS0

RD1RD0

存数

STARd,[Rs]

Rd->[Rs]

0100

RS1RS0

RD1RD0

取数

LDARd,[Rs]

[Rs]->Rd

0101

RS1RS0

RD1RD0

无条件转移指令

JMP[Rs]

[Rs]->Pc

1000

RS1RS0

XX

条件转移

JCD

若C=1则

PC+D->PC

1001

D3D2

D1D0

停机

STP

暂停运行

0110

XX

XX

中断返回

IRET

返回断点

1010

XX

XX

开中断

INTS

允许中断

1011

XX

XX

关中断

INTC

禁止中断

1100

XX

XX

表1

(2)控制台指令格式

SWC

SWB

SWA

工作方式

0

0

0

PR,启动程序

0

0

1

KRD,读双端口存储器

0

1

0

KWE,写双端口存储器

0

1

1

KLD,加载寄存器存器堆

1

0

0

KRR,读寄存器堆

表2

2.逻辑运算与指令服务程序

(1)微程序控制器组成原理图:

图3

(2)电路设计

在本次课程设计中,数据通路的控制将由微程序控制器来完成。

CPU从内存取出一条机器指令到执行指令结束的一个机器指令周期,是由微指令组成的序列来完成的,即一条机器指令对应一个微程序。

2.3拟机的设计与调试

对机器指令系统组成的简单程序进行译码。

这部分要求学生对自己的编写的简单程序设计内存地,址和译码后的二进制代码。

本实验中的接线比较多,需要仔细的连线。

(1)时序发生器的输入TJ1接控制存储器的输出TJ。

控制器的输入C接运算器ALU的C。

控制器的输入IR7、IR6、IR5、IR4依次连接指令寄存器IR的输出IR7、IR6、IR5、IR4。

共有六条线。

(2)控制器的输出LDIR(CER)、LDPC(LDR4)、PC_ADD、PC_INC、M4、LDIAR、LDAR1(LDAR2)、AR1_INC、M3、LDER、IAR_BUS#、SW_BUS#、RS_BUS#、ALU_BUS、CEL#、LRW、WRD、LDDR1(LDDR2)、M1(M2)、S2、S1、S0依次与数据通路的对应信号连接。

共27条线。

(3)指令寄存器IR的输出IR0接双端口寄存器堆的RD0、WR0、IR1接RD1、WR1、IR2接RS0、IR3接RS1。

共6条线。

合上电源。

按CLR#按钮,使系统处于初始状态。

本次课程设计所分配到的子题目是乘法指令流程,调试过程为:

DP=0、DB=0、DZ=0、SWC=0、SWB=1、SWA=1按CLR#按钮,然后使SW7-SW0=9FH(AR2)后按QD键。

使SW7-SW0=01H(IR)后按QD键,使SW7-SW0=QD(R1)后按CLR#按钮,然后使SW7-SW0=A0H(AR2)后,按QD键,使SW7-SW0=02H(IR)后,按QD键,使SW7-SW0=11(R2)按CLR#按钮。

使DP=0、DB=0、DZ=0、SWC=0、SWB=1、SWA=0,使SW7—SW0=00H后,按QD键,使SW7—SW0=26H后,按QD键再按CLR#键,然后使DP=0、DB=0、DZ=1、SWC=0、SWB=0、SWA=0按QD键验证指令的正确性,最后使DP=0、DB=0、DZ=0、SWC=0、SWB=0、SWA=1按QD键后设置地址取出得数。

第3章微程序设计

3.1微程序流程图

图4

3.2微程序代码的设计与测试

T

J

S2

S1

S0

M

1

L

D

D

R

1

W

R

D

 

L

R

W

 

C

E

L

#

A

L

U

B

U

S

R

S

B

U

S

#

S

W

B

U

S

#

I

A

R

B

U

S

#

L

D

E

R

M

3

A

R

1

I

N

C

L

D

A

R

1

L

D

I

A

R

M

4

 

P

C

I

N

C

P

C

A

D

D

L

D

P

C

 

L

D

I

R

 

I

N

T

C

I

N

T

S

P3P2

P1P0

A5A4

A3A2

A1A0

00

0

000

0

0

0

0

1

0

1

1

1

0

0

0

0

0

0

0

0

0

0

0

0

1000

000111

07

0

000

0

0

0

0

1

0

1

0

1

0

0

0

0

0

1

0

0

1

0

0

0

0000

000101

05

0

000

0

0

0

0

1

0

1

1

1

0

0

0

1

0

0

1

0

0

1

0

0

0100

010000

10

0

000

0

1

0

0

1

0

1

1

1

0

0

0

0

0

0

0

0

0

0

0

0

0000

111011

3B

0

010

0

0

0

0

1

1

1

1

1

1

0

0

0

0

0

0

0

0

0

0

0

0000

110100

34

0

000

0

0

1

0

1

0

1

1

1

0

0

0

0

0

0

0

0

0

0

0

0

0000

001111

0F

0

000

0

0

0

0

1

0

1

1

1

0

0

0

1

0

0

0

0

0

0

0

0

0010

000101

 

第4章课程设计总结

《计算机组成原理》是一门实践性较强的计算机基础课程,在前一阶段的理论学习中,我初步的了解和学习到了与硬件有关的一些知识,但是,在学习过程中还是觉得很多的东西很抽象,似懂非懂的东西很多,这就源于在学习的过程中缺乏实践。

通过本次课程设计,让我们大家把平时课本上学到的知识应用到了实际的开发设计计算机硬件当中去,当然,过程中遇到了许许多多的困难,但是在每每攻克了一个困难之后,我们都会从当中学习到很多知识,这是靠课本上单一的学习所得不到的,也是宝贵的知识财富。

在本次课程设计中,我们大家分别动手用TEC-4计算机组成原理实验系统设计自己所分配到的题目,我们组在这次任务中动手设计了乘法运算。

在遇到的诸多问题中,我们组的组员通过讨论、调试和研究,终于在最后完成这项题目的设计和调试成功。

 

参考文献

[1]唐朔飞.计算机组成原理,北京:

高等教育出版社,2000:

91-103

[2]何立民.单片机应用系统设计,北京:

航空航天大学出版社,1990:

45—56

[3]张毅刚.单片机原理及应用,北京:

高等教育出版社,2003:

126—135

[4]顾兴源.计算机控制系统,北京:

冶金工业出版社,1981:

25—40

[5]张毅刚.单片机原理及接口技术.北京:

人民邮电出版社,2008:

53-70

[6]潘松.现代计算机组成原理,北京:

科学出版社2007:

78-121

[7]黄继业.EDA技术实用教程,北京:

科学出版社2002:

68-110

 

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

当前位置:首页 > 考试认证 > 其它考试

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

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