Основы PSK31

PSK31 является результатом восполнения пробелов, которые были допущены в распространенных режимах передачи "данных" в радиолюбительской связи. Этот режим передачи должен занять место, которое прежде занимал AMTOR или подобный, традиционный RTTY, в которых два или более операторов беседуют друг с другом в открытом канале. Режимы, такие как пакетное радио, Pactor, и другие, имеют ряд комплексов и непригодны в многоканальных переговорах. А конкретно, размеры передаваемых блоков (пакетов) вносят неприемлемую задержку при обработке текста так, что нормальная беседа не получается и быстрые переговоры типа вопрос-ответ невозможны. PSK31 это попытка исправить подобную ситуацию с помощью простой, но эффективной структуры кодов, возможности которой ограничены лишь шириной полосы частот и достаточной степени коррекции ошибок. В результате получается сочетание типичных показателей внесения ошибок, и без значительных затрат по времени на синхронизацию, и процессы ARQ.

BPSK

BPSK система модуляции, используемая в PSK31, позволяет получить скорость 31 Бод, что подтверждено практикой SP9VRC в его SLOWBPSK программе, написанной для EVM. Вместо традиционного автоматического частотного сдвига, информация передается путем изменения полярности сигнала (иногда вызывает 180-градусный сдвиг фазы). Этот процесс легче представить в виде передачи информации путем переключения двух проводов в антенне, хотя, конечно переключение обычно делается в звуковой составляющей сигнала приемопередатчика. Хорошо разработанная система PSK (Phase Shift Key) даст лучшие результаты, чем стандартные системы FSK (Frequency Shift Key), которые любители использовали уже довольно долго. А также, преимуществом PSK является высокая потенциальная возможность работы в значительно более узкой полосе частот, чем FSK. Передача данных со скоростью 31 бод выбрана так, что система легко работает при обычной скорости набора текста на клавиатуре.

Но здесь есть проблема с переключением в PSK режиме, которая не появляется в FSK, и это называется эффектом дребезга. Изменения полярности эквивалентны одновременному переключению с одного передатчика на другой такой же в противофазе. Таким образом, если мы используем компьютерную логику в BPSK модуляции 31, например избирательный шлюз, смесь сигнала должна получится чрезвычайно широкой. Фактически, при скорости 31 бод, уровень сигнала стал бы меньше на 10dB при 3-х кратной ширине спектра, на 14dB при 5-ти кратной, на 17dB при 7-ми кратной, и так далее. Фактически - квадратичная последовательность Фурье.

Решение в фильтрации на выходе, или при формировании группы для каждого бита, что в сумме одно и тоже. В PSK31 использована форма косинуса. Для того, чтобы представить, что получается в волновом и спектральном виде, рассмотрим передачу непрерывной последовательности изменений полярности со скоростью 31 бод. С косинусовым формированием, в конечном виде посылка выглядит похожей на полволны от 31Hz. Это не только похоже на двух тональный сигнал, это и есть двух тональный сигнал, и спектр состоит из двух чистых тональностей в +/-15Hz от центра, и никаких дребезгов. Подобно двух тоновому сигналу и, тем не менее в отличии от FSK, если мы передаем его через передатчик, то получаем продукты взаимной модуляции, по сколько это не линейно. Таким образом, мы должны тщательно следить за перегрузкой звука. Тем не менее, даже наихудший линейный сигнал даст продукты третьего порядка 25dB при +/-47Hz (3-х кратная ширина) и продукты пятого порядка 35dB при +/-78Hz (5-ти кратная ширина). Это значительно лучше, чем в случае жесткого переключения. Если мы бесконечно перегрузим линейный сигнал, то это выйдет на те же уровни, что в системе жесткого переключения.

