当前位置:文档之家› TEC-4计算机组成原理实验系统(教师指导书)

TEC-4计算机组成原理实验系统(教师指导书)

TEC-4计算机组成原理实验系统(教师指导书)
TEC-4计算机组成原理实验系统(教师指导书)

TEC—4计算机组成原理实验系统教师实验指导书

清华大学科教仪器厂

2004年11月

1

目录

基本实验

运算器组成实验 13 双端口存储器原理实验 18 数据通路组成实验 22 微程序控制器组成实验 28 CPU组成和机器指令执行实验 40 中断原理实验 45

第三节双端口存储器原理实验

一、实验目的

(1)了解双端口静态随机存储器IDT7132的工作特性及使用方法。

(2)了解半导体存储器怎样存储和读出数据。

(3)了解双端口存储器怎样并行读写,产生冲突的情况如何。

二、实验电路

图7示出了双端口存储器的实验电路图。这里使用了一片IDT7132(U36)(2048 X 8位),两个端口的地址输入A8—A10引脚接地,因此实际使用存储容量为256字节。左端口的数据部分连接数据总线DBUS7—DBUS0,右端口的数据部分连接指令总线INS7—INS0。一片GAL22V10(U37)作为左端口的地址寄存器(AR1),内部具有地址递增的功能。两片4位的74HC298(U28、U27)作为右端口的地址寄存器(AR2H、AR2L),带有选择输入地址源的功能。使用两组发光二极管指示灯显示地址和数据:通过开关IR/DBUS切换显示数据总线DBUS和指令寄存器IR的数据,通过开关AR1/AR2切换显示左右两个端口的存储地址。写入数据由实验台操作板上的二进制开关SW0—SW7设置,并经过SW_BUS三态门74HC244(U38)发送到数据总线DBUS上。指令总线INS上的指令代码输出到指令寄存器IR(U20),这是一片74HC374。

存储器IDT7132有6个控制引脚:CEL#、LRW、OEL#、CER#、RRW、OER#。CEL#、LRW、OEL#控制左端口读、写操作,CER#、RRW、OER#控制右端口读、写操作。CEL#为左端口选择引脚,低有效。当CEL# =1 时,禁止左端口读、写操作;当CEL# =0 时,允许左端口读、写操作。当LRW为高时,左端口进行读操作;当LRW为低时,左端口进行写操作。当OEL#为低时,将左端口读出的数据放到数据总线DBUS上;当OEL#为高时,禁止左端口读出的数据放到数据总线DBUS上。CER#、RRW、OER#控制右端口读、写操作的方式与CEL#、LRW、OER#控制左端口读、写操作的方式类似,不过右端口读出的数据放到指令总线上而不是数据总线上。实验台上的OEL#由LRW经反相产生。当CEL#=0且LRW=1时,左端口进行读操作,同时将读出的数据放到数据总线DBUS上。当CER#=0且LRW=0时,在T3的上升沿开始进行写操作,将数据总线上的数据写入存储器。实验台上已连接T3到时序发生器的T3输出。实验台上OER#已固定接地,RRW固定接高电平,CER#由CER反相产生,因此当CER=1且LDIR=1时,右端口读出的指令在T4的上升沿打入IR寄存器。

存储器的地址由地址寄存器AR1、AR2提供,而AR1和AR2的内容根据数码开关SW0—SW7设置产生,并经三态门SW_BUS发送到数据总线时被AR1或AR2接收, 三态门的控制信号SW_BUS#是低电平有效。数据总线DBUS有5个数据来源:运算器ALU,寄存器堆RF,控制台开关SW0—SW7,双端口存储器IDT7132和中断地址寄存器IAR。在任何时刻,都不允许2个或者2个以上的数据源同时向数据总线DBUS输送数据,只允许1个(或者没有)数据源向数据总线DBUS输送数据。在本实验中,为了保证数据的正确设置和观察,请令RS_BUS# = 1,ALU_BUS = 0,IAR_BUS# = 1。AR1的控制信号是LDAR1和AR1_INC。当LDAR1 = 1时,AR1从DBUS接收地址;当AR1_INC =1时,使AR1中的存储器地址增加1;在T4的上升沿,产生新的地址;LDAR1和AR1_INC两者不可同时为1。AR2的控制信号是LDAR2和M3。当M3 =1 时,AR2从数据总线DBUS接收数据;当M3=0 时,AR2以PC总线PC0—PC7作为数据来源。当LDAR2=1时,在T2的下降沿,将新的PC值打入AR2。

三、实验设备

图7 双端口存储器实验电路图

4

(1)TEC—4计算机组成原理实验系统一台

(2)双踪示波器一台

(3)直流万用表一只

(4)逻辑测试笔一支

四、实验任务

(1)按图7所示,将有关控制信号和和二进制开关对应接好,仔细复查一遍,然后接通电源。

(2)将数码开关SW0—SW7(SW0是最低位)设置为00H,将此数据作为地址置入AR1;然后重新设置二进制开关控制,将数码开关SW0—SW7上的数00H写入RAM第0号单元。依此方法,在存储器10H单元写入数据10H,20H单元写入20H,30H单元写入30H,40H单元写入40H,共存入5个数据。

使用双端口存储器的左端口,依次读出存储器第00H、10H、20H、30H、40H单元中的内容,观察上述各单元中的内容是否与该单元的地址号相同。请记录数据。注意:总线上禁止两个以上部件同时向总线输出数据。当存储器进行读出操作时,必须关闭SW_BUS三态门!而当向AR1送入地址时,双端口存储器不能被选中。

(3)通过双端口存储器右端口(指令端口),依次把存储器第00H、10H、20H、30H、40H单元中的内容置入指令寄存器IR,观察结果是否与(2)相同,并记录数据。

(4)双端口存储器的并行读写和访问冲突测试。

置CEL#=0且CER=1,使存储器左、右端口同时被选中。当AR1和AR2的地址不相同时,没有访问冲突;地址相同时,由于都是读出操作,也不冲突。如果左、右端口地址相同且一个进行读操作、另一个进行写操作,则发生冲突。要检测冲突,可以用示波器测试BUSYL和BUSYR插孔(分别是两个端口的“忙”信号输出)。BUSY为0时不一定发生冲突,但发生冲突时,BUSY一定为0。当某一个端口(无论是左端口还是右端口)的BUSY = 0时,对该端口的写操作被IDT7132忽略掉。

五、实验步骤及实验结果

(1)接线

IAR_BUS#接VCC,ALU_BUS接GND,RS_BUS#接VCC,禁止中断地址寄存器、运算器、多端口寄存器堆RF向数据总线DBUS送数据。AR1_INC接GND,M3接VCC,使地址寄存器AR1和AR2从数据总线DBUS取得地址数据。

CEL#接K0,LRW接K1,CER接K2,LDAR1接K3,LDAR2接K4,SW_BUS#接K5,LDIR接K6。

置DP = 1,DB = 0,DZ = 0,使实验台处于单拍状态。

合上电源。按复位按钮CLR#,使实验系统处于初始状态。

(2)向存储器写数,并读出进行检查。

