0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

线性反馈移位寄存器原理

FPGA之家 来源:芯设计 作者:IC_designer00 2022-07-22 09:37 次阅读

线性反馈移位寄存器(LFSR):通常由移位寄存器和异或门逻辑组成。其主要应用在:伪随机数,伪噪声序列,计数器,BIST,数据的加密和CRC校验等。

Part.1

线性反馈移位寄存器(LFSR)主要包括两大类:斐波那契(外部LFSR),又称many-to-one;伽罗瓦(内部LFSR),又称one-to-many。

如下图(模2的多项式:x^8+x^6+x^4+1):

975333bc-07bb-11ed-ba43-dac502259ad0.png

Part.2

抽头(tap):影响线性反馈寄存器下一个状态的比特位叫做抽头,抽头的设定会决定线性反馈寄存器最大的输出序列长度,抽头通常用有限域算数中模2的多项式来表示(例如模2的多项式为:x^8+x^6+x^4+1)。通常N bits的线性反馈寄存器能产生最长的不重复序列为2^N-1。因为当所有寄存器的输出为全零状态时,线性反馈寄存器陷入死循环,故Nbit的线性反馈寄存器的输出状态有2^N-1。抽头的位置会影响LSFR的最大输出状态的个数,例如:3bit的抽头为【3,2】会产生7个状态(多项式对应为:x^3+x^2+1),若抽头为【3,1】会产生2个状态(多项式对应为:x^3+x+1)。当N bits下,抽头的设定产生的最大输出序列长度为2^N-1时,此时对应的模2多项式为本原多项式。下表为不同的bits下,抽头的设定(对应不同的本原多项式)和最大的输出状态个数关系表。

9766d570-07bb-11ed-ba43-dac502259ad0.png

Part.3

上面提到N bits的LFSR能产生最大输出状态的个数为2^N-1,如果输出状态包括全零的状态,最大输出状态的个数可达到2^N,那么通过对LFSR做如下图的修改,即如果检测到Q[7]-Q[0]输出状态为全零时,经过~|Q[6:0]^Q[7]逻辑运算后输出的结果为1,进而保证线性反馈寄存器不会陷入死循环中。

977f61c6-07bb-11ed-ba43-dac502259ad0.png

Part.4

在实际的应用中,例如crc的校验,会用到模2的多项式的运算,遵循如下的计算原则:

978f9aaa-07bb-11ed-ba43-dac502259ad0.png

写在最后

这里只是介绍了线性反馈移位寄存器的原理,后面会讲到RTL的实现。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    31

    文章

    5377

    浏览量

    121394
  • 计数器
    +关注

    关注

    32

    文章

    2276

    浏览量

    95105

原文标题:线性反馈移位寄存器原理

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    XILINX FPGA CLB单元之移位寄存器

    一、移位寄存器 SLICEM函数发生也可以配置为32位移位寄存器,而无需使用slice中可用的触发。以这种方式使用,每个LUT可以将串行数据延迟1到32个时钟周期。 移入D(DI1
    的头像 发表于 01-16 17:45 190次阅读
    XILINX FPGA CLB单元之<b class='flag-5'>移位寄存器</b>

    TPIC6C596电源+逻辑移位寄存器应用

    电子发烧友网站提供《TPIC6C596电源+逻辑移位寄存器应用.pdf》资料免费下载
    发表于 09-30 11:00 0次下载
    TPIC6C596电源+逻辑<b class='flag-5'>移位寄存器</b>应用

    移位寄存器的工作原理和类型

    移位寄存器是计算机中常用的一种寄存器类型,它能够按位进行数据的左移或右移操作。作为数字电路中的基本元件,移位寄存器由多个触发构成,每个触发
    的头像 发表于 08-02 18:11 3725次阅读
    <b class='flag-5'>移位寄存器</b>的工作原理和类型

    移位寄存器的工作原理、类型及应用

    。 一、移位寄存器的工作原理 基本结构 移位寄存器由多个存储单元组成,每个存储单元可以存储一位二进制数字。这些存储单元通常按照线性顺序排列,形成一个寄存器
    的头像 发表于 07-12 10:22 2421次阅读

    移位寄存器中使用的储存单元是什么

    移位寄存器是一种常见的数字电路组件,用于存储和传输数字信号。在移位寄存器中,存储单元是其核心组成部分,负责存储数字信号的每一位。本文将介绍移位寄存器中使用的存储单元。 移位寄存器概述
    的头像 发表于 07-12 10:21 512次阅读

    移位寄存器中Dsr有什么用

    移位寄存器(Shift Register)是一种数字电路,用于存储和传输数字信号。在数字电子学中,它广泛应用于数据存储、信号处理和时序控制等领域。DSR(Data Shift Register
    的头像 发表于 07-12 10:15 798次阅读

    移位寄存器右移是怎么移位

    将介绍移位寄存器的右移操作。 移位寄存器的基本概念 移位寄存器是一种具有多个存储单元的线性结构,每个存储单元可以存储一个二进制位(0或1)。移位寄存
    的头像 发表于 07-12 10:14 1817次阅读

    PLC移位寄存器指令的工作过程

    在工业自动化领域,可编程序控制(PLC)的应用日益广泛。作为工业控制的核心设备,PLC不仅具备强大的数据处理能力,还拥有丰富的指令系统,以满足各种复杂的控制需求。其中,移位寄存器指令是PLC
    的头像 发表于 06-15 17:37 1966次阅读

    8位移位寄存器工作原理是什么?

    在数字化浪潮席卷全球的今天,数字电子系统已成为我们生活中不可或缺的一部分。而在这些系统中,有一个看似微小但至关重要的组件——8位移位寄存器,它如同一个周密的齿轮,在数据的传输与处理中发挥着至关重要
    的头像 发表于 06-04 16:20 1498次阅读

    SN74HCS16507-Q1移位寄存器数据表

    电子发烧友网站提供《SN74HCS16507-Q1移位寄存器数据表.pdf》资料免费下载
    发表于 06-04 11:04 0次下载
    SN74HCS16507-Q1<b class='flag-5'>移位寄存器</b>数据表

    移位寄存器的工作原理与作用

    在数字电路和计算机系统中,移位寄存器(Shift Register)是一个至关重要的元件。它不仅能够存储数据,还能在时钟信号的控制下,使数据按照一定的规律进行移位操作。这种独特的功能使移位寄存器在数
    的头像 发表于 05-30 17:17 3715次阅读

    双向移位寄存器的工作原理、特点及应用

    双向移位寄存器,作为一种特殊的数字电路元件,在数字信号处理和计算机体系结构中扮演着重要的角色。其独特之处在于能够根据控制信号实现数据的双向移位,即既可以向左移位,也可以向右移位。这种灵
    的头像 发表于 05-24 16:52 2731次阅读

    并行加载的8位移位寄存器数据表

    电子发烧友网站提供《并行加载的8位移位寄存器数据表.pdf》资料免费下载
    发表于 05-22 09:35 0次下载
    并行加载的8位<b class='flag-5'>移位寄存器</b>数据表

    8位并行输出串行移位寄存器数据表

    电子发烧友网站提供《8位并行输出串行移位寄存器数据表.pdf》资料免费下载
    发表于 05-14 09:38 0次下载
    8位并行输出串行<b class='flag-5'>移位寄存器</b>数据表

    带输入锁存的8位移位寄存器数据表

    电子发烧友网站提供《带输入锁存的8位移位寄存器数据表.pdf》资料免费下载
    发表于 05-13 11:15 0次下载
    带输入锁存<b class='flag-5'>器</b>的8位<b class='flag-5'>移位寄存器</b>数据表