Есть аналогичная аргументация со стороны приемника. Аналогичный "жестко переключаемому" сигналу в приемнике - BPSK приемник открывает шлюз в начале бита, собирает и загружает весь полученный сигнал и шум, в течение бита, и затем "щелчком" шлюз закрываются. Этот процесс вызывает аналогичный эффект, как и при формировании "боковых выбросов" в полосе пропускания приемника. Так, хотя этот метод 100% эффективен в задаче выборки сигнала из шума, он выделит сигнал только 10dB при 3-х кратной ширине и так далее. Так же, случайным отказом считается, что мы приняли случайную смесь сигнала и считаем ее сигналом передачи. Прием PSK31 борется с этим, фильтруя приемный сигнал и плюс к этому, формируя получаемый бит. Такой метод имеет больше проблем, чем метод косинуса использованный в передатчике: если бы мы использовали косинус в приемнике, мы в результате получили бы сигнал от одного бита "наложенный" на следующий бит. Это неизбежный результат двойного фильтрования. Более сложный метод формирования в приемнике преодолевает это, путем формирования 4 битов за один раз и компенсируя этим межсимвольную интерференцию, но конечный результат отражается на полосе пропускания, которая должна быть ограничена, по крайней мере, 64dB в пределах +/-31Hz и далее. И не должна вносится межсимвольная интерференция при приеме косинусо-формированной передачи.

Имейте в виду, что передатчик и фильтр приемника должны "сочетаться" друг с другом для исключения ISI (межсимвольной интерференции). Некоторые системы, подобные этой, используют пару идентичных приемных и передающих фильтров. Если кто-то захочет еще улучшить параметры подобной системы, они должны изменить фильтры на передаче. И если использовать простую форму косинуса для передатчика и сочетать это с фильтром приемника, это оставит путь для улучшения параметров приемника, без изменения передатчиков, которые в старом случае будут не совместимы. Это немного отлично от метода SP9VRC.

В общем, режим PSK31 разработан не только для того, чтобы дать большой выигрыш в приеме слабых сигналов типа белого шума, но и должен положить основы дальнейшего развития и оптимизации алгоритмов обработки сигналов при наличии всевозможных помех, исключить их в приемнике и не создавать помех при передаче. В настоящее время режим PSK31 наиболее подходит для использования на HF диапазонах.

QPSK Режим

В Декабре 1997, в PSK31 добавлен QPSK режим. В этом режиме, вместо коммутации фазы (что дает сдвиг на 180 градусов), дополнительно введено два вида сдвига фазы в 90 и 270 градусов. Если представить BPSK как восстановление полярности сигнала, то QPSK затем может быть представлен как два BPSK передатчика на той же частоте, но сдвинутых друг относительно друга на 90 градусов. Т.е. приемник должен иметь два BPSK демодулятора со смещением в 90 градусов, так у нас появляется два канала на одной частоте, но конечно с половинной мощностью для каждого. Следовательно, мы имеем двух битовую посылку, но на 3dB меньше уровня шума. Мы могли бы использовать эту характеристику, чтобы передать данные с двойной скоростью с напряженностью поля на 3dB ниже.

В основе развития режим PSK31 должен сохранить скорость, необходимую для нормальной работы оператора при наборе текстов от руки. PSK31 это как бы ответ на то, что мы можем использовать дополнительные возможности по уменьшению ошибок, сохраняя при этом полосу частот и скорость трафика. Имейте в виду, что надо исходить из того, что у нас есть запас при 3dB SNR (отношение сигнал-шум) с QPSK, любая схема коррекции ошибок должна быть достаточной для того, чтобы корректировать ошибки, которые вносятся при 3dB SNR, и предпочтительно в гораздо более худших условиях. Иначе это занятие не будет иметь смысла. Делая моделирование на компьютере, и тестируя с генератором шума, становится видно, что количество ошибок менее чем 1% с BPSK, то с применением QPSK количество ошибок уменьшается. Но, когда BER (английское сокращение "коэффициент ошибок") хуже 1% при использовании BPSK режима, QPSK режим становиться менее предпочтителен, чем BPSK.

Тем не менее, все проверки в эфире показали, что QPSK с выбранной схемой уменьшения ошибок лучше, чем BPSK, кроме тех случаев, когда в сигнал умышленно вносилось затухание. Типичные колебания уровня радиосигналов, при дальних радио связях, происходят (как правило) последовательно (изменяются условия распространения), и схемы уменьшения ошибок могут дать существенное преимущество в подобной ситуации, по отношению к тому, что мы можем достичь в линейных системах передачи данных. С кодом, применяемым в PSK31, типовое улучшение составляет 5:1, но это зависит от условий распространения в каждом конкретном случае. По этой причине имеет смысл сохранять разные режимы и помнить, что может придти время, когда один режим работает лучше, чем другой.

