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

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

3天内不再提示

基于JESD204B的LMK04821芯片项目开发

FPGA技术江湖 来源:FPGA技术江湖 2023-01-05 11:03 次阅读

一、LMK04821功能介绍

LMK0482X系列是德州仪器推出的高性能时钟调节芯片系列,该芯片目前有三种,分别为LMK04821、LMK04826以及LMK04828,该系列芯片都支持最新的JESD204B协议。本次调试主要以LMK04821为例,对调试过程中出现的一些问题进行总结说明。

其性能描述如下:

支持JESD204B;

超低的时钟抖动和噪声;

能够同时输出14路差分时钟:

<1>. 7对可作为JESD204B的SYSREF时钟;

<2>.最大输出频率可以达到3.1GHz;

<3>. 输出差分时钟的电平标准可编程选择:LVPECL、LVDS、HSDS、以及LCPECL;

双PLL结构;

PLL2的VCO分频系数为1-32;

输出时钟精确的数字延时、模拟延时、以及动态延时;

多工作模式:双PLL、单PLL以及时钟分发模式;

LMK0482X系列的这三款芯片不同之处在于支持不同的VCO,如下图图1所示:

d8737942-8c40-11ed-bfe3-dac502259ad0.png

图1

LMK04821芯片的应用示意图如下图图2所示:

d87f3bce-8c40-11ed-bfe3-dac502259ad0.png

图2

LMK0482X的管脚分布定义图如下图3所示,熟知每个管脚的功能很重要,逐一介绍:

d889f60e-8c40-11ed-bfe3-dac502259ad0.png

图3

PIN1、2:第0路Device CLK差分输出;

PIN3、4:第1路SYSREF/Device CLK差分输出;

PIN5:该芯片的复位输入或者是通用GPIO;

PIN6:该芯片的时钟同步输入端口或者是连续SYSREF CLK请求输入端口;

PIN7、8、9:没用,悬空即可;

PIN10:电源输入;

PIN11:LDO旁路电容,外接10uf到地;

PIN12:LDO旁路电容,外接0.1uf到地;

PIN13、14:第3路SYSREF/Device CLK差分输出;

PIN15、16:第2路Device CLK差分输出;

PIN17:电源输入;

PIN18:芯片的SPI配置CS信号

PIN19:芯片的SPI配置SCK信号;

PIN20:芯片的SPI配置SDIO信号;

PIN21:电源输入;

PIN22、23:第5路SYSREF/Device CLK差分输出;

PIN24、25:第4路Device CLK差分输出;

PIN26:电源输入;

PIN27、28:第6路Device CLK差分输出;

PIN29、30:第7路SYSREF/Device CLK差分输出;

PIN31:可编程的状态监测I/O管脚;

PIN32:PLL1的电荷泵输出;

PIN33:电源输入;

PIN34、35:PLL1的参考时钟输入1、零延迟模式下的外部反馈时钟输入、外部VCO输入;

PIN36:电源输入;

PIN37、38:PLL1的参考时钟输入0;

PIN39:电源输入;

PIN40、41:反馈到PLL1,参考输入到PLL2。AC耦合

PIN42:电源输入;

PIN43、44:PLL2的参考时钟输入、PLL1的反馈时钟输入;

PIN45:电源输入;

PIN46:PLL2的电荷泵输出;

PIN47:电源输入;

PIN48:可编程的状态监测I/O管脚;

PIN49、50:第9路SYSREF/Device CLK差分输出;

PIN51、52:第8路Device CLK差分输出;

PIN53:电源输入;

PIN54、55:第10路Device CLK差分输出;

PIN56、57:第11路SYSREF/Device CLK差分输出;

PIN58:可编程的状态监测I/O管脚;

PIN59:可编程的状态监测I/O管脚;

PIN60、61:第13路SYSREF/Device CLK差分输出;

PIN62、63:第12路Device CLK差分输出;

PIN64:电源输入;

DAP :散热盘,接地;

二、LMK04821使用步骤

2.1 硬件电路检查

