首页> 中国专利> 一种基于FPGA的传感器测试驱动信号波形显示方法及装置

一种基于FPGA的传感器测试驱动信号波形显示方法及装置

摘要

本申请公开一种基于FPGA的传感器测试驱动信号波形显示方法及装置,该方法包括:采集多个不同的驱动信号,并收集所有所述驱动信号的跳变时刻;基于所述跳变时刻缓存所述驱动信号的跳变数据;与主机通讯在接收到主机的读取请求时,基于读取请求获取缓存的驱动信号的跳变数据;读取所述驱动信号的跳变数据并还原,获得波形文件;对波形文件进行识别并显示。上述方案经主机端仿真软件识别后能获得一段时间内波形并经显示模块显示供用户参考,分析问题很方便,并且能记录下最后出错的波形,非常灵活,软件人员可根据出问题情况,定制化的去抓取信号。

著录项

  • 公开/公告号CN112883912A

    专利类型发明专利

  • 公开/公告日2021-06-01

    原文格式PDF

  • 申请/专利权人 深圳市度信科技有限公司;

    申请/专利号CN202110288709.6

  • 发明设计人 聂忠强;何海山;

    申请日2021-03-18

  • 分类号G06K9/00(20060101);G06F30/20(20200101);

  • 代理机构11508 北京维正专利代理有限公司;

  • 代理人郭彩红

  • 地址 518000 广东省深圳市龙华区大浪街道浪口社区华霆路119号潮回楼工业园3栋4层B区分隔体

  • 入库时间 2023-06-19 11:11:32

说明书

技术领域

本发明涉及传感器测试技术领域,具体是一种基于FPGA的传感器测试驱动信号波形显示方法及装置。

背景技术

传感器要工作起来,需要测试盒设备通过I2C/SPI总线驱动传感器,传感器工作后会有各种问题出现,有些问题难以定位分析,为了解决这一问题,相关技术中,参见图1,为了确定传感器输出的信号异常的原因通常需要外挂调试器采集FPGA内各模块(包括模块1、模块2、模块3等)的信号,通过调试软件实施跟踪波形,以监控波形变化的异常,此种方式需要用户监控波形变化的异常并记录异常的时间点,不便于现场问题的定位,不容易捕捉到出现问题的时刻。

发明内容

本申请提供一种基于FPGA的传感器测试驱动信号波形显示方法及装置方法及装置,用于克服现有技术中波形异常时刻记录不便的缺陷。

为实现上述目的,第一方面,本申请提供一种基于FPGA的传感器测试驱动信号波形显示方法,包括:

采集多个不同的驱动信号,并收集所有所述驱动信号的跳变时刻;

基于所述跳变时刻缓存所述驱动信号的跳变数据;

与主机通讯在接收到主机的读取请求时,基于读取请求获取缓存的驱动信号的跳变数据;

读取所述驱动信号的跳变数据并解析,获得波形文件;

对波形文件进行还原并显示。

通过采用上述的技术方案,在测试过程中,采集多个用于输入传感器的驱动信号,并收集其波形出错的跳变数据并缓存,在接收到来自于主机的关于特定的驱动信号的读取请求时,从缓存数据中提取相应驱动信号的跳变数据,并进行还原后获得能够被仿真软件识别的波形文件,经仿真软件识别后获得一段时间内波形并经显示模块显示供用户参考,分析问题很方便,并且能记录下最后出错的波形,非常灵活,软件人员可根据出问题情况,定制化的去抓取信号。

优选的,所述采集多个不同的驱动信号,并收集所有所述驱动信号的跳变时刻的步骤包括:

采集多个不同的驱动信号,并获取每一驱动信号的采样时刻及采样值;

基于每一驱动信号的采样时刻及采样值与该驱动信号的基准信号进行比较获得跳变时刻并存储。

通过采用上述的技术方案,在采集数字驱动信号时,可直接采集数字驱动信号的上升沿时刻和下降沿时刻(采样频率远远高于数字信号的变化频率,上升沿时刻和下降沿时刻是众多采样时刻中的一个),基于上升沿时刻和下降沿时刻与该数字驱动信号的基准信号比较,在上升沿和或下降沿发生错位时作为跳变时刻存储。在采集模拟驱动信号时,基于采样时刻的采样值与模拟驱动信号的基准信号在该时刻的基准值分别对比,在两者不一致时将该采样时刻作为跳变时刻。

优选的,所述与主机通讯在接收到主机的读取请求时,基于读取请求获取缓存的驱动信号的跳变数据的步骤包括:

与主机通讯,接收主机基于用户的操作发出获取预定的驱动信号的读取请求;

