一文解析Matlab如何实现移位寄存器

2018-04-26 09:28 次阅读

  本文主要介绍Matlab如何实现移位寄存器,首先介绍的是移位寄存器的原理及作用,其次介绍了m序列的生成原理及m序列的matlab 仿真实现,最后介绍了Matlab如何实现移位寄存器的代码。

  移位寄存器的原理及作用

  1、移位寄存器原理

  移位寄存器不仅能寄存数据,而且能在时钟信号的作用下使其中的数据依次左移或右移。

  四位移位寄存器的原理图如图所示。F0、F1、F2、F3是四个边沿触发的D触发器,每个触发器的输出端Q接到右边一个触发器的输入端D。因为从时钟信号CP的上升沿加到触发器上开始到输出端新状态稳定地建立起来有一段延迟时间,所以当时钟信号同时加到四个触发器上时,每个触发器接收的都是左边一个触发器中原来的数据(F0接收的输入数据D1)。寄存器中的数据依次右移一位。

  一文解析Matlab如何实现移位寄存器

  2、移位寄存器作用

  移位寄存器是一种存储器,存在里边的数据可以从低位向高位移动或从高位向低位移动。例如一个8位的移位寄存器,存在其中的数据为11001010,如果向左(高位)移动一次,就变成1001010X,原来的最高位的1移出,最低位的X可以是新移入的数据,也可以是0(不同型号的移位寄存器对此有不同的规定)。

  m序列的定义及原理

  1、m序列的定义

  m序列是由n级线性移位寄存器产生的周期为1的码序列,是最长线性移位寄存器序列的简称。

  关于m序列的基本生成原理网上介绍很多了,其主要步骤就是寄存器的移位和异或运算。即:特定位置寄存器(由反馈系数决定)的值取出来进行异或运算(也就是或者全部相加后模2的运算),寄存器中的值往输出端移位,最后一位输出,第一个寄存器放刚才异或运算中得到的值。

  2、m 序列的产生原理

  产生 m 序列的线性反馈移位寄存器由寄存器加上反馈产生,n 阶线性移位寄存器的产生原理框图如图 1 所示。

  一文解析Matlab如何实现移位寄存器

  图 1 中 a0,a1, … ,an-1 为 n 个移位寄存器某时刻的状态,c0,c1,… ,cn 为移位寄存器的反馈系数,对应位置 ci 等于 1 表示有反馈,等于 0 表示无反馈,加法器采用模 2 相加。

  反馈系数决定了反馈移位寄存器产生的 m 序列码型,对于图 1 中反馈移位寄存器,反馈逻辑为 c0,c1,…,cn,则

  {an}=c1an-1+c2an-2+…+cna0

  只要反馈逻辑 ci 确定,寄存器产生的序列就确定了。n 级移位寄存器产生的伪随机序列,其最长周期为 2n-1。

  生成 m 序列的首要问题是要求得移位寄存器的特征多项式, 特征多项式必须为本原多项式, 本原多项式可以用matlab 软件编程求得,也可以直接查表获得,

  m序列生成函数的MATLAB代码

  一文解析Matlab如何实现移位寄存器

  m 序列的 matlab 仿真实现

  用 matlab 编程求本原多项式

  本仿真中采用四级移位寄存器, 产生周期为 15 的 m 序列。 对应 n=4 的 m 序列的本原多项式求解程序如下:

  n=4;

  x=gfprimfd(n,‘all’);

  for i=1:size(x);

  gfpretty(x(i,:))

  end;

  运行程序,得到 n=4 时的所有本原多项式如下:

  x =

  1 1 0 0 1

  1 0 0 1 1

  1+x+x4,1+x3+x4

  用 simulink 搭建 m 序列产生器

  找到了本原多项式,可以搭建仿真模型。 此处选择 3.1 节获得的第二种本原多项式进行仿真,反馈分别为 1 0 0 1 1搭建的仿真模型如图 2 所示。

  一文解析Matlab如何实现移位寄存器

  图 2 中采用四个长度为 1 的 Queue 充当移位寄存器,构 成 15 位 m 序 列 发 生 器。 它 能 与 matlab 中 得 PN SequeueGenerator 模块产生相同的 PN 码,PN Sequeue Generator 的初始设置为 Generator polynomial [1 0 0 1 1 ],Initial states[0 0 01]。 对应的图 2 中移位寄存器模型的反馈系数为 c0=1,c1=0,c2=0,c3=1,c4=1,寄存器初始状态为 a0=1,a1=a2=a3=0。2.2.2 第一个寄存器 Queue 的 Trigger Type 设为 Either edge,其余为 Rising edge。

  后两个队列输出进行 XOR 运算, 然后反馈给第一个移位寄存器的输入,对应于反馈系数 1 0 0 1 1 中的三个 1。

  一文解析Matlab如何实现移位寄存器

  运行仿真模块,得到的伪随机序列如图 3 所示。 产生的m 序列取其一个完整的周期,长度为 15,码型为 1 0 0 0 1 0011010111 。该 m 序列波形与 PN Sequeue Generator 模块产生的波形一 致,PN Sequeue Generator 模 块 产 生 的 m 序列的相位必须手动设置,而该仿真模型产生的为随机序列的相位可以通过图 2 中来自 In1 的脉冲进行自动调整,具有很大的灵活性。

  m序列产生函数

  function [mseq] = m_sequence (fbconnection);

  n = length (fbconnection);

  N = 2ˆn - 1;

  register =[ones (1,n-1) 1];%定义移位寄存器的初始状态

  mseq(1)= register(n)

  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;

  存储为m_sequence.m

  主函数:

  clc;

  clear all;

  fbconnection = [0 0 1 0 1];

  mseq = m_sequence(fbconnection);

  存储为mxulie.m

  输出结果为:mseq =

  Columns 1 through 21

  1 1 1 1 1 0 0 0 1 1 0 1 1 1 0 1 0 1 0 0 0

  Columns 22 through 31

  0 1 0 0 1 0 1 1 0 0

