第四章:调制解调技术 深入解析蓝牙调制解调技术:GFSK、π/4-DQPSK、8DPSK 的原理、数学模型、硬件实现及性能分析
4.1 调制概述 4.1.1 调制的目的 为什么要调制?
基带信号特点:
├── 频率低 (0-1 MHz)
├── 波长长 (300m+)
├── 天线尺寸大
└── 无法有效辐射
调制的作用:
├── 将基带信号搬移到高频载波 (2.4 GHz)
├── 减小天线尺寸 (λ/4 ≈ 31 mm)
├── 实现频分复用 (多信道)
└── 提高抗干扰能力
调制的一般模型:
s(t) = A(t) · cos[2πf_c·t + φ(t)]
其中:
├── A(t): 幅度 (ASK 调制)
├── f_c: 载波频率
├── φ(t): 相位 (PSK 调制)
└── 瞬时频率 f_i = f_c + (1/2π)·dφ/dt (FSK 调制)
4.1.2 蓝牙调制方式 蓝牙版本 调制方式 数据率 频谱效率 BR (1.x) GFSK 1 Mbps 0.5 bit/s/Hz EDR (2.x) π/4-DQPSK 2 Mbps 1 bit/s/Hz EDR (2.x) 8DPSK 3 Mbps 1.5 bit/s/Hz BLE (4.x-5.x) GFSK 1-2 Mbps 0.5-1 bit/s/Hz
4.2 GFSK 调制 4.2.1 GFSK 原理 高斯频移键控 (GFSK) 定义:
GFSK = FSK + 高斯预滤波
基本 FSK:
数据 '1' → 频率 f_c + Δf
数据 '0' → 频率 f_c - Δf
GFSK 改进:
在频率调制前,先通过高斯低通滤波器
目的:平滑相位跳变,减小带外辐射
GFSK 信号表达式:
s(t) = A · cos[2πf_c·t + φ(t)]
其中相位 φ(t) 为:
φ(t) = 2πΔf · ∫_{-∞}^{t} m(τ) · g(t-τ) dτ
m(τ): 基带数据序列 (±1)
g(t): 高斯脉冲响应
Δf: 峰值频偏 (蓝牙:160 kHz)
高斯脉冲响应:
g(t) = (1/2T) · [Q(α(t-T/2)) - Q(α(t+T/2))]
其中:
├── T: 符号周期 (1 μs for 1 Mbps)
├── α = 2πB / √(ln 2)
├── B: 高斯滤波器 3dB 带宽
└── Q(x): 高斯 Q 函数 = (1/√2π) · ∫_x^∞ e^(-u²/2) du
BT 乘积:
BT = B × T
蓝牙标准:BT = 0.5
BT 乘积的影响:
BT = 0.3 (更窄带宽)
├── 优点:频谱更集中,带外辐射小
├── 缺点:码间干扰 (ISI) 增大,需要更高 SNR
└── 应用:频谱受限场景
BT = 0.5 (蓝牙标准)
├── 优点:ISI 和频谱的折中
├── 缺点:无明显缺点,平衡设计
└── 应用:蓝牙标准
BT = 0.7 (更宽带宽)
├── 优点:ISI 小,眼图张开度大
├── 缺点:带外辐射增大
└── 应用:高速率场景
BT = 1.0 (无滤波)
├── 优点:无 ISI
├── 缺点:频谱宽,带外辐射大
└── 应用:退化为普通 FSK
4.2.2 GFSK 调制器实现 数字 GFSK 调制器架构:
数字域 模拟域
输入数据 ──► 高斯滤波 ──► 相位累加 ──► CORDIC ──► DAC ──► 混频 ──► RF
(FIR) (累加器) (查找表)
详细结构:
┌─────────────────────────────────────────────────────────────┐
│ GFSK 调制器 │
├─────────────────────────────────────────────────────────────┤
│ │
│ data_in ──► ┌─────────┐ ──► ┌─────────┐ ──► ┌─────────┐ │
│ │ 高斯 FIR │ │ 相位累加 │ │ CORDIC │ │
│ │ 滤波器 │ │ 器 │ │ 查找表 │ │
│ └─────────┘ └─────────┘ └─────────┘ │
│ │ │ │ │
│ │ │ ▼ │
│ h[n]系数 频率字 I/Q 输出 │
│ │
└─────────────────────────────────────────────────────────────┘
高斯 FIR 滤波器设计:
module gaussian_filter (
input wire clk ,
input wire reset_n ,
input wire signed [ 7 : 0 ] data_in , // ±1 映射为 ±127
output reg signed [ 15 : 0 ] data_out ,
input wire enable
);
// 高斯 FIR 系数 (BT=0.5, 截断到 5 个符号)
// 计算得到:h = [0.0107, 0.0879, 0.4028, 0.0879, 0.0107]
// 量化为 8 位定点数
localparam [ 7 : 0 ] H0 = 8 ' sd1 ; // 0.0107 × 127 ≈ 1
localparam [ 7 : 0 ] H1 = 8 ' sd11 ; // 0.0879 × 127 ≈ 11
localparam [ 7 : 0 ] H2 = 8 ' sd51 ; // 0.4028 × 127 ≈ 51
// 5 级移位寄存器
reg signed [ 7 : 0 ] delay_line [ 0 : 4 ];
// FIR 计算
wire signed [ 15 : 0 ] mult0 , mult1 , mult2 , mult3 , mult4 ;
wire signed [ 17 : 0 ] sum ;
assign mult0 = $signed ( delay_line [ 0 ]) * $signed ( H0 );
assign mult1 = $signed ( delay_line [ 1 ]) * $signed ( H1 );
assign mult2 = $signed ( delay_line [ 2 ]) * $signed ( H2 );
assign mult3 = $signed ( delay_line [ 3 ]) * $signed ( H1 );
assign mult4 = $signed ( delay_line [ 4 ]) * $signed ( H0 );
assign sum = mult0 + mult1 + mult2 + mult3 + mult4 ;
always @( posedge clk or negedge reset_n ) begin
if ( ! reset_n ) begin
delay_line [ 0 ] <= 8 ' sd0 ;
delay_line [ 1 ] <= 8 ' sd0 ;
delay_line [ 2 ] <= 8 ' sd0 ;
delay_line [ 3 ] <= 8 ' sd0 ;
delay_line [ 4 ] <= 8 ' sd0 ;
data_out <= 16 ' sd0 ;
end else if ( enable ) begin
// 移位
delay_line [ 4 ] <= delay_line [ 3 ];
delay_line [ 3 ] <= delay_line [ 2 ];
delay_line [ 2 ] <= delay_line [ 1 ];
delay_line [ 1 ] <= delay_line [ 0 ];
delay_line [ 0 ] <= data_in ;
// 输出
data_out <= sum [ 17 : 2 ]; // 右移 2 位归一化
end
end
endmodule
相位累加器:
module phase_accumulator (
input wire clk ,
input wire reset_n ,
input wire signed [ 15 : 0 ] freq_dev , // 频率偏差输入
output reg [ 15 : 0 ] phase_out ,
input wire enable
);
reg [ 15 : 0 ] phase_reg ;
// 载波相位增量 (2.4 GHz 对应值)
localparam [ 15 : 0 ] CARRIER_INC = 16'h4000 ; // 示例值
always @( posedge clk or negedge reset_n ) begin
if ( ! reset_n ) begin
phase_reg <= 16'h0000 ;
phase_out <= 16'h0000 ;
end else if ( enable ) begin
// 相位 = 相位 + 载波频率 + 频偏
phase_reg <= phase_reg + CARRIER_INC + freq_dev ;
phase_out <= phase_reg ;
end
end
endmodule
CORDIC 查找表:
module cordic_lut (
input wire [ 15 : 0 ] phase_in ,
output reg [ 11 : 0 ] sine_out ,
output reg [ 11 : 0 ] cosine_out
);
// 正弦查找表 (4096 点,12 位输出)
reg [ 11 : 0 ] sine_lut [ 0 : 4095 ];
// 初始化 (仿真时加载,实际可用 ROM)
initial begin
integer i ;
real pi = 3.14159265358979 ;
for ( i = 0 ; i < 4096 ; i = i + 1 ) begin
sine_lut [ i ] = $rtoi ( 2047 * $sin ( 2 * pi * i / 4096 ));
end
end
always @( * ) begin
// 使用相位的高 12 位作为地址
sine_out <= sine_lut [ phase_in [ 15 : 4 ]];
// 余弦 = 正弦相移 90 度
cosine_out <= sine_lut [( phase_in [ 15 : 4 ] + 1024 ) & 12'hFFF ];
end
endmodule
4.2.3 GFSK 解调器实现 鉴频器解调原理:
输入 GFSK 信号 → 限幅 → 鉴频器 → 低通滤波 → 判决 → 输出数据
鉴频器类型:
├── 模拟鉴频器:斜率鉴频、比例鉴频
├── 数字鉴频器:差分鉴频、CORDIC 鉴频
└── 相干解调:需要载波恢复
数字差分鉴频器:
module digital_discriminator (
input wire clk ,
input wire reset_n ,
input wire signed [ 11 : 0 ] i_in ,
input wire signed [ 11 : 0 ] q_in ,
output reg data_out ,
input wire enable
);
reg signed [ 11 : 0 ] i_delay1 , i_delay2 ;
reg signed [ 11 : 0 ] q_delay1 , q_delay2 ;
reg signed [ 23 : 0 ] phase_diff ;
// 差分鉴频公式:
// phase_diff = I[n]×Q[n-1] - Q[n]×I[n-1]
// 这近似于相位的变化率
wire signed [ 23 : 0 ] mult1 , mult2 ;
assign mult1 = $signed ( i_in ) * $signed ( q_delay1 );
assign mult2 = $signed ( q_in ) * $signed ( i_delay1 );
always @( posedge clk or negedge reset_n ) begin
if ( ! reset_n ) begin
i_delay1 <= 12 ' sd0 ;
i_delay2 <= 12 ' sd0 ;
q_delay1 <= 12 ' sd0 ;
q_delay2 <= 12 ' sd0 ;
phase_diff <= 24 ' sd0 ;
data_out <= 1 'b0 ;
end else if ( enable ) begin
// 延迟
i_delay2 <= i_delay1 ;
i_delay1 <= i_in ;
q_delay2 <= q_delay1 ;
q_delay1 <= q_in ;
// 计算相位差
phase_diff <= mult1 - mult2 ;
// 判决 (符号位)
data_out <= phase_diff [ 23 ];
end
end
endmodule
匹配滤波器解调:
module matched_filter_demod (
input wire clk ,
input wire reset_n ,
input wire signed [ 11 : 0 ] adc_in ,
output reg data_out ,
input wire enable
);
// 匹配滤波器系数 (与高斯脉冲匹配)
localparam [ 7 : 0 ] MF0 = 8 ' sd1 ;
localparam [ 7 : 0 ] MF1 = 8 ' sd11 ;
localparam [ 7 : 0 ] MF2 = 8 ' sd51 ;
localparam [ 7 : 0 ] MF3 = 8 ' sd11 ;
localparam [ 7 : 0 ] MF4 = 8 ' sd1 ;
reg signed [ 11 : 0 ] delay_line [ 0 : 4 ];
wire signed [ 23 : 0 ] mf_output ;
// 匹配滤波计算
assign mf_output = $signed ( delay_line [ 0 ]) * $signed ( MF0 ) +
$signed ( delay_line [ 1 ]) * $signed ( MF1 ) +
$signed ( delay_line [ 2 ]) * $signed ( MF2 ) +
$signed ( delay_line [ 3 ]) * $signed ( MF3 ) +
$signed ( delay_line [ 4 ]) * $signed ( MF4 );
always @( posedge clk or negedge reset_n ) begin
if ( ! reset_n ) begin
delay_line [ 0 ] <= 12 ' sd0 ;
delay_line [ 1 ] <= 12 ' sd0 ;
delay_line [ 2 ] <= 12 ' sd0 ;
delay_line [ 3 ] <= 12 ' sd0 ;
delay_line [ 4 ] <= 12 ' sd0 ;
data_out <= 1 'b0 ;
end else if ( enable ) begin
// 移位
delay_line [ 4 ] <= delay_line [ 3 ];
delay_line [ 3 ] <= delay_line [ 2 ];
delay_line [ 2 ] <= delay_line [ 1 ];
delay_line [ 1 ] <= delay_line [ 0 ];
delay_line [ 0 ] <= adc_in ;
// 采样判决 (在符号中心时刻)
data_out <= mf_output [ 23 ];
end
end
endmodule
4.3 π/4-DQPSK 调制 4.3.1 π/4-DQPSK 原理 差分四相相移键控:
π/4-DQPSK 是 QPSK 的改进版本
标准 QPSK 问题:
├── 180° 相位跳变时经过原点
├── 导致包络波动大
└── 对功率放大器线性度要求高
π/4-DQPSK 改进:
├── 两个 QPSK 星座交替使用
├── 星座之间旋转 π/4
├── 最大相位跳变 ±135°,不经过原点
└── 包络波动小,适合非线性 PA
星座图:
Q
│
● │ ● 星座 A (0°, 90°, 180°, 270°)
│
────────┼──────── I
│
● │ ● 星座 B (45°, 135°, 225°, 315°)
│
发送时交替使用星座 A 和星座 B
差分编码规则:
输入比特对 (I_k, Q_k) 决定相位变化 Δφ_k:
(I_k, Q_k) Δφ_k 矢量图
(0, 0) → +π/4 ↗
(0, 1) → +3π/4 ↖
(1, 1) → -3π/4 ↙
(1, 0) → -π/4 ↘
当前相位:φ_k = φ_{k-1} + Δφ_k
相位状态:
├── 偶数符号:星座 A (0°, 90°, 180°, 270°)
└── 奇数符号:星座 B (45°, 135°, 225°, 315°)
4.3.2 π/4-DQPSK 调制器 调制器架构:
module pi4_dqpsk_modulator (
input wire clk ,
input wire reset_n ,
input wire [ 1 : 0 ] data_in , // 2 bit/symbol
output reg [ 11 : 0 ] i_out ,
output reg [ 11 : 0 ] q_out ,
input wire symbol_enable
);
// 相位累加器 (16 位,0-2π 映射到 0-65535)
reg [ 15 : 0 ] phase_accum ;
// 差分编码表
// 输入 (I,Q) → 相位增量
wire [ 15 : 0 ] phase_delta ;
assign phase_delta = ( data_in == 2 'b00 ) ? 16'h2000 : // +π/4
( data_in == 2 'b01 ) ? 16'h6000 : // +3π/4
( data_in == 2 'b11 ) ? 16'hA000 : // -3π/4
16'hE000 ; // -π/4
// 相位累加
always @( posedge clk or negedge reset_n ) begin
if ( ! reset_n ) begin
phase_accum <= 16'h0000 ;
end else if ( symbol_enable ) begin
phase_accum <= phase_accum + phase_delta ;
end
end
// 正弦查找表
reg [ 11 : 0 ] sine_lut [ 0 : 255 ];
initial begin
integer i ;
for ( i = 0 ; i < 256 ; i = i + 1 ) begin
sine_lut [ i ] = $rtoi ( 2047 * $sin ( 2 * 3.14159 * i / 256 ));
end
end
// I/Q 输出
always @( posedge clk ) begin
if ( symbol_enable ) begin
// 使用相位高 8 位作为查找表地址
i_out <= sine_lut [ phase_accum [ 15 : 8 ]];
q_out <= sine_lut [( phase_accum [ 15 : 8 ] + 64 ) & 8'hFF ]; // 相移 90°
end
end
endmodule
4.3.3 π/4-DQPSK 解调器 差分检测解调:
module pi4_dqpsk_demodulator (
input wire clk ,
input wire reset_n ,
input wire signed [ 11 : 0 ] i_in ,
input wire signed [ 11 : 0 ] q_in ,
output reg [ 1 : 0 ] data_out ,
input wire symbol_enable
);
reg signed [ 11 : 0 ] i_delay , q_delay ;
reg signed [ 23 : 0 ] x , y ;
reg [ 1 : 0 ] quadrant ;
// 差分解调:计算当前符号与前一个符号的相位差
// x = I[n]×I[n-1] + Q[n]×Q[n-1]
// y = Q[n]×I[n-1] - I[n]×Q[n-1]
wire signed [ 23 : 0 ] mult_ii , mult_qq , mult_qi , mult_iq ;
assign mult_ii = $signed ( i_in ) * $signed ( i_delay );
assign mult_qq = $signed ( q_in ) * $signed ( q_delay );
assign mult_qi = $signed ( q_in ) * $signed ( i_delay );
assign mult_iq = $signed ( i_in ) * $signed ( q_delay );
assign x = mult_ii + mult_qq ;
assign y = mult_qi - mult_iq ;
// 象限判决
always @( * ) begin
if ( x >= 0 && y >= 0 )
quadrant = 2 'b00 ; // +π/4
else if ( x < 0 && y >= 0 )
quadrant = 2 'b01 ; // +3π/4
else if ( x < 0 && y < 0 )
quadrant = 2 'b11 ; // -3π/4
else
quadrant = 2 'b10 ; // -π/4
end
always @( posedge clk or negedge reset_n ) begin
if ( ! reset_n ) begin
i_delay <= 12 ' sd0 ;
q_delay <= 12 ' sd0 ;
data_out <= 2 'b00 ;
end else if ( symbol_enable ) begin
i_delay <= i_in ;
q_delay <= q_in ;
data_out <= quadrant ;
end
end
endmodule
4.4 8DPSK 调制 4.4.1 8DPSK 原理 八相相移键控:
8DPSK 每个符号携带 3 bit 信息
8 个相位状态,间隔 45°:
相位 0: 0° (000)
相位 1: 45° (001)
相位 2: 90° (010)
相位 3: 135° (011)
相位 4: 180° (100)
相位 5: 225° (101)
相位 6: 270° (110)
相位 7: 315° (111)
差分编码:当前相位 = 前一相位 + 相位增量
编码规则:
输入比特 (b2, b1, b0) → 相位增量 Δφ:
(b2,b1,b0) Δφ 格雷码排列
(0,0,0) → 0° 000
(0,0,1) → 45° 001
(0,1,1) → 90° 011
(0,1,0) → 135° 010
(1,1,0) → 180° 110
(1,1,1) → 225° 111
(1,0,1) → 270° 101
(1,0,0) → 315° 100
格雷码保证相邻相位只差 1 bit
4.4.2 8DPSK 调制器 module 8 dpsk_modulator (
input wire clk ,
input wire reset_n ,
input wire [ 2 : 0 ] data_in , // 3 bit/symbol
output reg [ 11 : 0 ] i_out ,
output reg [ 11 : 0 ] q_out ,
input wire symbol_enable
);
reg [ 15 : 0 ] phase_accum ;
// 相位增量查找表 (格雷码映射)
wire [ 15 : 0 ] phase_delta ;
assign phase_delta = ( data_in == 3 'b000 ) ? 16'h0000 : // 0°
( data_in == 3 'b001 ) ? 16'h2000 : // 45°
( data_in == 3 'b011 ) ? 16'h4000 : // 90°
( data_in == 3 'b010 ) ? 16'h6000 : // 135°
( data_in == 3 'b110 ) ? 16'h8000 : // 180°
( data_in == 3 'b111 ) ? 16'hA000 : // 225°
( data_in == 3 'b101 ) ? 16'hC000 : // 270°
16'hE000 ; // 315°
// 相位累加
always @( posedge clk or negedge reset_n ) begin
if ( ! reset_n ) begin
phase_accum <= 16'h0000 ;
end else if ( symbol_enable ) begin
phase_accum <= phase_accum + phase_delta ;
end
end
// 8 点查找表 (节省资源)
reg [ 11 : 0 ] sine_lut [ 0 : 7 ];
initial begin
sine_lut [ 0 ] = 12 'd0 ; // sin(0°)
sine_lut [ 1 ] = 12 'd1448 ; // sin(45°)
sine_lut [ 2 ] = 12 'd2047 ; // sin(90°)
sine_lut [ 3 ] = 12 'd1448 ; // sin(135°)
sine_lut [ 4 ] = 12 'd0 ; // sin(180°)
sine_lut [ 5 ] = 12 ' sd - 1448 ; // sin(225°)
sine_lut [ 6 ] = 12 ' sd - 2047 ; // sin(270°)
sine_lut [ 7 ] = 12 ' sd - 1448 ; // sin(315°)
end
// I/Q 输出
always @( posedge clk ) begin
if ( symbol_enable ) begin
// 相位除以 45° 得到索引
i_out <= sine_lut [( phase_accum [ 15 : 13 ] + 2 ) & 3'h7 ]; // cos = sin(θ+90°)
q_out <= sine_lut [ phase_accum [ 15 : 13 ]];
end
end
endmodule
4.5 调制性能对比 4.5.1 误码率性能 BER vs Eb/N0 性能对比 (AWGN 信道,相干解调):
Eb/N0 (dB) GFSK π/4-DQPSK 8DPSK
─────────────────────────────────────────
0 0.08 0.05 0.10
2 0.04 0.02 0.06
4 0.015 0.008 0.03
6 0.004 0.002 0.01
8 0.0008 0.0003 0.003
10 0.0001 0.00004 0.0008
结论:
├── GFSK 最简单,性能适中
├── π/4-DQPSK 性能最优 (相同速率下)
└── 8DPSK 速率最高,但需要更高 SNR
4.5.2 频谱效率 调制方式 符号率 比特/符号 数据率 频谱效率
────────────────────────────────────────────────────
GFSK 1 Msps 1 1 Mbps 0.5 bit/s/Hz
π/4-DQPSK 1 Msps 2 2 Mbps 1.0 bit/s/Hz
8DPSK 1 Msps 3 3 Mbps 1.5 bit/s/Hz
频谱效率提升的代价:
├── 星座点更密集
├── 抗噪声能力下降
└── 需要更高 SNR 维持相同 BER
4.5.3 功率效率 达到 BER=10⁻³ 所需的 Eb/N0:
调制方式 相干解调 差分解调
─────────────────────────────────
GFSK 9.6 dB 11.0 dB
QPSK 6.9 dB 8.5 dB
π/4-DQPSK 7.2 dB 8.8 dB
8PSK 11.5 dB 13.5 dB
8DPSK 12.5 dB 14.5 dB
结论:
├── 相干解调比差分解调优 1-2 dB
├── 但需要载波恢复,复杂度高
└── 蓝牙使用差分检测,简化实现
4.6 实际实现考虑 4.6.1 非理想效应 相位噪声影响:
本振相位噪声会导致:
├── 星座点旋转扩散
├── 相邻符号干扰
└── BER 性能恶化
要求:
├── GFSK: <-100 dBc/Hz @ 100 kHz
├── π/4-DQPSK: <-105 dBc/Hz @ 100 kHz
└── 8DPSK: <-110 dBc/Hz @ 100 kHz
频率偏移影响:
收发双方频率偏差会导致:
├── 星座持续旋转
├── 解调性能下降
└── 需要频率校正
蓝牙要求:
├── 载波频率容差:±75 kHz
├── 频偏容限:±150 kHz (GFSK)
└── 频偏容限:±100 kHz (EDR)
I/Q 不平衡:
正交调制器的 I/Q 支路不匹配:
├── 幅度不平衡:±0.5 dB 以内
├── 相位误差:±2° 以内
└── 否则会产生镜像干扰
校正方法:
├── 出厂校准
├── 自适应校正算法
└── 数字预失真
4.6.2 同步技术 符号同步:
// 早迟门同步器
module early_late_gate (
input wire clk ,
input wire reset_n ,
input wire signed [ 11 : 0 ] adc_in ,
output reg symbol_strobe ,
input wire enable
);
reg signed [ 11 : 0 ] early_sample , late_sample ;
reg [ 15 : 0 ] timing_error_accum ;
reg [ 11 : 0 ] nco_phase ;
// 早迟门采样
always @( posedge clk ) begin
// 在预计符号时刻前后采样
early_sample <= /* 早采样 */ ;
late_sample <= /* 迟采样 */ ;
// 计算定时误差
if ( enable ) begin
timing_error_accum <= timing_error_accum +
( early_sample - late_sample );
// 当误差超过阈值,调整 NCO
if ( timing_error_accum > 16'h1000 ) begin
nco_phase <= nco_phase - 1 ;
timing_error_accum <= 0 ;
end else if ( timing_error_accum < 16'hF000 ) begin
nco_phase <= nco_phase + 1 ;
timing_error_accum <= 0 ;
end
end
end
// 符号时刻生成
always @( posedge clk ) begin
if ( nco_phase [ 11 : 0 ] == 12'h000 ) begin
symbol_strobe <= 1 'b1 ;
end else begin
symbol_strobe <= 1 'b0 ;
end
end
endmodule
帧同步:
蓝牙包前导码用于帧同步:
经典蓝牙:
├── 前导码:01010101... (72 bit)
├── 同步字:访问地址 (64 bit)
└── 检测:相关器检测同步字
BLE:
├── 前导码:10101010... 或 01010101... (80 μs)
├── 访问地址:32 bit
└── 检测:匹配滤波器
4.7 本章小结 本章详细讲解了蓝牙调制解调技术:
GFSK :高斯滤波 + FSK,BT=0.5,用于 BR 和 BLE π/4-DQPSK :差分 QPSK,星座旋转,用于 EDR 2Mbps 8DPSK :8 相调制,用于 EDR 3Mbps 硬件实现 :Verilog 代码展示调制器和解调器设计 性能对比 :BER、频谱效率、功率效率分析 实际考虑 :相位噪声、频率偏移、I/Q 不平衡、同步技术 下一章将讲解基带处理架构,包括包结构、链路管理、ARQ 机制等。
上一章:03-编码解码原理 下一章:05-基带处理架构