Commit Graph

13 Commits

Author SHA1 Message Date
Maxim
d4b5c3f22e docs: разбивка стоимости RX по стадиям — диагноз TX-паузы
Замеры расширенным ofdm_bench (плата B, ядро 0) документированы в
BENCHMARK.md, диагноз — в README §12.5:
- sync-only на сплошных кадрах 1.65 Msps < 1.92 → -p 0 недостижим;
  «запас 1.22×» был артефактом duty 0.571
- конвертация ~бесплатна (85 Msps) → двухпоточный вынос дал ~2%
- RS-декод 275 мкс/блок = 26% эфира кадра (было «мало» — опровергнуто)
- контеншн L2/DDR 0.2% (гипотеза кэша отвергнута)
Вывод: узкое место sync+RS на ядре 0; фикс — вынос RS на ядро 1
(3-стадия), p_min ~3.4→~1.3 мс. Исправлены устаревшие выводы §2 и
рычаг 2 в §12.3. PHY не менялся.
2026-07-14 14:05:46 +03:00
Maxim
a12b0bd55d bench: разбивка стоимости по стадиям + RS-декод + контеншн
Диагностика узкого места RX (поток B sync+RS насыщает ядро 0).
Добавлены CLI-режимы для ofdm_bench:
- -g гэп (умолч. 7680 = -p 4000 @ 1.92; -g 0 = duty 1)
- -P payload (1275=rs8 / 1024=none геометрия)
- -H hog-поток на соседнем ядре (контеншн L2/DDR как от потока A)
- -c ядро замера
Замер разделён на conv+sync / sync-only / только конвертация,
добавлен bench_rs (мкс/блок fec_decode RS(255,223), nerr 0/4/16),
печать duty и расчёт p_min для realtime @ 1.92 Msps.

Вскрывает артефакт прежней методики: "2.34 Msps" — смесь при duty 57%,
чистая демодуляция ~1.65 Msps. Никаких изменений PHY.
2026-07-14 13:54:28 +03:00
Maxim
bb7d4fb222 доработка потока 2026-07-14 13:11:42 +03:00
Maxim
c648c91e1b Охарактеризованная OTA-линии 2026-07-14 11:49:12 +03:00
Maxim
99ce074886 теперь пауза 6000 мкс вместо 0, и таймаут пересчитан под реальную скорость (~80 КБ/с) 2026-07-14 10:36:16 +03:00
Maxim
19cca4b0d3 Документация обновлена — записал результат для отчёта:
§9 — статусы техдолга: #1,#2,#3,#4,#5,#7 →  исправлено; #6⚙️ частично (детектор seq есть, ARQ нет).
§10 — дорожная карта: этап 2 закрыт
§12 (новый раздел «Журнал ввода в строй») — таблица результатов BIST-loopback (2 мс: 76/100, md5 ✗; 20 мс: 100/100, md5 ) с выводом, что пайплайн исправен, а потери на 2 мс — CPU-contention одной платы
2026-07-14 10:06:04 +03:00
Maxim
bd511f0d9c доработка теста 2026-07-14 09:34:49 +03:00
Maxim
4cfeb38686 доработка в части приема и передачи 2026-07-14 09:14:39 +03:00
Maxim
005c59fc3a Доработка документации 2026-07-10 16:39:04 +03:00
Maxim
11bdfa3aa2 отладка fec 2026-07-10 16:25:29 +03:00
Maxim
9eab1f32c4 Доработка. Поменял частоты и добавленение FIR-фильтр, его штатно генерирует и грузит ad9361_set_bb_rate() 2026-07-10 15:26:14 +03:00
Maxim
d5edaf140e Сделать скрипты исполняемыми (x-бит в индексе; Windows его не отслеживает)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-10 11:00:57 +03:00
Maxim
0f207b146d Initial commit: OFDM-радиолиния на двух Pluto+ (PHY/link, код на ARM)
- src: transmitter, receiver, ofdm_bench, common (libiio local: + liquid-dsp)
- scripts: кросс-сборка зависимостей, деплой scp -O, e2e-тест с md5
- docs: бенчмарк CPU (выбор rate 1.92 MSPS), грабли FDD/регуляторика
- все текстовые файлы нормализованы в LF (.gitattributes принудительно):
  CRLF в toolchain.env/makefile ломал source и make на Linux
- .vscode: IntelliSense в режиме linux-gcc-arm, заголовки из .xarm/include

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-10 11:00:38 +03:00