实验三:内存储器部件实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三内存储器部件实验
一、实验目的
1、通过学习TEC-2000教学计算机的存储器系统,深入理解计算机主存储器的功能和组成;
2、学习和理解只读存储器、静态存储器芯片的读写原理,掌握计算机存储器系统的扩展方法。
二、实验说明
TEC-2000教学计算机存储器系统由ROM和RAM两个存储区组成。ROM存储区由2个EEPROM芯片58C65(8192×8)组成,容
量为8192×16。RAM存储区由2个RAM芯片6116(2048×8)组成,容量为2048×16。TEC-2000教学计算机中还预留了2个存储
器芯片插座,可以插上相应存储器芯片进行存储器容量扩展的教学实验。
TEC-2000教学计算机存储器系统组成结构图
三、实验内容
1、完成存储器容量扩展实验,为扩展存储器选择一个地址,注意读写和/OE等控制信号的正确状态;
2、用监控程序的D、E命令对存储器进行读写,比较RAM(6116)、EEPROM(58系列)存储特性的区别以及在读写上的差异;
3、用监控程序的A命令编写一段程序,对RAM(6116)进行读写,用D命令查看结果是否正确。
四、实验步骤
1、RAM实验
RAM(6116)支持随机读写操作,可直接用A、E命令向存储器输入程序或改变存储单元的值。RAM中的内容在断电后会消失,重新启动教学机后会发现存储单元的值发生了改变。
1)用E命令改变内存单元的值并用D命令观察结果。
⑴在命令行提示符状态下输入:
E 2020↙
屏幕显示2020 内存单元原值。按如下形式键入:
2222(空格)3333(空格)4444(空格)5555
⑵在命令行提示符状态下输入:
D 2020↙
观察屏幕显示的从2020内存单元开始的值。
⑶断电后重新启动教学实验机,用D命令观察内存单元2020-2023的值。
2)用A命令输入一段程序,执行并观察结果。
⑴在命令行提示符状态下输入:
A 2000↙
键入如下汇编程序:
2000:MVRD R0, AAAA
2002:MVRD R1, 5555
2004:AND R0, R1
2006
⑵在命令行提示符状态下输入:
U 2000↙
观察屏幕显示的内容。
⑶在命令行提示符状态下输入:
T 2000↙
观察寄存器R0、R1的值。
T↙
观察寄存器R0、R1的值。
T↙
观察寄存器R0、R1的值。
⑷在命令行提示符状态下输入:
G 2000↙
⑸运行输入程序。在命令行提示符状态下输入:
R↙
观察寄存器R0、R1的值。
⑹断电后重新启动教学实验机,用U命令观察内存单元2000开始的内容。
2、扩展EPROM实验
将扩展EPROM芯片(HN 58C65)插入标有“EXTROMH”和“EXTROML”的插座(注意芯片与插座的半圆形缺口方向相同);将2个插座右下方标有“/CS”的2个圆孔中的一个(内部已相连),与标有“MEM/CS”的一排圆孔中(存储器译码输出端)地址为“4000-5FFF”的圆孔用导线相连,表示扩展的EPROM的内存地址从4000H开始,可用空间是4000H-5FFFH,用户可在这个范围内输入程序或改变内存单元的值。
每个ROM插座的两边有4组插针,需根据选用的存储器芯片类型正确连接:
⑴将有“VCC∕MWR”的3个插针的上面2个短接;
⑵将标有“A11∕MWR”的3个插针的上面2个短接;
⑶将标有“2764”的2个插针断开;
⑷将标有“/MRD GND”的3个插针的上面2个短接。
1)用D命令观察地址从4000开始的内存单元的值。
2)用E命令改变地址从4000开始的4个内存单元的值,并用D命令观察结果。
3)断电后重新启动教学实验机,用D命令观察地址从4000开始的4个内存单元的值。
3、扩展EEPROM实验
HN 58C65的读操作和普通的RAM相同,但其写操作的完成需要较长的时间,大约为1毫秒。因此,需要编写一延迟子程序,在对EEPROM进行写操作时,调用该子程序,以完成正确的读写。
1)将有“VCC∕MWR”的3个插针的下面2个短接。
2)用D命令观察地址从4000开始的内存单元的值。
3)用E命令改变地址从4000开始的4个内存单元的值,并用D命令观察结果。
4)断电后重新启动教学实验机,用D命令观察地址从4000开始的4个内存单元的值。
5)HN58C65存储器不能直接用A命令输入程序,单字的指令可能会写进去,双字指令的低位会出错(建议试一试),可将编写好的程序放到RAM(6116)中,访问HN58C65的内存单元时调用延时子程序。
下面的程序,在5000H-500FH单元中依次写入数据0000H、0001H、…000FH。
从2000H单元开始输入主程序:
(2000)MVRD R0,0000
MVRD R2,0010 ;R2记录循环次数
MVRD R3,5000 ;R3的内容位16位内存
;地址
(2006)STRR [R3],R0 ;将R0寄存器的内容放到
;R3给出的内存单元中
CALA 2200 ;调用程序地址为2200的
;延时子程序
INC R0 ;R0加1
INC R3 ;R3加1
DEC R2 ;R2减1
JRNZ 2006 ;R2不为0跳转到2006H
RET
从2200H单元开始输入延时子程序:
(2200)PUSH R3
MVRD R3,FFFF
(2203)DEC R3