OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 60|回复: 2

[XILINX] FPGA高速收发器接收端K码对齐的问题

[复制链接]

3

主题

4

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2023-2-19
在线时间
5 小时
发表于 4 天前 | 显示全部楼层 |阅读模式
5金钱
各位老师,我最近在学习”基于光口的视频传输实验“这一节,有个问题一直弄不明白。教程里面
“光口字对齐模块是将接收回来不对齐的数据转化为对齐的数据,然后再输出到光口解码模块”
在实际测试过程中发现,发送的 32 位数据会有可能出现 16 位的数据的移位,就是说发送的数据和接收到的数据会有 16 位的错位,所以这里要添加一段信号对齐的逻辑代码“,
对应的代码如下:



always@(posedge rx_clk or negedge rst_n)
        if(!rst_n)
                rx_data_align <= 32'd0;                               
        else
                case(align_bit)
                        4'b0001:
                                rx_data_align <= rx_data;
                        4'b0100:
                                rx_data_align <= {rx_data[15:0],rx_data_r[31:16]};
                        default:
                                rx_data_align <= 32'd0;
                endcase


我不太明白,在网上找了以下有没有人跟我有同样的问题,找到这样一篇博客,看完后解除了我的一些疑惑,但同时有增加了疑惑


我把这篇博客截图,请大家看看,不知道我理解的对不对。


光纤发送的时候往往以数据帧的形式发送,包含帧头、数据和帧尾。

在帧头和帧尾内嵌K码,假设在发送端把K码放在[7:0]这里,

接收端GTH IP核自动检测K码所在的位置,然后用一个四比特位数据把K码所在的位置告诉用户;

比如:0B0001表示K码在[7:0];0B0100表示K码在[23:16];

如果K码不在用户指定的那几个比特位,用户就知道K码在32个比特位里面发生了“位移”,接收到的数据不是原始数据,所以要进行数据“对齐”


我现在的疑问是:
1.我对位移的理解是否正确;
2.为什么会发生数据位移的情况?是发送的逻辑导致的还是传输过程导致的,和硬件设计是否有关;
3.如果以“帧”这种形式发送数据,帧头或帧尾发生数据移位,是否意味这一帧里面的数据也全部发生了位移;

最后还有一个小问题:


data_align模块input信号有4个,rx_ctrl0、rx_ctrl1、rx_ctrl2、rx_ctrl3,我猜测:
rx_ctrl0 = 0B‘0001      表示K码在[7:0]     此时:rx_ctrl1 = 0B‘0000;rx_ctrl2 = 0B‘0000;rx_ctrl3 = 0B‘0000;
rx_ctrl1= 0B‘0010      表示K码在[15:8]    此时:rx_ctrl0 = 0B‘0000;rx_ctrl2 = 0B‘0000;rx_ctrl3 = 0B‘0000;
rx_ctrl2 = 0B‘0100      表示K码在[23:16] 此时:rx_ctrl0 = 0B‘0000;rx_ctrl1 = 0B‘0000;rx_ctrl3 = 0B‘0000;
rx_ctrl3 = 0B‘1000      表示K码在[32:24] 此时:rx_ctrl0 = 0B‘0000;rx_ctrl1 = 0B‘0000;rx_ctrl2 = 0B‘0000;


欢迎讨论一下,提出不同的见解,看看我理解的对不对。


Snipaste_2025-12-28_19-41-35.jpg
回复

使用道具 举报

2

主题

144

帖子

0

精华

高级会员

Rank: 4

积分
732
金钱
732
注册时间
2020-4-21
在线时间
98 小时
发表于 3 天前 | 显示全部楼层
一般移位确实是按照字节来的,但我们实际测试是按照16位来的
回复

使用道具 举报

2

主题

144

帖子

0

精华

高级会员

Rank: 4

积分
732
金钱
732
注册时间
2020-4-21
在线时间
98 小时
发表于 3 天前 | 显示全部楼层
移位是传输过程中导致的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


关闭

原子哥极力推荐上一条 /1 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2026-1-1 03:23

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表