收藏 人收藏
分享:

评论

相关推荐

EMD信号处理方法如何在LabVIEW和MATLAB中的实现

经验模态分解方法( EMD)在非平稳信号的分析和处理中起着重要的作用, 为了能够方便的使用EMD方法....
发表于 10-17 16:56 10次 阅读
EMD信号处理方法如何在LabVIEW和MATLAB中的实现

闭环PID直流稳压仿真与控制一体化的详细资料说明

 一、实验目的 :1通过利用simulink仿真平台设计直流电压闭环控制系统,了解simulink的....
发表于 10-17 16:01 8次 阅读
闭环PID直流稳压仿真与控制一体化的详细资料说明

MATLAB绘图教程的实例总结免费下载

本文档的主要内容详细介绍的是MATLAB绘图教程的实例总结免费下载。
发表于 10-17 16:00 8次 阅读
MATLAB绘图教程的实例总结免费下载

matlab2017b安装完C2000的support package没有target preference,这个是哪里出错了?

我已经安装完了C2000的support package,但是在simulink的库中找target preference时没有找到,不知道哪里出了错,希望老哥们帮...
发表于 10-17 15:41 140次 阅读
matlab2017b安装完C2000的support package没有target preference,这个是哪里出错了?

什么是软件无线电数字下的变频技术?

软件无线电的核心思想是以模块化、标准化的硬件功能单元构建一个具有高度灵活性、开放性的通用硬件平台,将高速、宽带的A/D、D...
发表于 10-16 08:20 19次 阅读
什么是软件无线电数字下的变频技术?

使用AMESim和Matlab Simulink仿真模糊PID控制伺服系统的研究说明

在AMES im 中建立气动伺服阀控非对称缸的系统模型。以S 函数的形式导入到Sim ulink中的....
发表于 10-15 17:24 42次 阅读
使用AMESim和Matlab Simulink仿真模糊PID控制伺服系统的研究说明

Matlab工具箱应用指南信息工程篇PDF电子书免费下载

20 世纪60 年代以来随着计算机和信息科学的飞速发展信号处理逐渐发展成一门独立的学科成为信息科学的....
发表于 10-15 16:31 27次 阅读
Matlab工具箱应用指南信息工程篇PDF电子书免费下载

使用ADAMS和MATLAB实现Stewart并联机器人模糊自适应PID控制器的仿真

