r6462mod12 source code released for public access
Complete source code, patch file, release notes, test results and various UI options are published there:
Исходный код, патч файл, Release notes, результаты тестирования и исходники разных вариантов интерфейса опубликованы здесь:
https://cloud.mail.ru/public/9tKs/fDtqi7rnM
r6462mod12: измененный функционал
mod12 сделан на базе исходного кода mod11 и решает задачу улучшения приема JT65a сигналов с SNR -26дБ в условиях отсутствия ближнего односкачкового прохождения на ВЧ диапазонах. Прием слабых сигналов оптимизирован для случая когда на диапазоне присутствуют только 1...4 слабых сигнала(что по результатам анализа статистики на файлах симулятора соответствует количеству SYNC кандидатов от 1 до 8, значения более 8 бывают достаточно редко).
Сохранены все достоинства mod11 при работе в условиях большого количества станций на диапазоне.
Режим высокой чувствительности включается автоматически если количество кандидатов на первом проходе декодирования менее чем 9.
В режиме высокой чувствительности применены 4 прохода декодирования слабых сигналов, для всех проходов используется общий список SYNC кандидатов получаемый на первом проходе, что позволяет избежать большого количества ложных SYNC кандидатов в результате вычитания
сигналов, характерного для всей линейки mod ревизий.
JT65a сигнал передается на FTRSD декодер только в случае если значение SYNC более чем 3.0 и если этот сигнал не был успешно декодирован на предыдущем проходе. Такая оценка кандидата позволяет максимально эффективно использовать общий банк попыток декодирования, определяющий время декодирования интервала. В результате улучшено нормирование времени декодирования интервала и применено динамическое вычисление попыток декодирования в зависимости от количества наиболее вероятных кандидатов на каждом проходе декодирования.
В режиме декодирования слабых сигналов в декодере FTRSD применена функция генерации псевдослучайных чисел srand (в обычном режиме
используется функция rand). Поскольку мы на каждом проходе пытаемся декодировать один и тот же слабый сигнал то применение функции srand приводит к увеличению количества попыток декодирования этого сигнала в сумме четырех проходов повышая вероятность его декодирования. Недостаток применения функции srand в декодере FTRSD в том что при тестировании с файлами при каждом проигрывании конкретного файла могут получаться разные результаты, но при достаточной статистической выборке применение функции srand почти не влияет на общий конечный результат.
При использовании в FTRSD функции rand в обычном режиме(большое количество станций на диапазоне) результаты декодирования файла/интервала всегда одинаковы.
Улучшена балансировка времени режимов SWL ON/OFF, при подборе значения decoding attempts по времени декодирования 9..10 секунд, при последующем включении режима SWL ON время декодирования близко к 55..60 секунд. Балансировка выполнялась на двухядерном процессоре.
В софте WSJT-X на время декодирования ощутимо влияет тактовая частота процессора, по наблюдениям используются два ядра (одно под
декодирование JT65a другое под JT9), при большем количестве ядер и современной операционной системе(балансировка нагрузки между ядрами) другие ядра могут нагружаться системными задачами или другим программным обеспечением.
Исходники графического интерфейса основного окна ревизий mod10 и mod11 полностью совместимы с mod12.
Рекомендации по использованию mod12:
JT65+JT9 режим декодирования
Number of decoding attempts: подбирать по времени декодирования интервала
Nubmer of decoding passes = 3
Agressive decoding level = 0
Верхняя и нижняя границы частот на водопаде: согласно желаемой полосе декодирования.
Внимание: режим SWL ON создает полную загрузку процессора в течение продолжительного времени, приводит к повышению энергопотребления и требований к охлаждению процессора.
Вложений: 2
r6462mod12: результаты тестирования
Ощутимо выросла вероятность декодирования слабых JT65a сигналов, чем меньше слабых сигналов на диапазоне тем выше вероятность их декодирования.
Для тестирования использовал два набора -26дБ SNR звуковых файлов с симулятора jt65sim: 1000 файлов содержащих 1 сигнал, и 250 файлов содержащих 4 сигнала.
Количество декодируемых JT9 сигналов не изменилось.
Вложение 161831
Вложений: 1
mod12: первое декодирование сигнала с -27дБ SNR
SNR реальный(не результат вычитания сигналов), файлы с одним сигналом с симулятора.
Пока одно декодирование на 250 файлов, но все равно приятно - предыдущие ревизии WSJT-X -27дБ SNR вообще не брали.
Вложение 161844