Метод кодирования для уменьшения ошибок выбран один из известных, типа конволюционного. Системы кодирования, применяемые в прошлом, заключались в блочном кодировании, где каждый символ состоял из кода фиксированной длины. А теперь к этому битовому коду добавлялся заранее известный код и в итоге получался более длинный блок. Этот более длинный блок способен корректировать ошибки в пределах себя. Эти расширенные блоки затем передаются в последовательном потоке. В конволюционном коде символы преобразуются в битовый поток, а затем этот поток подвергается дополнительной обработке, чтобы увеличить способность исправления ошибок. В данном случае нет влияния между границами символов и процессом исправления ошибок. С тех пор, как известен способ исключения ошибок на межсимвольных границах, конволюционное кодирование подходит лучше для последовательных связей, чем блочные коды, которые первоначально разрабатывались для защиты от ошибок в банках памяти и аналогичных структурах.

В PSK31, исходные данные превращается из двойного вида (1 2) в четверной вид (1 4), что дает точно известный образец в последовательности четверичных символов. В коде, использованном в PSK31, образец четверичных символов есть производная от полученных 5 последовательностей битов данных. Например, мы помечаем четыре сдвига фазы как A, B, C, и D, и полагаем, что передатчик будет посылать непрерывно A, в то время как поток данных посылает непрерывный 0(ноль). Поскольку конволюционный шифратор работает на основе данных от пяти битов, поток данных выглядит как ..000010000..., а в действительности передатчик посылает ..AAAADCCBDAAAA.... . Так что, каждый двойной бит, который должен передаваться в результате уникальной 5-символьной последовательности, перекрывается последовательностью смежных битов на предполагаемом пути, который приемник может использовать для оценки правильной последовательности даже в присутствии нарушений в частях последовательности.

Дешифратор, известный как "дешифратор Витерби" названный в честь человека который его продумал, в действительности совсем не дешифратор, а целый комплекс параллельных шифраторов, каждый использует одно из возможных "предположений" в последовательности передачи данных. На выходе, этих шифраторов, все полученные символьные потоки сравниваются. Каждый раз, когда принимается новый символ, шифраторы добавляют дополнительный бит к их последовательности, предполагая, что новый бит может быть 0 или 1. Количество этих предположений допускается в половине всей последовательности, это означает, что количество отслеживаемых предположений, в какой то момент, становится постоянным. После того, как принято много символов, шансы ложных предположений в первом символе стремятся к нулю, так что дешифратор считает, что первый бит принят правильно и можно отправить его на выход. На практике это означает, что дешифратор, для декодирования битов данных, всегда занимает некоторое время на обработку, после его приема. Эта задержка в PSK31 составляет 20 бит (640mS), что почти не сказывается на восприятии человеком символов, при приеме текстов.

Как происходит кодирование передаваемых последовательно битов данных (Вари кодирование). Обычное асинхронное кодирование ASCII символов использовалось в начальной версии системы SP9VRC, а также асинхронная система кодирования применяется в RTTY, уже в течение последних 50 лет. Для этого, в потоке передаваемых данных, фиксированное количество битов разделяется старт-стоповыми посылками. Стартовый бит имеет всегда противоположную стоповому биту полярность. Когда в сигнале отсутствует трафик, то постоянно посылается стоповая полярность. Это позволяет приемнику начать декодирование сразу после смены полярности, т.е. стартового бита.

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

Следующий недостаток этой системы проявляется, когда требуется передавать символы отличные от ASCII, т.е. расширенную кодировку. Во всех языках есть некоторые символы, которые встречаются более часто, чем другие и есть символы, которые почти никогда не используются. В CW режиме это успешно реализовано путем коротких кодов для основных букв и более длинных кодов для остальных. В асинхронной старт-стоповой системе все символы имеют одинаковую длину, следовательно, общая скорость передачи не изменяется.

Кодирование с переменной длиной битовых посылок на один символ, применяемая в BPSK системе, лишена этих недостатков и работает таким образом:

  1. Все символы отделены друг от друга двумя последовательными нулевыми битами.
  2. Ни один символ не содержит более одного нулевого бита в последовательности.

Из этого следует, что все символы должны начинать и заканчиваться единицей.

С таким кодированием приемник, обнаружив код вида 00, распознает конец и начало посылки, и это никогда не встречается в коде символа. Это решает проблему "сбоев синхронизации", что иногда происходит с асинхронными системами.