必威体育Betway必威体育官网
当前位置:首页 > IT技术

m序列详解及VHDL语言实现

时间:2019-08-15 14:13:16来源:IT技术作者:seo实验室小编阅读:67次「手机版」
 

m序列

目录

  • m序列的产生
    • 简介
    • 线性反馈移位寄存器
  • VHDL语言实现

m序列的产生

简介

m序列是最长线性反馈移位寄存器序列的简称,是由带线性反馈的移位寄存器产生的周期最长的序列。下图是一个4级线性反馈移位寄存器。

4级线性反馈移位寄存器假若初始状态为a3,a2,a1,a0=(1,0,0,0)(a_3,a_2,a_1,a_0)=(1,0,0,0)(a3​,a2​,a1​,a0​)=(1,0,0,0),那么在移位一次时,由a3a_3a3​和a0a_0a0​模2相加产生新的输入,放到寄存器a3a_3a3​中;寄存器a2a_2a2​值更新为寄存器a3a_3a3​原来的值;寄存器a1a_1a1​值更新为寄存器a2a_2a2​原来的值;寄存器a0a_0a0​值更新为寄存器a1a_1a1​原来的值;输出为寄存器a0a_0a0​原来的值。移位一次后,新的状态变为a3,a2,a1,a0=(1,1,0,0)(a_3,a_2,a_1,a_0)=(1,1,0,0)(a3​,a2​,a1​,a0​)=(1,1,0,0)。这样移位15次后又回到初始状态(1,0,0,0)。状态更新如图所示。

在这里插入图片描述如果初始状态为全“0”状态,则移位后得到的仍是全“0”状态。这就意味着在这种反馈移位寄存器中应该避免出现全“0”状态,否则移位寄存器的状态将不会改变。因为4级移位寄存器共有24=162^4=1624=16可能的状态。除全“0”状态外,只剩下15种状态可用。这就是说,由任何4级反馈移位寄存器产生的序列的周期最长为15。一般来说,一个n级线性反馈移位寄存器可能产生的最长周期等于2n1(2^n-1)(2n−1),将这种最长的序列称为最长线性反馈移位寄存器序列,简称m序列

线性反馈移位寄存器

一般的线性反馈移位寄存器原理方框图如下图所示,图中各级寄存器的状态用aia_iai​表示,aia_iai​=0或1,i为整数。反馈线的连接状态用cic_ici​表示,cic_ici​表示此线接通(参加反馈);cic_ici​=0表示此线断开。反馈线的连接状态不同,就可能改变此移位寄存器输出序列的周期p。

在这里插入图片描述上文指出,cic_ici​的取值决定了移位寄存器的反馈连接和序列的结构,所以cic_ici​是一个很重要的参量。现将它用下列方程表示:

f(x)=c0x+c1x2++cnxn=i=0ncixif(x) = c_0x +c_1 x^2 + {\cdots} + c_nx^n = \sum_{i=0}^n c_ix^if(x)=c0​x+c1​x2+⋯+cn​xn=i=0∑n​ci​xi

这一方程成为特征方程(或特征多项式)。式中xix^ixi仅指明其系数代表的cic_ici​的值,xxx本身并无实际意义,也不想要计算xxx的值。例如特征方程

f(x)=1+x+x4f(x) = 1 + x +x^4 f(x)=1+x+x4

则它仅表示x0x^0x0,x1x^1x1,x4x^4x4的系数c0c_0c0​=c1c_1c1​=c4c_4c4​=1,其余的cic_ici​为0。按照这一特征方程构成的反馈移位寄存器如图所示。

在这里插入图片描述

VHDL语言实现

代码

程序用于实现特征方程

f(x)=1+x+x4f(x) = 1 + x +x^4 f(x)=1+x+x4

程序中的组合逻辑产生下一状态的最高位,即a_3;时序逻辑用于生成下一个状态,并输出最低位。

----------------------------------------------------------------------------------
-- Company: 
-- Engineer: 
-- 
-- Create Date:    17:29:15 01/29/2019 
-- Design Name: 
-- Module Name:    linear_fsr - Behavioral 
-- Project Name: 
-- Target Devices: 
-- Tool versions: 
-- Description: 特征方程f(x) = 1 + x + x^4
--
-- Dependencies: 
--
-- Revision: 
-- Revision 0.01 - File Created
-- Additional comments: 
--
----------------------------------------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;


entity linear_fsr is
	port(
		clk            : in std_logic;
		rst_n          : in std_logic;
		
		data_o         : out std_logic
	);
end linear_fsr;

architecture Behavioral of linear_fsr is

	signal sr        : std_logic_vector(3 downto 0);
	signal tmp       : std_logic;
	
begin

	tmp <= sr(3) xor sr(0);
	
	process(clk,rst_n)
	begin
		if rst_n = '0' then
			sr <= "1000";
			data_o <= '0';
		elsif rising_edge(clk) then
			sr <= tmp & sr(3 downto 1);
			data_o <= sr(0);
		end if;
	end process;

end Behavioral;


仿真图

程序仿真图如下所示

在这里插入图片描述信号sr表示移位寄存器中各个寄存器内部的值。复位时,移位寄存器的初始状态为1000。当复位键拉高之后,在每一个时钟上升沿,移位寄存器内部寄存器值改变,并产生一个输出。对比仿真图与理论推导,结果一致。

相关阅读

win2003 序列号 windows2003 sp2可用序列号大全(准版与

通用性好的win2003序列号: (推荐先用这个里面的) FJ8DH-TQPYG-9KFHQ-88CB2-Y7V3Y GRD4P-FTQQF-JCDM8-4P6JK-PFG7M JD7JX-KCDTH-7W

亲测有效 Xmind8 Pro 最新版破解教程(序列号|破解文件)

一、下载XMindCrack.jar文件:(百度云的如果被屏蔽了,请留下邮箱,抽空会发给你) 百度云(https://pan.baidu.com/s/1x5Y4FFG61MTOCFTHs

photoshop cs5序列号以及安装防联网破解方法

序列号:1330-1343-1830-9875-8192-3098注册机其实满大街都有,无奈注册后还会联网检验序列号,然后就悲剧了!!!为此提供个一劳永逸的办法:1

2019最新windows10永久激活码 win10专业版密钥 win10

1、专业版:W269N-WFGWX-YVC9B-4J6C9-T83GXMH37W-N47XK-V7XM9-C7227-GCQG92X7P3-NGJTH-Q9TJF-8XDP9-T83GTJ2WWN-Q4338-3GFW9-BWQVK-

【Autocad】CAD2016-2019所有版本的安装序列号和密钥

CAD所有版本的安装序列号和密钥如下。 AutoCAD2019安装序列号:666-69696969, 667-98989898, 400-45454545, 066-66666666 AutoCAD

分享到:

栏目导航

推荐阅读

热门阅读