我是靠谱客的博主 瘦瘦纸飞机,最近开发中收集的这篇文章主要介绍PRBS介绍,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

PRBS介绍

    • LFSR(Linear-Feedback Shift Register)
    • 生成多项式
    • PRBS特点与使用

PRBS:Pseudo-Random Binary Sequence,即伪随机码(伪随机二进制序列),常用于高速串行通道的测试,用于测试通道误码率BER(Bit Error Rate)。为什么叫伪随机,因为其对于信道来说,码型看上去像是随机的,没有规律的出现,但实际上的码型是由生成多项式确定了的,并且有重复周期。要理解它,先从实现机制说起。

LFSR(Linear-Feedback Shift Register)

线性反馈移位寄存器这个名字,首先它是个移位寄存器,然后这个移位寄存器的输入是上一个状态的线性组合。看一个例子
该LFSR对应的生成多项式为:
项式里的1代表输入,即x0。x3与x^4分别代表移位寄存器的第3位与第4位。
移位寄存器的动作过程如同上面图中所示,每一次移位都会使移位寄存器切换到下一个状态,4位移位寄存器总共可以有2^4=16种状态,除去0000状态之外,该LFSR可以在剩下的15个状态中循环切换。
如果我们令LFSR的状态从0001开始,每一次移位都将x^4输出,则可以生成的随机码序列为:
100010011010111 - 100010011010111 - 100010011010111……
完成15个bit输出后,循环重复。

生成多项式

那么为什么选用第3位与第4位相加反馈?如果是选用第2位与第4位会怎么样?
同样以0001开始,LFSR的状态切换过程为:
可以看到,只遍历了6个状态就回到了初始状态,生成的随机序列为100010……
只有6个随机码,然后开始循环重复,随机性显然不如之前的多项式,而且如果使用其它初始状态,可能会生成不同的随机码。(例如初始状态为1111)
前面的生成多项式(1+x3+x4)称为MLS(Maximum Length Sequence),关于MLS分析有时间再单独讨论,常用的PRBS都是MLS。

PRBS特点与使用

不同的PRBS生成多项式可以生成不同的码型,有不同的应用场景,以PRBS7为例,移位寄存器可以遍历除0000000外的所有状态,所以可以遍历的状态为27-1个,生成的码型位数为27-1。码型中连续1最长为7位,最长连续0为6位。在实际应用中常用于8B/10B编码的信道测试,8B/10B编码的码型最长的1或0的位数为5位。同样的信道使用PRBS7码型要比8B/10B编码产生的结果要稍差一些,这样也可以保证一定的设计裕量。
PRBS 码的周期长度与其阶数有关,常用的阶数有 7 、 9 、 11 、 15 、 20 、 23 、 31 ,也就是我们常说的 PRBS7 、 PRBS9 、 PRBS11 、 PRBS15 、 PRBS20 、 PRBS23 、 PRBS31 。

最后

以上就是瘦瘦纸飞机为你收集整理的PRBS介绍的全部内容,希望文章能够帮你解决PRBS介绍所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部