Contents Menu Expand Light mode Dark mode Auto light/dark, in light mode Auto light/dark, in dark mode Skip to content
nearlink-sdr 1.0.9 文档
nearlink-sdr 1.0.9 文档
  • 快速入门
  • 操作指南
    • 运行链路仿真
    • 添加新的调制方式
    • QoS 服务质量管理
    • 使用 SLE 节点实体
    • Rust 加速模块
    • SDR E310 部署规划
    • 构建文档
  • 技术参考
    • nearlink_sdr
      • nearlink_sdr.mac
        • nearlink_sdr.mac.access
        • nearlink_sdr.mac.broadcast
        • nearlink_sdr.mac.crypto
        • nearlink_sdr.mac.frame
        • nearlink_sdr.mac.link_control
        • nearlink_sdr.mac.link_manager
        • nearlink_sdr.mac.power_control
        • nearlink_sdr.mac.qos
        • nearlink_sdr.mac.scheduler
        • nearlink_sdr.mac.security
        • nearlink_sdr.mac.security_manager
        • nearlink_sdr.mac.signaling
        • nearlink_sdr.mac.smf
        • nearlink_sdr.mac.smf_scheduler
      • nearlink_sdr.sim
        • nearlink_sdr.sim.link_sim
        • nearlink_sdr.sim.usrp_sim
      • nearlink_sdr.common
        • nearlink_sdr.common.bch
        • nearlink_sdr.common.code_block_seg
        • nearlink_sdr.common.crc
        • nearlink_sdr.common.m_sequence
        • nearlink_sdr.common.mcs
        • nearlink_sdr.common.polar
        • nearlink_sdr.common.prbs
        • nearlink_sdr.common.scrambler
      • nearlink_sdr.phy
        • nearlink_sdr.phy.channel
        • nearlink_sdr.phy.control_info
        • nearlink_sdr.phy.data_link
        • nearlink_sdr.phy.equalizer
        • nearlink_sdr.phy.frame
        • nearlink_sdr.phy.freq_hopping
        • nearlink_sdr.phy.gfsk
        • nearlink_sdr.phy.mac_interface
        • nearlink_sdr.phy.measurement
        • nearlink_sdr.phy.measurement_frame
        • nearlink_sdr.phy.measurement_tx
        • nearlink_sdr.phy.mock_backend
        • nearlink_sdr.phy.multitone
        • nearlink_sdr.phy.pilot
        • nearlink_sdr.phy.pluto_backend
        • nearlink_sdr.phy.preamble
        • nearlink_sdr.phy.psk
        • nearlink_sdr.phy.rf_compliance
        • nearlink_sdr.phy.rx_pipeline
        • nearlink_sdr.phy.sdr_backend
        • nearlink_sdr.phy.sync_sequence
        • nearlink_sdr.phy.tx_pipeline
        • nearlink_sdr.phy.uhd_backend
        • nearlink_sdr.phy.usrp
        • nearlink_sdr.phy.uwb_measurement_security
        • nearlink_sdr.phy.uwb_pulse
      • nearlink_sdr.node
  • 设计说明
    • SparkLink SLE 协议总览
    • 物理层原理
    • 物理层详解
    • MAC 层详解
    • 安全子系统详解
    • 端到端数据流
    • 系统架构
    • 标准条款映射
  • 更新日志
  • API Reference
    • nearlink_sdr
      • nearlink_sdr.mac
        • nearlink_sdr.mac.access
        • nearlink_sdr.mac.broadcast
        • nearlink_sdr.mac.crypto
        • nearlink_sdr.mac.frame
        • nearlink_sdr.mac.link_control
        • nearlink_sdr.mac.link_manager
        • nearlink_sdr.mac.power_control
        • nearlink_sdr.mac.qos
        • nearlink_sdr.mac.scheduler
        • nearlink_sdr.mac.security
        • nearlink_sdr.mac.security_manager
        • nearlink_sdr.mac.signaling
        • nearlink_sdr.mac.smf
        • nearlink_sdr.mac.smf_scheduler
      • nearlink_sdr.sim
        • nearlink_sdr.sim.link_sim
        • nearlink_sdr.sim.usrp_sim
      • nearlink_sdr.common
        • nearlink_sdr.common.bch
        • nearlink_sdr.common.code_block_seg
        • nearlink_sdr.common.crc
        • nearlink_sdr.common.m_sequence
        • nearlink_sdr.common.mcs
        • nearlink_sdr.common.polar
        • nearlink_sdr.common.prbs
        • nearlink_sdr.common.scrambler
      • nearlink_sdr.phy
        • nearlink_sdr.phy.channel
        • nearlink_sdr.phy.control_info
        • nearlink_sdr.phy.data_link
        • nearlink_sdr.phy.equalizer
        • nearlink_sdr.phy.frame
        • nearlink_sdr.phy.freq_hopping
        • nearlink_sdr.phy.gfsk
        • nearlink_sdr.phy.mac_interface
        • nearlink_sdr.phy.measurement
        • nearlink_sdr.phy.measurement_frame
        • nearlink_sdr.phy.measurement_tx
        • nearlink_sdr.phy.mock_backend
        • nearlink_sdr.phy.multitone
        • nearlink_sdr.phy.pilot
        • nearlink_sdr.phy.pluto_backend
        • nearlink_sdr.phy.preamble
        • nearlink_sdr.phy.psk
        • nearlink_sdr.phy.rf_compliance
        • nearlink_sdr.phy.rx_pipeline
        • nearlink_sdr.phy.sdr_backend
        • nearlink_sdr.phy.sync_sequence
        • nearlink_sdr.phy.tx_pipeline
        • nearlink_sdr.phy.uhd_backend
        • nearlink_sdr.phy.usrp
        • nearlink_sdr.phy.uwb_measurement_security
        • nearlink_sdr.phy.uwb_pulse
      • nearlink_sdr.node