获取所述预定驱动信号在跳变时刻前后预定时间段的采集数据。

通过采用上述的技术方案,缓存作为跳变数据,主机在发送读取请求时,携带了发出所需要的读取的数字驱动信号的物理地址或编号,在FPGA接收该请求时能够准确地从信号存储模块中提取到所述数字驱动信号的跳变数据,即预先缓存在信号存储模块中包含跳变时刻及其前后预定的连续时间段内的采集数据(包括采样时刻及采样值),迅速便捷,且用户使用的灵活性较高。

优选的,所述读取所述驱动信号的跳变数据并还原,获得波形文件的步骤包括:

读取所述驱动信号的采样数据,并对其解析生成Modelsim仿真软件能够识别的波形文件。

通过采用上述的技术方案,缓存的采样数据为离散数据,对所述离散数据进行解析生成Modelsim仿真软件能识别的波形文件,通过测试盒的函数接口转换成.v文件格式或.do文件格式。

优选的,所述对波形文件进行还原并显示的步骤包括:

还原波形文件获得波形数据,并基于波形数据显示跳变时刻前后预设时间段的波形。

通过采用上述的技术方案,仿真软件在还原波形文件时,还原波形异常的参数及异常时刻前后预设的时间段内的波形数据,包括电平状态、高电平时间段或低电平时间段及其间隔时间等,以便于用户分析跳变原因。

为实现上述目的,第二方面,本申请还提供一种基于FPGA的传感器测试驱动信号波形显示装置,包括FPGA和主机,其中FPGA包括:

多个驱动信号生成模块,分别用于生成不同的驱动信号;

信号采集模块,用于采集所述驱动信号并收集驱动信号的跳变时刻;

信号存储模块,用于基于所述跳变时刻缓存所述驱动信号的跳变数据;

寄存模块,与信号存储模块物理连接,用于与主机通讯;

其中主机包括:

解析模块,位于所述主机内,用于读取信号存储模块内缓存的所述驱动信号的跳变数据并解析,获得波形文件;

还原模块,用于还原波形文件;

显示模块,用于显示还原后的波形文件。

通过采用上述的技术方案,记录 FPGA 内部一些驱动信号生成模块内部信号跳变的过程,能够记录比较长的一段时间的波形,通过光纤或者 USB 等接口读取内部信号波形跳变的时刻,主机PC 端解析生成特定的文件,通过仿真软件还原包含跳变时刻在内的一段时间内的波形,分析问题很方便,并且能记录下最后出错的波形,非常灵活,软件人员可根据出问题情况,定制化的去抓取信号。

优选的,所述寄存模块与主机之间通过光纤、USB接口通讯。

通过采用上述的技术方案,通讯信号更为稳定,且技术成熟可靠。

优选的,所述信号采集模块包括:

采集单元,用于采集多个不同的驱动信号,并获取每一驱动信号的采样时刻和/或采样值;

记录单元,用于基于每一驱动信号的采样时刻和/或采样值与该驱动信号的基准信号进行比较获得跳变时刻。

通过采用上述的技术方案,采集单元对驱动信号的采集数据经记录单元进行比对分析获得跳变时刻,采集单元可用采集器,记录单元可采用存储器,预测单元的功能可通过程序或逻辑电路实现,计算过程简单,对硬件的要求较低,且计算速度较快。

优选的,所述寄存模块还用于在与主机通讯时接收主机基于用户的操作发出获取预定的驱动信号的读取请求,从信号存储模块中提取所述预定驱动信号在跳变时刻前后预定时间段的采集数据。

通过采用上述的技术方案,不仅仅记录单元能够记录跳变时刻,信息存储模块还能存储一段时间的采集数据,在波形出现跳变时,寄存模块将跳变时刻前后一段时间内的采集数据传输给主机,以便于主机对该采集数据进行后续的解析和存储;用户在主机端设置需要测试的驱动信号生成模块,并生成操作指令给FPGA芯片,后续FPGA芯片会自动监测该驱动信号生成模块输出的驱动信号,并在驱动信号产生跳变时能够自动记录跳变时刻,并通过主机自动获取跳变时刻前后时间段的采集数据,以方便用户查看。

优选的,所述解析模块还用于读取所述驱动信号的采样数据,并对其解析生成Modelsim仿真软件能够识别的波形文件;

所述还原模块用于还原波形文件获得波形数据;

所述显示模块用于基于波形数据显示跳变时刻前后预设时间段的波形。

通过采用上述的技术方案,能够对采样数据进行快速解析和还原,并且显示还原的波形,对主机端配置要求较低,且上述采样数据转换为仿真软件能识别的格式文件不需要复杂的过程,该格式文件的占用空间较小。

