0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于JESD204B的LMK04821芯片项目详解

电子工程师 来源:FPGA技术江湖 作者:FPGA技术江湖 2021-04-04 17:08 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

大侠好,阿Q来也,今天是第二次和各位见面,请各位大侠多多关照。今天给各位大侠带来一篇项目开发经验分享“基于JESD204B的LMK04821芯片项目开发”第二篇,这是本人实打实的项目开发经验,希望可以给有需要的大侠提供一些参考学习作用。

以后机会多多,慢慢分享一些项目开发以及学习方面的内容,欢迎各位大侠一起切磋交流。

204B实战应用-LMK04821代码详解(二)

一、 SPI协议

通过阅读LMK04821数据手册,我们可以从中知道,可以通过SPI协议对LMK04821进行寄存器的配置工作,进而实现我们设计所需要的功能。

SPI协议部分,咱们可以用3线,或者4线,在本次设计中,使用3线。关于SPI的时序部分,这儿就不再赘述,手册里面都有详细的描述。

221bc45a-8c66-11eb-8b86-12bb97331649.png

图1

二、 SPI寄存器配置模块设计

22e60418-8c66-11eb-8b86-12bb97331649.png

图2

如图2所示,就是配置LMK04821存器的单元,信号定义如下:

1、cfg_clk:系统时钟

2、cfg_rst:系统复位;

3、通过VIO控制的信号,这组信号存在的目的在于方便检测自己配置寄存器的正确性。

vio_cfg_en:配置寄存器使能信号;

vio_cfg_wr:配置寄存器读写使能,0写1读;

vio_cfg_addr:配置的寄存器地址;

vio_cfg_wdata:寄存器中配置的值;

addr_118_data:预留信号,模块中没有用;

我们在配置LMK04821寄存器时,要验证配置寄存器操作是否正确,就要有写有读,在对应的寄存器内写入对应的数值,然后进行读操作,观察正确性。本次设计是在vivado环境下进行设计,通过添加VIO的IP核,来控制读写操作。同时,添加ILA配合VIO来进行读写数据操作的观测。别的开发环境下思路一样。

该组信号仅在回读寄存器时使用,目的是为了验证寄存器读写正确性。

230f8c70-8c66-11eb-8b86-12bb97331649.png

图3

4、lmk_rst:LMK04821复位信号,用于复位LMK04821,直接和LMK04821芯片相连;

5、3线制SPI信号:

lmk_spi_csn:片选;

lmk_spi_sdio:数据;

lmk_spi_clk:时钟;

6、可编程管教:主要和LMK04821内部的PLL相关,本次设计中默认为0;

lmk_clk_sel0 :sel0;

lmk_clk_sel1 :sel1;

三、 SPI数据buffer定义

在本次设计中,SPI配置数据buffer,data_reg为24bit,r_w占1bit,箭头1所指包含W1、W2以及地址位占13bit,具体见SPI时序图;箭头2所指数据位8bit。

236a2c3e-8c66-11eb-8b86-12bb97331649.png

图4

根据图5我们可以知道,要配置LMK04821我们需要配置126个寄存器,这126个寄存器来源参见第一章实战记录。

其中,126个寄存器包含必须要配的寄存器、一些无关紧要的寄存器、以及功能实现所需要的寄存器等,有些寄存器需要配置多次。

23a8522a-8c66-11eb-8b86-12bb97331649.png

图5

四、 SPI时序实现

设计中,我们需要按照顺序配置126个寄存器,也就是说SPI要执行126次。因此,在代码实现过程中,注意寄存器配置的顺序,并且保证每个寄存器都准确无误的配置完成,才能进行下一个寄存器的配置。如果在设计中,要求LMK004821实现不同的功能,当配置的寄存器个数不一致时,在v文件中更改图6所示的参数即可。

23eccebe-8c66-11eb-8b86-12bb97331649.png

图6

下一篇,将详细介绍jesd_204B IP核应用的相关知识,各位大侠,尽请关注。

原文标题:FPGA项目开发:204B实战应用-LMK04821代码详解(二)

