理论篇 2
第1章 线性时不变——通信系统的基石 2
1.1 LTI系统 3
1.2 非LTI系统存在的意义 7
1.2.1 时变系统的MATLAB仿真 9
1.2.2 非线性系统的MATLAB仿真 12
1.3 总结 13
1.4 参考程序 14
第2章 五花八门的通信标准 15
2.1 有线通信 16
2.1.1 xDSL 16
2.1.2 IEEE 802.3(Ethernet) 17
2.1.3 HomePlug 18
2.2 无线通信 20
2.2.1 蜂窝通信 20
2.2.2 IEEE 802.11(Wi-Fi) 27
第3章 为什么通信标准中不采用单边带调制 30
3.1 SSB调制的原理 31
3.2 采用SSB调制的前提条件 32
3.3 发散思维(一)——ASK+SSB模式可行吗 37
3.4 发散思维(二)——三维QAM可行吗 39
第4章 被误解的最大似然——算法与准则的区别和联系 41
4.1 穷举法 42
4.2 优化算法(一) 44
4.3 优化算法(二) 59
4.4 对三种算法复杂度的比较 66
4.5 原来ML可以不复杂 71
4.6 发散思维(一)——硬件设计 71
4.7 发散思维(二)——软解调 73
4.8 参考程序 74
第5章 定点仿真——定点方案未必为真 75
5.1 问题所在 76
5.2 解决方案 77
5.3 博弈:绝不溢出vs很小可能溢出 78
5.3.1 做不到 78
5.3.2 没必要 78
5.3.3 折中——产业界永恒不变的主题 79
5.4 建模误差——让定点方案误入歧途 79
5.5 答在之后:你选择好了么 82
5.6 参考程序 82
第6章 信噪比中的玄机——Eb/N0.Es/N0和S/N三者的关系 83
6.1 Eb/N0与Es/N0的单位 84
6.2 Eb/N0与Es/N0的关系 84
6.3 Es/N0与S/N的关系 85
6.3.1 复基带信号通过AWGN 86
6.3.2 过采样的信号通过AWGN 91
6.3.3 实带通信号通过AWGN 94
6.3.4 AWGN模块对实基带信号的处理 97
6.4 加入所有因素的仿真 100
6.5 参考程序 105
第7章 OFDM技术如何抵抗多径衰落 106
7.1 理想定时同步情况下的推导 109
7.2 定时同步不准造成的影响 115
7.2.1 向前偏差1个采样点 115
7.2.2 向前偏差n0个采样点 116
7.3 参考程序 117
第8章 当概率遇上复数时 119
8.1 对AWGN进行DFT之后的统计分析 119
8.2 从随机信号到随机变量 127
8.3 发散思维——量子概率 127
8.4 参考程序 128
第9章 深入浅出线性分组码 129
9.1 线性分组码的概念 131
9.2 生成矩阵的基本特性 132
9.3 校验矩阵的基本特性 133
9.4 参考程序 139
第10章 熟悉又陌生的信道容量与香农限 140
10.1 信道容量 141
10.1.1 AWGN波形信道 141
10.1.2 BSC信道 142
10.1.3 BI-AWGN信道 145
10.2 香农限 146
10.2.1 码率和误比特率都趋于0时的香农限 147
10.2.2 非零码率、误比特率为0时的香农限 152
10.2.3 非零码率、非零误比特率下的香农限 156
10.2.4 码长对香农限的影响 158
10.2.5 码的类别对香农限的影响 161
10.3 参考程序 162
实战篇 164
第11章 MATLAB高效编程 164
11.1 何为好程序 164
11.2 利用profile评估运行时间 166
11.3 预分配内存 167
11.4 列优先准则 169
11.5 向量化编程vs循环加速 174
11.6 使用稀疏矩阵 186
11.7 选择恰当的数据类型 186
11.8 选择恰当的函数类型 189
11.9 可提高开发效率的函数 190
11.9.1 arrayfun和cellfun函数 190
11.9.2 bsxfun函数 193
11.10 参考程序 194
第12章 MATLAB并行编程——parfor并行结构 195
12.1 为什么要仿真 195
12.2 并行问题的由来——从抛硬币说起 196
12.3 能够并行运行的条件 197
12.4 MATLAB并行池的打开与关闭 198
12.5 MATLAB并行工作的原理 198
12.6 在MATLAB中编写并行程序 200
12.7 parfor循环中的变量类型 201
12.7.1 循环变量 202
12.7.2 分段变量 203
12.7.3 广播变量 208
12.7.4 临时变量 208
12.8 简约操作与简约变量 209
12.8.1 MATLAB built-in简约操作规范 212
12.8.2 用户自定义的简约操作规范 213
12.9 并行编程之优化 221
12.10 并行编程之调试 223
12.11 其他MATLAB并行编程 226
12.12 参考程序 226
第13章 MATLAB与C、C++混合编程——MEX文件 228
13.1 MATLAB编译器的安装及设置 229
13.2 MATLAB中调用MEX文件的实例 230
13.3 MEX文件结构说明 234
13.4 编译MEX文件的常用选项 235
13.5 MATLAB与C、C++的接口数据类型 236
13.6 创建MATLAB矩阵mxArray的mx函数 239
13.7 对MATLAB矩阵mxArray的读写操作 241
13.8 对mxArray矩阵维数的操作 243
13.9 对mxArray矩阵索引号的操作 245
13.10 运行结果分析 246
13.11 C、C++语言,快者恒快吗 247
13.12 MEX文件的调试 249
13.13 参考程序 251
附录A 星座映射归一化系数的计算 252
附录B 带通随机信号的功率谱密度 256
附录C OFDM峰值的分布特性 258
C.1 取得最大值的概率 258
C.2 OFDM符号PAPR特性 262
附录D 802.11ac中LDPC码的校验矩阵 265
附录E 不同类型信道的信道容量 270
E.1 AWGN波形信道 272
E.2 BSC信道 275
E.3 BI-AWGN信道 275
参考文献 278