根据老师的安排,对于极化码的了解从仿真开始。

仿真的手段有很多种。可以利用C,C++,matlab等进行仿真的实现。其中matlab由于具有强大的函数库,和壮观的矩阵运算能力,被(我们老师课题组)看中了。

理由是,matlab的语法非常简单,接近自然语言。优秀的绘图能力,让其他软件自愧不如。还有众多的工具箱,功能强大到令人发指。当然非要用C来仿真也是可以的。但试想一个简单的函数,matlab只需要调用一下就好了,C语言怕是要自己动手写两行,何必自找麻烦呢。

话不多说,等下,我再说最后一句,本人研究水平不高,在描述很多问题的时候不能从较高的高度去剖析,表述难免有些肤浅,海涵 TvT|l'。

好了,话不多说。

matlab仿真极化码,第一步是要确定仿真的参数。都有哪些参数呢?

码块:block;

码长:N;

码率:R;

信噪比:SNR(dB)、snr;

大概就是这些了,解释一下。

block,码块,我的理解是“一次信息发送动作所传递的信息位数”,可能一个码块代表着一个具有完整意义的信息,因此码块不可分割发送。例如,一个码块相当于一篇文章。

N,码长,我的理解是“一个信息单元所占据的比特位数”,例如,如果码块是文章,码长就是文章中的一个个文字。

R,码率,就是有用信息占所传输信息的比例。在信息传输之中,为了能够提高传输准确性,常常在信息位中插入不具有信息量的信息。一般来说R越小,准确性越高,但是对应传输效率就越低。鱼与熊掌不可兼得的道理。想要靠谱就得牺牲速度;想要提高速度,就要忍受不靠谱。

SNR,signal noise ratio,信噪比,换算关系如下:SNR(dB)=10*log10(snr)。为什么要进行这样的换算?跟使用对数坐标轴一个道理,方便,简单,绘图的时候好看。

为了因为我只会仿真低阶方便仿真,在这里我们进行如下参数规定:

%% 预定义
clear;
clc; %预处理
block=10; %码块
N=2^3;    %码长
R=1/2;    %码率
SNR=1:5;  %信噪比dB
snr=10.^(SNR./10); %信噪比 

预定义到这里还没有完。接下来为了方便编程,继续定义将用到的其他变量。

S=floor(N*R);       % 信息位所占码长,使用floor意在当N为奇数时冻结位占据数量优势
F=N-S; % 冻结位所占码长
ST=S*block; % signal_total总的信息位长度
FT=F*block; % frozen_total总的冻结位长度

极化码的matlab仿真(1)——参数设置的更多相关文章

  1. 极化码的matlab仿真(4)——SC译码(2)

    ================================================ 首先自作多情的说一句--"抱歉!" 古语"有志者.事竟成",是 ...

  2. 极化码的matlab仿真(3)——SC译码(1)

    一个好码必须具备两个要素:可靠.高效. 高效的码要求码的编译方案都具有较低的复杂度.极化码出现后,Arikan本人提出使用SC译码方案来进行译码操作.SC全称successive cancellati ...

  3. 极化码的matlab仿真(2)——编码

    第二篇我们来介绍一下极化码的编码. 首先为了方便进行编码,我们需要进行数组的定义 signal = randi([0,1],1,ST); %信息位比特,随机二进制数 frozen = zeros(1, ...

  4. js生成二维码参数设置

    jquery qrcode使用方法 $(selector).qrcode({ width: 100, height: 100, color: '#3a3', text: 'http://larsjun ...

  5. matlab 可变参数与默认参数设置

    1. 基本思路 矩阵矢量化编程,而不是循环和遍历: GPU 并行计算: 使用稀疏矩阵: 2. 实践 可变长输入参数,输出参数,需要解析(使用大括号进行索引): varargin varargout 函 ...

  6. 极化码之tal-vardy算法(1)

    继前两节我们分别探讨了极化码的编码,以及深入到高斯信道探讨高斯近似法之后,我们来关注一个非常重要的极化码构造算法.这个算法并没有一个明确的名词,因此我们以两位发明者的名字将其命名为“Tal-Vardy ...

  7. UVW平台运动控制算法以及matlab仿真

    UVW平台运动控制算法以及matlab仿真   最近公司同事因为对某视觉对位平台的运动控制算法有疑问,所以来请教我.由于我也是第一次接触到UVW自动对位平台(也可以叫XXY自动对位平台),于是找了一些 ...

  8. OFDM通信系统的MATLAB仿真(2)

    关于OFDM系统的MATLAB仿真实现的第二篇随笔,在第一篇中,我们讨论的是信号经过AWGN信道的情况,只用添加固定噪声功率的高斯白噪声就好了.但在实际无线信道中,信道干扰常常是加性噪声.多径衰落的结 ...

  9. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(二)-Hexo参数设置

    前言 前文手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置介绍了github注册.git相关设置以及hexo基本操作. 本文主要介绍一下hexo的常用参数设置. ...

随机推荐

  1. Java映射

    1.Student类 package com.zdsofe.javaweb.lianxi1; public class Student { public String stuName; private ...

  2. Python初识(PyMysql实例)

    为什么学习python呢,好吧,其实我也不知道,反正就是想学习了. 资料什么的全都low了,传值博客免费的就够.不要问我为什么,我基本上都是找的免费的视频.然后传值博客的最多,我真的不是打广告. py ...

  3. 微信小程序-滚动消息通知

    写在前面: 微信小程序学的不太多,做了一个简单的项目,回来很快时间内把在深圳两天的房租给赚回来了. 这次我主要想总结一下微信小程序实现上下滚动消息提醒,主要是利用swiper组件来实现,swiper组 ...

  4. Redux源码分析之基本概念

    Redux源码分析之基本概念 Redux源码分析之createStore Redux源码分析之bindActionCreators Redux源码分析之combineReducers Redux源码分 ...

  5. 【.net 深呼吸】自定义应用程序配置节

    实际上,应用程序配置文件 App.config,是由各个节(Configuration Section)组成的,通常,配置节是按功能划分的,比如我们很熟悉的 appSettings.connectio ...

  6. [js高手之路] es6系列教程 - 箭头函数详解

    箭头函数是es6新增的非常有意思的特性,初次写起来,可能会觉得别扭,习惯之后,会发现很精简. 什么是箭头函数? 箭头函数是一种使用箭头( => )定义函数的新语法, 主要有以下特性: 不能通过n ...

  7. 分布式事务,EventBus 解决方案:CAP【中文文档】

    前言 很多同学想对CAP的机制以及用法等想有一个详细的了解,所以花了将近两周时间写了这份中文的CAP文档,对 CAP 还不知道的同学可以先看一下这篇文章. 本文档为 CAP 文献(Wiki),本文献同 ...

  8. centos7安装docker并安装jdk和tomcat(常用命令)

    阿里专属的镜像加速 在宿主机器编辑文件:vi /etc/docker/daemon.json 阿里专属的镜像加速地址,类似于"https://91cntlkt.mirror.aliyuncs ...

  9. ABP+AdminLTE+Bootstrap Table权限管理系统第七节--登录逻辑及abp封装的Javascript函数库

    经过前几节,我们已经解决数据库,模型,DTO,控制器和注入等问题.那么再来看一下登录逻辑.这里算是前面几节的一个初次试水. 首先我们数据库已经有的相应的数据. 模型和DTO已经建好,所以我们直接在服务 ...

  10. EXT中导出表格中的数据到Excel

    { itemId: 'excel', text: '导出', iconCls: 'btnExportExcel', disabled: false, handler: function () { // ...