为降低模型建立的难度,本文基于ADAMS建立了六自由度Stewart并联机构模型,并在模糊PID控制....
发表于 10-15 16:00 40次 阅读
使用ADAMS和MATLAB实现Stewart并联机器人模糊自适应PID控制器的仿真

如何使用MATLAB进行运动目标的检测

运动目标检测是图像处理与计算机视觉的一个分支,在理论和实践上都有重大意义,长久以来一直被国内外学者所....
发表于 10-14 17:46 60次 阅读
如何使用MATLAB进行运动目标的检测

使用MATLAB仿真进行火箭推进系统抗干扰能力最优化系统参数的研究

在火箭在发射过程中会受到干扰信号的作用而偏离轨道,故需设计出抗干扰系统来尽量减少飞行器飞行的过程中扰....
发表于 10-14 16:10 30次 阅读
使用MATLAB仿真进行火箭推进系统抗干扰能力最优化系统参数的研究

请问Java异常错误该怎么办?

在成功构建之后,我继续进行Flash,但得到Java异常错误(见下文)。Matlab版本R2014BMICROMPLATS 3.37 MPLA...
发表于 10-14 11:19 26次 阅读
请问Java异常错误该怎么办?

C语言与Matlab接口编程与实例PDF电子书免费下载

本书以简洁的语言、丰富的实例系统地介绍了C语言与MATLAB接口函数(称之为:CMEX函数)的编程....
发表于 10-14 08:00 30次 阅读
C语言与Matlab接口编程与实例PDF电子书免费下载

如何使用BP神经网络实现PID参数的在线整定及MATLAB仿真

PID 控制算法简单、应用广泛,既能消除余差,又能提高系统的稳定性,但其P 环节、I 环节、D 环节....
发表于 10-11 16:06 70次 阅读
如何使用BP神经网络实现PID参数的在线整定及MATLAB仿真

如何才能设计及仿真MATLAB模糊自整定PID控制器

在机电控制系统的设计中,PID控制器以其算法简单,计算量小,使用方便,鲁棒性较强等优点而得到广泛应用....
发表于 10-11 16:06 81次 阅读
如何才能设计及仿真MATLAB模糊自整定PID控制器

如何设计一个基于汽车横摆角速度的模糊自适应PID控制器

本文借助某款轿车的部分技术参数,设计一个基于汽车横摆角速度的模糊自适应PID控制器。首先建立汽车的理....
发表于 10-11 16:06 92次 阅读
如何设计一个基于汽车横摆角速度的模糊自适应PID控制器

如何将这些正弦波添加到编码前的DMA中去?

大家好,我正在做一个项目,需要同时产生多个正弦波来驱动高音喇叭。背景是我想把图像转换成声波。每个像素将被设计成具有特定振...
发表于 10-11 10:38 83次 阅读
如何将这些正弦波添加到编码前的DMA中去?

如何才能使用MATLAB进行数字PID控制器的仿真

PID 控制算法简单应用广泛, 但是其参数整定方法繁杂。利用Matlab 可以方便地仿真, 实现PI....
发表于 10-10 15:46 61次 阅读
如何才能使用MATLAB进行数字PID控制器的仿真

如何才能使用MATLAB和Simulink进行机电一体化系统的仿真分析

机电一体化系统建模是进行机电一体化系统分析与设计的基础,通过对系统的简化分析建立描述系统的数学模型,....
发表于 10-10 15:19 328次 阅读
如何才能使用MATLAB和Simulink进行机电一体化系统的仿真分析

如何将这些正弦波添加到编码前的DMA中去?

大家好,我正在做一个项目,需要同时产生多个正弦波来驱动高音喇叭。背景是我想把图像转换成声波。每个像素将被设计成具有特定振...
发表于 10-10 08:53 157次 阅读
如何将这些正弦波添加到编码前的DMA中去?

使用Matlab实现通信天线原理的实验资料说明

一.实验目的 1. 了解阵列天线的波束形成原理写出方向图函数 2. 运用MATLAB仿真阵列天线....
发表于 10-09 17:45 71次 阅读
使用Matlab实现通信天线原理的实验资料说明

请问C6748里matlab转换c得到的程序怎么放在工程里面?