本申请提供的基于FPGA的传感器测试驱动信号波形显示方法及装置具有如下综合技术效果:

对波形信号进行记录,读出波形信息,通过软件仿真还原出最后一段时刻的波形;便于客户现场问题的定位,捕捉到出问题的时刻;分析问题很方便,并且能记录下最后出错的波形, 非常灵活,软件人员可根据出问题情况,定制化的去抓取信号。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。

图1为相关技术中采集波形功能实现的硬件框架图;

图2为本申请实施例一提供的基于FPGA的传感器测试驱动信号波形显示装置的硬件框架图;

图3为本申请实施例二提供的基于FPGA的传感器测试驱动信号波形显示方法的流程图;

图4为本申请实施例二中显示的波形图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。

另外,在本发明中如涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

在本发明中,除非另有明确的规定和限定,术语“连接”、“固定”等应做广义理解,例如,“固定”可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接,还可以是物理连接或无线通信连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

另外,本发明各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。

实施例一

如图2所示,本方案提供一种基于FPGA的传感器测试驱动信号波形显示装置,包括FPGA芯片1和主机2,其中FPGA芯片1包括多个驱动信号生成模块11、信号采集模块12、信号存储模块13和寄存模块14;多个驱动信号生成模块11内部包含驱动信号生成模块01、驱动信号生成模块02、……、驱动信号生成模块0n等;信号存储模块13与寄存模块14通过I2C总线或SPI总线连接,寄存模块14与信号存储模块13物理连接,例如通过光纤或USB接口与主机2通讯;主机2包括解析模块21、还原模块22和显示模块23。FPGA芯片1主机2安装有仿真软件;信号采集模块12包括采集单元121和记录单元122。

下面基于该装置对基于FPGA的传感器测试驱动信号波形显示方法的实施进行说明:

实施例二

参见图3,本方案提供一种基于FPGA的传感器测试驱动信号波形显示方法,包括:

S100,采集多个不同的驱动信号,并收集所有所述驱动信号的跳变时刻;

FPGA芯片1接收主机2的指令,对传感器3进行测试,FPGA芯片1激发多个驱动信号生成模块11分别生成不同的驱动信号,以驱动传感器3并对其不同的功能进行测试,驱动信号为数字驱动信号或模拟驱动信号;信号采集模块12主要采集多个驱动信号的跳变时刻。

S200,基于收集的跳变时刻缓存所述驱动信号的跳变数据;

将多个驱动信号的跳变时刻前后连续时间段内的采集数据作为跳变数据缓存于信号存储模块13中,信号存储模块13可以采用FPGA芯片1内部的buffer(缓冲器)。这个时间段可以在主机端预设,在本申请一具体实施例中,主机端通过用户的设定在识别到某一驱动信号的跳变时刻后到达预定时间后自动停止数据采集,在达到另一预定时间时重新启动数据采集,在识别到跳变时,再次在预定时间后停止。

S300,与主机通讯在接收到主机的读取请求时,基于读取请求获取缓存的驱动信号的跳变数据;

存储于信号存储模块13内部的跳变数据通过I2C或SPI总线传输至寄存模块14,寄存模块14可采用FPGA芯片1内部的Regs(寄存器),寄存模块14与主机2通讯基于主机2的读取请求将驱动信号的跳变数据传输给主机2。

S400,读取所述驱动信号的跳变数据并解析,获得波形文件;

主机2读取多个驱动信号的跳变数据,解析模块21解析获得预定格式的文件,该格式仿真软件能够识别,通过还原模块22(安装有仿真软件)对该格式文件还原获得波形文件,该波形文件能够显示一段时间内的波形。

S500,对波形文件进行还原并显示。

显示模块23对获得的波形文件进行显示。

上述方案,记录FPGA芯片1内驱动信号生成模块11输出的驱动信号的跳变过程,能够记录比较长一段时间的波形,主机2通过光纤接口或USB接口读取FPGA芯片1内部信号波形跳变的时刻,解析生成也定格式的文件,通过仿真软件还原一段时间内的波形,分析问题很方便,并且能记录下最后出错的波形,非常灵活,用户可根据出问题的情况,定制化的去抓取信号,方便用户定位错误的波形,并基于错误的波形定位跳变的时刻,跳变的时刻能够准确的提取并显示,方便用户基于驱动信号跳变的时刻分析传感器的测试结果。

其中,所述采集多个不同的驱动信号,并收集所有所述驱动信号的跳变时刻的步骤S100包括:

