计算机组成原理实习TECXP文档格式.docx

上传人:b****5 文档编号:19667416 上传时间:2023-01-08 格式:DOCX 页数:21 大小:151.31KB
下载 相关 举报
计算机组成原理实习TECXP文档格式.docx_第1页
第1页 / 共21页
计算机组成原理实习TECXP文档格式.docx_第2页
第2页 / 共21页
计算机组成原理实习TECXP文档格式.docx_第3页
第3页 / 共21页
计算机组成原理实习TECXP文档格式.docx_第4页
第4页 / 共21页
计算机组成原理实习TECXP文档格式.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

计算机组成原理实习TECXP文档格式.docx

《计算机组成原理实习TECXP文档格式.docx》由会员分享,可在线阅读,更多相关《计算机组成原理实习TECXP文档格式.docx(21页珍藏版)》请在冰豆网上搜索。

计算机组成原理实习TECXP文档格式.docx

2.1.3控制总线

提供内存和串口的读写命令,是把控制器提供的3位控制信号送1片双二-四译码器得到的,以决定有无内存或接口读写,若有,是内存和还是接口工作,执行的是读还是写操作。

内存和CPU选用同步方式运行,串行接口和CPU选用状态查询方式工作。

2.2运算器

运算器中配置了两组独立的8位字长的运算器,各自由2片位片结构的运算器器件组成;

还有四位的状态标志寄存器和教案实验所需的相关逻辑部件。

全部的算术与逻辑运算均在这里完成;

还完成几种寻址方式的实际地址计算;

它也是主要的数据、地址传送的通路。

2.3控制器

控制器分别用微程序方式与硬布线方式两种方案实现,实验者可以方便地选择使用其中任何一种。

这能方便地比较两种控制器各自的优缺点,和设计过程的相同的、不同的步骤与方法。

在选用器件时,微程序方案中选用了美国AMD公司的微程序定序器Am2901芯片,保证微程序设计的规范与实用性;

控存体选用只读存储器(ROM)芯片,通过对该ROM的编程写入方式支持动态微程序设计。

硬布线方案中,节拍逻辑与时序控制信号形成部件(组合逻辑线路)选用了GAL20V8现场可编程器件和MacroArrayCMOSHighdensity(简写为MACH)器件,这对简化控制器的逻辑设计与实现至关重要。

2.4存储器

在教案计算机存储器部件设计中,出于简化和容易实现的目的,选用静态存储器芯片实现内存储器系统,包括了唯读存储区(ROM,存放监控程序等)和随读写存储区(RAM)两部分,ROM存储区选用4片长度8位、容量8KB的芯片实现,RAM存储区选用2片长度8位、容量2KB的芯片实现,每2个8位的芯片合成一组用于组成16位长度的内存字,6个芯片被分成3组,其地址空间分配关系是:

0-1777h用于第一组ROM,固化监控程序,2000-2777h用于RAM,保存用户程序和用户数据,其高端的一些单元作为监控程序的数据区,第二组ROM的地址范围可以由用户选择,主要用于完成扩展内存容量的教案实验。

2.5I/O设备

教案计算机提供了2路串行接口(INTEL8251),以支持接入PC机作为教案计算机的仿真终端完成输入输出操作;

第一个串口的端口地址分配为80h/81h,第二个串口的端口地址可以由用户选择。

作为扩展实验内容,也可以通过在一个40芯的器件插座上插上其他标准接口线路(例如INTEL的8255、8253等)并适当接线,完成常用接口线路的输入输出操作。

3、实验机指令系统

3.1指令分类

教案机的指令按不同的分类标准可划分为:

1.从指令长度区分,有单字指令和双字指令。

2.从操作数的个数区分,有三操作数指令、双操作数指令、单操作数指令和无操作数指令。

3.从使用的寻址方式区分,有寄存器寻址、寄存器间址、立即数寻址、直接地址、相对寻址等多种基本寻址方式。

4.从指令功能区分,给出了算术和逻辑运算类指令、读写内存类指令、输入/输出类指令、转移指令、子程序调用和返回类指令,还有传送、移位、置进位标志和清进位标志等指令。

5.按照指令的功能和它们的执行步骤,可以把该机的指令划分为如下4组。

在后面几节中给出的指令流程框图、指令流程表都是以此为标准进行指令划分的。

A组:

