This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AFE8000EVM:启动、具有 VPK120 FPGA 板

Guru**** 2315160 points
Other Parts Discussed in Thread: AFE8000EVM, LMK04828, AFE8000
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/rf-microwave-group/rf-microwave/f/rf-microwave-forum/1296242/afe8000evm-bringup-with-vpk120-fpga-board

器件型号:AFE8000EVM
主题中讨论的其他器件: LMK04828AFE8000

我将配置 AFE8000EVM 板、与 Xilinx 的 VPK120板匹配。

使用您提供的参考设计合成 FPGA 似乎可以起作用。

但是、当我 使用 Vivado 将映像下载到 FPGA 时、会看到以下消息:

  

我认为映像加载正确-我添加了一些调试逻辑、这似乎没问题、但我不知道为什么会看到这些错误消息。

进一步调试表明 FPGA 没有从 AFE8000EVM 接收时钟、而是保持在复位状态。

看看  AFE8000EVM 板、当我尝试连接到 Latte 时、在引导时会看到以下内容:

该消息表明它可以看到 EVM 卡、但无法看到 FPGA。 我不确定这是否是配置问题导致的。

在 Latte 中按"Continue"后、主 GUI 中就会看到以下消息:

控制台日志的有趣部分如下:

您可以在这里提供的任何帮助都将非常有帮助。

除此之外、我还有几个具体的问题:

所需的配置顺序是什么。  

在运行 Latte 之前、是否需要对 FPGA 成功编程? 如果是、缺少时钟是否存在问题?

或者、在配置 FPGA 之前、我是否需要访问 Latte 以使其能够对 LMK04828进行编程?

您能否确认我需要为 LMK_CLKIN 提供什么时钟频率? 在随附的文档中  

发行版(RefDesign-Doc.pptx)中有对968MHz 的引用、但 AFE8000EVMBringupGuide.pptx 中建议使用10MHz。