文章出处:【微信公众号:FPGA技术江湖】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1655

    文章

    22281

    浏览量

    630050
  • 芯片
    +关注

    关注

    462

    文章

    53528

    浏览量

    458825
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    LMK04828 超低噪声JESD204B兼容时钟抖动清除器技术手册

    LMK0482x 系列是业界性能最高的时钟调节器,支持 JEDEC JESD204B。 PLL2 的 14 个时钟输出可配置为使用器件和 SYSREF 时钟驱动 7 个 JESD204B
    的头像 发表于 09-15 10:10 721次阅读
    <b class='flag-5'>LMK</b>04828 超低噪声<b class='flag-5'>JESD204B</b>兼容时钟抖动清除器技术手册

    LMK0482x系列超低噪声JESD204B兼容时钟抖动清除器技术文档总结

    LMK0482x 系列是业界性能最高的时钟调节器,支持 JEDEC JESD204B。 PLL2 的 14 个时钟输出可配置为使用器件和 SYSREF 时钟驱动 7 个 JESD204B
    的头像 发表于 09-15 10:03 581次阅读
    ‌<b class='flag-5'>LMK</b>0482x系列超低噪声<b class='flag-5'>JESD204B</b>兼容时钟抖动清除器技术文档总结

    LMK04821 超低抖动合成器和抖动清除器技术手册

    LMK0482x 系列是业界性能最高的时钟调节器,支持 JEDEC JESD204B。 PLL2 的 14 个时钟输出可配置为使用器件和 SYSREF 时钟驱动 7 个 JESD204B
    的头像 发表于 09-14 11:07 811次阅读
    <b class='flag-5'>LMK04821</b> 超低抖动合成器和抖动清除器技术手册

    LMK04610 超低噪声和低功耗 JESD204B 兼容时钟抖动清除器技术手册

    LMK0461x 器件系列是业界性能最高、功耗最低的抖动清除器,支持 JESD204B
    的头像 发表于 09-13 09:35 938次阅读
    <b class='flag-5'>LMK</b>04610 超低噪声和低功耗 <b class='flag-5'>JESD204B</b> 兼容时钟抖动清除器技术手册

    LMK04616 超低噪声低功耗JESD204B兼容时钟抖动清除器总结

    LMK0461x 器件系列是业界性能最高、功耗最低的抖动清除器,支持 JESD204B。16 个时钟输出可配置为使用器件和 SYSREF 时钟驱动 8 个 JESD204B 转换器或其他逻辑器件。第 17 个输出可配置为提供来自
    的头像 发表于 09-12 16:50 795次阅读
    <b class='flag-5'>LMK</b>04616 超低噪声低功耗<b class='flag-5'>JESD204B</b>兼容时钟抖动清除器总结

    LMK04828-EP 超低噪声JESD204B兼容时钟抖动清除器总结

    LMK04828-EP 器件是业界性能最高的时钟调理器,支持 JESD204B。 PLL2的14个时钟输出可配置为使用器件和SYSREF时钟驱动7个JESD204B转换器或其他逻辑器件
    的头像 发表于 09-12 16:13 761次阅读
    ‌<b class='flag-5'>LMK</b>04828-EP 超低噪声<b class='flag-5'>JESD204B</b>兼容时钟抖动清除器总结

    LMK04832 超低噪声、3.2 GHz、15 输出、JESD204B 时钟抖动清除器技术手册

    LMK04832是一款超高性能时钟调节器,支持 JEDEC JESD204B,还与 LMK0482x 系列器件引脚兼容。 PLL2的14个时钟输出可配置为使用器件和SYSREF时钟驱动7个
    的头像 发表于 09-12 14:11 783次阅读
    <b class='flag-5'>LMK</b>04832 超低噪声、3.2 GHz、15 输出、<b class='flag-5'>JESD204B</b> 时钟抖动清除器技术手册

    LMK04368-EP 超低噪声JESD204B/C双环路时钟抖动清除器总结

    LMK04368-EP 是一款高性能时钟调节器,支持 JEDEC JESD204B/C,适用于太空应用。 PLL2 的 14 个时钟输出可配置为使用器件和 SYSREF 时钟驱动 7 个
    的头像 发表于 09-11 10:23 584次阅读
    ‌<b class='flag-5'>LMK</b>04368-EP 超低噪声<b class='flag-5'>JESD204B</b>/C双环路时钟抖动清除器总结

    JESD204B生存指南

    实用JESD204B来自全球数据转换器市场份额领导 者的技术信息、提示和建议
    发表于 05-30 16:31 0次下载

    一文详解JESD204B高速接口协议

    JESD204B是逻辑器件和高速ADC/DAC通信的一个串行接口协议,在此之前,ADC/DAC与逻辑器件交互的接口大致分为如下几种。
    的头像 发表于 04-24 15:18 4099次阅读
    一文<b class='flag-5'>详解</b><b class='flag-5'>JESD204B</b>高速接口协议

    LTC6953具有11个输出并支持JESD204B/JESD204C协议的超低抖动、4.5GHz时钟分配器技术手册

    LTC6953 是一款高性能、超低抖动的 JESD204B/JESD204C 时钟分配 IC。LTC6953 的 11 个输出可配置为最多 5 个 JESD204B/JESD204
    的头像 发表于 04-16 14:28 932次阅读
    LTC6953具有11个输出并支持<b class='flag-5'>JESD204B</b>/<b class='flag-5'>JESD204</b>C协议的超低抖动、4.5GHz时钟分配器技术手册

    AD9680 JESD204B接口的不稳定会导致较大的电流波动,怎么解决?

    AD采集芯片为AD9680-1000,时钟芯片为AD9528。当 AD 采样时钟为 500MHz 时,jesd204B (串行线速 = 5 Gbps) 稳定。但是,当 AD 采样时钟为 800MHz
    发表于 04-15 06:43

    使用jesd204b IP核时,无法完成综合,找不到jesd204_0.v

    /Theonesssssssss/Documents/VivadoData/project_1/project_1.srcs/sources_1/new/jesd204b_base.v\":159] * [Synth
    发表于 03-12 22:21

    JESD204B有专用于ADC/DAC和FPGA或ASIC的接口吗?

    请问各位大侠:JESD204B专用于ADC/DAC和FPGA或ASIC的接口吗,该接口同Rapid/PCIe的物理层Serdes接口有何区别,谢谢!
    发表于 02-08 09:10

    JESD204B使用说明

    JESD204B IP核作为接收端时,单独使用,作为发送端时,可以单独使用,也可以配合JESD204b phy使用。 JESD204B通常配合AD或DA使用,替代LVDS,提供更高的通讯速率,抗干扰
    的头像 发表于 12-18 11:31 2429次阅读
    <b class='flag-5'>JESD204B</b>使用说明