请问C6748里3-1使用matlab生成可供DSP C6748使用的算法里面, 将matlab程序转换为c后,得到的程序怎么放在工程里面? ...
发表于 10-09 09:58 32次 阅读
请问C6748里matlab转换c得到的程序怎么放在工程里面?

如何利用MATLAB以及改进的iRobot可编程机器人

我们编写的这段代码是专门为机器人以及项目的总体愿景而设计的。我们的目标是利用我们所有的MATLAB编....
的头像 39度创意研究所 发表于 10-09 09:39 175次 阅读
如何利用MATLAB以及改进的iRobot可编程机器人

怎么在MATLAb中创建任意波形并下载到AG 33220A

我无法使用附件中显示的说明获取结果。 我收到以下错误:??? 在56处使用==> icgroup.invoke时出错此设备组对象不支持函数SetD...
发表于 10-09 09:02 25次 阅读
怎么在MATLAb中创建任意波形并下载到AG 33220A

MATLAB Simulink系统进行图像处理仿真的教程免费下载

本文档的主要内容详细介绍的是MATLAB Simulink系统进行图像处理仿真的教程免费下载包括了:....
发表于 10-09 08:00 27次 阅读
MATLAB Simulink系统进行图像处理仿真的教程免费下载

精通MATLAB Simulink系统仿真教程之滑模控制的课件免费下载

本文档的主要内容详细介绍的是精通MATLAB Simulink系统仿真教程之滑模控制的课件免费下载,....
发表于 10-09 08:00 20次 阅读
精通MATLAB Simulink系统仿真教程之滑模控制的课件免费下载

精通MATLAB Simulink系统仿真教程之车辆系统仿真的课件免费下载

本文档的主要内容详细介绍的是精通MATLAB Simulink系统仿真教程之车辆系统仿真的课件免费下....
发表于 10-09 08:00 42次 阅读
精通MATLAB Simulink系统仿真教程之车辆系统仿真的课件免费下载

精通MATLAB Simulink系统仿真教程之神经网络控制课件免费下载

本文档的主要内容详细介绍的是精通MATLAB Simulink系统仿真教程之神经网络控制课件免费下载....
发表于 10-09 08:00 62次 阅读
精通MATLAB Simulink系统仿真教程之神经网络控制课件免费下载

SVPWM进行MATLAB的仿真实现详细说明

为了能让大家在已经泛滥的知识上少走弯路,本人把自己在 SVPWM 上的认识与看到此贴的读者们一起分享....
发表于 10-09 08:00 69次 阅读
SVPWM进行MATLAB的仿真实现详细说明

精通MATLAB Simulink系统仿真教程之模糊逻辑控制仿真课件免费下载

本文档的主要内容详细介绍的是精通MATLAB Simulink系统仿真教程之模糊逻辑控制仿真课件免费....
发表于 10-08 08:00 24次 阅读
精通MATLAB Simulink系统仿真教程之模糊逻辑控制仿真课件免费下载

精通MATLAB Simulink系统仿真教程之控制系统Simulink仿真的PPT课件

本文档的主要内容详细介绍的是精通MATLAB Simulink系统仿真教程之控制系统Simulink....
发表于 10-08 08:00 358次 阅读
精通MATLAB Simulink系统仿真教程之控制系统Simulink仿真的PPT课件

使用Simulink进行S-Function建模的教程PPT课件免费下载

本文档的主要内容详细介绍的是使用Simulink进行S-Function建模的教程PPT课件免费下载....
发表于 10-08 08:00 34次 阅读
使用Simulink进行S-Function建模的教程PPT课件免费下载

Simulink模型的建立与仿真教程PPT课件免费下载

本文档的主要内容详细介绍的是Simulink模型的建立与仿真教程PPT课件免费下载包括了:1 Si....
发表于 10-08 08:00 42次 阅读
Simulink模型的建立与仿真教程PPT课件免费下载

通信系统进行仿真设计的教程免费下载

本文档的主要内容详细介绍的是通信系统进行仿真设计的教程免费下载包括了:1 通信系统仿真概述,2 ....
发表于 10-08 08:00 42次 阅读
通信系统进行仿真设计的教程免费下载

精通MATLAB Simulink系统仿真教程之MATLAB基础知识免费下载

