计算机组成原理第五版实验报告 - 图文 下载本文

实验报告1

实验名称 实验地点 运算器组成:实验微程序控制器方式和独立方式 实验日期 成绩 1.熟悉逻辑测试笔的使用方法。 2.熟悉TEC-8 模型计算机的节拍脉冲T1、T2、T3; 3.熟悉双端口通用寄存器组的读写操作; 实验目的 4.熟悉运算器的数据传送通路; 5.验证74LS181 的加、减、与、或功能; 6.按给定的数据,完成几种指定的算术、逻辑运算运算。 7.按照表中提供的功能自行验证其中几种即可。(独立方式) 1.1微程序控制器 实验原理 双端口寄存器组由1 片EPM7064(U40)(图2.2 中用虚线围起来的部分)组成, 内部包含4 个8 位寄存器R0、R1、R2、R3,4 选1 选择器A,4 选1 选择器B 和1 个2-4 译码器。根据信号RD1、RD0 的值,4 选1 选择器A 从4 个寄存器中选择1 个寄存器送往ALU 的A 端口。根据信号RS1、RS0 的值,4 选1 选择器B 从4 个寄存器中选择1 个寄存器送往ALU 的B 端口。2-4 译码器对信号RD1、RD0 进行译码,产生信号LR0、LR2、LR3、LR4,任何时刻这4 个信号中只有一个为1,其它信号为0。LR3~LR0 指示出被写的寄存器。当DRW 信号为1 时,如果LR0 为1, 则在T3 的上升沿,将数据总线DBUS 上的数写入R0 寄存器,余类推。 数据开关SD7~SD0 是8 个双位开关。用手拨动这些开关,能够生成需要的SD7~SD0 的值。数据开关驱动器SWD 是1 片74 LS 244(U50)。在信号SBUS 为1 时,SD7~SD0 通过SWD 送往数据总线DBUS。在本实验中,使用数据开关SD7~SD0 设置寄存器R0、R1、R2 和R3 的值。 ALU 由2 片74LS181(U41 和U42)、1 片74LS74、1 片74 LS 244、1 片74 LS 245 和1 片74LS30 构成。74LS181 完成算术逻辑运算,74 LS 245 和74 LS 30 产生Z 标志,74 LS 74 保存标志C 和标志Z。ALU 对A7~A0 和B7~B0 上的2 个8 位数据进行算术逻辑运算,运算后的数据结果在信号ABUS 为1 时送数据总线DBUS(D7~D0),运算后的标志结果在T3 的上升沿保存进位标志位C 和结果为0 标志位Z。加法和减法同时影响C 标志和Z 标志,与操作和或操作只影响Z 标志。 应当指出,74LS181 只是许多种能做做算术逻辑运算器件中的一种器件,这里它仅作为一个例子使用。 74LS181 能够进行4 位的算术逻辑运算,2 片74 LS 181 级连在一起能够8 位运算,3 片74LS181 级连在一起能够进行12 位运算,余类推。所谓级联方式,就是将低4位74LS181的进位输出引脚Cn+4______与高4位74LS181的进位输入引脚Cn___连接。在TEC-8模型计算机中,U42完成低4位运算,U41完成高4位运算,二者级连在一起,完成8位运算。在ABUS为1时,运算得到的数据结果送往数据总线DBUS。数据总线DBUS有4个信号来源:运算器、存储器、数据开关和中断地址寄存器,在每一时刻只允许其中一个信号源送数据总线。 序列号 名 称 数 量 备 注 1 实验设备\\软件\\平台等 TEC-8 实验系统 1 台 2 双踪示波器 1 台 3 直流万用表 1 块 4 逻辑测试笔 1 支 在实验箱上方 实 验 内 容 与 实 验 记 录(拓扑图\\配置图\\流程图\\线路图\\效果图\\代码(段)\\运行结果\\实验步骤等) 实验步骤 1.实验准备 将控制器转换开关拨到微程序位置,将编程开关设置为正常位置,将开关DP拨到向上位置。打开电源。 2.用逻辑测试笔测试节拍脉冲信号T1、T2、T3 ⑴将逻辑测试笔的一端插入TEC-8实验台上的“逻辑测试笔”上面的插孔中,另一端插入“T1”上方的插孔中。 ⑵按复位按钮CLR,使时序信号发生器复位。 ⑶按一次逻辑测试笔框内的Reset按钮,使逻辑测试笔上的脉冲计数器复位,2个黄灯D1、D0均灭。 ⑷按一次启动按钮QD,这时指示灯D1、D0的状态应为01B,指示产生了一个T1脉冲;如果再按一次QD按钮,则指示灯D1、D0的状态应当为10B,表示又产生了一个T1脉冲;继续按QD按钮,可以看到在单周期运行方式下,每按一次QD按钮,就产生一个T1脉冲。 ⑸用同样的方法测试T2、T3。 3.进行加、减、与、或实验 ⑴设置加、减、与、或实验模式 按复位按钮CLR,使TEC-8实验系统复位。指示灯μA5~μA0显示00H。将操作模式开关设置为SWC=1、SWB=0、SWA=1,准备进入加、减、与、或实验。 按一次QD按钮,产生一组节拍脉冲信号T1、T2、T3,进入加、减、与、或实验。 ⑵设置数A 指示灯μA5~μA0显示0BH。在数据开关SD7~SD0上设置数A。在数据总线DBUS指示灯D7~D0上可以看到数据设置的正确不正确,发现错误需及时改正。设置数据正确后,按一次QD按钮,将SD7~SD0上的数据写入R0,进入下一步。 ⑶设置数B 指示灯μA5~μA0显示15H。这时R0已经写入,在指示灯B7~B0上可以观察到R0的值。在数据开关SD7~SD0上设置数B。设置数据正确后,按一次QD按钮,将SD7~SD0上的数据写入R1,进入下一步。 ⑷进行加法运算 指示灯μA5~μA0显示16H。指示灯A7~A0显示被加数A(R0),指示灯B7~B0显示加数B(R1),D7~D0指示灯显示运算结果A+B。按一次QD按钮,进入下一步。 ⑸进行减法运算 指示灯μA5~μA0显示17H。这时指示灯C(红色)显示加法运算得到的进位C,指示灯Z(绿色)显示加法运算得到的结果为0信号。指示灯A7~A0显示被减数A(R0),指示灯B7~B0显示减数B(R1),指示灯D7~D0显示运算结果A-B。按一次QD按钮,进入下一步。 ⑹进行与运算 指示灯μA5~μA0显示18H。这时指示灯C(红色)显示减法运算得到的进位C,指示灯Z(绿色)显示减法运算得到的结果为0信号。 指示灯A7~A0显示数A(R0),指示灯B7~B0显示数B(R1),指示灯D7~D0显示运算结果A and B。按一次QD按钮,进入下一步。 ⑺进行或运算 指示灯μA5~μA0显示19H。这时指示灯Z(绿色)显示与运算得到的结果为0信号。指示灯C保持不变。指示灯A7~A0显示数A(R0),指示灯B7~B0显示数B(R1),指示灯D7~D0显示运算结果A or B。 按一次QD按钮,进入下一步。 ⑻结束运算 指示灯μA5~μA0显示00H。这时指示灯Z(绿色)显示或运算得到的结果为0信号。指示灯C保持不变。 按照上述步骤,对要求的7组数据进行运算。 实验结果 实验数据 数A 0F0H 03H 数B 加 数据结果 10H 05H 0H 08H C Z 0 0 0 0 减 数据结果 E0H FEH C Z 1 1 0 0 实验结果 与 数据结果 10H 01H Z 0 0 或 数据结果 F0H 07H Z 0 0 1.2 独立方式 上图标识出了本实验所用的运算器数据通路图。参与运算的数据首先通过试验台操作板上的8个二进制数据开关SD7-SD0来设置,然后输入到双端口通用寄存器堆RF中。 双端口寄存器堆RF由1个ALTERA EPM 7064实现,功能相当于4个八位通用寄存器,用于保存参与运算的数据,运算后的结果也要送到双端口通用寄存器堆RF中保存。双端口寄存器堆模块RF的控制信号中RD1、RD0用于选择送ALU的A端口(左端口)的通用寄存器。RS1、RS0用于选择送ALU的B端口(右端口)的通用寄存器。 按图所示,将运算器模块与实验台操作板上的线路进行连接。由于运算器模块内部的连线已经由印制电路板连接好,故接线任务仅仅是完成数据开关、控制信号模拟开关、与运算模块的外部连线。特别注意:为了建立清楚的整机概念,培养严谨的科研能力,手工连线是绝对有必要的。 2.用开关K15-K0向通用寄存器堆RF内的R3-R0寄存器置数据。然后读出R3-R0的数据,在数据总线DBUS上显示出来。 3.验证ALU的正逻辑算术、逻辑运算功能。 注意:进位信号C是运算器ALU最高进Cn+4的反,既有进位为1,无进位为0。 选择方式 S3 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 S2 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 M=1逻辑运算 S1 S0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 M=0算术运算 逻辑运算 CN=1【有进位】 F=/A F=A F=/(A+B) F=(A+B) F=(/A)B F=A+/B F=0 F=-1(补码形式) F=/(AB) F=A加A(/B) F=/B F=(A+B)加A/B F=A减B减1 F=A/B F=(AB/)减1 F=/A+B F=A加AB F=A加B F=B F=(A+/B)加AB F=AB F=AB减1 F=1 F=A加A F=A+/B F=(A+B)加A F=A+B F=(A+/B)加A F=A F=A减1

