本次实验为第5次实验,本实验分两个部分:第一部分为独立模式实验;第二部分为微程序模式实验。
对于独立模式(第一部分)实验,您可以在本篇教程中进行了解。对于微程序模式(第二部分)实验,请您留意本站后续发布的实验教程。
一、实验目的
⑴进一步熟悉 TEC-8 模型计算机的数据通路的结构;
⑵进一步掌握数据通路中各个控制信号的作用和用法;
⑶掌握数据通路中数据流动的路径。
二、实验仪器设备、试剂或材料
1.TEC-8实验系统
2.逻辑测试笔(在实验箱上方,附件盒中);
三、实验原理
数据通路实验电路图如图 2.4 所示。它由运算器部分、双端口存储器部分加上数据开关 SD7~SD0 连接在一起构成。

在进行数据运算操作时,由 RD1、RD0 选中的寄存器通过 4 选 1 选择器 A 送往 ALU 的 A 端口,由 RS1、RS0 选中的寄存器通过 4 选 1 选择器 B 送往 ALU 的 B 端口;信号 M、S3、S2、 S1、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 设置初值,用于通过存储器左端口向存储器写入 测试程序。
数据通路实验中涉及到的信号如下:
M、S3、S2、S1、S0 控制 74181 的算术逻辑运算类型。
CIN 低位 74181 的进位输入。
SEL3 相当于图 2.4 中的 RD1。
SEL2 相当于图 22.4 中的 RD0。SEL3、SEL2 选择送 ALU 的 A 端口的寄存器和被 写入的寄存器。
SEL1 相当于图 2.4 中的 RS1。
SEL0 相当于图 2.4 中的 RS0。SEL1、SEL0 选择送往 ALU 的 B 端口的寄存器。
DRW 为 1 时,在 T3 上升沿对 RD1、RD0 选中的寄存器进行写操作,将数据总线 DBUS 上的数 D7~D0 写入选定的寄存器。
ABUS 当它为 1 时,将运算结果送数据总线 DBUS, 当它为 0 时,禁止运算结果送数据总线 DBUS。
SBUS 当它为 1 时,将运算结果送数据总线 DBUS, 当它为 0 时,禁止运算结果送数据总线 DBUS。
A7~A0 送往 ALU 的 A 端口的数。
B7~B0 送往 ALU 的 B 端口的数。
D7~D0 数据总线 DBUS 上的 8 位数。
MBUS 当它为 1 时,将双端口 RAM 的左端口数据送到数据总线 DBUS。
MEMW 当它为 1 时,在 T2 为 1 期间将数据总线 DBUS 上的 D7~D0 写入双端口 RAM, 写入的存储器单元由 AR7~AR0 指定。
LPC 当它为 1 时,在 T3 的上升沿,将数据总线 DBUS 上的 D7~D0 写入程序计 数器 PC。
PCINC 当它为 1 时,在 T3 的上升沿 PC 加 1。
LAR 当它为 1 时,在 T3 的上升沿,将数据总线 DBUS 上的 D7~D0 写入地址寄 存器 AR。
ARINC 当它为 1 时,在 T3 的上升沿,AR 加 1。
SBUS 当它为 1 时,数据开关 SD7~SD0 的数送数据总线 DBUS。
AR7~AR0 双端口 RAM 左端口存储器地址。
PC7~PC0 双端口 RAM 右端口存储器地址。
INS7~INS0 从双端口 RAM 右端口读出的指令,本实验中作为数据使用。
SETCTL 当它为 1 时,TEC-8 实验系统处于实验台状态。 当它为 0 时,TEC-8 实验系统处于运行程序状态。
上述信号都有对应的指示灯。当指示灯灯亮时,表示对应的信号为 1;当指示灯不亮时, 对应的信号为 0。实验过程中,对每一个实验步骤,都要记录上述信号的值。另外 µA5~µA0 指示灯指示当前微地址。
四、实验内容与步骤
1.将数 75H 写到寄存器 R0,数 28H 写到寄存器 R1,数 89H 写到寄存器 R2,数[你的学号]写到寄 存器 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 的值,检查数据传送是否正确。
- 实验准备
将控制器转换开关拨到微程序位置,将编程开关设置为正常位置。打开电源。
- 进行数据通路实验
⑴设置数据通路实验模式 按复位按钮 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 显示 20H,PC7~PC0 显示 23H,指示 灯 D7~D0 显示存储器 20H 中的数,INS7~INS0 显示存储器 23H 中的数,按一次 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 和 B7~B0 同时显示 R0 的值。
五、实验结果与分析
1.将数 75H 写到寄存器 R0,数 28H 写到寄存器 R1,数 89H 写到寄存器 R2,数[你的学号](23)写到寄存器 R3。 如图1-图8所示。








2.将寄存器 R0 中的数写入存储器 20H 单元,将寄存器 R1 中的数写入存储器 21H 单元,将 寄存器 R2 中的数写入存储器 22H 单元,将寄存器 R3 中的数写入存储器 23H 单元。 如图9-图18所示。










3.从存储器 20H 单元读出数到存储器 R3,从存储器 21H 单元读出数到存储器 R2,从存储器 21H 单元读出数到存储器 R1,从存储器 23H 单元读出数到存储器 R0。 如图19-图32所示。



可能由于学校设备问题,后续步骤与理论情况存在偏差,敬请留意。











4.显示 4 个寄存器 R0、R1、R2、R3 的值,检查数据传送是否正确。