位置:51电子网 » 技术资料 » 其它综合

发射应用中多个高速.复用DAC的同步

发布时间:2008/6/5 0:00:00 访问次数:377

概述

在很多发射应用中必须产生多路相对相位准确已知的模拟输出。在正交调制器中(图1),i和q通道必须具有明确的相位关系来实现镜频抑制。图1中,dac1和dac2的延迟必须匹配。使用数字波束成形技术的发射器需要准确地控制大量dac之间的相对相位。

图1. 使用多路复用dac的i/q发射器中的dac和第一上变频级
使用具有多路输入的dac (mux-dac)如max19692,或具有数据时钟输出的内插dac时,输入数据速率为dac刷新速率的1/n,dac在一个或两个数据时钟跳变沿锁存数据。max19692中n = 4,输入数据速率为dac刷新速率的1/4。dac输出一个由输入时钟经数字分频得到的数据时钟(dataclk)。dac上电时,数字时钟分频器可在n个状态的任意一个启动。如果使用多个dac,不同dac的时钟分频器会在不同的状态启动,所以dac会在不同的时间锁存数据。除非这种情况被发现并校正,否则不同的dac输出数据时相互之间可能会有一个或更多个时钟周期的延迟。如果每个dac的时钟分频器可以复位,那么这种情况可以避免,但是仍然会存在一些问题。如果其中一个时钟分频器发生错误,dac会变得永久异相,除非执行一些错误状态检测方法。为了保证系统的可靠性,必须检测相位错误状态并改正。如果dac工作于非常高速的状态下,那么复位信号与输入时钟的同步也可能是个难题。

图2所示是max19692的时钟(clkp,clkn)和数据时钟(dataclkp,dataclkn)接口的简化框图。初始时钟由一个两位计数器四分频后用于锁存数字dac输入。该计数器可能在四个状态中的任意一个启动(图3)。如果使用两个多路复用dac,这两个dac可能会在不同的状态启动。这可能导致dac1的锁存与dac2的锁存之间存在-1、0、1或2个时钟周期的延迟。

max19692的数据时钟输出再由数据输入锁存时钟进行2分频或4分频。然后数据在双倍数据率(ddr)模式下在时钟的两个跳变沿进行锁存,或者在四倍数据率(qdr)模式下在时钟的每90°相位处进行锁存。如果多个dac的数据时钟延迟相匹配,或数据时钟相互之间反相,那么锁存时钟相匹配。


图2. max19692内部时钟接口框图

图3. max19692锁存时钟(四种可能的状态)
dac的同步问题有两个方面:

dac的锁存时钟之间的相对相位必须被检测。
dac之间的相对相位必须被调整直到dac被合适地定相。
检测dac之间的相位误差可以通过检测两个dac之间的数据时钟输出的相位误差来实现。相位检测器可以像一个异或门一样简单,也可以像相频检测器一样复杂。

可以通过操作一个或更多个dac的时钟来实现两个dac之间的相位调整,直到dac数据时钟输出的相对相位为零。另外一种方法可以测量数据时钟之间的dac延迟周期数和相应的延迟数据。下面的段落讲述了i/q配置中的这两种方法。


通过“吞”脉冲实现dac相位调整
如果dac使用方波(比如ecl)时钟,两个dac之间的同步可以用图4所示的简单的高速逻辑电路来实现。为了简单明了,该原理图中的逻辑配置只能实现单端功能。但是实际应用中会使用差分逻辑如ecl来实现高速和低噪声性能。


图4. 实现dac同步的简单的高速逻辑电路
mux-dac1时钟路径上与门(g1)的插入允许对mux-dac1的时钟进行操作。mux-dac2的时钟路径上插入与门(g2)用于延迟匹配。异或门(g3)起相位检测的作用。当dataclk1和dataclk2的输出不同时g3输出“1”。如果g3out = “1”,应该 “吞掉”mux-dac1的时钟脉冲,将dataclk1的边沿移位一个clk时钟周期。g3输出的上升沿(g3out)由ff1和g4组成的上升沿检测器(ped)来检测。如果检测到上升沿,ped输出“0”,持续一个时钟周期。在spb应用于g1之前,ff2将这个信号重新定时,从而使mux-dac1的一个时钟脉冲被抑制。这就使dataclk1延迟一个clk时钟周期。经过若干个时钟周期后,dataclk1的延迟与dataclk2一致,如图5所示。使用这种方法时,触发器要在时钟的下降沿进行状态更新,以消除dac时钟信号的毛刺,两个mux-dac的输入时序要相同。布线时要考虑延迟以确保满足两个触发器的建立和保持