4.具体实验步骤:将“控制转换”开关拨到最中间位置既“独立”灯亮。 第一步:测试寄存器写入和读出;【操作模式:1100】 接线表和置开关如下表: 名称 电平控制数据开关 K6 K5 K4 K3 K2 K1 K0 功能 信号名称 RDRD0 DRW SBUS RS1 RS0 MBUS 1 置R0 操作模式 1 1 置R1 写REG操作模式:1100 1 1 1 置R2 1 1 1 置R3 1 1 1 1 备注:写寄存器完成后可以直接在写寄存器操作模式下,通过K6、K5拨动开关查看写入寄存器中的数据,对应的数据灯:A7~A0。通过K2、K1拨动开关也可以查看写入寄存器中的数据,对应的数据灯B7~B0。 第二步:运算器实验【操作模式:1101】 接线表和置开关如下表: 名称 K15 K14 K13 K12 K11 K10 K9 K8 序号 M S0 S1 S2 S3 CIN ABUS LDC 运算器组成操作系统:1101 送两个数到REG,K5K6,K1K2分别选择加与被加 1 1 1 1 1 名称 序号 K7 LDZ 1 K6 RD1 K5 RD0 1 K4 DRW 1 1 K3 SBUS 1 1 K2 RS1 K1 RS0 K0 MBUS 备注:运算器实验答案只提供了加法运算的控制信号,其他运算功能请参考上页中ALU表的运算逻辑功能即可。 实验结果 实验数据 数A 数B 加 数据结C Z 果 0F0H 03H 10H 05H 0H 08H 0 0 0 0 实验结果 减 数据结果 E0H FEH 和微操作系统得出的结果一致。 与 数据结果 10H 01H Z 0 0 或 数据结果 F0H 07H Z 0 0 C Z 1 1 0 0 实验结果分析及结论、心得 分别运用微程序方式和独立方式对双端口通用寄存器进行读写操作,并且进行了简单的逻辑运算和算术运算。微程序较独立简单,独立方式较为清晰的表现了数据的痕迹,通过接线的方式清楚看到每个微程序的动作。 实验报告2