我们认为10MHz 正确、但您能确认吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Philip:

    您在 Vivado 中看到的错误可能与我在下面提到的第一次主板更改有关。 请检查此更改是否已完成。  

    Latte 软件中的 FPGA 复位错误是预料之中的、可以忽略不计。

    查看 EVM 后、我注意到为了使参考设计正常工作、我们对电路板进行了两次修改。 您能否检查一下是否在电路板上做了这些?

    1.应移除 R487。  

    2.不能连接来自 LMK 的其中一个 JESD 时钟、应对电阻 R318和 R321进行以下更改

    正确的启动顺序是首先对 AFE EVM 上的 LMK 进行编程、然后对 FPGA 进行编程。 在加载 FPGA 固件之前、FPGA 的时钟应保持稳定。  

    正确的时钟是968MHz、如设置文档中所述。 请注意、BringupGuide 仅用于示例配置、不应用于此参考设计。 应遵循"RefDesign-Doc.pptx"文档第14页中概述的步骤。

    此致、

    大卫·查帕罗

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好。

    非常感谢您的答复。 现在、我已经取得了重大进展。 但我注意到 RefDesign-Doc.pptx 似乎不正确。

    第14页说明:

    对具有位文件的 FPGA 进行编程

    2.在 Vivado 中获取 Vivado_hw_scripts.tcl

       这将设置所有 VIO 探针名称并激活所有复位

    通过 AFE80xxCat GUI 对 EVM 时钟进行编程

       浏览并加载‘AFE8000_32Gbps.xlsx"

       2.进入 GUI 脚本模式,按 Ctrl+Shift+S,然后运行 ConfigLmk.py。

    但我认为第1步-对 FPGA 进行编程应该遵循第2步和第3步。

    不过、我还没有完全完成该过程。 我在 Latte 日志的末尾看到了以下内容:

    AFE MCU 唤醒完成并加载补丁。

    PLL 被锁定

    AFE PLL 已配置。

    已配置 AFE 串行器/解串器。

    配置了 AFE 数字链。

    已配置 AFE TX 模拟。

    已配置 AFE RX 模拟。

    已配置 AFE FB 模拟。

    配置了 AFE JESD。

    已配置 AFE AGC。

    AFE PAP 和报警配置。

    已配置 AFE GPIO。

    Sysref 按预期读取

    将 RBD 设置为:11

    将 RBD 设置为:11

    将 RBD 设置为:11

    ######################## 设备 DAC JESD-RX 0链路状态#######

    逗号对齐锁定区域0:错误;请检查发送器是否正在发送数据且眼图良好。

    逗号对齐锁定区域1:错误;请检查发送器是否正在发送数据且眼图良好。

    逗号对齐锁定区域2:错误;请检查发送器是否正在发送数据和眼图是否正常。

    逗号对齐锁定区域3:错误;请检查发送器是否正在发送数据且眼图良好。

    CS State TX0: 0b00000000。 预计为0b10101010

    BUF STATE TX0: 0b00000000 . 预计为0b11111111

    无法为设备 RX 建立链路:0

    ##################################################

    ######################## 设备 DAC JESD-RX 1链路状态#######

    逗号对齐锁定区域0:错误;请检查发送器是否正在发送数据且眼图良好。

    逗号对齐锁定区域1:错误;请检查发送器是否正在发送数据且眼图良好。

    逗号对齐锁定区域2:错误;请检查发送器是否正在发送数据和眼图是否正常。

    逗号对齐锁定区域3:错误;请检查发送器是否正在发送数据且眼图良好。

    CS State TX0: 0b00000000。 预计为0b10101010

    BUF STATE TX0: 0b00000000 . 预计为0b11111111

    无法为设备 RX 建立链路:1

    ##################################################

    AFE 配置完成

    #==================== 错误:10,警告:0=================== #

    似乎没有 JESD 链接、FPGA 中的 ILA 包含所有零。

    您还有什么建议吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Philip:

    步骤1-3的顺序正确、不应是您遇到的问题的原因。 需要检查的一点是、在 运行 Config<:mk 脚本后、您是否在运行 ConfigAFE 之前将 MASTER_RESET 和 TX_RESET 设置为非活动状态? 如果 Tx 未完成复位、则 FPGA 不会向 DAC 发送数据、并且您看到的错误可能会发生。  

    此致、

    大卫·查帕罗  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 David:

    我很确定文档中的步骤1-3是错误的。

    如果我按照描述的方式遵循这些错误消息、Vivado 会返回我在原始文章中附加的错误消息(以及弹出窗口)、ILA 和 VIO 窗口不会显示、并且 Vivado_hw_scripts.tcl 脚本会由于 VIO 未正确设置而失败、并出现许多命名问题。

    该文档也不同意您之前的评论:

    "正确的启动顺序是首先在 AFE EVM 上对 LMK 进行编程、然后对 FPGA 进行编程"

    我必须更改顺序才能使 FPGA 完成配置和相关检查。

    我分别向 FPGA 添加了一些调试功能、并将一些信号路由到逻辑分析仪。

    这让我能够看到、

    1) 1) FPGA 发送路径处于活动状态。 我看到 TX 数据在 JESD_IP_INSTRING 中 、TX_START_OF_EMBLOCK 信号偶尔脉动。

    2) 2)在 FPGA 上、没有发现 RX 路径上 JESD 之外的任何活动。 这与 ILA 匹配、始终包含0 (并且我必须手动触发它)

    我已经尝试按照 Latte 用户指南的第7节所述运行 ADC 捕获功能、但该功能似乎有问题。 当我单击"开始"按钮时、它会变为错误、我看到:

    #============ 错误:1、警告:0

    58WraperClass 实例没有属性"printCommentsForDebug"

    没有从捕获器件接收到值

    process.bitFunctions -计算 bitFunctions 块中的错误。 检查是否所有值均正确

    因此、在我看来、AFE8000似乎没有正确配置/供电/计时。 FPGA 认为它正在愉快地进行传输、但 ADC 上(显然)什么都没有。 或者有某个东西、但我无法正确捕获它。 同样、FPGA 的 RX 侧也不会发生任何情况。

    在此、任何建议都很有用。

    我可以尝试做的一件事是从 Latte 读取各种状态寄存器。 我使用什么语法来执行此操作、您是否具有我可以查看的任何特定状态寄存器?

    我注意到、AFE8000_32Gbps.xlsx 电子表格中的 C48单元格如下所示:

    setupParams.fpgaRefClk=242

    是这样吗? 我希望 FPGA 的时钟为484 MHz?  

    (但将其更改为484会阻止 FPGA 配置完成)

    最后、进一步了解后、我可能要启用眼图捕获和运行 JESD 传输层测试模式。 是否受支持?

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 David:

    在我之前的更新之后、我们没有取得太多的额外进展。 虽然 FPGA 似乎正在向 AFE8000传输信息、但两侧都不认为收到任何消息。 没有建立链接,没有数据被国际法协会捕获...

    几个问题:

    1) 1) AFE8000中的各种状态寄存器是否可能存在任何线索? 我们怀疑链路的两端都认为它们正在传输、但两端都未成功实现同步

    2) 2)如果您在 AFE8000中未实现 SYNC、仍可以生成眼图?

    3)我们一直在逻辑分析仪上查看 FPGA 内的内部信号。 其中一个是 TX_SAMPLE_START_OF_emblock、它可能是扩展多块的开始。

    该设计应以32Gbps 的速率运行、 LMFS 配置为 8-16-4-1-0。  根据我们的数学计算、这意味着我们应该每64ns 看到一个 emblock 启动、而是每128ns 看到一个。 如果这在 FPGA 中配置错误、这将解释我们会看到什么。 您同意我们的分析吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Philip:

    在查看设计之后、看起来要遵循的步骤顺序错误。 应首先对 AFE 上的 LMK 进行编程、然后加载 FPGA 位文件。  

    不会发生同步问题、这一点很重要。 您仍可以使用以下命令检查信号完整性。 另一个应检查的问题是通道极性。 提供的配置使用了 VCK190的通道极性、因此如果 VPK120的极性不同、则需要更新此配置。  

    此致、

    大卫·查帕罗

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    谢谢审查,我很高兴我们同意编程顺序。

    可悲的是,改变车道的极性并没有改善事情。

    与此同时、我正在进行一些 Serdes PRBS 测试。

    AFE8000 -> FPGA 在各种 PRBS 模式下正常工作

    FPGA -> AFE8000[在环回中]-> FPGA 工作正常

    FPGA->AFE8000不起作用。 错误计数器向上缩放并足够快地绕回、以至于没有两次读取相互靠近。 当我禁用 RxPrbs 校验器时、错误计数停止递增、但是用于清除错误计数器的 cafe 函数似乎没有任何影响。

    一切都很神秘。  

    值得一提的是、我必须为242MHz 的所有功能设置时钟、而不是为484MHz 设置时钟、这可能是由于报告的 FPGA 内存在时序错误。