CN103647966B - 一种基于fpga图像数据检测方法及装置 - Google Patents
一种基于fpga图像数据检测方法及装置 Download PDFInfo
- Publication number
- CN103647966B CN103647966B CN201310712170.8A CN201310712170A CN103647966B CN 103647966 B CN103647966 B CN 103647966B CN 201310712170 A CN201310712170 A CN 201310712170A CN 103647966 B CN103647966 B CN 103647966B
- Authority
- CN
- China
- Prior art keywords
- processing module
- test pattern
- pattern data
- pixel value
- module
- 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.)
- Expired - Fee Related
Links
Landscapes
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
Abstract
本发明实施例公开了一种基于FPGA图像数据检测方法及装置,用于在像素出错的情况下,快速定位在FPGA中出错的处理模块,提高了图像数据检测的效率。本发明实施例方法包括:接收测试图像数据,测试图像数据包含有n个像素,对通过处理模块处理后的测试图像数据进行跟踪检测,若检测到测试图像数据的像素值与预置像素信息不一致时,则输出高电平信号,通过读取寄存器的位置信息确定输出高电平信号的处理模块,并通过逻辑分析工具,确定出错像素的位置。
Description
技术领域
本发明涉及领域图像数据处理领域,尤其涉及一种基于FPGA图像数据检测方法及装置。
背景技术
在图像数据处理领域中,通过使用解码芯片对图像数据进行采集,再根据FPGA作为数据处理中心对图像数据进行缓存处理等操作,进而由CPU作为控制中心控制FPGA芯片和外围电路进行正常的工作,最后将图像数据正常输出显示器中播放,这样的一种图像数据处理方式越来越受到关注。
现有的使用FPGA作为数据处理中心的模式中,图像数据从解码芯片解码后,进入FPGA的经过若干模块的处理,最后转换成相应的格式输出到显示器上,但是,在实际应用阶段,由于信号源,外围解码芯片,以及传送图像介质的种类多种多样,当更换信号源,图像传送介质,或者是因为芯片停产而需要更换解码芯片时,FPGA内部的原设计无法保证全部兼容,特殊的信号源和传送介质或者更换解码芯片后输出特殊格式的图像数据,例如打包方式不同,或者同步信号与数据的互嵌方式不同,因此,会导致像素数据丢失,混入无效数据,或者次序颠倒的问题,然而,当出现这样的问题的时候,需要利用外挂FPGA调试器usb_blaster,SignalTap或ChipScope等逻辑分析工具对图像数据从进入FPGA的第一个模块开始检测,往后逐个模块对有关信号的波形数据进行抓取检测,最终确定问题的所在。
然而,当像素出错时,由于不确定图像数据是在FPGA中的哪一个模块中出错,因此,导致在检测图像数据的时候无法具体明确,没有针对性,检测效率缓慢的问题。
发明内容
本发明实施例提供了一种基于FPGA图像数据检测方法及装置,通过对处理模块处理后的测试图像数据的像素值进行跟踪检测,若检测到像素值不一致时,输出高电平信号,通过读取寄存器的位置信息确定输出高电平信号的处理模块,便能够在像素出错的情况下,快速定位在FPGA中出错的处理模块,提高了图像数据检测的效率。
一种基于FPGA图像数据检测方法,其特征在于,包括:
接收测试图像数据,所述测试图像数据包含有n个像素;
对通过处理模块处理后的所述测试图像数据进行跟踪检测;
若检测到所述测试图像数据的像素值与预置像素信息不一致时,则输出高电平信号;
通过读取寄存器的位置信息确定输出所述高电平信号的所述处理模块。
可选地,对处理模块处理后的所述测试图像数据进行跟踪检测具体包括:对通过所述处理模块非算法处理后的所述测试图像数据进行跟踪检测。
可选地,若检测到所述测试图像数据的像素值与预置像素不一致时,则输出高电平信号具体包括:若检测到所述像素值与预置的所述像素个数不相等时,输出所述高电平信号。
可选地,对通过处理模块处理后的所述测试图像数据进行跟踪检测具体包括:对所述测试图像数据进行算法处理后对所述测试图像数据进行跟踪检测获取第一像素值;
对通过处理模块非算法处理后的所述测试图像数据进行跟踪检测获取第二像素值。
可选地,若检测到所述测试图像数据的像素值与预置像素不一致时,则输出高电平信号具体包括:若检测到经过预置时间延迟的所述第一像素值与所述第二像素值不一致时,则输出所述高电平信号。
可选地,对通过处理模块处理后的所述测试图像数据进行跟踪检测之前还包括:将所述处理模块的所述位置信息存储在寄存器中。
可选地,通过读取寄存器的位置信息确定输出所述高电平信号的所述处理模块之后还包括:通过逻辑分析工具对输出高电平信号的所述处理模块进行分析,确定所述像素值位置。
一种基于FPGA图像数据检测装置,包括:
接收模块,用于接收测试图像数据,所述测试图像数据包含有n个像素;
处理模块,用于处理所述测试图像数据;
检测模块,用于对通过处理模块处理后的所述测试图像数据进行跟踪检测;
若检测到所述测试图像数据的像素值与预置像素不一致时,则输出高电平信号;
确定模块,用于通过读取寄存器的位置信息确定输出所述高电平信号的所述处理模块。
可选地,第一处理子模块,对通过处理模块非算法处理后的所述测试图像数据进行跟踪检测;
第一检测子模块,用于若检测到所述像素值与预置的所述像素个数不相等时,输出高电平。
可选地,第二处理子模块,用于对所述测试图像数据进行算法处理后对所述测试图像数据进行跟踪检测获取第一像素值;
第三处理子模块,用于对通过处理模块非算法处理后的所述测试图像数据进行跟踪检测获取第二像素值;
第二检测子模块,用于若检测到经过预置时间延迟的所述第一像素值与所述第二像素值不一致时,则输出所述高电平信号。
可选地,处理模块之前还包括:
寄存模块,用于将所述处理模块信息存储在寄存器中。
可选地,确定模块之后还包括:
分析模块,用于通过逻辑分析工具对输出高电平信号的所述处理模块进行分析,确定所述像素值位置。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例提供了一种基于FPGA图像数据检测方法及装置,其中,一种基于FPGA图像数据检测方法包括:接收测试图像数据,测试图像数据包含有n个像素,对通过处理模块处理后的测试图像数据进行跟踪检测,若检测到测试图像数据的像素值与预置像素信息不一致时,则输出高电平信号,通过读取寄存器的位置信息确定输出高电平信号的处理模块,本实施例中,通过对处理模块处理后的测试图像数据的像素值进行跟踪检测,若检测到像素值不一致时,输出高电平信号,通过读取寄存器的位置信息确定输出高电平信号的处理模块,便能够在像素出错的情况下,快速定位在FPGA中出错的处理模块,便解决了检测的时候无法具体明确,没有针对性,检测效率缓慢的技术问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例中的一种基于FPGA图像数据检测方法的一个实施例的流程示意图;
图2为本发明实施例中的一种基于FPGA图像数据检测方法的另一个实施例的流程示意图;
图3为本发明实施例中的一种基于FPGA图像数据检测方法的另一个实施例的流程示意图;
图4为本发明实施例中的一种基于FPGA图像数据检测方法的另一个实施例的流程示意图;
图5为本发明实施例中的一种基于FPGA图像数据检测方法的另一个实施例的流程示意图;
图6为本发明实施例中的一种基于FPGA图像数据检测方法的另一个实施例的流程示意图;
图7为本发明实施例中的一种基于FPGA图像数据检测装置的一个实施例的结构示意图;
图8为本发明实施例中的一种基于FPGA图像数据检测装置的另一个实施例的结构示意图;
图9为本发明实施例中的一种基于FPGA图像数据检测装置的另一个实施例的结构示意图。
具体实施方式
本发明实施例提供了一种基于FPGA图像数据检测方法及装置,通过对处理模块处理后的测试图像数据的像素值进行跟踪检测,若检测到像素值不一致时,输出高电平信号,通过读取寄存器的位置信息确定输出高电平信号的处理模块,便能够在像素出错的情况下,快速定位在FPGA中出错的处理模块,提高了图像数据检测的效率。
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例的一种基于FPGA图像数据检测方法的一个实施例可包括:
101、接收测试图像数据;
本实施例中,在使用FPGA对图像数据进行缓存处理输出正常的图像数据到显示器之前,需要对FPGA的进行检测,以确定该FPGA是否正常工作,或者是在使用FPGA对图像数据进行缓存处理后输出到显示器图像数据时发生错误,首先,输入测试图像的信号源,经过解码芯片解码出包含有n个像素的输入测试图像数据,该测试图像的像素值可以是从1开始逐个递增的测试图像。
102、对通过处理模块处理后的测试图像数据进行跟踪检测;
当测试图像的数据流开始在FPGA中,经过处理模块进行功能上的处理,例如该测试图像可以是由若干个处理模块依次进行功能处理,与此同时,对流经每一个处理模块时的图像数据进行跟踪检测,例如可以对图像数据流经该处理模块时的所有像素值进行检测,或者是扫描。
103、若检测到测试图像数据的像素值与预置像素不一致时,则输出高电平信号;
本实施例中,在进行检测的过程中,当检测到测试图像数据的像素值与预置像素信息不一致时,则输出一个高电平信号。
104、通过读取寄存器的位置信息确定输出高电平信号的处理模块;
本实施例中,当处理模块反馈输出高电平信号后,在寄存器中的处理模块位置信息从0变成1,当确定1在寄存器的读取中出现的位置后,快速地确定出错的处理模块,需要说明的是,若干个处理模块,在寄存器中的初始化值均设置为0,当其中一个处理模块输出高电平时,该处理模块在寄存器中的值变为1,同时,在该处理模块之后的其它处理模块在寄存器中的值也变为1。
本发明实施例提供了一种一种基于FPGA图像数据检测方法,包括:接收测试图像数据,测试图像数据包含有n个像素,对通过处理模块处理后的测试图像数据进行跟踪检测,若检测到测试图像数据的像素值与预置像素信息不一致时,则输出高电平信号,通过读取寄存器的位置信息确定输出高电平信号的处理模块,本实施例中,通过对处理模块处理后的测试图像数据的像素值进行跟踪检测,若检测到像素值不一致时,输出高电平信号,通过读取寄存器的位置信息确定输出高电平信号的处理模块,便能够在像素出错的情况下,快速定位在FPGA中出错的处理模块,便解决了检测的时候无法具体明确,没有针对性,检测效率缓慢的技术问题。
上面是对本发明实施例的基于FPGA图像数据检测方法的步骤进行的详细的描述,下面将对确定测试图像中出错的像素的分析步骤进行详细的描述,请参阅图2,本发明实施例的一种基于FPGA图像数据检测方法的另一个实施例可包括:
201、接收测试图像数据;
此步骤与前述图1所示的实施例中的步骤101的内容相同,此处不再赘述。
202、将处理模块的位置信息存储在寄存器中;
本实施例中,在FPGA中需要将图像数据通过若干个处理模块进行功能处理,此时,寄存器将若干个处理模块的状态信息通过二进制储存,例如在寄存器中设定若干个处理模块的初始状态信息值为0。
203、对通过处理模块处理后的测试图像数据进行跟踪检测;
此步骤与前述图1所示的实施例中的步骤102的内容相同,此处不再赘述。
204、若检测到测试图像数据的像素值与预置像素不一致时,则输出高电平信号;
此步骤与前述图1所示的实施例中的步骤103的内容相同,此处不再赘述。
205、通过读取寄存器的位置信息确定输出高电平信号的处理模块;
此步骤与前述图1所示的实施例中的步骤104的内容相同,此处不再赘述。
206、通过逻辑分析工具确定像素值位置。
当确定输出高电平信号的处理模块之后,通过使用逻辑分析工具对该处理模块进行分析,例如SignalTap或ChipScope等逻辑分析工具中将该模块的信号数据与检测到的像素信息添加进逻辑分析工具的波形列表中,然后通过对程序进行编译,便获取到像素信息的检测信号上升沿为触发条件,即可抓取出错时刻的像素信息的信号波形,根据波形数据,确定出错的像素位置。
本实施例中,通过对处理模块处理后的测试图像数据的像素值进行跟踪检测,若检测到像素值不一致时,输出高电平信号,通过读取寄存器的位置信息确定输出高电平信号的处理模块,便能够在像素出错的情况下,快速定位在FPGA中出错的处理模块,便解决了检测的时候无法具体明确,没有针对性,检测效率缓慢的技术问题,通过使用逻辑分析工具,便能够进一步确定导致处理模块处理出错的像素在测试图像中的位置,实现了更加精准的检测方法。
上面是对确定测试图像中出错的像素的分析步骤进行详细的描述,下面将对处理模块处理时及处理后的检测的步骤进行详细的描述,在实际应用中,处理模块的处理功能有多种,下面分别进行详细的描述:
一、处理模块进行非算法处理;
本实施例中,下面对FPGA中图像数据流经的处理模块为非算法处理模块进行详细的描述,请参阅图3,本发明实施例的一种基于FPGA图像数据检测方法的另一个实施例可包括:
301、接收测试图像数据;
此步骤与前述图1所示的实施例中的步骤101的内容相同,此处不再赘述。
302、将处理模块的位置信息存储在寄存器中;
本实施例中,在FPGA中需要将图像数据通过若干个处理模块进行功能处理,此时,寄存器将若干个处理模块的状态信息通过二进制储存,例如在寄存器中设定若干个处理模块的初始状态信息值为0。
303、对通过处理模块非算法处理后的测试图像数据进行跟踪检测;
当测试图像的数据流开始在FPGA中,经过处理模块进行功能上的非算法处理后的,例如该测试图像可以是由若干个处理模块依次进行非算法处理后,例如拆包,组包,帧缓存,时钟域转换,DMA等处理,具体此处不做限定,与此同时,对流经每一个处理模块时的图像数据进行跟踪检测,例如可以对图像数据流经该处理模块时的所有像素值进行检测,或者是扫描。
304、若检测到像素值与预置的像素个数不相等时,输出高电平信号;
本实施例中,当依次对经过每个处理模块进行非算法处理后的测试图像数据进行检测的过程中,检测到测试图像数据的像素值与像素个数不相等时,则输出一个高电平信号,需要说明的是,例如像素值为1024,则像素个数必须为1024个。
305、通过读取寄存器的位置信息确定输出高电平信号的处理模块;
此步骤与前述图1所示的实施例中的步骤104的内容相同,此处不再赘述。
306、通过逻辑分析工具确定像素值位置。
当确定输出高电平信号的处理模块之后,通过使用逻辑分析工具对该处理模块进行分析,例如SignalTap或ChipScope等逻辑分析工具中将该模块的信号数据与检测到的像素信息添加进逻辑分析工具的波形列表中,然后通过程序进行编译,便获取到像素信息的信号上升沿为触发条件,即可抓取出错时刻的像素信息的信号波形,根据波形数据,确定出错的像素位置。
本实施例中,通过对处理模块的非算法处理后的测试图像数据的像素值进行跟踪检测,若检测到像素值与像素个数不相等时,输出高电平信号,通过读取寄存器的位置信息确定输出高电平信号的处理模块,便能够在像素出错的情况下,快速定位在FPGA中出错的处理模块,便解决了检测的时候无法具体明确,没有针对性,检测效率缓慢的技术问题,通过使用逻辑分析工具,便能够进一步确定导致处理模块处理出错的像素在测试图像中的位置,实现了更加精准的检测方法。
二、处理模块进行算法处理;
本实施例中,下面对FPGA中图像数据流经的处理模块为算法处理模块进行详细的描述,请参阅图4,本发明实施例的一种基于FPGA图像数据检测方法的另一个实施例可包括:
401、接收测试图像数据;
此步骤与前述图1所示的实施例中的步骤101的内容相同,此处不再赘述。
402、将处理模块的位置信息存储在寄存器中;
本实施例中,在FPGA中需要将图像数据通过若干个处理模块进行功能处理,此时,寄存器将若干个处理模块的状态信息通过二进制储存,例如在寄存器中设定若干个处理模块的初始状态信息值为0。
403、对测试图像数据进行算法处理后对测试图像数据进行跟踪检测获取第一像素值;
当测试图像的数据流经过处理模块进行功能上的算法处理后,流入另一个处理模块进行非算法处理,例如该测试图像可以是由若干个处理模块依次进行算法处理后,例如缩放,格式转换,去隔行等处理,具体此处不做限定,与此同时,对流经进行算法处理的处理模块的图像数据进行跟踪检测,获取该图像数据的所有像素值为第一像素值,例如可以对图像数据流经该处理模块时的所有像素值进行检测,或者是扫描。
404、对通过处理模块非算法处理后的测试图像数据进行跟踪检测获取第二像素值;
当测试图像的数据流开始在FPGA中,经过处理模块进行功能上的算法处理后的,例如该测试图像可以是由若干个处理模块依次进行算法处理后,例如拆包,组包,帧缓存,时钟域转换,DMA等处理,具体此处不做限定,与此同时,对流经进行非算法处理的处理模块的具有第一像素值的图像数据进行跟踪检测,获取该图像数据的所有像素值为第二像素值,例如可以对图像数据流经该处理模块时的所有像素值进行检测,或者是扫描。
可以理解的是,测试图像数据中的像素经过算法处理后,像素的值因此改变,需要记录下改变后的像素值,此时,改变像素值的测试图像数据通过处理模块进行非算法处理时,经过该处理模块的相应时钟拍延迟后,例如可以是先入先出的原则进行缓存处理。
405、若检测到经过预置时间延迟的第一像素值与第二像素值不一致时,则输出高电平信号;
本实施例中,当依次对经过每个处理模块进行非算法处理后的测试图像数据进行检测的过程中,检测到测试图像数据的第一像素值与第二像素值不一致时,则输出一个高电平信号。
406、通过读取寄存器的位置信息确定输出高电平信号的处理模块;
此步骤与前述图1所示的实施例中的步骤104的内容相同,此处不再赘述。
407、通过逻辑分析工具确定像素值位置。
当确定输出高电平信号的处理模块之后,通过使用逻辑分析工具对该处理模块进行分析,例如SignalTap或ChipScope等逻辑分析工具中将该模块的信号数据与检测到的像素信息添加进逻辑分析工具的波形列表中,然后通过程序进行编译,便获取到像素信息的信号上升沿为触发条件,即可抓取出错时刻的像素信息的信号波形,根据波形数据,确定出错的像素位置。
本实施例中,通过对处理模块的算法处理后的测试图像数据的像素值进行跟踪检测获取第一像素值,对再经过处理模块的非算法处理后的测试图像数据的像素值进行跟踪检测获取第二像素值,若检测到第一像素值与第二像素值不一致时,输出高电平信号,通过读取寄存器的位置信息确定输出高电平信号的处理模块,便能够在像素出错的情况下,快速定位在FPGA中出错的处理模块,便解决了检测的时候无法具体明确,没有针对性,检测效率缓慢的技术问题,通过使用逻辑分析工具,便能够进一步确定导致处理模块处理出错的像素在测试图像中的位置,实现了更加精准的检测方法。
上面是对处理模块处理时及处理后的检测的步骤进行详细的描述,为便于理解,下面将以几个具体应用场景对处理模块处理时及处理后的检测的步骤进行详细的描述:
请参阅图5,本发明实施例的一种基于FPGA图像数据检测方法的另一个实施例可包括:
本实施例中,在使用FPGA对图像数据进行缓存处理输出正常的图像数据到显示器之前,需要对FPGA的进行检测,以确定该FPGA是否正常工作,或者当在使用FPGA对图像数据进行缓存处理输出正常的图像数据到显示器时图像数据出错,首先,S524为信号源,S525为解码芯片,S522为FPGA芯片,在FPGA中,S501,S502,S503,S504,S505…S50n为原设计中,解码芯片输入FPGA的图像需要经过处理的逻辑模块,其中S503为算法处理的处理模块,即有对图像数据做具体的算法处理,例如缩放,格式转换,去隔行等,具体此处不做限定,其它模块为非算法处理的处理模块,例如拆包,组包,帧缓存,时钟域转换,DMA等操作模块,具体此处不做限定,S523,S510,S511,S512,S514,S515…S51n为用于检测经过处理模块进行处理的像素值的模块,S510,S511,S512,为用于检测非算法处理的像素值的模块;S523为检测信号的接收模块,负责接收S510,S511,S512,S514,S515…S51n检测模块发出的信号,S520为CPU芯片,作为控制中心,S521为SPI总线,负责CPU与FPGA之间的通信,使CPU可以对FPGA中对应模块的寄存器进行读写与配置。
当视频图像没有出现问题时,整个系统在正常模式下工作:初始状态下S510,S511,S512,S514,S515…S51n在S523的控制寄存器在初始状态下的值为“0”,可以理解的是,图像数据的检测功能为关闭状态,S510,S511,S512,S514,S515…S51n不启动;视频信号在FPGA中经过S501,S502,S503,S504,S505…S50n的处理,最后输出FPGA,在显示器发现视频图像出现问题时,则启动“检测模式”,环境不变,由原环境中的信号源播放输出一副由图片生成工具产生的像素值从1开始逐个递增的测试图像,CPU通过SPI总线往S510,S511,S512,S514,S515…S51n检测模块的控制寄存器中写入值“1”,即启动S510,S511,S512,S514,S515…S51n模块的检测功能,算法处理的处理模块S503之前的检测模块S510,S511,S512采用A检测方法,算法处理的处理模块S503之后的检测模块S514,S515,S516…S51n采用B检测方法,其中,S511,S512,S514,S515,S516…S51n分别负责检测图像经过S501,S502,S504,S505,S506…S50n处理之后有无出错,S510负责检测解码芯片解码进FPGA中的视频信号有无出错。
A检测方法具体可以包括:设图像第n个像素的的像素值为“pixel_n”;设置像素值个数计数器“cnt_n”,当测试功能启动时,在一帧图像有效区域起始的位置开始统计像素的个数,即“cnt_n”在每一个像素到来时进行累加,而由于每一个像素的像素值“pixel_n”为逐个累加关系,因此在不出错的情况下,“cnt_n”与“pixel_n”在每一个像素时钟到来时都应该相等,即像素值等于统计像素的个数,当出现不相等的情况时,即说明测试图像在经过前面模块处理后出错;即输出一个高电平检测信号至S523模块。
B检测方法具体可以包括::将图像信号经过“算法模块”S503处理之后的图像输出至后面所有的检测模块,经相应时钟拍延迟后与后面所有“非算法模块”处理过后的图像有效区域进行逐个像素比较,同时设置计数器cnt_m,用来标记每次参与比较的像素在一帧图像中的位置,当出现像素比较不相同时,则同样输出一个高电平检测信号至S523,需要说明的是,前述的时钟拍,为测试图像数据的像素从S503输出,S514检测到像素此时的时刻为T,当测试图像数据的像素至S504输出后,S514检测到此时的像素时刻为T+5t,该T+5t则为时钟拍延迟,还可以理解的是,测试图像数据的像素经过S503处理后,遵循先入先出的原则进行缓存处理,此处不做具体限定。
具体的判断出错的方法可以是,当解码芯片解码不出错,图像进入FPGA中经过S501,S502,S504处理后不出错,经过S505处理后出错时,S510,S511,S512以及S514检测模块不发送高电平信号至S523,S515检测后会输出一个高电平至S523中,而S506,S507…以及后面的处理模块处理的都是在S505后出错的图像数据,因此S516,S517…以及后面的检测模块也会输出一个指示出错的高电平信号至S523中,而在S523中把这些检测信号关联至若干个“检测状态寄存器”的对应位中,例如初始值为00…0000000,即出现11…1110000的序列,CPU通过读取“检测状态寄存器”中的这个序列,即可判断出图像信号在经过解码芯片解码不出错,S501,S502,S504处理后也不出错,在经过S505后图像数据开始出错,例如第5位开始为1,也即S505模块为处理出错的模块,发现出错的模块后,可在SignalTap或ChipScope等逻辑分析工具中将S505模块的相关信号与S515的检测信号和计数器cnt_m添加进波形列表中;之后对程序进行编译;编译结束后以S515的检测信号上升沿为触发条件即可抓取出错时刻S505模块中相关信号的波形,由于有相关计数器,例如可以是cnt_n或cnt_m标记出错时刻像素在一帧图像中的位置,即可快速判断出S505模块是在处理图像的第几行第几个像素时出错,快速分析出问题所在,当解决问题后,使系统恢复“正常工作模式”;当序列读出的序列为00…00000时,则说明图像在经过解码芯片解码,以及“非算法模块”S501,S502,S504,S505…S50n的处理之后都不出错,出问题的模块是算法处理模块S503,应该重点分析S503,当序列的第一个位为1时,则说明解码芯片解码出错,应该调整解码芯片相关寄存器中配置的参数,使其进行正常的解码。
本实施例中,通过使用A和B两种检测方法对测试图像数据的像素值进行跟踪检测,确定出错的处理模块,便能够在像素出错的情况下,快速定位在FPGA中出错的处理模块,便解决了检测的时候无法具体明确,没有针对性,检测效率缓慢的技术问题,通过使用逻辑分析工具,便能够进一步确定导致处理模块处理出错的像素在测试图像中的位置,实现了更加精准的检测方法。
请参阅图6,本发明实施例的一种基于FPGA图像数据检测方法的另一个实施例可包括:
本实施例中,在使用FPGA对图像数据进行缓存处理输出正常的图像数据到显示器之前,需要对FPGA的进行检测,以确定该FPGA是否正常工作,或者当在使用FPGA对图像数据进行缓存处理输出正常的图像数据到显示器时图像数据出错,首先,S624为信号源,S625为解码芯片,S622为FPGA芯片,在FPGA中,S603,S604,S605,S606,S607…S60n为原设计中,解码芯片输入FPGA的图像需要经过处理的逻辑模块,其中S603为算法处理的处理模块,即有对图像数据做具体的算法处理,例如缩放,格式转换,去隔行等,具体此处不做限定,其它模块为非算法处理的处理模块,例如拆包,组包,帧缓存,时钟域转换,DMA等操作模块,具体此处不做限定,S623,S610,S611,S612,S614,S615…S61n为用于检测经过处理模块进行处理的像素值的模块,S620为CPU芯片,作为控制中心,S621为SPI总线,负责CPU与FPGA之间的通信,使CPU可以对FPGA中对应模块的寄存器进行读写与配置,FPGA第一个处理模块S600是使用算法算法处理,此时,从信号源出来的测试图信号源是输出像素值从1开始逐个递增的测试图像,如果S610test0检测一个高电平信号,则表示解码芯片配置错误,然后在FPGA的S600后面再增加一个测试图产生模块S626,同样用于循环输出像素值逐个递增的测试图,S601模块为2选1选通模块,当CPU往S601中配置0时,选择输出S600过来的信号,当CPU往S601中配置1时,选择输出S626过来的测试图信号,即当S626配置为1时,此时,使用用图5所示的实例中的A方法对后续模块进行检测处理。
本实施例中,通过使用隔离方式检测方法对测试图像数据的像素值进行跟踪检测,确定出错的处理模块,便能够在像素出错的情况下,快速定位在FPGA中出错的处理模块,便解决了检测的时候无法具体明确,没有针对性,检测效率缓慢的技术问题,通过使用逻辑分析工具,便能够进一步确定导致处理模块处理出错的像素在测试图像中的位置,实现了更加精准的检测方法。
请参阅图7,本发明实施例中提供的一种基于FPGA图像数据检测装置的一个实施例包括:
接收模块701,用于接收测试图像数据,测试图像数据包含有n个像素;
处理模块702,用于处理测试图像数据;
检测模块703,用于对通过处理模块处理后的测试图像数据进行跟踪检测;
若检测到测试图像数据的像素值与预置像素不一致时,则输出高电平信号;
确定模块704,用于通过读取寄存器的位置信息确定输出高电平信号的处理模块。
本实施例中,通过检测模块对处理模块处理后的测试图像数据的像素值进行跟踪检测,若检测到像素值不一致时,输出高电平信号,通过确定模块读取寄存器的位置信息确定输出高电平信号的处理模块,便能够在像素出错的情况下,快速定位在FPGA中出错的处理模块,便解决了检测的时候无法具体明确,没有针对性,检测效率缓慢的技术问题。
上面是对本实施例中一种基于FPGA图像数据检测装置的各模块具体功能进行详细的描述,下面将对其他附加模块的具体功能进行详细的描述,请参阅图8,本发明实施例中提供的一种基于FPGA图像数据检测装置的另一个实施例包括:
接收模块801,用于接收测试图像数据,测试图像数据包含有n个像素;
寄存模块802,用于将处理模块信息存储在寄存器中。
处理模块803,用于处理测试图像数据;
检测模块804,用于对通过处理模块处理后的测试图像数据进行跟踪检测;
若检测到测试图像数据的像素值与预置像素不一致时,则输出高电平信号;
确定模块805,用于通过读取寄存器的位置信息确定输出高电平信号的处理模块。
分析模块806,用于通过逻辑分析工具对输出高电平信号的处理模块进行分析,确定像素值位置。
本实施例中,通过检测模块对处理模块处理后的测试图像数据的像素值进行跟踪检测,若检测到像素值不一致时,输出高电平信号,通过确定模块读取寄存器的位置信息确定输出高电平信号的处理模块,便能够在像素出错的情况下,快速定位在FPGA中出错的处理模块,便解决了检测的时候无法具体明确,没有针对性,检测效率缓慢的技术问题,通过分析模块使用逻辑分析工具,便能够进一步确定导致处理模块处理出错的像素在测试图像中的位置,实现了更加精准的检测方法。
上面是对本实施例中一种基于FPGA图像数据检测装置的附加模块具体功能进行详细的描述,下面将对各模块中的具体子模块的功能进行详细的描述,请参阅图9,本发明实施例中提供的一种基于FPGA图像数据检测装置的另一个实施例包括:
接收模块901,用于接收测试图像数据,测试图像数据包含有n个像素;
寄存模块902,用于将处理模块信息存储在寄存器中。
处理模块903,用于处理测试图像数据;
其中,处理模块903可以进一步包括:
第一处理子模块9031,对通过处理模块非算法处理后的测试图像数据进行跟踪检测;
或
第二处理子模块9032,用于对测试图像数据进行算法处理后对测试图像数据进行跟踪检测获取第一像素值;
第三处理子模块9033,用于对通过处理模块非算法处理后的测试图像数据进行跟踪检测获取第二像素值。
检测模块904,用于对通过处理模块处理后的测试图像数据进行跟踪检测;
其中,检测模块904可以进一步包括:
第一检测子模块9041,用于若检测到像素值与预置的像素个数不相等时,输出高电平;
或
第二检测子模块9042,用于若检测到经过预置时间延迟的第一像素值与第二像素值不一致时,则输出高电平信号。
确定模块905,用于通过读取寄存器的位置信息确定输出高电平信号的处理模块。
分析模块906,用于通过逻辑分析工具对输出高电平信号的处理模块进行分析,确定像素值位置。
本实施例中,通过确定模块中的各个子模块对处理模块的各个子模块的算法处理后的测试图像数据的像素值进行跟踪检测获取像素值,对再经过处理模块的非算法处理后的测试图像数据的像素值进行跟踪检测获取第二像素值,若检测到第一像素值与第二像素值不一致时,输出高电平信号,通过读取寄存器的位置信息确定输出高电平信号的处理模块,便能够在像素出错的情况下,快速定位在FPGA中出错的处理模块,便解决了检测的时候无法具体明确,没有针对性,检测效率缓慢的技术问题,通过使用逻辑分析工具,便能够进一步确定导致处理模块处理出错的像素在测试图像中的位置,实现了更加精准的检测方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (4)
1.一种基于FPGA图像数据检测方法,其特征在于,包括:
接收测试图像数据,所述测试图像数据包含有n个像素;
对通过处理模块处理后的所述测试图像数据进行跟踪检测;
若检测到所述测试图像数据的像素值与预置像素信息不一致时,则输出高电平信号;
通过读取寄存器的位置信息确定输出所述高电平信号的所述处理模块;
其中,处理模块处理后的所述测试图像数据进行跟踪检测,若检测到所述测试图像数据的像素值与预置像素信息不一致时,则输出高电平信号包括以下子步骤:
对通过所述处理模块非算法处理后的所述测试图像数据进行跟踪检测;
若检测到所述像素值与预置的所述像素个数不相等时,输出所述高电平信号;
或
对所述测试图像数据进行算法处理后对所述测试图像数据进行跟踪检测获取第一像素值;
对通过处理模块非算法处理后的所述测试图像数据进行跟踪检测获取第二像素值;
若检测到经过预置时间延迟的所述第一像素值与所述第二像素值不一致时,则输出所述高电平信号;
通过逻辑分析工具对输出高电平信号的所述处理模块进行分析,确定所述像素值位置。
2.根据权利要求1所述的方法,其特征在于,对通过处理模块处理后的所述测试图像数据进行跟踪检测之前还包括:
将所述处理模块的所述位置信息存储在寄存器中。
3.一种基于FPGA图像数据检测装置,其特征在于,包括:
接收模块,用于接收测试图像数据,所述测试图像数据包含有n个像素;
处理模块,用于处理所述测试图像数据;
检测模块,用于对通过处理模块处理后的所述测试图像数据进行跟踪检测;
其中,处理模块和检测模块分别包括:
第一处理子模块,对通过处理模块非算法处理后的测试图像数据进行跟踪检测;
第一检测子模块,用于若检测到像素值与预置的像素个数不相等时,输出高电平;或
处理模块和检测模块分别包括:
第二处理子模块,用于对测试图像数据进行算法处理后对测试图像数据进行跟踪检测获取第一像素值;
第三处理子模块,用于对通过处理模块非算法处理后的测试图像数据进行跟踪检测获取第二像素值;
第二检测子模块,用于若检测到经过预置时间延迟的第一像素值与第二像素值不一致时,则输出高电平信号;
确定模块,用于通过读取寄存器的位置信息确定输出所述高电平信号的所述处理模块;
分析模块,用于通过逻辑分析工具对输出高电平信号的所述处理模块进行分析,确定所述像素值位置。
4.根据权利要求3所述的一种基于FPGA图像数据检测装置,其特征在于,处理模块之前还包括:
寄存模块,用于将所述处理模块信息存储在寄存器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310712170.8A CN103647966B (zh) | 2013-12-20 | 2013-12-20 | 一种基于fpga图像数据检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310712170.8A CN103647966B (zh) | 2013-12-20 | 2013-12-20 | 一种基于fpga图像数据检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103647966A CN103647966A (zh) | 2014-03-19 |
CN103647966B true CN103647966B (zh) | 2016-03-30 |
Family
ID=50253110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310712170.8A Expired - Fee Related CN103647966B (zh) | 2013-12-20 | 2013-12-20 | 一种基于fpga图像数据检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103647966B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104469349B (zh) * | 2014-12-11 | 2016-09-07 | 武汉精测电子技术股份有限公司 | 一种检测视频源产生的mipi视频信号的方法 |
CN108369795B (zh) * | 2015-12-15 | 2021-03-30 | 精工爱普生株式会社 | 电路装置、电光装置、电子设备、移动体及错误检测方法 |
CN114564356A (zh) * | 2022-02-25 | 2022-05-31 | 地平线(上海)人工智能技术有限公司 | 图像数据处理模块的保护装置和方法、电子设备和介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1700662A (zh) * | 2004-05-21 | 2005-11-23 | 华为技术有限公司 | 数字通信信号处理单板的测试系统及其方法 |
CN101135990A (zh) * | 2007-06-19 | 2008-03-05 | 中兴通讯股份有限公司 | 系统故障定位方法 |
CN101276298A (zh) * | 2008-04-01 | 2008-10-01 | 中国科学院计算技术研究所 | 一种fpga电路故障检测装置 |
CN101706747A (zh) * | 2009-11-13 | 2010-05-12 | 上海华为技术有限公司 | 一种可编程逻辑的信息处理方法、装置和系统 |
CN102288903A (zh) * | 2011-07-26 | 2011-12-21 | 北京航空航天大学 | 一种fpga内连线资源的测试结构及方法 |
CN102879732A (zh) * | 2012-09-14 | 2013-01-16 | 记忆科技(深圳)有限公司 | 板卡的测试方法及其系统 |
CN103294837A (zh) * | 2012-02-23 | 2013-09-11 | 安凯(广州)微电子技术有限公司 | 一种集成电路的验证调试方法及系统 |
-
2013
- 2013-12-20 CN CN201310712170.8A patent/CN103647966B/zh not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1700662A (zh) * | 2004-05-21 | 2005-11-23 | 华为技术有限公司 | 数字通信信号处理单板的测试系统及其方法 |
CN101135990A (zh) * | 2007-06-19 | 2008-03-05 | 中兴通讯股份有限公司 | 系统故障定位方法 |
CN101276298A (zh) * | 2008-04-01 | 2008-10-01 | 中国科学院计算技术研究所 | 一种fpga电路故障检测装置 |
CN101706747A (zh) * | 2009-11-13 | 2010-05-12 | 上海华为技术有限公司 | 一种可编程逻辑的信息处理方法、装置和系统 |
CN102288903A (zh) * | 2011-07-26 | 2011-12-21 | 北京航空航天大学 | 一种fpga内连线资源的测试结构及方法 |
CN103294837A (zh) * | 2012-02-23 | 2013-09-11 | 安凯(广州)微电子技术有限公司 | 一种集成电路的验证调试方法及系统 |
CN102879732A (zh) * | 2012-09-14 | 2013-01-16 | 记忆科技(深圳)有限公司 | 板卡的测试方法及其系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103647966A (zh) | 2014-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110412374B (zh) | 一种基于多传感器的adas hil测试系统 | |
CN103647966B (zh) | 一种基于fpga图像数据检测方法及装置 | |
CN108475227A (zh) | 测试功能组件及数据调试方法 | |
CN106851183B (zh) | 基于fpga的多路视频处理系统及其方法 | |
CN110175145B (zh) | Mdio接口通信方法和电路 | |
CN112966335B (zh) | 接口仿真装置和自动驾驶仿真测试平台 | |
CN104281258A (zh) | 使用图像捕获设备调整透明显示器 | |
CN116340073B (zh) | 测试方法、装置及系统 | |
CN113326670A (zh) | 原型验证系统、方法、处理单元、及设备 | |
KR102002888B1 (ko) | 전자 장치 및 전자 장치의 신호선 연결 상태 확인 방법 | |
US9898254B2 (en) | Data extraction method and apparatus | |
JP2017092757A (ja) | 画像処理装置、及び画像処理方法 | |
CN112380079A (zh) | 一种基于sdi的注入式图像算法测试系统及方法 | |
CN103811022B (zh) | 一种解析波形的方法和装置 | |
US8942300B1 (en) | Integrated digitizer system with streaming interface | |
CN104581147B (zh) | 一种hdmi和mipi功能互测的方法与装置 | |
CN116682361A (zh) | 一种基于led显示的通信系统、方法、装置、设备及介质 | |
TWI507698B (zh) | 半導體元件測試裝置及其測試方法 | |
CN103957381A (zh) | 一种数据传输装置、方法及系统 | |
US10402286B2 (en) | Input/output system, input device, and control method of input/output system | |
US7756655B2 (en) | Observation apparatus, observation method and program | |
CN117156073B (zh) | 视频数据传输装置及系统 | |
CN104038758A (zh) | 一种hdmi接口检测装置及方法 | |
CN113282286B (zh) | 一种算法开发方法及装置 | |
CN115190262B (zh) | 一种电子设备、视频流处理方法、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: Kezhu road high tech Industrial Development Zone, Guangzhou city of Guangdong Province, No. 233 510670 Patentee after: VTRON GROUP Co.,Ltd. Address before: 510663 No. 6, color road, hi tech Industrial Development Zone, Guangdong, Guangzhou, China Patentee before: VTRON TECHNOLOGIES Ltd. |
|
CP03 | Change of name, title or address | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160330 Termination date: 20211220 |
|
CF01 | Termination of patent right due to non-payment of annual fee |