一种基于静态RAM的频响补偿数据实时生成方法
技术领域
本发明涉及测试技术领域,特别涉及一种基于静态RAM的频响补偿数据实时生成方法。
背景技术
宽带信号发生器中,为取得较高的功率平坦度、基带带内频响和IQ调制准确度等指标,通常都需要进行宽频段的频响补偿。在传统的基于锁相合成体制的信号发生器中,频响补偿一般由整机控制软件根据频响补偿的校准数据、当前的载波频率、当前的载波功率等参数,计算出当前状态对应的频响补偿数据。对于要求切换速度较快的新型信号发生器而言,由于整机状态切换时间在毫秒级以下,甚至达到微秒或百纳秒量级,上述方法在这么短的时间内无法完成。
在测试技术领域,由于电路元器件的非线性、微波部件的宽带频率响应特性以及温漂等原因,宽带信号发生器在工作频段内通常会存在频响不一致的现象。随着工作频率跨度、功率范围等的不同,其频响通常存在几个dB的起伏,极端情况下,可能达到10dB以上。对于高精度的宽带信号发生器来说,其频响指标越高越好,理想的频响数据为零。但由于电路的稳定性、可重复性以及整机功能实现的经济性等因素,实际测试仪器的频响数据不可能做到无限小。根据整机工作频段不同,其频响指标经校准后,能够达到±0.3dB~±2dB以内,便可以满足大多数测试应用的需求。
从经济性和实现的方便性上考虑,现有的频响补偿一般采用存储数据+软件生成的方式来产生当前状态对应的频响补偿数据。然后,再通过整机控制软件将该补偿数据送到补偿DAC中,在整机同步控制时序的控制下,完成当前状态的频响补偿。这种方案的总体原理框图如图1所示,频响补偿数据文件中存储的是校准过程中生成的与整机频率、功率相关的整机频响补偿数据;整机状态数据为当前整机输出信号频率和功率等的表征当前整机状态的数据集合;频响补偿控制软件为工作在宽带信号发生器主控制器上的应用程序,当宽带信号发生器整机状态发生变化时,该控制软件首先取出当前整机状态中的频率、功率等状态数据,根据该状态数据,计算出当前状态对应的补偿数据,然后将该数据通过IO通道设置到频响补偿DAC中;在整机控制时序的控制下,频响补偿DAC将当前补偿数据转换为补偿驱动电压控制信号;该控制信号驱动频响补偿电路,从而实现对当前状态频响误差的补偿和修正。
现有的基于控制软件计算补偿数据的方法因为需要软件查找数据、软件计算数据、软件传输数据及数据补偿延迟等过程,导致整个过程速度比较慢,不适用对切换速度较快的新型信号发生器。
发明内容
为了解决现有的基于控制软件计算补偿数据的方法速度慢的问题,本发明提出了一种基于静态RAM的频响补偿数据实时生成方法,通过使用该方法,不需要控制软件参与,直接通过对RAM数据的查找和插值计算出频响补偿数据,大幅提高仪器切换速度。
本发明的技术方案是这样实现的:
一种基于静态RAM的频响补偿数据实时生成方法,基于存放频响补偿数据的静态RAM、用于实时查找频响补偿数据的FPGA及辅助电路,包括以下步骤:
仪器上电启动后,将全频段、全功率范围内的频响补偿数据下载到静态RAM中;
当整机状态发生变化时,通过FPGA内部的比较程序,根据当前任意序列状态所对应的频率和预置功率,实时得出所对应的频响补偿数据的索引地址,并启动读取时序,将该地址对应的补偿数据送到相应的DAC接口电路中。
可选地,所述FPGA接收仪器的频率控制字和功率控制字,根据补偿存储数据中的频率分辨率和功率分辨率,对接收到的频率控制字和功率控制字进行向下截断;
将截断后的频率控制字作为高位地址,截断后的功率控制字作为低位地址,然后再将该高位地址和地位地址进行组合,作为RAM的读取地址,从RAM中读取补偿数据记为C1;对地址加1,从RAM中读取补偿数据为C2;
再将截断后频率控制字加1和功率控制字组合作为RAM读取地址,从RAM中读取数据记为C3;再对地址加1,从RAM中读取数据记为C4;
再通过数据拟合过程生成对应频率和功率的补偿数据。
可选地,所述数据拟合过程为:
C12为截断后频率与功率控制的补偿数据,计算公式如下:
C34为截取频率加1与功率控制的补偿数据,计算公式如下:
C为对应频率控制字及功率控制字的补偿数据,计算公式如下:
由于F1=F0+1,P1=P0+1,所以上式可以简化为:
C=C1+(C2-C1)*(P-Po)+(C3-C1)*(F-F0)+
((C4+C1)-(C2+C3))*(F-F0)*(P-P0) (4)
P0为P截断后的数据,F0为F截断后的数据,P-P0为P截断后舍去的部分,F-F0为F截断后舍弃的数据。
本发明的有益效果是:
(1)频响补偿数据可实时产生,能够满足宽带信号发生器快速状态切换、尤其是百纳秒量级的连续状态切换时对频响补偿控制的需求;
(2)应用到宽带信号发生器中,可大幅提高仪器状态高速切换时的频响指标,从而提高连续多状态测试时的测试速度和测试质量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有的基于数据文件+控制软件方式频响补偿方法的原理框图;
图2为本发明的基于静态RAM的频响补偿数据实时生成方法的原理框图;
图3为本发明的基于静态RAM的频响补偿数据实时生成方法的数据拟合图;
图4为本发明的基于静态RAM的频响补偿数据实时生成方法的FPGA内部控制框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提出了一种基于静态RAM的高速变频信号频响补偿数据实时生成方法,该方法基于存放频响补偿数据的静态RAM、用于实时查找频响补偿数据的FPGA及相关辅助电路。
本发明的频响补偿数据实时生成方法的基本原理是:
仪器上电启动后,将全频段、全功率范围内的频响补偿数据下载到静态RAM中;当整机状态发生变化时,通过FPGA内部的比较程序,根据当前任意序列状态所对应的频率和预置功率,实时得出所对应的频响补偿数据的索引地址,并启动读取时序,将该地址对应的补偿数据送到相应的DAC接口电路中,从而实现整机全频段、全功率预置范围内任意序列跳转情况下的频响补偿数据实时生成。
下面结合附图对本发明的频响补偿数据实时生成方法进行详细说明。
如图2所示,FPGA接收仪器的频率控制字和功率控制字,根据补偿存储数据中的频率分辨率和功率分辨率,对接收到的频率控制字和功率控制字进行向下截断,然后将截断后的频率控制字和功率控制字进行组合,其中截断后的频率控制字作为高位地址,截断后的功率控制字作为低位地址,作为RAM的读取地址,从RAM中读取补偿数据记为C1,对地址加1,从RAM中读取补偿数据为C2;再将截断后频率控制字加1和功率控制字组合作为RAM读取地址,从RAM中读取数据记为C3,再对地址加1,从RAM中读取数据记为C4。再通过数据拟合过程生成对应频率和功率的补偿数据。
如图3所示,数据拟合过程如下:
横轴为频率,单位为补偿数据中的频率分辨率,竖轴为功率,单位为补偿数据的功率分辨率。C1为对频率控制字和功率控制字截断后的从RAM中读取的补偿数据,C2为对截断频率与截断后功率加1的RAM中的数据,C3为对截断频率加1与截断功率的RAM中的数据,C4为对截断频率加1与截断功率加1的RAM中的数据。C12为截断后频率与功率控制的补偿数据,计算公式如下:
C34为截取频率加1与功率控制的补偿数据,计算公式如下:
C为对应频率控制字及功率控制字的补偿数据,计算公式如下:
因为F1=F0+1,P1=P0+1,所以上式可以简化为:
C=C1+(C2-C1)*(P-Po)+(C3-C1)*(F-F0)+
((C4+C1)-(C2+C3))*(F-F0)*(P-P0) (4)
式(4)在FPGA内部的实现原理如图4所示,因为P0为P截断后的数据,F0为F截断后的数据,所以P-P0为P截断后舍去的部分,F-F0为F截断后舍弃的数据。
本发明的方法通过将整机全频段、全功率范围频响补偿数据放入静态RAM,当仪器状态改变时,FPGA控制装置根据当前仪器状态,通过截断、比较及拟合等环节,自动实时生成当前状态对应的频响补偿数据。
现有技术频响补偿数据均为非实时产生,而本发明的频响补偿数据能够实时产生,因此能够满足宽带信号发生器快速状态切换、尤其是百纳秒量级的连续状态切换时对频响补偿控制的需求。
本发明所提出的基于静态RAM和FPGA的频响补偿数据实时生成方法应用到宽带信号发生器中,可大幅提高仪器状态高速切换时的频响指标,从而提高连续多状态测试时的测试速度和测试质量。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。