多通道高采样率任意波形发生器的设计
2018-01-18王厚军
杨 兴,王厚军,刘 科
(电子科技大学自动化工程学院 成都 611731)
任意波形发生器(AWG)可以产生频率稳定、分辨力高、频率切换速度快、相位噪声低的信号。其核心是直接数字合成技术(direct digital synthesize,DDS)。
输出信号带宽、通道数以及通道间的定时准确度都是任意波形发生器的重要指标。如何提高这3项指标成为当前研究的重点。
提高采样率是实现高带宽的有效手段,但受到相位累加器和波形查找表工作速度的限制。并行存储技术[1-2]是解决该限制的有效手段,该技术可将相位累加器和波形查找表的工作频率降低为所需采样频率的1/m(m是并行的路数)。
为实现相位精密可控的多通道输出,并联多个波形合成单元,并采用相同采样时钟和触发信号是常用的方法。文献[3-4]分别实现了7通道和24通道的任意波形合成,但没提及如何实现输出信号相位的精密控制。文献[5]提出设置不同的频率控制字可调节各通道的初始相位偏移值。但实际设计中,相位精度还受到采样时钟或触发信号的偏差等诸多因素的影响。
相对于传统结构,为提高输出带宽而采用多路并行存储结构的AWG不仅需要采样时钟来同步波形转换,还需要数据时钟来同步波形数据的产生。由于数据时钟是采样时钟的m分频,在分频过程中会随机出现m种不同的相位关系,导致各通道输出信号间的随机相位差。因此,检测并消除数据时钟间的随机相位差是实现输出信号同步的必要前提。文献[6-7]提出了一种相关算法对分频所得的数据时钟之间的相位差进行鉴相。文献[8]通过吞时钟脉冲的方法使得经采样时钟分频所得的数据时钟之间无相位差。上诉方法对于解决时钟分频出现随机相位的问题具有借鉴意义,但相关算法运算复杂,吞脉冲法由于实际电路中元器件性能的差异、布局布线造成的延时不同等原因,导致同步误差较大。
本文针对相位累加器和波形查找表的工作速度限制,通过4路并行存储技术实现600 MS/s的采样率和240 MHz的输出带宽。建立并分析了DDS的同步模型,提出了多通道AWG的同步方案,最终使通道间的同步精度达到±150 ps。
1 并行存储技术
1.1 并行存储原理
当存储器空间无限大且不考虑DAC位数时,DDS可看作对频率为fo的连续信号s(t)抽样,抽样间隔时间T等于采样周期Ts,即采样频率fs的倒数,如图1所示。
图1 任意波形采样模型
抽样后的样本序列s(n)表示为:
式中,t0表示采样的起始时刻且tn=t0+nT;n为采样序列。
将样本数据s(n)分为M组,记为sd(n,l),l是分组号,l=0,1,2,…,M-1。sd(n,l)可看作起始时刻为tl,采样周期Td=MT时,对信号s(t)抽样的结果。此时,sd(n,l)的采样频率是s(n)采样频率的1/M。
对信号sd(n,l)抽取后可得:
式中,S(ejw)是s(n)的频谱;wd是sd(n,l)的角频率且等于s(n)角频率的M倍,即wd=Mws。
三倍插值前、后的信号如图2所示。为将序列sd(n,l)还原成s(n),在序列sd(n,l)相邻样点间插入M-1个0,同时对第l组序列右移l个样点,得到序列sI(n,l),如图3e~图3g所示,此时M=3,再将序列sI(n,l)叠加得到sI(n),如图3h所示。序列sI(n,l)的抽样频率fI为序列sd(n,l)抽样频率fd的M倍,即fI=Mfd。
式中,(l↑0)表示插入l个0,l=0,1,2,…,M-1。
图2 用三个低采样率序列重构波形的实例
插值后序列sI(n,l)的频谱为其中
M路插值并移位叠加后的序列的频谱为:
由此可看出,在低采样率下得到的M路序列,经过移位插值再叠加后与原始序列有着相同的频谱。因此,通过多个低速存储器并行使并行存储技术可突破FPGA和存储器工作速度的限制,实现高采样率的任意波形合成。
1.2 多存储器并行结构
m个存储器并行的波形合成原理如图3所示。相位累加器、相位加法器以及波形查找表均工作在频率为1/mfs低速数据时钟下,每一个低速数据时钟的上升沿相位累加器步进mK,其输出在相位加法器1-m中与相位偏移值分别相加,得到结果为nmK、(nm+1)K…(nm+m-1)K的m路相位值(其中n=0,1,2,…)。m路相位值对波形查找表1-m进行寻址,产生的m路波形数据送到并串转换模块,在时钟频率为fs的高速采样时钟控制下合成符合DAC输入格式的单路数据。其中,低速数据时钟可通过对高速采样时钟m分频来实现。
图3 m路并行存储原理图
2 多通道并行存储DDS同步技术
2.1 多通道同步模型和同步条件的分析
以双通道DDS为例来分析同步条件,图4为基于并行存储技术的双通道DDS原理框图。可将DDS抽象为数据源和DAC两部分,数据源(包含相位累加器、相位加法器、波形查找表以及并串转换模块)产生相应的波形数据,然后送到DAC转换为模拟信号。
由DDS的工作原理可知,通道间输出信号同步的关键是:1)各通道数字信号转换模拟信号的时刻需相同,即各通道DAC的采样时钟同相位。2)各通道DAC的输入数据同步,即各通道数据源输出的波形数据同步。保证条件1),只需确保各通道使用同一个时钟源,且时钟源到各DAC的路径长度、阻抗大小等条件均相同。保证条件2),首先各通道相位累加器的初始值必须相同以保证初始寻址地址相同;其次各通道数据源必须在同一时刻开始工作。因此,实现各通道波形数据同相位需保证各通道数据时钟(用于同步数据产生)同相位,以及触发信号(用于启动数据源模块工作)同相位。
2.2 数据时钟同相位方法
基于并行存储结构的DDS的数据时钟是采样时钟的m分频,由于分频器初始状态的随机性,导致数据时钟随机出现m种初始相位,且相位差为2π/m的整数倍,造成输出给DAC的波形数据超前或滞后相应的采样时钟周期。
图5所示的是4路并行DDS中,数据时钟不相同时数据、波形的关系。其中,Sample_CLK代表采样时钟,Data_CLK/0°~Data_CLK/270°代表采样时钟4分频后所得初始相位为0°、90°、180°和270°时的数据时钟,DATA/0°~DATA/270°和WAVE/0°~WAVE/270°分别代表采用不同初始相位的数据时钟所获得的数据和波形。
图4 基于并行存储技术的双通道DDS结构
图5 四分频后输出波形相位差
为实现波形数据的同步,必须保证分频所得的数据时钟同相位。因此各通道可使用由同一个分频器产生的数据时钟,或是对多个分频器输出的多个数据时钟进行鉴相,然后根据鉴相结果重新复位分频器(改变分频器的初始状态),直到同相位为止。
2.3 触发信号的处理
为了确保各通道相位累加器的初始值相同,需对其进行初始化。常用的方法是采用触发信号进行异步清零,即触发信号为复位状态时相位累加器输出清零,在有效状态后的第一个数据时钟上升沿相位累加器开始累加。但在多通道DDS中,由于触发信号与数据时钟关系的不确定性,会出现图6中所示的A和B两种情况。其中,CLK1DATA、CLK2DATA分别代表通道1、2的数据时钟,SYNC代表用于清零的触发信号,DATA1、DATA2分别代表通道1、2的波形数据。
从图6可见,即使通道间数据时钟的相位差很微小,但是由于触发信号复位状态(本图为低电平)出现位置的随机性,输出波形也可能出现两种随机的相位差。触发信号下降沿位于两数据时钟上升沿之前时(见图中标记情况A),DATA1略微超前于DATA2。触发信号下降沿位于两数据时钟上升沿之间时(见图中标记情况B),DATA2比DATA1超前了近一个时钟周期。为消除这种随机性,保证触发信号下降沿位于两数据时钟上升沿之前,选择其中一个通道的数据时钟下降沿锁存触发信号,然后用锁存后的信号启动相位累加器。其时序如图7所示。
经过数据时钟下降沿锁存后,触发信号的下降沿与所选择的数据时钟下降沿对齐,或是略微滞后于该数据时钟下降沿(取决于采用芯片的响应速度),保证相位累加器初始状态及启动时刻相同,实现输出数据同相位。其中SYNC1是未经锁存处理的触发信号,SYNC2是经过锁存处理的触发信号。
图6 两个通道的累加器清零时序图
图7 同步信号处理前后的时序图
3 设计与实现
3.1 基于并行存储的波形合成模块设计
本文设计采用FPGA+SRAM+DAC结构实现4通道600 MS/s任意波形合成模块。考虑存储器和FPGA工作速度,采用4片存储器(工作频率为150 MHz)并行的方式实现波形合成。因此,每个通道包含4片存储器与1片DAC。如若采用1片FPGA实现4个通道的地址发生器,难以满足所需的IO资源。因此设计中采用2片FPGA,每片FPGA实现两个通道的地址发生器。
3.2 多通道同步方法的实现
由2.1节的分析可知,要同步4个通道的输出波形,首先需要保证各通道采样时钟同相位。具体步骤如下:对晶体振荡器产生的参考时钟进行倍频,得到频率为600 MHz的采样时钟,然后通过时钟分配器(LMK01010芯片),扇出4路同相位、同频率的时钟信号,最后经长度相等、阻抗相同的路径输出到4个通道DAC的时钟引脚,从而保证了4个通道DAC的采样时钟同相位,且具有足够的驱动能力。
为简化设计,对通道1的采样时钟进行4分频,然后将得到的分频时钟通过时钟分配器扇出各通道所需的数据时钟。但本文设计中,所采用的DAC(AD9736)内部还存在数据处理单元,其结构如图8所示。
由AD9736的内部结构图可看出,锁存器FF1和FF2分别在数据时钟DATACLK_IN的下降沿和上升沿对输入数据DB<13:0>锁存,产生数据D1和D2,锁存器FF3和FF4分别在采样时钟DACCLK的2分频输出DATACLK的下降沿和上升沿对数据D1和D2锁存,产生数据D3和D4,D3和D4两路数据在DATACLK控制下,经多路复用器MUX合并为一路数据输出DOUT送给AD9736的DAC CORE,由DAC CORE转换为模拟信号DAC_OUTPUT。
图8 AD9736内部结构图
图9 DAC数据接收与转换时序图
从前文分析可知,由于存在2分频,时钟DATACLK_OUT会随机出现两种不同的相位关系,即使输入数据DB<13:0>同相位,其输出也可能相差1个采样时钟周期,其原理如图9所示。其中,DACCLK代表采样时钟,DATACLK_OUT1、DATACLK_OUT2代表采样时钟2分频所得的相位差为180°的数据时钟,D3A和D4A代表经锁存器FF3和FF4并且采用时钟DATACLK_OUT1的上升沿和下降沿进行锁存所得的两路数据,D3B和D4B代表经锁存器FF3和FF4并且采用数据时钟DATACLK_OUT2的上升沿和下降沿进行锁存所得的两路数据。DOUT1、DOUT2分别代表数据时钟为DATACLK_OUT1、DATACLK_OUT2时DAC输出的波形数据。
由2.2节可知,分频造成的随机相位误差可根据鉴相结果重新复位分频器来消除。本文设计中,将各通道DAC输出的数据时钟全部经等长等阻抗路径输入到FPGA1中进行鉴相。由于2分频只会出现0°和180°两种不同的相位差,因此可经异或区分任意两个通道DAC输出的数据时钟是否同相。
在实际电路中,由于布局布线、芯片传播延迟等多种因素的影响,数据时钟间的相位差并不是准确的0°和180°。因此,异或后所得信号不是稳定的高电平或低电平,而是窄脉冲信号,如图10中信号SYNC1、SYNC2所示。为避免采集到窄脉冲部分造成错误判断(如图10中情况A所示),本文设计以通道1的数据时钟为基准,其他3个通道的数据时钟分别与通道1的数据时钟异或,对通道1的数据时钟延迟1/4个周期后对异或结果进行锁存。
如图10所示,DATA_CLK1~DATA_CLK4分别代表设计中通道1~4的数据时钟,SYNC1~SYNC3分别是DATA_CLK2、DATA_CLK4与DATA_CLK1异或所得信号,SYNC_FLAG1~SYNC_FLAG3分别是SYNC1~SYNC3经锁存后所得信号,SCLK是锁存时钟。SYNC_FLAG2、SYNC_FLAG3为低电平,表明通道3、通道4的数据时钟与通道1的数据时钟同相位。SYNC_FLAG1为高电平,表明通道2的数据时钟与通道1的不同相,此时需要重新复位该通道的DAC,直到两通道的数据时钟同相为止。
为降低触发信号的随机性,需将触发信号经数据时钟的下降沿锁存后再送到各通道相位累加器的清零端。由于使用了2片FPGA且每片FPGA实现2个通道的波形合成,因此在设计中,由FPGA1产生一个同步触发信号,再用通道1数据时钟的下降沿去锁存该同步触发信号,将锁存后所得的信号由该FPGA的IO引脚输出并经等长路径输入到FPGA1和FPGA2中,用于启动相位累加器。
图10 鉴相处理时序图
3.3 时钟方案的设计
由前文分析可知,本文所设计的任意波形发生器有4个独立的通道,每个通道不仅能独立工作,还可以输出具有准确相位关系的波形信号。其时钟方案的设计如图11所示。
在设计方案中,频率为600 MHz采样时钟CLKDAC通过时钟分配器(LMK01010)分成4路经等长路径送到4个通道的高速DAC(AD9736),4个通道的DAC接收到600 MHz的采样时钟后在其内部会对其做一个2分频,分频后得到的时钟送到FPGA,如3.2中所述方法进行处理及判断。判定为同相后,为了保证时钟的同源性,将4个通道中的其中一片DAC分频出来的300 MHz再进行2分频,产生150 MHz的数据时钟CLKDATA,该数据时钟经时钟分配芯片LMK01010和ICS8308I分别送到2片FPGA以及16片存储器。这样为各通道输出信号同步提供了有效的保证。
图11 时钟方案框图
4 验证与分析
4.1 多通道输出波形测试
4个通道的输出波形如图12所示,分别为正弦波、三角波、方波以及斜波。由图可知,各通道输出波形可独立控制。
图12 4个通道输出波形
4.2 相位调节测试
使用示波器MDO4104对设计的任意波形发生器的输出相位调节能力进行测试,各个通道均输出频率为1 kHz的正弦信号,图13a~图13d是通道1初始相位0°,通道2初始相位分别为0°、45°、90°、180°的情况,由图可知,其具有相位调节范围宽的优点。
4.3 单台仪器多通道输出的同步测试
输出信号的同步特性可通过测试方波信号的上升沿之间的时间间隔获得。为了保证输出方波的高低电平为整数个点以及避免边沿抖动,将该AWG的4个通道同时输出60 MHz方波(初始相位为0°)到示波器MDO4104中。图14展示了同步测试的波形图,表1记录了图14中所示的其他通道与通道1同步误差的相关值。由此看出,任意两个通道间输出方波的延迟误差优于150 ps。此时同步误差主要由电路元器件及布局布线造成的延时差异等因素造成。
图13 输出波形相位调节测试
图14 通道间同步测试
表1 各通道相对于通道1的定时偏差
5 结 束 语
多存储器并行结构能有效提高采样率,但引入了更复杂的同步误差。本文通过建立模型讨论了时钟、触发信号的精密分配和相位校准模块设计,提出了多通道输出信号同步的方案并做了测试验证,证明了该AWG在输出波形、相位调节以及同步误差等方面均符合预期目标,证明了该设计的可行性。
[1]ZHANG H F, LUO C L, TANG P Y, et al. High-speed arbitrary waveform generator based on FPGA[C]//IEEE Nuclear Science Symposium. Seoul: IEEE, 2013: 1-5.
[2]HASSUN R, KOVALICK A W. Waveform synthesis using multiplexed parallel synthesizers[J]. Acoustical Society of America, 1984, 76(5): 1603.
[3]GOVORKOC S, IVANOV B I, IL'ICHEV E, et al. A compact, multichannel, and low noise arbitrary waveform generator[J]. Review of Scientific Instruments, 2014, 85(85):054702.
[4]BAIG M T,OHANNING M J,WIESE A, et al. A scalable,fast, and multichannel arbitrary waveform generator[J].Review of Scientific Instruments, 2013, 84(12): 124701-w124701.
[5]刘科, 田书林, 肖寅东. 多通道任意波形发生器精密相位控制方法[J]. 信息与控制, 2011, 40(2): 209-213.LIU Ke, TIAN Shu-lin, XIAO Yin-dong. A method of precise phase control for multi-channel abitrary waveform generator[J]. Information and Control, 2011, 40(2): 209-213.
[6]LOU Y,LIU G,GAO M. Design and implementation of an untra high speed dual-channel DAC module based on CPCI[C]//Conference on International Radar. [S.l.]: [s.n.],2009(4): 1-4.
[7]赵彬广, 高文军, 李坤龙, 等. 基于数字相关算法的多通道DAC同步算法[J]. 中国科学院大学学报, 2012, 29(2):234-239.ZHAO Bin-guang, GAO Wen-jun, LI Kun-long, et a1.Multi-channel DAC synchronizing aIgorithm based on digital correlation method[J]. Journal of Graduate University of Chinese Academy of Sciences, 2012, 29(2): 234-239.
[8]HU J, CHENG X, XIONG W M, et al. Design of synchronization circuit based on two high-speed multiplexed DACs in satellite transmitter application[C]//The 5th International Conference on Computer Science & Education.Hefei, China: IEEE, 2010, 1458-1461.