Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Полудуплекс в радиосвязи
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
quato_a
Доброго времени суток!

Есть два устройства (FPGA + AFE). На FPGA реализован модем (модулятор + демодулятор), на AFE - передающий и приёмный радиотракт с одной антенной.
В передаваемых фреймах есть преамбула, по которой демодулятор можно понят, где начало фрейма.
Возник вопрос, как уважаемые форумчане подходят к реализации полудуплексной радиосвязи (TDD) с минимизацией таймаутов?
V_G
По окончании передачи говорящий говорит "прием" и переводит радиостанцию в режим приема - аналоговая связь.
По окончании запроса следует ответ - цифровая связь. О каких таймаутах речь?
Я, видимо, совсем выпал из радиосвязи, т.к. не в курсе, что такое ТDD.
quato_a
Цитата(V_G @ Nov 25 2017, 16:11) *
По окончании передачи говорящий говорит "прием" и переводит радиостанцию в режим приема - аналоговая связь.
По окончании запроса следует ответ - цифровая связь. О каких таймаутах речь?
Я, видимо, совсем выпал из радиосвязи, т.к. не в курсе, что такое ТDD.


Никуда не выпали sm.gif
TDD - Time Division Duplex - дуплекс с временнЫм разделением доступа к среде распространения (по сути, полудуплекс).

Хорошо, тогда распишу, как реализовал. Мне интересны мнения и как другие реализовывали.

Выбран принцип мастер-раб. Известны задержки модулятора и демодулятора, известны задержки включения/отключения PA (усилителя мощности) и LNA (МШУ). Известны размеры пакетов от мастера к рабу и обратно. Пока на модулятор мастера заходят данные, включается подготовка физического тракта так, что бы к моменту готовых сэмплов тракт был настроен на передачу. На приемнике раба после reset'а постоянно сидим в приеме и найдя преамбулу с определенными задержками переключаем физический тракт с приема на передачу и запускаем свой собственный модулятор. Получается в зависимости от задержки модулятора и демодулятора на одном модеме они будут работать с нахлестом во времени так, чтобы в канале выход на передачу у обоих был поочередный. Период res (reserve) между транзакциями выбран с учетом возможной остаточной ошибки символьной синхронизации. Красными стрелками изображены влияния.

Нажмите для просмотра прикрепленного файла
V_G
Трудно разобрать чужие обозначения без расшифровки. Правильно ли я понимаю, что передача включается до окончания приема пакета? Только в этом случае при пакетном обмене имеет смысл разговаривать о таймингах.

Или у Вас не пакетный обмен данными? Тогда почему?
quato_a
Цитата(V_G @ Nov 26 2017, 02:46) *
Трудно разобрать чужие обозначения без расшифровки. Правильно ли я понимаю, что передача включается до окончания приема пакета? Только в этом случае при пакетном обмене имеет смысл разговаривать о таймингах.

Или у Вас не пакетный обмен данными? Тогда почему?


Да, пакетный обмен. Да, передатчик включается до окончания приема пакета. Пока сконфигурировано так, что оба приемника знают сколько символов в пакете им должно прийти.

Порты и сигналы:

CTRL_STATE - автомат состояний контроллера модулятора, пихающего в него данные. В автомате состояния:
- AGC - первые несколько тренировочных данных для настройки АРУ
- REF - преамбулы
- DATA - полезные данные

PHY_STATE - автомат состояний физического тракта:
- PA_ON / PA_OFF - включение / отключение усилителя мощности передатчика, характеризуется задержкой Tps
- LNA_ON / LNA_OFF - включение / отключение малошумящего усилителя приемника, характеризуется задержкой Tlna
- RES - запасы между переключениями передача/прием

Data valid_i - сигнал валидности входных данных на модулятор
data_i - входные данные на модулятор
Mod_strobe_o - выходные стробы с модулятора, показывающие начало каждого символа
mod_data_o - выходные сэмплы с модулятора

txnrx - управление антенным коммутатором: 0 - прием / 1 - передача
REF - строб детектирования преамбулы
Demod_data_i - входные сэмплы после АЦП на демодулятор
Data_valid_o - сигнал валидности выходных данных с демодулятора
Data_o - выходные данные с демодулятор

Len_symbol - длина символа в сэмплах
N - кол-во передаваемых символов

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.