概述

在很多发射应用中必须产生多路相对相位准确已知的模拟输出。在正交调制器中(图1),i和q通道必须具有明确的相位关系来实现镜频抑制。图1中,dac1和dac2的延迟必须匹配。使用数字波束成形技术的发射器需要准确地控制大量dac之间的相对相位。

图1. 使用多路复用dac的i/q发射器中的dac和第一上变频级
使用具有多路输入的dac (mux-dac)如max19692,或具有数据时钟输出的内插dac时,输入数据速率为dac刷新速率的1/n,dac在一个或两个数据时钟跳变沿锁存数据。max19692中n = 4,输入数据速率为dac刷新速率的1/4。dac输出一个由输入时钟经数字分频得到的数据时钟(dataclk)。dac上电时,数字时钟分频器可在n个状态的任意一个启动。如果使用多个dac,不同dac的时钟分频器会在不同的状态启动,所以dac会在不同的时间锁存数据。除非这种情况被发现并校正,否则不同的dac输出数据时相互之间可能会有一个或更多个时钟周期的延迟。如果每个dac的时钟分频器可以复位,那么这种情况可以避免,但是仍然会存在一些问题。如果其中一个时钟分频器发生错误,dac会变得永久异相,除非执行一些错误状态检测方法。为了保证系统的可靠性,必须检测相位错误状态并改正。如果dac工作于非常高速的状态下,那么复位信号与输入时钟的同步也可能是个难题。

图2所示是max19692的时钟(clkp,clkn)和数据时钟(dataclkp,dataclkn)接口的简化框图。初始时钟由一个两位计数器四分频后用于锁存数字dac输入。该计数器可能在四个状态中的任意一个启动(图3)。如果使用两个多路复用dac,这两个dac可能会在不同的状态启动。这可能导致dac1的锁存与dac2的锁存之间存在-1、0、1或2个时钟周期的延迟。

max19692的数据时钟输出再由数据输入锁存时钟进行2分频或4分频。然后数据在双倍数据率(ddr)模式下在时钟的两个跳变沿进行锁存,或者在四倍数据率(qdr)模式下在时钟的每90°相位处进行锁存。如果多个dac的数据时钟延迟相匹配,或数据时钟相互之间反相,那么锁存时钟相匹配。


图2. max19692内部时钟接口框图

图3. max19692锁存时钟(四种可能的状态)
dac的同步问题有两个方面:

dac的锁存时钟之间的相对相位必须被检测。
dac之间的相对相位必须被调整直到dac被合适地定相。
检测dac之间的相位误差可以通过检测两个dac之间的数据时钟输出的相位误差来实现。相位检测器可以像一个异或门一样简单,也可以像相频检测器一样复杂。

可以通过操作一个或更多个dac的时钟来实现两个dac之间的相位调整,直到dac数据时钟输出的相对相位为零。另外一种方法可以测量数据时钟之间的dac延迟周期数和相应的延迟数据。下面的段落讲述了i/q配置中的这两种方法。


通过“吞”脉冲实现dac相位调整
如果dac使用方波(比如ecl)时钟,两个dac之间的同步可以用图4所示的简单的高速逻辑电路来实现。为了简单明了,该原理图中的逻辑配置只能实现单端功能。但是实际应用中会使用差分逻辑如ecl来实现高速和低噪声性能。


图4. 实现dac同步的简单的高速逻辑电路
mux-dac1时钟路径上与门(g1)的插入允许对mux-dac1的时钟进行操作。mux-dac2的时钟路径上插入与门(g2)用于延迟匹配。异或门(g3)起相位检测的作用。当dataclk1和dataclk2的输出不同时g3输出“1”。如果g3out = “1”,应该 “吞掉”mux-dac1的时钟脉冲,将dataclk1的边沿移位一个clk时钟周期。g3输出的上升沿(g3out)由ff1和g4组成的上升沿检测器(ped)来检测。如果检测到上升沿,ped输出“0”,持续一个时钟周期。在spb应用于g1之前,ff2将这个信号重新定时,从而使mux-dac1的一个时钟脉冲被抑制。这就使dataclk1延迟一个clk时钟周期。经过若干个时钟周期后,dataclk1的延迟与dataclk2一致,如图5所示。使用这种方法时,触发器要在时钟的下降沿进行状态更新,以消除dac时钟信号的毛刺,两个mux-dac的输入时序要相同。布线时要考虑延迟以确保满足两个触发器的建立和保持
相关IC型号
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!