2.1.1 芯片供电是否正常,是否符合器工作的条件,该步骤直接决定芯片能否正常工作,测试点参考下图;

d8aaf534-8c40-11ed-bfe3-dac502259ad0.png

图4

2.1.2芯片的参考时钟输入是否正常,借助示波器进行检查,CLKin0端的时钟由外部信号源提供,OSCin端的时钟由板上晶振提供,测量进入AD之前时钟是否正常;

d8c3ac8c-8c40-11ed-bfe3-dac502259ad0.png

图5

2.2 寄存器配置

LMK04821的配置采用SPI方式,其配置规则通过阅读数据手册提取关键的知识点,如下:

2.2.1写操作时,CS信号为低电平时,SDIO的数据在SCK上升沿写进芯片,写数据格式为1bit的读写控制位+2bit的0+13bit地址+8bit数据。

2.2.2读操作时,先写入1bit的读写控制位+2bit的0+13bit地址,然后在接下来SCK的上升沿获取8bit数据;

时序图如下图6所示:

d8d031fa-8c40-11ed-bfe3-dac502259ad0.png

图6

2.2.3 进行SPI时序编写时,务必按照图七的时序要求,除此之外,在FPGA内设计SPI代码时一定要可读可写,这样一来在FPGA配置寄存器时就能够知道每个寄存器内部配置的值是否正确,这一步是控制整个芯片工作时,FPGA要完成的第一步工作。

d8ed5c1c-8c40-11ed-bfe3-dac502259ad0.png

图7

2.2.4 LMK04821的双PLL级联系统的介绍:

该系列芯片功能非常灵活,一般JESD204B系统的双PLL级联应用最为经典,但是对于传统的应用来说,同样适用。需要注意的是Device CLK不提供单端输出,只有OSCout管脚可以提供LVCMOS单端输出。另外,除了双PLL应用模式,亦可以配置单PLL或者时钟分发模式。

LMK0482X系列芯片的双PLL结构保证了在很宽的输出频率范围内还可以输出最低抖动的时钟。第一级PLL(PLL1)被外部的参考时钟驱动,第二级PLL(PLL2)由VCXO或者可调晶振提供高精度、低噪声的二级参考时钟。经过这两级PLL,输出时钟的精度将会大大提高。

LMK0482X系列芯片共输出7对JESD204B DeviceCLK和7对SYSREF CLK,其中每个Device CLK对应一个SYSREF CLK。对于那些非JESD204B的应用,SYSREF CLK同样可以编程为Device CLK。

PLL1的输入参考时钟包括管脚CLKin0,CLKin1以及CLKin2,任选一个作为时钟输入即可,选择的规则由配置寄存器参数决定。

VCXO/Crystal 缓存输出,LMK0482X系列芯片提供OSCout输出,该输出其实就是PLL1的反馈输入,也是PLL2的参考时钟输入,芯片的该功能其实就是为了在其编程之前可以提供一个时钟给控制器工作,控制器编程再配置LMK0482X。OSCout输出可以为LVDS、LVPECL以及LVMOS电平。

LMK0482X具有频率保持的功能,当外部参考时钟丢失后,输出频率还能保持最小的漂移,直到外部参考时钟恢复。

7路Device CLK都可以分别的分频,分频系数为1~32。

7路SYSREF CLK统一分频,分频系数为8~8191。

Device CLK具有延迟的功能,其包括模拟延迟和数字延迟。模拟延迟是以25ps为单位的时钟延迟模块,使用该模块本身也会带来500ps的延时。数字延时范围为4~32 VCO时钟周期,每一个延迟单元的大小为0.5 VCO周期。需要注意的是延迟的功能必须在同步使能后才起作用。

SYSREF CLK同样具有模拟核数字延迟。模拟延迟的最小单位为150ps。数字延迟的范围为1.5~11VCO,同样每一个延迟单元的大小为0.5 VCO周期。

14路时钟的输出不仅在电平标准上可编程,在输出的幅度方面也可编程。

要使时钟的数字延时起作用,管脚SYNC必须给一个脉冲,在脉冲的上升沿所有的时钟同步。