基本指令ADD、SUB、AND、OR、XOR、CMP、TEST、MVRR、DEC、INC、SHL、SHR、JR、JRC、JRNC、JRZ、JRNZ

扩展指令ADC、SBB、RCL、RCR、ASR、NOT、CLC、STC、EI、DI、JRS、JRNS、JMPR

B组:

基本指令JMPA、LDRR、STRR、PUSH、POP、PUSHF、POPF、MVRD、IN、OUT、RET

C组:

扩展指令CALR、LDRA、STRA、LDRX、STRX

D组:

基本指令CALA

扩展指令IRET

A组指令完成的是通用寄存器之间的数据运算或传送,在取指之后可一步完成。

B组指令完成的是一次内存或I/O读、写操作,在取指之后可两步完成,第一步把要使用的地址传送到地址寄存器ARH、ARL中,第二步执行内存或I/O读、写操作。

C组指令在取指之后可三步完成,其中CALR指令在用两步读写内存之后,第三步执行寄存器之间的数据传送;

而其它指令在第一步置地址寄存器ARH、ARL,第二步读内存(即取地址操作数)、计算内存地址、置地址寄存器ARH、ARL,第三步读、写内存。

D组指令完成的是两次读、写内存操作,在取指之后可四步完成。

3.2指令格式

TEC-XP教案机实现了29条基本指令,用于编写教案机的监控程序和支持简单的汇编语言程序设计。

同时保留了19条扩展指令,供学生在教案实验中完成对这些指令的设计与调试。

教案机的指令格式支持单字和双字指令,第一个指令字的高8位是指令操作码字段,低8位和双字指令的第二个指令字是操作数、地址字段,分别有3种用法,如下图所示。

操作码

DR

SR

IO端口地址/相对偏移量

立即数/直接内存地址/变址偏移量

这8位指令操作码(记作“IR15~IR8”),含义如下:

1.IR15、IR14用于区分指令组:

0X表示A组,10表示B组,11表示C、D组;

C、D组的区分还要用IR11,IR11=0为C组,IR11=1为D组。

2.IR13用于区分基本指令和扩展指令:

基本指令该位为0,扩展指令该位为1;

3.IR12用于简化控制器实现,其值恒为0;

4.IR11~IR8用于区分同一指令组中的不同指令。

教案机的指令根据指令字长、操作数不同可划分为如下6种指令格式:

1)单字、无操作数指令:

格式:

00000000

基本指令:

PSHF;

状态标志(C、Z、V、S、P1、P0)入栈

POPF;

弹出栈顶数据送状态标志寄存器

RET子程序返回

扩展指令:

CLC;

清进位标志位C=0

STC;

置进位标志位C=1

EI;

开中断,置中断允许位INTE=1

DI;

关中断,置中断允许位INTE=0

IRET;

中断返回

2)单字、单操作数指令:

DR0000

0000SR

OFFSET

I/OPORT

DECDR;

DR←DR-1

INCDR;

DR←DR+1

SHLDR;

DR逻辑左移,最低位补0,最高位移入C

SHRDR;

DR逻辑右移,最高位补0,最低位移入C

JROFFSET;

无条件跳转到ADR,ADR=原PC值+OFFSET

JRCOFFSET;

当C=1时,跳转到ADR,ADR=原PC值+OFFSET

JRNCOFFSET;

当C=0时,跳转到ADR,ADR=原PC值+OFFSET

JRZOFFSET;

当Z=1时,跳转到ADR,ADR=原PC值+OFFSET

JRNZOFFSET;

当Z=0时,跳转到ADR,ADR=原PC值+OFFSET

INI/OPORT;

R0←[I/OPORT],从外设I/OPORT端口读入数据到R0

OUTI/OPORT;

[I/OPORT]←R0,将R0中的数据写入外设I/OPORT端口

PUSHSR;

SR入栈

POPDR;

弹出栈顶数据送DR

RCLDR;

DR与C循环左移,C移入最低位,最高位移入C

RCRDR;

DR与C循环右移,C移入最高位,最低位移入C

ASRDR;

DR算术右移,最高位保持不变,最低位移入C

NOTDR;

DR求反,即DR←/DR

JMPRSR;

无条件跳转到SR指向的地址

CALRSR;

调用SR指向的子程序

JRSOFFSET;

当S=1时,跳转到ADR,ADR=原PC值+OFFSET

JRNSOFFSET;

当S=0时,跳转到ADR,ADR=原PC值+OFFSET

