本技术涉及数据采集领域,具体而言,涉及一种数据采集系统的性能测试方法及装置。
背景技术:
1、数据采集系统在采集板卡(简称板卡)进行长时间采集流盘时,会在板卡内存中存储几十上百gbytes甚至tbytes的数据量。为了确保数据从板卡ddr经过pcie、以太网、usb等通信模块和接口到电脑内存间传输的正确性和连续性,常常需要对数据进行校验,检测数据传输过程是否存在异常点并定位异常点位置,以便于判断采集系统传输过程中是否出现采集错误或丢失的情况。常规的异常点检测方法有小波变换、统计分布、聚类分析等。但是对于实时性要求很高的采集系统来说,至少要求校验的速度达到1gb/s,数据校验算法复杂度过高,会导致校验速度不容易达到1gb/s以上的速率要求。而且,一般对于高速率大数据量的数据的校验只是截取传输数据的一段连续时间片段,比如开头、中间、结尾或者固定的特征位置,进行分析,并非对于数据本身进行长时间的完整性和正确性校验并给出数据采集系统是否可靠的结论。
技术实现思路
1、有鉴于此,本技术的目的在于提供一种数据采集系统的性能测试方法及装置,能够对于数据采集系统中传输的数据本身进行长时间的完整性和正确性校验,并基于校验结果确定数据采集系统在长时间、海量数据的传输过程中是否可靠的性能测试结果。
2、本技术实施例提供的一种数据采集系统的性能测试方法,应用于数据采集系统,所述数据采集系统包括:采集板卡、上位机、输入设备;所述采集板卡包括adc模块、fpga模块、第一ddr模块;所述上位机包括cpu模块、第二ddr模块、存储模块;所述输入设备和上位机相连接;所述性能测试方法包括:
3、所述采集板卡的adc模块采集模拟前端输入的正弦波信号,输出数字化的离散正弦波数据,所述离散正弦波数据通过fpga模块、第一ddr模块、cpu模块、第二ddr模块传输至存储模块;
4、所述fpga模块生成累加数据,所述累加数据通过第一ddr模块、cpu模块、第二ddr模块传输至存储模块;
5、基于所述离散正弦波数据和配置好的第一数据验证规则,判断所述第二ddr模块和所述存储模块接收的离散正弦波数据是否连续,确定第一校验结果;其中,所述第一校验结果表征从模拟前端至第二ddr模块和存储模块的传输过程是否异常;
6、基于所述累加数据和配置好的第一数据验证规则,判断所述第二ddr模块和所述存储模块接收的累加数据是否连续,确定第二校验结果;其中,所述第二校验结果表征从fpga模块至第二ddr模块和存储模块的传输过程是否异常;
7、基于所述第一校验结果和第二校验结果,确定所述数据采集系统的性能测试结果;
8、当性能测试结果为异常时,基于所述第一校验结果和第二校验结果定位所述数据采集系统的异常点。
9、在一些实施例中,所述的数据采集系统的性能测试方法中,基于所述第一校验结果和第二校验结果,确定所述数据采集系统的性能测试结果,包括:
10、当所述第一校验结果和第二校验结果均正常时,确定所述数据采集系统的性能测试结果为正常;
11、当所述第一校验结果或第二校验结果异常时,确定所述数据采集系统的性能测试结果为异常。
12、在一些实施例中,所述的数据采集系统的性能测试方法中,基于所述第一校验结果和第二校验结果定位所述数据采集系统的异常点,包括:
13、当基于所述第二校验结果确定数据从fpga模块传输至第二ddr模块的传输过程异常时,确定异常点位于fpga模块到第二ddr模块之间;
14、当基于所述第二校验结果确定数据从fpga模块传输至第二ddr模块的传输过程正常,从fpga模块传输至存储模块的传输过程异常时,确定异常点位于第二ddr模块到存储模块之间;
15、当第二校验结果正常,第一校验结果异常时,确定异常点位于模拟前端和fpga模块之间。
16、在一些实施例中,所述的数据采集系统的性能测试方法还包括:
17、先通过所述fpga模块生成累加数据,以确定第二校验结果;
18、当第二校验结果正常时,再通过所述采集板卡的adc模块采集模拟前端输入的正弦波信号,输出数字化的离散正弦波数据,以确定第一校验结果。
19、在一些实施例中,所述的数据采集系统的性能测试方法中,所述采集板卡的adc模块采集模拟前端输入的正弦波信号,输出数字化的离散正弦波数据,所述离散正弦波数据通过fpga模块、第一ddr模块、cpu模块、第二ddr模块传输至存储模块,包括:
20、所述采集板卡的adc模块采集模拟前端输入的正弦波信号,输出数字化的离散正弦波数据至fpga模块,fpga模块接收所述离散正弦波数据并存入fpga模块挂载的第一ddr模块中;
21、上位机的cpu模块读取fpga挂载的第一ddr模块中的离散正弦波数据,同时将所述离散正弦波数据缓存到cpu模块挂载的第二ddr模块;
22、所述上位机的第二ddr模块和所述存储模块交互,将所述离散正弦波数据存入存储模块。
23、在一些实施例中,所述的数据采集系统的性能测试方法中,所述fpga模块生成累加数据,所述累加数据通过第一ddr模块、cpu模块、第二ddr模块传输至存储模块,包括:
24、所述fpga模块将离散的数字信号数据替换成具有累加规律的累加数据,将累加数据存入fpga模块挂载的第一ddr模块;
25、上位机的cpu模块读取fpga挂载的第一ddr模块中的累加数据,同时将所述累加数据缓存到cpu模块挂载的第二ddr模块;
26、所述上位机的第二ddr模块和所述存储模块交互,将所述累加数据存入存储模块。
27、在一些实施例中,所述的数据采集系统的性能测试方法中,基于所述离散正弦波数据和配置好的第一数据验证规则,判断所述第二ddr模块和所述存储模块接收的离散正弦波数据是否连续,包括:
28、基于采集板卡的属性,配置板卡采样率和信号频率;
29、基于所述板卡采样率和信号频率,确定采集板卡的adc模块输出的离散正弦波数据中相邻数据差值对应的校验阈值;
30、当所述离散正弦波数据中相邻数据差值的绝对值不超过所述校验阈值,确定所述相邻数据连续。
31、在一些实施例中,所述的数据采集系统的性能测试方法中,基于所述板卡采样率和信号频率,确定采集板卡的adc模块输出的离散正弦波数据中相邻数据差值对应的校验阈值,包括:
32、基于所述板卡采样率和信号频率,计算所述离散正弦波数据每个周期的点数n;
33、确定一个完整的正弦波周期内离散正弦波数据的信号幅度的最大值和最小值;
34、基于离散为n个点的正弦波中距离最远的两个相邻点之间的距离、离散正弦波数据的信号幅度的最大值和最小值、参考容差,计算校验阈值。
35、在一些实施例中,所述的数据采集系统的性能测试方法中,基于所述累加数据和配置好的第二数据验证规则,判断所述第二ddr模块和所述存储模块接收的累加数据是否连续,包括:
36、基于所述fpga生成的累加数据的位宽,配置所述第一数据验证规则中的数据位宽;
37、针对8bit或16bit位宽的累加数据,将累加数据处理为对应的整数,判断所述累加数据中相邻数据对应的整数的差值是否为1,确定所述相邻数据是否连续;
38、针对32bit和64bit的累加数据,基于预设相邻数据对比规则,对比相邻数据的字节数组,确定相邻数据是否连续;其中,所述预设相邻数据对比规则,是基于32bit或64bit且相差为1的数据对应的字节数组的特征确定的。
39、在一些实施例中,还提供一种数据采集系统的性能测试装置,应用于数据采集系统,所述数据采集系统包括:采集板卡、上位机、输入设备;所述采集板卡包括adc模块、fpga模块、第一ddr模块;所述上位机包括cpu模块、第二ddr模块、存储模块;所述输入设备和上位机相连接;所述性能测试装置包括:
40、采集模块,用于使所述采集板卡的adc模块采集模拟前端输入的正弦波信号,输出数字化的离散正弦波数据,所述离散正弦波数据通过fpga模块、第一ddr模块、cpu模块、第二ddr模块传输至存储模块;
41、生成模块,用于使所述fpga模块生成累加数据,所述累加数据通过第一ddr模块、cpu模块、第二ddr模块传输至存储模块;
42、第一判断模块,用于当符合预设测试条件时,基于所述离散正弦波数据和配置好的第一数据验证规则,判断所述第二ddr模块和所述存储模块接收的离散正弦波数据是否连续,确定第一校验结果;其中,所述第一校验结果表征从模拟前端至第二ddr模块和存储模块的传输过程是否异常;
43、第二判断模块,用于基于所述累加数据和配置好的第一数据验证规则,判断所述第二ddr模块和所述存储模块接收的累加数据是否连续,确定第二校验结果;其中,所述第二校验结果表征从fpga模块至第二ddr模块和存储模块的传输过程是否异常;
44、确定模块,基于所述第一校验结果和第二校验结果,确定所述数据采集系统的性能测试结果;
45、定位模块,用于当性能测试结果为异常时,基于所述第一校验结果和第二校验结果定位所述数据采集系统的异常点。
46、基于此,本技术实施例中,提供一种数据采集系统的性能测试方法及装置,所述性能测试方法采集板卡的adc模块采集模拟前端输入的正弦波信号,输出数字化的离散正弦波数据并传输至存储模块;所述fpga模块生成累加数据并传输至存储模块;校验离散正弦波数据是否连续,确定从模拟前端至第二ddr模块和存储模块的传输过程是否异常;校验累加数据是否连续,确定从fpga模块至第二ddr模块和存储模块的传输过程是否异常,从而确定所述数据采集系统的性能测试结果并定位异常点;在测试过程中,首先对海量累加数据和离散正弦波数据本身的完整性和连续性进行校验,从而通过校验结果确定所述数据采集系统在采集和传输海量数据时的稳定性;其次,使用简单的算法校验累加数信号和正弦波信号,这两种信号的波形数据规律简单,大大降低了校验算法的复杂度,同时fpga非常容易处理累加数据和正弦波数据,方便系统采集和校验同时进行;最后两种数据分别可以校验出不同的通信数据传输过程的连续性和完整性,累加数据校验的是从fpga模块传出的数据经过pcie、以太网、usb等通信模块和接口到上位机流程的数据传输的连续性和完整性,正弦波信号数据校验的是从板卡模拟前端采集的数据传输到上位机流程的数据传输的连续性和完整性,从而对数据采集系统进行全面校验和异常定位,需要说明的是,使用者根据不同的数据采集系统具体应用的测试场景,以及该测试场景中需要关注不同类型的信号,灵活选择所述需要关注的信号进行采集校验,从而更具针对性的测试不同测试场景的数据采集系统的性能。
1.一种数据采集系统的性能测试方法,其特征在于,应用于数据采集系统,所述数据采集系统包括:采集板卡、上位机、输入设备;所述采集板卡包括adc模块、fpga模块、第一ddr模块;所述上位机包括cpu模块、第二ddr模块、存储模块;所述输入设备和上位机相连接;所述性能测试方法包括:
2.根据权利要求1所述的数据采集系统的性能测试方法,其特征在于,基于所述第一校验结果和第二校验结果,确定所述数据采集系统的性能测试结果,包括:
3.根据权利要求1或2所述的数据采集系统的性能测试方法,其特征在于,基于所述第一校验结果和第二校验结果定位所述数据采集系统的异常点,包括:
4.根据权利要求3所述的数据采集系统的性能测试方法,其特征在于,所述性能测试方法还包括:
5.根据权利要求1所述的数据采集系统的性能测试方法,其特征在于,所述采集板卡的adc模块采集模拟前端输入的正弦波信号,输出数字化的离散正弦波数据,所述离散正弦波数据通过fpga模块、第一ddr模块、cpu模块、第二ddr模块传输至存储模块,包括:
6.根据权利要求1所述的数据采集系统的性能测试方法,其特征在于,所述fpga模块生成累加数据,所述累加数据通过第一ddr模块、cpu模块、第二ddr模块传输至存储模块,包括:
7.根据权利要求1所述的数据采集系统的性能测试方法,其特征在于,基于所述离散正弦波数据和配置好的第一数据验证规则,判断所述第二ddr模块和所述存储模块接收的离散正弦波数据是否连续,包括:
8.根据权利要求7所述的数据采集系统的性能测试方法,其特征在于,基于所述板卡采样率和信号频率,确定采集板卡的adc模块输出的离散正弦波数据中相邻数据差值对应的校验阈值,包括:
9.根据权利要求1所述的数据采集系统的性能测试方法,其特征在于,基于所述累加数据和配置好的第二数据验证规则,判断所述第二ddr模块和所述存储模块接收的累加数据是否连续,包括:
10.一种数据采集系统的性能测试装置,其特征在于,应用于数据采集系统,所述数据采集系统包括:采集板卡、上位机、输入设备;所述采集板卡包括adc模块、fpga模块、第一ddr模块;所述上位机包括cpu模块、第二ddr模块、存储模块;所述输入设备和上位机相连接;所述性能测试装置包括:
