找回密码
 注册
关于网站域名变更的通知
查看: 505|回复: 1
打印 上一主题 下一主题

Matlab生成M序列的伪随机码

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-9-1 14:46 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
伪随机编码中较常用的是m序列,它是线性反馈移位寄存器序列的一种,其特点是在相同寄存器级数的情况下输出序列周期最长。线性反馈移位寄存器的工作原理是,给定所有寄存器一个初始值,当移位脉冲到来时,将最后一级寄存器的值输出,同时将第 i级的寄存器内容存储到第 i+1 级中,此外将每一级的寄存器输出按照一定的线性运算规则计算出一个值,并将该值存入第一级寄存器中。随着移位脉冲的累加,线性反馈移位寄存器的输出可以组成一个序列,称之为移位寄存器序列[71]。& C$ p, g. c. z: z/ D/ L, H
, l& h% t& a! E

! q% i! V1 }- C/ g
图3.5 线性反馈移位寄存器
; N! y6 |+ e, K# M* i5 V: s0 a

% t, }! l) b( r4 R1 h# Q. x2 W2 ?' a# C, @3 j% l4 p* G
MATLAB生成M序列伪随机码函数如下:
% 1];本原多项式系数:[d0,d1,d2...di];其中di为本原多项式前的系数
" J/ W3 }, S# L( H5 }& K* w0 t% mseq=m_sequence(fbconnection); % mseq ; X3 Y* w+ @4 c7 M6 o- a
%m_sequence.m功能是生成伪随机序列* J# M- N% ^, I
%time:2016_1_13
1 o0 B8 o5 q8 g# A+ y; D7 I4 J%edit by:柴宁: u7 ~$ v, _, }8 V* O: [5 P) Y) l
function[mseq]=m_sequence(fbconnection)
9 m; U& U& X# [3 Y( S6 X$ qn=length(fbconnection);
1 ^: Y0 K* T  `% w+ O) GN=2^n-1;8 @; s( T# z: [6 m
% register=[zeros(1,n-1) 1];: p$ k5 D- J% n5 z0 _6 F" z; [3 ^/ Y
register=[1 1 0 1 0 0 0 0 1 0 1 1 1 1 0 1];%移位寄存器的初始状态 ,[r(i),r(i-1),r(i-2),...r(0)];3 @% s* Q3 J( A1 g/ w! J
mseq(1)=register(n);
# K& o8 }& Z+ x- {  j%m序列的第一个输出码元 5 `; Z: L% ?4 y! s% k) w) v: Z
for i=2:N
. N( U4 G* j; Q6 E2 V3 o( `% I7 t' Qnewregister(1)=mod(sum(fbconnection.*register),2); , B: {# x; E+ [. o9 @
for j=2:n,
! ?+ l1 R$ C) znewregister(j)=register(j-1);
. @. [" {8 o  H' ?8 lend; + [( H% G$ ?4 r" p+ E0 Y7 ~( z: W
register=newregister; $ x  _0 l: V# |
mseq(i)=register(n); 8 @$ ~& N4 O0 r! o
end

2 [$ U. A3 j) o0 W9 H! r" }
3 ~& ~5 N6 Q% c+ \6 a5 q5 @* I% e; ^) y" r" q$ U

) H- H, t( L- m! ]( c, X

该用户从未签到

2#
发表于 2020-9-1 15:35 | 只看该作者
Matlab生成M序列的伪随机码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 14:27 , Processed in 0.171875 second(s), 27 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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