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.phy.freq_hopping¶

TXS-10002-2025 6.10.3 跳频序列与频率管理。

实现标准定义的跳频机制, 包括:

  • 射频信道/物理信道映射与频率表管理 (8.1.2)

  • 伪随机数生成器 (6.10.3.2)

  • 数据链路跳频 (6.10.3.3)

  • 系统管理帧链路跳频 (6.10.3.4)

  • 测量链路跳频 (6.10.3.5)

Module Contents¶

Classes¶

FreqTable

信道频率表管理。

MeasLinkHopper

测量链路跳频器。

Functions¶

channel_to_freq

射频信道号转中心频率 (MHz)。

data_link_hop

数据链路跳频: 根据时隙计数和跳频参数确定跳频频点。

derive_hop_param2

从同步序列或逻辑链路标识派生跳频参数 2。

freq_to_channel

中心频率 (MHz) 转射频信道号。

generate_hopping_sequence

生成指定长度的跳频序列。

hopping_prng

标准 6.10.3.2 伪随机数生成器。

mgmt_frame_hop

系统管理帧链路跳频。

Data¶

BAND_2400

BAND_5100

BAND_5800

MEAS_HOP_ASCENDING

MEAS_HOP_DESCENDING

MEAS_HOP_RANDOM

API¶

nearlink_sdr.phy.freq_hopping.BAND_2400¶

'2400'

nearlink_sdr.phy.freq_hopping.BAND_5100¶

'5100'

nearlink_sdr.phy.freq_hopping.BAND_5800¶

'5800'

nearlink_sdr.phy.freq_hopping.MEAS_HOP_ASCENDING¶

0

nearlink_sdr.phy.freq_hopping.MEAS_HOP_DESCENDING¶

1

nearlink_sdr.phy.freq_hopping.MEAS_HOP_RANDOM¶

2

class nearlink_sdr.phy.freq_hopping.FreqTable[源代码]¶

信道频率表管理。

管理完整频点表和可用频点表, 支持 1M/2M/4M 带宽场景。

变量:
  • band -- 频段标识, "2400" / "5100" / "5800"。

  • bandwidth_mhz -- 信道带宽, 1 / 2 / 4 MHz。

  • blocked_channels -- 被阻塞(不可用)的物理信道号集合。

band: str¶

None

bandwidth_mhz: int¶

1

blocked_channels: set[int]¶

'field(...)'

full_table() → list[int][源代码]¶

完整频点表: 对应频段除去广播信道的所有频点, 按物理信道号升序。

available_table() → list[int][源代码]¶

可用频点表: 完整表中去除阻塞信道, 按物理信道号升序。

class nearlink_sdr.phy.freq_hopping.MeasLinkHopper[源代码]¶

测量链路跳频器。

标准 6.10.3.5: 支持三种跳频方案。 方案 3 在使用后从可用频点表中删除已用频点, 表空时重置。

变量:
  • mode -- 跳频模式, 0/1/2。

  • freq_table -- 频率表对象。

  • hop_param2 -- 跳频参数 2 (方案 3 使用)。

  • init_channel -- 初始化阶段频点 (可选)。

mode: int¶

None

freq_table: nearlink_sdr.phy.freq_hopping.FreqTable¶

'field(...)'

hop_param2: int¶

0

init_channel: int | None¶

None

reset() → None[源代码]¶

重置可用频点表为初始状态。

next_channel(slot_counter: int = 0, is_init_phase: bool = False) → int[源代码]¶

获取下一个跳频信道。

参数:
  • slot_counter -- 当前调度时隙计数 (方案 3 使用)。

  • is_init_phase -- 是否处于初始化阶段。

返回:

物理信道号。

nearlink_sdr.phy.freq_hopping.channel_to_freq(channel_num: int, band: str = BAND_2400) → float[源代码]¶

射频信道号转中心频率 (MHz)。

nearlink_sdr.phy.freq_hopping.data_link_hop(slot_counter: int, hop_param2: int, freq_table: nearlink_sdr.phy.freq_hopping.FreqTable) → int[源代码]¶

