支持jesd204b协议高速DAC芯片AD9144-FMC-EBZ配置笔记 明德扬官网明德扬论坛明德扬淘宝明德扬B站FPGA教程明德扬邮箱lanlumeimdy-edu.com一、背景AD9144是一款支持jesd204b协议高速DAC芯片。AD9144-FMC-EBZ是基于AD9144的评估板(Evaluation Board)它是主要由AD9144,AD9516,与PIC16F单片机组成的系统。工程上使用AD9144具有时钟时序要求很高和寄存器配置复杂的难点。配置AD9144-FMC-EBZ有两种途径1、通过FPGA母板经由FMC接口使用SPI配置寄存器2、通过ADI提供的软件工具配合母板(ADS7)来配置寄存器如图所示官方的指导说明链接https://wiki.analog.com/resources/eval/dpg/ad9144-fmc-ebz遇到问题我们在尝试第一种方法的时候遇到了SPI寄存器写不进的情况和读写不一致的情况。而第二种方法则需要ADS7用作母板。二、调试在明德扬潘老师的帮助下完成了以KC705作为母板正确配置AD9144并输出62.5MHz正弦波。整个流程需要先在KC705上运行提供的HDL工程随后进入软件工具配置流程。这里的HDL工程主要完成的是Jesd204发送端的配置与正弦余弦信号的输出。另外这里的软件工具配置流程既使用ADI官方提供的工具对AD9144和AD9516分别进行配置。在调试开始前硬件链接如下图所示1、AD9516寄存器配置获得AD9516的作用是对输入时钟分频为AD9144分别提供:sysref3.91M和refclk125M。这里使用了AD9516-Evaluation-Software完成配置。软件下载链接https://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/eval-ad9516-4.html#eb-relatedsoftware在安装结束后打开软件并选择正确的型号这里选AD9516-1分别按下图所示进行配置输入时钟来自KC705设置为2500分频系数如图设置最后得到两组频率为120M和3.9063M的时钟点击左下角的橙色框(RGISTER W/R)中的WRITE。点击“file”点击“Save Setup”,导出“stp”文件如下图所示。打开导出的.stp文件如图这个文件记录了寄存器地址与对应的值将于后续步骤导入。2、AD9144AD9516寄存器配置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寻找“AD9144AD9135AD9136 SPI”并打开软件界面如图所示G、在上方框中点击“read all registers”然后点击“save registers to file”得到“.csv”文件右键将其用记事本打开如图所示找到AD9516芯片开头的寄存器区域将之前通过AD9516 Evaluation Software得到的stp文件中的寄存器值添加进.csv文件中并保存。如图所示第一列是AD9144/AD9516的芯片第二列是对应芯片的寄存器地址第三列是寄存器对应的值将AD9516所有寄存器的值添加进来并保存。H、打开“AD9144AD9135AD9136 SPI”软件并选择“restore registers from file”将上一步中修改保存好的.csv文件导入。I、将vivado中的工程bit流文件烧录到板子上通过ila抓取并观察tx_sync信号发现信号持续拉高返回AD9144AD9135AD9136 SPI软件read all registers观察如图区域如果图中所示四个寄存器值都为0Fvivado 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中的寄存器地址值填入更据关键参数算出来的值。