LMK04821提供了几个状态管脚用来供用户监测芯片内部的状态或者作为输入端口来响应用户的需求,具体的功能在寄存器配置说明里介绍。

2.2.5 功能框图

d9078e20-8c40-11ed-bfe3-dac502259ad0.png

图8

2.2.6 寄存配置顺序

在进行LMK04821寄存器配置的时候,手册里给了一个推荐的顺序,如下图图9所示:

d917fd8c-8c40-11ed-bfe3-dac502259ad0.png

图9

在辅助软件TICS Pro中,生成的寄存器顺序也是严格按照手册中进行配置的。

但是在实际运用中,按照该寄存器配置顺序,时钟输出端并没有正确的时钟输出。实际运用中,将寄存器顺序按照如下顺序进行配置:

1、0X000配置两次,先进行复位,然后0X000再配置00,无操作;

2、然后紧接着从0X100~0X145;

3、0X171~0X17D;

4、0X146~0X16E;

5、0X143(90)、0X149(00)、0X143(两次B0、90)、0X144(FF)、0X143(两次10、11)、0X139(03)、0X002(00);固定数值;尽量不要改变,具体为什么要这样进行配置,对应数据手册进行查阅即可。

注意:在实际应用中,目前为止该寄存器顺序是唯一能够正确产生时钟的顺序,可以参考软件给的寄存器数据,尽量不要改变配置寄存器的顺序。部分寄存器在设计中没有进行配置,比如一些只读寄存器,IC信息相关的寄存器,reback相关的寄存器都没有进行配置,实际操作中无伤大雅,可以不用配置。但是在SPI配置寄存器时,如果要检验寄存器读写是否成功时,可以将这些寄存器进行读操作,确保SPI操作正常。

2.2.7寄存器对应数据

在此之前,确定寄存器配置顺序之后,利用辅助软件TICS Pro软件产生对应的参数,按照6中所示的寄存器顺序进行写操作。软件使用中重要参数的产生以及对应在软件中如何设置见下图图10;

d936cd02-8c40-11ed-bfe3-dac502259ad0.png

图10

一定要熟练掌握软件运用,明确在产生想要的时钟时,如何进行软件操作,得到相应的系数,软件中每个点如何进行配合;参数之间是如何对应的,建议配合数据手册进行对比,能够事半功倍。

标记1选择CLKin0作为参考时钟输入;硬件环境值在CLKin0端有时钟输入;

标记2选择PLL1,MUX是可以进行选择的,不同的选择,对应寄存器要配置的数值不同;

标记3处选择相应的DIV数值,得到需要的时钟100M;

标记4 CPout1直接连接到外部晶振,目的是,当参考时钟丢失时,延时功能可以将PLL1的调谐电压固定在VCXO或者可调谐晶振上,使得在外部参考时钟丢失时,输出的时钟频率的偏移最小,直到外部时钟恢复。

标记5 OSCin,PLL1的反馈输入,PLL2的参考时钟输入,实际调试中,发现OSCin如果没有输入,输出端就没有时钟输出,没有CLKin0输入,输出时钟依然正常输出;

标记6、7、8、9、10、11、12,这几处都和PLL2 VCO Frequency有关系,手册中显示LMK04821在使用VCO1时,PLL2频率要求在2920~3080MHz之间。

超出范围,软件会报红出错。这几处设置其实就是简单的将OSCin的时钟进行先倍频后分频的一个操作;比如,实际中需要DCLKout输出150M、75M时钟,再复合要求范围的情况下,找到一个合适的公倍数,例子中为1500M,这样一来,既能得到150M的DCLKoutX的输出,又能得到75M的时钟输出;

除此之外,时钟输出设置如下图图11所示:

d9468ae4-8c40-11ed-bfe3-dac502259ad0.png

图11

标记1,公倍数;

标记2,PLL1的反馈输入,PLL2的参考输入,实际运用中,PLL2的参考输入为OSCin;

标记3,分频系数,1500M十分频150M;