本文档的主要内容详细介绍的是精通MATLAB Simulink系统仿真教程之MATLAB基础知识免费....
发表于 10-08 08:00 43次 阅读
精通MATLAB Simulink系统仿真教程之MATLAB基础知识免费下载

Simulink仿真入门教程PPT课件免费下载

本文档的主要内容详细介绍的是Simulink仿真入门教程PPT课件免费下载包括了:1 Simulin....
发表于 10-08 08:00 630次 阅读
Simulink仿真入门教程PPT课件免费下载

机械系统动力学的大作业资料免费下载

本文档的主要内容详细介绍的是机械系统动力学的大作业资料免费下载。
发表于 10-08 08:00 45次 阅读
机械系统动力学的大作业资料免费下载

250条深入浅出通信原理的详细资料说明

本文档的主要内容详细介绍的是250条深入浅出通信原理的详细资料说明。
发表于 10-08 08:00 107次 阅读
250条深入浅出通信原理的详细资料说明

matlab之檔案與simulink模組如何結合?

想請問如果要用matlab的文件(.m檔)設定參數給simulink的模組使用(如附圖f=50K、大小為1V 之輸入  ),應該要如何做呢?...
发表于 10-03 12:27 390次 阅读
matlab之檔案與simulink模組如何結合?

Matlab的快速指南教程免费下载

 Matlab(Matrix Laboratory)是第四代面向数值计算、可视化和编程的高级编程语言....
发表于 09-30 08:00 83次 阅读
Matlab的快速指南教程免费下载

控制数学问题的MATLAB求解PDF电子书免费下载

控制学科中的很多内容和数学问题是密不可分的。本书系统地介绍了国际控制界最流行的MATLAB语言在教学....
发表于 09-30 08:00 123次 阅读
控制数学问题的MATLAB求解PDF电子书免费下载

使用MATLAB和C++及Vega实现减摇鳍控制系统视觉的仿真说明

针对船舶减摇鳍系统,运用PID 控制理论设计了控制器,利用MATI AB的强大数学运算能力模拟随机海....
发表于 09-29 17:27 109次 阅读
使用MATLAB和C++及Vega实现减摇鳍控制系统视觉的仿真说明

使用MATLAB实现PID控制器的仿真资料详细说明

PID控制是生产过程中广泛使用的一种最基本的控制方法,本文分别采用积分分离PID和变速积分PID控制....
发表于 09-29 17:27 141次 阅读
使用MATLAB实现PID控制器的仿真资料详细说明

使用MATLAB和SIMULINK实现非线性优化PID控制的详细资料说明

提出了利用MATLAB优化控制工具箱与优化函数相结合对非线性系统PID控制器进行优化设计的方法,同时....
发表于 09-29 17:07 84次 阅读
使用MATLAB和SIMULINK实现非线性优化PID控制的详细资料说明

使用MATLAB遗传算法工具箱进行太阳能电池模型仿真的资料说明

简要阐述了遗传算法的基本原理及MATLAB 遗传算法工具箱的应用方法, 并采用Sheffield 大....
发表于 09-29 17:07 119次 阅读
使用MATLAB遗传算法工具箱进行太阳能电池模型仿真的资料说明

流式细胞仪是怎么实现信号的实时处理的?

流式细胞分选原理如图,这里采集到的光电信号是连续的含噪声信号,并且高斯脉冲宽度小且峰值不均一,问题在于这里如何实现信号处...
发表于 09-27 14:16 180次 阅读
流式细胞仪是怎么实现信号的实时处理的?

使用MATLAB实现风能自校正自调整的PID模糊控制器仿真研究说明

为了提高风力发电系统综台系统性能,在传统风力发电技术的基础上,对变速风力发电机组的自校正自调整PID....
发表于 09-25 17:38 138次 阅读
使用MATLAB实现风能自校正自调整的PID模糊控制器仿真研究说明

基于matlab和Simulink实现的双向DCDC变流器仿真模块资料免费下载

本文档的主要内容详细介绍的是基于matlab和Simulink实现的双向DCDC变流器仿真模块资料免....
发表于 09-24 08:00 113次 阅读
基于matlab和Simulink实现的双向DCDC变流器仿真模块资料免费下载

数学建模的预测程序代码合集免费下载

