一种滤波器的自动化测试方法

文档序号:5931250阅读:163来源:国知局
专利名称:一种滤波器的自动化测试方法
技术领域
本发明涉及电子或通信领域的测试技术,具体指一种滤波器的自动化测试方法。
背景技术
在电子或通信领域,有许多设备或系统都需要应用到滤波器,尤其在无线通讯设备的射频和中频处理部分,数字滤波器被广泛用于实现射频信号到基带信号的转换。根据系统的设计需要、实际实现的技术难度和成本,数字滤波器主要采用ASIC/FPGA芯片(ASICApplication Specific Integrated Circuit专用集成电路FPGAField Programmable Gate Array现场可编程门阵列)来实现,实现滤波器的数字信号处理算法的ASIC/FPGA被称为算法逻辑,其一般具在运算规模大、结构复杂及验证难度大的特点。
所以,如何验证ASIC/FPGA芯片所实现的数字滤波器是否正确,便是保证ASIC/FPGA芯片在通信设备或系统中能否正常而稳定运行的保障,针对这种情况,目前业界常用如下两种仿真测试方法来进行测试。
第一种单音信号激励法,请参考图1,该种方法即首先,对被测的数字滤波器手动施加不同频带(如通带、过渡带和阻带)内的单音信号激励数据;然后,接收被测对象响应的结果数据,并对结果数据进行幅频特性分析;最后,观察各个频段的单音信号的输出是否满足数字滤波器各个频段的幅频特性,从而判断由ASIC/FPGA芯片实现的数字滤波器是否满足设计要求。
但是,所述的第一种方法具有如下缺点由于只使用单音信号激励的方法进行测试,所以这种仿真测试方法只可以部分验证ASIC/FPGA芯片实现的滤波器性能,对ASIC/FPGA是否正确实现滤波器性能的验证不完备,且验证过程自动化程度低,具有繁琐、复杂、验证工作量大的缺点。
第二种高斯白噪信号激励法,请参考图2,这种方法即首先,对数字滤波器手动施加全频带的高斯白噪信号激励数据;然后,接收被测对象的响应结果数据,并对结果数据进行幅频特性分析;最后,观察结果数据幅频特性是否满足被测数字滤波器的幅频特性,从而判断由ASIC/FPGA芯片实现的数字滤波器是否满足设计要求。
但是,所述的第二种方法也具有如下缺点由于只使用高斯白噪信号激励的方法进行测试,所以这种仿真测试方法只可以部分验证ASIC/FPGA芯片实现的滤波器性能,对ASIC/FPGA是否正确实现滤波器性能的验证不完备,且验证过程自动化程度低,具有繁琐、复杂、验证工作量大的缺点。

