M-CAP调制Matlab仿真
MCAP(多载波幅度和相位调制)是一种结合多载波传输和QAM调制的高速数据通信技术。其原理是将数据流分成多个子流,每个子流调制到不同的子载波上并叠加传输,兼具多载波技术的抗频率选择性衰落和QAM调制的高频谱效率优势。本文通过仿真复现了MCAP系统,展示了不同参数配置下的调制和解调星座图,并提供了部分源码,包括信道采样率、滤波器阶数、QAM调制阶数等关键参数。仿真结果表明,MCAP在不同信噪比和调制
MCAP(Multi-Carrier Amplitude and Phase Modulation,多载波幅度和相位调制)是一种结合了多载波传输和 QAM 调制的技术,常用于高速数据通信系统
MCAP原理:
MCAP 将数据流分成多个子流,每个子流调制到不同的子载波上,然后叠加传输。它本质上是多载波技术与QAM 调制的结合,兼具两者的优势:多载波优势:抗频率选择性衰落、简化均衡器设计。QAM 优势:高频谱效率,通过幅度和相位同时携带信息。网上没有开源的源码,只有cap的而且不便宜,我这里自己复现出来和原论文基本一致,需要的可以找我。
系统原理图如下:

仿真结果:先看频谱图,我这里分路是设的1、4、10



使用16QAM(4,16,64都可以),下面第一张图为调制星座图,第二张图为解调星座图
下面是不同参数配置下的解码结果
M=16,snr=20
![]()
M=64,snr=10

M=64,snr=30

部分源码
Fs = 6.5e6; % 信道采样率 (6.5 MHz)
filterOrder = 10; % 滤波器阶数
m = 8; % 数据分路值(m - CAP 中的子载波数)
M = 64; % QAM 调制阶数
bitsPerSymbol = log2(M); % 每个符号携带的比特数
dataLength = 2*16*100*m*bitsPerSymbol; % 数据长度(比特总数)
rollOff = 0.5; % 滤波器滚降系数
Rs = Fs / (m * (1 + rollOff)); % 符号速率 (Hz)
sps = round(Fs / Rs); % 每符号采样点数
snr = ind; % 信噪比 (dB)
Fc = Fs / (2 * m) + Fs / m * (0:(m-1)); % 子载波中心频率 (Hz)
h = rcosdesign(rollOff, filterOrder, sps, 'sqrt'); % 根升余弦滤波器
BaudRate = Rs; % 波特率
SymbolDuration = 1/BaudRate; % 符号持续时间
Ts = 1/Fs; % 采样间隔
L = filterOrder; % 截断长度
t = (0:(dataLength/m)*sps - 1)*Ts; % 时间向量
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)