Основной проблемой данного этапа разработки является получение высокоэффективного
с точки зрения скорости выполнения кода, позволяющего с заданной степенью
точности реализовать требуемые критерии синтеза. При этом время, необходимое
для осуществления соответствующих вычислительных процедур, в значительной
степени будет определять достижимые характеристики и свойства формируемых ФМн
сигналов, поэтому использование языков высокого уровня для решения
поставленной задачи малоэффективно, так как компиляторы этих языков генерируют
слишком избыточный и медленный по скорости исполнения код. В результате для
реализации программного обеспечения устройства формирования и обработки ФМн
сигналов был выбран язык ассемб-
лера МП ADSP2111, что позволило получить наиболее быстродействующий и компактный код.
Согласно рис. 3.2, описанному в п. 3.3, процедура обработки ФМн сигналов в случае синхронного приема будет состоять из следующих этапов:
1. Инициализация счетчика символов модулирующей последовательности j = 1.
2. Вычисление взаимнокорреляционной функции (ВКФ) j-той части принятого сигнала s и опорной несущей последовательности hH
(3.31)
3. Принятие решения о знаке символа, принятой модулирующей последовательности sM
(3.32)
где imax ‑ номер элемента g1 с максимальным абсолютным значением.
4. Инкремент j.
5. Переход к пункту 2 при j £ NM.
6. Вычисление отклика ВФ сжатия для sM согласно (3.10).
Подробная блок-схема алгоритма, простроенного согласно приведенной выше итерационной процедуры, представлена на рис. 3.10. Предполагается, что основной формат представления чисел - целый, знаковый (16.0), отрицательные значения - в дополнительном коде.
Согласно рис. 3.10, программа будет состоять из следующих
основных модулей:
Начало
Инициализация счетчика
модулирующей последовательности
j = 1
Вычисление отклика блока 1, рис. 3.2
согласно (3.31)
Вычисление sMj согласно (3.32)
j = j + 1
Да j £ NM
Нет
Вычисление отклика ВФ (блок 3,
рис. 3.2) согласно (3.10 )
Конец
Рис. 3.10
Блок-схема алгоритма обработки составной последовательности
1. Основная программа (Модуль Processing, Приложение II). В основной программе осуществляется инициализация переменных, вызов подпрограммы вычисления ВКФ и формирование принимаемой модулирующей последовательности. Программа выполняется за NProc » NM(NВКФ1 + NЗНАК) + NВКФ2 тактов, где NВКФ1 и NВКФ2 - число тактов, необходимых для вычисления ВКФ при приеме одного символа модулирующей последовательности и для весовой фильтрации модулирующей последовательности соответственно.
2. Подпрограмма вычисления ВКФ (Модуль Mutual_Kor, Приложение II). В подпрограмме производится вычисление линейной свертки (3.10) двух последовательностей vhod1 (длиной N1) и vhod2 (длиной N2) за NВКФ =((N + 1)×N)/2 + 20×N) тактов, где N = N1 + N2 ‑ 1.
3. Подпрограмма определения главного лепестка (Модуль Znak_Gl_Lep, Приложение II). В подпрограмме принимается решение о том, какой символ модулирующей последовательности (1 или -1) был принят. Подпрограмма соответствует блоку 2 на рис. 3.2. Время выполнения NЗНАК = 10 + 2×NH ‑ 1
Таким образом, МП обработки осуществляет прием одного ФМн сигнала на основе СП длиной 1023 элемента за » 108 тыс. тактов, т.е. за » 5.4 мс.
Формирование такой СП производится из 11-элементного кода Баркера и 93-элементной модулирующей последовательности, синтезируемой на основе критерия (3.6) по алгоритму, приводимому в п. 3.3.
Подробная блок-схема алгоритма, простроенного согласно приведенной выше итерационной процедуры, представлена на рис. 3.11. Предполагается, что основной формат представления чисел - целый, знаковый (16.0), отрицательные значения - в дополнительном коде.
Согласно рис. 3.11,
программа формирования СП реализована на основе модуля Synth_Signal. Формирование исходной модулирующей последовательно-
Начало
Формирование последовательности
со случайными элементами
Расчет АКФ R(n) и СПМ G(k)
Расчет критериев r1(R,R0) и r2(G)
Вычисление начального значения функционала ( i = 0 )
Смена знака i-го элемента
последовательности
Коррекция значений
АКФ: R(i+1)(n) и СПМ: G(i+1)(k)
1 2
Рис.3.11. Блок-схема алгоритма формирования составной последовательности
1 2
Расчет нового значения функционала
да
нет
ai = -ai
i = i+1
да
i £ N
нет
Расширение импульсов несущей последовательностью
Выход
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.