面向 Zynq-7000 SoC 的软件定义无线电原理及实现:涵盖 GNU Radio 和 MATLAB 软件的通信系统
定 价:99 元
丛书名:电子系统EDA新技术丛书
- 作者:何宾
- 出版时间:2024/12/1
- ISBN:9787121500930
- 出 版 社:电子工业出版社
- 中图法分类:TN92
- 页码:
- 纸张:
- 版次:
- 开本:
-
商品库位:
本书以Xilinx公司Zynq-7000系列SoC和ADI公司AD9361射频收发器为核心定制的硬件平台SDR-AI-Z7为基础,以GNU Radio软件和MATLAB软件为设计平台,详细介绍了软件定义无线电(Software Defined Radio,SDR)的原理,以及基于不同软件平台实现SDR通信系统的方法。 本书在介绍SDR的原理和基于SDR技术实现通信系统时,为读者展现了不同实现方法对通信系统的性能、灵活性、成本和功耗方面的影响。本书共13章,主要内容包括软件定义无线电技术基础、软件定义无线电平台硬件和软件架构、软件定义无线电平台开发环境的构建、通信信号处理的基础知识、正交调制和复指数的基础知识、前向纠错的基本原理和实现、软件定义无线电系统同步原理和实现、信道估计与均衡原理和实现、FM和FSK的GNU Radio实现、BPSK和QPSK无线传输的Simulink实现、OFDM无线传输的Simulink实现、802.11a无线传输的MATLAB实现,以及ADS-B信号接收Simulink实现。此外,本书的附录提供了AM的GNU Radio实现和QPSK的GNU Radio实现等。 本书理论和实践并重,通过采用不同的软件框架实现SDR通信系统,从多个角度诠释了软件定义无线电中“软件”的本质含义。
何宾,知名的嵌入式和EDA技术专家,长期从事电子设计自动化方面的教学和科研工作,与全球多家知名的半导体厂商和EDA工具厂商密切合作。已经出版电子信息方面的著作共40余部,内容涵盖电路仿真、电路设计、FPGA、数字信号处理、单片机、嵌入式系统等。典型的代表作有《模拟电子系统设计指南(基础篇):从半导体、分立元件到TI集成电路的分析与实现》、《模拟电子系统设计指南(实践篇):从半导体、分立元件到TI集成电路的分析与实现》、《Xilinx Zynq-7000嵌入式系统设计与实现-基于ARM Cortex-A9双核处理器和Vivado的设计方法》、《Altium Designer17一体化设计标准教程-从仿真原理和PCB设计到单片机系统》、《STC8系列单片机开发指南:面向处理器、程序设计和操作系统的分析与应用》等。
目录
第1章 软件定义无线电技术基础1
1.1 无线电频谱及分配1
1.1.1 无线电频谱的定义1
1.1.2 无线电频谱分配3
1.1.3 频谱许可和合法使用4
1.1.4 频谱政策4
1.2 自由空间路径损耗5
1.3 软件定义无线电的发展历史6
1.4 通信系统的分层模型9
1.4.1 开放系统互连模型9
1.4.2 TCP/IP模型11
1.5 无线通信标准12
1.5.1 通信标准的定义和重要性12
1.5.2 Wi-Fi的发展历程14
1.5.3 蜂窝网络的发展历程15
1.6 SDR实现通信协议栈16
1.6.1 MAC和PHY16
1.6.2 上层17
1.6.3 无线物理层17
第2章 软件定义无线电平台硬件和软件架构19
2.1 软件定义无线电架构的演进19
2.1.1 基带采样/模拟中频基带采样SDR19
2.1.2 数字中频采样SDR20
2.1.3 带可调谐RF的基带采样SDR20
2.1.4 直接射频SDR22
2.2 可重构软件定义无线电平台硬件架构23
2.2.1 Xilinx Zynq-7000异构架构SoC23
2.2.2 ADI的AD9361射频收发器23
2.2.3 软件无线电硬件开发平台27
2.2.4 Vivado底层硬件框架29
2.3 使用软件无线电框架的必要性49
2.4 ADI的IIO子系统51
2.5 GNU Radio软件无线电开发框架55
2.5.1 GNU Radio的发展历史55
2.5.2 GNU Radio的功能56
2.5.3 GNU Radio的初衷57
2.5.4 GNU Radio中的典型块59
2.6 MathWorks软件无线电开发框架60
2.6.1 AD9361 Simulink模型60
2.6.2 通用的通信和DSP系统工具箱功能63
2.6.3 面向硬件可编程逻辑的Simulink工具流程64
2.6.4 SDR设计中的软硬件协同设计方法的框架64
2.6.5 SDR设计中的软硬件协同设计方法的实现65
2.7 动态可重配置软件无线电开发框架68
2.7.1 动态可重配置技术与SoC结构的结合68
2.7.2 动态可重配置技术的核心单元69
第3章 软件定义无线电平台开发环境的构建71
3.1 Vivado设计套件的下载和安装71
3.1.1 Vivado设计套件的设计流程71
3.1.2 Vivado设计套件的下载73
3.1.3 Vivado设计套件的安装75
3.1.4 添加许可文件79
3.1.5 添加板支持包81
3.2 GNU Radio软件的下载和安装81
3.2.1 GNU Radio软件的下载81
3.2.2 GNU Radio软件的安装83
3.3 MATLAB软件的下载和安装86
3.3.1 MATLAB软件的下载86
3.3.2 MATLAB软件的安装87
3.3.3 安装Simulink软件支持包93
3.3.4 添加HDL Coder工具补丁包96
3.3.5 安装定制硬件平台的软件支持包97
第4章 通信信号处理的基础知识98
4.1 调制和解调98
4.2 射频术语和参数98
4.3 多速率信号处理99
4.3.1 多速率采样的原因99
4.3.2 过采样ADC和DAC100
4.3.3 抽取101
4.3.4 插值102
4.3.5 半带和L带滤波器103
4.3.6 抽取和插值级联104
4.4 基带调制(位到符号)106
4.4.1 正交调制与符号空间维度106
4.4.2 幅移键控107
4.4.3 正交幅度调制107
4.4.4 相移键控109
4.4.5 其他调制方案110
4.5 基带解调(符号到位)110
4.5.1 符号判决111
4.5.2 加性高斯白噪声信道111
4.5.3 误差矢量幅度113
4.5.4 比特错误率113
4.6 无线信道113
4.6.1 信道效应114
4.6.2 解决方法117
4.7 脉冲整形与匹配滤波118
4.7.1 符号作为脉冲119
4.7.2 脉冲整形要求和实现119
4.7.3 平方根升余弦匹配滤波120
4.7.4 最大效果点121
4.8 比特错误率分析121
第5章 正交调制和复指数的基础知识123
5.1 信号的表示123
5.1.1 模拟和数字信号123
5.1.2 实数和复数信号123
5.1.3 欧拉公式124
5.1.4 使用复数频谱在频域中查看实信号125
5.2 幅度调制和解调129
5.2.1 双边带抑制载波幅度调制130
5.2.2 幅度解调131
5.2.3 带有相位误差的幅度解调132
5.3 正交幅度调制和解调133
5.3.1 正交调制的三角表示133
5.3.2 正交解调的三角表示134
5.3.3 带相位移动的正交解调135
5.4 复数符号的正交调制和解调136
5.4.1 复指数表示法的正交调制136
5.4.2 复指数表示法的正交解调137
5.5 复指数解调的频谱表示138
5.6 接收机的频率偏移和校正141
第6章 前向纠错的基本原理和实现143
6.1 前向纠错概论143
6.1.1 前向纠错的背景143
6.1.2 前向纠错的基本原理143
6.1.3 最大似然译码146
6.2 汉明码146
6.2.1 汉明码的参数146
6.2.2 最小距离的定义及其和纠错检错能力的关系147
6.2.3 一致监督矩阵147
6.2.4 生成矩阵149
6.2.5 线性分组码的编码149
6.2.6 线性分组码的译码150
6.3 循环码153
6.3.1 循环码的定义和生成多项式154
6.3.2 监督多项式和监督矩阵156
6.3.3 (n,k)循环码的编码157
6.3.4 (n,k)循环码的译码161
6.4 卷积码167
6.5 维特比译码器169
6.6 BCJR、Log-MAP和Max-Log-MAP算法172
6.6.1 BCJR算法172
6.6.2 Log-MAP和MAX-Log-MAP算法174
6.7 卷积码的性能175
6.8 衰落信道的前向纠错176
6.9 Turbo码177
6.10 LDPC码181
6.10.1 编码181
6.10.2 译码183
6.10.3 5G NR标准中的LDPC码186
第7章 软件定义无线电系统同步原理和实现188
7.1 信号的同步问题188
7.2 定时同步189
7.2.1 符号定时原理189
7.2.2 符号定时恢复结构189
7.2.3 定时误差检测器190
7.2.4 定时分辨率196
7.3 载波同步196
7.3.1 载波偏移197
7.3.2 粗频率校正197
7.3.3 细频率校正198
7.4 帧同步204
7.4.1 帧的常见格式205
7.4.2 巴克码205
7.4.3 Zadoff-Chu序列209
7.4.4 高莱互补序列211
第8章 信道估计与均衡原理和实现213
8.1 多径干扰213
8.2 信道估计214
8.3 均衡器217
8.3.1 线性均衡器217
8.3.2 非线性均衡器220
第9章 FM和FSK的GNU Radio实现223
9.1 FM的原理和相关参数223
9.1.1 FM的原理223
9.1.2 FM的相关参数224
9.2 系统设计环境支持225
9.3 FM发射系统的设计226
9.3.1 启动GNU Radio软件226
9.3.2 添加Wav File Source块227
9.3.3 添加WBFM Transmit块228
9.3.4 添加QT GUI Time Sink块229
9.3.5 添加QT GUI Sink块231
9.3.6 添加FMComms2/3/4 Sink块232
9.3.7 连接流程图中的块233
9.3.8 保存设计234
9.4 FM接收系统的设计234
9.4.1 启动GNU Radio软件234
9.4.2 添加FMComms2/3/4 Source块235
9.4.3 添加QT GUI Sink块236
9.4.4 添加Low Pass Filter块(一)237
9.4.5 添加WBFM Receive块238
9.4.6 添加Multiply Const块239
9.4.7 添加Low Pass Filter块(二)241
9.4.8 添加Audio Sink块241
9.4.9 连接流程图中的块242
9.4.10 保存设计244
9.5 系统测试和验证244
9.5.1 镜像文件的复制244
9.5.2 安装PuTTY软件工具246
9.5.3 硬件平台的设置和启动247
9.5.4 配置网络参数249
9.5.5 FM无线传输系统的硬件测试250
9.6 FSK的原理252
9.6.1 2-FSK的原理252
9.6.2 其他FSK方式254
9.7 FSK原理仿真255
9.7.1 系统参数设置257
9.7.2 信源生成子系统257
9.7.3 FSK调制子系统258
9.7.4 FSK解调与验证子系统258
9.7.5 FSK原理仿真260
9.8 FSK发射机的设计260
9.8.1 FSK发射机的参数262
9.8.2 FSK发射机的结构262
9.9 FSK接收机的设计263
9.9.1 FSK解调子系统的结构265
9.9.2 FSK数据恢复子系统的结构265
9.10 FSK文件传输系统测试266
9.10.1 测试前的准备工作266
9.10.2 系统测试结果267
第10章 BPSK和QPSK无线传输的Simulink实现271
10.1 系统设计结构271
10.2 BPSK和QPSK基带处理器的设计272
10.2.1 创建新的Simulink设计模型272
10.2.2 符号映射276
10.2.3 整形滤波279
10.2.4 自动增益控制280
10.2.5 粗频率校正281
10.2.6 细频率校正284
10.2.7 时序同步288
10.2.8 帧同步290
10.2.9 抽样判决292
10.3 基带处理模块功能仿真与系统仿真292
10.3.1 QPSK仿真环境的构建292
10.3.2 查看系统采样率294
10.3.3 按模块功能仿真295
10.3.4 系统功能仿真301
10.3.5 BPSK功能仿真301
10.4 编译HDL模型与软件接口模型303
10.4.1 编译HDL模型303
10.4.2 软件接口模型设计312
10.4.3 软件模型的设计316
10.5 单个SDR硬件平台上运行发送和接收测试317
10.5.1 硬件设备连接317
10.5.2 发射端与接收端的IP设置318
10.5.3 执行MATLAB脚本318
10.5.4 运行设计319
10.5.5 可编程逻辑资源利用率321
10.6 编译为独立的可执行文件并运行321
10.6.1 编译独立的可执行文件321
10.6.2 加载设计及运行可执行文件322
第11章 OFDM无线传输的Simulink实现326
11.1 OFDM的产生背景326
11.1.1 OFDM技术的起因326
11.1.2 OFDM的动机327
11.2 多载波调制330
11.3 OFDM的原理332
11.3.1 OFDM调制和解调332
11.3.2 循环前缀334
11.4 OFDM系统框架336
1