3)单字、双操作数指令:

ADDDR,SR;

DR←DR+SR

SUBDR,SR;

DR←DR-SR

ANDDR,SR;

DR←DRandSR

CMPDR,SR;

DR-SR

XORDR,SR;

DR←DRxorSR

TESTDR,SR;

DRandSR

ORDR,SR;

DR←DRorSR

MVRRDR,SR;

DR←SR

LDRRDR,[SR];

DR←[SR]

STRR[DR],SR;

[DR]←SR

ADCDR,SR;

DR←DR+SR+C

SBBDR,SR;

DR←DR-SR-C

4)双字、单操作数指令:

ADR

JMPAADR;

无条件跳转到地址ADR

CALAADR;

调用首地址在ADR的子程序

5)双字、双操作数指令:

格式1:

0000SR

DATA

MVRDDR,DATA;

DR←DATA

LDRADR,[ADR];

DR←[ADR]

STRA[ADR],SR;

[ADR]←SR

格式2:

LDRXDR,OFFSET[SR];

DR←[OFFSET+SR]

STRXDR,OFFSET[SR];

[OFFSET+SR]←[DR]

4、实验机软件系统

软件:

解释BASIC语言

汇编语言支持

监控程序(指令)级模拟

教案机模拟:

运算器、控制器模拟

(微程序级或硬连线控制器级模拟)

主存储器模拟,总线,接口模拟

输入设备/输出设备模拟

运行环境:

PC机,Windows系统

 

从计算机组成原理课程教案需求的角度看,该计算机软件系统的组成也是完整的,支持简单的高级语言(包括浮点运算指令和基本函数运算功能),汇编语言(支持基本伪指令功能)和二进制的机器语言,配有自己的监控程序,以及PC机仿真终端程序等。

毫无疑问,全部软件的源程序代码是宝贵的教案参考资料。

从上图可以看到,软件实现的计算机系统级和指令级模拟系统,可以脱离硬件教案计算机系统,直接在PC机的Windows平台上运行教案机的程序,可以在PC机上运行教案机的监控程序,其运行效果和在真正的教案计算机上运行监控程序是相同的。

微程序和硬连线这一级别的模拟软件,可以通过PC机屏幕查看在教案计算机内部数据、指令的流动过程,并显示每一步的运行结果,为设计、调试教案机新的软件或硬件功能提供重要的辅助作用。

5、实验机与PC关系

在本次实验中,需要使用到一台TEC-XP实验机和一台PC机;

其中TEC-XP教案机系统是实验中必不可少的东西,教案机系统中配置了两个不同方案的CPU系统,一二CPU演戏传统的设计思路,和当前主流的教材配套,由中小规模的器件组成;

另一个CPU参考国外著名大学的设计思路用大规模的EPGA器件设计实现。

上面集成了各类实验所需的硬件元器件,它是我们本次实验的主要设备。

其次,在实习的过程中还配置了PC机,这主要是为了在做联机实验是要用到电脑;

当用串口线将PC机遇教案机连接好设置好后,通过软件PCEC16.EXE进行以及一些基本的汇编命令,我们就可以设计一些小程序来操作各种不同的寄存器,从而验证或是自己扩展一些汇编指令,实现通过程序来操作实验机教案系统的目的。

6、实验机工作原理

在实验机上运行一下小程序,来说明实验机的工作原理

小程序如下:

2000MVRDR0,0001

2002MVRDR1,0002

2004ADDR0,R1

2005RET

2006

MVRDR0,0001这条指令的微程序如下

取指周期

PC->

MAR,1->

R

Ad(CMDR)->

CMAR

M(MAR)->

MDR,(PC)+1->

PC

MDR->

IR,OP(IR)->

CU->

形成微指令

执行周期

0001–>

R0将0001直接送至通用寄存器R0。

Ad(CMDR)->

CMAR取指令程序入口地址->

MVRDR1,0002这条指令的微程序如下

取指周期:

0002–>

R1将0002直接送至寄存器R1。

ADDR0,R1这条指令的微程序如下

CU

执行周期:

(R0)+(R1)->

R0

RET这条指令的微程序

0–>

G

通过上述这段实现加法运算的小程序可以得出计算机运行程序的原理,计算机首先将每一条汇编程序转化成微程序,而每一段微程序都有若干条微指令构成,微指令可以直接对硬件进行操作。

7、实验内容及实验过程

