CN103955419A - 具有串行总线协议在线实时检测分析功能的逻辑分析仪 - Google Patents
具有串行总线协议在线实时检测分析功能的逻辑分析仪 Download PDFInfo
- Publication number
- CN103955419A CN103955419A CN201410174937.0A CN201410174937A CN103955419A CN 103955419 A CN103955419 A CN 103955419A CN 201410174937 A CN201410174937 A CN 201410174937A CN 103955419 A CN103955419 A CN 103955419A
- Authority
- CN
- China
- Prior art keywords
- module
- data
- trigger
- protocol
- analysis
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种串行总线协议在线实时检测分析功能的逻辑分析仪,在逻辑分析仪的FPGA中设置串行总线协议分析模块,串行总线协议分析模块中设置有目标串行总线协议的协议分析模块,协议分析模块中包括分析状态机和数据重组模块,分析状态机接收采集通道的通道数据并分析得到该数据元素的分析结果,数据重组模块将分析状态机得到的协议分析结果与通道数据组合得到带协议分析结果的数据并存入DDR2存储器中,供ARM处理器读取并显示即可。本发明的串行总线协议分析是在硬件中实现的,其分析时间远少于串行的软件运算,可以大大提高系统反应时间。并且本发明还提供了一种串行总线协议触发模块,可以针对串行总线协议提供更为准确的触发。
Description
技术领域
本发明属于数据域测试技术领域,更为具体地讲,涉及一种具有串行总线协议在线实时检测分析功能的逻辑分析仪。
背景技术
随着数字电子技术的高速发展,现代数字电子系统的组成越来越复杂,系统各部件间的通信也越来越依靠于多种多样的数字总线,这也对数据测试领域提出了更高的要求。
逻辑分析仪作为传统的数据域测试仪器,在数字电子系统的硬件逻辑、时序分析、故障诊断及嵌入式软件代码的开发测试中发挥着不可替代的作用,是数字电子系统产品研发和功能维护不可缺少的工具。为了提高对逻辑分析仪对数字总线的测试能力,近年的逻辑分析仪产品都一定程度地集成了总线协议触发功能和协议分析功能。协议触发功能指的是用户设定协议触发条件,逻辑分析仪在查找到触发条件之后采集存储显示数据;总线协议分析功能指的是逻辑分析仪能够根据用户设定的协议信息和采集到的数据内容,按照相应协议规定翻译出数据中包含的协议元素。
但是目前具有协议分析功能的逻辑分析仪方面仍然存在一些问题:逻辑分析仪的分析速度比较慢,不能在线实时检测分析,不能达到流畅连续显示的效果,使用不便利。
发明内容
本发明的目的在于克服现有技术的不足,提供一种具有串行总线协议在线实时检测分析功能的逻辑分析仪,采用硬件方式实现串行总线协议分析,提高系统反应时间,实现实时检测分析。
为实现上述发明目的,本发明具有串行总线协议在线实时检测分析功能的逻辑分析仪,包括采集通道、FPGA、ARM处理器和DDR2存储器,采集通道包括探头、比较器、电平转换和DAC;ARM处理器中安装逻辑分析仪的系统软件;FPGA中设置有触发模块、主控模块、DDR2读写控制模块、ARM接口模块、门限控制模块和时钟模块,ARM处理器、主控模块和触发模块共同控制DDR2读写控制模块对DDR2读写控制模块的输入数据进行采集并存储在DDR2存储器中,供ARM处理器读取并输出,其中触发模块根据ARM处理器发送的触发控制字和通道数据产生触发标志发送给主控模块,触发控制字包括触发类型、触发条件和其他控制信息,ARM接口模块用于完成ARM处理器与FPGA中其他模块的通信,门限控制模块用于控制DAC生成门限阈值,时钟模块向FPGA中的其他模块提供同步时钟和采样率控制信号;还包括:
串行总线协议分析模块,包括若干个协议分析模块和分析结果选择器,每个协议分析模块对应一种串行总线协议,协议分析模块包括分析状态机和数据重组模块,分析状态机接收采集通道的通道数据并分析得到该数据元素的分析结果,数据重组模块将分析状态机得到的协议分析结果与通道数据组合得到带协议分析结果的数据;分析结果选择器用于根据ARM处理器发送的协议类型控制字选择对应协议分析模块生成的带协议分析结果的数据并输出至DDR2读写控制模块进行采集存储。
进一步地,还包括数据选择模块,接收通道数据和串行协议分析模块输出的带协议分析结果的数据,根据ARM处理器发送的数据类型控制字,选择对应的数据输出至DDR2读写控制模块。
进一步地,所述触发模块包括串行总线协议触发模块,包括若干个协议触发模块和触发选择器,协议触发模块与串行总线协议分析模块中的协议分析模块一一对应,协议触发模块中包含多个触发状态机和触发标志选择器,每个触发状态机包括若干个数据元素触发状态机;触发状态机接收通道数据,根据ARM处理器发送的触发条件对通道数据进行触发判断,当触发条件满足时将触发标志设置为有效,触发标志选择器根据ARM处理器发送的触发类型控制字选择对应的触发标志输出至触发选择器;触发选择器根据ARM处理器发送的触发类型控制字选择对应的触发标志输出至主控模块。
本发明具有串行总线协议在线实时检测分析功能的逻辑分析仪,在逻辑分析仪的FPGA中设置串行总线协议分析模块,串行总线协议分析模块中设置有目标串行总线协议的协议分析模块,协议分析模块中包括分析状态机和数据重组模块,分析状态机接收采集通道的通道数据并分析得到该数据元素的分析结果,数据重组模块将分析状态机得到的协议分析结果与通道数据组合得到带协议分析结果的数据并存入DDR2存储器中,供ARM处理器读取并显示即可。本发明的串行总线协议分析是在硬件(FPGA)中实现的,由于硬件运算是并行的,相对于串行的软件运算而言,分析时间几乎可以忽略不计,因此本发明的逻辑分析仪在进行串行总线协议分析时,可以大大提高系统反应时间。并且本发明还提供了一种串行总线协议触发模块,可以针对串行总线协议提供更为准确的触发。
附图说明
图1是逻辑分析仪示意图;
图2是本发明中FPGA结构示意图;
图3是串行总线协议分析模块示意图;
图4是协议分析模块示意图;
图5是串行总线协议触发模块示意图;
图6是协议触发模块示意图;
图7是单次数据采集的控制流程图;
图8是本实施例中ARINC429协议分析状态机示意图;
图9是ARINC429协议触发模块示意图;
图10是字头触发状态机示意图;
图11是标志位触发状态机示意图。
具体实施方式
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
实施例
为了更好地对本发明内容进行说明,首先对逻辑分析仪进行一个简单介绍。图1是逻辑分析仪示意图。如图1所示,逻辑分析仪的通道部分采用探头+比较器+电平转换+DAC(Digital to Analog Converter,数模转换器),DAC受FPGA(Field-Programmable Gate Array,现场可编程门阵列)控制输出门限阈值电平送给比较器;比较器完成模数转换,若探头输入电压大于门限阈值,则是逻辑“1”,反之则是逻辑“0”;电平转换芯片把电平逻辑转成LVDS(Low VoltageDifferential Signal,低电压差分信号),便于FPGA能准确接收通道数据。本实施例中数据通道为32个。ARM处理器中运行逻辑分析仪的系统软件,FPGA中是硬件功能的逻辑模块,两者通过控制字(控制字都存储在FPGA的特定寄存器中,ARM处理器和FPGA在需要的时候查询或者改变相应的控制字值)交换信息,配合实现逻辑分析仪的控制。存储部分采用DDR2(Double Data Rate2)存储器,通过DDR2总线与FPGA相连接。外部接口用于连接ARM处理器和其他设备实现逻辑分析仪和其他设备进行通信。FPGA是完成逻辑分析仪硬件功能的核心,本发明中的串行总线协议分析模块和串行总线协议触发模块和就是在FPGA中实现的。
图2是本发明中FPGA结构示意图。如图2所示,FPGA中设置有以下逻辑模块:差分接收机模块、串行总线协议分析模块、数据选择模块、触发模块、主控模块、DDR2读写控制模块、ARM接口模块、门限控制模块和时钟模块。
差分接收机模块在本实施例中是用于接收原始通道数据并提速,使32路通道数据的位宽展宽为64位的通道数据,即采样数据,发送给数据选择模块。这样处理可以提高采样率,还可以使采样数据和DDR2存储器的存储位宽一致,便于存储地址计数。在实际应用中,差分接收机模块是根据实际情况选用的。
串行总线协议分析模块接收原始通道数据,以及ARM处理器通过ARM接口模块发送的协议控制字,判断形成带协议分析结果的数据发送给数据选择模块,协议控制字协议类型控制字和协议分析控制字,协议分析控制字中包括需要分析的通道数据对应的通道编号以及目标协议的属性参数信息。图3是串行总线协议分析模块示意图。如图3所示,串行总线协议分析模块根据逻辑分析仪的应用需要设置若干个(一个或多个)不同协议的协议分析模块,还包括一个分析结果选择器。
图4是协议分析模块示意图。如图4所示,每个协议分析模块对应一种串行总线协议,协议分析模块中根据串行总线协议设置若干个并行的分析状态机和一个数据重组模块,协议分析模块包括分析状态机和数据重组模块,分析状态机根据ARM处理器发送的协议分析控制字接收采集通道的通道数据并分析得到该通道数据的分析结果,数据重组模块将分析状态机得到的协议分析结果与通道数据组合得到带协议分析结果的数据;分析结果选择器用于根据ARM处理器发送的协议类型控制字选择对应协议分析模块生成的带协议分析结果的数据并输出至数据选择模块。
数据选择模块,位于串行总线协议分析模块和DDR2读写控制模块之间,接收通道数据(本实施例中为采样数据)和串行协议分析模块输出的带协议分析结果的数据,根据ARM处理器发送的数据类型控制字,选择对应的数据输出至DDR2读写控制模块。数据选择模块是一个可选模块,如果不设置数据选择模块,那么逻辑分析仪输出的数据一直都是带协议分析结果的数据,通过设置数据选择模块,在逻辑分析仪工作过程中,通过改变ARM处理器发出的数据类型控制字,即可将采集存储对象在通道数据和带协议分析结果的数据之间进行切换,满足分析人员的需求。当然,采集存储对象切换后,触发方式或其他采集存储参数有可能需要发生改变,通过ARM处理器中的系统软件可以实时设置,或者预设一些参数模板来实现参数的适应性调整。
触发模块接收通道数据和差分接收机模块得到的采样数据,以及ARM处理器通过ARM接口模块发送的触发控制字,触发控制字包括用户设置的触发类型、触发条件和其他触发控制信息。本实施例中,通道数据和采样数据的用途不相同,通道数据用于进行串行协议触发,采样数据用于一般数据采集的触发。当然,如果在FPGA中没有使用差分接收机模块,那么无论是串行协议触发还是数据采集触发,都基于原始的通道数据。触发模块在接收到主控模块发出的预触发满标志时,则根据触发条件对通道数据进行触发判断是否触发,触发后拉高触发标志反馈给主控模块。
串行总线协议的触发可以采用和数据采集触发同样的一般触发方式来实现,如随机触发、边沿触发等。为了使串行总线协议触发更为准确,本实施例在触发模块中设置有串行总线协议触发模块来实现串行总线协议的触发。图5是串行总线协议触发模块示意图。如图5所示,串行总线协议触发模块中设置有若干个协议触发模块和触发选择器,协议触发模块与串行总线协议分析模块中的协议分析模块一一对应。图6是协议触发模块示意图。如图6所示,每个协议触发模块中根据协议设置若干个触发状态机和触发标志选择器,每个触发状态机对应一个协议数据元素。每个触发状态机接收通道数据,根据ARM处理器发送的触发条件对原始数据进行触发判断,当触发条件满足时将触发标志设置为有效,触发标志选择器根据触发类型控制字选择其中一个触发标志输出至触发选择器。触发选择器根据ARM处理器发送的触发类型控制字选择对应的触发标志输出至主控模块。
主控模块包括三个计数器:预触发计数器、延迟触发计数器、地址计数器和流程控制逻辑,主控模块用于配合触发模块和ARM中的系统软件,完成单次触发数据采集。本实施例中,由数据选择模块输出的数据,不管是来自差分接收机模块的采样数据,还是来自串行总线协议分析模块的带分析结果的数据,都是采用相同的采集方式。
图7是单次数据采集的控制流程图。如图7所示,ARM通过ARM接口模块向主控模块发送流程控制字,主控模块根据流程控制字进行各项操作。开始采集之前,系统处于空闲态,ARM先向主控模块发送计数器清0控制字将各个计数器清0,并通过主控模块向触发模块发送触发清0控制字对触发模块的触发标志位清0,并且设置各个参数,包括触发控制字和DDR2控制字等。在设置完各种参数之后,ARM发送开始采集命令,系统处于采集态,采集开始。主控模块收到开始采集命令之后,地址计数器和预触发计数器同时开始计数,DDR2读写控制模块根据地址计数器值完成数据的存储,预触发计数器满之后,主控模块对触发模块发送标志位,让触发模块开始触发判断,同时主控模块等待触发模块的标志位。触发模块触发成功的同时对主控模块发送触发标志位有效(即拉高触发标志位),主控模块延迟触发计数器随即开始计数,并锁存此时的地址计数器地址,即触发地址,计数器溢出则延迟触发满,采集完成,地址计数器也同时停止计数。采集完成后,系统进入读数态,在读取数据时,ARM根据触发地址恢复触发位置。数据读取完毕后,系统重新进入空闲态。
DDR2读写控制模块分为两个部分,即读状态机和写状态机,用于将数据选择器输出的数据存入DDR2芯片中,并且ARM处理器通过ARM接口模块和DDR2读写控制模块从DDR2芯片中读取数据用于显示。
ARM接口模块,用于ARM与FPGA中其他模块进行通信,一方面ARM把用户通过系统软件设置的信息和流程控制信息存在FPGA相应特定寄存器中,使得FPGA中其他各个模块能从相应寄存器中读取控制字;另一方面FPGA其他各个模块把各自形成的标志信息存入相应特定寄存器中,使得软件能读取标志信息。这样,ARM中的系统软件就能引导FPGA各模块的工作。
门限控制模块用于控制DAC生成门限阈值,本实施例中用一个状态机实现了SPI接口时序,使得FPGA和DAC能够正确通信。
时钟模块用于向FPGA中各个时序模块提供时钟和采样率控制信号。本实施例中,时钟模块以Altera提供的锁相环IP核为基础,形成了若干时钟和采样率控制信号,如图2中的虚线所示。本实施例中,串行协议触发模块和串行协议分析模块使用的均是100M时钟,依靠采样率控制信号实现采样率的变换。采样率控制信号决定了采样的速率和采样点的位置。
下面以串行总线协议ARINC429的分析和触发为例,说明协议分析和触发的具体实现。
根据ARINC429电气特性规范,ARINC429总线信号经过通道部分进入到逻辑分析仪之后,是两路的数字信号。当这两路数字信号是10(HI在前,LO在后)的时候表示逻辑“1”;数字信号是01的时候表示逻辑“0”;数字信号是00的时候,表示逻辑“空”。ARINC429总线协议的分析模块和触发模块的处理对象都是这两路数字信号。由于ARINC429总线协议较为简单,本实施例中,ARM处理器发送给ARINC429协议分析模块的协议分析控制字中只包括了需要分析的通道数据对应的通道编号,未对协议的属性参数进行设置。
ARINC429总线的位速率有两种,分别是100Kbps和12.5Kbps,并且ARINC429总线上传输的是归零码,即每一个位时的前半个周期包含着逻辑信息,后半个周期一律为“空”。采用与位速率相等的采样率对总线进行采样,但是由于ARINC429总线没有提供专门的时钟线,所以必须采用同步措施,否则采到的总线信号将有一半的可能为“空”。该同步可以依靠时钟模块里面的ARINC429同步模块完成。在100M时钟下,根据当前协议的速率,依靠计数器,使得采样率控制信号在位时的四分之一处有效。
根据ARINC429字格式和传输特性,可以知道:数据字之间的间隔,即连续4个位时的逻辑“空”,是总线数据元素中最特别的。因此无论是ARINC429总线协议的分析还是触发,都要依靠这个关键点来定位。
下面先对ARINC429总线协议分析模块进行介绍。在总线协议分析模块中,主要模块为分析状态机。ARINC429总线信号的字格式里共有5种数据元素,即标志位、源/目的地址识别码、数据区、符号状态码、奇偶校验位。为了对协议数据进行更详细的分析,本实施例中还引入了两种数据类型,数据字字头和未完成。协议分析结果包括数据类型字和每个数据类型字对应的数据内容字,数据类型字即预设的数据类型代码,数字内容字即ARINC429总线上的数据内容或数据内容寄存器的值。本实施例中,由于通道数据为32位数据,并且连接ARM处理器和FPGA的本地总线数据位宽只有16位,因此协议分析结果也采用32位数据,其中高16位用于存储数据内容字,低16位用于存储数据类型字。表1是本实施例协议分析结果中数据类型字和数据内容字的对应关系。
表1
可见,本实施例中,数据类型共有七种,分别是未完成、字头、标志位、源/目的地址识别码、数据区、符号状态码、奇偶校验位。未完成表示当前还没有分析完一个数据元素,此时的数据内容字内容无效;字头表示当前检测到一个字头,对应的数据内容字内容无效;标志位、源/目的地址识别码、数据区、符号识别码、奇偶校验位分别表示当前检测到相应的数据元素,对应的数据内容字的内容就是当前的数据元素的具体内容。这样ARM处理器读取带分析结果的数据时,就可以通过对数据类型字进行判断,读取对应的数据内容字,就能完成对协议分析结果的显示,而无需再对通道数据进行协议分析。
图8是本实施例中ARINC429协议分析状态机示意图。如图8所示,本实施例中ARINC429协议分析状态机是一个米里型状态机,即输出不仅仅与当前状态有关,还与当前输入有关。本实施例中,ARINC429协议分析状态机共有10个状态,分别是准备态、一空态、二空态、三空态、四空态、标志位态、识别码态、数据区态、状态码态和校验位态,协议分析状态机只在采样率控制信号有效的时候跳转状态和改变输出,在采样率控制信号无效的时候,保持上一时刻的状态和输出;其具体工作流程如下:
接收到逻辑分析仪系统复位标志后,ARINC429协议分析状态机进入准备态,开始协议分析。准备态下,无论检测到ARINC429总线数据是什么,都发出各个计数器的清0标志,同时对数据类型字写0(表明此刻还没判断出完整的数据元素),对数据内容字写0(表示此时数据内容字内容无效)。当检测到逻辑“空”的时候,跳出准备态,进入一空态。
若连续检测到4个逻辑“空”,则进入四空态,说明已经检测到完整的字间间隔。在四空态下,若检测到逻辑“0”或逻辑“1”,则把当前数据存入标志位分析寄存器的第7位,同时进入标志位态。一空到四空态都对数据内容字和数据类型字写0。
标志位态的任务是捕获标志位,这主要通过标志位分析计数器的计数和标志位分析寄存器配合实现,标志位一共8位,四空态已经捕获了一位,所以标志位分析计数器的模为7。标志位态下,若检测到逻辑“0”或者逻辑“1”,则计数器计数值加1,并且把当前检测到的逻辑值存到标志位分析寄存器的对应二进制位上,若检测到逻辑“0”或者逻辑“1”的时候对应的计数器值是6,则表明已经检测到标志位的完整八个位,即标志位检测完成,此时对数据类型字写“10”,把标志位分析寄存器的高七位值和此刻检测到的逻辑值拼接,这就是捕获到的标志位内容,把它赋值给标志位对应的数据内容字,同时计数器溢出,进入识别码态。
识别码态的任务是捕获源/目的地址识别码,主要通过识别码分析计数器实现,源/目的地址识别码一共2位,所以识别码分析计数器的模是2。在识别码态下,检测到逻辑“0”或者逻辑“1”,则计数器计数。计数器计数的同时捕获识别码,当识别码计数器溢出的时候,对数据类型字写11,并且把捕获的识别码赋值给识别码对应的数据内容字,同时跳转进入数据区态。
数据区态的任务是捕获要传递的数据,根据ARINC429协议的字格式,数据区的长度是19,能还原成5个8421BCD码,数据分析计数器的模是19。数据区态时,若检测到逻辑“0”和逻辑“1”,则数据分析计数器计数,并且在计数器值的引导下,把19位的数据按顺序捕获到5个数据分析寄存器里,并且实时地送到协议分析结果数据流中(即对数据类型字写100,对数据内容字写数据分析寄存器的值)。
数据分析计数器溢出,表明数据捕获完毕,状态机跳转到状态码态,以同样的方式捕获状态码,并且把捕获的状态码送到协议分析结果数据流中(即对数据类型字写101,对数据内容字写状态码分析寄存器的值)。
状态码计数器溢出后状态机进入校验位态。校验位态下若检测到逻辑“0”或者逻辑“1”,则对数据类型字写110,把当前检测的总线逻辑值(即校验位)赋值给数据内容字。然后,跳转回准备态,开始ARINC429总线的下一个数据字的分析。
可见,ARINC429协议分析状态机周而复始地运转,就实现了对ARINC429协议数据字周而复始地分析。对于其他的串行总线协议,可以根据协议的具体情况和协议分析要求设计分析状态机。
同样地,以ARINC429总线协议为例,对串行总线协议触发模块进行说明。图9是ARINC429协议触发模块示意图。如图9所示,本实施例中,ARINC429协议触发模块有6种触发类型,除数据字字头触发外,还包括5种数据元素触发:标志位触发、源/目的地址识别码触发、数据区触发、符号状态码触发、奇偶校验位触发。ARINC429总线信号的字格式稳定,所以在ARINC429协议触发模块中只要定位出了数据字的开头,就能够依靠计数器定位出每一个元素,再按照用户通过ARM处理器设置的触发控制字,给出相应的触发信号。
图10是字头触发状态机示意图。如图10所示,字头触发状态机共有7个不同状态,即复位态、准备态、一空态、二空态、三空态、四空态、触发完成态。在单次采集过程开始之前,主控模块会给出触发清0标志,字头触发状态机接收到触发清0标志之后进入复位态,在复位态下触发标志位trigf被清0。单次采集预触发满时,主控拉高预触发满标志位,状态机从复位态跳转到准备态。状态机在进入准备态之后,开始实时检测ARINC429总线数据。在准备态,若检测到逻辑“空”(对应数据00)则跳出准备态,进入一空态。一空态就是连续第一次检测到逻辑“空”的状态,在一空态,若检测到逻辑“空”,则进入二空态,否则,跳转回准备态。只有连续检测到4个逻辑“空”,状态机才会进入四空态,否则都会跳转回准备态重新开始连续逻辑“空”的数据序列检测。准备态和一空到九空态都保持trigf状态,即不做清0操作也不做置1操作。
根据ARINC429协议的传输特性知道,连续4个位时的逻辑“空”是字间间隔。所以若系统能进入四空态,意味着完整检测到了ARINC429总线的字间间隔。
在四空态,若检测到无效逻辑(对应数据11),则说明硬件逻辑通道可能出了问题,跳转回准备态;若检测到逻辑“空”,则说明出现了字间间隔大于4的情况,不跳转;若检测到逻辑“1”(对应数据10)或者逻辑“0”(对应数据01),跳转到触发完成态。能跳转到触发完成态,表明状态机检测到了字间间隔之后的第一个数据,即字头,所以在触发完成态,对trigf做置1操作,主控于此同时锁存地址计数器地址值。此时整个字头触发过程就完成了,状态不再跳转,字头触发状态机等待主控模块的下一次触发清0标志。
标志位触发、源/目的地址识别码触发、数据区触发、符号状态码触发、奇偶校验位触发这5种触发的状态机类似,都可以基于字头触发状态机来实现。以下以标志位触发状态机为例说明。
图11是标志位触发状态机示意图。如图11所示,标志位触发状态机就是在字头触发状态机的基础上增加计数态和比较态。在四空态下,若检测到01(逻辑“1”)或者10(逻辑“0”),把该数据存入标志位触发寄存器的第7位,并且跳转进入计数态。计数态下,标志位触发计数器做模7计数,计数的同时把当前数据存入标志位触发寄存器的0-6位。计数器溢出则跳转到比较态,此时已经把当前字的标志位捕获到了标志位触发寄存器中。在比较态下,把标志位触发寄存器的值和用户设定的标志位值做比较,若相同,则跳转到触发完成态,若不同,则跳转到准备态进行下一次判断。为了确保计数准确,在复位态下,发出计数器清0标志,这样就能保证四空态进入计数态后,计数器是从0开始计数的。除了复位态之外,别的状态都只在采样率控制信号有效的时候改变状态和输出,采样率控制信号无效的时候保持上一时刻的状态和输出。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
Claims (3)
1.一种具有串行总线协议在线实时检测分析功能的逻辑分析仪,包括采集通道、FPGA、ARM处理模块和DDR2存储器,采集通道包括探头、比较器、电平转换和DAC;ARM处理器中安装逻辑分析仪的系统软件;FPGA中设置有触发模块、主控模块、DDR2读写控制模块、ARM接口模块、门限控制模块和时钟模块,ARM处理器、主控模块和触发模块共同控制DDR2读写控制模块对DDR2读写控制模块的输入数据进行采集并存储在DDR2存储器中,供ARM处理器读取并输出,其中触发模块根据ARM处理器发送的触发控制字和通道数据产生触发标志发送给主控模块,触发控制字包括触发类型、触发条件和其他触发控制信息,ARM接口模块用于完成ARM处理器与FPGA中其他模块的通信,门限控制模块用于控制DAC生成门限阈值,时钟模块向FPGA中的其他模块提供同步时钟和采样率控制信号;其特征在于,还包括:
串行总线协议分析模块,包括若干个协议分析模块和分析结果选择器,每个协议分析模块对应一种串行总线协议,协议分析模块包括分析状态机和数据重组模块,分析状态机根据ARM处理器发送的协议分析控制字接收采集通道的通道数据并分析得到该通道数据的分析结果,数据重组模块将分析状态机得到的协议分析结果与通道数据组合得到带协议分析结果的数据;分析结果选择器用于根据ARM处理器发送的协议类型控制字选择对应协议分析模块生成的带协议分析结果的数据并输出至DDR2读写控制模块进行采集存储。
2.根据权利要求1所述的逻辑分析仪,其特征在于,还包括数据选择模块,接收通道数据和串行协议分析模块输出的带协议分析结果的数据,根据ARM处理器发送的数据类型控制字,选择对应的数据输出至DDR2读写控制模块。
3.根据权利要求1或2所述的逻辑分析仪,其特征在于,所述触发模块包括串行总线协议触发模块,包括若干个协议触发模块和触发选择器,协议触发模块与串行总线协议分析模块中的协议分析模块一一对应,协议触发模块中包含多个触发状态机和触发标志选择器,每个触发状态机包括若干个数据元素触发状态机;触发状态机接收通道数据,根据ARM处理器发送的触发条件对通道数据进行触发判断,当触发条件满足时将触发标志设置为有效,触发标志选择器根据ARM处理器发送的触发类型控制字选择对应的触发标志输出至触发选择器;触发选择器根据ARM处理器发送的触发类型控制字选择对应的触发标志输出至主控模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410174937.0A CN103955419A (zh) | 2014-04-28 | 2014-04-28 | 具有串行总线协议在线实时检测分析功能的逻辑分析仪 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410174937.0A CN103955419A (zh) | 2014-04-28 | 2014-04-28 | 具有串行总线协议在线实时检测分析功能的逻辑分析仪 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103955419A true CN103955419A (zh) | 2014-07-30 |
Family
ID=51332694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410174937.0A Pending CN103955419A (zh) | 2014-04-28 | 2014-04-28 | 具有串行总线协议在线实时检测分析功能的逻辑分析仪 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103955419A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105204799A (zh) * | 2015-08-18 | 2015-12-30 | 电子科技大学 | 一种多通道深存储逻辑分析仪显示刷新率的提高方法 |
CN105634897A (zh) * | 2016-03-30 | 2016-06-01 | 哈尔滨工业大学 | 一种应用于串行总线分析仪器的can总线协议解码ip核 |
CN105893308A (zh) * | 2016-03-30 | 2016-08-24 | 哈尔滨工业大学 | 一种基于组合逻辑的串行协议触发ip核及触发数据捕获方法 |
CN106933766A (zh) * | 2015-12-31 | 2017-07-07 | 无锡华润矽科微电子有限公司 | 一种总线控制实现方法 |
CN108319200A (zh) * | 2018-02-28 | 2018-07-24 | 西安电子科技大学 | 一种便携式互联网逻辑分析仪 |
CN109643263A (zh) * | 2016-07-25 | 2019-04-16 | 西门子移动有限公司 | 在信号技术上安全的计算单元之间的数据传输 |
CN112559261A (zh) * | 2020-11-27 | 2021-03-26 | 中国船舶重工集团公司第七0九研究所 | 一种基于层次状态机的axi总线性能分析方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0588191A1 (en) * | 1992-09-18 | 1994-03-23 | Thomson Consumer Electronics, Inc. | Exchanging data and clock lines on multiple format data buses |
CN200989936Y (zh) * | 2006-08-25 | 2007-12-12 | 王悦 | 一种逻辑分析仪 |
CN101131413A (zh) * | 2006-08-25 | 2008-02-27 | 王悦 | 逻辑分析仪的波形显示方法及其逻辑分析仪 |
CN101630299A (zh) * | 2009-05-27 | 2010-01-20 | 东南大学 | 一种i2c串行总线信号的分析与触发方法 |
CN103353543A (zh) * | 2013-05-30 | 2013-10-16 | 电子科技大学 | 一种具有串行协议触发和解码功能的数字示波器 |
-
2014
- 2014-04-28 CN CN201410174937.0A patent/CN103955419A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0588191A1 (en) * | 1992-09-18 | 1994-03-23 | Thomson Consumer Electronics, Inc. | Exchanging data and clock lines on multiple format data buses |
US5376928A (en) * | 1992-09-18 | 1994-12-27 | Thomson Consumer Electronics, Inc. | Exchanging data and clock lines on multiple format data buses |
CN200989936Y (zh) * | 2006-08-25 | 2007-12-12 | 王悦 | 一种逻辑分析仪 |
CN101131413A (zh) * | 2006-08-25 | 2008-02-27 | 王悦 | 逻辑分析仪的波形显示方法及其逻辑分析仪 |
CN101630299A (zh) * | 2009-05-27 | 2010-01-20 | 东南大学 | 一种i2c串行总线信号的分析与触发方法 |
CN103353543A (zh) * | 2013-05-30 | 2013-10-16 | 电子科技大学 | 一种具有串行协议触发和解码功能的数字示波器 |
Non-Patent Citations (2)
Title |
---|
孙旌旗: "总线分析模块硬件设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
戴志坚: "高速逻辑分析仪硬件系统设计", 《中国优秀博硕士学位论文全文数据库 (硕士) 信息科技辑》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105204799A (zh) * | 2015-08-18 | 2015-12-30 | 电子科技大学 | 一种多通道深存储逻辑分析仪显示刷新率的提高方法 |
CN105204799B (zh) * | 2015-08-18 | 2018-02-02 | 电子科技大学 | 一种多通道深存储逻辑分析仪显示刷新率的提高方法 |
CN106933766A (zh) * | 2015-12-31 | 2017-07-07 | 无锡华润矽科微电子有限公司 | 一种总线控制实现方法 |
CN106933766B (zh) * | 2015-12-31 | 2019-12-06 | 无锡华润矽科微电子有限公司 | 一种总线控制实现方法 |
CN105634897A (zh) * | 2016-03-30 | 2016-06-01 | 哈尔滨工业大学 | 一种应用于串行总线分析仪器的can总线协议解码ip核 |
CN105893308A (zh) * | 2016-03-30 | 2016-08-24 | 哈尔滨工业大学 | 一种基于组合逻辑的串行协议触发ip核及触发数据捕获方法 |
CN105893308B (zh) * | 2016-03-30 | 2018-09-07 | 哈尔滨工业大学 | 一种基于组合逻辑的串行协议触发ip核及触发数据捕获方法 |
CN105634897B (zh) * | 2016-03-30 | 2019-03-08 | 哈尔滨工业大学 | 一种应用于串行总线分析仪器的can总线协议解码ip核 |
CN109643263A (zh) * | 2016-07-25 | 2019-04-16 | 西门子移动有限公司 | 在信号技术上安全的计算单元之间的数据传输 |
CN108319200A (zh) * | 2018-02-28 | 2018-07-24 | 西安电子科技大学 | 一种便携式互联网逻辑分析仪 |
CN112559261A (zh) * | 2020-11-27 | 2021-03-26 | 中国船舶重工集团公司第七0九研究所 | 一种基于层次状态机的axi总线性能分析方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103995764B (zh) | 一种具有串行总线协议连续触发功能的逻辑分析仪 | |
CN103955419A (zh) | 具有串行总线协议在线实时检测分析功能的逻辑分析仪 | |
CN103475523B (zh) | 带总线错误解析功能的can总线分析系统 | |
CN105116318B (zh) | 一种逻辑分析仪中实现毛刺检测的方法 | |
CN102355382A (zh) | 一种控制器局域网总线分析与触发的方法 | |
CN101685135B (zh) | 用于测试电路板的测试装置和方法 | |
CN104506376B (zh) | 一种具有帧起始敏感同步触发功能的多通道冗余式can总线测试系统 | |
CN106021165B (zh) | 一种lin总线解码、触发和分析技术 | |
CN104008078B (zh) | 一种基于fpga的数据传输板之间进行高速传输的方法 | |
CN105044420B (zh) | 一种数字示波器的波形搜索方法 | |
CN103353543B (zh) | 一种具有串行协议触发和解码功能的数字示波器 | |
CN102621364B (zh) | 电子量测装置及其串列转并列数据排序处理方法 | |
CN101770424A (zh) | 适于数字通信终端底层协议栈的数据采集与仿真系统 | |
CN204425370U (zh) | 一种fc交换机监控电路 | |
CN102298565A (zh) | 一种异步串行总线信号的解码与触发方法 | |
CN114020511A (zh) | 基于fpga的故障检测方法、装置、设备及可读存储介质 | |
CN103592599A (zh) | 基于usb逻辑分析仪触发装置 | |
US6148420A (en) | Method and apparatus for analyzing serial data | |
CN107885675A (zh) | 一种多功能测量仪器程控命令处理方法 | |
CN102323914B (zh) | 一种自动检测韦根输入的控制器接口的控制方法 | |
US8452910B1 (en) | Capture of USB packets into separate USB protocol streams based on different USB protocol specifications | |
CN109521239A (zh) | 一种示波器中arinc429总线协议分析与触发系统及方法 | |
CN102944301B (zh) | 基于变距分段法的超声信号数字式峰值检测方法及系统 | |
CN108540364A (zh) | 一种基于cpld技术的mvb总线数据解码及收集方法 | |
CN201766598U (zh) | 一种多速率一带四比特误码分析检测仪 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140730 |