Files
SDR-Rover/docs/lab064_rf_result.md
2026-09-15 12:03:48 +03:00

11 KiB
Raw Permalink Blame History

Lab064: результат измерения уровня и линейности RF-тракта

В одном коротком OTA-сеансе цифровая мощность TX была увеличена почти на 18 дБ, то есть цифровая амплитуда выросла примерно в 7,92 раза. Согласованная с известным TX амплитуда на RX выросла в 7,77 раза, а её мощность на 17,81 дБ. Коэффициент передачи |h| почти не менялся. Признака компрессии на верхнем уровне не обнаружено.

При этом полезная согласованная составляющая остаётся слабее остатка даже на L3: −12,13 дБ. Фон во всех пяти нулевых окнах стабилен. По заранее заданным критериям результат классифицирован как LINEAR_BUT_WEAK.

Опыт установил относительную линейность именно этой цифровой лестницы в текущей OTA-геометрии. Он не измеряет абсолютную мощность в ваттах или дБм и не разделяет вклад TX, антенн, эфирного канала и RX. Для этого нужен измерительный прибор или отдельный проведённый тест по кабелю.

Сеанс и аппаратная целостность

14 сентября 2026 года выполнен ровно один разрешённый TX. RX стартовал раньше TX. Повторных передач не было.

Проверка Результат
TX waveform SHA-256 fa260719659b2984fe29588238415622cd75c6daefec6cc9130ba1bf851bd3f9
RF / Fs / symbol rate 1400000000 Гц / 8000000 отсчётов/с / 20000 символов/с
TX VGA / RX LNA / RX VGA 10 / 24 / 24 дБ
RF amplifier / Bias-Tee выключены
MASTER / SLAVE reg29 0x26 / 0x26
SLAVE CLKIN DETECTED, второй опрос, 139,042 мс
Выполненные TX-сеансы 1
Автоматические повторы 0
TX underrun, максимум / финал 0 / 0
RX overrun, максимум / финал 0 / 0
RX clipping 0
RX длина 16000000 комплексных отсчётов, 2,000000 с
RX SHA-256 02015891948aaee52ff81e60fdfeb391bb9b76cd9192b75972b8fedbc8690d86
Процессы до / после CLEAR / CLEAR
Ошибки очистки 0

В TX-журнале сохранены две строки 0 underruns; в RX-журнале сохранены четыре строки 0 overruns. Анализ использует все наблюдения и их максимум. Финальный нулевой счётчик не мог бы скрыть промежуточное ненулевое значение.

Фон

Каждое окно имеет длину 160000 отсчётов, или 20 мс, и лежит внутри цифрового нулевого участка вдали от активной границы.

Окно AC power, код² AC RMS, код
Начальный guard 0,521529 0,722170
Gap L0–L1 0,523180 0,723312
Gap L1–L2 0,515904 0,718264
Gap L2–L3 0,522200 0,722634
Конечный guard 0,530300 0,728217

Диапазон AC RMS равен 0,718264…0,728217 кода. Отношение максимальной AC-мощности к минимальной составляет 0,119530 дБ при заранее заданной границе стабильности 3 дБ. Фон считается стабильным.

Метрики участков

Мощности приведены в квадрате цифрового кода RX. Это относительные цифровые величины, а не ватты и не дБм.

L0, −18 дБ

FULL IQ RMS = 2.277200 code
AC RMS = 0.956317 code
MEAN I = 0.949724 code
MEAN Q = 1.835518 code
MAX |I| = 6 code
MAX |Q| = 7 code
MAX COMPLEX MAGNITUDE = 7.071068 code
BACKGROUND AC POWER = 0.521529 code^2
MATCHED SIGNAL POWER = 0.000750751 code^2
RESIDUAL POWER = 1.213794804 code^2
MATCHED / RESIDUAL = -32.086493 dB
h = 0.001876064 - j0.004508063
|h| = 0.004882853
|h|^2 = 0.000023842249
CFO = +0.095772 Hz

L1, −12 дБ

FULL IQ RMS = 2.291392 code
AC RMS = 0.989014 code
MEAN I = 0.956038 code
MEAN Q = 1.832573 code
MAX |I| = 6 code
MAX |Q| = 7 code
MAX COMPLEX MAGNITUDE = 7.211103 code
BACKGROUND AC POWER = 0.523180 code^2
MATCHED SIGNAL POWER = 0.002961235 code^2
RESIDUAL POWER = 1.069594603 code^2
MATCHED / RESIDUAL = -25.577463 dB
h = 0.004471119 - j0.001937686
|h| = 0.004872939
|h|^2 = 0.000023745532
CFO = -0.168571 Hz

L2, −6 дБ

