最近在做一個項目,其中有涉及時鐘晶片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寄存器以及每路分頻寄存器的配置,可以得到我們想要的時鐘。
給出一個參考原理圖電路,和對應配置圖:
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIw1mYuYTO2ETM0UDO30yN4MjN1cjMwITNwYDM3EDMy0yM3cTM5ATMvwlNwcTMwIzLcNzN3ETOwEzLcd2bsJ2Lc12bj5ycn9Gbi52YuUTMwIzcldWYtl2Lc9CX6MHc0RHaiojIsJye.bmp)
原理圖繪制時需要重點注意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
轉載于:https://www.cnblogs.com/yinknight/p/6947053.html