Back to top
View this page

nearlink_sdr.sim.usrp_sim¶

USRP 环回仿真引擎。

使用 MockUSRP loopback 模式, 将完整的 SLE 发射/接收流水线 通过虚拟 USRP 设备连接, 验证端到端功能正确性。

支持的仿真场景:

  • 单帧 IQ 环回 (AWGN 信道)

  • PHY 全链路环回 (CRC → Polar → 调制 → 信道 → 解调 → 解码 → CRC)

  • MAC 数据帧环回 (AsyncDataFrame 打包 → PHY → 环回 → PHY → 解包)

  • MAC 信令环回 (信令编码 → PHY → 环回 → PHY → 信令解码)

  • 跳频发射序列

  • SleNode 双节点端到端

Module Contents¶

Classes¶

LoopbackResult

单帧环回仿真结果。

USRPLoopbackSim

USRP 环回仿真器。

USRPSimResult

多帧仿真汇总结果。

API¶

class nearlink_sdr.sim.usrp_sim.LoopbackResult[源代码]¶

单帧环回仿真结果。

tx_samples: int¶

None

rx_samples: int¶

None

crc_ok: bool¶

None

head_crc_ok: bool¶

None

ber: float¶

0.0

snr_db: float¶

0.0

class nearlink_sdr.sim.usrp_sim.USRPLoopbackSim(snr_db: float = 30.0, channel_type: str = 'awgn', sample_rate_hz: float = 1000000.0, seed: int = 42)[源代码]¶

USRP 环回仿真器。

在 MockUSRP loopback 模式下, TX 端发送的 IQ 信号经可选信道模型 后直接送入 RX 端, 实现完整的硬件在环式仿真。

Initialization

close()[源代码]¶
loopback_iq(iq_samples: numpy.ndarray) → numpy.ndarray[源代码]¶

IQ 样本经 MockUSRP TX → loopback → RX 环回。

loopback_phy(data_bits: numpy.ndarray, cfg: nearlink_sdr.phy.tx_pipeline.TxConfig, ctrl_bits: numpy.ndarray | None = None) → nearlink_sdr.sim.usrp_sim.LoopbackResult[源代码]¶

PHY 全链路环回: 编码 → 调制 → USRP TX → 信道 → USRP RX → 解调 → 解码。

参数:
  • data_bits -- 信息比特。

  • cfg -- 发射配置。

  • ctrl_bits -- 控制信息比特, None 时使用全零。

返回:

LoopbackResult 包含 CRC 校验结果和 BER。

loopback_mac_data(mac_payload: bytes, cfg: nearlink_sdr.phy.tx_pipeline.TxConfig | None = None) → tuple[nearlink_sdr.phy.mac_interface.MacRxResult, nearlink_sdr.sim.usrp_sim.LoopbackResult][源代码]¶

MAC 数据帧环回: bytes → mac_to_iq → USRP → iq_to_mac。

参数:
  • mac_payload -- MAC 层载荷字节。

  • cfg -- 发射配置, None 时使用 FT2 MCS7 默认值。

返回:

(MacRxResult, LoopbackResult)

loopback_hopping(iq_samples: numpy.ndarray, hop_sequence: list[int]) → list[tuple[int, numpy.ndarray]][源代码]¶

跳频发射 + 接收环回。

在每个跳频信道上发射 iq_samples, 然后在同一信道上接收。

返回:

[(channel_num, rx_samples), ...]

run_batch(payloads: list[bytes], cfg: nearlink_sdr.phy.tx_pipeline.TxConfig | None = None) → nearlink_sdr.sim.usrp_sim.USRPSimResult[源代码]¶

批量 MAC 帧环回仿真。

参数:
  • payloads -- MAC 载荷列表。

  • cfg -- 发射配置。

返回:

USRPSimResult 汇总结果。

property device: nearlink_sdr.phy.usrp.USRPDevice¶
property transceiver: nearlink_sdr.phy.usrp.SLETransceiver¶
class nearlink_sdr.sim.usrp_sim.USRPSimResult[源代码]¶

多帧仿真汇总结果。

total_frames: int¶

0

success_frames: int¶

0

failed_frames: int¶

0

avg_ber: float¶

0.0

frame_results: list[nearlink_sdr.sim.usrp_sim.LoopbackResult]¶

'field(...)'

property fer: float¶

帧错误率。

Next
nearlink_sdr.common
Previous
nearlink_sdr.sim.link_sim
Copyright ©
Made with Sphinx and @pradyunsg's Furo
On this page
  • nearlink_sdr.sim.usrp_sim
    • Module Contents
      • Classes
      • API
        • LoopbackResult
          • LoopbackResult.tx_samples
          • LoopbackResult.rx_samples
          • LoopbackResult.crc_ok
          • LoopbackResult.head_crc_ok
          • LoopbackResult.ber
          • LoopbackResult.snr_db
        • USRPLoopbackSim
          • USRPLoopbackSim.close()
          • USRPLoopbackSim.loopback_iq()
          • USRPLoopbackSim.loopback_phy()
          • USRPLoopbackSim.loopback_mac_data()
          • USRPLoopbackSim.loopback_hopping()
          • USRPLoopbackSim.run_batch()
          • USRPLoopbackSim.device
          • USRPLoopbackSim.transceiver
        • USRPSimResult
          • USRPSimResult.total_frames
          • USRPSimResult.success_frames
          • USRPSimResult.failed_frames
          • USRPSimResult.avg_ber
          • USRPSimResult.frame_results
          • USRPSimResult.fer