屏幕将显示:2020 内存单元原值:
按如下形式输入:2020 原值:2222(空格)原值:3333(空格)原值:4444(空格)原值:5555↙
注意:E命令之后的地址应为2000~25FFH之间的某一个单元。 (3)使用D命令查看所修改单元的内容 D 2020↙
这里查看到的数据,应与上一步中输入的数据一致。
(4)断电后重新启动教学机,使用D命令再次查看所修改单元的内容 D 2020↙
这里发现原来置入到这几个内存单元的值已经改变。因此,用户使用RAM时,必须在每次断电重启后,重新写入所需要的数据。 (5)使用A命令输入一段指令序列 A 2000↙
按如下形式输入:
2000:MVRD R0,AAAA 2002:MVRD R1,5555 2004:AND R0,R1 2005:RET
2006:↙
这里,对RAM使用A命令写入连续的指令不会出错。 (6)单步方式执行以上指令序列,观察结果 T 2000↙
R0的值变为AAAAH,其余寄存器的值不变。 T↙
R1的值变为5555H,其余寄存器的值不变。 T↙
R0的值变为0000H,其余寄存器的值不变。 (7)教学机断电重启后,以上数据仍然会丢失
2、给定EPROM存储芯片的扩展连接
TEC-XP教学机中的RAM芯片和扩展对应的器件位置如图3-1所示。 (1)将E2PROM芯片插入扩展插槽位置
每台教学机配备2片E2PROM芯片,实验时应首先将这两个芯片插入指定区域标有“EXTROMH”和“EXTROML”的自锁紧插座中。插入方法:将锁紧杆拨开,按正确的方向将芯片插入插座中,然后放下锁紧杆,固定芯片。
2
注意:芯片插入时,应将带有半圆形缺口的一方朝左插入,一旦插反会导致芯片烧毁。
(2)数据地址线连接
将标有“DataBus 15-8”和“DataBus 7-0”的数据总线的指示灯下方的插针短接。 将标有“AddressBus 15-8”和“AddressBus 7-0”的地址总线的指示灯下方的插针短接。 (3)读写控制总线连接
将EXTROML芯片右上方的标有“WE”和“A11”的插针下面两个短接。 标有“TEC”“OE”“GND”“FPGA”的四个插针上面一排左边的两个短接。
图3-1 存储器扩展实验器件位置图
(4)片选信号连接
首先要将“EXTROMLCS”插针短接,具体的片选信号的连接可以有两种方式:一种是插针短接方式,扩展默认地址;另一种是直接连接译码器的方式,扩展地址可选。相关的插槽位置如图3-2所示。
方法一:将EXTROML芯片右边标有“TEC”“/CS”“FPGA”的三个插针左边两个短接,这表示扩展的RAM的内存地址是从4000H开始,可用空间是4000H~5FFFH,用户可在这个范围内输入程序或改变内存单元的值。
方法二:将标有“EXTROMLCS”的圆孔针与74LS138译码器下方的一排圆孔针中的任意一个用导线相连。注意:连接译码器的哪个输出端,给扩展芯片分配的就是对应的地址范围。
图3-2 译码器及插槽示意图
3、扩展容量的读写特性验证
扩展用的E2PROM芯片,其读操作和RAM一样,而其写操作,由于要先擦除信息再写入,因此需要一定的延迟时间,大约为1毫秒。在对EPROM进行写操作时,应加入一段延时子程序的调用,以完成正确的读写。
(1)用E修改扩展单元的内容,并用D查看结果
假定第2步中的扩展连接采用的是默认地址4000H~5FFFH,使用E命令修改该地址范
2
围内的某几个单元,再用D命令查看数据的修改情况。
将教学机断电后重新启动,再次查看以上修改单元的值,分析原因。 (2)控制程序
实验使用的E2PROM芯片不能直接用A命令输入程序,单字节的指令可能会写进去,双字节指令的低位会出错(建议试一试)。因此,可以将程序放到RAM(6116)中,使用程序读写扩展空间5000H~500FH单元。 从2000H单元开始输入主程序: (2000) MVRD R0,0030
MVRD R2,0010 MVRD R3,5000
[R3],R0 2200 R0 R3 R2 2006
CALA INC INC DEC JRNZ RET
;R2记录循环次数
;R3的内容为16位内存地址
;将R0寄存器的内容放到R3给出的内存单元中 ;调用程序地址为2200的延时子程序 ;R0加1 ;R3加1 ;R2减1
;R2不为0跳转到2006H
(2006) STRR
(3)延时子程序
从2200H单元开始输入延时子程序: (2200) PUSH R3 MVRD R3,0001 (2203) DEC R3
JRNZ POP RET
2203 R3
(4)运行程序,查看结果
在命令提示符下输入:G 2000↙,运行主程序。使用D命令查看5000H~500FH单元中的数据。
思考问题
1、该实验中使用的两个E2PROM芯片是位扩展还是字扩展?说明原因。
2、分析2000H单元中的E2PROM写入程序段的功能,与D命令的查看结果对比,思考原因,并改正程序使程序段运行结果正确。
实验注意事项
1、实验中,每次要改动芯片连接时,应先断电再进行。
2、实验完成后,取下扩展芯片,将FPGA下方标有“/MWR”“RD”的插针改成右边两个短接;标有“TEC”“OE”“GND”“FPGA”的四个插针中间垂直的两个短接。
3、实验过程中,不要随意改动其他芯片的位置或连接。
实验报告要求
本次实验需完成实验报告一份,本次实验报告内容写出从实验步骤2开始写,即只写E2PROM的扩展和验证即可。
实验四 微程序控制器实验
实验目的
1、深入理解微程序控制器的功能和组成结构;
2、学习教学计算机各类指令的指令格式、寻址方式及执行流程; 3、学习微程序控制器的设计过程和相关技术。
实验内容
1、分析基本指令的执行流程,在教学机上验证其对应的微指令;
2、设计几条指令的功能、格式和指令流程,并在教学计算机上进行测试。
实验要求
1、实验之前,认真准备,对于该实验的基本原理、微指令格式、以及相关机器指令的微程序等内容预先做好分析和设计;
2、实验过程中,应认真进行实验操作,仔细思考实验有关内容,把难点内容通过实验理解清楚,争取最好的实验效果;
3、实验之后,应认真思考,写出实验总结,包括实验中遇到的主要问题和分析、解决方法。
实验学时
4学时
实验原理
1、TEC-XP教学机的控制器基本原理
TEX-XP教学机中包含组合控制逻辑和微程序控制逻辑两种不同结构的控制器。本实验中使用的是微程序控制器,与微程序控制器相关的机器结构如图4-1所示。控制器中使用程序计数器PC跟踪机器指令的执行,使用PC中的内容访存获取机器指令,得到的机器指令送入控制器中的指令寄存器IR暂存,并由微程序控制器分析执行,执行过程中的所有控制信号均由微程序控制器中的微命令寄存器μIR发出。