WRD
LDDR1(LDDR2) M1(M2)
S2、S1、S0 TJ
NC0、NC1、NC2 、NC3、NC4
上述控制信号连同时序电路提供的时序、控制信号位于控制器的下边。
2.微地址寄存器?AR(74HC273)
微地址寄存器?AR(74HC273)对控制存储器提供微程序地址。当CLR# = 0时,将其复位到零,使微程序从000000B地址开始执行。在T1的上升沿将新的微程序地址?D0—?D5打入微地址寄存器?AR。控制台开关SWC直接连到74HC273,作为μD6,用于实现读寄存器操作KRR。
3.跳转开关JUMP 这是一组6个跳线开关(J1)。当用短路子将它们连通时,微地址寄存器?AR从本实验系统提供的微程序地址译码电路得到新的微程序地址?D0—?D5。当他们被断开时,用户提供自己的新微程序地址?D0—?D5。这样用户能够使用自己设计的微程序地址译码电路。 4.微程序地址译码电路DECORDER 微程序地址译码电路DECORDER产生后继微程序地址,它由2片74HC32(U2、U3)和2片74HC08(U4、U5)构成。微程序地址译码电路数据来源是: 控制存储器产生的后继微程序地址?A0—?A5,控制存储器产生的标志位P0—P3,指令操作码IR4—IR7,进位标志C,中断请求标志INTQ,控制台方式标志位SWA、SWB。
七、控制台
控制台位于TEC—4计算机组成原理实验系统的下部,主要由若干指示灯和若干拨动开关组成,用于给数据通路置数、设置控制信号、显示各种数据使用。
1.SW7—SW0
数据开关,直接接到数据通路部分的数据总线DBUS上,用于向数据通路中的器件置数。开关拨到上面位置时输出1,拨到下面位置时输出0。SW7是最高位,SW0是最低位。
2.K15—K0
双位拨动开关。开关拨到上面位置时输出1,拨到下面位置时输出0。实验中用于模拟数据通路部分所需的电平控制信号。例如,将K0与LDDR1连接,则K0向上时,表示置LDDR1为1;K0向下时,表示置LDDR1为0。
3.数据指示灯D7—D0
10
为1时,允许对寄存器堆RF进行写操作。
为1时允许对操作数寄存器DR1加载。此信号也可用于作为对操作数寄存器DR2加载。
当M1 = 1时,操作数寄存器DR1从数据总线DBUS接收数据;当M1 = 0时,操作数寄存器DR1从寄存器堆RF接收数据。此信号也可用于作为操作数寄存器DR2的数据来源选择信号。 选择运算器ALU的运算类型。 暂停微程序运行。 备用
8个红色发光二极管,用于显示数据总线DBUS或者指令寄存器IR的状态。D7是最高位,D0是最低位。双位开关IR/DBUS拨到IR位置时,显示指令寄存器IR的状态;双位开关IR/DBUS拨到DBUS位置时,显示数据总线DBUS状态。
4.地址指示灯A7—A0
8个绿色发光二极管,用于显示双端口存储器的地址寄存器内容。A7是最高位,A0是最低位。双端口存储器IDT7132有两个地址端口,地址寄存器AR1提供左端口地址A7L—A0L,地址寄存器AR2提供右端口地址A7R—A0R。当双位开关AR2/AR1拨到AR1位置时,显示地址寄存器AR1的内容;当双位开关AR2/AR1拨到AR2位置时,显示地址寄存器AR2的内容。
5.微地址指示灯?_A5—?_A0 6个黄色发光二极管,用于显示控制存储器的地址?_A5—?_A0。?_A5是最高位,?_A0是最低位。
6.其他指示灯P3、P2、P1、P0、IE、C
6个黄色发光二极管用于显示P3、P2、P1、P0、IE、C的值。P3、P2、P1、P0是控存的微代码位,用于条件分支产生下一个微地址。C是加、减运算时产生的进位值。IE是中断允许标志。当IE = 1时,允许中断;当IE = 0时,禁止中断。
7.微动开关CLR#、QD、INTR 这三个微动开关用于产生CLR#、QD、INTR单脉冲。按一次按钮CLR#,产生一个负的单脉冲CLR#,对全机进行复位,使全机处于初始状态,微程序地址置为000000B。CLR#到时序和控制器的连接已在印制板上实现,控制存储器和数据通路部分不使用复位信号CLR#。按一次QD按钮,产生一个正的QD启动脉冲。QD和时序部分的连接已在印制板上实现。按一次INTR按钮,产生一个正的单脉冲,可用于作为中断请求信号。INTR到时序部分的连接已在印制板上实现。这三个单脉冲都有插孔对外输出,供用户设计自己的控制器和时序电路时使用。
8.单步、单拍、单指开关DB、DP、DZ DB(单步)、DP(单拍)、DZ(单指)是三种特殊的非连续工作方式。当DP = 1时,计算机处于单拍方式,按一次QD按钮,每次只执行一条微指令,发送一组T1、T2、T3、T4时序脉冲。当DZ = 1时,计算机处于单指方式。单指方式只对微程序控制器适用。在单指方式下,按一次QD按钮,计算机执行一条指令。当DB = 1时,机器处于单步方式。单步方式只对硬布线控制器适用。在单步方式下,按一次启动按钮QD,发送一组W1、W2、W3、W4时序脉冲。在使用硬布线控制器时,每条指令需要一组W1、W2、W3、W4时序脉冲,因此单步方式实际上是硬布线控制器下的单指方式。DB、DP、DZ这三个双位开关,任何时刻都只允许一个开关置1,决不允许两个或三个开关同时置1。当DB=0 且DP=0 且DZ=0时,机器处于连续工作方式。
9.控制台方式开关SWC、SWB、SWA
控制台方式开关SWC、SWB、SWA定义了TEC—4计算机组成原理实验系统的五种工作方式。在出厂时提供的标准控存中,五种工作方式定义如下:
SWC SWB SWA 工作方式 0 0 0 PR,启动程序 0 0 1 KRD,读双端口存储器
11
0 1 0 KWE,写双端口存储器 0 1 1 KLD,加载寄存器堆 1 0 0 KRR,读寄存器堆
在按CLR#按钮复位后,根据SWC、SWB、SWA选择工作方式。
PR是启动程序方式。在此方式下,首先在SW7—SW0指定启动地址,按启动按钮QD后,启动程序运行。
KRD是读双端口存储器方式。在此方式下,(1)首先在SW7—SW0置好存储器地址;按QD按钮,则将此地址打入地址寄存器AR1,并读出该地址存储器内容到数据总线DBUS。(2)每按一次QD按钮,地址寄存器AR1加1,并读出新地址存储器内容到数据总线DBUS。依次进行下去,直到按复位按钮CLR#为止。
KWE是写双端口存储器方式。在此方式下,(1)首先在SW7—SW0置好存储器地址;按QD按钮,则首先将此地址打入地址寄存器AR1,然后等待输入数据。(2)在SW7—SW0置好数据,按QD按钮,首先写数据到AR1指定的存储器单元,然后地址寄存器AR1加1,等待新的输入数据。依次进行下去,直到按复位按钮CLR#为止。
KLD是加载寄存器堆方式。此方式用于对寄存器堆加载。(1)首先在SW7—SW0置好存储器地址,按QD按钮,则将此地址打入地址寄存器AR1和地址寄存器AR2。(2)在SW7—SW0置好数据,数据的低2位D1、D0为寄存器堆中的寄存器号,按一次QD按钮,则写数据到AR1指定的存储器单元;然后将写入的数据从右端口读出,并送入指令寄存器IR。(3)在SW7—SW0置好数据,该数据为写入寄存器的数据,寄存器号由IR低2位指定。按QD按钮,则首先将此数据写入寄存器ER,然后将ER中的数据写入指定的寄存器。(4)返回(2),依次进行下去,直到按复位按钮CLR#为止。
KRR是读寄存器堆方式。此方式用于读寄存器堆中的寄存器。(1)首先在SW7—SW0置好存储器地址,按QD按钮,则将此地址打入地址寄存器AR1和地址寄存器AR2。(2)在SW7—SW0置好数据,数据的D3、D2位为寄存器堆中的寄存器号,按一次QD按钮,则写数据到AR1指定的存储器单元;然后将写入的数据从右端口读出,并送入指令寄存器IR。同时将IR3、IR2指定的寄存器送往数据总线DBUS。拨动开关IR/DBUS可看到IR的值和IR指定的寄存器的值。(3)返回(2),依次进行下去,直到按复位按钮CLR#为止。
八、用户自选器件试验区
本计算机组成原理实验系统提供了一个用户自选器件试验区,供流水微程序控制器实验、硬布线控制器实验、流水硬布线控制器实验使用。自选器件试验区包括了1个ispLSI1032器件及下载插座,把PC机和下载插座用出厂时提供的下载电缆相连,在PC机上运行ispEXPERT软件,即可对ispLSI1032器件编程和下载。利用ispLSI1032器件,可满足这三个实验中应用的逻辑电路需要。另外,为了增加灵和性,用户自选器件试验区还提供了10个双列直插插座,其中包括2个24引脚插座,3个20引脚插座,2个16引脚插座,3个14引脚插座。 除此之外,TEC—4计算机组成原理实验系统中还提供了3个接地点,供用示波器和万用表测试时使用。
12
第二节 运算器组成实验
一、实验目的
(1)掌握算术逻辑运算加、减、乘、与的工作原理。 (2)熟悉简单运算器的数据传送通路。
(3)验证实验台运算器的8位加、减、与、直通功能。 (4)验证实验台的4位乘4位功能。
(5)按给定数据,完成几种指定的算术和逻辑运算。
二、实验电路
图6示出了本实验所用的运算器数据通路图。ALU由1片ispLSI1024构成。四片4位的二选一输入寄存器74HC298构成两个操作数寄存器DR1和DR2,保存参与运算的数据。DR1接ALU的B数据输入端口,DR2接ALU的A数据输入端口,ALU的输出在ispLSI1024内通过三态门发送到数据总线DBUS7—DBUS0上,进位信号C保存在ispLSI1024内的一个D寄存器中。当实验台下部的IR/DBUS开关拨到DBUS位置时,8个红色发光二极管指示灯接在数据总线DBUS上,可显示运算结果或输入数据。另有一个指示灯C显示运算器进位信号状态。由ispLSI1024构成的8位运算器的运算类型由选择端S2、S1、S0选择,功能如表3所示:
表3 运算器运算类型选择表
选 择 S2 S1 0 0 0 0 0 1 0 1 1 0 S0 0 1 0 1 0 操 作 A & B A & A(直通) A + B A - B A(低4位) X B(低4位)
进位C只在加法运算和减法运算时产生,与、乘、直通操作不影响进位C的状态,即进位C保持不变。减法运算采用加减数的反码再加以1实现。在加法运算中,C代表进位;在减法运算中,C代表借位。运算产生的进位在T4的上升沿送入ispLSI1024内的C寄存器保存。
在SW_BUS#信号为0时,参与运算的数据通过一个三态门74HC244(SW_BUS)送到DBUS总线上,进而送至DR1或DR2操作数寄存器。输入数据可由实验台上的8个二进制数据开关SW0—SW7来设置,其中SW0是最低位,SW7是最高位。开关向上时为1,开关向下时为0。
图中尾巴上带粗短线标记的信号都是控制信号,控制信号均为电位信号。T3、T4是脉冲信号,印制板上已连接到实验台的时序电路产生的T3、T4信号上。S2、S1、S0、ALU_BUS、LD_DR2、LDDR1、M1、M2、SW_BUS#各电位控制信号用电平开关K0—K15来模拟。K0—K15是一组用于模拟各控制电平信号的开关,开关向上时为1,开关向下时为0,每个开关无固定用途,可根据实验具体情况选用。S2、S1、S0、ALU_BUS、LDDR2、LDDR1为高电平有效,SW_BUS#为低电平有效。M1=1时,DR1选择D1—A1作为数据输入端;M1=0时,DR1选择D0—A0作为数据输入端。当LDDR1=1时,在T3的下降沿,选中的数据被打入DR1寄存器。M2=1时,DR2选择D1—A1作为数据输入端;M2=0时,DR2选择D0—A0作为数据输入端。当LD_DR2=1时,在T3的下降沿,选中的数据被打入DR2寄存器。
13
CC........D7D6D5D4D3D2D1D08个指示灯S2S1S0T4S2S1S0CLKALUOEALU_BUSB7B6B5B4B3B2B1B0T3LDDR1M1A7A6A5A4A3A2A1A0。S74HC298DR1H74HC298DR1L74HC298DR2H74HC298DR2L。ST3LDDR2M2D1C1B1A1D0C0B0A0D1C1B1A1D0C0B0A0............SW_BUS74HC244图6 运算器数据通路实验电路图
SW7SW6SW5SW4SW3SW2SW1SW0D1C1B1A1D0C0B0A0D1C1B1A1D0C0B0A0....SW_BUS#。14