主要内容

mil188qamdemod

mil - std - 188 - 110 B / C标准具体正交振幅解调

描述

例子

z= mil188qamdemod (y,)对输入执行QAM解调信号,y,这是调制符合mil - std - 188 - 110和调制秩序,。描述的mil - std - 188 - 110 QAM解调,明白了mil - std - 188 - 110 QAM解调mil - std - 188 - 110 QAM软解调

例子

z= mil188qamdemod (y,,名称,值)使用一个或多个名称-值对参数指定选项。例如,“OutputDataType”、“双”指定所需的输出数据类型作为双。其他所有输入参数后指定参数名称-值对。

例子

全部折叠

调制解调16-QAM信号是指定在mil - std - 188 - 110 b。情节接收到的星座和验证输出与输入。

设置调制秩序,产生随机数据。

M = 16;numSym = 20000;x =兰迪([0 m - 1] numSym 1);

调整数据,通过噪声信道。

txSig = mil188qammod (x, M);rxSig = awgn (txSig, 25岁,“测量”);

画出传输和接收信号。

情节(rxSig" b *’)举行;网格图(txSig的r *)xlim ([-1.5 - 1.5]);ylim([-1.5 - 1.5])包含(“同步”)ylabel (“交”)传说(“收到星座”,“参考星座”)

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。这些对象代表了星座,星座参考。

解调接收到的信号。比较解调数据到原始数据。

z = mil188qamdemod (rxSig, M);isequal (x, z)
ans =逻辑1

64 - qam解调的信号被调制为指定mil - std - 188 - 110 - c。计算困难的决定一点输出,验证输出与输入。

设置调制秩序和生成随机数据。

M = 64;numBitsPerSym = log2 (M);x =兰迪([0,1],1000 * numBitsPerSym, 1);

调整数据。使用名称-值对指定输入数据和绘制的星座。

txSig = mil188qammod (x, M,“InputType”,“一点”,“PlotConstellation”,真正的);

图包含一个坐标轴对象。坐标轴对象与标题MIL188 64 - qam, UnitAveragePower = false包含67行类型的对象,文本。

解调接收到的信号。比较解调数据到原始数据。

z = mil188qamdemod (txSig, M,“OutputType”,“一点”);isequal (z, x)
ans =逻辑1

解调32-QAM信号并计算软比特。

设置调制秩序和生成一个随机序列。

M = 32;numSym = 20000;numBitsPerSym = log2 (M);x =兰迪([0,1],numSym * numBitsPerSym, 1);

调整数据。使用名称-值对指定输入数据和单元平均功率,并画出星座。

txSig = mil188qammod (x, M,“InputType”,“一点”,“UnitAveragePower”,真的,“PlotConstellation”,真正的);

图包含一个坐标轴对象。坐标轴对象与标题MIL188 32-QAM, UnitAveragePower = true 35行,类型的对象包含文本。

通过高斯白噪声通过传输数据。

rxSig = awgn (txSig 10“测量”);

查看星座使用散点图。

散点图(rxSig)

图散点图包含一个坐标轴对象。标题为散点图的坐标轴对象包含一个类型的对象。这个对象表示通道1。

解调信号,使用近似计算软比特LLR算法。

z = mil188qamdemod (rxSig, M,“OutputType”,“approxllr”,“NoiseVariance”10 ^ (1));

输入参数

全部折叠

调制信号,指定为一个复杂的标量、向量或矩阵。当y是一个矩阵,每一列都被视为一个独立的通道。

y必须调制符合mil - std - 188 - 110吗[1]

数据类型:|
复数的支持:金宝app是的

调制命令,指定为2的幂。调制顺序指定信号星座点的总数。

例子:16

数据类型:

名称-值参数

指定可选的逗号分隔条名称,值参数。的名字参数名称和吗价值相应的价值。的名字必须出现在引号。您可以指定几个名称和值对参数在任何顺序Name1, Value1,…,的家

例子:y = mil188qamdemod (x, M,‘OutputType’,‘位’,‘OutputDataType’,‘单身’);

输出类型,指定为逗号分隔组成的OutputType“整数”,“一点”,“llr”,或“approxllr”

数据类型:字符|字符串

输出数据类型指定为逗号分隔组成的OutputDataType其中一个表示数据类型。可接受的值OutputDataType依赖于OutputType价值。

OutputType价值 可接受的OutputDataType
“整数” “双”,“单一”,“int8”,“int16”,“int32”,“uint8”,“uint16”,或“uint32”
“一点” “双”,“单一”,“int8”,“int16”,“int32”,“uint8”,“uint16”,“uint32”,或“逻辑”

依赖关系

这只适用于当名称-值对的论点OutputType被设置为“整数”“一点”

数据类型:字符|字符串

单位平均功率标志,指定为逗号分隔组成的UnitAveragePower和一个逻辑标量。当这个标志真正的,函数尺度星座的平均功率1瓦特引用1欧姆。当这个标志,函数尺度在相关标准,基于规范的星座描述的[1]

数据类型:逻辑

噪声方差,指定为逗号分隔组成的NoiseVariance和积极的标量或矢量的积极的价值观。

  • 当指定为一个标量,相同的噪声方差值是用于所有输入元素。

  • 当指定为一个向量,向量的长度必须等于输入信号中的列的数量。

当噪声方差或信号功率导致计算涉及极端积极或消极的震级,明白了mil - std - 188 - 110 QAM软解调算法选择的考虑。

依赖关系

这只适用于当名称-值对的论点OutputType被设置为“llr”“approxllr”

数据类型:

选择绘制星座,指定为逗号分隔组成的“PlotConstellation”和一个逻辑标量。情节星座,集PlotConstellation真正的

数据类型:逻辑

输出参数

全部折叠

解调信号,作为一个标量返回向量或矩阵。的尺寸z取决于指定的OutputType价值。

OutputType价值 的返回值mil188qamdemod 的尺寸z
“整数” 解调的整数值从0到(- 1) z有相同的维数作为输入y
“一点” 解调的位 的行数z日志2(金额())倍的行数y。每个符号映射到一组解调技术日志2(金额())在一列元素,第一个元素代表了MSB和最后一个元素代表了LSB。
“llr” 每一位对数似比率值
“approxllr” 每一位值近似对数似然比

更多关于

全部折叠

mil - std - 188 - 110 QAM解调

硬提出解调解调算法使用最佳的决定。因为所有的星座点是等可能的,最大后验概率(MAP)检测降低最大似然(ML)检测。ML检测规则相当于选择最近的星座点接收到的象征。每个星座点的决定地区是由绘图设计相邻点之间的垂直平分线。收到的符号映射到适当的星座点根据它决定地区位于。

因为所有基础的星座是quadrant-based对称,每个符号最优决策提出解调:

  • 将接收到的符号映射到第一象限

  • 选择决定地区的象征

  • 地图星座点回到原来的象限使用收到的实部和虚部的标志符号

mil - std - 188 - 110 QAM软解调

软解调两(LLR)算法是可用的:不痒的决定对数似然比的LLR和近似LLR。这个表比较了这些算法。

算法 精度 执行速度
确切的LLR 更准确的 慢的执行
近似LLR 不准确 更快的执行

为进一步对这些算法的描述,看看确切的LLR算法近似LLR算法

请注意

确切的LLR算法使用有限精度算法计算指数。指数的计算非常大的积极或消极的大小可能会产生:

  • 如果噪声方差是一个非常大的价值

  • 如果噪声方差和信号功率很小的值

当输出返回任何值,试着用LLR近似算法,因为它不计算指数。

引用

[1]mil - std - 188 - 110 b和C:“互操作性和数据调制解调器的性能标准。”Department of Defense Interface Standard, USA.

扩展功能

C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。

介绍了R2018a