S101,采集多个不同的驱动信号,并获取每一驱动信号的采样时刻和/或采样值;

下面以模拟驱动信号为例进行说明:

模拟驱动信号离散后是以采样时刻为横标指标、信号值为纵坐标的一系列离散的二进制数值,前后两个采样时刻之间的时间间隔即采样周期基于采样频率确定,例如采样频率为1000Hz,则采样周期为1/1000t,采集的信号:X(0)=0,X(1)=0,……。

下面以数字信号为例进行说明:

数字驱动信号例如:001000110000,0111000001100等,每个数字表示一个基准脉冲的值。

S102,基于每一驱动信号的采样时刻和/或采样值与该驱动信号的基准信号比较获得跳变时刻并存储;

例如激发的驱动信号均为模拟信号,例如,采样频率为1000Hz,采集的信号:X(0)=0,X(1)=0010,X(2)=0101,X(3)=0110,X(4)=0101,X(5)=0010,X(6)=0,X(7)=0,X(8)=0,例如该模拟信号的基准信号为:采样频率为1000Hz,采集的信号:X(0)=0,X(1)=0010,X(2)=0101,X(3)=0110,X(4)=0101,X(5)=0010,X(6)=0,X(7)=1111,X(8)=1111,由此可以确定该模拟驱动信号的跳变时刻为t7、t8,存储t7、t8。

例如激发的驱动信号均为数字信号:001100110,由此可以确定驱动信号上升沿时刻为t2、t6,下降沿时刻为t4、t8。

若该数字驱动信号基于协议确定的基准信号为001100010,则跳变时刻为t6、t7,存储t6、t7。

其中基于所述跳变时刻缓存所述驱动信号的跳变数据的步骤S200包括:

例如,基于跳变时刻t7、t8将所述驱动信号的采样数据X(0)=0,X(1)=0010,X(2)=0101,X(3)=0110,X(4)=0101,X(5)=0010,X(6)=0,X(7)=1111,X(8)=1111,X(9)=0110,X(10)=0101,X(11)=0010,X(12)=0,存入信息存储模块;

例如,基于跳变时刻t6、t7将所述驱动信号的采样数据0011001100011存入信息存储模块。

其中,所述与主机通讯在接收到主机的读取请求时,基于读取请求获取缓存的驱动信号的跳变数据的步骤S300包括:

S301,与主机通讯,接收主机基于用户的操作发出获取预定的驱动信号的读取请求;

在本申请一实施例中,主机2基于用户输入的操作指令与FPGA芯片1交互,发出获取某一数字驱动信号或多个数字驱动信号的读取请求,该请求中包含了生成该数字驱动信号的驱动信号生成模块的编号。

在本申请另一实施例中,主机2基于用户输入的操作指令与FPGA芯片1交互,发出获取某一模拟驱动信号或多个模拟驱动信号的读取请求,该请求中包含了生成该模拟驱动信号的驱动信号生成模块的编号。

S302,获取所述预定驱动信号的跳变时刻前后预定时间段的数据。

FPGA芯片1接收该读取请求后,根据寄存模块14的地址管理能够从信号存储模块13内指定的缓冲区提取该驱动信号生成模块输出的数字驱动信号或模拟驱动信号在跳变时刻前后一段时间内的采集数据。

其中,所述读取所述驱动信号的跳变数据并还原,获得波形文件的步骤S400包括:

读取所述驱动信号的采集数据,并对其解析生成Modelsim仿真软件能够识别的波形文件。

基于一段时间内的采集数据,通过解析模块21对其解析后生成例如:.v格式或.do格式等波形文件,以供Modelsim仿真软件识别和还原。

其中,所述对波形文件进行识别并显示的步骤S500包括:

还原波形文件获得波形数据,并基于波形数据显示跳变时刻前后预设时间段的波形。

还原模块22通过Modelsim仿真软件对上述波形文件进行识别和还原,并将还原的波形数据通过显示模块23显示。

在本方案一具体实施方式中:

通过调用测试盒的接口产生sigrec_20190325_19_56_30_0519.v文件。参见图4:

通过modelsim仿真产生还原的波形文件,仿真出了FPGA芯片1产生的各种信号的波形,通过波形分析现场问题。

用于若没有及时观看波形图,主机2会存储上述波形文件及波形数据,用户可随时调取,而不需要时刻监督。用户基于波形显示能够看到波形的跳变,在主机端输入操作指令,该操作指令可以抓取波形跳变的位置等信息,仿真软件基于波形跳变位置获得采集数据,主机2基于该指令能提取跳变时刻的采集数据;并且基于抓取指令也能获得跳变时刻前后时间段的采集数据。

以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号