数据链路跳频: 根据时隙计数和跳频参数确定跳频频点。

标准 6.10.3.3: PRNG → 初次频点映射 → (无效时) 可用频点映射。

参数:
  • slot_counter -- 当前调度时隙计数。

  • hop_param2 -- 16 位跳频参数 2。

  • freq_table -- 频率表管理对象。

返回:

选中的物理信道号。

nearlink_sdr.phy.freq_hopping.derive_hop_param2(identifier: int, bit_width: int = 32) → int[源代码]¶

从同步序列或逻辑链路标识派生跳频参数 2。

标准 6.10.3.2:

  • 64 位同步序列: 截取低 32 位

  • 32 位同步序列: 直接使用

  • 24 位逻辑链路标识: 高位补零至 32 位 低 16 和高 16 位异或后作为 hop_param2。

参数:
  • identifier -- 同步序列值或逻辑链路标识。

  • bit_width -- 标识符位宽 (24/32/64)。

返回:

16 位 hop_param2。

nearlink_sdr.phy.freq_hopping.freq_to_channel(freq_mhz: float, band: str = BAND_2400) → int[源代码]¶

中心频率 (MHz) 转射频信道号。

nearlink_sdr.phy.freq_hopping.generate_hopping_sequence(n_hops: int, hop_param2: int, freq_table: nearlink_sdr.phy.freq_hopping.FreqTable | None = None, link_type: str = 'data', start_slot: int = 0) → list[int][源代码]¶

生成指定长度的跳频序列。

参数:
  • n_hops -- 需要的跳频次数。

  • hop_param2 -- 跳频参数 2。

  • freq_table -- 频率表对象, 默认 2.4 GHz 1 MHz 全可用。

  • link_type -- "data" / "mgmt" / "meas_asc" / "meas_desc" / "meas_rand"。

  • start_slot -- 起始时隙号。

返回:

物理信道号列表。

nearlink_sdr.phy.freq_hopping.hopping_prng(hop_param1: int, hop_param2: int) → int[源代码]¶

标准 6.10.3.2 伪随机数生成器。

参数:
  • hop_param1 -- 16 位跳频参数 1, 通常为调度时隙计数的低 16 位。

  • hop_param2 -- 16 位跳频参数 2, 由同步序列/逻辑链路标识/随机种子派生。

返回:

16 位伪随机数。

nearlink_sdr.phy.freq_hopping.mgmt_frame_hop(slot_counter: int, hop_param2: int, freq_table: nearlink_sdr.phy.freq_hopping.FreqTable) → int[源代码]¶

系统管理帧链路跳频。

标准 6.10.3.4: PRNG → 可用频点映射, 直接在可用频点表上映射。

参数:
  • slot_counter -- 当前调度时隙计数。

  • hop_param2 -- 16 位跳频参数 2。

  • freq_table -- 频率表管理对象。

返回:

选中的物理信道号。

Next
nearlink_sdr.phy.gfsk
Previous
nearlink_sdr.phy.frame
Copyright ©
Made with Sphinx and @pradyunsg's Furo
On this page
  • nearlink_sdr.phy.freq_hopping
    • Module Contents
      • Classes
      • Functions
      • Data
      • API
        • BAND_2400
        • BAND_5100
        • BAND_5800
        • MEAS_HOP_ASCENDING
        • MEAS_HOP_DESCENDING
        • MEAS_HOP_RANDOM
        • FreqTable
          • FreqTable.band
          • FreqTable.bandwidth_mhz
          • FreqTable.blocked_channels
          • FreqTable.full_table()
          • FreqTable.available_table()
        • MeasLinkHopper
          • MeasLinkHopper.mode
          • MeasLinkHopper.freq_table
          • MeasLinkHopper.hop_param2
          • MeasLinkHopper.init_channel
          • MeasLinkHopper.reset()
          • MeasLinkHopper.next_channel()
        • channel_to_freq()
        • data_link_hop()
        • derive_hop_param2()
        • freq_to_channel()
        • generate_hopping_sequence()
        • hopping_prng()
        • mgmt_frame_hop()