实验名称 实验地点 双端口存储器实验 实验日期 成绩 ⑴了解双端口静态存储器IDT7132 的工作特性及其使用方法; ⑵了解半导体存储器怎样存储和读取数据; 实验目的 ⑶了解双端口存储器怎样并行读写; ⑷熟悉TEC-8 模型计算机中存储器部分的数据通路。 2.1微程序操作 实验原理 双端口存储器实验电路图 双端口RAM 电路 由1 片IDT7132 及少许附加电路组成,存放程序和数据。IDT7132 有2 个端口,一个称为左端口,一个称为右端口。2 个端口各有独立的存储器地址线、数据线和3 个读、写控制信号: CE#、R/W#和OE#,可以同时对器件内部的同一存储体同时进行读、写。IDT7132 容量为2048 字节,TEC-8 实验系统只使用64字节。 在TEC-8实验系统中,左端口配置成读、写端口,用于程序的初始装入操作,从存储器中取数到数据总线DBUS,将数据总线DBUS上的数写入存储器。当信号MEMW为1时,在T2为1时,将数据总线DBUS上的数D7~D0写入AR7~AR0指定的存储单元;当MBUS信号为1时,AR7~AR0指定的存储单元的数送数据总线DBUS。右端口设置成只读方式,从PC7~PC0指定的存储单元读出指令INS7~INS0,送往指令寄存器IR。 程序计数器PC由2片GAL22V10(U53和U54)组成。向双端口RAM的右端口提供存储器地址。当复位信号CLR#为0时,程序计数器复位,PC7~PC0为00H。当信号LPC为1时,在T3的上升沿,将数据总线DBUS上的数D7~D0写入PC。当信号PCINC为1时,在T3的上升沿,完成PC加1。当PCADD信号为1时,PC和IR中的转移偏量(IR3~IR0)相加,在T3的上升沿,将相加得到的和写入PC程序计数器。 地址寄存器AR由1片GAL22V10(U58)组成,向双端口RAM的左端口提供存储器地址AR7~AR0。当复位信号CLR#为0时,地址寄存器复位,AR7~AR0为00H。当信号LAR为1时,在T3的上升沿,将数据总线DBUS上的数D7~D0写入AR。当信号ARINC为1时,在T3的上升沿,完成AR加1。 指令寄存器IR是1片74LS273(U47),用于保存指令。当信号LIR为1时,在T3的上升沿,将从双端口RAM右端口读出的指令INS7~INS0写入指令寄存器IR。 序列名 称 数 量 备 注 号 1 实验系统 1 台 实验设备\\软件\\平台等 2 3 4 双踪示波器 直流万用表 逻辑测试笔 1 台 1 块 1 支 在试验箱上方 实 验 内 容 与 实 验 记 录(拓扑图\\配置图\\流程图\\线路图\\效果图\\代码(段)\\运行结果\\实验步骤等) 实验步骤 1.实验准备 将控制器转换开关拨到微程序位置,将编程开关设置为正常位置。打开电源。 2.进行存储器读、写实验 ⑴设置存储器读、写实验模式 按复位按钮CLR,使TEC-8实验系统复位。指示灯μA5~μA0显示00H。将操作模式开关设置为SWC=1、SWB=1、SWA=0,准备进入双端口存储器实验。 按一次QD按钮,进入存储器读、写实验。 ⑵设置存储器地址 指示灯μA5~μA0显示0DH。在数据开关SD7~SD0上设置地址10H。在数据总线DBUS指示灯D7~D0上可以看到地址设置的正确不正确,发现错误需及时改正。设置地址正确后,按一次QD按钮,将SD7~SD0上的地址写入地址寄存器AR(左端口存储器地址)和程序计数器PC(右端口存储器地址),进入下一步。 ⑶写入第1个数 指示灯μA5~μA0显示1AH。指示灯AR7~AR0(左端口地址)显示10H,指示灯PC7~PC0(右端口地址)显示10H。在数据开关SD7~SD0上设置写入存储器的第1个数85H。按一次QD按钮,将数85H通过左端口写入由AR7~AR0指定的存储器单元10H。 ⑷写入第2个数 指示灯μA5~μA0显示1BH。指示灯AR7~AR0(左端口地址)显示11H,指示灯PC7~PC0(右端口地址)显示10H。观测指示灯INS7~INS0的值,它是通过右端口读出的由右地址PC7~PC0指定的存储器单元10H的值。比较和通过左端口写入的数是否相同。在数据开关SD7~SD0上设置写入存储器的第2个数60H。按一次QD按钮,将第2个数通过左端口写入由AR7~AR0指定的存储器单元11H。 ⑸写入第3个数 指示灯μA5~μA0显示1CH。指示灯AR7~AR0(左端口地址)显示12H,指示灯PC7~PC0(右端口地址)显示11H。观测指示灯INS7~INS0的值,它是通过右端口读出的由右地址PC7~PC0指定的存储器单元11H的值。比较和通过左端口写入的数是否相同。在数据开关SD7~SD0上设置写入存储器的第3个数38H。按一次QD按钮,将第3个数通过左端口写入由AR7~AR0指定的存储器单元12H。 ⑹重新设置存储器地址 指示灯μA5~μA0显示1DH。指示灯AR7~AR0(左端口地址)显示13H,指示灯PC7~PC0(右端口地址)显示12H。观测指示灯INS7~INS0的值,它是通过右端口读出的由右地址PC7~PC0指定的存储器单元12H的值。比较和通过左端口写入的数是否相同。在数据开关SD7~SD0重新设置存储器地址10H。按一次QD按钮,将SD7~SD0上的地址写入地址寄存器AR(左端口存储器地址)和程序计数器PC(右端口存储器地址),进入下一步。 ⑺左、右两2个端口同时显示同一个存储器单元的内容。 指示灯μA5~μA0显示1FH。指示灯AR7~AR0(左端口地址)显示10H,指示灯PC7~PC0(右端口地址)显示10H。观测指示灯INS7~INS0的值,它是通过右端口读出的由右地址PC7~PC0指定的存储器单元10H的值。观测指示灯D7~D0的值,它是从左端口读出的由AR7~AR0指定的存储器单元10H的值。 按一次QD按钮,地址寄存器AR加1,程序计数器PC加1,在指示灯D7~D0和指示灯INS7~INS0上观测存储器的内容。继续按QD按钮,直到存储器地址AR7~AR0为12H为止。 实验结果: 实验数据 左端口存储器地址 通过左端口写入的数据 85H 60H 38H 第一次从右端口读出的数 右端口存储器地址 11H 12H 13H 读出的数 85H 60H 38H 实验结果 同时读出时的读出结果 左端口存储器地址 10H 11H 12H 读出的数 85H 60H 38H 右端口存储器地址 10H 11H 12H 读出的数 85H 60H 38H 10H 11H 12H 2.2独立方式 首先将“控制转换”开关拨到最中间位置既“独立”灯亮。 双端口存储器实验;【操作模式:1110】 名称 序号 1 2 3 4 5 6 7 8 操作模式 1110 K15 SBUS 1 1 1 1 1 K14 ARINC 1 1 1 1 1 1 K13 LAR 1 1 K12 MEMW 1 1 1 1 1 1 K11 MBUS K10 PCINC 1 1 1 K9 LPC 1 1 名称 序号 1 2 3 4 5 6 7 8 K8 ABUS 0 SD 10 85 60 38 10 实验现象 连线对应位置 置AR,PC/AR=PC=10 写第一个数85/AR=11,PC=10,INS=IR=85 写第二个数60/AR=12,PC=10,INS=IR=60 写第三个数38/AR=13,PC=10,INS=IR=38 重置AR,PC/AR=PC=10 AR=PC=10,INS=85 AR=PC=11,INS=60 AR=PC=12,INS=38 备注