标记4,选择PD,意味着该通道不输出,处于关闭状态;

标记5,DCLK输出频率,可在对应位置直接填入想要的数值。注意,最好是公倍数的整数分频后的值,不然,软件会自动产生一个和填入值最相近的数值;

标记6,SCLK输出端口,SCLK不能单独分频,7个通道只能统一进行分频;具体设置如下图图12所示:

d96dfb10-8c40-11ed-bfe3-dac502259ad0.png

图12

注意:在设定寄存器参数时,操作软件时,会在左下方窗口标记2处显示对应的寄存器以及数值,便于我们很迅速的在数据手册中查到该数值进行了哪些配置;

软件配置时,最重要的几个参数以及对应的寄存器如下:

Doubler,对应相关寄存器0X162;

R Divider,对应寄存器0X160、0X161;

NDivider,对应寄存器0X168;

VCO,对应寄存器0X138;

DCLKoutX_DIV, 对应寄存器0X100、0X108、0X110、0X1180、0X120、0X128、0X130;

SYSREFDIV,对应寄存器0X13A、0X13B;

注意;有些参数需要多个寄存器共同配合使用;另外的寄存器在软件配置过程中会生成,按照具体的设计要求进行软件操作配置,导出参数之后,在对应的寄存器中进行更改即可。

三、运用结果

3.1 时钟输出结果

在对LMK04821芯片进行正确配置之后,时钟能够正常输出想要的时钟频率,利用示波器进行测量,都能够直接观测到时钟有输出;程序中更改不同的分频系数,也能够在输出端得到相应的时钟输出。

3.2 待解决问题

考虑到系统中要求时钟同源的问题,在对CLKin0参考输入时钟、DCLK、SCLK通过示波器进行起始相位对比观测,发现通过倍频分频后,时钟起始相位存在大概1/4个周期偏差,多次测试,每次都有细微的偏差。

其中,DCLK与SCLK如果输出频率相同时,相位差通过观察,有细微偏差,考虑到示波器使用过程中,探头不稳定原因,暂定相位偏差为0;后期有更好的测试方法时,再进行确认。

阿Q的第一篇项目开发经验分享就到这里结束了,万事开头难,今天已经开启了第一篇,后续有时间还会继续给各位大侠带来更多的项目开发经验分享。各位大侠,有缘再见,祝一切安好!

审核编辑:汤梓红

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

    关注

    1601

    文章

    21296

    浏览量

    593083
  • 德州仪器
    +关注

    关注

    123

    文章

    1620

    浏览量

    139861
  • 时钟
    +关注

    关注

    10

    文章

    1479

    浏览量

    130303
  • JESD204B
    +关注

    关注

    5

    文章

    70

    浏览量

    18988

原文标题:FPGA项目开发精选(一):基于JESD204B的LMK04821芯片项目开发

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