本文档的主要内容详细介绍的是数学建模的预测程序代码合集免费下载包括了:灰色预测程序,BP神经网络程序....
发表于 09-24 08:00 105次 阅读
数学建模的预测程序代码合集免费下载

MATLAB数字信号处理的85个案例分析程序合集免费下载

本文档的主要内容详细介绍的是MATLAB数字信号处理的85个案例分析程序合集免费下载。
发表于 09-24 08:00 142次 阅读
MATLAB数字信号处理的85个案例分析程序合集免费下载

MATLAB揭秘修订版PDF电子书免费下载

在这本实用的指导书帮助下你立即就可使用MATLAB了。《MATLAB揭秘》为学习这种功能强大的数学计....
发表于 09-24 08:00 149次 阅读
MATLAB揭秘修订版PDF电子书免费下载

STPIC6D595是一款单芯片,中压,低电流功率8位移位寄存器

STPIC6D595电源逻辑8位移位寄存器的典型应用。 STPIC6D595是一款单芯片,中压,低电流功率8位移位寄存器,设计用...
发表于 09-24 06:10 357次 阅读
STPIC6D595是一款单芯片,中压,低电流功率8位移位寄存器

使用MATLAB遗传算法工具箱实现控制系统的设计与仿真资料说明

本文介绍了基于MATLAB 的遗传算法工具箱( GAOT ) , 阐述了如何利用遗传算法工具箱结合S....
发表于 09-23 17:40 126次 阅读
使用MATLAB遗传算法工具箱实现控制系统的设计与仿真资料说明

使用MATLAB遗传算法实现弧形闸门主框架优化设计的详细资料说明

简要介绍了遗传算法的基本原理, 建立了弧形闸门主框架优化数学模型, 探讨了各种寻优算法的优劣及约束问....
发表于 09-23 17:10 121次 阅读
使用MATLAB遗传算法实现弧形闸门主框架优化设计的详细资料说明

先进PID控制及其MATLAB仿真PDF电子书免费下载

本书从MATLAB仿真角度系统地介绍了PID控制的基本理论、基本方法和应用技术,是作者多年来从事控制....
发表于 09-19 17:48 167次 阅读
先进PID控制及其MATLAB仿真PDF电子书免费下载

MathWorks推出Release 2019b,MATLAB 和 Simulink功能新增

MathWorks宣布推出了 Release 2019b,其中包含一系列的 MATLAB 和 Sim....
的头像 人间烟火123 发表于 09-17 17:10 1914次 阅读
MathWorks推出Release 2019b,MATLAB 和 Simulink功能新增

在MATLAB和SIMULINK环境下进行加热炉传递函数的PID仿真参数说明

提出基于MATLAB /SIMULINK环境下加热炉传递函数的PID参数整定法, 在仿真环境下直接拼....
发表于 09-17 15:21 154次 阅读
在MATLAB和SIMULINK环境下进行加热炉传递函数的PID仿真参数说明

使用MATLAB软件实现PID控制的仿真资料说明

自动化船舶的机舱设备热工参数的定值控制系统多采用PID的组合控制。文中通过MATLAB软件用于直伺服....
发表于 09-17 15:21 113次 阅读
使用MATLAB软件实现PID控制的仿真资料说明

使用MATLAB与OrCAD进行数据通信的步骤和实例详细说明

在许多应用场合,需要MATLAB与OrCAD之间进行数据通信。根据通信方式的不同,本文提出了两种Or....
发表于 09-16 16:51 109次 阅读
使用MATLAB与OrCAD进行数据通信的步骤和实例详细说明

MATLAB技术的基础知识和在空调室内气流组织数值模拟方面的应用说明

简述了Matlab技术的一些基础知识以及本文所用的相关命令,介绍了Matlab技术在空调室内气流组织....
发表于 09-16 16:51 118次 阅读
MATLAB技术的基础知识和在空调室内气流组织数值模拟方面的应用说明

使用Matlab与VB混合编程在弧齿锥齿轮SGM调整卡计算中的应用资料说明

述几种Matlab与VB混和编程的方法,比较各自的优缺点,为使系统能脱离matlab环境,实现调整卡....
发表于 09-16 15:52 127次 阅读
使用Matlab与VB混合编程在弧齿锥齿轮SGM调整卡计算中的应用资料说明