nearlink_sdr.phy.rx_pipeline¶
物理层接收流水线 -- TXS-10002-2025 标准
完成 TX 发射链路的逆操作: IQ 信号 → 帧同步 → 匹配滤波/解调 → 解扰 → Polar 解码 → CRC 校验, 还原 MAC 层载荷。
Module Contents¶
Classes¶
接收结果。 |
Functions¶
头部解码: 解扰 → [Polar 解码] → 返回控制信息比特。 |
|
载荷解码: 解扰 → [Polar 解码] → CRC 校验。 |
|
帧同步: 同步序列互相关峰值搜索。 |
|
完整接收链路: IQ → 帧解析 → 解码 → CRC 校验。 |
API¶
- class nearlink_sdr.phy.rx_pipeline.RxResult[源代码]¶
接收结果。
- data_bits: numpy.ndarray¶
None
- ctrl_bits: numpy.ndarray¶
None
- nearlink_sdr.phy.rx_pipeline.decode_head(scrambled_bits: numpy.ndarray, cfg: nearlink_sdr.phy.tx_pipeline.TxConfig) tuple[numpy.ndarray, bool][源代码]¶
头部解码: 解扰 → [Polar 解码] → 返回控制信息比特。
- 参数:
scrambled_bits -- 加扰后的头部比特 (txHeadW)。
cfg -- 发射/接收配置。
- 返回:
(ctrl_bits, crc12_ok) — 控制信息 + CRC12 比特、CRC12 校验结果。
- nearlink_sdr.phy.rx_pipeline.decode_payload(scrambled_bits: numpy.ndarray, cfg: nearlink_sdr.phy.tx_pipeline.TxConfig, n_info_bits: int) tuple[numpy.ndarray, bool][源代码]¶
载荷解码: 解扰 → [Polar 解码] → CRC 校验。
- 参数:
scrambled_bits -- 加扰后的载荷比特 (txPyLdW)。
cfg -- 发射/接收配置。
n_info_bits -- 原始信息比特数 (data_bytes * 8, 不含 CRC)。
- 返回:
(data_bits, crc_ok) — 原始数据比特和 CRC 校验结果。
- nearlink_sdr.phy.rx_pipeline.frame_sync(iq_signal: numpy.ndarray, cfg: nearlink_sdr.phy.tx_pipeline.TxConfig) int[源代码]¶
帧同步: 同步序列互相关峰值搜索。
- 参数:
iq_signal -- 接收到的基带 IQ 信号 (已匹配滤波 + 下采样到 1 sps)。
cfg -- 配置 (需要 pid 生成同步序列)。
- 返回:
同步序列起始符号位置, -1 表示未检测到。
- nearlink_sdr.phy.rx_pipeline.rx_chain(iq_signal: numpy.ndarray, cfg: nearlink_sdr.phy.tx_pipeline.TxConfig, n_data_bytes: int) nearlink_sdr.phy.rx_pipeline.RxResult[源代码]¶
完整接收链路: IQ → 帧解析 → 解码 → CRC 校验。
- 参数:
iq_signal -- 基带 IQ 信号。
cfg -- 发射/接收参数配置 (与发射端相同)。
n_data_bytes -- 数据长度 (字节), 用于确定码块分割。
- 返回:
包含恢复数据、控制信息和校验结果的 RxResult。