CEL#,LRW,OEL#控制左端口读、写操作,CER#,RRW,OER#控制右端口读、写操作。CEL#为左端口选择引脚,低有效。当CEL#=1时,禁止左端口读、写操作;当CEL#=0时,允许左端口读、写操作。当LRW为高时,左端口进行读操作;当LRW为低时,左端口进行写操作。当OEL#为低时,将左端口读出的数据放到数据总线DBUS上;当OEL#为高时,禁止左端口读出的数据放到数据总线DBUS上。CER#,RRW,OER#控制右端口读、写操作的方式与CEL#,LRW,OEL#控制左端口读、写操作的方式类似,不过右端口读出的数据放到指令总线上而不是数据总线上。实验台上的OEL#由LRW经反相产生。当CEL#=0且LRW=1时,左端口进行读操作,同时将读出的数据放到数据总线DBUS上。当CEL#=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。在任何时刻,都不允许两个或者两个以上的数据源同时向数据总线DBUS输送数据,只允许一个(或者没有)数据源向数据总线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。 三、实验设备
1.TEC-4计算机组成原理实验系统1台 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)相同,并记录数据。 五、实验要求
1.做好实验预习,掌握IDT7132双端口存储器的功能特性和使用方法。 2.写出实验报告,内容是: ① 实验目的; ② 实验任务(2)的数据记录表格; ③ 实验任务(3)的数据记录表格;
实验五 双端口存储器原理实验(2)
一、实验目的
3.了解双端口存储器怎样并行读写,产生冲突的情况如何。 二、实验电路
图7示出了双端口存储器的实验电路图。这里使用了一片IDT7132(U36)(2048×8位),两个端口的地址输入A8-A10引脚接地,因此实际使用存储容量为256字节。左端口的数据部分连接数据总线DBUS7-DBUS0,右端口的数据部分连接指令总线INS7-INS0。一片GAL22V10(U37)作为左端口的地址寄存器(AR1),内部具有地址递增的功能。两片4位的74HC298(U28,U27)作为右端口的地址寄存器(AR2H,AR2L),带有选择输入地址源的功能。使用两组发光二极管指示灯显示地址和数据:通过开关IR/DBUS切换显示数据总线DBUS和指令寄存器IR的数据,
图7 双端口存储器实验电路图
通过开关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,OEL#控制左端口读、写操作的方式类似,不过右端口读出的数据放到指令总线上而不是数据总线上。实验台上的OEL#由LRW经反相产生。当CEL#=0且LRW=1时,左端口进行读操作,同时将读出的数据放到数据总线DBUS上。当CEL#=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。在任何时刻,都不允许两个或者两个以上的数据源同时向数据总线DBUS输送数据,只允许一个(或者没有)数据源向数据总线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。 三、实验设备
1.TEC-4计算机组成原理实验系统1台 2.双踪示波器一台(并非必备) 3.直流万用表一只 4.逻辑测试笔一支 四.实验任务
(1)双端口存储器的并行读写和访问冲突测试。
置CEL#=0且CER=1,使存储器左、右端口同时被选中。当AR1和AR2的地址不相同时,没有访问冲突;地址相同时,由于都是读出操作,也不冲突。如果左、右端口地址相同且一个进行读操作、另一个进行写操作,则发生冲突。要检测冲突,可以用示波器测试BUSYL和BUSYR插孔(分别是两个端口的“忙”信号输出)。BUSY为0时,不一定发生冲突;但发生冲突时,BUSY一定为0。 五、实验要求
1.写出实验报告,内容是: ①实验任务(4)的测试结果; ②值得讨论的其他问题。
相关推荐: