实验二 双端口存储器原理实验
- 格式:doc
- 大小:55.50 KB
- 文档页数:3
实验一运算器组成实验一、实验目的1.熟悉双端口通用存放器堆〔组〕的读写操作。
2.熟悉简单运算器的数据传送通路。
3.验证运算器74LS181的算术逻辑功能。
4.按给定数据,完成指定的算术、逻辑运算。
二、实验原理上图是本实验所用的运算器数据通路图。
参与运算的数据首先通过实验台操作板上的八个二进制数据开关SW7-SW0来设置,然后输入到双端口通用存放器堆RF中。
RF由一个ispLSI1016实现,功能上相当于四个8位通用存放器,用于保存参与运算的数据,运算后的结果也要送到RF中保存。
双端口存放器堆模块的控制信号中,RS1、RS0用于选择从B端口〔右端口〕读出的通用存放器,RD1、RD0用于选取从A端口〔左端口〕读出的通用存放器。
而WR1、WR0用于选择写入的通用存放器。
LDRi是写入控制信号,当LDRi=1时,数据总线DBUS上的数据在T3写入由WR1、WR0指定的通用存放器。
RF的A、B端口分别与操作数暂存器DR1、DR2相连:另外,RF的B端口通过一个三态门连接到数据总线DBUS 上,因而RF中的数据可以直接通过B端口送到DBUS上。
DR1和DR2各由1片74LS273构成,用于暂存参与运算的数据。
DR1接ALU 的A输入端口,DR2接ALU的B端口。
ALU由两片74LS181构成,ALU的输出通过一个三态门(74LS244)发送到数据总线DBUS上。
图中尾巴上带粗短线标记的信号都是控制信号,其中S3,S2,Sl,S0,M,#,LDDR2,LDDRl,ALU-BUS#,SW-BUS#、LDRi、RS1、RS0、RD1、RD0、WR1、WR0等是电位信号,用电平开关K0—Kl5来模拟。
T2、T3是脉冲信号,印制板上已连接到实验台的时序电路上。
#为低电平有效。
K0—K15是一组用于模拟各控制电平信号的开关,开关向上时为1,开关向下时为0,每个开关无固定用途,可根据实验具体情况选用。
实验中进展单拍操作,每次只产生一组Tl,T2,T3,T4脉冲,需将实验台上的DP,DB开关进展正确设置。
实验二存储器实验一、实验目的1、利用创建好的基于“D触发器”的寄存器组件,设计一个4*4的存储器。
2、通过实验掌握存储体电路的基本形式。
3、通过实验掌握地址译码器和三态门的基本功能。
4、通过实验掌握存储器扩展的方法。
二、实验步骤1、打开已有的实验工程目录:“MEM”。
通过双击目录中的QuartusII工程文件“MEM.qpf”,利用QuartusII软件打开已经建好的实验工程。
图1 打开QuartusII工程2、打开工程后,QuartusII软件的界面如图2所示。
在软件窗口的左边区域的“Project Navigator”列表栏中,选择“files”选项卡,我们可以看到列表栏中列出了这个工程中的设计文件。
本工程的设计文件说明在表1中列举出来。
表1 工程设计文件说明表设计文件说明对应组件文件DFFCE.vhd VHDL设计文件,设计一个带锁存信号的D触发器DFFCE.bsfDFFTri.bdf 使用DFFCE组件创建的4位寄存器,且带有锁存信号和输出三态控制4BitReg.bsfTriDecode.bdf 2-4地址译码器(负逻辑,即输出低有效)TriDecode.bsfMEM.bdf 4*4存储器设计文件MEM.bsf其中,设计文件“MEM.bdf”还没有完成,需要由实验者在原有设计基础上添加合理设计,完成4*4存储器的功能。
图2 工程文件列表图3、这个工程中创建了一个4*4存储器,用到了刚才创建的2-4译码器和三态门。
其中,A1A0是地址线;D3-D0是数据输入线,Q3-Q0是数据输出线(实际的存储器芯片输入输出是一组管脚,这里为了方便看到实验现象分开设置);WR是写控制线,上升沿有效;读控制线则是实验者的设计任务。
图3 带三态输出的4Bit存储字电路图4 4*4存储器电路4、设计完成后,根据设计情况自行分配引脚和连线方式,编译并下载,验证自己的设计结果。
5、实验工程中的各个组件原理图如下所示。
实验二存储器实验1、F PGA中ROM定制与读出实验一.实验目的1、掌握FPGA中ROM的设置,作为只读存储器ROM的工作特性和配置方法。
2、用文本编辑器编辑mif文件配置ROM,学习将程序代码以mif格式文件加载于ROM中;3、在初始化存储器编辑窗口编辑mif文件配置ROM;4、验证FPGA中ROM的功能。
二.实验原理ALTERA的FPGA中有许多可调用的模块库,可构成如rom、ram、fifo等存储器结构。
CPU中的重要部件,如RAM、ROM可直接调用他们构成,因此在FPGA中利用嵌入式阵列块EAB可以构成各种结构的存储器,ROM是其中的一种。
ROM有5组信号:地址信号address[ ]、数据信号q[ ]、时钟信号inclock、outclock、允许信号memenable,其参数都是可以设定的。
由于ROM是只读存储器,所以它的数据口是单向的输出端口,ROM中的数据是在对FPGA现场配置时,通过配置文件一起写入存储单元的。
图2-1-1中的ROM有3组信号:inclk——输入时钟脉冲;instruction[31..0]——lpm_ROM的32位数据输出端;a[4..0]——lpm_ROM的5位读出地址。
实验中主要应掌握以下三方面的内容:(1)ROM的参数设置;(2)ROM中数据的写入,即FILE初始化文件的编写;(3)ROM的实际应用,在GW48_CP+实验台上的调试方法。
三.实验步骤(1)新建工程。
工程名是scinstmem.qpf。
(2)用初始化存储器编辑窗口编辑ROM配置文件(文件名.mif)。
这里预先给出后面将要用到的指令存储器初始化文件:scinstmem.mif 。
scinstmem.mif中的数据是机器指令代码(图2-1-3)。
(3)模块设计。
用图形编辑,使用工具Mega Wizard Plug-In Manager,定制指令存储器rom宏功能块。
设置地址总线宽度address[]和数据总线宽度q[],分别为5位和32位,并添加输入输出引脚,如图2-1-1设置和连接。
大学学生实验报告开课学院及实验室:室 2013年 5月11日学院计算机科学与教育软件学院年级、专业、班学号实验课程名称计算机组成与系统结构实验成绩实验项目名称存储器和总线传输实验指导老师2.3.3准双向I/O口实验一、实验目的熟悉与了解准双向I/O口的构成原理。
二、实验原理Dais-CMX16+向用户提供的是按准双向原理设计的十六位输入/输出I/O口,当该位为“1”时才能用作输入源,上电或复位(手动态按【返回】键),该十六位I/O口被置位(即为“0FFFFh”)。
通常情况下,在用作输入的时候就不能再有输出定义。
电路结构如图2-3-4所示。
该口外接十六位二进制数据开关,适用于外部数据的输入,该口跨接十六个发光二极管,经缓冲驱动四个七段显示,能以二进制和十六进制两种方式显示I/O口的输入输出状态。
发光管在高电平“1”时发光点亮。
图2-3-4 准双向I/O电路实验中所用的I/O口数据通路如图2-3-5所示。
I/O的输入经2片74LS245缓冲与数据总线相连,I/O口的输出由2片74LS574锁存后输出,锁存器的输入端与数据总线相连。
图2-3-5 I/O口数据通路三、使用仪器、器材Dais-CMX16+实验箱、导线若干四、实验步骤及数据记录1.实验连线连线信号孔接入孔作用有效电平1 IOCK CLOCK 单元手动实验状态的时钟来源下降沿打入2 W K6(M6) 总线字长:0=16位字操作,1=8位字节操作3 X2 K10(M10) 源部件定义译码端X2 三八译码八中选一低电平有效4 X1 K9(M9) 源部件定义译码端X15 X0 K8(M8) 源部件定义译码端X06 XP K7(M7) 源奇偶位:0=偶寻址,1=奇寻址7 IOW K17(M17) I/O写使能,本例定义到M17位低电平有效8 OP K16(M16) 目的奇偶位:0=偶寻址,1=奇寻址9 RXW K19(M19) 寄存器写使能,本例定义到M19位低电平有效10 DI K18(K18) 目标寄存器编址:0=CX,1=DX,定义到M182.搭接方式I/O的寻址定义I/O口源编址I/O口目的编址源编码I/O编址注释目的I/O编址注释X2 X1 X0 W XP IOW W OP IOCK1 0 00 0 IO字读0 0 ↓IO字写10IOL偶字节读 1 0 ↓IOL偶字节写X1IOH奇字节读X 1 ↓IOH奇字节写3.I/O口写操作(输出)执行OUT I/O,AX 指令,把AX容送I/O口。
实验一运算器[实验目的]1.掌握算术逻辑运算加、减、乘、与的工作原理;2.熟悉简单运算器的数据传送通路;3.验证实验台运算器的8位加、减、与、直通功能;4.验证实验台4位乘4位功能。
[接线]功能开关:DB=0 DZ=0 DP=1 IR/DBUS=DBUS接线:LRW:GND(接地)IAR-BUS# 、M1、M2、RS-BUS#:接+5V控制开关:K0:SW-BUS# K1:ALU-BUSK2:S0 K3:S1 K4:S2K5:LDDR1 K6:LDDR2[实验步骤]一、(81)H与(82)H运算1.K0=0:SW开关与数据总线接通K1=0:ALU输出与数据总线断开2.开电源,按CLR#复位3.置数(81)H:在SW7—SW0输入10000001→LDDR2=1,LDDR1=0→按QD:数据送DR2置数(82)H:在SW7—SW0输入10000010→LDDR2=0,LDDR1=1→按QD:数据送DR1 4.K0=1:SW开关与数据总线断开K1=1:ALU输出与数据总线接通5. S2S1S0=010:运算器做加法(观察结果在显示灯的显示与进位结果C的显示)6.改变S2S1S0的值,对同一组数做不同的运算,观察显示灯的结果。
二、乘法、减法、直通等运算1.K0K1=002.按CLR#复位3.分别给DR1和DR2置数4.K0K1=115. S2S1S0取不同的值,执行不同的运算[思考]M1、M2控制信号的作用是什么?运算器运算类型选择表选择操作S2 S1 S00 0 0 A&B0 0 1 A&A(直通)0 1 0 A+B0 1 1 A-B1 0 0 A(低位)ΧB(低位)完成以下表格ALU-BUS SW-BUS# 存储器内容S2S1S0 DBUS C输入时:计算时:DR1:01100011DR2:10110100(与)DR1:10110100DR2:01100011(直通)DR1:01100011DR2:01100011(加)DR1:01001100DR2:10110011(减)DR1:11111111DR2:11111111(乘)实验二双端口存储器[实验目的]1.了解双端口存储器的读写;2.了解双端口存储器的读写并行读写及产生冲突的情况。
实验二 存储器实验一、实验目的学会存储器的读写方法,了解控制信号的作用。
二、实验电路〈见附录 5 〉三、实验原理存储器实验电路由RAM(6116),AR(74LS273 )等组成。
SW7~SW0为逻辑开关量,以产生地址和数据 : 寄存器 AR 输出 A7~AO 提供存储器地址,通过显示灯可以显示地址。
D7~D0 为总线 , 通过显示灯可以显示数据。
当LDAR 为高电平、BUSSW→为低电平 ,T3 信号上升沿到来时, 开关 SW7~SW0 产生的地址信号送入地址寄存器 AR。
当 CE 为低电平、 WE 为高电平、BUSSW→为低电平,T3 上升沿到来时,开关SW7~SW0 产生的数据写入存储器由A7-A0确定的存储单元内。
当CE为低电平、WE为低电平、BUSSW→为高电平,T3上升沿到来时,存储器为读出数据 ,D7~D0显示由A7-A0所确定的地址中的数据。
实验中,除T3信号外,CE、WE、LDAR、BUSSW→为电位控制信号,因此通过对应逻辑开关来模拟控制信号的电平,而LDAR、WE控制信号受时序信号T3定时。
四、实验步骤实验前预置下列逻辑电平状态 :BUSALU→=1、 /PC→SW→=1、BUSBUS=1,BUS0=1、Rl→BUS=1,R2→BUS=1使总线处在空闲状态, TJ、DP对应R→的逻辑开关置成11状态(高电平输出),时序发生器处于单拍输出状态,实验是在单步状态下进行的, 以便能清楚地看见每一步的运算过程。
将时钟脉冲f0-f3任选一个为“1”,其他三个均为“0”。
实验步骤按表2进行。
实验对表中的开关进行置1或置0,即对有关控制信号置l或置0。
表3中只列出了存储器实验步骤中的一部分,即对几个存储器单元进行了读写,对其它存储单元的操作与之相类似。
表中带↑的地方表示按一次单次脉冲P0。
注意:表中列出的总线显示 D7~DO及地址显示A7~A0,显示情况是:在写入RAM地址时,由 SW7~SW0开关量地址送至 D7~D0,总线显示SW7~SW0开关量,而A7~A0则显示上一个地址,在按P0后,地址才进入AR锁存器, 即在单次脉冲(T3)作用后, A7~A0 同D7~D0才显示一样。
实验二存储器工作原理实验一.实验目的1.掌握随机存储器RAM的工作特性;2.掌握RAM数据的读写方法;3.掌握寄存器堆的工作原理;4.掌握数据通路建立过程中各控制信号的时序关系;5.掌握寄存器和存储器之间的数据传输过程。
二.实验设备1. DE2-70开发板,下载线缆2.QuartusII IDE3.实验提供的文件见表1表1 源文件清单三.实验电路图实验电路图如图1所示。
图1 存储器原理实验电路图四.实验内容1.认真阅读本实验提供的11个Verilog HDL源文件,明确下列各部件的输入和输出之间的逻辑关系;分析工程中所有输入和输出信号的功能及其在DE2-70开发板上的资源使用情况。
完成实验预习与分析要求1的内容。
(1)三态门(2)寄存器(3)寄存器堆(4)运算器(5)存储器(6)多路数据选择器(7)七段数码模块2.深入理解数据通路图,完成以下各种数据传输。
(1)将寄存器初始化为常数即R[i] <= #data,(i=1~15),完成表2操作。
(2)将寄存器的内容存入存储单元中即M[x] <=R[i] (i=0~15),完成表3操作。
(3) 将存储器的内容存入寄存器中即R[i] <= M[x] (i=1~15),完成表4操作。
(4)实现寄存器之间的数据传输(选作1)即R[i] <=R[j],(i=1~15,j=0~15,且i≠j),完成表5操作。
(5) 将两个寄存器进行运算后再存入寄存器(选作2)即R[s] <=R[i] OP R[j],(s=1~15,i,j=0~15),完成表6操作。
五.实验预习与分析要求1.分析电路图,仔细阅读各模块Verilog 代码,明确各主要功能模块的功能,理解数据传送通路。
仿照图2画出实验电路框图。
请严格遵循下边的绘图要求。
oLEDG[7..0](SW[1])RFWR (高有效)(KEY0)REGW_SEL[1..0](SW[6..5])(KEY1)……图2 存储器原理实验框图示例(1)使用A3纸,横版画出(手画)。
计算机组成原理实验报告实验名称:静态随机存储器实验实验类型:验证型实验环境:TD-CMA系统、实验箱指导教师:顾娅军专业班级:信安1505班姓名:学号:实验地点:东6E501实验日期:2017年4月25日成绩:__________________________一、实验目的掌握静态随机存储器RAM工作特性及数据的读写方法二、实验过程(1)关闭实验系统电源,按图2-1-4所示连接实验电路,并检查无误(2)将时序与操作台单元的开关 KK1、KK3置为运行档、开关 KK2置为‘单步’档(3)将 CON单元的 IOR开关置为 1(使 I N单元无输出),打开电源开关,如果听到有“嘀”报警声,说明有总线竞争现象,应立即关闭电源,重新检查接线,直到错误排除。
(4)给存储器的 00H、01H、02H、03H、04H地址单元中分别写入数据 11H、12H、13H、14H、15H。
由前面的存储器实验原理图(图 2-1-3)可以看出,由于数据和地址由同一个数据开关给出,因此数据和地址要分时写入,先写地址,具体操作步骤为:先关掉存储器的读写(WR=0,RD=0),数据开关输出地址(IOR=0),然后打开地址寄存器门控信号(LDAR=1),按动 ST产生 T3脉冲,即将地址打入到AR中。
再写数据,具体操作步骤为:先关掉存储器的读写(WR=0,RD=0)和地址寄存器门控信号(LDAR=0),数据开关输出要写入的数据,打开输入三态门(IOR=0),然后使存储器处于写状态(WR=1,RD=0,IOM=0),按动 ST产生T3脉冲,即将数据打入到存储器中。
写存储器的流程如图 2-1-5所示(以向 00地址单元写入11H为例)(5)依次读出第 00、01、02、03、04号单元中的内容,观察上述各单元中的内容是否与前面写入的一致。
同写操作类似,也要先给出地址,然后进行读,地址的给出和前面一样,而在进行读操作时,应先关闭 IN单元的输出(IOR=1),然后使存储器处于读状态(WR=0,RD=1,IOM=0),此时数据总线上的数即为从存储器当前地址中读出的数据内容。
第1篇一、实验目的1. 理解存储器的基本概念、分类及工作原理;2. 掌握静态随机存储器(RAM)和只读存储器(ROM)的读写操作;3. 熟悉存储器在计算机系统中的作用及重要性;4. 提高动手能力,培养实验操作技能。
二、实验环境与仪器1. 实验环境:计算机组成原理实验室2. 实验仪器:- 计算机- 2Kx8 静态随机存储器 6116- 8 位数据锁存器 74LS273- 三态输出的 8 组总线收发器 74LS245- 非门、与门、开关、指示灯等三、实验原理1. 存储器分类存储器按存储介质可分为:磁存储器、半导体存储器、光存储器等;按存储功能可分为:只读存储器(ROM)、随机存储器(RAM)、闪存等。
2. 静态随机存储器(RAM)RAM是一种易失性存储器,断电后信息会丢失。
RAM具有读写速度快、存储容量大等特点,广泛应用于计算机系统中。
本实验使用2Kx8位静态随机存储器6116,其容量为2K字节,即2048字节,每个字节8位。
3. 只读存储器(ROM)ROM是一种非易失性存储器,断电后信息不会丢失。
ROM用于存储程序、数据等,如计算机的BIOS、固件等。
本实验使用只读存储器,具体型号未给出。
4. 存储器读写操作存储器读写操作主要包括:地址译码、数据传输、控制信号等。
本实验通过连接74LS273、74LS245等芯片,实现存储器的读写操作。
四、实验内容与步骤1. 连接电路根据实验电路图,连接2Kx8位静态随机存储器6116、8位数据锁存器74LS273、三态输出的8组总线收发器74LS245等芯片。
连接控制信号,如CE、OE、WE、P1、LDAR等。
2. 测试电路打开计算机,运行实验软件,对连接的电路进行测试。
观察存储器读写操作是否正常,如读写操作是否成功、数据是否正确等。
3. 数据初始化利用文本编辑器编辑mif文件,对只读存储器进行初始化。
将初始化后的mif文件加载到只读存储器中。
4. 读写操作在实验软件中,编写程序对存储器进行读写操作。
双端口sram和单端口sram原理双端口SRAM和单端口SRAM原理一、引言SRAM是一种静态随机存储器,广泛应用于计算机和其他数字电子设备中。
它具有快速读写速度、易于集成和较低的功耗等优点,因此在存储器领域有着重要的地位。
在SRAM中,双端口SRAM和单端口SRAM是两种常见的类型。
本文将分别介绍双端口SRAM 和单端口SRAM的原理及其特点。
二、双端口SRAM原理双端口SRAM是指具有两个独立的读写端口的SRAM。
这两个端口分别用于读取和写入数据,可以同时进行读写操作。
双端口SRAM 通常由一个存储单元阵列和控制电路组成。
1. 存储单元阵列双端口SRAM的存储单元阵列由多个存储单元组成,每个存储单元由一个存储电路和一个传输门组成。
存储电路用于存储数据,传输门用于控制数据的读写。
存储电路一般由多个触发器构成,可以存储一个比特的数据。
2. 控制电路双端口SRAM的控制电路用于控制读写操作。
它包括地址解码器、写使能线路和读使能线路等。
地址解码器根据输入的地址信号选择相应的存储单元,将数据写入或读出。
写使能线路和读使能线路用于控制写入和读取操作的时序。
3. 读写操作双端口SRAM的读写操作可以同时进行,通过控制电路的读使能线路和写使能线路来实现。
当读使能信号有效时,地址解码器会选择相应的存储单元,将数据读出到输出端口。
当写使能信号有效时,地址解码器会选择相应的存储单元,将输入端口的数据写入到存储单元中。
4. 特点双端口SRAM具有以下特点:(1)具有较高的读写速度,可以满足高速数据处理的需求;(2)具有独立的读写端口,可以同时进行读写操作,提高了数据访问的效率;(3)需要较多的引脚和控制线,占用了较多的芯片资源。
三、单端口SRAM原理单端口SRAM是指只有一个读写端口的SRAM。
它与双端口SRAM相比,只能进行读取或写入操作,不能同时进行。
单端口SRAM也由存储单元阵列和控制电路组成。
1. 存储单元阵列单端口SRAM的存储单元阵列与双端口SRAM相似,由多个存储单元组成。
1 实验二 双端口存储器原理实验 一、实验目的 (1)了解双端口静态随机存储器IDT7132的工作特性及使用方法。 (2)了解半导体存储器怎样存储和读出数据。 (3)了解双端口存储器怎样并行读写,产生冲突的情况如何。
二、实验电路
图7 双端口存储器实验电路图 2
图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的数据,通过开关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。
三、实验设备
(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)相同,并记录数据。 3
(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。再令K3(LDAR1)=0,K0(CEL#)=0,K1(LRW)=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#)=0,K6(LDIR)=0。将IR/DBUS开关拨到DBUS位置,将ARl/AR2开关拨到AR1位置。置SW7-SW0=00H,按一次QD按钮,将00H写入AR1,绿色的地址指示灯应显示00H。令K5(SW_BUS#)=1,然后令K3(LDAR1)=0,K0(CEL#)=0,K1(LRW) =l,则读出存储器的00H单元的数据,读出的数据显示在DBUS数据指示灯上,应为00H。照此方法,可依次读出存储器单元l0H、20H、30H、40H的数据 。
(3)读出存储器的数据,写入IR。 令K0(CEL#)=l,K1(LRW)=l,K2(CER)=0,K3(LDAR1)=0,K4(LDAR2)=1,K5 (SW_BUS#)=0,K6(LDIR)=0。将IR/DBUS开关拨到IR位置,将ARl/AR2开关拨到AR2位置。置SW7-SW0=00H,按一次QD按钮,将00H写入AR2,绿色的地址指示灯应显示00H。令K4(LDAR2)=0,K2(CER)=l,K6(LDIR)=1,按一次QD按钮,则从右端口读出存储器的00H单元的数据,读出的数据写入指令寄存器IR,显示在IR数据指示灯上,应为00H。照此方法,可从右端口依次读出存储器单元l0H、20H、30H、40H的数据,写入指令寄存器IR。
(4)双端口存储器的并行读写和访问冲突测试 1.令K0(CEL#)=l,K1(LRW)=l,K2(CER)=0,K3(LDAR1)=l,K4(LDAR2)=0,K5 (SW_BUS#)=0,K6(LDIR)=0。将ARl/AR2开关拨到AR1位置。置SW7-SW0=38H,按一次QD按钮,将38H写入AR1,绿色的地址指示灯应显示38H。令K3(LDAR1)=0,K4(LDAR2)= l,K5(SW_BUS#)=0将ARl/AR2开关拨到AR2位置。置SW7-SW0=38H,按一次QD按钮,将38H写入AR2,绿色的地址指示灯应显示38H。 2. 先令K2(CER)=1,K0(CEL#)=1,用示波器探头(或逻辑笔)测试BUSYL插孔,BUSYL应为高电平。保持K2(CER)不变,将K0(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信号也从低电平变为高电平。