实验结果分析及结论、心得 这次实验了解了双端口式的存储器,也是通过微程序操作和独立操作两种方式。 1.独立方式中可以看到,将数据输入要先打开SBUS,DBUS,MBUS这样的开关,这些不同的开关组合起来就可以控制开关存储器。 2.了解了双端口的基本原理。 实验报告3

实验名称 实验地点 实验目的 数据通路实验 实验日期 成绩 ⑴进一步熟悉TEC-8模型计算机的数据通路的结构; ⑵进一步掌握数据通路中各个控制信号的作用和用法; ⑶掌握数据通路中数据流动的路径。 数据通路实验电路图如图所示。它由运算器部分、双端口存储器部分加上数据开关SD7~SD0连接在一起构成。 实验原理 数据通路实验电路图 数据通路中各个部分的作用和工作原理在2.1 节和2.2 节已经做过详细说明,不再重述。这里主要说明TEC-8 模型计算机的数据流动路径和方式。 在进行数据运算操作时,由RD1、RD0 选中的寄存器通过4 选1 选择器A 送往ALU 的A 端口,由RS1、RS0 选中的寄存器通过4 选1 选择器B 送往ALU 的B 端口;信号M、S3、S2、S1 和S0 决定ALU 的运算类型,ALU 对A 端口和B 端口的两个数连同CIN 的值进行算术逻辑运算,得到的数据运算结果在信号ABUS 为1 时送往数据总线DBUS;在T3 的上升沿,数据总线DBUS 上的数据结果写入由RD1、RD0 选中的寄存器。 在寄存器之间进行数据传送操作时,由RS1、RS0 选中的寄存器通过4 选1 选择器B 送往ALU 的B 端口;ALU 将B 端口的数在信号ABUS 为1 时送往数据总线DBUS;在T3 的上升沿将数据总线上的数写入由RD1、RD0 选中的寄存器。ALU 进行数据传送操作由一组特定的M、S3、S2、S1、S0、CIN 的值确定。 在进行运算操作时,由RS1、RS0 选中的寄存器通过4 选1 选择器B 送往ALU 的B 端口;由RD1、RD0 选中的寄存器通过4 选1 选择器A 送往ALU 的A 端口; ALU 对数A 和B 进行运算,运算的数据结果在信号ABUS 为1 时送往数据总线DBUS; 在T3 的上升沿将数据总线上的数写入由RD1、RD0 选中的寄存器。ALU 进行何种运算操作由M、S3、S2、S1、S0、CIN 的值确定。 在从存储器中取数操作中,由地址AR7~AR0 指定的存储器单元中的数在信号MEMW 为0 时被读出;在MBUS 为1 时送数据总线DBUS;在T3 的上升沿写入由RD1、RD0 选中的寄存器。 在写存储器操作中,由RS1、RS0 选中的寄存器过4 选1 选择器B 送ALU 的B端口;ALU 将B 端口的数在信号ABUS 为1 时送往数据总线DBUS;在MEMW 为1 且MBUS 为0 时,通过左端口将数据总线DBUS 上的数在T2 为1 期间写入由AR7~AR0 指定的存储器单元。 在读指令操作时,通过存储器右端口读出由PC7~PC0 指定的存储器单元的内容送INS7~INS0,当信号LIR 为1 时,在T3 的上升沿写入指令寄存器IR。 数据开关SD7~SD0上的数在SBUS为1时送到数据总线DBUS上,用于给寄存器R0、R1、R2和R3,地址寄存器AR,程序计数器PC设置初值,用于通过存储器左端口向存储器写入测试程序。 序列名 称 数 量 备 注 号 1 实验系统 1台 实验设备\\软件\\平台等 2 3 4 双踪示波器 直流万用表 逻辑测试笔 1台 1块 1支 在试验箱上 实 验 内 容 与 实 验 记 录(拓扑图\\配置图\\流程图\\线路图\\效果图\\代码(段)\\运行结果\\实验步骤等) 实验任务 1.将数75H写到寄存器R0,数28H写道寄存器R1,数89H写到寄存器R2,数32H写到寄存器R3。 2.将寄存器R0中的数写入存储器20H单元,将寄存器R1中的数写入存储器21H单元,将寄存器R2中的数写入存储器22H单元,将寄存器R3中的数写入存储器23H单元。 3.从存储器20H单元读出数到存储器R3,从存储器21H单元读出数到存储器R2,从存储器21H单元读出数到存储器R1,从存储器23H单元读出数到存储器R0。 4.显示4个寄存器R0、R1、R2、R3的值,检查数据传送是否正确。 实验步骤 1.实验准备 将控制器转换开关拨到微程序位置,将编程开关设置为正常位置。打开电源。 2.进行数据通路实验 ⑴设置数据通路实验模式 首先将“控制转换”开关拨到最下方位置既“微程序”灯亮。按复位按钮CLR,使TEC-8实验系统复位。指示灯μA5~μA0显示00H。将操作模式开关设置为SWC=1、SWB=1、SWA=1,准备进入数据通路实验。 按一次QD按钮,进入数据通路实验。 ⑵将数75H写到寄存器R0、数28H写到R1、数89H写到R2、数32H写到R3。 。指示灯μA5~μA0显示0FH。在数据开关SD7~SD0上设置数75H。在数据总线DBUS指示灯D7~D0上可以看到数设置得正确不正确,发现错误需及时改正。数设置正确后,按一次QD按钮,将SD7~SD0上的数写入寄存器R0,进入下一步。 依照写R0的方式,在指示灯μA5~μA0显示32H时,在指示灯B7~B0观测寄存器R0的值,将数28H写入R1;在指示灯μA5~μA0显示33H时,在指示灯B7~B0上观测R1的值,将数89H写入R2;在指示灯μA5~μA0显示34H时,在指示灯B7~B0上观测R2的值,将数32H写入R3。 ⑶设置存储器地址AR和程序计数器PC 指示灯μA5~μA0显示35H。此时指示灯B7~B0显示寄存器R3的值。在数据开关SD7~SD0上设置地址20H。在数据总线DBUS指示灯D7~D0上可以看到地址设置得正确不正确。地址设置正确后,按一次QD按钮,将SD7~SD0上的地址写入地址寄存器AR和程序计数器PC,进入下一步。 ⑷将寄存器R0、R1、R2、R3中的数依次写入存储器20H、21H、22H和23H单元。 指示灯μA5~μA0显示36H。此时指示灯AR7~AR0和PC7~PC0分别显示出存储器左、右两个端口的存储器地址。指示灯A7~A0、B7~B0和D7~D0都显示寄存器R0的值。按一次QD按钮,将R0中的数写入存储器20H单元,进入下一步。 依照此法,在指示灯μA5~μA0显示37H时,在INS7~INS0上观测存储器20H单元的值,将R1中的数写入存储器21H单元;在指示灯μA5~μA0显示38H时,在INS7~INS0上观测存储器21H单元的值,将R2中的数写入存储器22H单元;在指示灯μA5~μA0显示39H时,在INS7~INS0上观测存储器22H单元的值,将R3中的数写入存储器23H单元。 ⑸重新设置存储器地址AR和程序计数器PC 指示灯μA5~μA0显示3AH。此时指示灯PC7~PC0显示23H,INS7~INS0显示存储器23H单元中的数。在数据开关SD7~SD0上设置地址20H。按一次QD按钮,将地址20H写入地址寄存器AR和程序计数器PC,进入下一步。 ⑹将存储器20H、21H、22H和23H单元中的数依次写入寄存器R3、R2、R1和R0。 指示灯μA5 ~μA0显示3BH。此时指示灯AR7~AR0和PC7~PC0显示20H,指示灯D7~D0和INS7~INS0同时显示存储器20H中的数,按一次QD按钮,将存储器20H单元中的数写入寄存器R3,进入下一步。 依照此法,在指示灯μA5~μA0显示3CH时,在指示灯B7~B0上观测R3的值,将存储器21H单元中的数写入寄存器R2;在指示灯μA5~μA0显示3DH时,在指示灯B7~B0上观测R2的值,将存储器22H单元中的数写入寄存器R1;在指示灯μA5~μA0显示3EH时,在指示灯B7~B0上观测R1的值,将存储器23H单元中的数写入寄存器R0。 ⑺观测R0的值 指示灯μA5~μA0显示00H。此时指示灯A7~A0显示R0的值,指示灯B7~B0显示R3的值。 实验结果 数据通路实验结果表 μA7~AB7~BD7~DAR PC INS7 R0 R1 R2 R3 A5~0 0 0 μA0 0FH 0H 0H 0H 0 0 38 0H 0 0 0 32H 0H 75 75H 0 0 38 75 0 0 0 33H 0H 28 28 0 0 38 75 28 0 0 34H 0H 89 89 0 0 38 75 28 89 35H 75H 32 32 0 0 38 75 28 89 32 36H 75H 75 25 20 20 B2 75 28 89 32 37H 75H 28 28 21 20 75 75 28 89 32 38H 75H 89H 89 22 21 28 75 28 89 32 39H 75H 32H 32 23 22 89 75 28 89 32 3AH 75H 32H 20 24 23 32 75 28 89 32 3BH 32H 75H 75 20 23 32 75 28 89 32 3CH 89H 75H 28 21 23 32 75 28 89 75 3DH 28H 28H 89 22 23 32 75 28 28 75 3EH 75H 89H 32 23 23 32 75 89 28 75 00H 32H 32H F0 24 23 32 32 89 28 75 数据通路实验:独立方式: 首先将“控制转换”开关拨到最中间位置既“独立”灯亮。【操作模式:1111】 名称 信号名 序列号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 K15 1 1 1 1 1 1 K14 1 1 1 1 1 1 1 1 K13 RD1 1 1 1 1 K12 RD0 1 1 1 1 K11 RS1 1 1 1 1 1 K10 RS1 1 1 1 1 1 K9 MBUS 1 1 1 1 K8 M 1 1 1 1 备注 SBUS DRW 名称 信号名 序列号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 K7 K6 S3 1 1 1 S1 1 1 1 K5 ABUS 1 1 1 1 K4 MEMW 1 1 1 1 K3 LAR 1 1 K2 ARINC 1 1 1 1 1 1 1 1 K1 LPC 1 K0 PCINC 1 1 1 SD 75 28 89 32 20 20 备注

