逻辑分析仪原理及应用研究讲解.docx
《逻辑分析仪原理及应用研究讲解.docx》由会员分享,可在线阅读,更多相关《逻辑分析仪原理及应用研究讲解.docx(34页珍藏版)》请在冰豆网上搜索。
逻辑分析仪原理及应用研究讲解
逻辑分析仪原理及应用研究
一、实验目的:
1.了解逻辑分析仪的基本工作原理。
2.掌握利用逻辑分析仪进行数字系统测试分析的方法
二、实验原理:
〈一〉逻辑分析仪原理及相关术语简介。
(1)逻辑分析仪的工作原理简介
逻辑分析仪的组成结构如图1所示,它主要包括数据捕获和数据显示两大部分。
由于数字系统的测试一般要观察较长时间范围的信号间逻辑关系或较长的数据流才能进行分析,逻辑分析仪一般采用先进行数据捕获即采集并存储数据,然后进行数据显示并观察分析的方式。
因此逻辑分析仪内部结构可划分为两大部分:
数据捕获及数据显示。
数据捕获部分包括信号输入、采样、数据存储、触发产生和时钟电路等。
外部被测信号送到信号输入电路,与门限电平进行比较,通过比较器整形为符合逻辑分析仪内部逻辑电平的信号(如TTL电平信号)。
采样电路在采样时钟控制下对信号进行采样,采样获得的数据流送到触发产生电路进行触发识别,根据数据捕获方式,在数据流中搜索特定的数据字(触发字),当搜索到符合条件的触发字时,就产生触发信号。
数据存储电路在触发信号的作用下进行相应的数据存储控制,而时钟电路可以选择外时钟或内时钟作为系统的工作时钟。
数据捕获完成后,由显示控制电路将存储的数据以适当方式(波形或字符列表等)显示出来,以便对捕获的数据进行观察分析。
(2)逻辑分析仪相关术语简介
组合触发:
当输入数据设定触发字一致时,产生触发脉冲。
每一个输入通道都有一个触发字选择设置开关,每个开关有三种触发条件:
1、0、x,“1”表示高电平,“0”表示低电平,“x”表示任意值。
例如某逻辑分析仪有八个通道,如果触发字设为011001x0,则在八个输入数据通道中出现下面两种组合中的一种时都会产生触发:
01100100或01100110。
组合触发是逻辑分析仪最基本的触发方式。
延迟触发:
延迟触发是在数据流中搜索到触发字时,并不立即跟踪,而是延迟一定数量的数据后才开始或停止存储数据,它可以改变触发字与数据窗口的相对位置。
延迟触发时的跟踪如图2所示,设置不同的延迟数,就可以将窗口灵活定位在数据流中不同的位置。
序列触发:
序列触发的触发条件是多个触发字的序列,它是当数据流中按顺序出现各个触发字时才触发,即顺序在前的触发字必须出现后,后面的触发字才有效。
序列触发常用于复杂分支程序的跟踪,图3中所示是一个两级序列触发的工作原理。
手动触发:
手动触发是一种人工强制触发。
该方式下,只要设置分析开始,即进行触发并显示数据。
它是一种无条件的触发,由于该方式下观察窗口在数据流中的位置是随机的,亦称随机触发。
限定触发:
限定触发是对设置的触发字再加限定条件的触发方式。
波形显示:
它是定时分析最基本的显示方式,它将各通道采集的数据按通道以伪方波形式显示出来,每一个通道的信号按照采集存储的数据状态,用一个波形显示,如果在某一采样时刻采得的数据为“1”,则显示为高,为“0”则显示为低,多个通道的波形可以同时显示。
数据列表显示:
它常用于状态分析时的数据显示,它是将数据以列表方式显示出来,数据可以显示为二进制、八进制、十六进制、十进制以及ASCII码等形式。
反汇编显示:
它是将采集到的总线数据(指令的机器码)按照被测的微处理器系统的指令系统进行反汇编,然后将反汇编成的汇编程序显示出来,这样可以非常方便地观察指令流,分析程序运行情况。
〈二〉实验目标板的结构及原理
目标测试板的结构如图4所示:
(1)数据发生器原理:
微机利用虚拟面板产生数据通过USB接口将数据传送给单片机,单片机通过对数据的处理,并将接收到的数据以较低的速度存储到存储器中。
高速数据的产生是保持存储器处于选通状态,通过100MHZ的晶振时钟或进行分频后的时钟作为计数器的工作时钟,计数值并行输出作为存储器地址,从而的到高速输出的16路数据信号。
存储器深度为256K*16。
数据不重复的最大周期为:
在256k*时钟周期。
目标板数据发生器的结构框图如图5:
(2)毛刺发生电路原理:
毛刺产生电路是由三个D触发器构成。
由于硬件电路输入与输出之间有一定的延时,当电路中的D触发器速度较慢时,74LS138的A、B、C三个输入信号的延时不一致,有可能在输出端出现引起错误动作的窄脉冲,而逻辑分析仪的正常采样方式观察不到该窄脉冲,这时要使用毛刺检测功能来观察毛刺。
调节数据发生器的输出信号延时,同时逻辑分析仪工作在毛刺锁定方式下,在波形窗口中开启毛刺显示,即可观察到译码器输出端上的毛刺,如图7(b)所示。
由图可见,译码器的输出波形与图7(b)完全相同,只是在检测出毛刺的地方给出了毛刺的标记,表示此时该信号上出现了窄脉冲,可能会引起电路工作的不正常。
时序图如下:
三、实验设备及其说明:
〈一〉ES4521逻辑分析仪一台
(1)功能简介
ES4521l逻辑分析仪具有32个数据通道,2个外时钟通道,定时分析最大速率为200MHZ,状态分析最大速率为100MHz。
可实现高速的定时分析和状态分析,具有多种触发跟踪方式,波形、数据列表等多种显示方式,具有反汇编软件跟踪等多种功能。
存储深度最大为256k具有可靠的毛刺检测功能,最小毛刺捕捉能力达5ns。
(2)使用说明
运行ES4521.EXE程序后,将出现逻辑分析仪主面板。
主面板有4个菜单项:
文件菜单:
包括保存设置,装载设置,保存数据,装载数据,退出。
保存设置:
将逻辑分析仪参数及触发设置保存为扩展名为.lgs的磁盘文件。
点击后程序将弹出如下图的对话框,用户选择要保存的目录,输入文件名后,点击保存按钮。
如果不想保存,点击取消按钮。
装载设置:
从磁盘文件中读取以往保存的参数设置,点击后将弹出如图10所示的对话框,选定想要装载的设置文件,点击打开按钮,完成装载。
如果不想装载,点击取消按钮。
保存数据:
将采集到的数据保存为扩展名为.lgd的磁盘文件。
装载数据:
从磁盘文件中读取以往保存的数据。
系统菜单:
包括分析仪设置,跟踪方式设置,波形分析,状态列表,反汇编和探头活性。
点击后将出现相应面板。
帮助菜单:
帮助文档及本软件版本号。
工具条上四个按扭分别是设置,触发,波形和数据。
点击后将会出现相应面板。
工具条上4个按钮与系统菜单的前四项功能相同。
主面板底部为状态栏,显示出分析仪当前的工作方式,触发字和探头。
1.逻辑分析仪设置面板
功能:
设置工作方式,门限电压,探头通道选择等采集参数,界面如图11。
时钟选择:
内时钟:
分析仪将采用自己内部时钟对数据信号进行采样。
外时钟:
分析仪将采用外部输入的被测系统时钟的有效沿进行采样。
采样方式:
正常采样:
只采样数据,不采样毛刺。
毛刺采样:
同时采样数据和毛刺。
注意,选择毛刺采样方式时,采样频率的上限为100MHz,存储深度上限为256K。
门限电压:
当被检测电压值小于门限电压时,被记录为逻辑0;被检测电压值大于等于门限电压时,被记录为逻辑1。
ES4521可设置-5V到+5V(步进0.05V)的门限电压。
门限A1,A2,B1,B2分别对应A1通道(探头A低8位)、A2通道(探头A高8位)、B1通道(探头B低8位)、B2通道(探头B高8位)。
门限S1,S2用于设置探头A外时钟通道(S1)和探头B外时钟通道(S2)的门限电压。
时钟沿选择:
选择时钟的上升沿或者下降沿来同步采样。
存储深度:
选择采样数据的容量,上限为256Kb。
探头极性:
当探头极性为正时,按照采集到的数据逻辑进行传送;当探头极性为负时,将采集到的数据逻辑反向后再传送到分析仪。
探头选择:
选择用户想要测试的通道。
点击确定按钮,面板将最小化,同时保存设置。
点击取消按钮,面板将最小化,同时重置设置。
2.触发方式设置面板
功能:
选择分析仪的触发方式及对应触发通道或触发字。
延时:
用于调节触发在数据窗口中的位置,设定延时百分比后,则位于触发位置前面的数据个数约为存储深度×延时百分比,而触发位置后面的数据个数约为存储深度×(100%-延时百分比)。
触发沿:
当触发方式为通道触发或外部触发时,它用于设定信号(某一通道的输入信号或外触发端子的输入信号)在上升沿还是下降沿触发。
ES4521逻辑分析仪共有5种触发方式,在面板中是互斥单选的:
随机触发:
无触发条件,启动分析仪数据捕获即认为已触发。
毛刺触发:
用给定通道上检出的毛刺作为触发信号触发定时仪,以实现跟踪。
毛刺是一种在一个采样时钟周期内两次通过门限的窄脉冲,它往往是造成数字系统出错的重要原因。
常见的毛刺有四种形式:
在信号低电平上出现的正向毛刺;在信号高电平上出现的负向毛刺;连续出现的毛刺;在信号跳变沿上出现的毛刺。
用户可通过设置复选框来设置需要进行毛刺触发的通道。
字触发:
分析仪对数据进行监测,一旦通道中出现所设置的触发字就会触发。
触发级数:
ES4521的字触发共有7级触发级数。
当触发条件根据字触发方式满足所设定的各级触发字时,分析仪才会触发。
组合方式:
设定的各级触发字中,满足任意一个即产生触发。
序列方式:
设定的各级触发字中,必须按照触发级别先后满足所有触发字才能产生触发。
进制:
为字触发设置框指定数据格式,用户可根据这个选项在字触发设置框中输入二进制数和十六进制数。
通道触发:
用户选择需要检测的通道,一旦该通道输入信号出现设定的跳变沿就会触发。
外部触发:
当外触发信号输入端子上信号出现设定的跳变沿就会触发。
点击确定按钮,面板将最小化,同时保存设置。
点击取消按钮,面板将最小化,同时重置设置。
注:
随机方式与通道触发方式时将无法对上图中所示的通道选择框进行选择。
当用户选择字触发时,上图所示的通道选择框将会自动切换为触发字设置框。
3.波形显示窗口面板:
单击主面板工具条上波形按钮或点击菜单的系统―>波形分析时,将会出现波形窗口面板。
用户可通过这个面板对所采集数据的波形进行查看分析。
波形窗口面板的工具条有8个按钮,依次为:
采集,停止,扩展,压缩,单次重复采样选择,毛刺采集,打开和保存。
单击运行按钮,开始采集数据,并显示出波形。
如图所示:
单击停止按钮,停止采集。
单击扩展按钮,波形将被横向展宽。
单击压缩按钮,波形将被横向压缩,屏幕内将显示被压缩的更多波形。
单击单次重复采样选择按钮,会在重复采样和单次采样互相切换。
采用单次采样模式,分析仪将在完成一次采集后自动停止采集和显示。
采用重复采样模式,分析仪将重复进行数据采集和显示直到用户按下停止按钮。
单击毛刺采集按钮,会指示系统是否显示采集到的毛刺。
单击打开按钮,用户可以从磁盘文件中读取以往保存的.lgd数据文件,并显示出对应波形。
单击保存按钮,用户可以将此次采集到的数据保存到一个.lgd文件中。
工具条上的4个文本框依次显示游标1,游标2,延迟,触发时间。
用鼠标左键拖动波形窗口里游标上部的
(对应游标1)
(对应游标2)时,对应文本框C1,C2将分别显示出相应时间坐标。
用鼠标左键单击波形显示区域,可查看单击处的时间坐标。
用鼠标右键单击波形显示区域,将弹出两个选项C1,C2。
选择C1,C2可分别将两个游标移动到鼠标所点击的位置。
延迟文本框delay将显示出两个游标之间的时间差(延迟)。
触发时间文本框T显示系统触发的时间。
用户可在游标文本框里输入数值,将波形窗口中的对应游标置于相应位置。
延迟文本框与触发时间文本框不允许用户进行输入。
波形窗口右部和底部分别有滑动条,用户可以拖动它们以查看感兴趣的通道和位置。
面板上设置了一个触发点按钮,单击它能使波形图快速回到触发点周围。
4.数据显示窗口面板:
单击主面板工具条上的“数据”按钮或点击菜单的系统―>状态列表,将会出现数据窗口面板。
用户可以通过这个面板查看采集到的数据值。
数据窗口面板有两个按钮,作用分别是采集数据和停止采集。
单击采集按钮,系统将开始采集,并将采集到的数据显示到列表里。
单击停止按钮,系统将停止采集。
触发点文本框显示触发时间。
5.反汇编窗口面板:
点击主面板菜单->系统->反汇编,将会出现反汇编窗口。
用户可以通过这个窗口将采集到的数据进行反汇编,以便程序跟踪分析。
反汇编窗口的工具栏上有4个按钮,依次为:
打开,保存,反汇编和设置。
单击打开按钮,用户可以打开先前存储在硬盘上的.asm汇编语言程序文件。
单击保存按钮,用户可以保存当前汇编语言程序文件。
单击反汇编按钮,程序将对当前的汇编语言程序文件进行反汇编,并在窗口中显示反汇编结果。
单击设置按钮,用户可以在弹出的设置面板中选择反汇编所采用的指令集和可用位。
供选择的指令集包括:
8051,8086,8096,80386和M6800。
6.探头活性窗口:
点击主面板菜单->系统->探头活性,将会出现探头活性窗口。
用户可以通过这个窗口查看各通道探头是否处于连接状态。
当图示箭头为黑色时,表示对应的通道无探头连接。
当图示箭头为蓝色时,表示有探头连接到对应的通道。
〈二〉实验目标板一套
实验目标板的软件操作面板如图17所示。
面板右边的表格用于数据的生成和编辑。
数据表示方式:
数据在表格中显示的方式,有十进制、十六进制和二进制三种。
产生方式:
有随机、计数、手动三种。
随机方式:
可以产生的数据范围为0~65535;
计数方式:
产生0~65535,若不输入产生数据的个数则默认为产生65536个数据;
手动方式:
双击表格中的方格表格部分变黑表示可以输入数据了,数据范围也在0~65535之间。
产生数据的个数:
最大为256k,不输入则默认为最大值。
是否循环:
如果选择循环,则循环产生256k的数据;在手动方式下,数据循环体为从开始到输入数据的最大位置处;随机方式下,此选择无效。
发送数据起始位和发送的长度:
选择要存储的数据的范围,默认值分别为0和256k;
起始的目的地址:
即数据存放的起始地址。
选择USB端口:
实验系统要安装USB接口的驱动程序,安装完成后会增加一虚拟的串口,根据该串口进行选择。
工作频率:
数据发生时的频率,最高为100MHZ,最低为20HZ.。
毛刺宽度:
选择生成的毛刺宽度。
工作状态:
有存储数据、发生数据、产生毛刺等状态。
在每次发送命令前选择相应的状态,
就会显示相应的操作内容。
然后点击发送相应的命令。
:
将文件保存的数据装载到数据数组中,并显示在表格中。
:
将生成的数据保存成文件。
:
将数据数组全部清零,显示清零。
:
根据产生方式、产生数据的个数、是否循环等参数设置生成数据。
并显示在表各种。
:
将由发送数据起始位和发送的长度决定的数据存储到RAM中。
改变工作状态后,变为相应的操作按钮。
:
发送命令使数据发生器停止工作。
只有在发生数据后才有效。
:
点击退出操作面板。
四、实验预习要求:
1.复习好《电子测量》中逻辑分析仪的有关章节。
2.参照仪器使用说明,熟悉了解逻辑分析仪的功能和操作。
3.了解实验目标板的电路结构、工作原理、功能及其操作。
4.详细阅读实验指导书,作好测试记录的准备。
五、实验步骤:
实验一:
观察数据发生器输出的数据流
1.实验方案:
实验的连接方式如图18:
微机通过USB与实验目标板连接,运行实验目标板的控制软件,在操作面板中生成数据发生器的数据并传送给数据发生器的存储器,同时设置数据发生器的数据输出速率。
当数据发生器处于工作状态时,它在控制电路的作用下,按照设定的速率将存储器中的数据输出。
逻辑分析仪的探头连接到数据发生器的输出端子,在逻辑分析仪中就可以观测到数据发生器按照一定的速率将设置的数据输出。
2.实验步骤:
下面举例说明实验操作步骤,以计数方式循环产生256k数据,存储到SRAM中,然后用逻辑分析仪进行观测。
(一)实验目标板操作面板的操作
双击虚拟面板的可执行文件,运行操作面板。
(1)设置参数:
在数据表示方式的下拉菜单中选择数据在表格中显示的方式为十进制。
产生方式选择计数方式。
产生数据的个数输入256,选择循环。
(2)设置完毕,单击
。
若要重新产生数据,单击
,重新设置参数,然后单击
,产生的数据如图19。
(3)设置发送数据起始位和发送的长度,分别为0和256k,即不输入;
设置起始的目的地址不输入,默认为00000h。
(4)选择工作状态为“存储数据”如右图
。
(5)单击
,控件变暗,带重新变亮后表示数据传输完毕。
到此完成了数据的存储。
(6)设置数据发生时频率为10MHZ。
(7)选择工作状态为“高速产生数据”。
变为
。
(8)单击
。
目标板数据处于数据输出状态。
(二)逻辑分析仪的操作
(1)将逻辑分析仪探头接到RAM的输出端上。
(2)运行程序后,将出现ES4521逻辑分析仪操作主面板,打开设置窗口,各参数设置如下:
门限电压0.85,探头通道选择A1。
采样方式正常,时钟频率100MHz,存储深度为64k,点击确定。
如图20所示:
然后打开跟踪设置窗口,设置触发方式为字触发,触发字为00H(如图21),在触发字的设定中采用的是十六进制数,所以在设置触发字时只需对最后两位置0(相当于是二进制的8位全部置0),点击确定。
再在操作主面板中打开波形窗口,点击采集数据,观察采集到的数据波形,波形图如图22:
如果想要知道逻辑分析仪测试的当前数据,用户还可打开逻辑分析仪的数据窗口,察看数据。
如图23所示
图23采集的数据流的数据
可看到每个数据采集了5次(因数据速率为10MHZ,采集速率为50MHZ)。
重新设置逻辑分析仪,选择外时钟S1,同时将数据发生器的工作时钟接入A探头的时钟输入通道,(如图14)其它设置不变,采集后的数据如图15,由此可知状态分析时,逻辑分析仪采集到的数据与被测数据流完全一致。
实验二:
观测8051单片机控制信号时序
1.80C51系统简介:
实验目标板单片机系统的连接框图如下:
图2651系统连接图
如图,测试端子有T1,T2,T3,T4。
控制信号:
控制地址锁存器、程序存储器、以及数据存储器的选通和读写。
ALE:
当访问外部存储器时,ALE(允许地址锁存信号)以每机器周期两次的信号输出,用于锁存出现在P0口的低8位地址。
在不访问外部存储器时,ALE仍以上述不变的频率,周期性的出现正脉冲信号,可作为对外输出的时钟脉冲或用于定时目的。
/PSEN:
片外程序存储器读选通信号输出端,低电平有效。
当从外部程序存储器读取指令常数期间,每个机器周期/PSEN两次有效,以通过数据总线口读回指令或常数。
当访问外部数据存储器期间,/PSEN信号将不出现。
/EA:
为访问外部程序存储器控制信号,低电平有效。
当/EA端保持高电平时,单片机访问片内程序存储器。
若超出该范围时,自动转去执行外部程序存储器。
当/EA端保持电平时,无论片内片外有无程序存储器,均只访问外部程序存储器。
/WR、/RD:
外部数据存储器的读写控制信号。
各种总线操作时,控制信号的时序图如下:
图27外部程序存储器读周期
图28外部数据存储器读周期
图29外部数据存储器写周期
2.实验步骤:
首先将51单片机系统的实验芯片安装到实验板上。
A:
测试片外程序存储器的读周期
(1)连线:
将探头A1的通道6接ALE信号,通道7接/PSEN,A2接单片机的P0口。
(2)将实验板的电源线插上。
(3)设置逻辑分析仪:
分析仪的工作方式设置如下:
图30逻辑分析仪工作方式设置
跟踪方式设置如下图31:
图31设置跟踪方式
然后打开波形窗口进行测试。
可观察到信号波形如图32:
图32片外程序存储器的读周期
图中游标1对应的是片外程序存储器的低8位地址:
56H;游标2是外部程序存储器的输出:
B8H。
即程序存储器中0056H存储单元的数据为B8。
上图即一个片外程序存储器的读周期。
B:
测试外部数据存储器的写周期
(1)连线:
A1、B1分别接单片机P0、P2口,A2通道0接ALE信号,通道1接/PSEN,通道2接/WR,通道3接/RD。
(2)将实验板的电源线插上。
(3)设置逻辑分析仪:
分析仪的工作方式设置如图33及图34所示:
图33设置工作方式及探头选择
图34设置跟踪方式
然后打开波形窗口进行测试。
波形如图35所示:
图35数据存储器的写周期
游标2:
0E01H,游标1:
0AC0H,根据控制信号的状态可知处于写状态,地址为0001H,数据为C0H。
C:
测试外部数据存储器地读周期
探头的连接和设置与B同,采用A2通道3触发,下降沿触发。
采集后的波形如图36:
图36数据存储器的读周期
游标2:
00A6C0H,游标1:
0A0E0BH,根据控制信号的状态可知处于读状态,地址为0A0BH,数据为C0H。
实验三:
毛刺检测
1.实验方案:
通过操作面板设置毛刺产生电炉的输入信号频率,调整D触发器间的信号传输延迟,利用逻辑分析仪观测3-8译码起输出信号上的毛刺脉冲。
2.实验步骤:
(1)打开目标板操作面板,设置毛刺电路输入信号频率。
选择工作状态为产生毛刺,单击。
(2)
在逻辑分析仪设置窗口将采样方式设置为正常采样,触发方式选择随机触发,将探头A1接在目标板的毛刺输出端上。
测得波形如图37:
图37正常方式下3-8译码电路的输出
然后将采样方式设置为毛刺采样,触发方式选择毛刺触发,将探头A1接在目标板的毛刺输出端上。
调整D触发器信号连接长度,使逻辑分析仪触发,测得波形如图38所示,在触发位置有毛刺出现。
图38毛刺方式下,毛刺电路的输出
(3)调整各D触发器之间信号的连接线长度,同时观察有无毛刺出现,分析产生原因。
实验四:
反汇编
1.实验方案:
将下面一段程序写入外部程序存储器并运行。
逻辑分析仪利用测程序存储器的数据输出端数据,进行反汇编。
实验程序流程图如下图39:
定时器中断服务程序:
重新初始化定时器,并启动;使R0加1。
源程序:
ORG00H
AJMPMAIN
ORG0BH
LJMPTIME0
ORG0EH
MAIN:
MOVSP,#0CH
MOVR0,#00H
MOVDPTR,#0001H
MOVA,#0C0H
MOVX@DPTR,A
MOVDPTR,#0A0BH
MOVXA,@DPTR
MOV08H,A
MOVTMOD,#01H
MOVTH0,#0FCH
MOVTL0,#18H
SETBTR0
SETBEA
SETBET0
LOOP:
MOVA,R0
MOVC,ACC.0
JCLP1
MOVP1,#0FH
AJMPLP0
LP1:
MOVP1,#0F0H
LP0:
CJNER0,#20,LOOP
AJMPMAIN
TIME0:
定时器中断服务程序
MOVTH0,#0FCH
MOVTL0,#18H
SETBTR0
INCR0
MOVP1,R0
RETI
END
程序编译后如图40所示:
图40程序汇编后的文件
2.实验步骤:
(1)设置逻辑分析仪,采样方式为正常采样,选择状态分析方式,采用状态时钟S1,将/PSEN信号接入时钟探头S1,采用四级序列字触发,触发字设置为:
F0、01、0E(程序主循环体的结束返回特征字)、75(程序主循环体的入口特征字)。
探头A1接P0口。
(2)安装上烧写好实验程序的存储器,加电。
(3)逻辑分析仪采集数据。
(4)将采集的数据进行保存。
(5)在逻辑分析仪的操作主