发明内容
本发明目的在于提供一种滤波器的自动化测试方法,以克服现有技术中存在的测试完备且自动化程度低的缺点。
为解决上述的缺点,本发明提供如下的技术方案一种滤波器的自动化测试方法,所述的方法包括如下步骤第一步开始并输入与滤波器相关的参数及函数;第二步调用并执行冲激信号测试用例;第三步调用并执行高斯白噪信号测试用例;第四步调用并执行极大极小值测试用例;在执行上述的第二、第三及第四步过程中,如果冲激信号测试用例、高斯白噪信号测试用例及极大极小值测试用例三种的任何一个结果分析不正确,将中止整个流程的执行,并给出冲激信号测试用例、高斯白噪信号测试用例及极大极小值测试用例所对应的错误提示。
冲激信号测试用例中冲激响应结果错误用ERR0表示。
高斯白噪信号测试用例中高斯白噪响应结果错误用ERR1表示。
极大极小值测试用例中极大极小值结果错误用ERR2表示。
所述的方法还包括如下步骤对于出现的错误,到指定保存的路径下面查看结果数据并作进一步分析。
所述的第一步具体包括如下步骤开始并通过交互式程序界面输入被测滤波器阶数N;通过交互式程序界面输入被测滤波器系数h(n);输入被测滤波器数据的宽度width;通过交互式程序界面输入冲激信号幅度(A)、位置(P)和总的激励数据个数(L);通过交互式程序界面指定结果数据保存的路径。
所述的第二步具体包括如下步骤调用冲激信号发生函数(A/P/L)得到冲激信号激励数据;发送BFM将冲激信号激励数据发送给被测滤波器;接收BFM接收滤波器的结果输出并保存到指定的路径中;非零判断函数判断滤波器的冲激响应结果中非零值的个数是否等于滤波器阶数N;归一化处理函数对冲激响应结果数据中的非零值进行归一化处理后,比较非零值是否等于滤波器系数,如果等于,则进行第三步;如果不等于,则输出滤波器设计ERR0。
所述的第三步具体包括如下步骤调用高斯白噪信号发生函数;发送BFM将高斯白噪信号送给被测滤波器;接收BFM接收滤波器的输出结果并保存到指定的路径中;FFT变换函数对滤波器的输出结果进行FFT变换并分析其幅频特性图,显示并保存到指定的路径中,如果显示正确则进行第四步;如果显示不正确,则输出滤波器设计ERR1。
所述的第四步具体包括如下步骤
调用极大极小值产生函数;通过发送BFM将极大极小值送给被测滤波器;通过接收BFM接收滤波器的输出结果并保存到指定的路径中;结果比较程序将极大极小值的响应结果与预定值进行比较,以判断是否与设计要求一致,如果比较结果不一致,则输出滤波器设计OK;如果比较结果不一致,则输出滤波器设计ERR2。
所述的第二步的调用冲激信号测试用例、第三步的调用高斯白噪信号测试用例及第四步的调用并执行极大极小值测试用例都是通过TCL脚本完成的。
可见,本发明的滤波器的自动化测试方法具有如下优点1、由于将冲激信号、高斯白噪和极大极小值的测试用例结合在一起对滤波器进行测试,所以相较于现有技术中的测试方法,本发明的测试方法具有测试完备性的优点;2、由于本发明利用TCL脚本将三种测试用例串连起来自动执行并能将执行结果进行处理后,直接给出滤波器的设计是否满足设计的性能要求,所以相较于现有技术中的测试方法而言具有自动化程度高的优点。