7.1基础汇编语言程序设计

7.1.1实验内容

①用R命令查看寄存器内容或修改寄存器的内容。

②在命令行提示符状态下输入RR0,用来修改R0寄存器的内容。

③通过D2000可以显示从2000H开始的连续128个字的内容。

④通过E2000可以修改存储器的内容。

.

⑤用A命令键入一段汇编程序,主要是向累加器送入数据和进行运算。

⑥用U命令反汇编刚输入的程序。

⑦用G命令运行刚输入的程序。

⑧用P或T命令单步执行刚键入的程序

7.1.2实验过程

1.准备一台串口工作良好的PC机;

2.将TEC-XP实验箱与PC机通过串口COM1或者COM2连接,并且将实验系统左下方的五个黑色的控制机器运行状态的开关置成00110(连续、内存读指令、组合逻辑、联机、16位),并打开电源;

3.在PC机C盘目录下tec-xp目录下找到PCEC16.EXE文件并运行,根据连接的PC机串口设置联机工作,直至主机显示如下:

TEC-2000CRTMONITOR

Version1.0April2001

ComputerArchitecturLab.,TsinghuaUniversity

ProgrammedbyHeJia

即为联机成功;

4.联机成功后进行实验内容。

7.2脱机运算器实验

7.2.1实验过程

1.将教案机左下方的5个拨动开关置为1XX00(单步、16位、脱机);

先按一下“RESET”按键,再按一下“START”按键,进行初始化;

2.按下表所列的操作在机器上进行运算器脱机实验,将结果填入表中:

其中D1取为0101H,D2取为1010H;

通过两个十二位的红色微型开关向运算器提供控制信号,通过16位数据开关向运算器提供数据,通过指示灯观察运算结果及状态标志。

表1.脱机运算器实验结果

运算

I8~I0

SST

SSH

SCi

B

A

压START前

压START后

ALU

输出

CZVS

*D1+0->

011000111

001

00

0000

不用

0101

*D2+0->

R1

0001

1010

R0+R1->

011000001

1111

2121

R0-R1->

011001001

01

F0F1

1000

R1-R0->

0F0F

0E0E

R0∨R1->

011011001

R0∧R1->

011100001

R0R1->

011110001

¬

(R0R1)->

011111001

FEFE

1001

2*R0->

111000011

FDFC

R0/2->

101000011

7EFE

7.3组合逻辑控制器实验

7.3.1实验内容

1.完成控制器部件的教案实验,主要内容是有学生自己设计几条指令的功能、格式和执行流程,并在教案计算机上实现、调试正确。

2.首先是看懂TEC-XP教案计算机的功能部件组成和线路逻辑关系,然后分析教案计算机中已经设计好并正常运行的几条指令(例如,ADD、SHR、OUT、MVRD、JRC、CALA、RET等指令)的功能、格式和执行流程。

3.设计几条指令的功能、格式和执行流程,并在教案计算机上实现、调试正确。

例如ADC、JRS、JRNS、LDRA、STOR、JMPR等指令,可以从《TEC-XP教案计算机系统技术说明与实验知道》第二章给出的19条扩展指令中任意选择,当然也可以设计与实现其它的指令,包括原来己程序的基础上按照ABEL语言的要求添加新指令的控制信号,编译产生JED文件并下载到MACH芯片里。

软件的使用和下载参见附录。

4.单条运行指令,查看指令的功能、格式和执行流程。

现将教案计算机左下方的5个拨动开关置为11110,再按一下“RESET”按键,然后通过16位的数据开关(SWH、SWL)置入指令,按“START”按键单步送脉冲,通过指示灯观察控制信号的变化。

5.用控制程序的A、E(扩展指令必须用E命令置入)命令编写一段小程序,观察运行结果。

实验是将教案机左下方的5个拨动开关置为00110,运行编写的小程序。

观察终端显示的结果,检验设计的指令是否正确。

若与预定结果不符,可查看指令的功能、格式、执行、流程设计的是否正确。

7.3.2实验过程

1.接通教案机电源;

2.将教案机左下方的5个拨动开关置为11110(单步、手动指令、组合、16位、联机);

3.按一下“RESET”按键;

4.通过16位的数据开关SWH、SWL置入16位的指令操作码;

5.在单步方式下,通过指示灯观察各类基本指令的节拍。

选择基本

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

当前位置:首页 > 医药卫生 > 基础医学

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

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