实验结果分析及结论、心得 在数据通路这个实验中,我更加的理解了数据在通路中的流动,在独立方式的过程中,发现要将一个数存入存储器,首先要打开SBUS开关,之后控制(00.01.10.11)4个操作码,将数据选择存入R0.R1.R2.R3这4个寄存器,数据存入对应端口后,在ALU进行运算后打开ABUS将数据在流入总线中。 实验报告4 实验名称 实验地点 微程序控制器实验 实验日期 成绩 ⑴掌握微程序控制器的原理 ⑵掌握TEC-8 模型计算机中微程序控制器的实现方法,尤其是微地址转实验目的 移逻辑的实现方法。 ⑶理解条件转移对计算机的重要性。 实验原理 实验设备\\软件\\平台等 序列号 1 2 3 4 名 称 实验系统 双踪示波器 直流万用表 逻辑测试笔 数 量 1 台 1 台 1 块 1 支 备 注 在试验箱上 实 验 内 容 与 实 验 记 录(拓扑图\\配置图\\流程图\\线路图\\效果图\\代码(段)\\运行结果\\实验步骤等) 1.正确设置模式开关SWC、SWB、SWC,用单微指令方式(单拍开关DP设置为1)跟踪控制台操作读寄存器、写寄存器、读存储器、写存储器的执行过程,记录下每一步的微地址μA5~μA0、判别位P4~P0和有关控制信号的值,写出这4种控制台操作的作用和使用方法。 2.正确设置指令操作码IR7~IR4,用单微指令方式跟踪除停机指令STP之外的所有指令的执行过程。记录下每一步的微地址μA5~μA0、判别位P4~P0和有关控制信号的值。对于JZ指令,跟踪Z=1、Z=0两种情况;对于JZ指令,跟踪C=1、C=0两种情况。 实验步骤 1.实验准备 将控制器转换开关拨到微程序位置,微程序灯亮,将编程开关设置为正常位置,将单拍开关设置为1(朝上)。在单拍开关DP为1时,每按一次QD按钮,只执行一条微指令。 将信号IR4-I、IR5-I、IR6-I、IR7-I、C-I、Z-I依次通过接线孔与电平K0~K5连接。通过拨动开关K0~K5,可以对上述信号设置希望的值。 打开电源。 2.跟踪控制台操作读寄存器、写寄存器、读存储器、写存储器的执行。按复位按钮CLR后,拨动操作模式开关SWC、SWB、SWA到希望的位置,按一次QD按钮,则进入希望的控制台操作模式。控制台模式开关和控制台操作的对应关系如下: 操作模式 功能选择 备注 000 启动程序运行 001 写存储器 010 读存储器 011 读寄存器 100 写寄存器 按一次复位按钮CLR按钮,能够结束本次跟踪操作,开始下一次跟踪操作。 3. 跟踪指令的执行 按复位按钮CLR后,设置操作模式开关SWC=0、SWB=0、SWA=0,按一次QD按钮,则进入启动程序运行模式。设置电平开关K3~K0,使其代表希望的指令操作码IR7~IR4,按QD按钮,跟踪指令的执行。 按一次复位按钮CLR按钮,能够结束本次跟踪操作,开始下一次跟踪操作。 μA 09H 08H 0AH 0CH 0CH 07H 06H 03H 02H 02H 02H 02H 02H 05H 04H 04H 04H 04H 01H (加)21H 21H (减)22H (与)23H (或)24H (F=B)25H 0EH (F=A,F=B)26H 10H 27H 13H 28H 12H AR 0H 0H 0H 0H 0H 0H 0H 0H 20H 21H 22H 23H 24H 0H 20H 21H 22H 23H 0H 0H 0H 0H 0H 0H 0H 04H 0H 0H 01H 01H 01H 01H PC 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 01H 01H 02H 03H 04H 01H 01H 01H 01H 02H 02H 02H 02H A7~A0 0H 0H 0H 0H 0H 1H 3HH 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 01H 04H 08H 02H 08H 00H 01H 01H 01H 01H 04H 04H 04H 04H B7~B0 0H 01H 02H 03H 04H 02H 04H 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 0H 01H 04H 08H 02H 03H 01H 04H 04H 04H 04H 04H 04H 04H 04H D7~D0 0H 01H 02H 03H 04H F0H F0H 20H 20H 01H 02H 03H 04H 20H 01H 02H 03H 04H F0H 08H 0FH 00H 00H 01H 04H 01H 01H 04H F0H F0H F0H F0H ←写寄存器 ←读寄存器 ←写存储器 ←读存储器 实验结果分析及结论、心得 能够很清楚的根据SWC控制模式控制写读寄存器模式和写读存储器模式,还能够很灵活的将数据写读寄存器和写读存储器,最后还利用指令操作码进行各种逻辑运算。 实验报告5 实验名称 实验地点 CPU组成与机器指令的执行 实验日期 成绩 ⑴用微程序控制器控制数据通路,将相应的信号线连接,构成一台能运行测试程序的CPU。 实验目的 ⑵执行一个简单的程序,掌握机器指令与微指令的关系。 ⑶理解计算机如何取出指令、如何执行指令、如何在一条指令执行结束后自动取出下一条指令并执行,牢固建立的计算机整机概念。 ⑴写存储器 写存储器操作用于向存储器中写测试程序和数据。 按复位按钮CLR,设置SWC=0、SWB=0、SWA=1。按QD按钮一次,控制台指示灯亮,指示灯μA5~μA0显示03H,进入写存储器操作。在数据开关SD7~SD0上设置存储器地址,通过数据总线指示灯D7~D0可以检查地址是否正确。按QD按钮一次,将存储器地址写入地址寄存器AR,指示灯μA5~μA0显示02H,指示灯AR7~AR0显示当前存储器地址。在数据开关上设置被写的指令。按QD按钮一次,将指令写入存储器。写入指令后,从指示灯AR7~AR0上可以看到地址寄存器自动加1。在数据开关上设置下一条指令,按QD按钮一次,将第2条指令写入存储器。这样一直继续下去,直到将测试程序全部写入存储器。 实验原理 ⑵读存储器 读存储器操作用于检查程序的执行结果和检查程序是否正确写入到存储器中。 按复位按钮CLR,设置SWC=0、SWB=1、SWA=0。按QD按钮一次,控制台指示灯亮,指示灯μA5~μA0显示05H,进入读存储器操作。在数据开关SD7~SD0上设置存储器地址,通过指示灯D7~D0可以检查地址是否正确。按QD按钮一次,指示灯AR7~AR0上显示出当前存储器地址,在指示灯D7~D0上显示出指令或数据。再按一次QD按钮,则在指示灯AR7~AR0上显示出下一个存储器地址,在指示灯D7~D0上显示出下一条指令。一直操作下去,直到程序和数据全部检查完毕。 ⑶写寄存器 写寄存器操作用于给各通用寄存器置初值。 按复位按钮CLR,设置SWC=1、SWB=0、SWA=0。按QD按钮一次,控制台指示灯亮,指示灯μA5~μA0显示09H,进入写寄存器操作。在数据开关SD7~SD0上设置R0的值,通过指示灯D7~D0可以检查地址是否正确,按QD按钮,将设置的数写入R0。指示灯μA5~μA0显示08H,指示灯B7~B0显示R0的值,在在数据开关SD7~SD0上设置R1的值,按QD按钮,将设置的数写入R1。指示灯μA5~μA0显示0AH,指示灯B7~B0显示R1的值,在在数据开关SD7~SD0上设置R2的值,按QD按钮,将设置的数写入R2。指示灯μA5~μA0显示0CH,指示灯B7~B0显示R2的值,在在数据开关SD7~SD0上设置R3的值,按QD按钮,将设置的数写入R3。指示灯μA5~μA0显示00H,指示灯A7~A0显示R0的值,指示灯B7~B0显示R3的值。 ⑷读寄存器 读寄存器用于检查程序执行的结果。 按复位按钮CLR,设置SWC=0、SWB=1、SWA=1。按QD按钮一次,控制台指示灯亮,指示灯μA5~μA0显示07H,进入读寄存器操作。指示灯A7~A0显示R0的值,指示灯B7~B0显示R1的值。按一次QD按钮,指示灯μA5~μA0显示06H,指示灯A7~A0显示R2的值,指示灯B7~B0显示R3的值。 ⑸启动程序运行 当程序已经写入存储器后,按复位按钮CLR,使TEC-6模型计算机复位,设置SWC=0、SWB=0、SWA=0,按一次启动按钮QD,则启动测试程序从地址00H运行。如果单拍开关DP=1,那么每按一次QD按钮,执行一条微指令;连续按QD按钮,直到测试程序结束。如果单拍开关DP=0,那么按一次QD按钮后,程序一直运行到停机指令STP为止。如果程序不以停机指令STP结束,则程序将无限运行下去,结果不可预知。 序列号 1 实验设备\\软件\\平台等 名 称 实验系统 数 量 1台 备 注 2 3 4 双踪示波器 1台 直流万用表 1块 逻辑测试笔 1支 在试验箱上 实 验 内 容 与 实 验 记 录(拓扑图\\配置图\\流程图\\线路图\\效果图\\代码(段)\\运行结果\\实验步骤等) 地址 指令 00H 01H 02H 03H 04H 05H 06H 07H 08H 09H 0AH 0BH 0CH 0DH 0EH 0FH 10H 11H 12H 实验步骤 1.实验准备 将控制器转换开关拨到微程序位置,将编程开关设置为正常位置。 将信号IR4-I、IR5-I、IR6-I、IR7-I、C-I、Z-I依次通过接线孔与信号IR4-O、IR5-O、IR6-O、IR7-O、C-O、Z-O连接。使TEC-8模型计算机能够运行程序的整机系统。 打开电源。 2.在单拍方式下跟踪程序的执行 ⑴通过写存储器操作将程序写入存储器。 ⑵通过读操作将程序逐条读出,检查程序是否正确写入了存储器。 ⑶通过写寄存器操作设置寄存器R2为12H、R3为0FH。 ⑷通过读寄存器操作检查设置是否正确。 ⑸将单拍开关DP设置为1,使程序在单微指令下运行。 ⑹按复位按钮CLR,复位程序计数器PC为00H。将模式开关设置为SWC=0、SWB=0、SWA=0,准备进入程序运行模式。 ⑺按一次QD按钮,进入程序运行。每按一次QD按钮,执行一条微指令,直到程序结束。在程序执行过程中,记录下列信号的值:PC7~PC0、AR7~AR0、μA5~μA0、IR7~IR0、A7~A0、B7~B0和D7~D0。 ⑻通过读寄存器操作检查4个寄存器的值并记录。 ⑼通过读存储器操作检查存储单元12H、13H的值并记录。 3.在连续方式下运行程序 由于单拍方式下运行程序并没有改变存储器中的程序。因此只要重新设置R2为12H、R3为0FH。然后将单拍开关DP设置为0,按复位按钮CLR后,将模式开关设置为SWC=0、机器16进制代码 LD R0,[R3] 0101 0011【53】 INC R3 0100 1100【4C】 LD R1,[R3] 0101 0111【57】 SUB R0,R1 0010 0001【21】 JZ 0BH 1000 0110【86】 ST R0,[R2] 0110 1000【68】 INC R3 0100 1100【4C】 LD R0,[R3] 0101 0011【53】 ADD R0,R1 0001 0001【11】 JC 0CH 0100 0010【42】 INC R2 0100 1000【48】 ST R2,[R2] 0110 1010【6A】 AND R0,R1 0011 0001【31】 OUT R2 1010 0010【A2】 STP 1110 0000【E0】 85H 1000 0101【85】 23H 0010 0011【23】 0EFH 1110 1111【EF】 00H 0000 0000【00】 SWB=0、SWA=0,准备进入程序运行模式。按一次QD按钮,程序自动运行到STP指令。通过读寄存器操作检查4个寄存器的值并记录。通过读存储器操作检查存储单元12H、13H的值并记录 指令 μA PC AR IR A7~A0 B7~B0 D7~D0 INS7 LD 25 01H 00H 53H 00H 0FH 0FH 4CH 0E 01H 00H 53H 00H 0FH 85H 4CH 01 01H 00H 53H 85H 0FH F0H 4CH INC 24 02H 0FH 4CH 0FH 85H 10H 57H 01 02H 0FH 4CH 10H 85H 10H 57H LD 25 03H 0FH 57H 11H 10H 10H 21H 0E 03 10H 57H 11H 10H 23H 21H H 01 03H 10H 57H 23H 10H F0H 21H SUB 22 04H 10H 21H 85H 23H 62H 86H 01 04H 10H 21H 62H 23H F0H 86H JZ 28 05H 10H 86H 23H 12H F0H 68H 12 05H 10H 86H 23H 12H F0H 68H 01 05H 10H 86H 23H 12H F0H 68H ST 26 06H 10H 68H 12H 62H 12H 4CH 10 06H 12H 68H 12H 62H 62H 4CH 01 06H 12H 68H 12H 62H F0H 4CH INC 24 07H 12H 4CH 10H 62H 11H 53H 01 07H 12H 4CH 11H 62H F0H 53H LD 25 08H 12H 53H 62H 11H 11H 11H 0E 08H 11H 53H 62H 11H FFH 11H 01 08H 11H 53H FFH 11H F0H 11H ADD 21 09H 11H 11H EFH 23H 12H 42H 01 09H 11H 11H 12H 23H F0H 42H JC 24 0AH 11H 42H 12H 12H 13H 48H 01 0AH 11H 42H 13H 12H F0H 48H INC 24 0BH 11H 48H 12H 13H 13H 6AH 01 0BH 11H 48H 13H 13H F0H 6AH ST 26 0CH 11H 6AH 13H 13H 13H 31H 10 0CH 13H 6AH 13H 13H 13H 31H 01 0CH 13H 6AH 13H 13H F0H 31H AND 23 0DH 13H 31H 13H 23H 03H A2H 01 0DH 13H 31H 03H 23H F0H A2H OUT 2A 0EH 13H A2H 03H 13H 13H E0H 01 0EH 13H A2H 03H 13H F0H E0H STP 2E 0FH 13H E0H 03H 03H F0H 85H 01 0FH 13H E0H 03H 03H F0H 85H