支持jesd204b协议高速DAC芯片AD9144-FMC-EBZ

背景
ad9144是一款支持jesd204b协议高速dac芯片。ad9144-fmc-ebz是基于ad9144的评估板(evaluation board),它是主要由ad9144,ad9516,与pic16f单片机组成的系统。工程上使用ad9144具有时钟时序要求很高和寄存器配置复杂的难点。
配置ad9144-fmc-ebz,有两种途径:
1、通过fpga母板,经由fmc接口,使用spi配置寄存器
2、通过adi提供的软件工具,配合母板(ads7)来配置寄存器,如图所示:
遇到问题:
我们在尝试第一种方法的时候,遇到了spi寄存器写不进的情况和读写不一致的情况。而第二种方法则需要ads7用作母板。
调试
完成了以kc705作为母板,正确配置ad9144,并输出62.5mhz正弦波。
整个流程需要先在kc705上运行提供的hdl工程,随后进入软件工具配置流程。这里的hdl工程主要完成的是:jesd204发送端的配置与正弦余弦信号的输出。另外,这里的软件工具配置流程既使用adi官方提供的工具对ad9144和ad9516分别进行配置。
在调试开始前,硬件链接如下图所示:
1、ad9516寄存器配置获得
ad9516的作用是对输入时钟分频,为ad9144分别提供:sysref(3.91m),和refclk(125m)。
这里使用了ad9516-evaluation-software完成配置。
在安装结束后,打开软件并选择正确的型号,这里选ad9516-1
分别按下图所示进行配置:输入时钟(来自kc705)设置为2500;分频系数如图设置:最后得到两组频率为120m和3.9063m的时钟;点击左下角的橙色框(rgister w/r)中的write。
点击“file”,点击“save setup”,导出“stp”文件,如下图所示。
打开导出的.stp文件,如图:这个文件记录了寄存器地址与对应的值,将于后续步骤导入。
2、ad9144&ad9516寄存器配置:
a、首先到ad公司官网搜索dac software suite和analysis control evaluation软件,下载并安装;
b、打开已经安装好的ace软件,界面如下图所示。在硬件连接正确的情况下,图中红圈会检测到所连接的硬件板卡,点击图中绿圈的led状按钮,ad9144-fmc-ebz板卡上的蓝色led灯会随之闪烁,说明连接成功。
c、双击打开“ad9144-fmc-ebz”板卡。在“initial configuration”界面中按如图所示进行设置,点击“summary”并“apply”,双击右侧红色图框中的ad9144芯片。
d、在打开的界面中按图中配置设置dac calibration,选择“dac3 dac2”并点击“calibrate”。
e、点击上图右下角的“proceed to memory map”,按照项目所需配置好ad9144相关的寄存器表的值,点击右上apply selected将对应的寄存器值写入ad9144芯片。
f、在电脑开始菜单>analog devices寻找“ad9144&ad9135&ad9136 spi”并打开,软件界面如图所示:
g、在上方框中点击“read all registers”,然后点击“save registers to file”得到“.csv”文件,右键将其用记事本打开,如图所示,找到ad9516芯片开头的寄存器区域,将之前通过ad9516 evaluation software得到的stp文件中的寄存器值添加进.csv文件中并保存。
如图所示,第一列是ad9144/ad9516的芯片,第二列是对应芯片的寄存器地址,第三列是寄存器对应的值,将ad9516所有寄存器的值添加进来并保存。
h、打开“ad9144&ad9135&ad9136 spi”软件并选择“restore registers from file”,将上一步中修改保存好的.csv文件导入。
i、将vivado中的工程bit流文件烧录到板子上,通过ila抓取并观察tx_sync信号,发现信号持续拉高,返回ad9144&ad9135&ad9136 spi软件read all registers,观察如图区域,如果图中所示四个寄存器值都为0f,vivado tx_sync持续拉高,并且txdata有数值输出,则说明ad9144与jesd204b同步成功,此时用示波器测量ad9144板卡输出可观测到波形输出。
调试过程中遭遇问题
1.spi配置失败问题?
2.axi-lite的参数设置?
通过在analysis control evaluation软件中读取ad9144寄存器表值,查询0x453-0x45a寄存器值,得到关键参数l,scr,f,k,m,n,n’,s,cf,hd等的值。
通过文档pg066 p27-p28中所示的值,计算出axi协议所需要的每个寄存器地址的值。填入到vivado工程模块中的axi协议部分。
vivado工程中的axi协议部分:地址填入pg066 p27-p28中的寄存器地址,值填入更据关键参数算出来的值。


RF电路板分区设计的问题探讨
深圳公交搭载人脸识别系统 让市民享受到更加便利的出行服务
如何轻松掌握机器学习概念和在工业自动化中的应用
小米MIUI9怎么样?小米MIUI9第三批测试又来了,曝光三大新功能
新机不是小米6? 何来惊艳众人
支持jesd204b协议高速DAC芯片AD9144-FMC-EBZ
2017千元级热门CPU比拼,谁才是强者
双十一买哪一款蓝牙耳机好?高品质蓝牙耳机排行榜
汽车电子中小型晶振的开发
元创猫彭敏:不要让你对人工智能教育的偏见和误解,耽误孩子的未来
基于AW3208的手机快速充电方案
ESP32开源示波器设计综述
空间站系统的操作界面首次亮相
配网行波型故障预警定位装置:让电力系统更加安全可靠
广和通Cat 1模组赋能智慧网关无线联网
多晶硅准入新门槛即将出台
Bigtera(大兆科技)推出全新版本 VirtualStor™ 7.0软件定义存储产品
【解决方案】安科瑞消防应急照明和疏散指示系统在学校的应用
浅谈控制系统中PLC的合理选择
智能电网背后的危机事件_如何未雨绸缪?