由AD9852构成的信号发生器
该系统中,由TMS3⒛F2812作为控制器,其功能是计算所要产生信号的波形参数,并发送控制字到AD9852内部的控制寄存器,以实现可编程的任意信号发生。数据的传输有串行、并行两种方式,串行传输速率最大为10MHz,并行传输速率最大为100MHz。为了节约硬件资源,在满足系统要求的前提下,采取串口连接方式,利用TMS320F2812片内的串行外设接口(SPI)控制AD9852。
AD9852的串行接口与TMS320F2812的SPI接口兼容,通过6个端口'即可实现串行数据的传输控制。通过引脚S/P SELECT选择串行模式,是复用信号,在串行工作状态下作为AD9852串行`总线的片选信号,I/O RESET是串口总线复位信号,SCLK是串口时钟信号,系统采用的是两线串口通信模式,使用SD10端口进行双向输人/输出操作,I/O UD是更新时钟信号。串行通信工作的时序如图所示。
AD9852的串行通信周期分为两个阶段,SCLK的前8个上升沿对应于指令周期,在指令周期中,用户向AD9852的串口控制器发送命令字来控制,随后进行的是串行数据传输。数据传输周期从SCLK的第9个上升沿开始,输人数据在时钟上升沿写人,输出的数据则在时钟的下降沿读出。由串口传送的数据首先被写人I/0缓存寄存器中,当系统接收到有效的更新信号时,才将这些数据写人内部控制寄存器组,完成相应的功能。当完成了通信周期后,AD9852的串口控制器认为接下来的8个系统时钟的上升沿对应的是下一个通信周期的指令字。
当I/0 RESET引脚出现一个高电平输人时,将会立即终止当前的通信周期,当I/ORESET引脚状态回到低电平时,AD9852串口控制器认为接下来的8个系统时钟的上升沿对应的是下一个通信周期的指令字,这一点对保持通信的同步十分有益。
AD9852的参考时钟有差分输人和单端输入两种形式,由于差分时钟在脉冲边沿具有更短的上升和下降时间及最小的抖动率,可以有效降低参考时钟的相位误差,因此本系统采用了参考信号差分输人的方式。对于差分输入方式,输人端信号可以是方波或正弦波,可使用MAXIM公司的MAX9371;将普通时钟信号转化成系统所需的差分时钟信号。
在对AD9852进行编程时,串行输人的数据被缓存在内部的I/O缓冲寄存器中,不会影响到AD9852的工作状态;在更新时钟信号的上升沿到来后,触发I/0缓冲寄存器,把数据传送给内部控制寄存器,这时才能完成相应功能,实现对输出信号的控制。更新时钟信号的产生有两种方式,一种是由AD9852芯片内部自动产生,用户可以对更新时钟的频率进行编程,来产生固定周期的内部更新时钟;另一种是由用户提供外部更新时钟,此时AD9852 1/O UD引脚为输人引脚,由外部控制器提供信号。该系统采取外部时钟更新的方式,使用DSP的一个|/o端口与AD9852的I/O UD相连接,可以通过软件的方式实现对更新时钟信号上升沿的精确控制。
AD9852的工作时钟高达300MHz,为了降低时钟信号的干扰,系统应采用低频时钟信号源,然后通过AD9852片内的参考时钟倍频器,对外部参考时钟实现4~⒛倍频。参考时钟倍频器的锁相环电路有两个工作状态:锁定状态和获得锁定状态。在锁定状态,系统时钟信号和参考时钟信号可以保持同步。但当给AD9852发送控制指令时,在其参考时钟倍频器工作后的短暂时间内,锁相环不能立刻锁定,仍然工作在获得锁定状态。而此时传送到AD9852相位累加器的系统时钟周期的个数是不可控的,因此系统初始化以后,一定要先确保锁相环进人锁定状态,然后才能更新AD9852内部的各种控制字。AD9852片内锁相环锁定的典型时间约为400ps,建议至少留出lms时间使锁相环进人锁定状态。
AD9852的控制流程如下:
①给系统上电,由DSP向AD9852发出复位信号,此信号需要至少保持10个参考时钟周期的高电平;
②将S/P SELECT置0,选择串行数据输入方式;
③给AD9852发送控制字,使AD9852工作状态由默认的内部更新时钟模式变为外部时钟更新模式;
④将AD9852时钟倍频器工作的控制字写入AD9852的I/0缓冲寄存器中,然后由DSP发出外部更新时钟,更新AD9852内部控制寄存器;
⑤DSP发出外部更新信号,至少等待1ms时间使AD9852内部锁相环锁定,然后由DSP发送有关信号波形参数给AD9852,对其内部控制寄存器的内容进行同步更新。
|