Vivado JESD204B与AD9162建立通信实战总结

一、FPGA与AD9162的JESD204B接口

        FPGA作为JESD204B接口的发送端,AD9162作为JESD204B接口的接收端。FPGA和AD9162的device clk、SYSREF由同源时钟芯片产生。其中,FPGA和AD9162的divice clk时钟不同,并且FPGA的decive clk等同于JESD204B IP的core clk。如图,为JESD204B接口建立链接的整个过程。

1.相关术语:

L :lane数量。 

F:每条lane每帧的字节数。

K:每个多帧的包含的帧数量。

M:(converter)转换器数量。

S:每个转换器每帧的样本数量。

N:转换器分辨率。

NP(N'):每个样本的总bit数。

LaneRate:lane速率。

ByteRate:字节速率。

FrameRate:帧速率。

Multi_FrameRate:多帧速率。

device clk:设备时钟。

SYSREF:确定性延时参考钟。

2.FPGA和AD9162配置:(DAC采样率2.4GHz)

  1. DAC decode mode:mix mode
  2. Interpolation mode:1x(bypass)
  3. L=8,M=1,F=1,S=4,K=32,N=16,NP(N')=16。
  4. LaneRate=20*FDAC*(M/L)=20*2.4G*(1/8)=6Gbps.
  5. ByteRate = LaneRate/10=600M
  6. FrameRate = ByteRate/F=ByteRate/1=600M
  7. Multi_FrameRate=FrameRate /K=FrameRate /32=18.75M
  8. FPAG device clk = FPGA core clk = FPGA GTX reference clk = Lane Rate/40=150M。
  9. SYSREF时钟周期为Multi_FrameRate时钟周期的整倍数分频,做5倍分频。SYSREF =Multi_FrameRate/5=3.75M。

3.JESD204B建立过程

3.1 FPGA和AD9162接收到同源的SYSREF和device clk。

        FPGA在接收到SYSREF和device clk后,开始发送K28.5(BC)码值。

3.2 JESD204B建立链接的第一个阶段:码值识别。

        AD9162捕捉SYSREF的上升沿,开始识别FPGA发送的连续4个K28.5(BC)码值,识别正确后,完成第一个阶段,将SYNC信号在本地多帧时钟(Local Multi Frame Clock,简称LMFC)边沿拉高,发送至FPGA,进入第二阶段——初始化链路序列对齐。

3.3 JESD204B建立链接的第二个阶段:初始化链路序列对齐(Inital Lane Alignment Sequence,简称ILAS)。

        ILAS由四个或更多的多帧组成,每个多帧的最后一个字符是多帧对齐字符/ A/(K.28.3)(7C)。第一、第三和第四个多帧用预定的数据值填充。第二个多帧包含/R/ (K.28.0)(1C), /Q/ (K.28.4)(9C),然后是链接参数对应的数据。在这个过程中,AD9162会缓存多帧,详细后写(有时间再写)在最后一个ILAS的最后一个/A/字符之后,进入第三个阶段——数据流(也就是用户数据阶段)。

3.4 JESD204B建立链接的第三个阶段:数据流阶段。

        在这个阶段,如果用户不在JESD204B接口上发送数据,空闲状态下,每条lane会发送FC00+7C00码值。存在有效数据时,注意有效数据在每条lane上的排列顺序,发送数据即可。

附录:8b10b码表。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/317376.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu 22.04/20.04 安装 SSH

OpenSSH 是安全远程通信的重要工具,提供了一种安全的方式来访问和管理服务器。对于那些计划在 Ubuntu 22.04 Jammy Jellyfish 或其较旧的稳定版本的 Ubuntu 20.04 Focal Fossa 上安装 SSH 并启用它的人来说,了解其功能和优势至关重要。 OpenSSH的主要特…

x-cmd pkg | zellij - 比 tmux 更容易上手的终端多路复用器

简介 zellij 是一个面向开发、运营以及任何热爱终端的人的终端多路复用器 (Terminal Multiplexers),类似于 tmux 和 screen,内置许多功能,允许用户扩展并创建自己的个性化环境。 zellij 的设计理念是不牺牲简单性来换…

Excel·VBA二维数组组合函数的应用实例之概率计算

看到一个视频《李永乐老师的抖音 - 骰子概率问题》,计算投出6个骰子恰好出现1、2、3、4、5、6这6个点数的概率 李永乐老师的计算方法是,第1个概率为1即6/6,第2个不与之前相同的概率为5/6,第3个同理概率为4/6,因此该问…

【WPF.NET开发】WPF中的输入

本文内容 输入 API事件路由处理输入事件文本输入触摸和操作侧重点鼠标位置鼠标捕获命令输入系统和基元素 Windows Presentation Foundation (WPF) 子系统提供了一个功能强大的 API,用于从各种设备(包括鼠标、键盘、触摸和触笔)获取输入。 本…

【随手查】TINA-TI

快速导航 一、如何导入TI中的器件1、如果TI官网直接给了TSM文件2、如果官网没有直接给TSM文件 一、如何导入TI中的器件 1、如果TI官网直接给了TSM文件 以芯片THS4303为例,在TI中搜索元器件THS4303后 然后可以看到,这里直接给出了TINA的模型&#xf…

JAVA对象、List、Map和JSON之间的相互转换

JAVA对象、List、Map和JSON之间的相互转换 1.Java中对象和json互转2.Java中list和json互转3.Java中map和json互转 1.Java中对象和json互转 Object obj new Object(); String objJson JSONObject.toJSONString(obj);//java对象转json Object newObj JSONObject.parseObject(…

用户管理第2节课 -- idea 2023.2 创建表--鱼皮

二、【先确定idea版本&鱼皮是否一致,再决定看不看这行】建表 2.1 idea 里连接数据库,通过可视化建表 2.1.1 清空表中数据 的 命令 truncate 清空 2.1.2 先输入删除表,的命令,再选中这行命令,执行,…

平安人寿新疆分公司:深化消费帮扶,为乡村振兴注入平安力量

为深入贯彻关于“三农”工作的重要论述,落实自治区乡村振兴局的指导部署,近日,平安人寿新疆分公司一把手刘湑杰总一行赴和田县访惠聚驻村工作队走访,慰问了驻村工作队、五老人员及困难村民。 期间,刘湑杰总一行调研了…

解决burpsuite代理8080端口无法勾选以及卸载NI系列软件的方法

使用burpsuite中遇到这样一个问题 默认的8080端口无法绑定 提示端口已经被占用 尝试绑定其他端口,是可行的,也可以正常抓包 但是总感觉每次进来都设置添加一次,有点麻烦不舒服 那么我们来看一下8080端口到底被什么进程占用了 使用如下命令…

实验三-HBase数据库操作

第一步:首先登陆ssh,之前设置了无密码登陆,因此这里不需要密码;再切换目录至/usr/local/hadoop ;再启动hadoop ssh localhost cd /usr/local/hadoop ./sbin/start-dfs.sh 输入命令jps,能看到NameNode,Data…

每日HiveSQL_求解运动员最大连胜的次数_15

1.现需要从运动员比赛结果表中统计每个运动员最大连胜的次数 需求结果: 2.所用到的表和数据 --表创建 CREATE TABLE athlete_results (athlete_id INT,match_time TIMESTAMP,result VARCHAR(10) -- win, lose, draw );--数据装载 INSERT INTO athlete_results …

GBASE南大通用 GCDW阿里云计算巢:自动化部署云原生数据仓库

目前,GBASE南大通用已与阿里云计算巢合作,双方融合各自技术优势,助力企业用户实现云上数据仓库的自动化部署,让用户在云端获取数据仓库服务“更简单”,让用户在云端使用数据仓库服务“更便捷”,满足企业用户…