Files
SDR-Rover/docs/lab063_current_state.md
2026-09-14 15:11:46 +03:00

6.6 KiB
Raw Blame History

Lab063: текущее состояние

Статус

Lab063 выполнена полностью офлайн по сохранённым файлам единственного RF-сеанса Lab062. Новых передач, запросов к HackRF и аппаратных команд не было.

  • LAB063 STATUS = COMPLETED_OFFLINE
  • RF TX = 0
  • LAB063 COMMIT = NOT PERFORMED
  • PUSH = NOT PERFORMED
  • LAB064 = NOT CREATED

Lab062 перед началом анализа зафиксирована отдельным коммитом:

  • LAB062 COMMIT = f8ae6c6bfceaa21b6c08dcf55d2bff996dd0dae5
  • NEW HEAD = f8ae6c6bfceaa21b6c08dcf55d2bff996dd0dae5
  • сообщение: Lab062: record invalidated 500 ksymbol/s RF packet trial

Статус аппаратного опыта сохранён без изменения: RF_SESSION_INVALID_TX_UNDERRUN. Результат legacy = 0/16 и T2 = 0/16 не переобъявлялся как валидное сравнение приёмников.

Исходные данные

Анализ использует только сохранённые файлы Lab062:

Объект Значение
TX data/raw/lab062/tx_stream.cs8
TX SHA-256 e84bbce227426c0aac13a48ded1286ca4a44fc6e3efce01f6e5a513217c87ff5
TX 1 476 096 комплексных отсчётов
RX data/raw/lab062/rx_stream.cs8
RX SHA-256 ce0bd603e4ca356af67d504ee11c9e9f38171f31c7427fbe61216a28126b2b32
RX 24 000 000 комплексных отсчётов
Начало TX в RX отсчёт 4 256 091
Частота дискретизации 8 Мвыб/с
Символьная скорость 500 ксимв/с
Пакетов 16
Длина одного полного waveform 92 256 отсчётов

Физическое устройство и ответ программного интерфейса записаны отдельно:

  • PHYSICAL DEVICE = Auron HackRF Plus
  • API/FIRMWARE IDENTIFICATION = HackRF One r9

Зафиксированный результат

Фактический TX-файл содержит пакеты вплотную: 92 256 × 16 = 1 476 096. Дополнительных пауз между полными waveform нет. Внутренние защитные участки и хвосты RRC каждого пакета сохранены.

INTER-PACKET GAP ACTUAL = 0 additional samples = 0 s

Причина установлена по prepare() в experiments/lab062_full_packet_rf_preflight.py: шестнадцать результатов build_parameterized_tx_cs8(...) записываются подряд, параметра паузы и записи нулей между ними нет. Это ошибка реализации подготовленного потока Lab062, а не доказанное ограничение генератора PHY.

Записанный longest = 16 672 bytes для cs8 соответствует 8 336 комплексным отсчётам, 1,042 мс, 521 символу и 9,035727 % waveform одного пакета. Это оценка масштаба сообщения журнала. RX-запись не доказывает, что именно столько эфирных отсчётов было потеряно, повторено или заменено.

Локальное сопоставление 512-символьными окнами с шагом 256 символов дало 359 окон. В 221 надёжном внутреннем окне задержка равна 0…1 отсчёту, скачков не найдено. Ещё 22 внутренних окна в пакетах 3, 4, 12 и 13 имеют корреляцию ниже порога 0,15; задержка в них не установлена:

  • UNDERRUN LOCATION = NOT_LOCALIZED_FROM_RX
  • LOCAL DELAY DISCONTINUITY = NO IN 221 RELIABLE WINDOWS; UNDETERMINED IN 22 INTERNAL LOW-CORRELATION WINDOWS

Участки на краях пакетов и повторяющаяся PRBS-преамбула сохранены в CSV, но исключены из решения о разрыве: там возникают корреляционные копии с шагом 2 032 отсчёта. Те же ограничения применены к 22 внутренним окнам с низкой корреляцией. Низкая корреляция сама по себе отмечает локальную аномалию, но без надёжной временной привязки не определяет underrun.

Ухудшение относительно Lab056 B наблюдается у всех 16 пакетов по трём общим показателям: доле ошибочных символов, EVM и отношению согласованной составляющей к остатку. При этом пакеты 3, 4, 12 и 13 дополнительно выделяются всплесками AC-мощности и остатка. Пакет 14 такого общего физического признака не имеет.

  • PACKETS MOST AFFECTED = 13, 4, 12, 3
  • LAB062 QUALITY DISTRIBUTION = GLOBAL
  • PRIMARY CAUSE STATUS = PARTIALLY_LOCALIZED

Установлено глобальное ухудшение принятого сигнала и отсутствие наблюдаемого временного скачка в надёжных окнах. Точная физическая причина ухудшения и смысл расхождения промежуточного и итогового счётчиков hackrf_transfer не установлены.

Артефакты

  • experiments/lab063_tx_underrun_localization.py
  • tests/test_lab063_tx_underrun_localization.py
  • data/processed/lab063/summary.json
  • data/processed/lab063/packet_quality.csv
  • data/processed/lab063/local_alignment.csv
  • docs/lab063_offline_result.md

Следующий один шаг до нового TX: отдельно согласовать исследование уровня RX, усилений, геометрии и возможной аналоговой компрессии или слишком слабого полезного сигнала. Для будущего повтора также потребуется однозначное журналирование TX underrun и явное добавление запланированных межпакетных пауз. RF-параметры в Lab063 не менялись.