1.令K0(CEL#)= 1,K1(LRW) = 1,K2(CER)= 0,K3(LDAR1) = 1,K4(LDAR2)= 0,K5(SW_BUS#)= 0,K6(LDIR)= 0。将IR/DBUS开关拨到DBUS位置,将AR1/AR2开关拨到AR1位置。置SW7—SW0 = 00H,按一次QD按钮,将00H写入AR1,绿色的地址指示灯应显示00H。

令K0(CEL#)= 0,K1(LRW)= 0,K3(LDAR1)= 0,按一次QD按钮,则将00H数据写入存储器的00H单元。

依次重复进行,在存储器10H单元写入数据10H,20H单元写入20H,30H单元写入30H,40H单元写入40H,共存入5个数据。

2.令K0(CEL#)= 1,K1(LRW) = 1,K2(CER)= 0,K3(LDAR1) = 1,K4(LDAR2)= 0,K5(SW_BUS#)

5

= 0,K6(LDIR)= 0。将IR/DBUS开关拨到DBUS位置,将AR1/AR2开关拨到AR1位置。置SW7—SW0 = 00H,按一次QD按钮,将00H写入AR1,绿色的地址指示灯应显示00H。令K5(SW_BUS#)= 1,然后令K3(LDAR1)= 0,K0(CEL#)= 0,K1(LRW)= 1,则读出存储器的00H单元的数据,读出的数据显示在DBUS数据指示灯上,应为00H。照此方法,可依次读出存储器单元10H、20H、30H、40H的数据。

(3)读出存储器的数据,写入IR。

令K0(CEL#)= 1,K1(LRW) = 1,K2(CER)= 0,K3(LDAR1) = 0,K4(LDAR2)= 1,K5(SW_BUS#)= 0,K6(LDIR)= 0。将IR/DBUS开关拨到IR位置,将AR1/AR2开关拨到AR2位置。置SW7—SW0 = 00H,按一次QD按钮,将00H写入AR2,绿色的地址指示灯应显示00H。令K4(LDAR2)= 0,K2(CER)= 1,K6(LDIR) = 1,按一次QD按钮,则从右端口读出存储器的00H单元的数据,读出的数据写入指令寄存器IR,显示在IR数据指示灯上,应为00H。照此方法,可从右端口依次读出存储器单元10H、20H、30H、40H的数据,写入指令寄存器IR。

(4)双端口存储器的并行读写和访问冲突测试

1.令K0(CEL#)= 1,K1(LRW) = 1,K2(CER)= 0,K3(LDAR1) = 1,K4(LDAR2)= 0,K5(SW_BUS#)= 0,K6(LDIR)= 0。将AR1/AR2开关拨到AR1位置。置SW7—SW0 = 38H,按一次QD按钮,将38H写入AR1,绿色的地址指示灯应显示38H。令K3(LDAR1) = 0,K4(LDAR2)= 1,K5(SW_BUS#)= 0,将AR1/AR2开关拨到AR2位置。置SW7—SW0 = 38H,按一次QD按钮,将38H写入AR2,绿色的地址指示灯应显示38H。

2.先令K2(CER)= 1,K0(CEL#)=1,用示波器探头测试BUSYL插孔,BUSYL应为高电平。保持K2(CER)不变,将K2(CEL#)拨动到0位置,示波器上的BUSYL信号从高电平变为低电平;再将K0(CEL#)拨到1位置,BUSYL信号从低电平变为高电平。

3.先令K0(CEL#)=0,K2(CER)= 0,用示波器探头测试BUSYR插孔,BUSYR应为高电平。保持K0(CEL#)不变,将K2(CER)拨动到1位置,示波器上的BUSYR信号也从高电平变为低电平;

再将K2(CER)拨到0位置,BUSYL信号也从低电平变为高电平。

第四节数据通路组成实验

一、实验目的

(1)将双端口通用寄存器堆和双端口存储器模块联机;

(2)进一步熟悉计算机的数据通路;

(3)掌握数字逻辑电路中故障的一般规律,以及排除故障的一般原则和方法;

(4)锻炼分析问题与解决问题的能力,在出现故障的情况下,独立分析故障现象,并排除故障。

二、实验电路

图8示出了数据通路实验电路图,它是将双端口存储器实验模块和一个双端口通用寄存器堆模块(RF)连接在一起形成的。双端口存储器的指令端口不参与本次实验。通用寄存器堆连接运算器模块,本实验涉及其中的操作数寄存器DR2。

由于双端口存储器RAM是三态输出,因而可以将它直接连接到数据总线DBUS上。此外,DBUS 上还连接着双端口通用寄存器堆。这样,写入存储器的数据可由通用寄存器堆提供,而从存储器RAM 读出的数据也可送到通用寄存器堆保存。

双端口存储器RAM已在第三节做过介绍, DR2在第三节的实验中使用过。通用寄存器堆RF(U32)由一个ISP1016实现,功能上与两个4位的MC14580并联构成的寄存器堆类似。RF内含四个8位的通用寄存器R0、R1、R2、R3,带有一个写入端口和两个输出端口,从而可以同时写入一路数据,读出两路数据。写入端口取名为WR端口,连接一个8位的暂存寄存器(U14)ER,这是一个74HC374。输出端口取名为RS端口(B端口)、RD端口(A端口),连接运算器模块的两个操作数寄存器DR1、DR2。RS端口(B端口)的数据输出还可通过一个8位的三态门RSO(U15)直接向DBUS输出。

双端口通用寄存器堆模块的控制信号中,RS1、RS0用于选择从RS端口(B端口)读出的通用寄存器,RD1、RD0用于选择从RD端口(A端口)读出的通用寄存器。而WR1、WR0则用于选择从WR端口写入的通用寄存器。WRD是写入控制信号,当WRD=1时,在T2上升沿时刻,将暂存寄存器ER中的数据写入通用寄存器堆中由WR1、WR0选中的寄存器;当WRD =0时,ER中的数据不写入通用寄存器中。LDER信号控制ER从DBUS写入数据,当LDER=1时,在T4的上升沿,DBUS上的数据写入ER。RS_BUS#信号则控制RS端口到DBUS的输出三态门,是一个低有效信号。以上控制信号各自连接一个二进制开关K0—K15。

三、实验设备

(1)TEC-4计算机组成原理实验仪一台

(2)双踪示波器一台

(3)直流万用表一只

(4)逻辑测试笔一支

四、实验任务

(1)将实验电路与控制台的有关信号进行线路连接,方法同前面的实验。

(2)用8位数据开关向RF中的四个通用寄存器分别置入以下数据:R0=0FH,R1=0F0H,R2 =55H,R3=0AAH。

给R0置入0FH的步骤是:先用8位数码开关SW0—SW7将0FH置入ER,并且选择WR1=0、WR0 = 0、WRD = 1,再将ER的数据置入RF。给其他通用寄存器置入数据的步骤与此类似。

8

(3)分别将R0至R3中的数据同时读入到DR2寄存器中和DBUS上,观察其数据是否是存入R0至R3中的数据,并记录数据。其中DBUS上的数据可直接用指示灯显示,DR2中的数据可通过运算器ALU,用直通方式将其送往DBUS。

(4)用8位数码开关SW0—SW7向AR1送入一个地址0FH,然后将R0中的0FH写入双端口RAM。

用同样的方法,依次将R1至R3中的数据写入RAM中的0F0H、55H、0AAH单元。

(5)分别将RAM中0AAH单元的数据写入R0,55H单元的数据写入R1,0F0H单元写入R2,0FH 单元写入R3。然后将R3、R2、R1、R0中的数据读出到DBUS上,通过指示灯验证读出的数据是否正确,并记录数据。

(6)进行RF并行输入输出试验。

1.选择RS端口(B端口)对应R0,RD端口(A端口)对应R1,WR端口对应R2,并使WRD =1,观察并行输入输出的结果。选择RS端口对应R2,验证刚才的写入是否生效。记

录数据。

2.保持RS端口(B端口)和WR端口同时对应R2,WRD=1,而ER中置入新的数据,观察并行输入输出的结果,RS端口输出的是旧的还是新的数据?

(7)在数据传送过程中,发现了什么故障?如何克服的?

五、实验步骤与实验结果

(1)接线

IAR_BUS#接VCC,禁止中断地址寄存器IAR向数据总线DBUS送数据。CER接GND,禁止存储器右端口工作。AR1_INC接GND,禁止AR1加1。S2接GND,S1接GND,S0接VCC,使运算器ALU处于直通方式。M2接GND,使DR2选择寄存器堆RF作为数据来源。置DP = 1,DZ = 0,DB = 0,使实验系统开机后处于单拍状态。

K0接SW_BUS#,K1接RS_BUS#,K2接ALU_BUS,K3接CEL#,K4接LRW,K5接LDAR1,K6接LDDR2,K7接LDER,K8接RS0,K9接RS1,K10接RD0,K11接RD1,K12接WR0,K13接WR1,K14接WRD。

合上电源。按CLR#按钮,使实验系统处于初始状态。

(2)向RF中的四个通用寄存器分别置入数据

令K1(RS_BUS#)= 1, K2(ALU_BUS)= 0,K3(CEL#)= 1,K4(LRW)= 1,K5(LDAR1)= 0,K6(LDDR2)= 0,K8(RS0)= 0,K9(RS1)= 0,K10(RD0)= 0,K11(RD1)= 0,K12(WR0)= 0,K13(WR1)= 0,K14(WRD)= 0。

a. 令K0(SW_BUS#)= 0,K7(LDER)= 1。置SW7—SW0为0FH,按一次QD按钮,将0FH写入暂

存寄存器ER。

令K7(LDER)= 0,K14(WRD)= 1,K12(WR0)= 0,K13(WR1)= 0,按一次QD按钮,将0FH(在ER中)写入R0寄存器。

b.令K0(SW_BUS#)= 0,K7(LDER)= 1。置SW7—SW0为F0H,按一次QD按钮,将0F0H写入

暂存寄存器ER。

令K7(LDER)= 0,K14(WRD)= 1,K12(WR0)= 1,K13(WR1)= 0,按一次QD按钮,将F0H (在ER中)写入R1寄存器。

c.令K0(SW_BUS#)= 0,K7(LDER)= 1。置SW7—SW0为55H,按一次QD按钮,将55H写入暂

存寄存器ER。

令K7(LDER)= 0,K14(WRD)= 1,K12(WR0)= 0,K13(WR1)= 1,按一次QD按钮,将55H(在ER中)写入R2寄存器。

9

d. 令K0(SW_BUS#)= 0,K7(LDER)= 1。置SW7—SW0为0AAH,按一次QD按钮,将0AAH写

入暂存寄存器ER。

令K7(LDER)= 0,K14(WRD)= 1,K12(WR0)= 1,K13(WR1)= 1,按一次QD按钮,将0AAH(在ER中)写入R0寄存器。

(3)分别将R0至R3中的数据同时读入到DR2寄存器中和DBUS上,观察其数据是否是存入R0至R3

中的数据。

1.令K0(SW_BUS#)= 1,K2(ALU_BUS)= 0,K3(CEL#)= 1,K4(LRW)= 1,K5(LDAR1)= 0,K6(LDDR2)= 0,K7(LDER)= 0,K10(RD0)= 0,K11(RD1)= 0,K12(WR0)= 0,K13(WR1)= 0,K14(WRD)= 0。

将开关IR/DBUS至于DBUS位置。令K1(RS_BUS#)= 0,使寄存器堆中的数据送DBUS总线。令K8(RS0)= 0,K9(RS1)= 0,R0中的数据通过B端口送DBUS ,数据指示灯应显示0FH。令K8(RS0)= 1,K9(RS1)= 0,R1中的数据通过B端口送DBUS,数据指示灯应显示0F0H。令K8(RS0)= 0,K9(RS1)= 1,R2中的数据通过B端口送DBUS,数据指示灯应显示55H。令K8(RS0)= 1,K9(RS1)= 1,R3中的数据通过B端口送DBUS,数据指示灯应显示0AAH。

2.令K0(SW_BUS#)= 1,K1(RS_BUS#)= 1, K3(CEL#)= 1,K4(LRW)= 1,K5(LDAR1)= 0,K7(LDER)= 0,K8(RS0)= 0,K9(RS1)= 0,K12(WR0)= 0,K13(WR1)= 0,K14(WRD)= 0。

将开关IR/DBUS至于DBUS位置。令K2(ALU_BUS)= 1,使运算器ALU的运算结果送DBUS总线。由于S2接GND,S1接GND,S0接VCC,ALU做直通运算,因此DBUS数据指示灯显示的是DR2寄存器的值。令K10(RD0)= 0,K11(RD1)= 0,K6(LDDR2)= 1,按一次QD按钮,R0中的数据通过A 端口送入DR2,DBUS数据指示灯应显示0FH。令K10(RD0)= 1,K11(RD1)= 0,K6(LDDR2)= 1,按一次QD按钮,R1中的数据通过A端口送入DR2,DBUS数据指示灯应显示0F0H。令K6(LDDR2)= 1,K10(RD0)= 0,K11(RD1)= 1,按一次QD按钮,R2中的数据通过A端口送入DR2,DBUS数据指示灯应显示55H。令K10(RD0)= 1,K11(RD1)= 1,K6(LDDR2)= 1,按一次QD按钮,R3中的数据通过A端口送入DR2,DBUS数据指示灯应显示0AAH。

(4)将R0、R1、R2、R3中的数据依次送入存储器0FH、0F0H、55H、0AAH单元。

令K2(ALU_BUS)= 0,K5(LDAR1)= 0,K6(LDDR2)= 0,K7(LDER)= 0,K10(RD0)= 0,K11(RD1)= 0,K12(WR0)= 0,K13(WR1)= 0,K14(WRD)= 0。

a.置AR1/AR2开关到AR1位置。令K0(SW_BUS#)= 0,K1(RS_BUS#)= 1, K3(CEL#)= 1,

K5(LDAR1)= 1,置SW7—SW0为0FH,按一次QD按钮,将AR1置为0FH,地址指示灯应显示0FH。

令K0(SW_BUS#)= 1,K1(RS_BUS#)= 0,禁止数据开关SW7—SW0送DBUS,允许寄存器堆送数据总线DBUS。令K3(CEL#)= 0, K4(LRW)= 0,K5(LDAR1)= 0,K8(RS0)= 0,K9(RS1)= 0,按一次QD按钮,将R0中的数据写入存储器0FH单元。

b.置AR1/AR2开关到AR1位置。令K0(SW_BUS#)= 0,K1(RS_BUS#)= 1,K3(CEL#)= 1,

K5(LDAR1)= 1,置SW7—SW0为0F0H,按一次QD按钮,将AR1置为0F0H,地址指示灯应显示F0H。

令K0(SW_BUS#)= 1,K1(RS_BUS#)= 0,禁止数据开关SW7—SW0送DBUS,允许寄存器堆

送数据总线DBUS。令K3(CEL#)= 0,K4(LRW)= 0,K5(LDAR1)= 0,K8(RS0)= 1,

K9(RS1)= 0,按一次QD按钮,将R1中的数据写入存储器F0H单元。

c.置AR1/AR2开关到AR1位置。令K0(SW_BUS#)= 0,K1(RS_BUS#)= 1,K3(CEL#)= 1,

K5(LDAR1)= 1,置SW7—SW0为55H,按一次QD按钮,将AR1置为55H,地址指示灯应显示55H。

令K0(SW_BUS#)= 1,K1(RS_BUS#)= 0,禁止数据开关SW7—SW0送DBUS,允许寄存器

堆送数据总线DBUS。令K3(CEL#)= 0,K4(LRW)= 0,K5(LDAR1)= 0,K8(RS0)= 0,K9(RS1)= 1,按一次QD按钮,将R2中的数据写入存储器55H单元。

d.置AR1/AR2开关到AR1位置。令K0(SW_BUS#)= 0,K1(RS_BUS#)= 1,K3(CEL#)= 1,

K5(LDAR1)= 1,置SW7—SW0为0AAH,按一次QD按钮,将AR1置为0AAH,地址指示灯应显示0AAH。

令K0(SW_BUS#)= 1,K1(RS_BUS#)= 0,禁止数据开关SW7—SW0送DBUS,允许寄存器

堆送数据总线DBUS。令K3(CEL#)= 0,K4(LRW)= 0,K5(LDAR1)= 0,K8(RS0)= 1,K9(RS1)= 1,按一次QD按钮,将R3中的数据写入存储器0AAH单元。

(5)将RAM中0AAH、55H、0F0H、0FH单元的数据依次写入R0、R1、R2、R3。然后将R3、R2、R1、R0中的数据读出到DBUS上,通过指示灯验证读出的数据是否正确。

1.令K1(RS_BUS#)= 1,K2(ALU_BUS)= 0, K6(LDDR2)= 0, K8(RS0)= 0,K9(RS1)= 0,

K10(RD0)= 0,K11(RD1)= 0。

a.令K0(SW_BUS#)= 0,K5(LDAR1)= 1,K3(CEL#)= 1,K14(WRD)= 0,置SW7—SW0为0AAH,

按一次QD按钮,将AR1置为0AAH。

令K14(WRD)= 0,K0(SW_BUS#)= 1,K3(CEL#)= 0,K4(LRW)= 1,K5(LDAR1)= 0,K7(LDER)= 1,按一次QD按钮,将存储器0AAH单元的内容读出,写入到暂存寄存器ER。

令K0(SW_BUS#)= 1,K3(CEL#)= 1,K14(WRD)= 1,K5(LDAR1)= 0,K7(LDER)= 0,K12(WR0)= 0,K13(WR1)= 0,按一次QD按钮,将ER中的数据写入R0。

b.令K0(SW_BUS#)= 0,K5(LDAR1)= 1,K3(CEL#)= 1,K14(WRD)= 0,置SW7—SW0为55H,按一次QD按钮,将AR1置为55H。令K14(WRD)= 0,K0(SW_BUS#)= 1,K3(CEL#)= 0,K4(LRW)= 1,K5(LDAR1)= 0,K7(LDER)= 1,按一次QD按钮,将存储器55H单元的内容读出,写入到暂存寄存器ER。令K0(SW_BUS#)= 1,K5(LDAR1)= 0,K7(LDER)= 0,K3(CEL#)= 1,K14(WRD)= 1,K12(WR0)= 1,K13(WR1)= 0,按一次QD按钮,将ER中的数据写入R1。

令K0(SW_BUS#)= 0,K5(LDAR1)= 1,K3(CEL#)= 1,K14(WRD)= 0,置SW7—SW0为0F0H,按一次QD按钮,将AR1置为0F0H。令K14(WRD)= 0,K0(SW_BUS#)= 1,K3(CEL#)= 0,K4(LRW)= 1,K5(LDAR1)= 0,K7(LDER)= 1,按一次QD按钮,将存储器0F0H单元的内容读出,写入到暂存寄存器ER。令K0(SW_BUS#)= 1,K5(LDAR1)= 0,K7(LDER)= 0,K3(CEL#)= 1,K14(WRD)= 1,K12(WR0)= 0,K13(WR1)= 1,按一次QD按钮,将ER中的数据写入R2。

令K0(SW_BUS#)= 0,K5(LDAR1)= 1,K3(CEL#)= 1,K14(WRD)= 0,置SW7—SW0为0FH,按一次QD按钮,将AR1置为0FH。令K14(WRD)= 0,K0(SW_BUS#)= 1,K3(CEL#)= 0,K4(LRW)= 1,K5(LDAR1)= 0,K7(LDER)= 1,按一次QD按钮,将存储器0FH单元的内容读出,写入到暂存寄存器ER。令K0(SW_BUS#)= 1,K5(LDAR1)= 0,K7(LDER)= 0,K3(CEL#)= 1,K14(WRD)= 1,K12(WR0)= 1,K13(WR1)= 1,按一次QD按钮,将ER中的数据写入R3。

2. 令K0(SW_BUS#)= 1, K2(ALU_BUS)= 0,K3(CEL#)= 1,K4(LRW)= 1,K5(LDAR1)= 0,

K6(LDDR2)= 0,K7(LDER)= 0, K10(RD0)= 0, K11(RD1)= 0,K12(WR0)= 0,K13(WR1)= 0 ,K14(WRD)= 0。

将开关IR/DBUS至于DBUS位置。令K1(RS_BUS#)= 0,K8(RS0)= 0,K9(RS1)= 0,数据指示灯显示R0的值,应为0AAH。令K8(RS0)= 1,K9(RS1)= 0,数据指示灯显示R1的值,应为55H。令K8(RS0)= 0,K9(RS1)= 1,数据指示灯显示R2的值,应为0F0H。令K8(RS0)= 1,K9(RS1)= 1,数据指示灯显示R3的值,应为0FH。

(6) 进行RF并行输入输出试验

1.选择RS端口(B端口)对应R0,RD端口(A端口)对应R1,WR端口对应R2,并使WRD=1,观

察并行输入输出的结果。选择RS端口对应R2,验证刚才的写入是否生效。

令K3(CEL#)= 1,K4(LRW)= 1,K5(LDAR1)= 0。

将开关IR/DBUS至于DBUS位置。令K0(SW_BUS#)= 0,K1(RS_BUS#)= 1,K2(ALU_BUS)= 0,K6(LDDR2)= 0,K7(LDER)= 1,K14(WRD)= 0。将SW7—SW0置为35H,按一次QD按钮,将35H 写入暂存寄存器ER。

令K0(SW_BUS#)= 1,K1(RS_BUS#)= 0,K2(ALU_BUS)= 0,K14(WRD)= 1,K6(LDDR2)= 1。再令K8(RS0)= 0,K9(RS1)= 0,RS端口选择R0;K10(RD0)= 1, K11(RD1)= 0,RD 端口选择R1;K12(WR0)= 0,K13(WR1)= 1,WR端口选择R2。按一次QD按钮,这时ER中的数据(35H)写入了R2,同时R1中的数据(55H)写入了DR2,R0中的数据送数据总线DBUS(其实,R0中的数据并不受按QD按钮的影响)。数据指示灯应显示R0中的数据0AAH,如果令K1(RS_BUS#)= 1,K2(ALU_BUS)= 1,数据指示灯应显示DR2的内容(即R1的内容),应为55H。再令K1(RS_BUS#)= 0,K2(ALU_BUS)= 0,使数据指示灯仍显示RS端口的内容,同时令K8(RS0)= 0,K9(RS1)= 1,RS端口选择R2,

数据指示灯应显示新的R2的值,即35H。

2. 保持RS端口(B端口)和WR端口同时对应R2,WRD=1,而ER中置入新的数据,观察并行输入输出的结果,RS端口输出的是旧的还是新的数据?

令K2(ALU_BUS)= 0,K3(CEL#)= 1,K4(LRW)= 1,K5(LDAR1)= 0,K6(LDDR2)= 0,K10(RD0)= 0, K11(RD1)= 0。

将开关IR/DBUS至于DBUS位置。令K0(SW_BUS#)= 0,K1(RS_BUS#)= 1, K7(LDER)= 1,K14(WRD)= 0。将SW7—SW0置为53H,按一次QD按钮,将53H写入暂存寄存器ER。令K0(SW_BUS#)= 1,K1(RS_BUS#)= 0,K8(RS0)= 0,K9(RS1)= 1,RS端口选择R2,数据指示灯显示R2的值,应为35H。令K14(WRD)= 1,K12(WR0)= 0,K13(WR1)= 1,WR端口选择R2,允许写操作。当按下QD按钮时,新的值53H从ER写入R2,数据指示灯立即变为53H。

第五节 微程序控制器组成实验

一、实验目的

(1)掌握时序产生器的组成原理。

(2)掌握微程序控制器的组成原理。 (3)掌握微指令格式的化简和归并。

二、实验电路

1.时序发生器

GAL22V10

TIMER1

TIMER2

图9 时序信号发生器图

TEC —4计算机组成原理实验系统的时序电路如图9所示。电路采用2片GAL22V10(U6、U7),可产生两级等间隔时序信号T1-T4和W1-W4,其中一个W 由一轮T1-T4循环组成,它相当于一个微指令周期或硬布线控制器的一拍,而一轮W1—W4循环可供硬布线控制器执行一条机器指令。

本次实验不涉及硬布线控制器,因此时序发生器中的相关内容也可根据需要放到硬布线控制器实验中进行。

微程序控制器只使用时序信号T1-T4,产生T 信号的功能集成在GAL22V10芯片TIMER1(U6)中,另外它还产生节拍信号W1、W2、W3、W4的控制时钟CLK1。该芯片的逻辑功能用ABEL 语言实现,其源程序如下: MODULE TIMER1

TITLE 'CLOCK GGENERATOR T1,T2,T3,T4' "2000,9

"INPUT

MF,CLR,QD,DP,DZ,TJ,P1,INTS,INTC,DB PIN 1..10; W4 PIN 13;

"OUTPUT

T1,T2,T3,T4,QD1,QD2,ACT,INTE,QDR PIN 14..22;

CLK1 PIN 23;

T1,T2,T3,T4,QD1,QD2,INTE,QDR ISTYPE 'REG';

ACT,CLK1 ISTYPE 'COM';

CLK = .C.;

S =[T1,T2,T3,T4,QD1,QD2,INTE,QDR];

EQUATIONS

QD1 := QD;

QD2 := QD1;

QDR := CLR & QD # CLR & QDR;

ACT = QD1 & !QD2;

T1 := CLR & T4 & ACT # CLR & T4 & !(DP # TJ # DZ & P1 # DB & W4) & QDR;

T2 := CLR & T1;

T3 := CLR & T2;

T4 := !CLR # T3 # T4 & !ACT & (DP # TJ # DZ & P1 # DB & W4) # !QDR;

INTE := CLR & INTS # CLR & INTE & !INTC;

CLK1 = T1 # !CLR & MF;

S.CLK = MF;

END

MF

QD

QD1

QD2

ACT

QDR

硬布线控制器只使用时序信号W1-W4,产生W信号的功能集成在GAL22V10芯片TIMER2(U7)中,该芯片的逻辑功能用ABEL语言实现,其源程序如下:

MODULE TIMER2

TITLE 'CLOCK GGENERATOR W1 W2 W3 W4'

" 2000, 9

"INPUT

CLK1,INTR,IE PIN 1..3;

CLR,SKIP PIN 5..6;

"OUTPUT

W1,W2,W3,W4,INTR1 PIN 14..18 ISTYPE 'REG';

INTQ PIN 20 ISTYPE 'COM';

CLK = .C.;

EQUATIONS

W1 := CLR & W4 ;

W2 := CLR & W1 & !SKIP;

W3 := CLR & W2 & !SKIP;

W4 := !CLR # W3 # SKIP & W1 # SKIP & W2 ;

INTR1 := INTR;

INTQ = IE & INTR1;

[W1,W2,W3,W4,INTR1].CLK = CLK1;

END

TIMER1和TIMER2中还集成了中断逻辑,中断逻辑的介绍见第八节。TIMER1的输入信号中,MF 接实验台上晶体振荡器的输出,频率为1MHz。T1至T4的脉冲宽度为100ns。CLR(注意,实际上是控制台上的CLR#信号,因为ABEL语言的书写关系改为CLR,仍为低有效信号)为复位信号,低有效。实验台处于任何状态下令CLR# =0,都会使时序发生器和微程序控制器复位(回到初始状态),CLR# =1时,则可以正常运行。复位后时序发生器停在T4、W4状态,微程序地址为000000B。建议每次实验仪加电后,先用CLR#复位一次。控制台上有一个CLR#按钮,按一次,产生一个CLR#负脉冲,实验台印制板上已连好控制台CLR#到时序电路CLR的连线。

TJ(停机)是控制器的输出信号之一。连续运行时,如果控制信号TJ=1,会使机器停机,停止发送时序脉冲T1—T4、W1—W4,时序停在T4。在实验台上为了将时序信号发生器的输入信号TJ 和控制存储器产生的TJ信号区分开来,以便于连线操作,在实验台上时序信号发生器的输入信号TJ命名为TJI,而控制存储器产生的信号TJ仍命名为TJ。QD(启动)是来自启动按钮QD的脉冲信号,在TIMER1中,对QD用MF进行了同步,产生QD1和QD2。ACT表示QD1上升沿,表达式是QD1 & !QD2,脉冲宽度为1000ns 。QDR是运行标志,QD信号使其为1,CLR信号将其置0。DP(单拍)是来自控制台的DP开关信号,当DP =1时,机器处于单拍运行状态,按一次启动按钮QD,只发送一条微指令周期的时序信号就停机。利用单拍方式,每次只执行一条微指令,因而可以观察微指令代码和当前微指令的执行结果。DZ(单指)信号是针对微程序控制器的,接控制台开关DZ和P1信号配合使用。P1是微指令字判断字段中的一个条件信号,从微程序控制器输出。P1信号在微程序中每条机器指令执行结束时为1,用于检测有无中断请求INTQ,而时序发生器用它来实现单条机器指令停机。在DB =0且DP = 0的前提下,当DZ =0时,机器连续运行。当DZ =1时,机器处于单指方式,每次只执行一条机器指令。

DB、SKIP、CLK1信号以及W1—W4时序信号都是针对硬布线控制器的。W1—W4是节拍信号,硬布线控制器执行一条机器指令需要一组W1—W4信号。DB(单步)信号就是每次发送一组W信号后停机,可见其功能与DZ类似。执行某些机器指令不需要完整的一组W信号周期,SKIP信号就是用来跳过本指令剩余的W节拍信号的。中断允许标志IE由控制存储器的输出信号INTS将其置1,由控制存储器的输出信号INTC将其置0。在TIMER2内部,控制台产生的中断请求被用时钟CLK1进行同步,

产生了INTR1。只有在INTE = 1时,控制台产生的中断请求脉冲INTR 才能起作用,即产生向控制器输出的中断中断信号INTQ ,INTQ = INTE & INTR1。

2.数据通路

微程序控制器是根据数据通路和指令系统来设计的。这里采用的数据通路是在综合前面各实验模块的基础上,又增加程序计数器PC (U18)、地址加法器ALU2(U17)、地址缓冲寄存器R4(U25、U26)和中断地址寄存器IAR (U19),详见第二节的图4。PC 和ALU2各采用一片GAL22V10,两者配合使用,可完成程序地址的存储、增1和加偏移量的功能。R4由两片74HC298组成,带二选一输入端。IAR 是一片74HC374,用于中断时保存断点地址。有关数据通路总体的详细说明,请参看第一节。

3.微指令格式与微程序控制器电路

u A 0

u A 1u A 2u A 3u A 4u A 5P 0

P 1P 2P 3N T S

N T C L D I R L D P C M 4C _A D D C _I N C L D I A R L D A R 1R 1_I N C M 3L D E R A R _B U S #S W _B U S #S _B U S #L U _B U S L R W C E L #W R D L D D R 1M 1S 0S 1S 2图10 微指令格式

T J

根据给定的12条机器指令功能和数据通路总体图的控制信号,采用的微指令格式见图10。微指令字长共35位。其中顺序控制部分10位:后继微地址6位,判别字段4位,操作控制字段25位,各位进行直接控制。微指令格式中,信号名带有后缀“#”的信号为低有效信号,不带有后缀“#”的信号为高有效信号。

图11 微程序控制器的组成

对应微指令格式,微程序控制器的组成见图11。控制存储器采用5片EEPROM 28C64(U8、U9、U10、U11、U12)。28C64的输出是D0—D7,分别与引脚11、12、13、15、16、17、18、19相对应,CM0是最低字节,CM4是最高字节。微地址寄存器6位,用一片6D触发器74HC174(U1)组成,带有清零端。两级与门、或门构成微地址转移逻辑,用于产生下一微指令的地址。在每个T1上升沿时刻,新的微指令地址会打入微地址寄存器中,控制存储器随即输出相应的微命令代码。微地址转移逻辑生成下一地址,等下一个T1上升沿时打入微地址寄存器。跳转开关JUMP(J1)是一组6个跳线开关。当用短路子将它们连通时,微地址寄存器μAR从本实验系统提供的微程序地址译码电路得到新的微程序地址μD0—μD5。当他们被断开时,用户提供自己的新微程序地址μD0—μD5。这样用户能够使用自己设计的微程序地址译码电路。5片EEPROM的地址A6(引脚4)直接与控制台开关SWC 连接,当SWC = 1时,微地址大于或者等于40H,当SWC = 0时,微地址的范围为00H—3FH。SWC 主要用于实现读寄存器堆的功能。

微地址转移逻辑的多个输入信号中,INTQ是中断请求,本实验中可以不理会。SWA、SWB是控制台的两个二进制开关信号,实验台上线已接好接。C是进位信号,IR7—IR4是机器指令代码,由于本次实验不连接数据通路,这些信号都接到二进制开关K0—K15上。

三、机器指令与微程序

为教学中简单明了,本实验仪使用12条机器指令,均为单字长(8位)指令。指令

功能及格式如表5所示。指令的高4位提供给微程序控制器,低4位提供给数据通路。

应当指出,用以上12条指令来编写实际程序是不够的。好在我们的目的不是程序设

计,而主要是为了教学目的,通过CPU执行一些最简单的程序来掌握微程序控制器的工作原理。

上述12条指令的微程序流程设计如图12所示。每条微指令可按前述的微指令格式转换成二进制代码,然后写入5个28C64中。

为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还设计了以下五个控制台操作微程序:

19

存储器写操作(KWE):按下复位按钮CLR#后,微地址寄存器状态为全零。此时置SWC = 0、SWB =1,SWA =0,按启动按钮后微指令地址转入27H,从而可对RAM连续进行手动写入。

存储器读操作(KRD):按下复位按钮CLR#后,置SWC = 0,SWB =0,SWA =1,按启动按钮后微指令地址转入17H,从而可对RAM连续进行读操作。

写寄存器操作(KLD):按下复位按钮CLR#后,置SWC = 0,SWB =1,SWA =1,按启动按钮后微指令地址转入37H,从而可对寄存器堆中的寄存器连续进行写操作。

读寄存器操作(KRR):按下复位按钮CLR#后,置SWC = 1,SWB =0,SWA =0,按启动按钮后微指令地址转入47H,从而可对寄存器堆中的寄存器连续进行读操作。

启动程序(PR):按下复位按钮CLR#后,置SWC = 0,SWB = 0,SWB = A,用数据开关SW7—SW0设置内存中程序的首地址,按启动按钮后微指令地址转入07H,然后转到“取指”微指令。

应当着重指出,在微指令格式的设计过程中,对数据通路所需的控制信号进行了归并和化简。细心的同学可能已经发现,微程序控制器输出的控制信号远远少于数据通路所需的控制信号。这里提供的微程序流程图,是没有经过归并和化简的。仔细研究一下微程序流程图,就会发现有些信号的出现的位置完全一样,这样的信号用其中一个信号就可以代表。请看信号LDPC和LDR4,这两个信号都在微程序地址07H、1AH、1FH、26H出现,而在其他的微程序地址都不出现,因此这两个信号产生的逻辑条件是完全一样的。从逻辑意义上看,这两个信号的作用是产生新的PC,完全出现在相同的微指令中是很正常的,因此用LDPC完全可以代替LDR4。还有另一些信号,例如LDDR1和LDDR2,出现的位置基本相同。LDDR2和LDDR1的唯一不同是在地址14H的微指令中,出现了LDDR2信号,但是没有出现LDDR1信号。LDDR1和LDDR2是否也可以归并成一个信号呢?答案是肯定的。微程序流程图中只是指出了在微指令中必须出现的信号,并没有指出出现其他信号行不行,这就要根据具体情况具体分析。在地址14H的微指令中,出现LDDR1信号行不行呢?完全可以。在地址14H出现的LDDR1是一个无用的信号,同时也是一个无害的信号,它的出现完全没有副作用,因此LDDR1和LDDR2可以归并为一个信号LDDR1。根据以上两条原则,我们对下列信号进行了归并和化简:LDIR(CER) 为1时,允许对IR加载,此信号也可用于作为双端口存储器右端口选择CER。

LDPC(LDR4) 为1时,允许对程序计数器PC加载,此信号也可用于作为R4的加载允许信号LDR4。

LDAR1(LDAR2) 为1时,允许对地址寄存器AR1加载,此信号也可用于作为对地址寄存器AR2加载。

LDDR1(LDDR2) 为1时允许对操作数寄存器DR1加载。此信号也可用于作为对操作数寄存器DR2加载。

M1(M2)当M1 = 1时,操作数寄存器DR1从数据总线DBUS接收数据;当M1 = 0时,操作数寄存器DR1从寄存器堆RF接收数据。此信号也可用

于作为操作数寄存器DR2的数据来源选择信号。

在对微指令格式进行归并和化简的过程中,我们有意保留了一些信号,没有化简,同学们可以充分发挥创造性,提出更为简单的微指令格式。

还要说明的是,为什麽微指令格式可以化简,实验台数据通路的控制信号为什麽不进行化简?最主要的原因是前面进行的各个实验的需要,例如LDDR1和LDDR2这两个信号,在做运算器数据通路实验时,是不能设计成一个信号的。还有一个原因是考虑到实验时易于理解,对某些可以归并的信号也没有予以归并。

20

计算机组成原理实验1-汇编语言实验

微处理器与接口技术 实验指导

实验一监控程序与汇编语言程序设计实验 一、实验要求 1、实验之前认真预习,明确实验的目的和具体实验内容,设计好主要的待实验的程序,做好实验之前的必要准备。 2、想好实验的操作步骤,明确通过实验到底可以学习哪些知识,想一想怎么样有意识地提高教学实验的真正效果。 3、在教学实验过程中,要爱护教学实验设备,认真记录和仔细分析遇到的现象与问题,找出解决问题的办法,有意识地提高自己创新思维能力。 4、实验之后认真写出实验报告,重点在于预习时准备的内容,实验数据,实验过程、遇到的现象和解决问题的办法,自己的收获体会,对改进教学实验安排的建议等。善于总结和发现问题,写好实验报告是培养实际工作能力非常重要的一个环节,应给以足够的重视。 二、实验目的 【1】学习和了解TEC-XP16教学实验系统监控命令的用法; 【2】学习和了解TEC-XP16教学实验系统的指令系统;

【3】学习简单的TEC-XP16教学实验系统汇编程序设计。 三、实验注意事项 (一)实验箱检查 【1】连接电源线和通讯线前TEC-XP16实验系统的电源开关一定要处于断开状态,否则可能会对TEC-XP16实验系统上的芯片和PC机的串口造成损害。 【2】五位控制开关的功能示意图如下: 【3】几种常用的工作方式【开关拨到上方表示为1,拨到下方为0】 (二)软件操作注意事项 【1】用户在选择串口时,选定的是PC机的串口1或串口2,而不是TEC-XP16实验系统上的串口。即选定的是用户实验时通讯线接的PC机的端口; 【2】如果在运行到第五步时没有出现应该出现的界面,用户需要检查是不是打开了两个软件界面,若是,关掉其中一个再试; 【3】有时若TEC-XP16实验系统不通讯,也可以重新启动软件或是重新启动PC再试; 【4】在打开该应用软件时,其它的同样会用到该串口的应用软件要先关掉。

《控制系统CAD》实验指导书

《控制系统CAD及仿真》实验指导书 自动化学院 自动化系

实验一SIMULINK 基础与应用 一、 实验目的 1、熟悉并掌握Simulink 系统的界面、菜单、工具栏按钮的操作方法; 2、掌握查找Simulink 系统功能模块的分类及其用途,熟悉Simulink 系统功能模块的操作方法; 3、掌握Simulink 常用模块的内部参数设置与修改的操作方法; 4、掌握建立子系统和封装子系统的方法。 二、 实验内容: 1. 单位负反馈系统的开环传递函数为: 1000 ()(0.11)(0.0011) G s s s s = ++ 应用Simulink 仿真系统的阶跃响应曲线。 2.PID 控制器在工程应用中的数学模型为: 1 ()(1)()d p i d T s U s K E s T s T s N =+ + 其中采用了一阶环节来近似纯微分动作,为保证有良好的微分近似效果,一般选10N ≥。试建立PID 控制器的Simulink 模型并建立子系统。 三、 预习要求: 利用所学知识,编写实验程序,并写在预习报告上。

实验二 控制系统分析 一、 实验目的 1、掌握如何使用Matlab 进行系统的时域分析 2、掌握如何使用Matlab 进行系统的频域分析 3、掌握如何使用Matlab 进行系统的根轨迹分析 4、掌握如何使用Matlab 进行系统的稳定性分析 5、掌握如何使用Matlab 进行系统的能观测性、能控性分析 二、 实验内容: 1、时域分析 (1)根据下面传递函数模型:绘制其单位阶跃响应曲线并在图上读标注出峰值,求出系统 的性能指标。 8 106) 65(5)(2 32+++++=s s s s s s G (2)已知两个线性定常连续系统的传递函数分别为1G (s)和2G (s),绘制它们的单位脉冲响 应曲线。 4 5104 2)(2 321+++++=s s s s s s G , 27223)(22+++=s s s s G (3)已知线性定常系统的状态空间模型和初始条件,绘制其零输入响应曲线。 ?? ??????????--=????? ???? ???212107814.07814.05572.0x x x x []?? ????=214493 .69691.1x x y ??? ???=01)0(x 2、频域分析 设线性定常连续系统的传递函数分别为1G (s)、2G (s)和3G (s),将它们的Bode 图绘制在一张图中。 151)(1+= s s G ,4 53.0)(22++=s s s G ,16.0)(3 +=s s G 3、根轨迹分析 根据下面负反馈系统的开环传递函数,绘制系统根轨迹,并分析系统稳定 的K 值范围。 ) 2)(1()()(++= s s s K s H s G

计算机组成原理实验题

一.这是一个判断某一年是否为润年的程序,运行可执行程序Ifleap.exe后,输入具体的年份,可输出是本年是否为闰年的提示信息。 DATA SEGMENT ;定义数据段 INFON DB 0DH,0AH,'PLEASE INPUT A YEAR: $' ;声明空间存储输入提示信息,其中0d回车,0a换行 Y DB 0DH,0AH,'THIS IS A LEAP YEAR! $' ;声明空间存储是闰年提示信息,同上另起一行输出 N DB 0DH,0AH,'THIS IS NOT A LEAP YEAR! $' ;声明空间存储不是闰年提示信息,同上另起一行输出 W DW 0 ;声明空间存储输入年份解析后生成的年份数字 BUF DB 8 DB ? DB 8 DUP(?) ;声明空间作为缓冲区,总共10个字节,第一个表示准备接受的字DATA ENDS STACK SEGMENT STACK DB 200 DUP(0) STACK ENDS ;定义一个栈,200字节 CODE SEGMENT ASSUME DS:DATA,SS:STACK,CS:CODE START:MOV AX,DATA MOV DS,AX ;指定堆栈 LEA DX,INFON ;在屏幕上显示提示信息 MOV AH,9 INT 21H ;将infon开始的字符串输出到屏幕 LEA DX,BUF ;从键盘输入年份字符串 MOV AH,10 INT 21H MOV CL, [BUF+1] ;获取实际输入长度 LEA DI,BUF+2 ;获取字符串首地址 CALL DATACATE ;调用子程序,将输入字符串传化为年份数字 CALL IFYEARS ;调用子程序,判断是否闰年 JC A1 ;如果进位标记C为1则跳转到a1

PLC控制系统实验指导书(三菱)(精)

电气与可编程控制器实验指导书 实验课是整个教学过程的—个重要环节.实验是培养学生独立工作能力,使用所学理解决实际问题、巩固基本理论并获得实践技能的重要手段。 一 LC控制系统实验的目的和任务实验目的 1.进行实验基本技能的训练。 2.巩固、加深并扩大所学的基本理论知识,培养解决实际问题的能。 3.培养实事求是、严肃认真,细致踏实的科学作风和良好的实验习惯。为将来从事生产和科学实验打下必要的基础。 4.直观察常用电器的结构。了解其规格和用途,学会正确选择电器的方法。 5.掌握继电器、接触器控制线路的基本环节。 6.初步掌握可编程序控制器的使用方法及程序编制与调试方法。 应以严肃认真的精神,实事求是的态度。踏实细致的作风对待实验课,并在实验课中注意培养自己的独立工作能力和创新精神 二实验方法 做一个实验大致可分为三个阶段,即实验前的准备;进行实验;实验后的数据处理、分及写出实验报告。 1.实验前的准备 实验前应认真阅读实验指导书。明确实验目的、要求、内容、步骤,并复习有关理论知识,在实验前要能记住有关线路和实验步骤。 进入实验室后,不要急于联接线路,应先检查实验所用的电器、仪表、设备是否良好,了解各种电器的结构、工作原理、型号规格,熟悉仪器设备的技术性能和使用

方法,并合理选用仪表及其量程。发现实验设备有故障时,应立即请指导教师检查处理,以保证实验顺利进行。 2. 联接实验电路 接线前合理安排电器、仪表的位置,通常以便于操作和观测读数为原则。各电器相互间距离应适当,以联线整齐美观并便于检查为准。主令控制电器应安装在便于操作的位置。联接导线的截面积应按回路电流大小合理选用,其长度要适当。每个联接点联接线不得多余两根。电器接点上垫片为“瓦片式”时,联接导线只需要去掉绝缘层,导体部分直接插入即可,当垫片为圆形时,导体部分需要顺时针方向打圆圈,然后将螺钉拧紧,下允许有松脱或接触不良的情况,以免通电后产生火花或断路现象。联接导线裸露部分不宜过长。以免相邻两相间造成短路,产生不必要的故障。 联接电路完成后,应全面检查,认为无误后,请指导老师检查后,方可通电实验。 在接线中,要掌握一般的控制规律,例如先串联后并联;先主电路后控制电路;先控制接点,后保护接点,最后接控制线圈等。 3.观察与记录 观察实验中各种现象或记录实验数据是整个实验过程中最主要的步骤,必须认真对待。 进行特性实验时,应注意仪表极性及量程。检测数据时,在特性曲线弯曲部分应多选几个点,而在线性部分时则可少取几个点。 进行控制电路实验时。应有目的地操作主令电器,观察电器的动作情况。进一理解电路工作原理。若出现不正常现象时,应立即断开电源,检查分析,排除故障后继续实验。 注意:运用万用表检查线路故障时,一般在断电情况下,采用电阻档检测故障点;在通电情况下,检测故障点时,应用电压档测量(注意电压性质和量程;此外,还要注意

计算机组成原理实验

计算机组成原理 一、8 位算术逻辑运算 8 位算术逻辑运算实验目的 1、掌握简单运算器的数据传送通路组成原理。 2、验证算术逻辑运算功能发生器74LS181的组合功能。 8 位算术逻辑运算实验内容 1、实验原理 实验中所用的运算器数据通路如图3-1所示。其中运算器由两片74LS181以并/串形成8位字长的ALU构成。运算器的输出经过一个三态门74LS245(U33)到ALUO1插座,实验时用8芯排线和内部数据总线BUSD0~D7插座BUS1~6中的任一个相连,内部数据总线通过LZD0~LZD7显示灯显示;运算器的两个数据输入端分别由二个锁存器74LS273(U29、U30)锁存,两个锁存器的输入并联后连至插座ALUBUS,实验时通过8芯排线连至外部数据总线EXD0~D7插座EXJ1~EXJ3中的任一个;参与运算的数据来自于8位数据开并KD0~KD7,并经过一三态门74LS245(U51)直接连至外部数据总线EXD0~EXD7,通过数据开关输入的数据由LD0~LD7显示。 图中算术逻辑运算功能发生器74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M并行相连后连至SJ2插座,实验时通过6芯排线连至6位功能开关插座UJ2,以手动方式用二进制开关S3、S2、S1、S0、CN、M来模拟74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M;其它电平控制信号LDDR1、LDDR2、ALUB`、SWB`以手动方式用二进制开关LDDR1、LDDR2、ALUB、SWB来模拟,这几个信号有自动和手动两种方式产生,通过跳线器切换,其中ALUB`、SWB`为低电平有效,LDDR1、LDDR2为高电平有效。 另有信号T4为脉冲信号,在手动方式下进行实验时,只需将跳线器J23上T4与手动脉冲发生开关的输出端SD相连,按动手动脉冲开关,即可获得实验所需的单脉冲。 2、实验接线 本实验用到4个主要模块:⑴低8位运算器模块,⑵数据输入并显示模块,⑶数据总线显示模块,⑷功能开关模块(借用微地址输入模块)。

计算机组成原理实验

实验一基础汇编语言程序设计 一、实验目的: 1、学习和了解TEC-XP16教学实验系统监控命令的用法。 2、学习和了解TEC-XP16教学实验系统的指令系统。 3、学习简单的TEC-XP16教学实验系统汇编程序设计。 二、预习要求: 1、学习TEC-XP16机监控命令的用法。 2、学习TEC-XP16机的指令系统、汇编程序设计及监控程序中子程序调用。 3、学习TEC-XP16机的使用,包括开关、指示灯、按键等。 4、了解实验内容、实验步骤和要求。 三、实验步骤: 在教学计算机硬件系统上建立与调试汇编程序有几种操作办法。 第一种办法,是使用监控程序的A命令,逐行输入并直接汇编单条的汇编语句,之后使用G命令运行这个程序。缺点是不支持汇编伪指令,修改已有程序源代码相对麻烦一些,适用于建立与运行短小的汇编程序。 第二种办法,是使用增强型的监控程序中的W命令建立完整的汇编程序,然后用M命令对建立起来的汇编程序执行汇编操作,接下来用G命令运行这个程序。适用于比较短小的程序。此时可以支持汇编伪指令,修改已经在内存中的汇编程序源代码的操作更方便一些。 第三种办法,是使用交叉汇编程序ASEC,首先在PC机上,用PC机的编辑程序建立完整的汇编程序,然后用ASEC对建立起来的汇编程序执行汇编操作,接下来把汇编操作产生的二进制的机器指令代码文件内容传送到教学机的内存中,就可以运行这个程序了。适用于规模任意大小的程序。

在这里我们只采用第一种方法。 在TEC-XP16机终端上调试汇编程序要经过以下几步: 1、使教学计算机处于正常运行状态(具体步骤见附录联机通讯指南)。 2、使用监控命令输入程序并调试。 ⑴用监控命令A输入汇编程序 >A 或>A 主存地址 如:在命令行提示符状态下输入: A 2000↙;表示该程序从2000H(内存RAM区的起始地址)地址开始 屏幕将显示: 2000: 输入如下形式的程序: 2000: MVRD R0,AAAA ;MVRD 与R0 之间有且只有一个空格,其他指令相同 2002: MVRD R1,5555 2004: ADD R0,R1 2005: AND R0,R1 2006: RET ;程序的最后一个语句,必须为RET 指令 2007:(直接敲回车键,结束A 命令输入程序的操作过程) 若输入有误,系统会给出提示并显示出错地址,用户只需在该地址重新输入正确的指令即可。 ⑵用监控命令U调出输入过的程序并显示在屏幕上 >U 或>U 主存地址

过程控制系统实验指导书解析

过程控制系统实验指导书 王永昌 西安交通大学自动化系 2015.3

实验一先进智能仪表控制实验 一、实验目的 1.学习YS—170、YS—1700等仪表的使用; 2.掌握控制系统中PID参数的整定方法; 3.熟悉Smith补偿算法。 二、实验内容 1.熟悉YS-1700单回路调节器与编程器的操作方法与步骤,用图形编程器编写简单的PID仿真程序; 2.重点进行Smith补偿器法改善大滞后对象的控制仿真实验; 3.设置SV与仿真参数,对PID参数进行整定,观察仿真结果,记录数据。 4.了解单回路控制,串级控制及顺序控制的概念,组成方式。 三、实验原理 1、YS—1700介绍 YS1700 产于日本横河公司,是一款用于过程控制的指示调节器,除了具有YS170一样的功能外,还带有可编程运算功能和2回路控制模式,可用于构建小规模的控制系统。其外形图如下: YS1700 是一款带有模拟和顺序逻辑运算的智能调节器,可以使用简单的语言对过程控制进行编程(当然,也可不使用编程模式)。高清晰的LCD提供了4种模拟类型操作面板和方便的双回路显示,简单地按前面板键就可进行操作。能在一个屏幕上对串级或两个独立的回路进行操作。标准配置I/O状态显示、预置PID控制、趋势、MV后备手动输出等功能,并且可选择是否通信及直接接收热偶、热阻等现场信号。对YS1700编程可直接在PC机上完成。

SLPC内的控制模块有三种功能结构,可用来组成不同类型的控制回路:(1)基本控制模块BSC,内含1个调节单元CNT1,相当于模拟仪表中的l台PID调节器,可用来组成各种单回路调节系统。 (2)串级控制模块CSC,内含2个互相串联的调节单元CNTl、CNT2,可组成串级调节系统。 (3)选择控制模块SSC,内含2个并联的调节单元CNTl、CNT2和1个单刀三掷切换开关CNT3,可组成选择控制系统。 当YS1700处于不同类型的控制模式时,其内部模块连接关系可以表示如下:(1)、单回路控制模式

计算机组成原理实验完整版

河南农业大学 计算机组成原理实验报告 题目简单机模型实验 学院信息与管理科学学院 专业班级计算机科学与技术2010级1班 学生姓名张子坡(1010101029) 指导教师郭玉峰 撰写日期:二○一二年六月五日

一、实验目的: 1.在掌握各部件的功能基础上,组成一个简单的计算机系统模型机; 2.了解微程序控制器是如何控制模型机运行的,掌握整机动态工作过程; 3定义五条机器指令,编写相应微程序并具体上机调试。 二、实验要求: 1.复习计算机组成的基本原理; 2.预习本实验的相关知识和内容 三、实验设备: EL-JY-II型计算机组成原理试验系统一套,排线若干。 四、模型机结构及工作原理: 模型机结构框图见实验书56页图6-1. 输出设备由底板上上的四个LED数码管及其译码、驱动电路构成,当D-G和W/R均为低电平时将数据结构的数据送入数据管显示注:本系统的数据总线为16位,指令、地址和程序计数器均为8位。当数据总线上的数据打入指令寄存器、地址寄存器和程序寄存器时,只有低8位有效。 在本实验我们学习读、写机器指令和运行机器指令的完整过程。在机器指令的执行过程中,CPU从内存中取出一条机器指令到执行结束为一个指令周期,指令由微指令组成的序列来完成,一条机器指令对应一段微程序。另外,读、写机器指令分别由相应的微程序段来完成。

为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,必须设计三个控制操作微程序。 存储器读操作(MRD):拨动清零开关CLR对地址、指令寄存器清零后,指令译码器输入CA1、CA2为“00”时,按“单步”键,可对RAM连续读操作。 存储器写操作(MWE):拨动清零开关CLR对地址、指令寄存器清零后,指令译码器输入CA1、CA2为“10”时,按“单步”键,可对RAM连续写操作。 启动程序(RUN):拨动开关CLR对地址、指令寄存器清零后,指令译码器输入CA1、CA2为“11”时,按“单步”键,即可转入第01号“取指”微指令,启动程序运行。 注:CA1、CA2由控制总线的E4、E5给出。键盘操作方式有监控程序直接对E4、E5赋值,无需接线。开关方式时可将E4、E5接至控制开关CA1、CA2,由开关控制。 五、实验内容、分析及参考代码: 生成的下一条微地址 UA5 UA0 MS5 MS0 微地址

计算机组成原理-实验一

《计算机组成原理-实验一》 实验报告 韶关学院数信学院 2010级信息与计算科学 2012年 9月

实验一:本实验分三部分: 1熟悉Linux常用命令(上) 2 Linux下程序设计基础(中) 3汇编语言与机器指令(下)(暂略) 实验一熟悉Linux常用命令(上) 一,实验要求: 1,熟练Linux下的常用命令. 2,熟练地操作linux. 二,实验内容: 练习使用Linux常用命令; 三,实验环境: windows7的vmware的Redhat。 四,Linux下常用命令实验操作:(以下命令若权限不够,要在命令前加sudo) 1. 写出下面命令每个部分含义,字符C表示命令(Command)、O表示选项(Option)、OA表示选项的参数(Option Argument)、CA表示命令的参数(Command Argument),如: C OOA O OA C A Answer $ lpr –Pspr –n 3 proposal.ps Command line Linux命令行的语法结构: $ command [[-]option(s)] [option argument(s)] [command argument(s)] 含义: ● $:linux系统提示符,您的linux系统可能是其他的提示符 ● Command :linux命令的名字 ● [[-]option(s)] :改变命令行为的一个或多个修饰符,即选项 ● [option argument(s)] :选项的参数 ● [command argument(s)] :命令的参数 1) ls -la convert.txt 2) more convert.txt 3) pwd 4) cat file1 file2 file3 5) rm -r temp 6) ping –c 3 https://www.doczj.com/doc/eb9287021.html, 7) telnet https://www.doczj.com/doc/eb9287021.html, 13 8) cc -o short short.c -lbaked 9) chmod u+rw file1.c 10) uname –n

计算机过程控制系统(DCS)课程实验指导书(详)

计算机过程控制系统(DCS)课程实验指导书实验一、单容水箱液位PID整定实验 一、实验目的 1、通过实验熟悉单回路反馈控制系统的组成和工作原理。 2、分析分别用P、PI和PID调节时的过程图形曲线。 3、定性地研究P、PI和PID调节器的参数对系统性能的影响。 二、实验设备 AE2000A型过程控制实验装置、JX-300X DCS控制系统、万用表、上位机软件、计算机、RS232-485转换器1只、串口线1根、网线1根、24芯通讯电缆1根。 三、实验原理 图2-15为单回路水箱液位控制系统 单回路调节系统一般指在一个调节对象上用一个调节器来保持一个参数的恒定,而调节器只接受一个测量信号,其输出也只控制一个执行机构。本系统所要保持的参数是液位的给定高度,即控制的任务是控制水箱液位等于给定值所要求的高度。根据控制框图,这是一个闭环反馈单回路液位控制,采用SUPCON JX-300X DCS控制。当调节方案确定之后,接下来就是整定调节器的参数,一个单回路系统设计安装就绪之后,控制质量的好坏与控制器参数选择有着很大的关系。合适的控制参数,可以带来满意的控制效果。反之,控制器参数选择得不合适,则会使控制质量变坏,达不到预期效果。一个控制系统设计好以后,系统的投运和参数整定是十分重要的工作。 一般言之,用比例(P)调节器的系统是一个有差系统,比例度δ的大小不仅会影响到余差的大小,而且也与系统的动态性能密切相关。比例积分(PI)调节器,由于积分的作用,不仅能实现系统无余差,而且只要参数δ,Ti调节合理,也能使系统具有良好的动态性能。比例积分微分(PID)调节器是在PI调节器的基础上再引入微分D的作用,从而使系统既无余差存在,又能改善系统的动态性能(快速性、稳定性等)。但是,并不是所有单回路控制系统在加入微分作用后都能改善系统品质,对于容量滞后不大,微分作用的效果并不明显,而对噪声敏感的流量系统,加入微分作用后,反而使流量品质变坏。对于我们的实验系统,在单位阶跃作用下,P、PI、PID调节系统的阶跃响应分别如图2-16中的曲线①、②、③所示。 图2-16 P、PI和PID调节的阶跃响应曲线

计算机组成原理实验七

图16 启停单元布局图 序电路由1片74LS157、2片74LS00、4个LED PLS2、PLS3、PLS4)组成。当LED发光时 图17

图17 时序单元布局图 (二)启停、脉冲单元的原理 1.启停原理:(如图18) 启停电路由1片7474组成,当按下RUN按钮,信号输出RUN=1、STOP=0,表示当前实验机为运行状态。当按下STOP 按钮,信号RUN=0、STOP=1,表示当前实验机为停止状态。当 系统处于停机状态时,微地址、进位寄存器都被清零,并且可 通过监控单元来读写内存和微程序。在停止状态下,当HALT 时有一个高电平,同时HCK有一个上升沿,此时高电平被打入 寄存器中,信号输出RUN=1、STOP=0,使实验机处于运行状态。

图18 启停单元原理图 2.时序电路: 时序电路由监控单元来控制时序输出(PLS1、PLS2、PLS3、PLS4)。实验所用的时序电路(如图19)可产生4个等间隔的时序信号PLS1、PLS2、PLS3、PLS4。为了便于监控程序流程,由监控单元输出PO信号和SIGN脉冲来实现STEP(微单步)、GO (全速)和HALT(暂停)。当实验机处于运行状态,并且是微单步执行,PLS1、PLS2、PLS3、PLS4分别发出一个脉冲,全速执行时PLS1、PLS2、PLS3、PLS4脉冲将周而复始的发送出去。在时序单元中也提供了4个按钮,实验者可手动给出4个独立的脉冲,以便实验者单拍调试模型机。

图19 时序电路图 实验步骤 1.交替按下“运行”和“暂停”,观察运行灯的变化(运行:RUN 亮;暂停:RUN灭)。 2.把HALT信号接入二进制拨动开关,HCK接入脉冲单元的PLS1。按下表接线 接入开关位号 信号定 义 HCK PLS1孔 HALT H13孔 3.按启停单元中的停止按钮,置实验机为停机状态,HALT=1。 4.按脉冲单元中的PLS1脉冲按键,在HCK上产生一个上升

计算机组成原理实验五

上海大学计算机学院 《计算机组成原理实验》报告一 姓名:学号:教师: 时间:机位:报告成绩: 实验名称:指令系统实验 一、实验目的:1. 读出系统已有的指令,并理解其含义。 2. 设计并实现一条新指令。 二、实验原理:利用CP226实验仪(用74HC754即8D型上升沿触发器)上的K16…K23 开关为数据总线DBUS设置数据,其他开关作为控制信号,一条指令执行完 毕PC会自动加1,系统顺序执行下一条指令,但系统要进入一个新的指令序 列时,如跳转、转子程序等,必须给PC打入新的起始值——新指令序列的 入口地址。实验箱实现把数据总线的值(目标地址)打入PC的操作,以更新 PC值。 三、实验内容:1. 考察机器指令64的各微指令信号,验证该指令的功能。(假设R0=77H, A=11H, 77地址单元存放56H数据,64指令的下一条指令为E8) 2. 修改机器指令E8,使其完成“输出A+W的结果左移一位后的值到OUT” 操作。 四、实验步骤:1. 考察机器指令64的各微指令信号,验证该指令的功能。(假设R0=77H, A=11H, 77地址单元存放56H数据,64指令的下一条指令为E8) ①在初始化系统(Reset),进入微程序存储器模式(μEM状态),用NX键观 察64H,65H,66H,67H, 地址中原有的微指令,分析并查表确定其功能。 ②在EM状态下,Adr打入A0,DB打入64;按NX键,Adr显示A1,DB 打入E8。 ③在μEM状态下,在E8H、E9H、EAH、EBH下分别打入:FFDED8、CBFFFF、 FFFFFF、FFFFFF。 ④给μPC状态下,打入μPC(00)、PC(A0)、A(11)、W(00),按3次 NX输入R0(77)。 ⑤按下STEP键,观察实验现象。 2. 修改机器指令E8,使其完成“输出A+W的结果左移一位后的值到OUT” 操作。 ⑥继续按STEP键,直到进入E8状态下。 ⑦在EM状态下,打入Adr为77,DB为56。 ⑧按STEP键执行指令,观察实验现象。 五、实验现象:OUT寄存器的值为5A。 六、数据记录、分析与处理:实验结果和预期的一样。 七、实验结论:1、机器指令64对应的各微指令码为:FF77FF、D7BFEF、FFFE92、CBFFFF。其功能为:将R0寄存器的值打入地址寄存器MAR;存贮器EM将MAR输出地址所对应的值打入W寄存器;ALU直通门输出的值打入A寄存器,A、W中的值进行“与”运算,结果在A输出;PC+1,读出下一条指令并立即执行。 八、建议:暂无。

单回路控制系统实验过程控制实验指导书

单回路控制系统实验 单回路控制系统概述 实验三单容水箱液位定值控制实验 实验四双容水箱液位定值控制实验 实验五锅炉内胆静(动)态水温定值控制实验 实验三 实验项目名称:单容液位定值控制系统 实验项目性质:综合型实验 所属课程名称:过程控制系统 实验计划学时:2学时 一、实验目的 1.了解单容液位定值控制系统的结构与组成。 2.掌握单容液位定值控制系统调节器参数的整定和投运方法。 3.研究调节器相关参数的变化对系统静、动态性能的影响。 4.了解P、PI、PD和PID四种调节器分别对液位控制的作用。 5.掌握同一控制系统采用不同控制方案的实现过程。 二、实验内容和(原理)要求 本实验系统结构图和方框图如图3-4所示。被控量为中水箱(也可采用上水箱或下水箱)的液位高度,实验要求中水箱的液位稳定在给定值。将压力传感器LT2检测到的中水箱液位信号作为反馈信号,在与给定量比较后的差值通过调节器控制电动调节阀的开度,以达到控制中水箱液位的目的。为了实现系统在阶跃

给定和阶跃扰动作用下的无静差控制,系统的调节器应为PI或PID控制。 三、实验主要仪器设备和材料 1.实验对象及控制屏、SA-11挂件一个、计算机一台、万用表一个; 2.SA-12挂件一个、RS485/232转换器一个、通讯线一根; 3.SA-44挂件一个、CP5611专用网卡及网线、PC/PPI通讯电缆一根。 四、实验方法、步骤及结果测试 本实验选择中水箱作为被控对象。实验之前先将储水箱中贮足水量,然后将阀门F1-1、F1-2、F1-7、F1-11全开,将中水箱出水阀门F1-10开至适当开度,其余阀门均关闭。 具体实验内容与步骤按二种方案分别叙述。 (一)、智能仪表控制 1.按照图3-5连接实验系统。将“LT2中水箱液位”钮子开关拨到“ON”的位置。 图3-4 中水箱单容液位定值控制系统

计算机组成原理实验五存储器读写实验

实验五 存储器读写实验实验目的 1. 掌握存储器的工作特性。 2. 熟悉静态存储器的操作过程,验证存储器的读写方法。 二、实验原理 表芯片控制信号逻辑功能表

2. 存储器实验单元电路 芯片状态 控制信号状态 DO-D7 数据状态 M-R M -W 保持 1 1 高阻抗 读出 0 1 6116-^总钱 写人 1 0 总线-*6116 无效 报警 ^2-10 D7—DO A7—A0

團2-8存储器实验电路逻辑图 三、实验过程 1. 连线 1) 连接实验一(输入、输出实验)的全部连线。 2) 按逻辑原理图连接M-W M-R 两根信号低电平有效信号线 3) 连接A7-A0 8根地址线。 4) 连接B-AR 正脉冲有效信号 2. 顺序写入存储器单元实验操作过程 1) 把有B-AR 控制开关全部拨到0,把有其他开关全部拨到1,使全部信号都处 于无效 状态。 2) 在输入数据开关拨一个实验数据,如“ 00000001”即16进制的01耳 把IO-R 控制开关拨下,把地址数据送到总线。 3) 拨动一下B-AR 开关,即实现“1-0-1 ”产生一个正脉冲,把地址数据送地 址寄存器保存。 4) 在输入数据开关拨一个实验数据,如“ 10000000',即16进制的80耳 把IO-R 控 制开关拨下,把实验数据送到总线。 3. 存储器实验电路 0 O O 0 0 olo O O O O 0 00 OUTPUT L/O :W 8-AR £ ■」2 ■七 ol^Fgr' L P O 74LS273 A7- AO vz 0 o|o 0 r 6116 A7 INPUT D7-O0 [olololololololol T2

自动控制原理实验指导书(2017-2018-1)

自动控制原理实验指导书 王娜编写 电气工程与自动化学院 自动化系 2017年11月 实验一控制系统的时域分析

[实验目的] 1、熟悉并掌握Matlab 操作环境和基本方法,如数据表示、绘图等命令; 2、掌握控制信号的拉氏变换与反变换laplace 和ilaplace ,控制系统生成模型的常用函数命令sys=tf(num,den),会绘制单位阶跃、脉冲响应曲线; 3、会构造控制系统的传递函数、会利用matlab 函数求取系统闭环特征根; 4、会分析控制系统中n ζω, 对系统阶跃、脉冲响应的影响。 [实验内容及步骤] 1、矩阵运算 a) 构建矩阵:A=[1 2;3 4]; B=[5 5;7 8]; 解: >> A=[1 2;3 4] A = 1 2 3 4 >>B=[5 5;7 8] B = 5 5 7 8 b) 已知A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4] ,求矩阵A 的特征值、特征多项式和特征向量. 解:>> A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4]; >> [V ,D]=eig(A) V = 0.4181 -0.4579 - 0.3096i -0.4579 + 0.3096i -0.6044 0.6211 -0.1757 + 0.2740i -0.1757 - 0.2740i 0.0504 0.5524 0.7474 0.7474 -0.2826 0.3665 -0.1592 - 0.0675i -0.1592 + 0.0675i 0.7432 D = 13.0527 0 0 0 0 -4.1671 + 1.9663i 0 0 0 0 -4.1671 - 1.9663i 0 0 0 0 2.1815 >> p=poly(A) p = -6.9000 -77.2600 -86.1300 604.5500 2. 基本绘图命令 a) 绘制余弦曲线y=cos(x),x ∈[0,2π] 解:>> x=linspace(0,2*pi); >> y=cos(x); >> plot(x,y)

计算机组成原理实验实验报告

计算机组成原理实验报告 学院信息与管理科学学院 专业班级计算机科学与技术2010级2班学生姓名毛世均 1010101046 指导教师郭玉峰 撰写日期:二○一二年六月四日

SA4=1 1.根据上边的逻辑表达式,分析58页图6-2的P1测试和P4测试两条指令的微地址转移方向。 P1测试:进行P1测试时,P1为0,其他的都为1, 因此SA4=1, SA3=I7,SA2=I6,SA1=,SA0=I4 微地址011001,下址字段为001000下址字段001000译码后,高两位不变,仍然为00,低四位受到机器指令的高四位I7-I4的影响。 机器指令的高四位为0000时,下一条微指令地址为001000,转到IN 操作。机器指令高四位0010时,下一条微指令地址为001010,转到MOV 操作。机器指令高四位为0001时,下一条微指令地址为001001,转到ADD 操作。机器指令高四位为0011时,下一条微指令地址为001011,转到OUT 操作。机器指令高四位为0100时,下一条微指令地址001100,转到JMP 操作 P4测试:进行P4测试时,P4为0,其他的都为1. 因此SA4=SA3=SA2=1,SA1=CA2,SA0=CA1 微地址000000,下址字段为010000. 010000被译码之后,高四位不变,0100低两位由CA2和CA1控制。CA2和CA1的值是由单片机的键盘填入控制的。 当实验选择CtL2=1时,CA2和CA1被填入0和1,这时低两位被译码电路翻译成01,所以下一条微地址就是010001,然后进入写机器指令的状态。当实验选择CtL2=2时,CA2和CA1被填入1和0,这时低两位被译码电路翻译成10,所以下一条微地址就是010010,然后进入读机器指令的状态。当实验选择CtL2=2时,CA2和CA1被填入1和1,这时低两位被译码电路翻译成 11,所以下一条微地址就是010011,然后进入运行机器指令的状态。 2.分析实验六中五条机器指令的执行过程。

计算机组成原理实验报告5- PC实验

2.5 PC实验 姓名:孙坚学号:134173733 班级:13计算机日期:2015.5.15 一.实验要求:利用CPTH 实验仪上的K16..K23 开关做为DBUS 的数据,其它开关做为控制信号,实现程序计数器PC的写入及加1 功能。 二.实验目的:1、了解模型机中程序计数器PC的工作原理及其控制方法。2、了解程序执行过程中顺序和跳转指令的实现方法。 三.实验电路:PC 是由两片74HC161构成的八位带预置记数器,预置数据来自数据总线。记数器的输出通过74HC245(PCOE)送到地址总线。PC 值还可以通过74HC245(PCOE_D)送回数据总线。 PC 原理图 在CPTH 中,PC+1 由PCOE 取反产生。 当RST = 0 时,PC 记数器被清0 当LDPC = 0 时,在CK的上升沿,预置数据被打入PC记数器 当PC+1 = 1 时,在CK的上升沿,PC记数器加一 当PCOE = 0 时,PC值送地址总线

PC打入控制原理图 PC 打入控制电路由一片74HC151 八选一构成(isp1016实现)。 当ELP=1 时,LDPC=1,不允许PC被预置 当ELP=0 时,LDPC 由IR3,IR2,Cy,Z确定 当IR3 IR2 = 1 X 时,LDPC=0,PC 被预置 当IR3 IR2 = 0 0 时,LDPC=非Cy,当Cy=1时,PC 被预置 当IR3 IR2 = 0 1 时,LDPC=非Z,当Z=1 时,PC 被预置 连接线表 四.实验数据及步骤: 实验1:PC 加一实验

置控制信号为: 按一次STEP脉冲键,CK产生一个上升沿,数据PC 被加一。 实验2:PC 打入实验 二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据12H 置控制信号为: 每置控制信号后,按一下STEP键,观察PC的变化。 五.心得体会: 经过上一个实验的练习,在做这个实验的时候更加得心应手,了解了模型机中程序计数器PC的工作原理及其控制方法,还有了解了程序执行过程中顺序和跳转指令的实现方法。

计算机组成原理实验1-运算器

《计算机组成原理》 实验报告 实验一运算器实验

一、实验目的 1.掌握运算器的组成及工作原理; 2.了解4位函数发生器74LS181的组合功能,熟悉运算器执行算术操 作和逻辑操作的具体实现过程; 3.验证带进位控制的74LS181的功能。 二、实验环境 EL-JY-II型计算机组成原理实验系统一套,排线若干。 三、实验内容与实验过程及分析(写出详细的实验步骤,并分析实验结果) 实验步骤:开关控制操作方式实验 1、按图1-7接线图接线: 连线时应注意:为了使连线统一,对于横排座,应使排线插头上的箭头面向自己插在横排座上;对于竖排座,应使排线插头上的箭头面向左边插在竖排座上。 图1-1 实验一开关实验接线图 2、通过数据输入电路的拨开关开关向两个数据暂存器中置数: 1)拨动清零开关CLR,使其指示灯。再拨动CLR,使其指示灯亮。置ALU-G =1:关闭ALU的三态门;再置C-G=0:打开数据输入电路的三态门; 2)向数据暂存器LT1(U3、U4)中置数:

(1)设置数据输入电路的数据开关“D15……D0”为要输入的数值; (2)置LDR1=1:使数据暂存器LT1(U3、U4)的控制信号有效,置LDR2=0:使数据暂存器LT2(U5、U6)的控制信号无效; (3)按一下脉冲源及时序电路的【单脉冲】按钮,给暂存器LT1送时钟,上升沿有效,把数据存在LT1中。 3)向数据暂存器LT2(U5、U6)中置数: (1)设置数据输入电路的数据开关“D15……D0”为想要输入的数值; (2)置LDR1=0:数据暂存器LT1的控制信号无效;置LDR2=1:使数据暂存器LT2的控制信号有效。 (3)按一下脉冲源及时序电路的“单脉冲”按钮,给暂存器LT2送时钟,上升沿有效,把数据存在LT2中。 (4)置LDR1=0、LDR2=0,使数据暂存器LT1、LT2的控制信号无效。 4)检验两个数据暂存器LT1和LT2中的数据是否正确: (1)置C-G=1,关闭数据输入电路的三态门,然后再置ALU-G=0,打开ALU 的三态门; (2)置“S3S2S1S0M”为“F1”,数据总线显示灯显示数据暂存器LT1中的数,表示往暂存器LT1置数正确; (3)置“S3S2S1S0M”为“15”,数据总线显示灯显示数据暂存器LT2中的数,表示往暂存器LT2置数正确。 3、验证74LS181的算术和逻辑功能: 按实验步骤2往两个暂存器LT1和LT2分别存十六进制数“1234H”和“5678H”,在给定LT1=1234H、LT2=5678H的情况下,通过改变“S3S2S1S0MCn”的值来改变运算器的功能设置,通过数据总线指示灯显示来读出运算器的输出值F,填入上表中,参考表1-1的功能表,分析输出F值是否正确。分别将“AR”开关拨至“1”和“0”的状态,观察进位指示灯“CY”的变化并分析原因。 实验结果表为:

计算机组成原理实验1.

计算机组成原理实验1 运算器(脱机)实验 通过开关、按键控制教学机的运算器执行指定的运算功能,并通过指示灯观察运算结果。实验原理: 为了控制Am2901运算器能够按照我们的意图完成预期的操作功能,就必须向其提供相应的控制信号和数据。 控制信号包括 1、选择送入ALU的两路操作数据R和S的组合关系(实际来源)。 2、选择ALU的八种运算功能中我们所要求的一种。这可通过提供三位功能选择码I5、 I4、I3实现。 3、选择运算结果或有关数据以什么方式送往何处的处理方案,这主要通过通用寄存器 组合和Q寄存器执不执行接收操作或位移操作,以及向芯片输出信息Y提供的是 什么内容。这是通过I8、I7、I6三位结果选择码来控制三组选择门电路实现的。 外部数据包括 1、通过D接收外部送来的数据 2、应正确给出芯片的最低位进位输入信号C n 3、关于左右移位操作过程中的RAM3、RAM0、Q3和Q0的处理。 4、当执行通用寄存器组的读操作时,由外部送入的A地址选中的通用寄存器的内容送 往A端口,由B地址选中的通用寄存器的内容送往B端口,B地址还用作通用寄 存器的写汝控制。 对于芯片的具体线路,需说明如下几点: 1、芯片结果输出信号的有无还受一个/OE(片选)信号的控制。 2、标志位F=0000为集电极开路输出,容易实现“线与”逻辑,此管脚需经过一个电阻 接到+5V。 3、RAM3、RAM0、Q3和Q0均为双向三态逻辑,一定要与外部电路正确连接。 4、通用寄存器组通过A端口、B端口读出内容的输出处均有锁存器线路支持。 5、该芯片还有两个用于芯片间完成高速进位的输出信号/G和/P。 6、Am2901芯片要用一个CLK(CP)时钟信号作为芯片内通用寄存器、锁存器和Q寄 存器的打入信号。 实验步骤如下: (1)选择运算器要完成的一项运算功能,包括数据来源,运算功能,结果保存等;(2)需要时,通过数据开关向运算器提供原始数据; (3)通过24位的微型开关向运算器提供为完成指定运算功能所需要的控制信号; (4)通过查看指示灯或用电表量测,观察运算器的运行结果(包括计算结果和特征标志)。实验准备 12为微型开关的具体控制功能分配如下: A口和B口地址:送给Am2901器件用于选择源与目的操作数的寄存器编号; I8~I0:选择操作数来源、运算操作功能、选择操作数处理结果和运算器输出内容的3组3位控制码; Sci,SSH和SST:用于确定运算器最低位的进位输入、移位信号的入/出和怎样处理Am2901产生的状态标志位的结果。

计算机组成原理实验五参考

实验五CPU组成与机器指令执行实验 第一步,对机器指令系统组成的简单程序进行译码。 第二步,接线 本实验的接线比较多,需仔细。 1.将跳线开关J1用短路子短接。时序发生器的输入TJI接控制存储器的输出TJ。控制器的输入C接运算器ALU的C。控制器的输入IR7、IR6、IR5、IR4依次指令寄存器IR的输出IR7、IR6、IR5、IR4。共6条线。

2.控制器的输出LDIR(CER)、LDPC(LDR4)、PC_ADD、PC_INC、M4、LDIAR、LDAR1(LDAR2)、AR1_INC、M3、LDER、IAR_BUS#、SW_BUS#、RS_BUS#、ALU_BUS、CEL#、LRW、WRD、LDDR1(LDDR2)、M1(M2)、S2、S1、S0 依次与数据通路的对应信号连接。共27条线。

3.指令寄存器IR的输出IR0接双端口寄存器堆的RD0、WR0,IR1接RD1、WR1,IR2接RS0,IR3接RS1。共6条线。 合上电源。按CLR#按钮,使实验系统处于初始状态。 第三步,利用控制台微程序KLD设置通用寄存器R2、R3的值 在本操作中,我们打算使R2 = 60H,R3 = 61H。 1.令DP = 0,DB = 0,DZ =0,使实验系统处于连续运行状态。令SWC = 0、SWB = 1、SWA = 1,使实验系统处于寄存器加载工作方式KLD。按CLR#按钮, 使实验系统处于初始状态。 2.在SW7—SW0上设置一个存储器地址,该存储器地址供设置通用寄存器使用。 该存储器地址最好是不常用的一个地址,以免设置通用寄存器操作破坏重要的存储 器单元的内容。例如可将该地址设置为0FFH。按一次QD按钮,将0FFH写入AR1 和AR2。

相关主题
文本预览
相关文档 最新文档