zoukankan      html  css  js  c++  java
  • 关于AD9516芯片的硬件设计和FPGA程序编写心得

          最近在做一个项目,其中有涉及时钟芯片AD9516的硬件设计和软件编程,有些使用心得,供大家参考讨论。

          AD9516,这是一个由ADI公司设计的14路输出时钟发生器,具有亚皮秒级抖动性能,还配有片内集成锁相环(PLL)和电压控制振荡器(VCO)。片内VCO的调谐频率范围为2.55 GHz至2.95 GHz。或者,也可以使用最高2.4 GHz的外部VCO/VCXO。关于资料的获取:1.ADI公司的中文技术支持网站做的非常好,可参考AD9516_0的链接:http://www.analog.com/cn/products/clock-and-timing/clock-generation-distribution/ad9516-0.html#product-overview,好好看里面的手册和参考资料,基本就没什么问题;2.关于AD9516芯片的配置,可参考链接:http://forum.eepw.com.cn/thread/228366/1,里面有相应的工具下载和说明参考,建立在理解的基础上就很简单啦。

          AD9516有6路(3对)LVPECL输出4路(2对)LVDS输出以及8路LVCMOS(每个LVDS可以作为2路LVCMOS)输出。每对之间共享数值为1-32的分频数值,因此,每对LVPECL或者LVDS输出的时钟频率是相同的。LVPECL输出可达1.6GHz,LVDS输出可达800MHz,LVCMOS可达250MHz。输入参考时钟频率和VCO工作频率有如关系: Fvco=(Fref/R)*(P*B+A) 

         每路输出还有单路的分频因子(1-32)可以配置,通过参考时钟的选择,内部P、B、A寄存器以及每路分频寄存器的配置,可以得到我们想要的时钟。

         给出一个参考原理图电路,和对应配置图:

        

           原理图绘制时需要重点注意LVPECL和LVDS输出不同,需要接下拉电阻;还有REFSEL是对REF1和REF2的选择接口,需要特别注意,毕竟硬件设计需要我们的细心O(∩_∩)O。

           在配置AD9516芯片时,我用的是XLINX的XC3S200AN,verilog语言,配置的流程主要是:1.根据手册弄清各个接口的意义,比如同步接口,使能端等;2.搞清每个寄存器的含义,着重关注分频寄存器;3.关注读写配置时序图,写出对应状态机

           关于分频寄存器举个例子:


              给每个寄存器赋值,具体寄存器的含义参考手册。

           Fvco=(Fref/R)*(P*B+A);  Fref=100M   ;     R=24’h0011_0A;R=10,P=16,B=15;

           A1=0->2.4G

           Divider0=24’h01E1_01(3分频)----->800M

           LVPECL : 24’h0190/3/6_11(4分频)----->200M;33(8分频)----->100M;55(12分频)----->66.7M

  • 相关阅读:
    Binary Tree Zigzag Level Order Traversal
    Binary Tree Level Order Traversal
    Symmetric Tree
    Best Time to Buy and Sell Stock II
    Best Time to Buy and Sell Stock
    Triangle
    Populating Next Right Pointers in Each Node II
    Pascal's Triangle II
    Pascal's Triangle
    Populating Next Right Pointers in Each Node
  • 原文地址:https://www.cnblogs.com/yinknight/p/6947053.html
Copyright © 2011-2022 走看看