明德扬吴老师 发表于 2020-2-22 20:11:08

支持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)来配置寄存器,如图所示:http://www.mdy-edu.com/uploads/allimg/200219/1-200219110019629.png

官方的指导说明链接:https://wiki.analog.com/resources/eval/dpg/ad9144-fmc-ebz
遇到问题:我们在尝试第一种方法的时候,遇到了SPI寄存器写不进的情况和读写不一致的情况。而第二种方法则需要ADS7用作母板。
二、调试
       在明德扬潘老师的帮助下,完成了以KC705作为母板,正确配置AD9144,并输出62.5MHz正弦波。整个流程需要先在KC705上运行提供的HDL工程,随后进入软件工具配置流程。这里的HDL工程主要完成的是:Jesd204发送端的配置与正弦余弦信号的输出。另外,这里的软件工具配置流程既使用ADI官方提供的工具对AD9144和AD9516分别进行配置。在调试开始前,硬件链接如下图所示:http://www.mdy-edu.com/uploads/allimg/200219/1-200219110033455.png1、AD9516寄存器配置获得AD9516的作用是对输入时钟分频,为AD9144分别提供:sysref(3.91M),和refclk(125M)。这里使用了AD9516-Evaluation-Software完成配置。软件下载链接:https://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/eval-ad9516-4.html#eb-relatedsoftware
http://www.mdy-edu.com/uploads/allimg/200219/1-20021911004B12.png在安装结束后,打开软件并选择正确的型号,这里选AD9516-1 http://www.mdy-edu.com/uploads/allimg/200219/1-20021911005G63.png分别按下图所示进行配置:输入时钟(来自KC705)设置为2500;分频系数如图设置:最后得到两组频率为120M和3.9063M的时钟;点击左下角的橙色框(RGISTER W/R)中的WRITE。 http://www.mdy-edu.com/uploads/allimg/200219/1-200219110111305.png
点击“file”,点击“Save Setup”,导出“stp”文件,如下图所示。http://www.mdy-edu.com/uploads/allimg/200219/1-200219110132X5.png
打开导出的.stp文件,如图:这个文件记录了寄存器地址与对应的值,将于后续步骤导入。http://www.mdy-edu.com/uploads/allimg/200219/1-20021911014A00.png2、AD9144&AD9516寄存器配置:
A、首先到AD公司官网搜索DAC Software Suite和Analysis Control Evaluation软件,下载并安装;B、打开已经安装好的ACE软件,界面如下图所示。在硬件连接正确的情况下,图中红圈会检测到所连接的硬件板卡,点击图中绿圈的LED状按钮,AD9144-FMC-EBZ板卡上的蓝色LED灯会随之闪烁,说明连接成功。
http://www.mdy-edu.com/uploads/allimg/200219/1-200219110543531.pngC、双击打开“AD9144-FMC-EBZ”板卡。在“initial configuration”界面中按如图所示进行设置,点击“summary”并“apply”,双击右侧红色图框中的AD9144芯片。http://www.mdy-edu.com/uploads/allimg/200219/1-20021911055W45.png
D、在打开的界面中按图中配置设置DAC calibration,选择“DAC3 DAC2”并点击“calibrate”。http://www.mdy-edu.com/uploads/allimg/200219/1-2002191106204I.png
E、点击上图右下角的“Proceed to memory map”,按照项目所需配置好AD9144相关的寄存器表的值,点击右上apply selected将对应的寄存器值写入AD9144芯片。http://www.mdy-edu.com/uploads/allimg/200219/1-200219110635c1.png
F、在电脑开始菜单>Analog Devices寻找“AD9144&AD9135&AD9136 SPI”并打开,软件界面如图所示:http://www.mdy-edu.com/uploads/allimg/200219/1-20021911064a47.png
G、在上方框中点击“read all registers”,然后点击“save registers to file”得到“.csv”文件,右键将其用记事本打开,如图所示,找到AD9516芯片开头的寄存器区域,将之前通过AD9516 Evaluation Software得到的stp文件中的寄存器值添加进.csv文件中并保存。http://www.mdy-edu.com/uploads/allimg/200219/1-200219110F4R0.png如图所示,第一列是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板卡输出可观测到波形输出。http://www.mdy-edu.com/uploads/allimg/200219/1-200219110GR92.pnghttp://www.mdy-edu.com/uploads/allimg/200219/1-200219110J1151.png

三、调试过程中遭遇问题1.SPI配置失败问题?http://www.mdy-edu.com/uploads/allimg/200219/1-200219110KOW.png
2.AXI-Lite的参数设置?通过在Analysis Control Evaluation软件中读取AD9144寄存器表值,查询0x453-0x45A寄存器值,得到关键参数L,SCR,F,K,M,N,N’,S,CF,HD等的值。http://www.mdy-edu.com/uploads/allimg/200219/1-200219110Pc49.png
通过文档PG066 P27-P28中所示的值,计算出AXI协议所需要的每个寄存器地址的值。填入到vivado工程模块中的AXI协议部分。
http://www.mdy-edu.com/uploads/allimg/200219/1-200219110R0209.pnghttp://www.mdy-edu.com/uploads/allimg/200219/1-200219110S1A0.png
Vivado工程中的AXI协议部分:地址填入PG066 P27-P28中的寄存器地址,值填入更据关键参数算出来的值。http://www.mdy-edu.com/uploads/allimg/200219/1-200219110T4C7.png
以上就是AD9144的调试心得分享,持续关注明德扬可了解更多,也可加入明德扬QQ群进行深入讨论。
页: [1]
查看完整版本: 支持jesd204b协议高速DAC芯片AD9144-FMC-EBZ配置笔记