图1为现有技术中第一种方法的流程图;图2为现有技术中第二种方法的流程图;图3为本发明的滤波器的自动化测试方法的流程图;图4为由主脚本程序来控制执行的本发明滤波器的自动化测试方法的流程图。
具体实施例方式
针对现有技术中两种方法中存在的对ASIC/FPGA芯片所实现的数字滤波器的验证不完备,且整个验证过程繁琐、复杂并且验证的工作量大的缺点,本发明基于现有技术中的测试方法,提出了一种滤波器的自动化测试方法,以达到提高测试自动化程度进而减少验证工作量的目的,同时全面地对滤波器性能进行验证。
本发明所提供的滤波器的自动化测试方法实质为首先,通过TCL脚本将冲激信号、高斯白噪和极大极小值的测试用例这三个测试用例串连起来自动执行;然后,将执行结果进行处理后,直接给出滤波器的设计是否满足设计的性能要求。
本发明所提供的滤波器的自动化测试方法中的冲激信号、高斯白噪、和极大极小值的测试用例的基本原理如下冲激信号测试用例基本原理为A1、将冲激信号作为激励数据施加给被测的数字滤波器;A2、接收数字滤波器的输出并进行归一化处理,其归一化的冲激响应结果中,非零数据的个数就是数字滤波器的阶数,非零的数据值就是数字滤波器对应的滤波系数;A3、通过结果分析程序分析数字滤波器的阶数和对应的滤波器系数是否正确,满足设计要求。
高斯白噪信号测试用例基本原理为B1、将高斯白噪信号作为激励数据施加给被测的数字滤波器;B2、接收数字滤波器的输出并进行FFT(FFTFast Fourier Transform快速傅立叶变换);B3、计算上述经FFT的结果数据的幅频特性是否满足数字滤波器的幅频特性要求。
极大极小值测试用例,主要用于验证ASIC/FPGA芯片实现的写数字滤波器的饱和运算处理是否正确,其基本原理为C1、构造极大极小值激励数据,所述的极大极小值激励数据中极大激励数据的绝对值都最大,只是极大激励数据的符号位与滤波器的滤波系数符号一致,而极小激励数据的符号位则与滤波器的滤波系数相反。比如滤波器的滤波系数为-1、-2、3、4、5、5、4、3、-2、-1;且假设滤波器的输入数据位数为8位,则极大激励数据为-127、-127、127、127、127、127、127、127、-127、-127;极小激励数据为127、127、-127、-127、-127、-127、-127、-127、127、127;C2、将极大极小激励数据输入到数字滤波器;C3、接收数字滤波器的输出结果,并将结果值与预定的结果值进行比较,从而判断数字滤波器的饱和处理是否正确。
本发明的滤波器的自动化测试方法即是通过TCL脚本将上述三个测试激励数据依次送给被测数字滤波器,并通过脚本调用相应的结果分析程序进行结果分析,最后给出数字滤波器的设计实现是否正确的结论和相应的测试数据。
请参考图3及图4,对本发明的滤波器的自动化测试方法作详细介绍。
第一步开始并输入与滤波器相关的参数及函数。所述的第一步具体包括如下步骤开始并通过交互式程序界面输入滤波器阶数N;通过交互式程序界面输入滤波器系数h(n);输入数据的宽度width;通过交互式程序界面输入冲激信号幅度(A)、位置(P)和总的激励数据个数(L);通过交互式程序界面指定结果数据保存的路径;第二步调用并执行冲激信号测试用例。所述的第二步具体包括如下步骤调用冲激信号发生函数(A/P/L),所述的调用是通过在主脚本中调用冲激信号测试用例子脚本Pluse.tcl来完成的,具体过程为Pluse.tcl脚本中直接执行冲激信号发生函数得到冲激信号激励数据;发送BFM将冲激信号激励数据发送给被测滤波器;接收BFM接收滤波器的结果输出并保存到指定的路径中;非零判断函数判断滤波器的冲激响应结果中非零值的个数是否等于滤波器阶数N;归一化处理函数对冲激响应结果数据中的非零值进行归一化处理后,比较非零值是否等于滤波器系数,如果等于,则进行第三步;如果不等于,则输出滤波器设计ERR0,所述的ERR0表示冲激响应结果错误。
第三步调用并执行高斯白噪信号测试用例。所述的第三步具体包括如下步骤调用高斯白噪信号发生函数,所述的调用是通过主脚本调用高斯白噪信号测试用例子脚本gauss.tcl来完成的,具体过程为gauss.tcl脚本中直接执行高斯白噪信号发生函数;发送BFM将高斯白噪信号送给被测滤波器;接收BFM接收滤波器的输出结果并保存到指定的路径中;FFT变换函数对滤波器的输出结果进行FFT变换并分析其幅频特性图,显示并保存到指定的路径中,如果显示正确则进行第四步;如果显示不正确,则输出滤波器设计ERR1,所述的ERR1表示高斯白噪响应结果错误。
第四步调用并执行极大极小值测试用例。所述的第四步具体包括如下步骤调用极大极小值产生函数,所述的调用是通过主脚本调用极值测试用例子脚本extra.tcl完成的,具体过程为extra.tcl直接执行极值生成函数产生极大较小的激励数据;发送BFM将极大极小值送给被测滤波器;接收BFM接收滤波器的输出结果并保存到指定的路径中;结果比较程序将极大极小值的响应结果与预定值进行比较,以判断是否与设计要求一致,如果比较结果不一致,则输出滤波器设计OK;如果比较结果不一致,则输出滤波器设计ERR2,所述的ERR2表示极大极小值结果错误。
在执行上述方法的过程中,如果三种激励信号的任何一个结果分析不正确,将中止整个程序的执行,并给出错误提示,其中ERR0代表冲激响应结果错误,ERR1代表高斯白噪响应结果错误,ERR2表示极大极小值结果错误。这样可以节省无谓的滤波器仿真时间,而对于出现的错误,由于指定了保存的路径,所以可以到指定的路径下面查看结果数据并进一步分析。
可见,本发明的滤波器的自动化测试方法具有如下优点1、由于将冲激信号、高斯白噪和极大极小值的测试用例结合在一起对滤波器进行测试,所以相较于现有技术中的测试方法,本发明的测试方法具有测试完备性的优点;2、由于本发明利用TCL脚本将三种测试用例串连起来自动执行并能将执行结果进行处理后,直接给出滤波器的设计是否满足设计的性能要求,所以相较于现有技术中的测试方法而言具有自动化程度高的优点。
权利要求
1.一种滤波器的自动化测试方法,其特征在于,所述的方法包括如下步骤第一步开始并输入与滤波器相关的参数及函数;第二步调用并执行冲激信号测试用例;第三步调用并执行高斯白噪信号测试用例;第四步调用并执行极大极小值测试用例;在执行上述的第二、第三及第四步过程中,如果冲激信号测试用例、高斯白噪信号测试用例及极大极小值测试用例三种的任何一个结果分析不正确,将中止整个流程的执行,并给出冲激信号测试用例、高斯白噪信号测试用例及极大极小值测试用例所对应的错误提示。
2.如权利要求1所述的方法,其特征在于,冲激信号测试用例中冲激响应结果错误用ERR0表示。
3.如权利要求1所述的方法,其特征在于,高斯白噪信号测试用例中高斯白噪响应结果错误用ERR1表示。
4.如权利要求1所述的方法,其特征在于,极大极小值测试用例中极大极小值结果错误用ERR2表示。
5.如权利要求1至4中任一所述的方法,其特征在于,还包括如下步骤对于出现的错误,到指定保存的路径下面查看结果数据并作进一步分析。
6.如权利要求1所述的方法,其特征在于,所述的第一步具体包括如下步骤开始并通过交互式程序界面输入被测滤波器阶数N;通过交互式程序界面输入被测滤波器系数h(n);输入被测滤波器数据的宽度width;通过交互式程序界面输入冲激信号幅度(A)、位置(P)和总的激励数据个数(L);通过交互式程序界面指定结果数据保存的路径。
7.如权利要求1或2所述的方法,其特征在于,所述的第二步具体包括如下步骤调用冲激信号发生函数(A/P/L)得到冲激信号激励数据;发送BFM将冲激信号激励数据发送给被测滤波器;接收BFM接收滤波器的结果输出并保存到指定的路径中;非零判断函数判断滤波器的冲激响应结果中非零值的个数是否等于滤波器阶数N;归一化处理函数对冲激响应结果数据中的非零值进行归一化处理后,比较非零值是否等于滤波器系数,如果等于,则进行第三步;如果不等于,则输出滤波器设计ERR0。
8.如权利要求1或3所述的方法,其特征在于,所述的第三步具体包括如下步骤调用高斯白噪信号发生函数;发送BFM将高斯白噪信号送给被测滤波器;接收BFM接收滤波器的输出结果并保存到指定的路径中;FFT变换函数对滤波器的输出结果进行FFT变换并分析其幅频特性图,显示并保存到指定的路径中,如果显示正确则进行第四步;如果显示不正确,则输出滤波器设计ERR1。
9.如权利要求1或4所述的方法,其特征在于,所述的第四步具体包括如下步骤调用极大极小值产生函数;通过发送BFM将极大极小值送给被测滤波器;通过接收BFM接收滤波器的输出结果并保存到指定的路径中;结果比较程序将极大极小值的响应结果与预定值进行比较,以判断是否与设计要求一致,如果比较结果不一致,则输出滤波器设计OK;如果比较结果不一致,则输出滤波器设计ERR2。
10.如权利要求1所述的方法,其特征在于,所述的第二步的调用冲激信号测试用例、第三步的调用高斯白噪信号测试用例及第四步的调用并执行极大极小值测试用例都是通过TCL脚本完成的。
全文摘要
本发明提供一种滤波器的自动化测试方法,能克服现有技术中存在的测试不完备且自动化程度低的缺点,所述的方法包括如下步骤第一步开始并输入与滤波器相关的参数及函数;第二步调用并执行冲激信号测试用例;第三步调用并执行高斯白噪信号测试用例;第四步调用并执行极大极小值测试用例,在执行上述的第二、第三及第四步过程中,如果冲激信号测试用例、高斯白噪信号测试用例及极大极小值测试用例三种的任何一个结果分析不正确,将中止整个流程的执行,并给出冲激信号测试用例、高斯白噪信号测试用例及极大极小值测试用例所对应的错误提示。
文档编号G01R31/28GK1657964SQ20041000566
公开日2005年8月24日 申请日期2004年2月21日 优先权日2004年2月21日
发明者叶芬, 张凯峰, 徐争 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1