高速收发器:PHY层笔记(一)

news/2024/9/16 21:30:24/文章来源:https://www.cnblogs.com/VerweileDoch/p/18316836

笔记:

高速收发器的数据位宽通常有:2,4,8字节等;

PCIE喜欢的位宽是1DW = 4 Byte;

这里对高速收发器的设计为4 Byte也就是32位宽;

GT中PHY层的字对齐和掩码处理

高速收发器的数据流以SOT开始(和MIPI一样),GT的SOT一般就是K码,标志了开始,其也具有EOT,标志了结束;

但与MIPI有很大的不同,GT的K码可能会出现在数据端口的某一个字节上,接收端接收的顺序次序是随机的;

以32位宽违例:

{D0,D1,D2,D3} , SOT可能会出现在任何一个D的位置上;(EOT也需要处理这种情况)

我设置的是32/40的any边界,所以在四个字节的位置上出现都是有可能的。

 

这就意味着类似于MIPI的字对齐操作需要时刻进行;

    //Search_Byte_Offsetreg [3:0]   i;always @(posedge I_CLK or negedge I_Rst_n) beginif(I_Rst_n == 1'b0) beginByte_Offset <= 4'b0;Search_Locking <= 1'b0;end else if(!ReSearch_delay && I_ReSearch_Offset) beginByte_Offset <= 4'b0;Search_Locking <= 1'b0;end else if(Search_Locking == 1'b0) beginfor(i=8'h0;i<8;i=i+1) beginif(Concat_Byte_data[(i+1'b1)+:8] == SoT) beginByte_Offset <= i[2:0] + 1'b1;Search_Locking <= 1'b1;
                endendendend

同时这还涉及掩码信号,其实就是AXI协议中的字节有效(PCIE中也有这种操作);

1.字对齐;

2.掩码处理;

GT PHY到万兆网:万兆网MAC层的CRC处理

千兆网的CRC是8d32的:http://outputlogic.com/?page_id=321

但是如果选取了万兆网的32用户位宽,需要使用32d32,并且带掩码的CRC运算;

例如:

1.传输五个字节D0-D4;

2.D0-D3输入CRC模块进行校验;

3.D4就不能直接输入计算了,需要结合掩码完成;

 

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

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

相关文章

Gt收发器控制代码和细节(一)

复位需求: DESCRIPTION在 7 系列 FPGA GTX/GTH/GTP 收发器中,GTTXRESET 和 GTRXRESET 在配置时应默认为低电平,在配置完成后过一段时间再设置为高电平。SOLUTION配置时,必须以顺序模式启动 GTTXRESET 和 GTRXRESET,也就是说 RESETOVRD=1b0 而GTRESETSEL=1b0。 如果 RESETO…

http请求异步通信

1.存储请求上下文(AsyncContextImpl) 》唯一id作为key 2.web生成交换机、routingkey 》唯一id:本机服务routingKey3.发送到其他服务返回时,从第2步中取出routingkey进行返回。

2024 Selenium10个替代品

随着自动化测试需求的不断增长,Selenium作为广泛使用的自动化测试工具,虽然功能强大,但也存在一些限制和挑战。在2024年, 越来越多的替代工具涌现,它们提供了更高效、更易用的解决方案。那么,哪些替代品值得我们关注呢?在自动化测试领域,除了Selenium,还有哪些工具能够…

【C语言】Linux 飞翔的小鸟

【C语言】Linux 飞翔的小鸟 零、环境部署 安装Ncurses库 sudo apt-get install libncurses5-dev壹、编写代码 代码如下: bird.c #include<stdio.h> #include<time.h> #include<stdlib.h> #include<signal.h> #include<curses.h> #include<sy…

高斯消元

高斯消元 高斯消元法通常用于求解如下的 \(n\) 元线性方程组 \[\begin{cases}a_{1, 1} x_1 + a_{2, 2} x_2 + \cdots + a_{1, n} x_n = b_1\\a_{2, 1} x_1 + a_{2, 2} x_2 + \cdots + a_{2, n} x_n = b_2\\\cdots\\a_{n, 1} x_1 + a_{n, 2} x_2 + \cdots + a_{n, n} x_n = b_n\…

2024/7/22 模拟赛记录

这次的模拟赛比较简单。 150 T1:100 T2:30 T3:0 T4:20 T1: 【题目描述】 给定两个字符串a,b,从a中选一段前缀,b中选一段后缀(前后缀都可以为 空),并将选出的后缀拼在选出的前缀后面。 你需要求出有多少种本质不同的串(可以为空) 场上思路: 上来直接敲了个扩展kmp,仔细…

[Redis]为什么这么快

redis为什么这么快基于内存实现 redis将数据存储在内存中,内存的读写速度很快,所以redis速度很快 高效的数据结构哈希表 跳表 压缩表 快表 双向链表 简单动态字符串 整数数组单线程模型 使用IO多路复用 合理的数据编码

数据库中字符串连接符的使用

在数据库操作中,字符串处理是日常工作中不可或缺的一部分。无论是构建动态查询,还是处理数据输出,字符串连接符的使用都是至关重要的。 那么,如何正确地使用字符串连接符,才能高效地进行字符串操作呢? 在数据库中,字符串连接符的具体使用方法是什么?我们应该如何利用这…

h5开发心得

运营推广移动端开发 1.适配原理 宽的适配:flexible.js适配,是根据屏幕的宽度计算根标签的大小进行适配, 高的适配:需要用vh,vh在静态页面好用,vh是根据屏幕的可视高度计算的,当页面中有输入框时vh的页面会受到挤压,如下图 用百分比2.移动端布局如果有按钮,最好让ui设计…

BootStrap框架的使用

一、下载:BootStrap是一套用于 HTML、CSS 和 JS 开发的开源工具集。BootStrap下载官网学习的初级阶段,这里下载生产文件即可将下载的压缩包解压得到包含以下的文件: 记住bootstrap.min.css文件的路径创建html骨架,link引入bootstrap.min.css文件可根据文档中的代码复制到ht…

关于ssh的X11Forwarding功能和vnc端口冲突的问题

前言 偶然间发现有时vnc端口启动不了,显示端口已经启动,但是查看发现默认的59xx端口未启动,但是60xx端口缺被一个sshd进程占用,vnc服务除了默认的59xx端口,还会用到60xx端口。 正是因为这个60xx端口被sshd进程占用,所以vnc才启动不了。 那么这个sshd端口是干嘛的呢,默认…