8086微处理器是美国Intel公司在1978年推出的一种16位微处理器。它采用硅栅HMOS工艺制造,在1.45 cm 2 的单个硅片上集成了29 000个晶体管。以它为核心组成的微机系统,其性能已达到当时中、高档小型计算机的水平。8086具有丰富的指令系统,采用多级中断技术、多种寻址方式、多种数据处理形式、分段式存储器结构,硬件乘除法运算电路,并增加了预取指令队列寄存器等,使其性能大为增强。8086微处理器的一个突出的特点是多重处理能力,用8086 CPU与8087协处理器,以及8089 I/O处理器可组成多处理器系统,提高了数据处理能力和输入输出能力。
1.理解8086/8088的工作原理
2.掌握8086/8088微处理器的寄存器结构
3.掌握程序调试(Debug)的方法
4.熟悉和掌握逻辑分析仪的使用方法
1.打开实例实验项目工程,学习开发环境使用。
2.运行并调试实例程序,观察各寄存器和内存空间的数据变化,学习调试工具使用。
3.使用逻辑分析仪功能,采集总线数据,分析示例简单程序指令的执行过程。
第一步 打开Wave6000 IDE(集成开发环境),并打开实例项目EX1.prj,如图3-1所示。
图3-1 开发环境主界面
第二步 硬件仿真器设置。
点击“仿真器”菜单,打开“仿真器设置”选项界面,设置硬件仿真调试,选择合适的仿真器和通信串口,设置如图3-2,图3-3所示。
图3-2 仿真器设置a
图3-3 仿真器设置b
设置成功后,结果界面如图3-4所示。
图3-4 仿真器设置结果
第三步 单步调试。
打开EX1.asm汇编语言文件,点击“项目”菜单中的“编译”或“全部编译”选项,并下载程序。单击工具栏中的“跟踪”或“单步”按钮,单步执行程序,如图3-5 所示,观察SFR(寄存器)和相应内存地址中数据的变化。当程序运行至图3-5所示所指的位置时,相应的内存地址单元(0x0400)内容改为0。
图3-5 单步调试界面
第四步 使用逻辑分析仪。
点击“仿真器设置”菜单中“跟踪器/逻辑分析仪”选项,选中“逻辑分析仪”选项,如图3-6所示。
图3-6 逻辑分析仪设置
在程序代码“jmp $”处设置断点,点击工具栏复位按钮,系统处于复位状态。
使用连接导线连接实验箱中“逻辑分析仪L0”和“8088 CLK”两个引脚,以使逻辑分析仪采集CPU的时钟引脚。
图3-7 CPUCLK信号采集图示
单击全速运行,则程序在运行过后在断点处停止。点击“逻辑分析仪”按钮,弹出逻辑分析仪采集窗口。
手动调出汇编窗口(Disassembly)。
图3-8 汇编窗口
图3-9 逻辑分析仪窗口a
图3-10 逻辑分析仪窗口b
第五步 逻辑分析仪采集数据分析。
由汇编窗口(图3-8所示)可知,本实验程序的主要核心代码经编译后,以机器语言(8086/8088所能够识别的二进制代码)形式存放于内存地址的0X0500~0X0514单元中,且机器指令长度不一。IP(程序指针寄存器)指明了当前所取指令的内存单元地址。
逻辑分析仪窗口(图3-9、图3-10所示)中各个总线意义:
D:8088处理器“时钟/数据”复用总线
AH:8088处理器高八位地址总线
AL:经过了8286锁存器锁存的8088低八位地址总线
LA0:手动连接的8088CPU的时钟信号
RD:8088读有效
WR:8088写有效
由此可看出:
(1)一个总线周期,指的是8088从外部存储器(即内存)中取得一个字节数据的时间。如图3-9中游标M0、M1标明内容所示,一个总线包含了4个时钟周期,其中,地址、数据、ALE、RD、WR信号分别在特定时段有效,配合完成一个总线周期。
(2)8088遵循了冯·诺依曼的“存储—读取—执行”的程序运行过程。如图3-9所示,从0X0500地址起取得指令码“0XB84000”,共三个字节。
(3)一个指令周期包含了指令的读周期和指令的执行周期。由图3-8可知,mov[bx]byte ptr 0的机器码为“C60700”,存储地址为0X0508开始的三个内存单元,该指令的意义为“向内存单元写入一个字节,写入数据为0,写入地址为:以DS为段基地址,以BX为段内偏移地址”。由图3-10可以看出,8088CPU首先使用了三个总线周期读取了该指令的机器码,但并没有立即执行。在光标M1处,出现了向地址0X0400写入数据0的写总线时序操作。由此可以知道,8088在内部使用了指令流水线,读取的指令首先存入指令流水线,等待前序指令执行完成后,开始执行本指令。
Ex1.asm源程序清单:
1.调试的概念和作用是什么。
2.结合实验,分析ALE信号发生的时刻和作用。
3.结合任意实际程序,分析8088CPU在最小模式工作时的总线周期、指令周期,并结合逻辑分析仪图示,分析读指令、写指令、乘法指令等的执行过程。
4.当8088工作在最小模式,系统总线形成需要哪些控制信号,作用分别是什么?结合实验图示进行说明。