当AD9786被配置成主模式器件时,生成的参考时钟有DATACLK Master和:Modulator Master模 式。在这2种模式下DATACLK/PLL_LOCK引脚都作为时钟输出引脚。AD9786的默认工作模式是 DATACILK Master模式。在该模式下,差分时钟输入 脚(脚5,脚6)作为DAC的采样时钟输入。DATA- CLK/PLL_LOCK引脚被作为同步数据输出时钟引脚使用。其输出是输入差分时钟除以内插倍数。而在 Modulator Master模式下,DATACLK/PLL_LOCK引 脚输出的是1个输入差分时钟经过16倍分频之后的方波。

工作在Modulator Master模式下的AD9786内 部有1个工作在DACCLK时钟频率的拥有16个有限状态的状态机。该状态机产生所有的内部、外部时钟和调制相位。这时DATACLK/PLL_LOCK引脚输出的时钟称为MODCLK。该时钟的上升沿是设置内部状态机状态为零的时刻。

当AD9786工作在Modulator Master模式时,输入数据必须和MODCLK时钟、差分输入CLKIN同步。在8x内插模式下,每8个CLKIN时钟的上升沿锁存1个数据;在4x内插模式下,每4个CLKIN时钟的上升沿锁存1个数据;在2x内插模式下,每2 个CLKIN时钟的上升沿锁存1个数据。为了满足数据建立时间和保持时间的需要,同时也为了数据同步的需要,AD9786提供了1个DATAADJ寄存器用来将MODCLK时钟输出前移或后移1个或几个 DACCLK时钟周期,最大可移动的具体时钟周期数和所选择的内插倍数有关。在Modulator Master模式 下,锁数据的CLKIN时钟时刻固定,输出的MOD- CLK根据所选择的DATAADJ参数而前后移动。

当AD9786被设置为从模式器件时,根据所处工作模式的不同可以分为Modulator Slave模式和 DATACLK Slave模式。在这2种工作模式下DAT- ACLK/PLL_LOCK引脚作为时钟输入脚。当AD9786 工作在Modulator Slave模式时,根据主模式器件生 成的参考时钟MODCLK来设置状态机的零状态从而使得从模式器件的数据锁存和调制相位能够和主模式器件同步。通过AD9786中的MODADJ寄存器设置调制系数来调节AD9786的调制相位,可调的相位数和所选择的调制倍数有关。

和Modulator Master模式的情况相同,在Modu- latm Slave模式下的从模式AD9786的输入数据必 须和差分时钟输入CLKIN以及输入的MODCLK同步。在Modulator Master模式下,输入数据锁存的 CLKIN时刻是不变的,输出的MODCLK时钟前后移动。而在Modulator Slave模式下MODCLK时钟作为 输入是不变的,通过改变DATAADJ寄存器的数值将会改变锁数据的CLKIN锁存数据时刻。在DAT- ACLK Slave模式下,从模式器件使用从DATACLK/ PLL_LOCK输入的时钟作为它们的数据输入时钟。

4、在8通道阵列信号发生器中的应用

实际设计中需要模拟的是8路的阵列信号。根据设计需要,在本阵列信号模拟发生器电路中使用了8个工作在Modulator Slave模式下的AD9786, 同时使用1个Xilinx公司的Spartan IIE FPGA作 为主模式器件。在系统中,主机负责模拟并产生65 536点的周期通信基带信号数据。FPGA主要负责与PCI桥路PCI5920的接口通信以读取主机的命令和来自主机的通信基带信号数据,并将所读取的数据存储在模拟器上的大容量SDRAM中。当系统工作时,FPGA将SDRAM中存储的数据输入到 AD9786并提供1个MODCIJK时钟作为AD9786 的调制同步时钟,同时它还负责对AD9786的控制模式寄存器进行配置。AD9786工作在8x内插模式下,使用80MHz的DACCLK差分时钟,通过设置 MODADJ来改变调制相位,通过DATAADJ来改变数据锁定的时刻以保证多路输人数据之间的同步关系。8通道阵列信号模拟发生器结构框图如图2 所示。