




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、组原实习报告信息工程学院组原实习报告 (20132014学年第 二学期) 姓 名:_ 王柯_ _ 学 号:_ _2012013276_ 专 业:_ _ 计算机_年级班级:_ _122班_一 计算机的组成1.综述:TEC-XP是由清华大学计算机系和清华大学科教仪器厂联合研制并通过了教育部主持的成果鉴定的适用于计算机组成原理与系统结构的实验系统,主要用于计算机组成原理和计算机系统结构等课程的硬件教学实验,同时还支持监控程序、汇编语言程序设计、BASIC高级语言程序设计等软件方面的教学实验。它的功能设计和实现技术,都紧紧地围绕着对课程教学内容的覆盖程度和所能完成的教学实验项目的质量与水平来进行安排。
2、其突出特点有二,一是硬、软件基本配置比较完整,能覆盖相关课程主要教学内容,支持的教学实验项目多且水平高,文字与图纸资料相对齐全。二是既有用不同集成度的半导体器件实现的真实“硬件”计算机系统,同时还有在PC计算机上用软件实现的功能完全相同的教学计算机的“软件”模拟系统,其组成和实现的功能如下图所示。软件:解释 BASIC 语言汇编语言支持监控程序硬件:运算器,控制器(多种实现:微程序或硬连线控制器,中小规模器件或FPGA器件实现)主存储器,总线,接口输入设备,输出设备硬件与电路:逻辑器件和设备软件:解释 BASIC 语言汇编语言支持监控程序(指令)级模拟教学机模拟:运算器、控制器模拟(微程序级或
3、硬连线控制器级模拟)主存储器模拟,总线、接口模拟输入设备/ 输出设备模拟运行环境:PC机,Windows系统 硬件实现的真实计算机系统 软件实现的模拟计算机系统2.TEC-XP教计算机系统其外观如图1.1所示:3.实验系统的硬件系统组成示意图1.2如下:图1.2 实验系统的硬件系统组成示意图 从图中可以看到TEC-XP教学计算机的总体组成。在图的左部所表示的是选用中小规模器件实现的CPU系统,由独立的运算器、控制器部件组成。图的中间部分所表示的是内存储器、串行接口线路的组成。图的右部虚线部分所表示的是选用FPGA门阵列器件实现的单个芯片的CPU系统。这两个CPU系统都可以通过数据总线、地址总线
4、和控制总线连接内存储器、串行接口线路,从而构成一台完整的计算机硬件系统,安装上必要的软件就可以正常运行,作为计算机组成原理课程内容实例和教学实验设备具有很好的典型性。两个CPU系统需要通过分时或者独占的方式使用同一套存储器部件和串行接口线路。第 2 页 共28页其系统基本组成部分的结构框图如图1.3所示:图1.3. TEC-XP教学计算机的硬件组成线路4.介绍硬件各个部件(1)运算器部分14:运算器芯片。由4片4位的运算器芯片AM2901组成。4片级连构成一个16位的运算器,片间采用串行进位的方式。5:标志寄存器FLAG。4位,用来保存运算器运算结果的4个标志位C、Z、V、S。6:SHIFT芯
5、片。产生运算器最低位的进位输入信号和移位信号。图5.运算器组成线路与信息连接关系(2)控制器部分本系统提供了硬布线控制器和微程序控制器两种控制器。(1)硬布线控制器程序计数器PC。用运算器芯片内的一个16位寄存器来表示(用户看不到)。7、9:指令寄存器IR。由两片8位D锁存器芯片74LS374和74LS377构成。 74LS374和74LS377为带公共使能端的具有三态输出的八 D 边沿触发器。9、65:节拍发生器Timing。使用几个触发器的不同编码状态来区分和标示指令的执行步骤。10:时序控制信号产生器MACH5。用一片100引脚的CPLD器件实现。用于产生并提供每一条指令的每一个执行步骤
6、使用的全部时序控制信号,这些信号可以直接送到每个被控制的对象,或者经过译码器送到被控制的对象。11、12:译码器。由两片三八译码器芯片(74LS138)实现。(2)微程序控制器程序计数器PC。(同硬布线控制器)。7、9:指令寄存器IR。(同硬布线控制器)。14:微指令地址映射部件MAPROM。由一片28C64型ROM芯片实现。MAPROM的地址输入是指令寄存器IR给出的8位指令操作码,其输出内容为这条指令对应的微程序段的入口地址。13:微程序控制器AM2910。用于产生下一条微指令的地址。18:微指令转移的条件判断电路。由一片GAL20V8实现。15、16:控制存储器。由两片28C64型ROM
7、芯片构成。用于存放本系统的微程序。(15、16只是控制存储器的一部分,用于存放微指令的16位下地址。另一部分在芯片10中,存放32位的微命令信号)47、51:微指令寄存器。由一片8位D锁存器芯片74LS374和一片8位带清0控制的D锁存器芯片74LS273构成。用于存放当前运行中的微指令。(47、51只是微指令寄存器的一部分。另一部分由芯片10中的32位D型触发器组成)17:当前微指令地址寄存器。由一片74LS377型8位D锁存器构成。用于存放当前运行中和微指令的地址,并驱动8个指示灯(以此来显示当前微指令的地址)。图6.在MACH芯片内实现32位的控制存储器和微指令寄存器(3)存储器(内存)
8、19、20:ROM。由2片8KB的ROM芯片28C64。用于存放本机的监控程序。21、22:RAM。由2片2KB的RAM芯片6116。23、24:内存扩展插座。用于扩展存储器。54:三八译码器74LS138。实现对内存地址AB15AB13的译码。产生8个用于内存片选的译码信号,分别对应8个内存地址空间。53:74ls139芯片。其内部是2个独立的2-4译码器。由其译码产生对内存读写等操作的控制信号。图7. 内存储器和串行接口电路(4)串行接口27:串行接口芯片8251。用于确定串行接口COM1的工作方式。Intel8251是一种通用的同步/异步发送器,通过对它的编程可以设置串行接口的工作方式。
9、65:预留的8251芯片插座。用于确定串行接口COM2的工作方式。28:电平转换芯片MAX202。COM1和COM2共用。实现12V转换为5V。58:IO地址译码器。由一片74LS138三八译码器实现。它对AB7AB4(IO端口地址的高四位)进行译码,产生相应外设的片选信号。(5)总线线路本系统的总线由内部总线、数据总线、地址总线、控制总线共四部分组成。内部总线是数据总线在CPU内部的体现,在真正的商用机中用户是看不到的。在本机中是连接运算器和控制器之间的线路。38、40:总线驱动器。由两片八同相三态缓冲器/线驱动器74LS244组成。用来把运算器的运算结果经放大后送内部总线。39:总线驱动器
10、。由一片74LS244组成。用来把标志寄存器FLAG的值经放大后送内部总线。25、26:三态双向总线收发器。由8路同相三态双向总线收发器74LS245组成。设置在内部总线和数据总线之间,实现内部总线和数据总线的隔离,并可双向传输数据。55、56:地址寄存器。由二片8位D锁存器芯片74LS374组成。由运算器输出的内存地址暂存入地址寄存器。(6)中断系统71:中断源按键。提供三个中断请求的源信号。64:INTS。由一片GAS20V8通过人工编程实现。用来接受并暂存由三个按键(71)给出的中断请求源信号。63:INTP。由一片GAS20V8通过人工编程实现。用来对INTS送来的中断请求信号进行中断
11、优先级编码、优先级比较、向CPU产生中断请求信号等。49、50:中断向量寄存器。由二片8位D锁存器芯片74LS374组成。由这两个寄存器硬性设置的中断向量分别为2104H、2108H和210CH,对应的优先级分别是1、2、3。(7)启停电路29:晶体振荡器。用于产生1.8432MHz的时钟脉冲。30:74LS04(6非门)。它的内部含有6个CMOS反相器。74LS04的作用就是反相把1变成0,0变成1。31:四位二进制可预置的同步加法计数器74LS161。用来对晶体振荡器产生的1.8432MHz的时钟进行分频,产生各种需要的时钟信号。32:启停控制电路。由一片GAS20V8通过人工编程实现(仿
12、真74LS120的作用)。33、34:复位和开始按键。(5)软件组成介绍TEC-XP教学计算机系统的软件配置比较齐全,但确实是属于非常基本的部分,有源程序清单。分为用TEC-XP机指令设计的,运行在教学机系统中,如监控程序MONITOR,容易看懂和修改。有用PC机汇编语言设计的。而交叉汇编程序中,如PC机仿真终端程序PECE。而交叉汇编程序则是用PC及的高级语言设计并运行在PC机上,容易看懂和修改。TECXP教学计算机可以在PC机的DOS或WINDOWS环境,在WINDOWS界面下,还提供更高级和新增加的一些功能,如控制器辅助设计软件,系统和指令仿真软件,浮点运算支持软件,实验用图纸和文字资料
13、查阅支持功能等。TEC-XP机研制过程,非常重视起软件配置,主要提供如下软件:监控程序MONITOR,固化在主存ROM存储区,实现的功能类似PC机的DEBUG,有8条监控命令,控制试验机正常运行,执行输入输出等操作。交叉汇编程序ASEC,对试验机的汇编程序进行汇编,产生机器的指令代码。很容易把通过扩展实现的新指令的汇编功能添加进去。PC机仿真终端程序PCEC,运行在PC机上,童工串行口使PC机作为是啊一年级的输入输出设备。微程序:解释执行试验机的个条指令。二工作原理.运算器.AM2001芯片的管脚信号首先把Am2901芯片的管脚信号,按输入/输出及功能分类小结如图所示。F=0000Y 3 Y
14、0/P/GCn+4A m 2901CnF3RAM 0 OVRRAM 3Q 3Q 0B3 B0A3 A0I8 I0CP/OED3 D0图. Am2901运算器芯片的管脚分配属于数据类型的信号包括:4位数据输入(D3-D0),4位数据输出(Y3-Y0),最低位进位输入信号(Cn),4个标志位输出信号(F3,OVR,F=0000,Cn+4),通用寄存器最高、最低位移位入出信号(RAM3,RAM0),Q寄存器最高、最低位移位入出信号(Q3,Q0),用于并行进位的2个信号(/G,/P),合计19位。属于控制类型的信号包括:主脉冲信号(CP),输出使能信号(/OE),两个4位的寄存器选择信号(A3-A0,
15、B3-B0),选择ALU数据来源,运算功能,结果处置的信号各3位(I8-I0),合计19位。该芯片还有电源和地线引脚各一个,故该芯片共有40个引脚。.4片Am2901 芯片之间的连接用4片Am2901芯片构成一个16位的运算器部件,4片间的连接关系如图.所示:(1) 由4片各自的D3-D0组成16位的数据输入D15-D0。(2) 由4片各自的Y3-Y0组成16位的数据输出Y15-Y0。(3) 有高低位进位关系的3组信号,在高低位相邻芯片间的连接关系是:高位芯片的RAM0、Q0分别与低位芯片的RAM3、Q3相连;在串行进位方式下,高位芯片的 Cn 与低位芯片的 Cn+4 相连;Am2901芯片之
16、间也可以选用一片Am2902器件实现快速进位。此时,最低位芯片的RAM0与Q0是该16位的运算器的最低位的移位入/出信号,最高位芯片的RAM3与Q3是16位的运算器最高位的移位入/出信号。最低位芯片的Cn是整个运算器的最低位进位输入信号。最高位芯片的Cn+4是16位的完整运算器的进位输出信号。同理,只有最高位芯片的F3和OVR有意义,低位的三个芯片的F3和OVR不被运用。四个芯片的F=0000管脚(集电极开路输出)连接在一起,并经一个电阻接到 +5V电源以得到16位的ALU的运算结果为0的标志位信号。(4). 其它的几组输入信号,对4片Am2901器件来说应有相同的值,包括/OE(控制Y的输出
17、),A地址、B地址(选择寄存器),I8-I0(控制Am2901的结果处置、运算功能、数据来源)和工作脉冲CP,故应将四个芯片的这些信号的各对应管脚连接在一起。Am 2902Cn+z /G /P Cn+y /G /P Cn+x /G /P+5vF=0 ROVRY3Y0Y 15Y12Y 11Y8Y7Y4F15CinCy低位Am2901高位Am2901RAM15RAM 0Q0Q15/OEQ0CPA地址B地址I 8I0D 3D0D11D8D7D4D15D12图. 4片Am2901芯片各管脚之间的连接关系.需要在Am2901芯片外部的处理的逻辑功能有一些功能(数据)取决于如何使用Am2901,与指令和指
18、令的执行步骤有关,必须用另外的线路来处理的,包括: 需要正确给出芯片的最低位的进位输入信号Cn,选用3位的控制码确定,需要在Am2901芯片之外用另外的电路解决。表3-4 形成最低位进位输入信号Cin的逻辑3 位选择码SSH SCI编码 指令举例 Cin取值0 0 0 ADD,DEC 0 0 1 SUB INC 0 1 0 ADC SBB 关于左右移位操作过程中的RAM3、RAM0、Q3和Q0的处理,左移操作时RAM3与Q3为输出,RAM0和Q0为输入;相反,右移操作时,RAM0和Q0为输出,RAM3和Q3为输入,这是由I8和I7共同控制的。这几个外部信息的接收与送入,选用3位的控制编码确定,
19、需要在 Am2901芯片之外用另外的电路解决。表3-5 累加器和Q寄存器的最高、最低位的移位输入信号的形成逻辑 3位控制码 左移 右移SSH SCI编码 RAM0 Q0 RAM15 Q15 说 明 1 0 0 用于逻辑移位指令 1 0 1 用于和与C循环移位指令 1 1 0 15 /15 y RAM0 原码除(左移)乘(右移) 1 1 1 F15 RAM0 用于算术右移指令注: 表中的X表示不必处理、不必过问该位的取值;当通用寄存器本身移位时, Q寄存器不受影响; 乘除运算要求实现通用寄存器与Q寄存器联合移位;没有Q寄存器单独移位功能。表2-4和表2-5规定的处理功能,可以在一片GAL20V8
20、芯片内实现,为此需要为这个芯片分配输入输出管脚并写出对应的逻辑表达式,经过编译以处理之后,把融丝图文件的内容通过编程器设备写入到芯片之内。这个芯片实现的是组合逻辑类型的线路功能。请注意,与原TEC-2000机相比,在这个机型中,为缩短微指令的字长,把原来的2位的SSH缩减为1位,只能对表2-4和表2-5的控制码合用同样的3位,而不是各自独用2位。 四个标志位的值的接收与记忆电路,需在Am2901芯片之外实现。Am2901芯片提供出ALU运算结果的4个标志位的信号,但并没有设置用于保存这4个信号的线路,需要使用者在Am2901芯片使用另外的线路来维持或者保存这4个标志位的值。4个标志位信号的变化
21、有8种不同情况,使用3位的编码SST来区分,如表2-6所示。可以使用一片GAL20V8芯片实现表2-6规定的属于时序逻辑类型的逻辑功能。3位选择码 状 态 位 输 入 说 明 SST 编码 四个标志位的值保持不变 Y F=0 OVR F15 接收ALU的标志位输出的值 内部总线对应的一位 恢复标志位原来的现场值 置0C, 另三个标志位不变 置1C, 另三个标志位不变 RAM0 右移操作,另三个标志位不变 RAM15 左移操作,另三个标志位不变 0 S 联合右移,另三个标志位不变若把这两片GAL20V8器件的功能连同4片Am2901内容示意地表示出来,就得到如图所表示的教学计算机的完整运算器的组
22、成框图。D15D0Y15Y0RAM0 Q001CSSHCinSCICP I80/OE A B 地 地 址 址SSHSST来自内部总线右移信号RAM15Q15CYF=0OVRF15SZVS0CCYRAM0F15OVR4片Am290116位的运算器四位标志位FLAGGAL形成右移输入信号SHIFTGAL最低位进位SHIFTGAL形成左移输入信号SHIFTGAL左移信号0,1,RAM0,Q0,RAM150CQ15/F15.控制器.TEC-XP硬布线控制器.硬布线控制器的组成和功能TEC-XP是一台硬件、软件组成相对完整的计算机系统,机器字长16位,可以使用硬布线方案或者微程序方案的控制器。硬布线控制
23、器(又称组合逻辑)的主体部分由程序计数器PC(16位长度,是Am2901的R5),指令寄存器IR(16位长度),节拍发生器(4位触发器的节拍状态)和时序控制信号形成部件(1片100条引脚的现场可编程的CPLD器件)4部分组成,框图如图所示。程序计数器PC用于保存下一条将要执行的指令在内存中的单元地址,有增量功能(PC+1PC),并可以接受新的指令地址。在到内存读取指令之前,需要把PC中的内容送到内存地址寄存器,给出被读指令在内存中的单元地址。在教学计算机中,程序计数器PC选用运算器内部的一个16位的累加器实现。指令寄存器IR用于保存当前正在执行的指令的主要内容,在读取指令的周期接收从内存中读出
24、来的一条指令,以便提供本指令的操作码和使用的数据或者数据地址。在教学计算机中,指令寄存器IR选用两片由8位的D触发器构成的寄存器实现。节拍发生器Timing用于使用几个触发器的不同的编码状态来区分和标示指令的执行步骤,指令执行步骤的衔接是通过节拍发生器的编码状态转换完成的。在教学计算机中,节拍发生器Timing选用一片简单PLD器件GAL20V8芯片实现。时序控制信号产生部件用于产生并提供每一条指令的每一个执行步骤使用的全部时序控制信号,它要依据指令寄存器的操作码和节拍发生器的状态编码信号,可能还有运算器运算产生的标志位信号(C、Z、S)等,通过由与_或两级门电路产生并提供出一条指令的一个执行
25、步骤使用的全部控制信号,这些信号可以直接送到每个被控制对象,或者经过译码器送到被控制对象。在教学计算机中,时序控制信号产生部件选用一片有100个引脚的 CPLD 器件实现,两个译码器选用三八译码器 74LS138 芯片实现。. 教学计算机的指令执行流程按照TEC-XP教学计算机指令的功能和它们的执行步骤,可把指令划分成为如下4组。A组: 基本指令 ADD,SUB, AND,OR,XOR,CMP, TEST,MVRR,INC, DEC,SHR,SHL,JR,JRC,JRNC,JRZ,JRNZ扩展指令 ADC,SBB, NOT,RCL,RCR,ASR, STC,CLC,EI,DI, JRS,JRN
26、S, JMPRB组: 基本指令 LDRR,STRR, PUSH,POP,PSHF,POPF,MVRD, IN,OUT, JMPA, RETC组: 扩展指令 CALR,LDRA,STRA,,LDRX,STRXD组: 基本指令 CALA扩展指令 TRETA组指令完成的是通用寄存器之间的数据运算或传送,和其它几项特殊的操作,例如CLC和STC指令,在读取指令之后可一步完成。B组指令完成的是一次内存读、写操作,或一次IO设备的读、写操作,在读取指令之后可二步完成,第一步用于向地址寄存器送入16位的(或8位的IO端口)地址,第二步完成内存或外围设备的读、写操作。C组指令中的4条指令,完成的是2次内存储器
27、的读、写操作,正常情况要用4步完成,每一次内存储器的读、写操作,都要经过传送地址和数据读写这样两步;但在这里却只需要3步即可,因为头一次读出的数据就是下一次读写操作要使用的地址信息,读出之后直接(或经过一次加法运算)将其写入地址寄存器,就可以省掉第二次内存储器的读、写操作过程中的需要的传送地址的步骤。CALR指令先用2步保存PC内容(子程序调用指令的后续指令地址)到堆栈,第3步把寄存器中的子程序入口地址传送到程序计数器PC中。D组指令完成的也是2次内存储器的读、写操作,在读取指令之后可4步完成。划分指令执行步骤和安排每个步骤所执行的处理功能,得到的设计结果,即指令执行流程如图2-所示。在4组指
28、令中,属于B组的指令都是基本指令,属于C组的指令都是扩展指令,在A组、D组中都同时含有基本指令和扩展指令。无读 取 指 令 B组指令D组指令C组指令01100101001100100111传送地址AR 地址AR PC,PC PC+1寄存器之间的数据运算或传送0000读写内存或寄存器间传送R4 0, 关中断0100A组指令读、写内存或读、写外设读内存,IR 读出指令检查有无中断请求传送地址AR 地址B、C、D组指令1000按RESET键下面对图中的每个符号及其含义进行必要说明。图中的每一个方框代表一个节拍,表示指令的一个执行步骤。方框内部的文字简要说明在该节拍中应该完成的主要操作功能。方框之间的
29、带箭头的连线表示节拍状态的转换次序和方向。箭头线旁边有文字说明的,表示从前一个节拍转换为当前节拍的条件,没有文字说明的,表示无条件地从前一个节拍转换为当前节拍。每个方框左上角的4位数字,是为该节拍分配的节拍状态编码。节拍发生器的逻辑设计与线路实现节拍发生器的作用,是用多位触发器的输出信号的不同组合状态,来标识每条指令的执行步骤。设计节拍发生器的线路,就是确保它按照图2-17规定的功能完成节拍状态转换。在TEC-XP教学计算机系统中,节拍发生器是用一片GAL20V8器件实现的。GAL20V8器件本身可以运行在组合逻辑方式,也可以运行于触发器逻辑方式,并且实现的正好是与或两级逻辑关系。下表给出了对
30、节拍发生器的设计结果。在表达式中,T0、T1、T2、T3是节拍发生器的4位触发器,IR15IR8 是指令的8位操作码,RESET是系统总清按键给出的信号,INT表示中断请求信号(暂未用),C_M# 是区分组合逻辑或微程序两种控制器的一位控制信号,高电平代表选用组合逻辑控制器,低电平代表选用微程序控制器。NC表示未使用的引脚。可以按照图2-17给出的状态转换关系(有限状态机的状态图),设计出用GAL20V8芯片实现此项功能的每一个触发器状态变化的逻辑表达式。. 教学计算机的时序控制信号形成部件1. 确定控制器应提供的控制信号教学计算机的总体组成情况,部件之间的连接关系,即数据传送的通路,如图2-
31、18所示。控制器的功能,是向计算机各个功能部件提供它们协同运行所需要的控制信号。应该向各功能部件提供出哪一些控制信号,是由被控制部件的组成情况和运行原理所决定的。下面结合教学计算机的总体组成和部件之间的连接,从各个部件实际需求的角度,来分析并决定控制器部件需要为它们提供哪一些控制信号,并看一下它们各自的控制作用。2教学计算机各部件的连接关系:运算器部件的输入只来自于教学机的内部总线。运算器部件的输出可以: (1)直接送地址寄存器;(2)经开关门送到内部总线。内部总线可以接收5路数据来源:(1) 运算器的16位输出数据; (2) 16位的中断向量;(3) 指令寄存器的低8位内容和 8位的补码符号
32、扩展;(4) 8位的程序状态字内容; (5) 16位数据开关送来的手拨数据。请注意,内部总线还可以经双向三态门接收从外部总线送来数据或指令,这是通过另外的控制方式实现的,与对前5路数据来源的选择分开来处理,逻辑关系上显得更加合理。内部总线的内容可以送到:(1) 运算器的输入端; (2) 指令寄存器;(3)状态位寄存器; (4) 通过双向三态门送到外部总线。两个需要控制其是否接受输入的寄存器:(1) 指令寄存器,输入来自内部总线,保存的是指令的第一个字的内容;(2) 地址寄存器,输入来自运算器的输出,其输出就是地址总线,用作为访问内存的地址或IO设备的端口的地址。.微程序控制器部件的技术说明微程
33、序控制器的基本组成如图2-11所示,由程序计数器PC(选用运算器内部的一个累加器实现,在图中用虚线框表示),指令寄存器IR,控制存储器,微指令寄存器,以及微指令下地址形成芯片Am2910(微程序定序器)、微指令转移条件判断线路、微地址映射部件组成。在具体实现中,为了方便调试,还安排了用于显示的当前微地址寄存器。.Am2910芯片的内部组成和功能说明Am2910芯片的内部组成如图2-12所示。Am2910是一片能提供12位微指令地址的器件,即它的输入输出的地址位数和器件内的部件位数均为12位,能直接寻址4096条微指令字的空间范围。内部组成包括一个四输入的多路地址选择器,用来从寄存器/计数器(R
34、/C),直接输入(D),微程序计数器(mPC)或微堆栈(F)四个输入中,选择其一作为下一条微指令的地址。寄存器/计数器用作寄存器时,主要用于保存一个微地址,用以实现微程序转移;当它用作计数器时,具有减一功能(何时减一,取决于Am2910的命令码),主要用于控制微程序的循环次数。微程序计数器由增量器和寄存器mPC组成。当增量器的进位输入C1为高电平时,多路器的输出Y加1后装入mPC(即mPCY+1),用于实现微程序的顺序执行;而当C1为低电平时,多路器的输出Y直接装入mPC(即mPCY),用于实现同一条微指令的多次执行。微堆栈是由5个字的寄存器堆栈和微堆栈指针mSP组成,主要用于保存微子程序调用
35、时的返回地址和微程序循环的首地址。微堆栈指针mSP总是指向最后一次压入的数据,因此,执行微程序循环时,允许不执行弹出操作而直接访问微堆栈的栈顶。当微堆栈中的数据达到5个时,就发出微堆栈已满信号(/FULL=0),这时,任何压入操作都将覆盖掉栈顶的原有数据。Am2910输出3个使能信号:/PL、/MAP和/VECT,用以决定直接输入D的来源。当 /PL有效时(即/PL=0),D来源于微指令的下地址字段,用于给出微程序转移地址;当/MAP有效时(即/MAP=0),D来源于MAPROM,用于实现从机器指令的操作码找到相应的微程序段首地址;当/VECT有效时,(即/VECT=0),选择D的另一路来源,
36、目前的系统中未使用。命令译码器接收外部送来的命令码I3I0,条件输入/CC和条件允许/CCEN信号,并对其译码,产生芯片内工作需要的控制信号和外部要用的三个控制选择信号/PL、/MAP和/VECT。Am2910引脚的定义汇总(1)输入信号:D11-D0:外部直接输入的数据,既可作为寄存器/计数器的初值,也可以经过地址多路选择器直接从Y输出,作为下一条微指令的地址。I3-I0:Am2910的命令码,来自微指令字的相关字段,用以选择Am2910的16条命令之一。/CCEN和/CC:共同确定测试条件是否通过,若/CCEN为低且/CC为高,则指明测试失效;而/CCEN为高或/CC为低,均表明测试通过。
37、若把/CCEN接地,即使其恒为低电平,则可以只使用/CC判断测试结果,/CC为低是测试通过,/CC为高则表明测试失效,在教学计算机中就是这样用的。此时它与命令码I3I0共同决定给出下一条微指令地址的方案和对微堆栈的操作。/RLD:寄存器/计数器装入信号,当其为低电平时,不管Am2910所执行的命令和测试条件如何,都强制把直接输入D11-D0装入Am2910内部的寄存器/计数器。CI:增量器进位输入,当其为高电平时,控制微指令地址增量,即执行mPCY+1,当其为低电平时,执行mPCY。/OE:Y输出允许信号,低电平有效,为低电平时Y输出为正常电平,否则为高阻态。CP:时钟脉冲信号,由低变高的上升
38、边沿触发所有内部状态的变化。(2)输出信号:Y11-Y0:下一条微指令的地址,它直接被用作为读控制存储器的地址。/FULL:微堆栈满信号,低电平有效。/PL,/MAP,/VECT:3个使能信号,用于决定直接输入D的3个来源,加上多路地址选择器的另外3个输入R、F、mFC,Y11Y0的输出的值可以实现六选一。Am2910的功能与具体用法表2-7给出了Am2910所完成的功能,这些功能由命令码I3-I0、条件输入/CC、/CCEN以及计数器当前值的组合结果来决定。表3-7 Am2910常用的功能及其控制完成功能R/C内容R/C操作使能信号/CCEN=0/CC高/CC低Y输出堆栈Y输出堆栈01初始化
39、条件转微子程序/PL/PL0mPC清除/0D清除压入23指令功能分支条件转移/MAP/PLDmPC/DD/46入栈,R/C装数转中断向量注1/PL/VECTmPCmPC压入/mPCD压入/8R/C微子程序非零循环非零减1/PLF/F/零/PLmPC弹出mPC弹出1014条件返回顺序执行/PL/PLmPCmPC/FmPC弹出/15三路转移非零减1/PLF/mPC弹出零/PLD弹出mPC弹出注1:若测试失败则保持,否则就装数。 mPC:微指令计数器 D:直接输入注2:图中符号/表示保持原内容不变。 R/C:寄存器/计数器 F:微堆栈栈顶. 组合逻辑控制器它的设计过程如下:( l) 根据实际需要确定
40、指令系统( 指令的条数与指令功能) ;( 2 ) 根据给定的数据通路和指令功能, 排列出每条指令的操作控制步骤;( 3 ) 确定机器的状态周期、节拍与工作脉冲;( 4) 将每条指令具体落实到机器的状态周期节拍与工作脉冲中, 列出每个操作控制信号的逻辑表达式;( 5) 所有的操作控制信号的逻辑表达式组成了一个复杂的逻辑网络, 用合适的逻辑器件实现从上面的过程可以看出, 组合逻辑控制器由于是硬连线实现, 调试不方便, 而且一旦实现, 就无法修改, 更别说自己来设计指令了.为了增加控制器设计的灵活性和便于扩充, 现在的C P U 都采用微程序控制器. 也正是在这类计算机才有可能扩充指令. 微程序控制
41、器() 用微程序方法来实现机器指令叫微程序控制器.它是用软件的方法来实现机器指令.() 图1 是微程序控制器的典型原理图.与组合逻辑控制器不同, 它把一条机器指令的执行过程用一段微程序来实现. 这样做的优点是, 如果修改或增加微程序就可以改变指令系统, 能否实现的主要因素是存储器的速度.我们知道, 机器程序代码是存放在主存中的, 而由于微程序也是存放在存储器中的, 这样执行一条机器指令就需要访问多次存储器.由于制造工艺的原因, 早期的存储器的访问速度不快, 所以以前的控制器不能用微程序来实现.现在, 由于存储器的速度得到极大提高, 故现在的控制器大都采用微程序控制器.() 微程序控制器的工作原
42、理如下: 机器加电以后执行的第一条微指令地址( 微程序入口) 来自专门的硬件电路,控制实现取指令操作, 然后由指令操作码产生后续微地址, 接下去, 若顺序执行微指令, 则将现行微地址( 在程序计数器p P C 中) +l 产生后续地址.若遇到转移类指令, 则由专门的硬件电路产生下条微指令地址一条机器指令的微程序执行完毕后又回到取指令用的微程序段, 这样循环往复直至关机.设计微程序现将微程序的开发过程叙述如下: 假设要设计这样一条指令: 把用绝对地址表示的内存单元A 中的内容与内存单元B 中的内容相加, 结果存于B 中.指令格式:4D x x ,A D D R I,A D D R Z 三字( 控
43、存入口l 0( )h ). 功能: 【A D n R Z A D D R l l + 【A D o R Z , 其中地址是16 位的.设计: 取【A D D R I 内容于Q 中( Q 是一个专用寄存器, 只能在编写微程序时使用) ; 取【A D D RZ 内容与Q相加, 存于Q 中; 将Q 中内容存入IA D D R ZI 中. 微程序:00 0E 00 AD B5 54 02 :PC AR,PC PC+100 0E 00 10 F0 00 02 :MEM AR00 0E 00 00 F0 00 00 :MEM Q00 0E 00 AD B5 54 02 :PC AR ,PCPC+100 0
44、E 00 10 F0 00 02 :MEM AR00 0E 00 00 E0 00 00 :MEM+QQ29 03 00 10 20 00 10 :Q MEM,CC#=设计完毕后, 可以通过程序来验证:( 1) 先用“ E ” 监控命令将微程序写入9X() h 开始的内存单元:( 2) 执行以下程序将微程序从内存单元传入微控存;m o v R 1900 : 内存地址m o v R 2,7 : 微指令条数m o v R 3,100 ; 控存地址L D M CR E T( 3) 执行以下程序验证指令的正确性:m o v RO,0024m o v 0 A 00,R Om o v 0 A 0 1,R
45、OD400 0A00 0A01 R E T( 4 ) 查看结果:EA00:0A00=0024 0A01=0048三实验介绍. 基础汇编语言程序.实验目的:1. 学习和了解TEC-XP教学实验系统监控命令的用法;2. 学习和了解TEC-XP教学实验系统的指令系统;3. 学习简单的TEC-XP教学实验系统汇编程序设计;.实验内容:1. 学习联机使用TEC-XP教学实验系统和仿真终端软件PCEC;2. 使用监控程序R命令显示/修改寄存器内容、D命令显示存储器内容、E命令修改存储器内容;3. 使用A命令写一小段汇编程序,U命令反汇编刚输入的程序,用G命令连续运行该程序,用T、P命令单步运行并观察程序单
46、步执行情况;.完成情况基本完成书上要求的内容。.体会这次试验对我来说最大的收获是对于存储器地址与数据之间的关系的认识,改变了我以往的错误观念,这是我最大的收获其次,按照书上的步骤一步一步来操作,比较容易,但理解每一步操作也是非常困难的,这是花费我最多时间的地方最后,这次试验让我们对于软硬件结合有了个亲自体验的机会,这是十分珍贵的。. 脱机运算器实验.实验目的:深入了解AM2901运算器的功能与具体用法,4片AM2901的级联方式,深化运算器部件的组成、设计、控制与使用等诸项知识。.实验内容:将教学机左下方的5个拨动开关置为1XX00,先按一下“RESTART”按键,然后再按一下“START”按
47、键,进行初始化; 接下来,按下表所列的操作在机器上进行运算器脱机实验,将结果填入表中:其中D1取为0101H,D2取为1010H,通过两个12位的红色微型开关向运算器提供控制信号,通过16位数开关向运算器提供数据,通过指示灯观察运算结果及状态标记;.完成情况基本完成实验书上要求的内容。.体会本次实验还是按照实验指导书上的步骤实验,单独用微型开关对其进行控制,以完成其运算功能,并通过前面的理论学习了解了AM2901运算器的功能及其用法。本次实验过程中遇到的主要问题是对教学计算机的各部分功能不是很熟悉,导致在开始观察CZVS和ALU时出现了错误,但在后面老师讲解后改正了。.组合逻辑控制器实验.实验
48、目的:通过看懂教学计算机中已经设计好的并正常运行的几条典型指令(例如,ADD,SHR,OUT,MVRD,JRC,RET,CALA等指令)的功能、格式和执行流程。其最终达到的目的是:()深入理解计算机控制器的功能、组成知识;()深入学习计算机各类典型指令执行流程;()对指令格式、寻址方式、指令系统、指令分类等建立具体的总体概念;.实验内容:(1)完成控制器不见的教学实验,主要内容是由学生设计几条指令的功能、格式和执行流程,并在教学计算机上实现、调试正确。(2)首先是看懂TEC-XP教学计算机的功能部件组成和线路逻辑关系,然后分析教学计算机中已经设计好的并正常运行几条经典指令(例如ADD,SHR,
49、OUT,MVRD,JRC,RET,CALA等指令)的功能、格式和执行流程。(3)设计几条指令的功能、格式和执行流程,并在教学计算机上实现、调试正确。例如ADC、JRS、JRNS、LDRA、STOR、JMPR等指令。 (4)单挑与运行指令,查看指令的功能、格式和执行流程。(5)用监控程序的A、E命令编写一段小程序,观察运行结果。.完成情况基本完成书上要求的内容。.体会今天的实验让我们熟悉了典型指令的每个节拍的控制信号的变化规律,通过观察教学机上的指示灯可以直观的看到每一个控制信号的变化。本次实验没什么难度,主要需要仔细的观察实验箱指示灯,避免粗心看错指示灯得到错误的结果。.储存器实验.实验目的:
50、通过看懂教学计算机中已经使用的几个存储器芯片的逻辑连接关系和用完成存储器容量扩展的几个存储器芯片的布线安排,在教学计算机上设计、实并调试出存储器容量扩展的实验内容。其最终要达到的目的是:1、深入理解计算机内存储器的功能、组成知识;2、深入地学懂静态存储器芯片的读写原理和用它们组成教学计算机存储器系统的方法(即字、位扩展技术),控制其运行的方式;3、思考并对比静态和动态存储器芯片在特性和使用场合等方面的同异之处。.实验内容:1、要完成存储器容量扩展的教学实验,需为扩展存储器选择一个地址,并注意读写和OE等控制信号的正确状态;2、用监控程序的D、E命令对存储器进行读写,比较RAM(6116)、EE
51、PROM(28系列芯片)EPROM(27系列芯片)在读写上的异同;3、用监控程序的A命令编写一段程序,对RAM(6116)进行读写,用D命令查看结果是否正确;4、用监控程序的A命令编写一段程序,对扩展存储器EEPROM(28系列芯片)进行读写,用D命令查看结果是否正确;如不正确,分析原因,改写程序,重新运行。.完成情况基本完成书上要求的内容。.体会通过这次实验我了解到ROM芯片和RAM芯片在功能和使用方法等方面的相同和差异之处;学习编程器设备向EEPROM芯片内写入一批数据的过程跟方法的工作原理,我在我预习做实验的时候,阅读到计算机存储器系统由ROM和RAM两个存储区组成,分别由EPROM芯片
52、和RAM芯片构成。TEC-XP教学极端及中还了解到另外几个存储器器件插座,可以插上相应储存器芯片成存储器容量扩展的教学实验,为此必须比较清楚的了解:是我们做实验的一大难点,同时也是我们计算机组成原理的重点。了解到RAM与EEPROM在读写上的异同。如RAM没有断点保存功能,而EEPROM断电会保存;由于EPROM是拓展外部芯片,对其写操作需要一定的时间。需要编写一个延迟子程序来达成操作。. 微程序控制器实验.实验目的:通过看懂教学计算机中已经设计好并正常运行的数条基本指令(例如,ADD、MVRD、OUT、MVTD、JR、RET等指令)的功能、格式和执行流程,然后自己设计几条指令的功能格式和执行流程,并在教学计算机上实现、调试正确。其最终要达到的目的是:1、深入
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年家教笔试题及早教师答案
- 2025年航空器件维修工程师执业资格考试试题及答案解析
- 2025年国际商务律师专业资格认证考试试题及答案解析
- 2025年电子商务运营专员职业技术考核试卷及答案解析
- 课件专利申请流程及费用
- 教学课件评语大全初中版
- 课件《水浒传》教学课件
- 2025年安全管理考试题库与答案系统
- 机电城消防知识培训总结课件
- 2025年工业生产自动化工程师技能鉴定考试试题及答案解析
- 胃肠疾病预防与健康管理
- 2025年全国新高考英语II卷试题解析及复习备考策略(课件)
- 全球化背景下文化自信的传承与创新
- 合规监督概念课件
- 电力变压器智能数字孪生体的构建与展望
- 无锡金栢精密模具有限公司搬迁项目环评资料环境影响
- 放射防护监测原始记录表模板
- 2025-2030中国奶酪行业市场发展现状及竞争格局与投资前景研究报告
- 垫资过桥合同协议
- 规范化司法所模板
- 水泥混凝土旧路面拆除施工方案
评论
0/150
提交评论