收藏 人收藏

    评论

    相关推荐

    FPGA开发经验分享:基于JESD204BLMK04821芯片项目开发

    今天给各位大侠带来一篇项目开发经验分享基于JESD204BLMK04821芯片项目
    发表于 04-21 09:33 2861次阅读
    FPGA<b class='flag-5'>开发</b>经验分享:基于<b class='flag-5'>JESD204B</b>的<b class='flag-5'>LMK04821</b><b class='flag-5'>芯片</b><b class='flag-5'>项目</b><b class='flag-5'>开发</b>

    时序至关重要:怎么提高JESD204B时钟方案的性能

    中,笔者将谈论抖动合成器与清除器的不同系统参考信号(SYSREF)模式,以及如何用它们来最大限度地提高JESD204B时钟方案的性能。 LMK04821系列器件为该话题提供了很好的范例研究素材,因为它们
    发表于 09-06 15:10

    JESD204B的系统级优势

    JESD204B产品组合的更多详情,其中包括 12 位、4GSPS ADC12J4000 模数转换器 (ADC);16 位、双通道、250MSPS ADS42JB69 ADC;16 位、4 通道、2.5GSPS DAC38J84 数模转换器 (DAC) 以及 LMK04
    发表于 09-18 11:29

    JESD204B串行接口时钟的优势

    正常工作。2.JESD204B 时钟的实现2.1 专用的JESD204B 时钟芯片 LMK04820 系列的时钟芯片是一款专用的
    发表于 06-19 05:00

    JESD204B是什么工作原理?控制字符是什么?

    JESD204B的工作原理JESD204B的控制字符
    发表于 04-06 06:01

    如何去实现JESD204B时钟?

    JESD204B数模转换器的时钟规范是什么?JESD204B数模转换器有哪些优势?如何去实现JESD204B时钟?
    发表于 05-18 06:06

    如何采用系统参考模式设计JESD204B时钟

    LMK04821系列器件为该话题提供了很好的范例研究素材,因为它们是高性能的双环路抖动清除器,可在具有器件和SYSREF时钟的子类1时钟方案里驱动多达七个JESD204B转换器或逻辑器件。图1是典型
    发表于 11-18 06:36

    构建JESD204B链路的步骤

    在上篇博客《理解JESD204B协议》中,我对 JESD204B 协议中的三个状态进行了概括性的功能介绍。这三个状态对于在链路的 TX 和 RX 之间构建有效数据链路非常重要,它们是:代码组同步
    发表于 11-21 07:18

    JESD204B的优势

    如果您有接触使用 FPGA 的高速数据采集设计,没准听说过新术语“JESD204B”。我在工作中看到过很多工程师询问有关 JESD204B 接口的信息以及它如何同 FPGA 协作。他们特别感兴趣
    发表于 11-23 06:35

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

    大侠好,阿Q来也,今天是第二次和各位见面,请各位大侠多多关照。今天给各位大侠带来一篇项目开发经验分享“基于JESD204BLMK04821芯片
    发表于 04-20 16:59

    采用系统参考模式设计JESD204B时钟

    在本文中,笔者将谈论抖动合成器与清除器的不同系统参考信号(SYSREF)模式,以及如何用它们来最大限度地提高JESD204B时钟方案的性能。 LMK04821系列器件为该话题提供了很好的范例研究素材
    发表于 11-17 10:31 3026次阅读
    采用系统参考模式设计<b class='flag-5'>JESD204B</b>时钟

    基于JESD204BLMK04821芯片项目详解

    大侠好,阿Q来也,今天是第二次和各位见面,请各位大侠多多关照。今天给各位大侠带来一篇项目开发经验分享“基于JESD204BLMK04821芯片
    的头像 发表于 04-04 17:08 1492次阅读
    基于<b class='flag-5'>JESD204B</b>的<b class='flag-5'>LMK04821</b><b class='flag-5'>芯片</b><b class='flag-5'>项目</b>详解

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

    大侠好,阿Q来也,今天是第二次和各位见面,请各位大侠多多关照。今天给各位大侠带来一篇项目开发经验分享“基于JESD204BLMK04821芯片
    的头像 发表于 10-08 10:18 2660次阅读
    <b class='flag-5'>204</b>B实战应用-<b class='flag-5'>LMK04821</b>代码详解(二)

    LMK04821芯片项目代码详解

    大侠好,阿Q来也,今天是第二次和各位见面,请各位大侠多多关照。今天给各位大侠带来一篇项目开发经验分享“基于JESD204BLMK04821芯片
    的头像 发表于 10-08 17:51 2048次阅读
    <b class='flag-5'>LMK04821</b><b class='flag-5'>芯片</b><b class='flag-5'>项目</b>代码详解

    采用系统参考模式设计JESD 204B时钟

      LMK04821系列器件为该话题提供了很好的范例研究素材,因为它们是高性能的双环路抖动清除器,可在具有器件和SYSREF时钟的子类1时钟方案里驱动多达七个JESD204B转换器或逻辑器件。图1是典型JESD204B系统(以
    的头像 发表于 04-18 09:25 969次阅读
    采用系统参考模式设计<b class='flag-5'>JESD</b> <b class='flag-5'>204</b>B时钟