Маршруты обучения¶
В курсе больше сотни лабораторных, а оборудование у всех разное. Выберите маршрут по тому, что у вас есть; каждый маршрут входит в следующий, поэтому сделанное на раннем маршруте не пропадает. Лабораторные выполняются в указанном порядке.
| Маршрут | Что нужно | Что покрывает |
|---|---|---|
| A. Только ноутбук | Python (python tools/tasks.py install); Icarus Verilog начиная с шага A5 |
DSP, дискретизация, фиксированная точка, модуляция и синхронизация, симуляция RTL и реальные записи, которые лежат в репозитории |
| B. + RTL-SDR | приёмник RTL-SDR (примерно по цене учебника) и антенна | собственные записи эфира |
| C. + плата Zynq | плата Zynq-7020 + AD9363, кабели, аттенюаторы | передача, FPGA-приёмник на кристалле, линия между двумя платами |
| D. + измерительные приборы | NanoVNA, RF-аттенюаторы | S-параметры и измерения компонентов |
MATLAB / Simulink везде необязательны: лабораторные, где они упоминаются, выполняются и на Python. Единственное исключение: Лабораторная 4.4, это работа в Simulink; без лицензии её можно пропустить.
Маршрут A: только ноутбук¶
A0. Ориентация. Прочитайте блок 1: Введение в SDR, Подготовка программного окружения, Аппаратная база курса, Мостик от модели к плате, Метрики качества сигнала: FFT, SNR, EVM и BER, FFT и спектральный анализ, Энергетический бюджет радиолинии в SDR, Эффекты фиксированной точки в DSP и FPGA.
A1. Сигналы, дискретизация и спектры
- Лабораторная 2.1: Частотная ось дискретизации и интерпретация
- Лабораторная 2.2: Развёртка алиасинга
- Лабораторная 2.3: Интерпретация I/Q и mirrored spectrum
- Лабораторная 3.1: Оконные функции БПФ и спектральная утечка
- Лабораторная 3.2: FIR-фильтр нижних частот для IQ-данных
- Лабораторная 3.3: Цифровое смешение и перенос частоты
- Лабораторная 3.4: Децимация с антиалиасинговым фильтром
- Лабораторная 3.5: Сложность FFT и selected-bin detection
- Лабораторная 3.6: Свёртка и корреляция в SDR
- Лабораторная 3.7: Окна FFT и обнаружение слабых сигналов
A2. Реальные записи без оборудования. В репозитории лежат настоящие записи RTL-SDR и платы; эти лабораторные их читают.
- Лабораторная 9.1: Формат IQ-файла и metadata
- Лабораторная 9.2: Чтение CI16 IQ и анализ спектра
- Лабораторная 9.3: Мультиформатный IQ reader
- Лабораторная 9.4: Чтение WAV IQ и офлайн-анализ
- Лабораторная 9.5: Synthetic QPSK replay and constellation analysis
- Лабораторная 6.4: Анализ синтетической RF IQ-записи
- Лабораторная 6.7 это Артефакты zero-IF: DC-составляющая, зеркальный канал и tune offset
A3. Фиксированная точка
- Лабораторная 4.1: FIR-фильтр в fixed-point арифметике
- Лабораторная 4.2: Цифровой смеситель в fixed-point арифметике
- Лабораторная 4.3: BPSK-цепочка в фиксированной точке
- Лабораторная 4.4: BPSK-цепочка в Simulink и идеальная кривая BER от SNR
A4. Тракты TX/RX, модуляция и синхронизация
- Лабораторная 7.1: Архитектура TX/RX-тракта
- Лабораторная 7.2: Частотный перенос DUC/DDC
- Лабораторная 7.3: Метрики TX/RX loopback
- Лабораторная 7.4: Приёмная цепочка пакетов и обнаружение кадра
- Лабораторная 7.5: CIC-дециматор для SDR-приёмника
- Лабораторная 8.1: Оценка и компенсация частотного рассогласования CFO
- Лабораторная 8.2: Оценка и коррекция фазового смещения
- Лабораторная 8.3: Восстановление символьной синхронизации
- Лабораторная 8.4: Полная цепочка синхронизации
- Лабораторная 8.5: Мини-цепочка OFDM (CP, пилоты, синхронизация, эквализация)
- Лабораторная 8.6: Сравнение BER помехоустойчивого кодирования с перемежением
- Лабораторная 8.7 это SNR недостаточно: ловушки BER и EVM
- Лабораторная 8.8: QPSK-модем, искажения и BER
- Лабораторная 8.9: Восстановление несущей QPSK (петля Костаса, управляемая решениями)
- Лабораторная 8.10 это OFDM: PAPR, ограничение амплитуды и расширение спектра
- Лабораторная 8.11 это 16-QAM: BER, EVM и ограничения реализации
- Лабораторная 8.12 это GFSK: BT, полоса и BER
- Лабораторная 8.13 это DSSS: захват и processing gain
- Лабораторная 8.20 это CSS: chirp-сигнал и кодирование символа
- Лабораторная 8.21 это CSS: dechirp и FFT-детектор
- Лабораторная 8.22: Пакетная CSS-синхронизация и PER
- Лабораторная 6.2: Настройка усиления и контроль перегрузки
- Лабораторная 6.5: Калибровка RF-искажений приёмника (DC, дисбаланс IQ, утечка LO)
A5. Симуляция RTL (установите Icarus Verilog; Vivado не нужен)
- Лабораторная 5.1: Потоковый интерфейс и тестбенч
- Лабораторная 5.2: Отображение FIR-фильтра в RTL
- Лабораторная 5.3: RTL-смеситель IQ на основе NCO
- Лабораторная 5.4: Обёртка AXI-Stream для IQ-потока
- Лабораторная 5.5: Сравнение float, fixed-point и RTL
- Лабораторная 5.6: RTL FIR формирующего RRC-фильтра BPSK TX
- Лабораторная 5.7: BPSK-повышающий дискретизатор символов 8x
- Лабораторная 5.8: Согласованный фильтр BPSK RX и восстановление бит
- Лабораторная 5.9: Кадровый BPSK TX/RX loopback верхнего уровня
- Лабораторная 5.10: BPSK BER верхнего уровня, готовый для Zynq
- Лабораторная 8.14 это OFDM RTL: от mapper до эквализированного loopback
A6. Системное проектирование и отчёты
- Лабораторная 10.1: Пассивный RC-фильтр
- Лабораторная 10.2: Простой аттенюатор
- Лабораторная 10.3: Checklist безопасности RF-измерений
- Лабораторная 10.4: Мини-проект схемы в KiCad
- Лабораторная 11.1: Требования проекта и системная архитектура
- Лабораторная 11.2: Сквозной пакет симуляции
- Лабораторная 11.3: Чек-лист интеграции FPGA/RF
- Лабораторная 11.4: Итоговый измерительный отчёт
- Лабораторная 11.5: Задержка и джиттер конвейера AXI DMA
- Лабораторная 11.6: Бюджет неопределённости измерений и отчётность
- Проект 12.1 это Итоговый проект: QPSK-модем
- Проект 12.3 это Итоговый проект: DSP-блок для FPGA
Маршрут B: добавить RTL-SDR¶
Всё из маршрута A, плюс:
- Лабораторная 1.0: Первое наблюдение эфира через RTL-SDR
- Лабораторная 6.1: Частотный план RF-эксперимента
- Проект 12.2 это Итоговый проект: анализ RF-захвата
Запишите собственный WAV в Лабораторной 1.0 и проанализируйте его скриптами Лабораторных 9.4 и 6.4 вместо записей из репозитория.
Маршрут C: добавить плату Zynq¶
Всё из маршрутов A и B, плюс сама плата:
- Лабораторная 1.1: Управляемый DDS-тон Zynq с приемом на RTL-SDR
- Лабораторная 6.3: Настройки AD9363 и iio_attr
- Лабораторная 6.6: Zynq RX-only наблюдение на чистом образе
- Лабораторная 6.8: OTA DDS tone-наблюдение на stock-shell Zynq
- Лабораторная 6.9 это Сравнение RTL-SDR и AD936x: качество приёма и разрядность АЦП
- Лабораторная 6.10: Анализ фазового разрыва при переключении AGC/LNA
- Лабораторная 6.11: Калибровка мощности dBm и dBFS
- Лабораторная 5.11: Обёртка управления AXI-Lite для BPSK BER верхнего уровня
- Лабораторная 5.12 это Почтовый ящик сообщений PS↔PL: первый осмысленный мост Zynq
- Лабораторная 8.15 это BPSK на реальном железе: спектр, созвездие и SNR/EVM
Затем интегрированный проект блока 11 это основной путь от модема под управлением PS до линии между двумя платами:
- Лабораторная 11.7: Запуск BPSK через AXI-Lite со стороны PS
- Лабораторная 11.14: Резервный путь BPSK OTA со стороны хоста в стоковом shell
- Лабораторная 11.27: BER цифрового loopback QPSK в runtime
- Лабораторная 11.28: Runtime QPSK через внешний RTL-SDR
- Лабораторная 11.29: Кампания надёжности BER при холодной загрузке
- Лабораторная 11.30: Оценщик грубого CFO на реальном двухплатном канале
- Лабораторная 11.31: Стресс-развёртка оценщика грубого CFO
- Лабораторная 11.32: Двухплатный захват coarse-CFO внутри FPGA
- Лабораторная 11.34: Непрерывное восстановление тактовой фазы QPSK
- Лабораторная 11.38: ZynqSDR TX → запись IQ → офлайн-приёмник
- Лабораторная 11.45 это Дифференциальный QPSK + длинная преамбула: пол разворотов повержен
- Лабораторная 11.46: Сообщение из консоли одной Zynq в консоль другой
- Проект 12.4: Полный измерительный отчёт по SDR
Остальные лабораторные блока 11 (11.8–11.26, 11.33, 11.35, 11.41, 11.42) это история запуска этого пути: каждая фиксирует один отказ, как его нашли и как исправили. Читайте их как разборы случаев, когда основной путь уже понятен: страница Блок 11: разборы случаев отладки кратко описывает каждый как симптом, причину и урок.
Маршрут D: добавить измерительные приборы¶
- Лабораторная 10.5 это NanoVNA и RF Demo Kit: S11/S21, КСВН и диаграмма Смита
- Лабораторная 10.6 это Цифровой RF-аттенюатор: проверка шага, диапазона и линейности
Что предполагает каждый блок¶
| Блок | После чего | Новые инструменты |
|---|---|---|
| 1. Введение | - | Python, программа просмотра спектра |
| 2. Сигналы и дискретизация | блок 1 | - |
| 3. Основы DSP | блок 2 | - |
| 4. Фиксированная точка | блок 3 | (MATLAB / Simulink по желанию) |
| 5. FPGA / HDL | блоки 3–4 | Icarus Verilog; Vivado только для синтеза |
| 6. Радиотракт | блоки 2–3 | RTL-SDR или плата для живых частей |
| 7. Тракты TX/RX | блоки 3, 6 | - |
| 8. Модуляция и синхронизация | блок 7 | Icarus Verilog для 8.14 |
| 9. Запись и анализ | блок 2 | - |
| 10. Электроника и KiCad | блок 1 | KiCad; NanoVNA для 10.5–10.6 |
| 11. Интегрированный проект | блоки 5–8 | плата |
| 12. Итоговые проекты | пройденный маршрут | - |
Формат отчёта¶
Каждый отчёт по лабораторной содержит цель, оборудование, параметры, порядок выполнения, графики или скриншоты и инженерный вывод с числами. См. шаблон отчёта (на английском) и русские шаблоны в папке reports/ каждого блока.