《计算机组成原理》试验报告班级学号姓名指导教师第一章系统概述1.1DJ-CPTH简介DJ-CPTH型计算机组成原理实验系统以下简称系统,是由江苏启东市东疆计算机有限公司结合国内同类产品的优点,最新研制开发的超强型实验计算机装置以下简称模型机。该系统采用单片机管理和EDA控制技术,自带键盘和液晶显示器,支持脱机和联PC机两种工作模式,运用系统监控和数码管等实时监视,全面动态管理模型机的运行和内部资源。模型机软硬件配置完整,支持8位字长的多种寻址方式,指令丰富,系统支持RS-232C串行通讯,并配有以win98/2000/XP为操作平台的动态跟踪集成调试软件,示教效果极佳,特别适用于计算机组成原理课程的教学与实验。1.2DJ-CPTH特点1、采用总线结构总线结构的计算机具有结构清晰,扩展方便等优点。DJ-CPTH实验系统使用三组总线即地址总线ABUS、数据总线DBUS、指令总线IBUS和控制信号,CPU、主存、外设和管理单片机等部件之间通过外部数据总线传输,CPU内部则通过内部数据总线传输信息。各部件之间,通过三态缓冲器作接口连接,这样一方面增强总线驱动能力,另一方面在模型机停机时,三态门输出浮空,能保证不管模型机的CPU工作是否正常,管理单片机总能读/写主存或控存。2、计算机功能模块化设计DJ-CPTH为实验者提供运算器模块ALU,众多寄存器模块(A,W,IA,ST,MAR,R0…R3等),程序计数器模块PC,指令部件模块IR,主存模块EM,微程序控制模块〈控存〉uM,微地址计数器模块UPC,组合逻辑控制模块及I/O等控制模块。各模块间的电源线、地线、地址总线和数据总线等已分别连通,模块内各芯片间数据通路也已连好,各模块的控制信号及必要的输出信号已被引出到主板插孔,供实验者按自己的设计进行连接。3、智能化控制系统在单片机监控下,管理模型机运行和读写,当模型机停机时,实验者可通过系统键盘,读写主存或控存指定单元的内容,使模型机实现在线开发。模型机运行时,系统提供单步一条微指令(微单步)、单步一条机器指令(程单步),连续运行程序及无限止暂停等调试手段,能动态跟踪数据,流向、捕捉各种控制信息,实时反映模型机现场,使实验者及时了解程序和微程序设计的正确性,便以修改。4、提供两种实验模式①手动运行“Hand……”:通过拨动开关和发光二极管二进制电平显示,支持最底层的手动操作方式的输入/输出和机器调试。②自动运行:通过系统键盘及液晶显示器或PC机,直接接输入或编译装载用户程序机器码程序和微程序,实现微程序控制运行,运用多种调试手段运行用户程序,使实验者对计算机组成原理一目了然。5、开放性设计运算器采用了EDA技术设计,随机出厂时,已提供一套已装载的方案,能进行加、减、与、或、带进位加、带进位减、取反、直通八种运算方式,若用户不满意该套方案,可自行重新设计并通过JTAG口下载。逻辑控制器由CPLD实现,也可进行重新设计并通过JTAG口下载。用户还可以设计自己的指令/微指令系统。系统中已带三套指令/微程序系统,用户可参照来设计新的指令/微程序系统。系统的数据线、地址线、控制线均在总线接口区引出,并设计了40芯锁进插座,供用户进行RAM、8251、8255、8253、8259等接口器件的扩展实验。6、支持中断实验采用最底层的器件设计,让学生可以从微程序层面上学习中断请求、中断响应、中断处理、中断入口地址的产生、中断服务程序及中断返回(RETI)整个过程。7、支持两种控制器实验系统提供两种控制器方式,即微程序控制器和组合逻辑控制器。在微程序控制器中,系统能提供在线编程,实时修改程序,显示程序并进行调试的操作环境。组合逻辑控制器,已下载有一套完整的实验方案,用户也可使用CPLD工具在PC机上进行自动化设计。8、支持子程序调用、返回、指令流水线和RISC精简指令系统实验。9、配备以Win98/2000/XP为操作平台的集成调试软件包系统支持RS-232C串行通讯,借助PC资源形成了强大的在线文档与图形的动态管理系统,自带编译器,支持汇编语言的编辑、编译、调试,一次点击即可完成程序和与其对应微程序的链接装载并自动弹出调试窗口,在主界面中开辟了程序和与其对应微程序的调试、模型机结构示意图(点击各模块即可修改双向模块参数)、微程序等跟踪显示窗口,供用户选择,可动态显示数据流向、实时捕捉数据、地址、控制总线的各种信息,使调试过程极为生动形象。1.3实验系统组成CPTH计算机组成原理实验系统由实验平台、开关电源、软件三大部分组成。实验平台上有寄存器组R0-R3、运算单元、累加器A、暂存器W、直通/左移/右移单元、地址寄存器、程序计数器、堆栈、中断源、输入/输出单元、存储器单元、微地址寄存器、指令寄存器、微程序控制器、组合逻辑控制器、扩展单元、总线接口区、微动开关/指示灯、逻辑笔、脉冲源、管理单片机、24个按键、字符式LCD、RS232。第二章模型机模块实验对于硬件的描述可以有多种方法:如原理图,真值表,高级语言(本手册使用ABEL/VHDL),时序图等,在本手册中可以使用以上的四种方式来综合描述硬件。2.1寄存器实验实验要求:利用CPTH实验仪上的K16..K23开关做为DBUS的数据,其它开关做为控制信号,将数据写入寄存器,这些寄存器包括累加器A,工作寄存器W,数据寄存器组R0..R3,地址寄存器MAR,堆栈寄存器ST,输出寄存器OUT。实验目的:了解模型机中各种寄存器结构、工作原理及其控制方法。实验电路:寄存器的作用是用于保存数据的,因为我们的模型机是8位的,因此在本模型机中大部寄存器是8位的,标志位寄存器(Cy,Z)是二位的。CPTH用74HC574来构成寄存器。74HC574的功能如下:1.在CLK的上升沿将输入端的数据打入到8个触发器中2.当OC=1时触发器的输出被关闭,当OC=0时触发器的输出数据74HC574工作波形图实验1:A,W寄存器实验寄存器A原理图寄存器W原理图寄存器A,W写工作波形图连接线表:系统清零和手动状态设定:K23-K16开关置零,按[RST]钮,按[TV/ME]键三次,进入Hand......手动状态。在后面实验中实验模式为手动的操作方法不再详述.将55H写入A寄存器二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据55H置控制信号为:按住STEP脉冲键,CK由高变低,这时寄存器A的黄色选择指示灯亮,表明选择A寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据55H被写入A寄存器。将66H写入W寄存器二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据66H置控制信号为:按住STEP脉冲键,CK由高变低,这时寄存器W的黄色选择指示灯亮,表明选择W寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据66H被写入W寄存器。注意观察:1.数据是在放开STEP键后改变的,也就是CK的上升沿数据被打入。2.WEN,AEN为高时,即使CK有上升沿,寄存器的数据也不会改变。实验2:R0,R1,R2,R3寄存器实验寄存器R原理图寄存器R写工作波形图连接线表将11H写入R0寄存器二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据11H置控制信号为:按住STEP脉冲键,CK由高变低,这时寄存器R0的黄色选择指示灯亮,表明选择R0寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据11H被写入R0寄存器。将22H写入R1寄存器二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据22H置控制信号为:按住STEP脉冲键,CK由高变低,这时寄存器R1的黄色选择指示灯亮,表明选择R1寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据22H被写入R1寄存器。将33H写入R2寄存器二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据33H置控制信号为:按住STEP脉冲键,CK由高变低,这时寄存器R2的黄色选择指示灯亮,表明选择R2寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据33H被写入R2寄存器。将44H写入R3寄存器二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据44H置控制信号为:按住STEP脉冲键,CK由高变低,这时寄存器R3的黄色选择指示灯亮,表明选择R3寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据44H被写入R3寄存器。注意观察:1.数据是在放开STEP键后改变的,也就是CK的上升沿数据被打入。2.K1(SB),K0(SA)用于选择寄存器。寄存器R读工作波形图读R0寄存器置控制信号为:这时寄存器R0的红色输出指示灯亮,R0寄存器的数据送上数据总线。此时数据总线指示灯L7...L0为:00010001.将K11(RRD)置为1,关闭R0寄存器输出。读R1寄存器置控制信号为:这时寄存器R1的红色输出指示灯亮,R1寄存器的数据送上数据总线。此时数据总线指示灯L7...L0为:00100010.将K11(RRD)置为1,关闭R1寄存器输出。读R2寄存器置控制信号为:这时寄存器R2的红色输出指示灯亮,R2寄存器的数据送上数据总线。此时数据总线指示灯L7...L0为:00110011.将K11(RRD)置为1,关闭R2寄存器输出。读R3寄存器置控制信号为:这时寄存器R3的红色输出指示灯亮,R3寄存器的数据送上数据总线。此时数据总线指示灯L7...L0为:01000100.将K11(RRD)置为1,关闭R3寄存器输出。注意观察:1.数据在K11(RRD)为0时输出,不是沿触发,与数据打入不同。实验3:MAR地址寄存器,ST堆栈寄存器,OUT输出寄存器寄存器MAR原理图寄存器ST原理图寄存器OUT原理图寄存器MAR,ST,OUT写工作波形图连接线表将12H写入MAR寄存器二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据12H置控制信号为:按住STEP脉冲键,CK由高变低,这时寄存器MAR的黄色选择指示灯亮,表明选择MAR寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据12H被写入MAR寄存器。K14(MAROE)为0,MAR寄存器中的地址输出,MAR红色输出指示灯亮。将K14(MAROE)置为1,关闭MAR输出。将34H写入ST寄存器二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据34H置控制信号为:按住STEP脉冲键,CK由高变低,这时寄存器ST的黄色选择指示灯亮,表明选择ST寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据34H被写入ST寄存器。将56H写入OUT寄存器二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据56H置控制信号为:按住STEP脉冲键,CK由高变低,这时寄存器OUT的黄色选择指示灯亮,表明选择OUT寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据56H被写入OUT寄存器。2.2运算器实验实验要求:利用CPTH实验仪的K16..K23开关做为DBUS数据,其它开关做为控制信号,将数据写累加器A和工作寄存器W,并用开关控制ALU的运算方式,实现运算器的功能。实验目的:了解模型机中算术、逻辑运算单元的控制方法。实验电路:CPTH中的运算器由一片CPLD实现,有8种运算,通过S2,S1,S0来选择,运算数据由寄存器A及寄存器W给出,运算结果输出到直通门D。连接线表将55H写入A寄存器二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据55H置控制信号为:按住STEP脉冲键,CK由高变低,这时寄存器A的黄色选择指示灯亮,表明选择A寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据55H被写入A寄存器。将33H写入W寄存器二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据33H置控制信号为:按住STEP脉冲键,CK由高变低,这时寄存器W的黄色选择指示灯亮,表明选择W寄存器。放开STEP键,CK由低变高,产生一个上升沿,数据33H被写入W寄存器。置下表的控制信号,检验运算器的运算结果注