综合技术
登录
直播中
李旭彤
7年用户
206经验值
私信
关注
[问答]
PRBS码是什么
开启该帖子的消息推送
prbs码
PCB
作者:黄刚
PRBS:Pseudo-Random Binary Sequence,中文翻译叫做伪随机二进制序列,江湖人简称它为伪随机码。做过测试的朋友们都应该特别熟悉,就是使用PRBS这种伪随机码进行高速串行通道的测试,主要是测试误码率的情况,例如我们常用的一些协议,PCIE,USB,以太网或者下图的光模块的测试等等……
回帖
(2)
马沃源
2019-7-26 11:38:13
当然我们信号高速串行信号仿真的时候,也会有各种prbs码型进行,一个10G-SFP+光模块PCB通道的仿真模型如下:
为什么业界公认选择这种prbs码型进行测试(仿真)呢?主要原因是这种码型与真实链路的数据传输情况非常接近。因为在真实情况中,所以的数据组合都是随机出现的,没有任何规律可言。 而PRBS 的码流在很大程度上具有这种“随机数据”的特性,“0”和“1”随机出现,这种码流的频谱特征和白噪声非常接近,所谓“白噪声”就是在一个比较宽的频域里功率密度谱均匀分布,也就是所有的频率都具有相同的能量,因此该码型能够模拟各种不同频率数据组成的情况,使测试更符合真实的情况。
当然我们信号高速串行信号仿真的时候,也会有各种prbs码型进行,一个10G-SFP+光模块PCB通道的仿真模型如下:
为什么业界公认选择这种prbs码型进行测试(仿真)呢?主要原因是这种码型与真实链路的数据传输情况非常接近。因为在真实情况中,所以的数据组合都是随机出现的,没有任何规律可言。 而PRBS 的码流在很大程度上具有这种“随机数据”的特性,“0”和“1”随机出现,这种码流的频谱特征和白噪声非常接近,所谓“白噪声”就是在一个比较宽的频域里功率密度谱均匀分布,也就是所有的频率都具有相同的能量,因此该码型能够模拟各种不同频率数据组成的情况,使测试更符合真实的情况。
举报
李玉华
2019-7-26 11:38:19
那prbs这种随机码真的就是没有任何规律的吗??当然不是,不然的话为什么还要分prbs1-31那么多种呢。之所以要叫伪随机码,其实就是码流在周期内部是随机的,但是在各个周期里面又是完全相同的。咋一看,好像说了等于没有,大家可能有疑问,在周期内部是随机的,那不还是随机嘛?其实这个随机是要打个问号的,正确来说是“有顺序的随机”。所谓顺序就是通过不同阶数的prbs码来体现,例如,我们常用的有阶数7、9、11、15、20、23、31,也就是我们常说的PRBS7、PRBS9、PRBS11、PRBS15、PRBS20、PRBS23、PRBS31。
前面说了,不同的阶数会有不同的码型,那它们之间有什么规律呢?不同阶数是怎样生成码型的呢?我们以PRBS3进行说明。
PRBS码型是由PRBS码型发生器产生的,下面是一个简单发生器的示意图:
架构很简单,就由两部分组成:移位寄存器和异或运算器。首先移位寄存器,顾名思义作用就是移位,1个bit发送后,把下一个bit推向前准备发送;异或运算,简单点说就是两个不一样就是“1”,两个一样就是“0”,因此有“1”和“1”是0,“0”和“0”是0,“1”和“0”是1。那像上面这个PRBS3发生器,进行异或的位是第二位和第三位,因此用一个多项式命名它,叫做1+X2+X3。
这样我们可以开始进行计算了。首先我们有一个初始状态“111”。我们就有了下面这么一个计算过程(画得不好,大家看内容就好)。简单说明一下,红色为异或运算过程,蓝色为每次移位后的bit,绿色为输出的数据bit,紫色说明绕一圈之后又回到了原先,循环了一次。
经过本文之后,大家是不是对感觉很高深神秘的prbs码型有了更接地气的认识和理解了呢?当然,本文举例的prbs3是比较简单的,感觉它没经过几位就可以循环一次了,大家推导起来也比较方便。
那prbs这种随机码真的就是没有任何规律的吗??当然不是,不然的话为什么还要分prbs1-31那么多种呢。之所以要叫伪随机码,其实就是码流在周期内部是随机的,但是在各个周期里面又是完全相同的。咋一看,好像说了等于没有,大家可能有疑问,在周期内部是随机的,那不还是随机嘛?其实这个随机是要打个问号的,正确来说是“有顺序的随机”。所谓顺序就是通过不同阶数的prbs码来体现,例如,我们常用的有阶数7、9、11、15、20、23、31,也就是我们常说的PRBS7、PRBS9、PRBS11、PRBS15、PRBS20、PRBS23、PRBS31。
前面说了,不同的阶数会有不同的码型,那它们之间有什么规律呢?不同阶数是怎样生成码型的呢?我们以PRBS3进行说明。
PRBS码型是由PRBS码型发生器产生的,下面是一个简单发生器的示意图:
架构很简单,就由两部分组成:移位寄存器和异或运算器。首先移位寄存器,顾名思义作用就是移位,1个bit发送后,把下一个bit推向前准备发送;异或运算,简单点说就是两个不一样就是“1”,两个一样就是“0”,因此有“1”和“1”是0,“0”和“0”是0,“1”和“0”是1。那像上面这个PRBS3发生器,进行异或的位是第二位和第三位,因此用一个多项式命名它,叫做1+X2+X3。
这样我们可以开始进行计算了。首先我们有一个初始状态“111”。我们就有了下面这么一个计算过程(画得不好,大家看内容就好)。简单说明一下,红色为异或运算过程,蓝色为每次移位后的bit,绿色为输出的数据bit,紫色说明绕一圈之后又回到了原先,循环了一次。
经过本文之后,大家是不是对感觉很高深神秘的prbs码型有了更接地气的认识和理解了呢?当然,本文举例的prbs3是比较简单的,感觉它没经过几位就可以循环一次了,大家推导起来也比较方便。
举报
更多回帖
rotate(-90deg);
回复
相关问答
prbs码
PCB
将3位
prbs
的o/p链接到串行器并最终链接到解串器时,结果不正确
2020-04-03
1370
什么是Ultrascale的收发器
PRBS
-7模式?
2020-04-14
2907
抖动误码仪的工作原理是什么
2019-07-01
2553
脉冲
码
型发生器参数定义
2019-07-02
1571
在DDR3初始化和校准阶段
PRBS
读取均衡失败的原因?
2020-05-13
3314
实现vhdl代码时生成的问题,作为ibert ipcore的示例设计
2020-03-24
1110
如何在发送端发送逗号?
2020-06-10
948
如何在处理器fm1-gb0端口上运行
PRBS
?
2023-04-03
193
cml buffer问题 请求各位高手帮助
2015-04-10
4861
关于ADCLK925的应用
2021-04-30
1177
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分