FULL IQ RMS = 2.275060 code
AC RMS = 0.925298 code
MEAN I = 0.963183 code
MEAN Q = 1.841739 code
MAX |I| = 6 code
MAX |Q| = 7 code
MAX COMPLEX MAGNITUDE = 7.280110 code
BACKGROUND AC POWER = 0.515904 code^2
MATCHED SIGNAL POWER = 0.011333436 code^2
RESIDUAL POWER = 0.529088688 code^2
MATCHED / RESIDUAL = -16.691669 dB
h = 0.003277253 - j0.003478187
|h| = 0.004778930
|h|^2 = 0.000022838175
CFO = +0.006742 Hz

L3, 0 дБ

FULL IQ RMS = 2.341160 code
AC RMS = 1.057677 code
MEAN I = 0.957558 code
MEAN Q = 1.856188 code
MAX |I| = 6 code
MAX |Q| = 7 code
MAX COMPLEX MAGNITUDE = 7.280110 code
BACKGROUND AC POWER = 0.522200 code^2
MATCHED SIGNAL POWER = 0.045331864 code^2
RESIDUAL POWER = 0.740861774 code^2
MATCHED / RESIDUAL = -12.133336 dB
h = 0.003384388 - j0.003391322
|h| = 0.004791153
|h|^2 = 0.000022955145
CFO = -0.076067 Hz

Максимумы активных участков равны |I|=6 и |Q|=7. Полная двухсекундная запись также далека от rail-кодов: |I|=7, |Q|=8. Это исключает цифровой clipping в записи, но не является самостоятельным доказательством идеальной линейности аналогового тракта.

Линейность мощности и амплитуды

Пара TX, дБ RX matched, дБ Ошибка, дБ TX amplitude ratio RX matched amplitude ratio
L0 → L1 +5,977270 +5,959770 −0,017501 1,990048 1,986042
L1 → L2 +5,998157 +5,828887 −0,169270 1,994839 1,956340
L2 → L3 +5,998257 +6,020420 +0,022162 1,994862 1,999959
L0 → L3 +17,973685 +17,809077 −0,164609 7,919254 7,770587

Максимальная абсолютная ошибка отдельной ступени равна 0,169270 дБ и заметно меньше заранее установленной границы линейности 1,0 дБ. Верхняя ступень не отстаёт от TX: она выросла на 6,020420 дБ при ожидаемых 5,998257 дБ. Порог признака компрессии составлял −1,5 дБ ошибки верхней ступени; фактическая ошибка равна +0,022162 дБ.

|h| изменился от 0,004882853 на L0 до 0,004791153 на L3. Это соответствует −0,164609 дБ по мощности и совпадает с общей ошибкой линейности. Систематического падения коэффициента передачи на верхнем уровне нет.

Остаточная мощность при переходе L2 → L3 выросла примерно на 1,46 дБ, тогда как согласованная полезная мощность выросла на 6,02 дБ. Отношение matched/residual улучшилось с −16,69 до −12,13 дБ. Ухудшения формы сигнала на L3 относительно L2 по этому показателю нет.

Диагностические полосы остатка около 50/100/150 кГц на L3 равны 0,009576/0,004469/0,002725 код². Они не растут быстрее согласованной мощности при переходе L2 → L3. Эти полосы не являются калиброванным измерением RF-гармоник, поэтому абсолютный вывод о спектральной чистоте потребовал бы анализатора спектра.

Вывод

CLASSIFICATION = LINEAR_BUT_WEAK

Текущий тракт воспроизводит цифровые ступени почти один к одному по дБ. Данных за компрессию при TX VGA 10 дБ и RX LNA/VGA 24/24 дБ нет. Главная проблема этого сеанса состоит в низкой согласованной полезной мощности относительно остатка: даже на L3 запас равен −12,13 дБ.

Практически это означает, что простое объяснение Lab062 аналоговой перегрузкой текущего тракта не подтверждается. Слабое отношение полезной составляющей к остатку остаётся вероятным фактором плохого 500K-приёма, хотя Lab064 использует узкий сигнал 20 ksymbol/s и сама по себе не объясняет все широкополосные искажения Lab062.

Рекомендуемый следующий отдельный шаг: согласовать повтор той же лестницы при TX VGA 20 дБ, сохранив RX LNA/VGA 24/24 дБ, частоту, геометрию, waveform и общую опору. Это проверит, улучшается ли matched/residual при сохранении линейности. В рамках Lab064 усиления не менялись и второй TX не выполнялся.

Независимая проверка

Проверяющий агент работал только с сохранёнными файлами и не обращался к оборудованию. Он независимо пересчитал SHA-256, положение четырёх сегментов, пять окон фона, matched/residual, комплексные h, отношения мощности и амплитуды, общий результат L3/L0 и все двенадцать спектральных значений. Подтверждённых расхождений нет. Целевые тесты дали 15 passed; итоговый вердикт: чисто.

После RF-сеанса quick gate прошёл: 986 тестов ядра, 37 функциональных проверок, 13 пропусков. Полный pytest: 986 passed, 0 failed. git diff --check: PASS.

RF TX = 0. Lab064 не коммитировалась, push не выполнялся, Lab065 не создана.