Matlab 생성 M 시퀀스
1705 단어 MATLAB
코드를 많이 찾았는데 이 단계는 상세해서 바보가 조작할 수 있고 저장해서 준비할 수 있어요~
실험 환경은 matlab2013b
1、먼저 mseq를 작성합니다.m 파일, 내용:
function[mseq]=m_sequence(fbconnection)
n=length(fbconnection);
N=2^n-1;
register=[zeros(1,n-1) 1]; %
mseq(1)=register(n); %m
for i=2:N
newregister(1)=mod(sum(fbconnection.*register),2);
for j=2:n
newregister(j)=register(j-1);
end;
register=newregister;
mseq(i)=register(n);
end
2、matlab에서 이 파일 열기
3. matlab 명령줄 창에서 실행
primpoly(7,‘all’)
이 명령의 목적은 7 단계 M 서열의 모든 본원 다항식을 얻는 것이다. 다른 단계의 m 서열을 얻으려면 스스로 숫자 7을 수정하면 된다.
4、얻은 결과는
Primitive polynomial(s) =
D7+D1+1 D7+D3+1 D7+D3+D2+D1+1 D7+D4+1 D7+D4+D3+D2+1 D7+D5+D2+D1+1 D7+D5+D3+D1+1 D7+D5+D4+D3+1 D7+D5+D4+D3+D2+D1+1 D7+D6+1 D7+D6+D3+D1+1 D7+D6+D4+D1+1 D7+D6+D4+D2+1 D7+D6+D5+D2+1 D7+D6+D5+D3+D2+D1+1 D7+D6+D5+D4+1 D7+D6+D5+D4+D2+D1+1 D7+D6+D5+D4+D3+D2+1
ans =
131 137 143 145 157 167 171 185 191 193 203 211 213 229 239 241 247 253
5, mseq 입력 ([10 0 0 0 0 0 0 0 1])
6、127비트의 m 서열을 얻을 수 있다.
1000000111111101010 1001100111011101001 0110001101111011010 1101100100100011100 0010111110010101110 0110100010011110001 0100001100000
설명,
1 0 0 0 0 0 1 이 입력 매개 변수의 물리적 의미는 각 레지스터의 초기 상태이며, 수학적 의미는 선택한 원래 다항식 D7+D1+1의 D1에서 D7까지의 계수입니다.독자는 스스로 다른 본원 다항식을 선택하여 서로 다른 m 서열을 얻을 수 있다.
예를 들어 D7 + D3+1을 선택하면
mseq([0 0 1 0 0 0 0 1])에서 얻은 m 서열은
1000000100100110100 1111011100001111111 0001110110001010010 1111101010100001011 0111100111001010110 0110000011011010111 0100011001000
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
MATLAB 신호 분석 FFT STFTMATLAB 신호 분석 FFT STFT 먼저 일련의 데이터를 얻어 유효한 신호 영역을 선택한 다음에 효과적인 원시 신호와 효과적인 FFT 또는 STFT 신호를 표시합니다. ginput: 마우스로 입력점 선택하기; s...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.