АРИФМЕТИЧЕСКОЕ УСТРОЙСТВО ДЛЯ ВЫПОЛНЕНИЯ ДИСКРЕТНОГО ПРЕОБРАЗОВАНИЯ ФУРЬЕ Российский патент 1994 года по МПК G06F15/332 

Описание патента на изобретение RU2015550C1

Изобретение относится к вычислительной технике и радиотехнике и предназначено для применения в анализаторах спектра и устройствах цифровой обработки сигналов.

Известны устройства, выполняющие операцию дискретного преобразования Фурье (ДПФ) по алгоритмам быстрого преобразования Фурье - БПФ.

Известно арифметическое устройство для выполнения ДПФ - прототип, состоящее из интерполяторов, сумматоров, элементов НЕ, мультиплексоров и счетного триггера, которое выполняет базовую операцию ДПФ путем вычисления методом интерполяции промежуточных спектральных отсчетов.

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

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

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

Целью изобретения является повышение точности преобразования.

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

На фиг.1 представлена общая функциональная схема арифметического устройства для выполнения ДПФ; на фиг.2-23 - функциональные схемы элементов общей схемы; на фиг.24-26 - примеры использования устройства в некоторых вычислителях ДПФ; на фиг.27 - графики, иллюстрирующие прямое БПФ; на фиг.28 - графики, иллюстрирующие обратное БПФ.

Общая функциональная схема арифметического устройства содержит многоразрядные мультиплексоры 1-4 с двух направлений (мультиплексоры с векторными входами и выходами), мультиплексор 5 с двух направлений, четыре интерполятора 6-9, блок 10 формирования приращения порядка чисел, блок 11 когерентных сумматоров, блок 12 управления, блок 13 оперативной памяти. Первым - шестнадцатым входами арифметического устройства являются, соответственно информационные (векторные) входы 21-24 (квадратурные отсчеты первого входного спектра или нечетные отсчеты сигнала и квадратурные отсчеты второго входного спектра или четные отсчеты сигнала), вход (векторный) 20 порядка входных чисел, вход (векторный) 27 установки размера БПФ, вход (векторный) 28 установки размера ДПФ на данном этапе, вход 25 переключения прямого и обратного преобразования Фурье, первый вход 19 синхронизации, второй вход 17 синхронизации, вход 29 установки режима конвейерной или однопроцессорной обработки сигнала (KON), вход 18 признака текущего изменения размера выходного ДПФ, вход 30 установки режима одновременной или последовательной обработки, вход 15 начальной установки, первый тактовый вход 26, второй тактовый вход 16, первым - двенадцатым выходами устройства 14 являются соответственно выходы (векторные) 38, 40, 39 и 41 спектра при конвейерной обработке (38, 40 - квадратурные выходы первой половины выходных спектральных отсчетов или нечетных частичных спектров и 39, 41 - квадратурные выходы второй половины выходных спектральных отсчетов или четных частичных спектров), выход (векторный) 37 порядка выходных чисел, выходы (векторные) 31-34 спектра при однопроцессорной обработке (31, 32 - квадратурные выходы четных выходных спектральных отсчетов И 33, 34 - квадратурные выходы нечетных спектральных отсчетов), первый и второй выходы 35 и 36 синхронизации, и выход 389 окончания ДПФ в однопроцессорном вычислителе.

Первый вход мультиплексора 1 соединен с первым выходом 38 блока 13, второй вход - с входом 21, а вход управления - с входом 29. Первый вход мультиплексора 2 соединен с третьим выходом 40 блока 13, второй вход - с входом 22, а вход управления - с входом 29. Первый вход мультиплексора 3 соединен с вторым выходом 39 блока 13, второй вход - с входом 23, а вход управления - с входом 29. Первый вход мультиплексора 4 соединен с четвертым выходом 41 блока 13, второй вход - с входом 24, а вход управления - с входом 29. Первый вход мультиплексора 5 соединен с входом 19, второй вход - с восьмым выходом 35 блока 12, а вход управления - с входом 29.

Первые векторные информационные входы интерполяторов 6-9 подсоединены к векторным выходам соответственно мультиплексоров 1-4, вторые векторные входы управления номера текущего этапа преобразования Фурье соединены вместе и подключены к первому выходу блока 12 управления, третьи входы (синхронизации) этих интерполяторов соединены вместе и подключены к выходу мультиплексора 5, четвертые тактовые входы всех интерполяторов соединены вместе и подключены к (пятому) выходу тактовых импульсов блока 11 когерентных сумматоров. Первый, третий, пятый и седьмой векторные входы блока когерентных сумматоров подсоединены к первым выходам (основных) спектральных отсчетов соответственно интерполяторов 1-4, второй, четвертый, шестой и восьмой входы блока когерентных сумматоров подключены к вторым выходам (промежуточных) отсчетов этих интерполяторов, управляющий (векторный девятый) вход номера текущего этапа преобразования Фурье блока когерентных сумматоров подключен к первому выходу блока 12 управления, вход установки (десятый) подключен к входу 25, вход синхронизации (одиннадцатый) - к выходу мультиплексора 5, вход управления (двенадцатый) режимами записи исходной информации и считывания готового спектра или преобразования Фурье - к седьмому выходу блока 12, тактовый вход (тринадцатый) - к входу 26.

Вход (первый) начальной установки блока 10 формирования приращения порядка чисел соединен с входом 15, вход (второй) установки режима конвейерной или однопроцессорной обработки - с входом 29, вход (третий) признака текущего изменения размера ДПФ - с входом 18, вход (четвертый, векторный) порядка входных чисел - с входом 20, вход (пятый) признака переполнения - с одноименным выходом (девятый) блока 13, а входы признака считывания очередного частичного спектра промежуточного преобразования Фурье (шестой), признака окончания ДПФ в однопроцессорном вычислителе (седьмой), начала обработки присоединяемого частичного спектра при удвоении размера преобразования Фурье на данном этапе (восьмой), первого и второго признака начала каждого этапа преобразования Фурье (девятый и десятый), а также признака считывания приращения порядка чисел выходного частичного спектра (одиннадцатый) соединены соответственно с девятым - четырнадцатым выходами блока 12, тактовый (двенадцатый) вход соединен с тактовым входом 26. Первый и второй (векторные) выходы блока 10 соединены соответственно с входами (восьмой и девятый) первого и второго признака управления сдвигом блока 13, третий выход (векторный) подключен к выходу 37.

Вход (первый векторный) установки размера ДПФ на выходе анализатора спектра блока 12 управления подключен к входу 27, вход (второй векторный) установки размера ДПФ на данном этапе - к входу 28, вход (третий) установки режима конвейерной или однопроцессорной обработки Фурье соединен с входом 29, вход (четвертый) установки режима одновременной или последовательной обработки - с входом 30, вход (пятый) начальной установки - с одноименным входом 15 устройства, первый тактовый вход (шестой) - с одноименным входом 26 устройства, второй тактовый вход (седьмой) - с входом 16 устройства, вход (восьмой) сигнала сопровождения режима конвейерной обработки - с входом 17 и вход (девятый) признака текущего изменения размера ДПФ - с входом 18.

Первый и второй информационные входы (векторные) блока 13 оперативной памяти соединены с входами 21 и 22, третий - шестой информационные входы (векторные) - с первым - четвертым выходами блока 11 когерентных сумматоров, входы управления считыванием нечетных и четных частичных спектров, управления считыванием основных и промежуточных отсчетов спектра, управления режимами запись-считывания, управления режимами записи исходной информации и считывания готового спектра или преобразования Фурье (седьмой, десятый, тринадцатый и четырнадцатый) соединены соответственно с четвертым - седьмым выходами блока 12, первый и второй входы признака управления сдвигом (восьмой и девятый векторные) соединены соответственно с первым и вторым выходами блока 10, первый и второй адресные входы (одиннадцатый и двенадцатый векторные) соединены соответственно с вторым и третьим выходами блока 12, а тактовый вход (пятнадцатый) соединен с входом 26.

Первый - четвертый и шестой - девятый векторные выходы устройства 14 подключены соответственно к первому, третьему, второму и четвертому - девятому выходам блока 13 оперативной памяти (выходы 38, 40, 39, 41 и 31-34 соответственно), пятый векторный выход устройства 14 подключен к третьему выходу блока 10 формирования приращения порядка чисел, а десятый - двенадцатый выходы устройства 14 подключены соответственно к восьмому - десятому выходам блока 12 управления.

На фиг. 2 изображена схема блока 11 когерентных сумматоров. Он состоит из узла 53 задержки синхронизации, логического элемента 2И 54 и когеретных сумматоров 55s-58s. Первым - восьмым входами блока 11 являются соответственно векторные информационные входы 45-52, девятый - тринадцатый входы блока 11 - это входы номера текущего преобразования Фурье 43 (векторный), признака переключения прямого или обратного ДПФ 25, синхронизации 42, управления режимами записи исходной информации-считывания готового спектра или преобразования Фурье 44 и тактовый 26. Первый - четвертый выходы 55-58 блока 11 - это выходы (векторные) соответственно квадратур четных 55, 56 и нечетных 57, 58 выходных спектральных отсчетов. Пятый выход блока когерентных сумматоров - это выход тактовых сигналов блока (CCS).

Первый вход узла 53 подключен к входу 42, второй вход (векторный) - к входу 43, а третий - к выходу логического элемента 2И 54. Первый - четвертый входы (векторные) когерентного сумматора 55s подключены соответственно к входам 45, 49, 51 и 47 блока 11, первый - четвертый входы (векторные) когерентного сумматора 56s подключены соответственно к входам 47, 51, 45 и 49 блока 11, первый - четвертый входы (векторные) когерентного сумматора 57s подключены соответственно к входам 46, 50, 52 и 48 блока 11, первый - четвертый входы (векторные) когерентного сумматора 58s подключены соответственно к входам 48, 52, 46 и 50 блока 11, пятые входы первого и второго когерентных сумматоров 55s и 56s соединены вместе и подключены к входу логического "0" блока, пятые входы когерентных сумматоров 57s и 58s соединены вместе и подключены к входу логической "1" блока, шестые входы когерентных сумматоров 55s-58s соединены вместе и подключены к входу 25, седьмые входы когерентных сумматоров 55s-58s подключены к выходу узла 53, восьмые входы когерентных сумматоров 55s-58s подключены к выходу элемента 2И 54, выходы (векторные) 55-58 блока 11 когерентных сумматоров подключены соответственно к выходам когерентных сумматоров 55s-58s.

Схема интерполятора по n числу спектральных отсчетов приведены на фиг. 3. Она состоит из узла 59 синхронизации, узла 60 задержки, n/2 двухвходовых сумматоров 61-63, n+1 регистров 64-66, 70-72 и 74, n/2 умножителей 67-69 на весовые коэффициенты и многовходового сумматора 73. Интерполятор имеет входы синхронизации 42, тактовых импульсов 75, информационный 75 и n/2 входов весовых коэффициентов, а также первый и второй выходы соответственно задержанных основных (входных) спектральных отсчетов 77 и промежуточных (рассчитанных) 78.

Синхровход узла 59 синхронизации подключен к входу 42, а тактовый вход - к входу 75 тактовых импульсов. Первый - третий синхровходы узла 60 задержки подключены соответственно к первому - третьему выходам узла 59 синхронизации, тактовый (четвертый) вход узла 60 подключен к входу 75, а информационный (пятый, векторный) - к входу 76. Первые входы сумматоров 61, 62 и 63 (векторные) подключены соответственно к n, n/2+2 и n/2+1 выходам узла 60 задержки, другие входы этих сумматоров (векторные) подключены соответственно к первому n/2-1 и n/2 выходам узла 60 задержки. Первые входы регистров 64, 65 и 66 (векторные) подключены соответственно к выходам сумматоров 61-63, вторые входы этих регистров подключены к входу 75. Первые входы умножителей 67-69 (векторные) подключены соответственно к выходам регистров 64-66, вторые входы (векторные) - к своим источникам весовых коэффициентов (Mn/2, . . .,М2 и М1). Первые входы регистров 70-72 (векторные) подключены соответственно к выходам умножителей 67-69, вторые входы - к входу 75 тактовых импульсов. Входы сумматора n/2 чисел 73 (векторные) подключены к выходам регистров 70-72. Первый вход (векторный) регистра 74 подключен к выходу сумматора 73, а второй вход - к входу 75 тактовых импульсов. Выход регистра 74 подключен к второму выходу (промежуточных спектральных отсчетов) 78 интерполятора. М-й выход узла 60 задержки подключен к первому выходу (задержанных основных спектральных отсчетов) 77 интерполятора.

На фиг. 4 изображена схема когерентного сумматора (55s-58s). Схема состоит из пяти элементов 2И 83-86, 104 и одного элемента 3И 103, двух элементов 2ИЛИ 108 и 109, двух элементов НЕ 87 и 107, элемента 2И-НЕ 102, пяти элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 88-91 и 106, семи регистров 92-95, 98 и 101, трех сумматоров 96, 97 и 100 и счетчика 105. Первый - четвертый информационные (векторные) входы когерентного сумматора подключены соответственно к информационным входам 110-113, остальные (пятый-восьмой) - к входу 114 признака переключения суммирования основных или промежуточных отсчетов, входу 25 установки прямого и обратного преобразования Фурье когерентного сумматора, входу 115 синхронизации и тактовому входу 116. Выход когерентного сумматора подключен к выходу 117 регистра 101.

Первые входы (векторные) элементов 2И 83-86 подключены к входам 110-113 соответственно, вторые входы элементов 2И 83-84 - к выходам элемента 2ИЛИ 108, а вторые входы элементов 2И 85, 86 - к выходам элемента 2ИЛИ 109. Первые входы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ (векторные) 88-91 подключены к выходам элементов 2И 83-86 соответственно, вторые входы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 88-89 подключены к выходу элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 106, а вторые входы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 90 и 91 подключены, соответственно к выходу первого разряда счетчика 105 и выходу элемента НЕ 87. Информационные входы (векторные) регистров 92-95 подключены соответственно к выходам элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 88-91, а тактовые входы - к входу 116 тактовых импульсов. Входы сумматоров 96 и 97 (векторные) подключены соответственно к выходам регистров 92, 93 и 94, 95. Информационные входы регистров 98 и 99 (векторные) подключены соответственно к выходам сумматоров 96 и 97, тактовые входы этих регистров подключены к входу 116 тактовых импульсов. Входы сумматора 100 (векторные) подключены к выходам регистров 98 и 99. Информационный вход регистра 101 (векторный) подключен к выходу сумматора 100, а тактовый вход - к входу 116 тактовых импульсов. Выход регистра 101 подключен к выходу 117 когерентного сумматора. Первый вход элемента 2И-НЕ 102 подключен к входу 25, а второй - к входу 114. Первый вход элемента 3И 103 подключен к входу 114, второй вход - к входу 115 синхронизации, а третий - к входу 25. Первый вход элемента 2И 104 подключен к входу 115 синхронизации, а второй вход - к выходу элемента 2И-НЕ 102. Вход установки в логическую "1" выходов счетчика 105 подключен к выходу элемента 3И 103, вход установки в логический "0" - к выходу элемента 2И 104, вход изменения направления счета - к входу 25, а тактовый вход - к входу 116 тактовых импульсов. Входы элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 106 подключены к выходам счетчика 105. Вход элемента НЕ 107 подключен к выходу нулевого разряда счетчика 105. Первый вход элемента 2ИЛИ 109 подключен к выходу элемента НЕ 107, а элемента 2ИЛИ 108 - к выходу нулевого разряда счетчика 105, вторые входы этих элементов подключены к входу 114.

На фиг. 5а изображена схема узла 60 задержки. Узел 60 предназначен для использования в интерполяторах по n отсчетам и состоит из 2n-1 регистров - это соответственно первый, второй,..,n/2, n/2+1, n/2+2,...,n-1 и n-й регистры 124, 126,...,128, 130, 132,...,134 и 136 текущих спектральных отсчетов и соответственно n+1,...,n+n/2, n+n/2+1,...,2n-1-й регистры 118,..., 119 и 121,...,122 крайних спектральных отсчетов, регистра сдвига, состоящего из m последовательно соединенных регистров 138,...,139, 140, элемента 2И 137 и n мультиплексоров 123, 125,...,127, 129, 131,...,133 и 135 с двух направлений - это соответственно первый, второй,...,n/2, n/2+1, n/2+2,..., n-1 и n-й мультиплексоры. Первые три входа 80, 81 и 82 узла задержки - это соответственно первый, второй и третий входы сигналов синхронизации, четвертый вход 75 - вход тактовых импульсов, пятый вход 76 - информационный вход. Выходы узла V[1], V[2],...,V[n/2-1], V[n/2], V[n/2+1], V[n/2+2],..., V[n-1] , V[n] и V[m] узла задержки - это соответственно первый, второй,..., n-й и n+1-й выходы.

Информационный вход регистра 118 (векторный) подключен к входу 76, а тактовый вход - к выходу элемента 2И 137. Информационный вход регистра 119 ((n+n/2)-й регистр крайних спектральных отсчетов) подключен к выходу (n+n/2-1)-го регистра, а тактовый вход - к выходу элемента 2И 137. Первый вход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 120 подключен к выходу регистра 119, а второй вход - к входу 82. Информационный вход регистра 121 подключен к выходу элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 120, а тактовый вход - к выходу элемента 2И 137. Информационный вход регистра 122 ((2n-1)-й регистр крайних спектральных отсчетов) подключен к выходу (2n-2)-го регистра памяти, а тактовый вход - к выходу элемента 2И 137. Первый вход мультиплексора 123 подключен к входу 76, второй вход - к выходу регистра 122, а управляющий вход - к входу 80. Информационный вход регистра 124 подключен к выходу мультиплексора 123, а тактовый вход - к входу 75. Первый вход мультиплексора 125 подключен к выходу регистра 118, второй - к выходу регистра 124, а управляющий вход - к входу 81. Информационный вход регистра 126 подключен к выходу мультиплексора 125, а тактовый вход - к входу 75. Первый вход мультиплексора 127 (n/2-й мультиплексор) соединен с выходом (n+n/2-1)-го регистра памяти крайних отсчетов, второй вход с выходом (n/2-1)-го регистра текущих отсчетов, а управляющий вход - с входом 81. Информационный вход регистра 128 соединен с выходом мультиплексора 127, а тактовый вход - с входом 75. Первый вход мультиплексора 129 соединен с выходом регистра 119, второй вход - с выходом регистра 128, а управляющий вход - с входом 81. Информационный вход регистра 130 соединен с выходом мультиплексора 129, а тактовый вход - с входом 75. Первый вход мультиплексора 131 соединен с выходом регистра 121, второй вход - с выходом регистра 130, а управляющий вход - с входом 81. Информационный вход регистра 132 соединен с выходом мультиплексора 131, а тактовый вход - с входом 75. Первый вход мультилексора 133 ((n-1)-й мультиплексор) соединен с выходом (2n-2)-го регистра крайних спектральных отсчетов (вход регистра 122), второй вход - с выходом (n-2)-го регистра текущих спектральных отсчетов, управляющий вход - с входом 81. Информационный вход регистра 134 соединен с выходом мультиплексора 133, а тактовый вход - с входом 75. Первый вход мультиплексора 135 соединен с выходом регистра 122, второй вход - с выходом регистра 134, а управляющий вход - с входом 81. Информационный вход регистра 136 соединен с выходом мультиплексора 135, а тактовый вход - с входом 75. Первый вход элемента 2И 137 соединен с входом 75, а второй вход - с входом 80. Информационный вход регистра 138 соединен с выходом регистра 130, а тактовый вход подключен к входу 75. Информационный вход регистра 139 ((m-1)-й регистр регистра сдвига) соединен с выходом (m-2)-го регистра, а тактовый вход - с входом 75. Информационный вход регистра 140 соединен с выходом регистра 139, а тактовый вход - с входом 75. Выходы первого - n-го регистров текущих спектральных отсчетов - соответственно первый - n-й выходы V[1] - V[n] узла задержки. Выход регистра 140 - (n+1)-й выход V[m] узла задержки.

На фиг. 6 представлена схема узла 59 синхронизации интерполятора по n спектральным отсчетам. Она состоит из n D-триггеров 141-146 и двух элементов ИЛИ 147 и 148. Первый и второй входы 42 и 75 узла синхронизации - это входы синхронизации и тактовый, первый, второй и третий выходы - это выходы 80, 81 и 82 соответственно.

D-вход n-го триггера (141) соединен с выходом (n-1)-го триггера (142), D-вход (n-1)-го триггера - с выходом (n-2)-го триггера, . .., D-вход (n/2+1)-го триггера (143) - с выходом n/2-го триггера (144), D-вход n/2-го триггера - с выходом (n/2-1)-го триггера,..., D-вход триггера 145 - с выходом первого D-триггера (146), D-вход первого D-триггера - с входом 42. Тактовые входы всех D-триггеров соединены с входом 75. Элемент ИЛИ 147 имеет n-1 входов, которые подсоединены соответственно к выходам (n-1)-го - первого D-триггеров (142-146). Элемент ИЛИ 148 имеет n/2 входов, которые подсоединены соответственно к выходам n/2-го - первого D-триггеров (144-146). Выходы элементов ИЛИ 148, 147 и D-триггера 141 (n-й D-триггер) - соответственно выходы 80-82.

На фиг. 7 представлена схема интерполятора по шести спектральным отсчетам. Схема состоит из узла 149 синхронизации, управляемого узла 150 задержки и весового сумматора 151. Схема интерполятора имеет информационный вход 76 (первый, векторный), второй вход 43 (управляющий, векторный), третий вход 42 (синхронизации) и четвертый вход 75 - тактовый, первый выход 77 (основных спектральных отсчетов, векторный) и второй выход 78 (промежуточных спектральных отсчетов, векторный).

Первые три управляющих входа узла 149 синхронизации (11, 12 и 13) подключены к векторному входу 43, синхровход узла синхронизации подключен к входу 42, а тактовый - к входу 75. Информационный (первый) вход управляемого узла 150 задержки (векторный) подключен к входу 76, первый - шестой управляющие и второй - третий так- товые (второй - девятый) - соответственно к первому - восьмому выходам узла 149, первый тактовый (десятый) вход подключен к входу 75. С первого по шестой информационные входы весового сумматора 151 (векторные) подключены соответственно к первому - шестому выходам узла 150, седьмой - девятый входы - к векторному входу 43, а десятый вход подключен к входу 75 тактовых импульсов. Выход 77 интерполятора подключен к седьмому выходу узла 150 задержки, а выход 78 - к выходу сумматора 151.

На фиг.8а представлена схема управляемого узла 149 синхронизации. Схема состоит из шести D-триггеров 152-156 и 163, четырех элементов НЕ 157, 161, 164 и 166, пятивходового элемента ИЛИ 160, четырехвходового элемента ИЛИ 162, трехвходового элемента ИЛИ 165, трех двухвходовых элементов ИЛИ 171, 173 и 174 и девяти двухвходовых элементов И 158, 159, 167-170, 172, 175 и 176. Первый - третий управляющие входы узла - это входы 11, 12 и 13 (векторый вход 43), второй вход 42 - это вход синхронизации, третий вход 75 - тактовый. Первый - восьмой выходы схемы синхронизации - это соответственно выходы 177-184.

D-вход триггера 152 подключен к выходу триггера 153, D-вход триггера 153 - к выходу триггера 154, D-вход вход триггера 154 - к выходу триггера 155, D-вход вход триггера 155 - к выходу триггера 163, D-вход триггера 163 - к выходу триггера 156 и D-вход триггера 156 - к входу 42. Все тактовые входы этих триггеров подключены к входу 75 тактовых импульсов. Вход элемента НЕ 157 подключен к выходу триггера 152, вход элемента НЕ 164 - к выходу 11 вектора 43, вход элемента НЕ 161 - к выходу 12 вектора 43 и вход элемента НЕ 166 - к выходу триггера 155. Входы элемента ИЛИ 160 подключены соответственно к выходам триггеров 153, 154, 155, 163 и 156, а входы элемента ИЛИ 162 - соответственно к выходам триггеров 155, 163 и 156, а также выходу 12 вектора 43. Входы элемента ИЛИ 165 подключены соответственно к выходам элементов И 158, 159 и выходу 11 вектора 43. Входы элементов ИЛИ 171, 173 и 174 подключены соответственно к выходам триггера 155 и элементов И 167, 158 и 169, 170 и 11 вектора 43. Первый и второй входы элементов И 158, 159, 167-170, 172, 175 и 176 подключены соответственно к выходам триггера 152 и 13 вектора 43, триггера 154 и 12 вектора 43 элементов ИЛИ 160 и НЕ 161, ИЛИ 162 и НЕ 164, триггера 155 и 12 вектора 43, элемента НЕ 166 и 12 вектора 43, элемента НЕ 157 и 13 вектора 43, элемента ИЛИ 160 и входу 75, элемента ИЛИ 171 и входу 75. Выходы 177 - 184 - это соответственно выходы элементов ИЛИ 165, И 172, ИЛИ 173, 174, И 167, 168, 175 и 176.

На фиг.9 представлена схема управляемого узла 150 задержки интерполятора по шести спектральным отсчетам. Схема состоит из шестнадцати D-триггеров 185-187, 189, 190, 192, 194, 196, 198, 200 и 202 - 207, пяти мультиплексоров 191, 193, 197, 199, 201, элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 188 и элемента 2И-3ИЛИ-НЕ 195. Мультиплексоры 191 и 197 имеют прямые выходы, а остальные - инверсные. Первый вход 76 - информационный, векторный, второй - седьмой входы - это первый - шестой управляющие входы 177-182 соответственно, узла, восьмой-десятый входы 183, 184 и 75 - это второй, третий и первый тактовые входы узла. Первый-шестой выходы узла - это выходы 208-213 интерполирующих спектральных отсчетов, седьмой выход - это выход 77 задержанных основных отсчетов. Все информационные входы и выходы векторные.

D-вход триггера 185 подключен к входу 76, D-вход триггера 186 - к выходу триггера 185, D-вход триггера 189 - к выходу ИСКЛЮЧАЮЩЕЕ ИЛИ 188, D-вход триггера 190 - к выходу триггера 189, все тактовые входы указанных триггеров подключены к входу 183. D-вход триггера 187 подключен к выходу триггера 186, а его тактовый вход - к тактовому входу 184. Первый вход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 188 подключен к выходу регистра 187, а второй вход - к входу 182. Первые входы D-триггеров 192, 194, 196, 198, 200 и 202 - 207 подключены соответственно к выходам мультиплексоров 191 и 193, элемента 2И-3ИЛИ-НЕ 195, мультиплексоров 197, 199 и 201, а также D-триггеров 202-206, тактовые входы этих D-триггеров подключены к входу 75 тактовых импульсов. Первый вход мультиплексора 191 подключен к входу 76, второй вход - к выходу D-триггера 190, а управляющий вход - к входу 181. Первые входы мультиплексоров 193, 197, 199 и 201 подключены соответственно к выходам D-триггеров 185, 187, 189 и 190, вторые входы - соответственно к выходам D-тригеров 192, 196, 198 и 200, управляющие входы - к входу 177. Первые входы первого - третьего логических И элементов 2И-3ИЛИ-НЕ 195 подключены соответственно к выходам элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 188, D-триггера 186 и D-триггера 194, вторые входы первого - третьего логических И элемента 2И-3ИЛИ-НЕ 195 подключены соответственно к входам 180, 179 и 178. Выходы 208-213 - выходы D-триггеров 192, 194, 196, 198, 200 и 202 соответственно. Выход 77 подключен к выходу D-триггера 207.

На фиг. 10 представлена схема узла 53 задержки в варианте для интерполятора по n спектральным отсчетам. Схема состоит из m D-триггеров 214-218, соединенных последовательно и представляющих собой последовательный регистр сдвига. Первым и вторым входами схемы являются входы синхронизации 42 и тактовый 75, а выходом - выход 115.

Первый вход (D) триггера 214 подключен к входу 42, первый вход триггера 215 - к выходу триггера 214, первый вход триггера 216 - к выходу триггера 215, . . . , первый вход триггера 217 ((m-1)-й триггер) - к выходу (m-2)-го триггера, первый вход триггера 218 - к выходу триггера 217. Выход 115 схемы подключен к выходу триггера 218.

На фиг. 11 представлена схема узла 53 задержки в варианте для интерполятора по шести спектральным отсчетам. Схема состоит из одиннадцати D-триггеров 219-221, 223, ...,224, элемента 2-2И-2ИЛИ 222 и элемента 2ИЛИ 225. Первым-третьим входами схемы соответственно являются входы синхронизации 42, управления 43, (векторный - 11, 12, 13) и тактовый 75, выходом - выход схемы 115.

Первый вход триггера 219 (D) подключен к входу 42, первый вход триггера 220 - к выходу триггера 219, первый вход триггера 221 - к выходу триггера 220, первый вход триггера 223 - к выходу триггера 220, первый вход триггера 223 - к выходу 2-2И-2ИЛИ 222,..., первый вход триггера 224 (одиннадцатый триггер) - к выходу десятого триггера, а все вторые входы триггеров подключены к входу 75 тактовых импульсов. Одни входы логических И элемента 2-2И-2ИЛИ 222 подключены к выходам триггеров 221 и 219, другие входы логических И этого элемента - соответственно к третьему управляющему входу 43 (13) и выходу элемента 2ИЛИ 225. Входы элемента 2ИЛИ 225 подключены к первому и второму входам 43 (11 и 12). Выход 115 узла 53 задержки подключен к выходу триггера 224.

На фиг.12 представлена схема весового сумматора 151 в варианте интерполятора по шести спектральным отсчетам. Схема состоит из одиннадцати блоков 226, 227, 230-233, 242, 243, 249, 251 и 258 масштабирования, двух элементов НЕ 228 и 229, десяти сумматоров с выходными регистрами памяти 234, 244, 250 и 253 - 257 и с выходными регистрами и установкой в логический "0" 235 и 236, двух регистров 237 и 245, четырех регистров 238-241 с масштабированием, регистра 246 с умножителем, двухвходового элемента ИЛИ 247, двухвходового элемента И 252 и трехвходового элемента ИЛИ 248. Входами (первые - шестой) схемы являются первый - шестой информационные 208-213, первый - третий управляющие (седьмой - девятый) 43 (векторный 11, 12 и 13) и тактовый 75 (десятый), входом - выход 78.

Входы блоков 226, 227, 230-233, 242, 243, 249, 251 и 258 масштабирования подключены соответственно к входам 210, 211, 208, 213, 209 и 212 и к выходам сумматоров 234, 235, регистра 246, сумматоров 250 и 257. Входы элементов НЕ 228 и 229 подключены соответственно к первому и второму входам 43 (11 и 12). Информационные входы сумматоров 234 - 236, 244, 250 и 253 - 257 подключены соответственно к выходам блоков 226 и 227, 230 и 231, 232 и 233, 242 и 243, регистра 237 и элементов ИЛИ 247, 248 и сумматора 244, регистра 246 и блока 249, сумматора 250 и элемента И 252, сумматоров 253 и 254, 255 и 256. Тактовые входы сумматоров подключены к входу 75. Входы установки в логический "0" сумматоров 235 и 236 подсоединены к третьему управляющему входу 43 (13). Информационные входы регистров 237-241 подключены к выходу сумматора 234, а регистров 245 и 246 - соответственно к выходам сумматоров 235 и 236. Тактовые входы всех регистров подключены к входу 75. Входы установки в логический "0" регистров 238-241 подключены соответственно к выходу элемента НЕ 228 и к первому - третьему управляющим входам 43 (11, 12 и 13). Вход установки регистра 244 подключен к третьему входу 43 (13). Первый и второй входы элемента ИЛИ 247 подключены соответственно к выходам регистров 238 и 239, первый - третий входы элементов ИЛИ 248 - к выходам регистров 240, 241 и 245, а первый и второй входы элементов И 252 - к выходу блока 251 масштабирования и выходу элемента НЕ 229. Выход 78 весового сумматора подключен к выходу блока 258 масштабирования.

На фиг.13 представлена схема сумматора с регистром памяти и установкой в логический "0". Схема состоит из сумматора 259 двух чисел и регистра 260 на D-триггерах с установкой в логический "0". Входами схемы являются информационные 261 и 262, тактовый 263 и установочный 264, а выходом - выход 265. Входы сумматора 259 соединены с входами 261 и 262. D-вход регистра 260 подключен к выходу сумматора 259, тактовый вход - к входу 263, а установочный - к входу 264. Выход 265 подключен к выходу регистра 260.

На фиг.14 представлена схема сумматора с регистром памяти. Схема состоит из сумматора 266 двух чисел и регистра 267 на D-триггерах. Входами схемы являются информационные 268 и 269 и тактовый 270, выходом - выход 271. Входы сумматора 266 соединены с входами 268 и 269. D-вход регистра 267 подключен к выходу сумматора 266, а тактовый вход - к входу 270. Выход 271 подключен к выходу регистра 267.

На фиг.15 представлена схема регистра с масштабированием и установкой в логический "0". Схема состоит из блока 272 масштабирования и регистра 273 на D-триггерах. Входами схемы являются информационный 274, тактовый 275 и установочный 276, выходом - выход 277. Вход блока 272 масштабирования подключен к входу 274, D-вход регистра - к выходу блока 272, его тактовый вход - к входу 275, а установочный - к входу 276. Выход регистра с масштабированием подключен к выходу 277 регистра 273.

На фиг.16 приведена схема блока 13 оперативной памяти. Схема состоит из четырех элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 278-281, восьми мультиплексоров 282, 284, 286, 288, 298, 299, 302 и 303 с двух направлений, четырех мультиплексоров 283, 285, 287 и 289, совмещенных с регистрами памяти, D-триггера 292, четырех узлов оперативной памяти (ОЗУ) 290, 291, 293 и 294, двух элементов НЕ 295 и 296, элемента 4ИЛИ 297, двух элементов 2И 300 и 301, четырех сдвигателей 304 - 307, а также восьми регистров 308 - 315.

Первым - пятнадцатым входами блока 13 оперативной памяти являются соответственно первый - шестой информационные входы, из которых входы 21, 22 - квадратурные входы сигнала, подлежащего преобразованию, входы 55, 56 - квадратурные входы основных спектральных отсчетов и входы 57, 58 - квадратурные входы промежуточных (интерполированных) спектральных отсчетов. Кроме того, имеются входы управления считыванием нечетных и четных частичных спектров 316, управления записью основных и промежуточных отсчетов спектра 318, управления режимами записи-считывания 317, управления режимами записи исходной информации и считывания готового спектра или преобразования Фурье 44 (соответственно седьмой, десятый, тринадцатый и четырнадцатый входы блока 13), первый и второй входы 321 и 322 соответственно признака управления сдвигом (восьмой и девятый входы блока 13), первый и второй адресные входы 319 и 320 (соответственно одиннадцатый и двенадцатый блока 13), а также тактовый вход 26 (пятнадцатый блока 13). Блок 13 имеет восемь информационных векторных выходов, из которых выходы 38-41, первый - четвертый выходы блока 13) - это соответственно нечетные и четные квадратурные выходы частичных спектров, а выходы 31 - 34 (пятый - восьмой выходы блока 13) - это соответственно квадратурные выходы нечетных и четных выходных спектральных отсчетов. Выход 323 (девятый выход блока 13) - это выход сигнала переполнения.

Входы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 278-281 подключены к двум старшим разрядам входов 55-58 соответственно. Первые входы мультиплексоров 282, 284, 286 и 288 подключены соответственно к входам 55, 57, 56 и 58, а вторые входы этих мультиплексоров подключены соответственно к входам 57, 55, 58 и 56. Управляющие входы указанных мультиплексоров подключены к входу 318. Первые входы мультиплексоров 283, 285, 287 и 289 подключены к выходам мультиплексоров 282, 284, 286 и 288, а их вторые входы - к входам 21 (мультиплексоры 283 и 285) и 22 (мультиплексоры 287 и 289). Управляющие входы этих мультиплексоров подключены к входу 44, а тактовые - к входу 26. Первые и вторые информационные входы ОЗУ 290, 292, 293 и 294 подключены к выходам мультиплексоров 283 и 287, 285 и 289, 283 и 287, 285 и 289 соответственно. Адресные шины ОЗУ 290 и 291 подключены к входу 319, причем нулевой разряд ОЗУ 290 подключен к первому адресному разряду шины 319, а ОЗУ 291 - к второму. Адресные шины ОЗУ 293 и 294 подключены к входу 320, причем нулевой разряд ОЗУ 293 подключен к первому разряду шины 320, а ОЗУ 294 - к второму.

Входы управления режимами записи-считывания ОЗУ 290 и 291 подключены к выходу элемента НЕ 295, а такие же входы ОЗУ узлов 293 и 294 - к входу 319. Входы управления включением выходов ОЗУ (CS) подключены к логическому "0" (режим "выходы включены"). D-вход триггера 292 подключен к входу 44, а тактовый вход - к входу 26. Вход элемента НЕ 296 подключен к выходу триггера 292. Первые входы элементов 2И 300 и 301 подключены к входу 26 тактовых импульсов, а вторые - соответственно к выходам элемента НЕ 296 и триггера 292. Первый и второй входы мультиплексора 298 подключены соответственно к первым выходам ОЗУ 290, 293 и 291, 294 соответственно. Первые и второй входы мультиплексора 299 подключены соответственно к первым выходам ОЗУ 291, 294 и 290, 293 соответственно. Аналогично только к вторым выходам ОЗУ 290, 291, 293 и 294 подключены первые и вторые входы мультиплексоров 302 и 303. Управляющие входы всех мультиплексоров подключены к входу 316. Входы элемента 4ИЛИ 297 подключены к выходам элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 278-281. Информационные входы сдвигателей 304-299, 302 и 303 соответсвенно. При этом старший (L+1)-й разряд в каждом сдвигателе подключен к старшим входам сдвигателя, число которых равно количеству используемых сдвигов разрядов. Управляющие входы сдвигателей 304 и 306 подключены к входу 321, а управляющие входы сдвигателей 305 и 307 - к входу 322. Информационные входы (число их L) регистров 308, 310, 313 и 315 подключены к выходам сдвигателей 304-307 соответственно, а тактовые входы - к выходу элемента 2И 301. Информационные входы (число их L+1) регистров 311, 309, 312 и 316 подключены соответственно к выходам мультиплексоров 298, 299, 302 и 303, а их тактовые входы - к выходу логического элемента 2И 300. Выходы 13, 38-41 31-34 схемы - соответственно выходы регистров 308, 310, 313, 311, 312, 309 и 314 памяти. Выход 323 подключен к выходу логического элемента 4ИЛИ 297.

На фиг.17 приведена схема блока 12 управления. Эта схема состоит из пяти мультиплексоров 324, 340, 379, 380 и 382 с двух направлений, схемы 325 сравнения, четырех дешифраторов 326, 347, 348 и 369, счетного триггера 327 с двумя входами установки в логическую "1", трех счетных RS-триггеров 358, 377 и 378, семи элементов 2И 328, 334, 335, 342, 360, 363 и 376, трех элементов 2И-НЕ 364, 365 и 368, трех элементов И-ИЛИ 349, 350 и 372, группы элементов 2И 337 с векторными входами и выходами, представляющей собой параллельное соединение схем 2И, узла 329 задержки, D-триггера с 330 R- и S-входами, четырех счетчиков 331, 345, 346 и 366 с установкой в начальное состояние, восьми элементов 2ИЛИ 336, 338, 343, 357, 367, 374 и 381, группы элементов 2ИЛИ 332 с векторными входами и выходом, представляющей собой параллельное соединение схем 2ИЛИ, сумматора 333 с входом переноса, трех RS-триггеров 339, 344 и 362 с прямыми выходами и одного RS-триггера 370 с инверсным выходом, девяти D-триггеров 341, 351, 352, 355, 356, 361, 373, 383 и 384 с установкой в начальное состояние узла 353 формирования адресов записи 353, узла 354 формирования адресов чтения 354, элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 371, демультиплексора 375 и узла 385 переключений.

Блок 12 имеет девять входов: первый векторный 27 - вход установки размера ДПФ на выходе анализатора спектра, вход (второй векторный) 28 установки размера ДПФ на данном этапе, вход (третий) 29 установки режима конвейерной или однопроцессорной обработки Фурье, вход (четвертый) 30 установки режима одновременной или последовательной обработки, вход (пятый) 15 начальной установки, (шестой) первый тактовый вход 26, второй тактовый вход (седьмой) 16, вход (восьмой) 17 сигнала сопровождения режима конвейерной обработки и вход (девятый) 18 признака текущего изменения размера ДПФ. Блок 12 имеет четырнадцать выходов: первый векторный 43 (выход номера текущего этапа преобразования Фурье), второй векторный 319 (выход адресной шины первого и второго ОЗУ), третий векторный 320 (выход адресной шины третьего и четвертого ОЗУ), четвертый 318 (управление записью основных или промежуточных - интерполированных спектральных отсчетов), пятый 316 (управление считыванием нечетных или четных частичных спектров), шестой 319 (управление режимами записи-считывания), седьмой 44 (управление режимами записи исходной информации-считывания готового спектра или преобразования Фурье), восьмой 35 (синхроимпульсы начала считывания очередного частичного спектра промежуточного этапа преобразования Фурье), девятый 36 (синхроимпульсы окончания одного (очередного) этапа преобразования Фурье), десятый 389 (период одного этапа преобразования Фурье), одиннадцатый 386 (начало обработки присоединяемого частичного спектра при удвоении размера преобразования Фурье на данном этапе), двенадцатый 388 (первый синхроимпульс признака начала каждого этапа преобразования Фурье), тринадцатый 387 (второй синхроимпульс признака начала каждого этапа преобразования Фурье в данном устройстве), четырнадцатый 390 (синхроимпульс признака считывания приращения порядка чисел выходного частичного спектра).

Первый вход мультиплексора 324 подключен к выходу D-триггера 352, второй его вход - к входу 17, а управляющий - к входу 29. Один вход (векторный) схемы 325 сравнения подключен к входу 27, а другой (тоже векторный) - к выходу группы элементов 2ИЛИ 332. Вход (векторный) дешифратора 326 подключен к выходу группы элементов 2ИЛИ 332. Первый вход установки в логическую "1" счетного триггера 327 подключен к входу 15, тактовый вход - к инверсному выходу мультиплексора 324, а второй вход установки в логическую "1" - к входу 18. Один вход элемента 2И 328 подключен к прямому выходу триггера 327, а другой - к прямому выходу мультиплексора 324. Первый вход (управляющий, векторный) узла 329 задержки подключен к выходу дешифратора 326, второй (информационный) - к выходу логического элемента 2И 328, третий (тактовый) - к выходу логического элемента 2И 376 и четвертый (установочный) - к выходу триггера 330. Информационный вход (D) триггера 330 подключен к логической "1", тактовый вход - к инверсному выходу схемы 325 сравнения, вход установки в логическую "1" - к входу 15, а вход установки в логический "0" - к выходу элемента 2И 334. Тактовый вход счетчика 331 подключен к выходу триггера 352, а установочный - к выходу элемента 2ИЛИ 336. Первый вход (векторный) группы элементов 2ИЛИ 332 подключен к входу 28, а другой (тоже векторный) - к выходу счетчика 331.

Первый вход сумматора 333 (векторный) подключен к выходу группы элементов 2ИЛИ 332, другой вход (тоже векторный) - к логическому "0", а вход переноса - к входу 29. Первый вход элемента 2И 334 подключен к входу 26, а второй - к выходу элемента 2ИЛИ 374. Первый вход элемента 2И 335 подключен к выходу триггера 330, а второй - к выходу логического элемента 2ИЛИ 374. Первый вход элемента 2ИЛИ 336 подключен к входу 29, а второй - к выходу элемента 2И 335. Первый вход группы элементов 2И 337 (векторный) подключен к выходу группы элементов 2ИЛИ 332, а второй - к инверсному выходу схемы 325 сравнения. Первый вход элемента 2ИЛИ 338 подключен к выходу триггера 330, а второй - к выходу элемента И-ИЛИ 349. Вход установки в логическую "1" RS-триггера 339 подключен к первому выходу узла 329 задержки, а вход установки в логический "0" - к выходу элемента 2ИЛИ 338. Первый вход мультиплексора 340 подключен к выходу триггера 352, второй вход - к первому выходу узла 329 задержки, а управляющий вход - к входу 29. Информационный (D) вход D-триггера 341 подключен к выходу триггера 330, тактовый вход - к входу 26, а вход установки в логическую "1" - к входу 17. Первый вход элемента 2И 342 подключен к выходу триггера 330, а второй - к инверсному выходу триггера 341. Первый вход элемента 2ИЛИ 343 подключен к выходу триггера 330, а второй вход - к выходу элемента И-ИЛИ 350. Вход установки в логическую "1" RS-триггера 344 подключен к выходу мультиплексора 340, а вход установки в логический "0" - к выходу элемента 2ИЛИ 343. Тактовый вход счетчика 345 подключен к выходу элемента 2И 376, а установочный - к выходу триггера 339. Тактовый вход счетчика 346 подключен к выходу элемента 2И 376, а установочный - к выходу триггера 344. Входы деширфаторов 347 и 348 (векторные) подключены к входу 27. Первые входы (векторные) элементов И-ИЛИ 349 и 350 подключены к выходам соответственно дешифраторов 347 и 348, вторые входы этих схем (тоже векторные) - соответственно к выходам счетчиков 345 и 346. Информационный (D) вход D-триггера 351 подключен к логической "1", тактовый - к выходу элемента И-ИЛИ 349, а вход установки в логический "0" - к выходу триггера 52. Информационный (D) вход D-триггера 352 подключен к выходу триггера 351, тактовый вход - к выходу задержки 2И 376, а вход установки в логическую "1" - к выходу элемента 2ИЛИ 374. Первый информационный вход (векторный) узла 353 формирования адресов записи подключен к выходу счетчика 345, второй вход (тоже векторный) - к выходу группы элементов 2И 337, а тактовый - к выходу элемента 2И 376. Первый вход (векторный) узла 354 формирования адресов считывания подключен к выходу дешифратора 326, второй (информационный, тоже векторный) - к выходу счетчика 346, третий (векторный) - к выходу сумматора 333, а тактовый - к выходу элемента 2И 376. Информационный (D) вход D-триггера 355 подключен к входу 15, тактовый вход - к входу 26, а вход установки в логическую "1" - к входу 29. Информационный (D) вход D-триггера 356 подключен к логической "1", тактовый вход - к входу 16, а вход установки в логический "0" (инверсный) - к инверсному выходу триггера 361. Первый вход элемента 2ИЛИ 357 подключен к выходу элемента 2И 342, а второй - к входу 30. Вход установки в логическую "1" счетного RS-триггера 358 подключен к выходу триггера 355, тактовый вход - к прямому выходу триггера 373, а вход установки в логический "0" (инверсный) - к логической "1". Первый вход элемента 2ИЛИ 359 подключен к выходу триггера 355, а второй - к выходу элемента И-ИЛИ 372. Первый вход элемента 2И 360 подключен к прямому выходу триггера 356, а второй - к инверсному выходу триггера 361. Вход установки в логическую "1" (инверсный) D-триггера 361 подключен к входу 30, тактовый вход - к входу 26, а D-вход - к выходу элемента 2И 360. Вход установки в логическую "1" RS-триггера 362 подключен к выходу элемента 2ИЛИ 357, а вход установки в логический "0" - к выходу элемента 2ИЛИ 359. Первый вход элемента 2И 363 подключен к прямому выходу триггера 361, а второй - к входу 26 тактовых импульсов. Первый вход элемента 2И-НЕ 364 подключен к входу 30, а второй - к инверсному выходу триггера 358. Первый вход элемента 2И-НЕ 365 подключен к выходу элемента 2И-НЕ 364, а второй - к входу 30. Тактовый вход счетчика 366 подключен к выходу элемента 2И 363, а вход установки в начальное состояние - к выходу триггера 362. Первый вход элемента 2ИЛИ 367 подключен к прямому выходу триггера 373, а второй вход - к выходу триггера 355. Первый вход элемента 2И-НЕ 368 подключен к выходу элемента 2И 363, а второй вход - к прямому выходу триггера 361. Вход дешифратора 369 (векторный) подключен к входу 27. Вход установки в логическую "1" RS-триггера 370 подключен к выходу элемента 2ИЛИ 367, а вход установки в логический "0" - к выходу элемента И-ИЛИ 372. Первый вход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 371 подключен к прямому выходу триггера 358, а второй вход - к выходу элемента 2И-НЕ 368. Первый вход (векторный) элемента И-ИЛИ 372 подключен к выходу дешифратора 369, а второй (тоже векторный) - к выходу счетчика 366. Информационный вход (D) D-триггера 373 подключен к инверсному выходу триггера 370, тактовый вход - к входу 26, а вход установки в логический "0" - к выходу триггера 355. Первый вход элемента 2ИЛИ 374 подключен к входу 29, а второй - к прямому выходу триггера 373. Информационный вход демультиплексора 375 подключен к выходу триггера 352, а управляющий - к выходу элемента 2И-НЕ 364. Первый вход элемента 2И 376 подключен к входу 26, а второй - к выходу элемента 2И-НЕ 368. Вход установки в логическую "1" (инверсный) счетного RS-триггера 377 подключен к логической "1", тактовый вход - к первому выходу демультиплексора 375, а вход установки в логический "0" (инверсный) - к входу 15. Так же подключены установочные входы счетного RS-триггера 378, тактовый вход которого подключен к второму выходу демультиплексора 375. Первые входы мультиплексора 379 и 380 подключены к выходу триггера 377, вторые входы - к выходу триггера 378, а управляющие входы - соответственно к выходам элементов 2И-НЕ 365 и 364. Первый и второй входы мультиплексора 382 подключены соответственно к выходам мультиплексоров 379 и 380, управляющий вход мультиплексора 382 подключен к выходу элемента 2И-НЕ 368. Первый вход элемента 2ИЛИ 381 подключен к третьему выходу узла 354, а второй - к второму выходу узла 329 задержки. Информационный (D) вход D-триггера 383 подключен к выходу мультиплексора 382, тактовый вход - к входу 26, а вход установки в логический "0" (инверсный) - к логической "1". Информационный вход (D) вход D-триггера 384 подключен к выходу элемента 2И-НЕ 368, тактовый вход - к входу 26, а вход установки в логический "0" (инверсный) - к логической "1". Первый информационный (первый векторный) вход узла 385 переключения подключен к второму выходу узла 353, второй информационный вход (второй векторный) - к первому выходу узла 354, третий информационный вход (третий векторный) - к выходу счетчика 366, вход переключения адресного пространства (четвертый) - к выходу элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 371, вход смещения разрядов (пятый) - к входу 30, второй управляющий вход (шестой) - к выходу элемента 2И-НЕ 368, первый управляющий вход (седьмой) - к выходу мультиплексора 382 и тактовый вход (восьмой) - к входу 26.

Первый выход 43 блока 12 - выход дешифратора 326, второй выход (векторный) 319 - первый выход узла 385, третий выход (векторный) 320 - второй выход узла 385, четвертый выход 318 - первый выход узла 353, пятый выход 316 - второй выход узла 354, шестой выход 319 - выход триггера 383, седьмой выход 44 - выход триггера 384, восьмой выход 35 - выход элемента 2ИЛИ 381, девятый выход 36 - второй выход узла 329 задержки, десятый выход 389 - выход триггера 330, одиннадцатый выход 386 - прямой выход триггера 327, двенадцатый выход 388 - прямой выход мультиплексора 324, тринадцатый выход 387 - выход элемента 2И 328, четырнадцатый выход 390 - третий выход узла 329 задержки.

На фиг. 18 представлена схема узла 353 формирования адресов записи. Схема состоит из n-входового мультиплексора 391, дешифратора 392, группы элементов ИЛИ 393, n-1 мультиплексоров 394 - 398, D-триггера 399 и регистра 400. Схема узла имеет информационный вход 401 (первый) - это вход адресов, подлежащих формированию, адресный вход 402 (второй) - вход управления работой формирователя и тактовый вход 403 (третий). Выходов узла два: первый выход 318 - сигнал управления переключением основных и промежуточных отсчетов и второй выход 404 - выход адресов записи.

Информационный (векторный) вход мультиплексора 391 подключен к входу 401, а вход управления (векторный) - к входу 402. Вход (векторный) дешифратора 392 подключен к входу 402. Второй - n-й входы группы элементов ИЛИ 393 подключены соответственно к первому - (n-1)-у выходам дешифратора 392, а первый вход группы элементов ИЛИ 393 подключен к n-у выходу дешифратора 392. Нулевой - (n-2)-й разряды информационного входа 401 подключены к первому входу мультиплексоров 394-398 соответственно, первый - (n-1)-й разряды этого входа подключены к вторым входам указанных мультиплексоров, а управляющие входы мультиплексоров подключены соответственно к первому - (n-1)-у выходам группы элементов ИЛИ 393. Первый информационный вход регистра 400 подключен к выходу мультиплексора 391, второй - n-й входы подключены к выходам мультиплексоров 394-398 соответственно, а тактовый вход подключен к входу 403. Информационный (D) вход D-триггера 399 подключен к выходу мультиплексора 391, тактовый вход - к входу 403, а вход установки в логический "0" (инверсный) - к логической "1". Первый выход 318 узла 353 подключен к выходу триггера 399, а второй его выход 404 - соответственно к первому - n-у выходам регистра 400.

На фиг. 19 представлена схема узла 354 формирования адресов чтения. Схема состоит из шифратора 405, вычитателя 406, дешифратора 407, группы элементов ИЛИ 408, n-1 мультиплексоров 409-413, элемента 2И-nИЛИ 416, элемента 2ИЛИ-НЕ 418, пяти D-триггеров 414, 417, 419-421 и регистра 415. Входами узла являются управляющий 43 (первый), информационный 422 (второй), адресный 423 (третий) и тактовый 403 (четвертый). Первый выход 316 узла формирования - управления переключением четных-нечетных частичных спектров, второй 424 - адресная шина чтения и третий выход 425 - синхросигнал окончания чтения очередной пары частичных спектров.

Входы шифратора 405 подключены к входу 43. Вход вычитаемого вычитателя 406 подключен к выходу шифратора 405, а вход уменьшаемого - к входу 422. Вход дешифратора 407 подключен к входу 423. Первый - n-й входы группы элементов ИЛИ 408 подключены к соответствующим выходам дешифратора 407. Вторые входы мультиплексоров 409-413 подключены соответственно к первому - (n-1)-у разрядам информационного входа 422, первые входы этих мультиплексоров подключены соответственно к первому - (n-1)-у разрядам вычитателя 406, а управляющие входы - соответственно к первому - (n-1)-у выходам группы элементов ИЛИ 408. Первые входы логических И элемента 2 И-nИЛИ 416 подключены к нулевому - (n-1)-у разрядам входа 422, а вторые входы - соответственно к первому - n-у выходам дешифратора 407. Информационные (D) входы D-триггеров 417 и 414 подключены соответственно к выходу ИЛИ элемента 2И-ИЛИ 416 и первому выходу регистра 415, тактовые входы - к входу 403, а входы установки в логический "0" (инверсные) - к логической "1". Первый вход элемента 2ИЛИ-НЕ 418 подключен к инверсному выходу триггера 417, а второй - к выходу элемента 2И-nИЛИ 416. Информационные D-входы триггеров 419-421 подключены соответственно к выходу логического элемента 2ИЛИ-НЕ 418 и выходам триггеров 419, 420, тактовые входы - к входу 403. Информационные первый - n-й входы регистра 415 подключены соответственно к первому (нулевой разряд) выходу вычитателя 406 и выходам мультилексоров 409-413, тактовый вход регистра 415 подключен к входу 403. Первый выход 316 узла 354 подключен к выходу триггера 414, а второй выход 424 (векторный) - соответственно к первому - n-у выходам регистра 415. Выход 425 (третий) подключен к выходу триггера 421.

На фиг.20 приведена схема группы элементов ИЛИ 393 (408). Схема состоит из n-1 логических двухвходовых элементов ИЛИ 426-430. Схема имеет n входов и n-1 выходов.

Первый и второй входы элемента ИЛИ 426 подключены к первому и второму входам группы соответственно, первый и второй входы элемента ИЛИ 427 - к выходу предыдущего (426) и следующему входу группы (третьему) соответственно, входы третьего элемента ИЛИ 428 подключены к выходу второго элемента ИЛИ 427 и четвертому входу группы соответственно, входы i-го элемента ИЛИ 429 подключены соответственно к выходу (i-1)-го элемента ИЛИ и (i+1)-у входу группы и т.д., входы (n-1)-го элемента ИЛИ 430 подключены к выходу предыдущего (n-2)-го элемента ИЛИ и n-у входу всей схемы. Первый - (n-1)-й выходы группы подключены соответственно к выходам первого (426) - n-го (430) элементов ИЛИ. По существу, по каждому i-у выходу группа элементов ИЛИ представляет собой (i+1)-входовый элемент ИЛИ 431.

На фиг. 21 представлена схема узла 329 задержки. Схема состоит из n+3 D-триггеров 432-434, 437-441, а также шифратора 436 и мультиплексора 435. Входами схемы являются первый (векторный) 445, второй, информационный 443, третий тактовый 442 и четвертый установочный 444. Выходов схемы задержки три: выход 446 (первый), выход 36 (второй) и выход 390 (третий).

Информационные входы (D) D-триггеров 432-434 и 437-441 подключены соответственно к входу 443, выходам триггеров 432, 433,..., выходу мультиплексора 435 и выходам триггеров 437,...,438-440, тактовые входы - к тактовому входу 442, а установочные входы - к входу 444. Информационные входы (М) мультиплексора 435 подключены к выходам триггеров 432, 433,...,434, а вход шины управления (L) - к выходу шифратора 436, входом которого является входная шина 445. Первый выход узла подключен к выходу 446 триггера 438, второй 36 - к выходу триггера 441, а третий 390 - к выходу триггера 439.

На фиг. 22 представлена схема узла 385 переключения. Схема состоит из двух элементов НЕ 447 и 448, элементов 2И 449 и 450, элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 453 и 454, двух групп элементов 2И-3ИЛИ 451 и 452, двух (n-1)-канальных мультиплексоров 455 и 456 и двух регистров 457 и 458. Входами узла являются первый информационный 405 (первый векторный), второй информационный 423 (второй векторный), третий информационный 462 (третий векторный), вход переключения адресного пространства 459 (четвертый), вход смещения разрядов 30 (пятый), второй управляющий вход 461 (шестой), первый управляющий вход 460 (седьмой) и тактовый вход 26 (восьмой). Выходами узла 385 являются векторные выходы первый 321 и второй 322.

Входы элементов НЕ 447 и 448 подключены соответственно к входам 460 и 461. Входы элемента 2И 449 подключены к выходу элемента НЕ 447 и входу 461, а первый и второй входы элемента 2И 450 - к входам 460 и 461. Первый и второй входы первых логических И группы элементов 2И-3ИЛИ 461 подключены соответственно к входу 404 и выходу логического элемента 2И 449, первый и второй входы вторых логических И этой группы подключены соответственно к векторному входу 424 и выходу логического элемента 2И 450, а первый и второй входы третьих логических И группы элементов 2И-3ИЛИ 451 подключены соответственно к векторному входу 462 и выходу элемента НЕ 448. Первый и второй входы вторых логических И группы элементов 2И-3ИЛИ 452 подключены соответственно к векторному входу 404 и выходу логического элемента 2И 449, первый и второй входы первых логических И этой группы подключены соответственно к векторному входу 424 и выходу логического элемента 2И 450, а первый и второй входы третьих логических И группы элементов 2И-3ИЛИ 452 подключены соответственно к векторному входу 462 и выходу элемента НЕ 448. Первый и второй входы элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 453 подключены соответственно к выходу элемента 2И 450 и первому выходу группы элементов 2И-3ИЛИ 451, а входы элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 454 подключены соответственно к выходу элемента 2И 449 и первому выходу группы элементов 2И-3ИЛИ 452. Первый вход первого канала мультиплексора 455 подключен к входу 459, а первые входы остальных (второго - (n-1)-го) каналов этого мультиплексора подключены, соответственно к второму - (n-1)-у выходам группы элементов 2И-3ИЛИ 451, вторые входы указанных каналов мультиплексора 455 подключены соответственно к второму - n-у выходам группы элементов 2И-3ИЛИ 451. Первый вход первого канала мультиплексора 456 подключен к входу 459, а первые входы остальных (второго - (n-1)-го) каналов этого мультиплексора подключены соответственно к второму - (n-1)-у выходам группы элементов 2И-3ИЛИ 452, вторые входы указанных каналов мультиплексора 456 подключены соответственно к второму - n-у выходам группы элементов 2И-3ИЛИ 452. Первый вход регистра 457 подключен к выходу элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 453, второй вход - к первому выходу группы элементов 2И-3ИЛИ 451, а остальные информационные входы (третий - (n+1)-й) подключены соответственно к первому - (n-1)-у выходам мультиплексора 455, тактовый вход регистра 457 подключен к входу 26. Первый вход регистра 458 подключен к выходу элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 454, второй вход - к первому выходу группы элементов 2И-3ИЛИ 452, а остальные информационные входы (третий - (n+1)-й) подключены соответственно к первому - (n-1)-у выходам мультиплексора 456, тактовый вход регистра 458 подключен к входу 26. Первый (векторный) выход 319 узла переключения подключен к первому - (n+1)-у выходам регистра 457, второй (векторный) выход 320 - к первому - (n+1)-у выходам регистра 458.

На фиг. 23 представлена схема блока 10 формирования приращения порядка чисел. Схема состоит из двух элементов 2ИЛИ 463 и 464, двух элементов 2И-НЕ 465 и 466, двух элементов НЕ 467 и 473, двух групп элементов 2И-НЕ 488 и 489, двух элементов НЕ 467 и 473, двух групп элементов 2И-НЕ 488 и 489, двух групп элементов 2-2И-2ИЛИ 468 и 472, триггера 474, вычитателя 471, девяти регистров 469, 470, 476-478, 482-484 и 490, трех D-триггеров 485-487, демультиплексора 475, а также трех сумматоров 479-481. Входами блока 10 являются вход 15 (первый) начальной установки, вход 29 (второй) установки режима конвейерной или однопроцессорной обработки, вход 18 (третий) признака текущего изменения размера ДПФ, вход 20 (четвертый векторный) порядка входных чисел, вход 323 (пятый) признака переполнения, вход 36 признака считывания очередного частичного спектра промежуточного преобразования Фурье (шестой), вход 389 признака окончания ДПФ в однопроцессорном вычислителе (седьмой), вход 386 начала обработки присоединяемого частичного спектра при удвоении размера преобразования Фурье на данном этапе (восьмой), входы 388 и 387 соответственно, первого и второго признаков начала каждого этапа преобразования Фурье (девятый и десятый), вход 390 признака считывания приращения порядка чисел выходного частичного спектра (одиннадцатый), а также тактовый (двенадцатый) вход. Выходами блока 10 являются векторные первый 321, второй 322 и третий 37.

Первые входы элементов 2ИЛИ 463 и 464 подсоединены соответственно к входу 386 и выходу элемента 2ИЛИ 463, а вторые входы этих элементов - к входу 18. Первые входы элементов 2И-НЕ 465 и 466 подсоединены соответственно к выходам элементов 2ИЛИ 464 и 463, а вторые их входы - к входу 388. Первые входы первого логического И группы элементов 2-2И-2ИЛИ 468 подсоединен к входу 20, а второго логического И этой же группы - к выходу регистра 484, вторые входы логических И этих групп элементов соединены вместе и подсоединены соответственно к входу 29 и выходу элемента НЕ 467. Вход элемента НЕ 467 подключен к входу 29. Информационные (D) входы регистров 469 и 470 подключены к выходу группы элементов 2-2И-2ИЛИ 468, тактовые входы этих регистров подсоединены соответственно к выходам элементов 2И-НЕ 465 и 466, а установочные - к входу 15. Первый и второй входы (уменьшаемого и вычитающего) вычитателя 471 подключены соответственно к выходам регистров 470 и 469. Первые входы первого и второго логических И группы элементов 2-2И-2ИЛИ 472 подключены к выходам регистров 470 и 469 соответственно, а вторые входы соединены вместе и подсоединены соответственно к выходу знакового разряда вычитателя 471 и выходу элемента НЕ 473. Вход элемента НЕ 473 подключен к выходу знакового разряда вычитателя 471. Вход установки в логическую "1" RS-триггера 474 подключен к входу 323, а вход установки в логический "0" - к входу 390. Информационный векторный вход демультиплексора 475 подключен к выходу абсолютного значения разности вычитателя 471, а управляющий вход - к выходу знакового разряда. Информационные входы регистров 476-478 подключены соответственно к первому, второму выходам демультиплексора 475 и выходу группы элементов 2-2И-2ИЛИ 472, тактовые входы всех указанных регистров подключены к входу 387, а входы установки в логический "0" - к входу 389. Первые входы сумматоров 479 и 480 подключены соответственно к выходам регистров 476 и 477, а вторые входы - к выходу триггера 485. Первый вход сумматора 481 подсоединен к выходу регистра 478, а второй - к выходу триггера 486. Информационные (D) входы регистров 482-484 подключены к выходам сумматоров 479-481 соответственно, их тактовые входы - соответственно к выходу триггера 487 и входу 36, а входы установки в логический "0" всех указанных регистров - к входу 15, D-входы триггеров 485-487 подсоединены соответственно к выходу триггера 474, выходу триггера 485 и входу 390. Тактовые входы (С) всех триггеров подсоединены к входу 26. Первый и второй входы элемента 2И-НЕ 488 подсоединены к выходу регистра 484 и входу 29 соответственно, первый и второй входы группы элементов И-НЕ 489 подключены к выходу группы элементов 2И-НЕ 488 и входу 29 соответственно. Информационный (D) вход регистра 490 подключен к выходу регистра 484, его тактовый вход - к входу 36, а входы установки в логическую "1" и "0" подключены соответственно к входам групп элементов 2И-НЕ 489 и 488. Первый выход 321 блока 10 подключен к выходу регистра 482, второй выход 322 - к выходу регистра 483, а третий 37 - к выходу регистра 490.

На фиг.24 представлена схема конвейерного вычислителя БПФ. Схема предназначена для нахождения ДПФ, размерность которого равняется два в степени N, где N - количество этапов БПФ. Схема состоит из N устройств 14, соединенных последовательно (элементы 491-494). Входами вычислителя являются информационные векторные 21-24 (первый - четвертый входы элемента 491), по которым поступают мантиссы комплексных соответственно нечетных и четных отсчетов сигнала, общий порядок отсчетов Р поступает с векторного входа 20 (пятый вход процессора 491). По входу 27 (шестой векторный вход процессора 491) поступает объявленный для первого этапа размер БПФ. По входу 28 (седьмой векторный вход процессора 491) поступает двоичная единица в соответствии с номером этапа БПФ. По входу 25 (восьмой вход процессора 491) устанавливается режим прямого (DR = log 0) или обратного преобразования Фурье. По входу 19 (девятый вход устройства 491) поступают синхроимпульсы S1IN, а по входу 17 (десятый вход устройства 491) устанавливается "1" - сигнал включения конвейерного режима работы устройства 14. По входу 18 (двенадцатый вход процессора 491) устанавливается логическая "1" - сигнал запрета изменения размера БПФ на данном этапе. По входу 30 (тринадцатый вход устройства 491) поступает сигнал начальной установки. По входу 26 (пятнадцатый вход устройства 491) поступают тактовые импульсы С1.

Выходами конвейерного вычислителя БПФ являются выход четных (38 и 40) и нечетных (39 и 41) комплексных спектральных отсчетов (мантиссы - первый-четвертый выходы процессора 494). Выход общего порядка 37 - это пятый выход устройства 494. Выход 36 - это выход синхронизации начала каждого выходного спектра (одиннадцатый выход устройства 494).

Первый - пятый векторные входы устройств 492-494 (второй - N-й) соединены соответственно с первым-пятым выходами предыдущих (первого - (N-1)-го) устройств 14. Девятый и десятый входы этих устройств соединены с десятым и одиннадцатым выходами предыдущих к ним устройств 14. Шестые входы всех остальных устройств 14, кроме последнего 494, подсоединены аналогично устройству 491. На шестой вход последнего, N-го устройства 14 подается двоичный код числа N. На седьмой вход всех устройств 14 подается двоичный код в соответствии с номером этапа БПФ. Восьмой, одиннадцатый, тринадцатый, четырнадцатый и пятнадцатый входы всех устройств 14 подключены к соответствующим входам устройства 491. На двенадцатый вход последнего устройства 14 (494), который обслуживает N-й этап БПФ, подается логическая "1". На двенадцатые входы всех остальных устройств 14 подается логический "0" или логическая "1" в зависимости от того, изменяется или не изменяется на данном этапе БПФ объявленная размерность БПФ.

На фиг.25 представлена схема подключения арифметического устройства 14 в режиме однопроцессорного вычислителя с последовательной обработкой сигнала. Входами процессора для комплексных отсчетов сигнала (мантиссы) являются входы 21 и 22 - это первый и второй входы устройства 14 (495). Вход порядка (общий) - это вход 20 (пятый вход устройства 495). По входу 27 (шестой вход устройства 495) устанавливается размер БПФ. На входе 28 (седьмой вход устройства 495) устанавливается логический "0". На входе 25 (восьмой вход устройства 495) устанавливается режим прямого (DR = log.0) или обратного БПФ. По входу 17 (девятый вход устройства 495) устанавливается внешней (S2IN = log.0) или внутренней (S2IN = log.1) режим синхронизации. На входах 29 и 18 (одиннадцатый и двенадцатый входы устройства 495) устанавливаются соответственно логический "0" и логическая "1". Входы 30, 15 и 26 (тринадцатый - пятнадцатый входы устройства 495) являются входами соответственно внешней синхронизации, начальной установки и тактовый. Выходами однопроцессорного вычислителя 495 БПФ являются выходы четных (31 и 32) и нечетных (33 и 34) комплексных спектральных отсчетов (мантиссы - шестой - девятый выходы устройства 495). Выход 37 общего порядка - это пятый выход устройства 495. Выход 389 - это выход синхронизации начала обработки сигнала (выдачи выходного спектра) - двенадцатый выход устройства 495.

На фиг.26 представлена схема подключения арифметического устройства 14 (496) в режиме однопроцессорного вычислителя с параллельной обработкой сигнала. Входами устройства 496 для комплексных отсчетов сигнала (мантиссы) являются входы 21 и 22 - первый и второй входы устройства 496. Вход порядка (общий) - это вход 20 (пятый вход устройства 496). По входу 27 (шестой вход устройства 496) устанавливается размер БПФ. На входе 28 (седьмой вход устройства 496) устанавливается логический "0". На входе 25 (восьмой вход устройства 496) устанавливается режим прямого (DR=log.0) или обратного БПФ. По входу 17 (десятый вход устройства 496) устанавливается S2IN = log.1). На входах 29, 18 и 30 (одиннадцатый-тринадцатый входы устройства 496) устанавливаются соответственно логический "0", логическая "1" и логическая "1". Входы 15, 26 и 16 (четырнадцатый, шестнадцатый - входы устройства 496) являются входами соответственно начальной установки и первый и второй тактовые. Выходами однопроцессорного вычислителя 496 БПФ являются выходы четных (31 и 32) и нечетных (33 и 34) комплексных спектральных отсчетов (мантиссы - шестой - девятый выходы устройства 496). Выход 37 общего порядка - это пятый выход устройства 496. Выход 389 - это выход признака окончания (начала следующей) обработки сигнала (выдачи выходного спектра) - двенадцатый выход устройства 496.

Алгоритм работы устройства можно обосновать следующим образом.

Пусть, например, требуется найти 2N-точечное ДПФ, т.е. вычислить по известной последовательности x(n), n = 0, 2N-1, спектр X(k), который выражается формулой
X(k) =x(n)e. (1)
Разбивают правую часть формулы (1) на две суммы
X(k) = x(n)e + x(n)e и получают во второй сумме n = n1 + N, тогда
X(k) = x(n)e + e-jπkx(n1+N)e =X1(k) + X2(k)e-jπk.

(2) X1(k) и X2(k) в (2) представляют собой 2N-точечные ДПФ последовательности из 2N членов, в которых последние N членов взяты равными нулю.

Пусть k = 2l, l = . Рассматривая теперь только четные члены X1(k) и X2(k), т.е. X1(l) и X2(l), обнаруживают, что
X1(l) = x(n)e и
X2(l) = x(n1+N)e (3) являются N-точечными ДПФ соответственно первой и второй половин исходной последовательности x(n).

Нечетные члены последовательностей X1(k) и X2(k) можно вычислить, например, методом интерполяции.

Следует заметить, что нахождение нечетных членов указанных выше последовательностей методом непосредственной интерполяции X1(l) и X2(l) сопряжено с большими погрешностями вследствие того, что не выполняются условия теоремы отсчетов Котельникова-Нейквиста.

Действительно, рассматривая обе половины x(n) как спектры последовательностей X1(l) и X2(l), можно отметить, что максимальная частота каждого такого спектра равняется N-1, что непосредственно следует из выражения (3). Согласно выводам указанной теоремы максимальная частота спектра из N отсчетов не может превышать величины N/2.

Для того, чтобы соблюдались условия теоремы Котельникова-Найквиста, необходимо вычислять ДПФ в симметричных пределах, т.е.

X1(l) =(n+N/2)e , n=-, (4) или, положив n = n1 - N/2, получают
X1(l) =x(n1)e = ejπlX1(l). (5)
После проведения интерполяции учитывая связь между k и l, можно написать
X1(k)= e X1(k),
X2(k) = e X2(k). (6)
Решая уравнения (6) относительно X1(k) и X2(k), получают
X1(k) = e X1(k);
X2(k) = e X2(k).

Теперь находят искомый спектр
X(k) = e X1(k)+ e X2(k). (7)
Умножив выражение (7) на e jπk , можно снова перейти к симметричной форме вычисления ДПФ, приспособленной для интерполяции:
X(k)=X(k) ejπk = e X1(k)+ e X2(k) . (8)
Полностью симметричная форма в выражении (4) получается, если сместить числовую ось еще на 0,5:
X(l) =X(n+N/2-0.5) e , (9) при этом последовательность X(l) имеет наименьшую (для ненулевых x(n) величину спектра (N/2 - 0,5) и наиболее приспособлена для нахождения промежуточных значений методом интерполяции. Значения спектра, рассчитанные по выражению (9) и отличающиеся по аргументу на N, равным по величине и противоположны по знаку, т.е. периодичность X(l) составляет 2N. Периодичность спектральных отсчетов, рассчитанных в соответствии с выражением (4) или (1), равна N.

Для того, чтобы увеличить точность нахождения интерполированных значений, а следовательно, и точность вычисления ДПФ, можно перейти к вычислениям при удвоенной частоте Котельникова-Найквиста ( ε = 2). В этом случае при вычислениях X1'(l) и X2'(l) необходимо определять ДПФ размера не N, а 2N, дополняя отсутствующие отсчетны нулями. При этом X'(k) имеет размерность 4N, k = , a l =
При вычислении X1'(l) и X2'(l) ( ε = 2) добавляют нули симметрично к началу и концу соответствующих половин исходной последовательности x(n). При этом для получения симметричной формы, удобной для интерполяции, пользуются выражением (9).

После проведения интерполяции составляют X1'(k)c и X2'(k)c. Для нахождения X'(k)с необходимо X1'(k)c и X2'(k)c преобразовать так, чтобы они соответствовали ДПФ со смещением отсчетов внутри интервала -2N + 2N на ±N/2 относительно центра. Для этого X1'(k) и X2'(k) необходимо умножить соответственно на e jπk/4 и e -jπk/4 . Складывая затем полученные частичные спектры, получают
X′(k)= e X(k)+ e X(k). (10)
Выражения (8) и (10) можно объединить, учитывая величину ε.

X(k)= e X1(k)+ e X2(k). (11)
Для нахождения нечетных значений спектров Xi(k)с по известным из Xi(l)c четным значениям полагают, что исходная последовательность x(n), расположенная симметрично относительно начала координат, совпадает с выборочными значениями периодической функции xp(t) в точках t = (-N/2 + n)T + 0,5T, где n = , Т - период дискретизации x(n). Интервал периодичности xp(t) равняется ε NT. Пусть также спектр функции xp(t) ограничен величиной 1/2T. В этом случае он состоит из ε N спектральных составляющих (гармоник), каждая из которых численно равна соответствующей дискретной спектральной составляющей X(l). Удвоить количество спектральных составляющих за счет нахождения промежуточных значений можно, увеличив в два раза интервал периодичности функции xp(t). Образуют новую периодическую функцию xp'(t) =xp(t)H(t), где H(t) - функция с интервалом периодичности 2 ε NT, спектром, ограниченным величиной 1/2Т, и значениями, равными единице в точках t = (-N/2 + n + 0,5)Т и нулю в точках t = (-N/2 ± εN + n + 0,5)Т для n = .

Представляют H(t) в виде суммы гармоник. Учитывая симметричность, можно написать
H(t) = 0.5 +Amcos(Π(2m-1)t/εNT) .

(12)
В выражении (12) имеются только нечетные гармоники с нулевой фазой.

Находят спектр xp'(t):
X′(ω) = xp(t)H(t)e-jωtdt. (13)
Представляют H(t) через обратное преобразование Фурье:
H(t) = + -+ + ejωtdω.

(14)
После подстановки выражения (14) в уравнение (13) получают
X′(ωt) = +- + +
+ X(n)t+ T-nTedtdω1. (15)
После вычислений в выражении (15) получают
X′(ωT) = X′(ωT)+XT- + XT- .

Как и ранее, полагают ωT = и получают выражение для расчета искомых спектральных составляющих:
X′(k) =AX′(k-2m+1)+X′(k+2m-1), k=. (16)
Из выражения (16) следует, что нечетные спектральные составляющие могут быть вычислены из четных путем суммирования взвешенных значений и, наоборот, четные составляющие можно аналогично вычислить через нечетные.

Из выражения (16) следует также, что для нахождения точных нечетных, т. е. промежуточных, значений спектра число взвешивающих множителей М необходимо взять равным N/2, а сами взвешивающие множители Аm - в соответствии с выражением (12). При этом функции H(t) отличается от прямоугольной, но в точках определения x(n) она все равно на интервале -N/2 - N/2 равна единице, а на интервале N/2 - 3N/2 - нулю и т.д.

При другом выборе М (M <Në2) вычисленные X'(k отличаются от истинных и появляются ошибки при нахождении промежуточных спектральных отсчетов.

Как уже указывалось, особый практический смысл обращения к выражению (16) для вычисления промежуточных спектральных отсчетов появляется при удвоенной частоте спектральных отсчетов (ε = 2), т.е., например, при нахождении промежуточных значений спектра X'(k), полученного при условии периодического продолжения x(n) с периодом 2N, когда вторая половина отсчетов взята нулевой. Не трудно показать, что и в этом случае (а также для любого целого ε выражение (16) оказывается справедливым.

Сопоставляя выражения (12) и (16), можно в случае полностью симметричной формы составить для расчета взвешивающих коэффициентов Am следующую систему из N/2 уравнений:
Amcos = 0.5, (17) где ε - превышение числа спектральных составляющих по сравнению с требованиям теоремы о частоте отсчетов;
m - индекс в каждом уравнении;
k - индекс при смене уравнений.

Уравнения (17) справедливы и для нечетных N, если при нахождении ДПФ сигнальные отсчеты расположены симметрично относительно начала координат (n = 0).

В начале преобразования число отсчетов сигнала (и равных им спектральных) нечетно и N = 1, при этом k = 1/2 и m = 1/2 (вырожденный случай). Из уравнения (17) следует, что Am = 0,5, т.е. промежуточный отсчет равен основному при любом ε. Это означает, что, если преобразование Фурье размерности единица по одному отсчету равняется ему же, то преобразование Фурье размерности два по одному отсчету равняется двум таким же спектральным отсчетам, ДПФ размерности четыре равняется четырем одинаковым спектральным отсчетам и т.д.

При нахождении промежуточных спектральных отсчетов в случае ДПФ размерности четыре по двум сигнальным отсчетам (N = 2, ε = 2), из уравнения (17) для расчета А1 имеют следующее уравнение:
A1cos = 0.5.

Решая его, получают A1 = 0,54119609... .

Для ДПФ размерности восемь по четырем сигнальным отсчетам имеют систему изз двух уравнений

Решая уравнения, получают А1=0,58149947..., а А2 = -0,08458052..

Для ДПФ размерности двенадцать по шести сигнальным отсчетам А1 = 0,59821015.., А2 = -0,1178052.., А3 = 0,019842506.. .

Для ДПФ размерности шестнадцать по восьми сигнальным отсчетам А1 = 0,6071933.., А2 = -0,13699313.., А3 = 0,03494331.., А4=-0,00516492.. .

Определение промежуточных спектральных отсчетов по выражению (16) приводит к точным результатам (в пределах точности представления чисел) только при согласованном (по N) их применении. Попытка применения вычисленных коэффициентов Am и выражения (16) для ДПФ других размерностей приводит к ошибкам. Уровень этих ошибок зависит от применяемого числа весовых коэффициентов М. При М = 3 уровень ошибок для N ≥ 2 сравнивают с погрешностями представления чисел десятью-одиннадцатью значащими двоичными разрядами, при М = 5 для N ≥ 4 уровень ошибок соответствует представлению чисел пятнадцатью двоичными разрядами, при М = 8 для N > 4 - 22 двоичными разрядами и т.д. Таким образом, требуемая точность определения промежуточных отсчетов всегда может быть обеспечена соответствующим выбором числа весовых коэффициентов М.

Некоторые сложности возникают при расчете промежуточных спектральных отсчетов на краях последовательности X'(k), k = 2l, l = , когда l < M-1 и l > N-M-1. В этих случаях для нахождения "недостающих" спектральных отсчетов можно воспользоваться периодичностью X'(l). Здесь следует отметить, что X'(l + N) = X'(l), если суммирование при расчете ДПФ (по выражению (1) или (4) происходит по целым индексам n, и X'(l + N) = X'(l), если суммирование происходит со смещением n на 0,5 (см. выражение (9)). В справедливости этого утверждения нетрудно убедиться при непосредственной подстановке l + N в указанные выражения.

Теперь конкретизируют алгоритм нахождения спектральных отсчетов, определенный выражением (11), для ε = 2. Периодичность выражения (11) по переменной k равняется восьми. При этом четные k определяют спектр по основным спектральным отсчетам, а нечетные - по рассчитанным промежуточным. Обозначают через V выходной спектр, причем применяют индекс ч для четных выходных спектральных составляющих и индекс н для нечетных, а индекс с для вещественных составляющих и индекс s для мнимых, т.е. Vч = Vсч + jV и Vн=Vсн + jV. Пусть также X1(k)c = U1c + jU1s и X2(k)c = U2c + jU2s. Рассчитывают согласно выражению (11) каждую из составляющих V и составляют табл.1-4 в зависимости от номера k.

Выражение (11) справедливо также и для обратного преобразования Фурье. Здесь при отрицательном k достаточно в приведенных выше таблицах поменять цифровые индексы между собой. Приводят табл.5-8 для нахождения спектральных составляющих при обратном ДПФ.

Сравнив между собой содержимое графы "сумма" в табл.1 и 2, можно выяснить, что любую комбинацию из четырех компонент можно получить, если разбить их на две пары, снабженные множителями P = и q = -1,1:
Vc = [U1c + U2c]p1q1 + [U2s - U1s]p2q2. (18)
Аналогично можно составить выражение для расчета
Vs = [U1s + U2s]p1q1 + [U1c - U2c]p2q2 (19)
Сравнивая между собой соотношения для расчета прямого и обратного ДПФ, можно выяснить, что они отличаются только порядком чередования m, что и отражено в приведенных таблицах.

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

Основу устройства составляют интерполяторы 6-9 и блок 11 когерентных сумматоров, обслуживание которых осуществляют блоки формирования приращения порядка чисел 10, управления 12, оперативной памяти 13 и мультиплексоры 1-5, включающие режим конвейерной или однопроцессорной обработки сигнальных отсчетов.

Работа каждого из интерполяторов происходит в соответствии с выражением (16). При этом число весовых коэффициентов Am выбирается в зависимости от этапа преобразования и требуемой точности вычисления промежуточных спектральных отсчетов.

Независимо от конкретной реализации интерполятор состоит из весового сумматора (элементы 61-74), узла 60 задержки и узла 59 синхронизации. На вход узла задержки поступает информационный сигнал по входу 76, а на вход узла синхронизации - синхросигнал по входу 42. Работа всего интерполятора тактируется тактовыми импульсами с входа 75. Узел задержки имеет отводы, число которых n = 2М определяется количеством весовых коэффициентов. В соответствии с выражением (16) в весовом сумматоре сначала складываются спектральные отсчеты, расположенные симметрично относительно рассчитываемого промежуточного (k) отсчета. В данном случае это отсчеты, поступающие на сумматор 63 с n/2-го и (n/2+1)-го отводов узла задержки, на сумматор 64 с (n/2-1)-го и (n/2+2)-го отводов и т.д. Умножение на весовые множители происходит в умножителях 67-69. При этом весовые коэффициенты M1, M2,..., Mn/2 равны соответственно A1, A2,...,Am. Результаты произведений суммируются в n/2-входовом сумматоре 73, который может быть реализован, например, на n/2-1 двухвходовых сумматорах. С целью повышения точности работы весового сумматора на высокой тактовой частоте сумматоры и умножители разделены между собой регистрами 64-66, 70-72 и 74. С учетом задержки вычислений промежуточных спектральных составляющих, которая происходит из-за установки указанных регистров, для съема основных спектральных отсчетов U0 (вывод 77) выбирается М-й отвод узла задержки.

Узел 59 синхронизации служит для синхронизации и управления потоками информации в узле задержки и имеет выходы 80-82. Назначение этих синхросигналов определено ниже.

На фиг.5 показана схема узла задержки для интерполятора с n/2 весовыми коэффициентами. Особенностью этого узла задержки является то, что он имеет два основных ряда регистров, образующих цифровые линии задержки, и один дополнительный. В каждом регистре число разрядов на единицу меньше разрядности всего вычислителя ("сэкономленный" разряд используется в последующих каскадах для предотвращения переполнения вычислителя). Такое построение вычислителя связано с необходимостью обеспечения непрерывной (конвейерной) обработки потока информации, состоящего из пар частичных спектров. Число этих пар зависит от размера преобразования и этапа БПФ. Так, на первом этапе БПФ число пар частичных спектров равно половине общего числа отсчетов сигнала, т.е. половине размера преобразования. На следующем этапе БПФ число частичных спектров уменьшается в два раза и т.д. Перед последним этапом БПФ остается два частичных спектра, из которых и получается искомое ДПФ.

Перед началом обработки каждой пары частичных спектров сначала заполняется верхний (на фиг. 5) ряд, состоящий из n-1 регистров (118,...,119, 121, ...,122), соединенных последовательно. Это происходит благодаря поступлению на вход 80 первого синхроимпульса Syn1 длительностью n-1 тактов и работе логического элемента 137, на другой вход которого поступают тактовые импульсы с входа 75. В n-й такт благодаря поступлению второго синхроимпульса Syn2 на вход 81 содержимое регистров из верхнего ряда переписывается в последние регистры (126,...,128, 130, 132,...,134 и 136) средней (основной) цифровой линии задержки, состоящей из n регистров. Указанное переключение осуществляется с помощью мультиплексоров 125, 127 и т.д. В первый регистр 124 основной линии задержки информационный сигнал 76 поступает через мультиплексор 123. В первый регистр 138 дополнительной линии задержки информационный сигнал поступает с выхода регистра 130. Размер этой линии задержки (элементы 138,...,139, 140) зависит от задержки (в тактах) информационного сигнала в весовом сумматоре.

При расчете первого промежуточного спектрального отсчета, как и всех остальных, весовому суммированию подвергаются n основных спектральных отсчетов, среди этих спектральных отсчетов первый и еще n/2 последующих. А где брать остальные n/2-1 недостающих отсчетов. При описании алгоритма интерполяции указывалось, что для нахождения этих отсчетов можно воспользоваться свойством периодичности спектра с учетом особенностей его получения. Так, в нашем случае, когда все частичные спектры получены при полностью симметричном расположении сигнальных отсчетов (по выражению (9)), недостающие Х(-1), Х(-2), Х(-3) и т.д. Равняются соответственно X(N), X(N-1), X(N-2) и т.д., взятых с обратными знаками, где N - количество основных спектральных в данном частичном спектре. Поэтому для обеспечения точности при расчете первого промежуточного отсчета необходимо обеспечить последовательное поступление на весовой сумматор для n = 4 X(N) (с обратным знаком), X(0), Х(1) и Х(2) спектральных отсчетов; для n = 6 X(N-1), X(N) (с обратными знаками) и Х(0), Х(1), Х(2), Х(3) спектральных отсчетов и т.д.

Первые из указанных отсчетов поступают благодаря действию синхроимпульса Syn2 с верхнего ряда регистров, а последний - с информационного входа 76ю При этом следует отметить, что инвертирование знака спектральных отсчетов X(N), X(N-1) и т.д. осуществляется в мультиплексорах 131,...,133 и 135 по входам А (они должны быть инверсными).

Спектральные отсчеты для вычисления второго промежуточного отсчета и последующих получаются путем передвижки информации по цепочке основной цифровой линии задержки (регистры 124, 126 и т.д. работают как многоразрядный последовательный сдвиговый регистр).

В конце обработки каждой пары частичных спектров (одновременно это подготовка к обработке следующей пары частичных спектров) за n-1 тактов включаются синхроимпульсы Syn1 и Syn3. Первый из этих синхроимпульсов вместе с тактовыми с входа 75 осуществляет замену в регистрах 118, 119 и т.д. спектральных отсчетов, обеспечивающих вычисление первого промежуточного спектрального отсчета при обработке текущей пары частичных спектров на такие же, но для следующей пары частичных спектров. Заменяемые спектральные отсчеты с выхода регистра 122 поступают через мультиплексор 123 на информационный вход регистра 124, а следовательно, и на вход основной цифровой линии задержки. Второй из указанных синхроимпульсов управляет элементом ИСКЛЮЧАЮЩЕЕ ИЛИ 120, который в данном случае инвертирует первые n/2 отсчетов обрабатываемой пары частичных спектров, необходимых для расчета последних n/2 промежуточных спектральных отсчетов. Длительность Syn3 равняется n/2 тактам.

Схема получения синхроимпульсов приведена на фиг.6. Как следует из приведенной схемы, сигнал синхронизации по входу 42, поступающий за n тактов до начала обработки очередной пары частичных спектров, подается на вход последовательного регистра 146-141 сдвига и с каждым тактовым импульсом с входа 75 продвигается по нему. Синхроимпульс Syn1, длительность которого равняется n-1, получается на выходе элемента ИЛИ 147 после дезъюнкции сигналов, поступающих с выхода первых n-1 D-триггеров 146-146. Аналогично получается на выходе элемента ИЛИ 148 сигнал Syn3, на входы которого поступают выходные сигналы первых n/2 D-триггеров последовательного регистра сдвига. Синхросигнал Syn2 - это просто задержанный на n тактов сигнал синхронизации на входе 42.

На фиг.5б изображены указанные синхроимпульсы для случая, когда N = 16, a n = 6. Из приведенных графиков следует, что Syn1 обеспечивает пропускание пяти тактовых импульсов (15, 16, 1, 2 и 3), Syn2 - одного (четвертого) тактового импульса и Syn3 - трех тактовых импульсов (15, 16 и 1).

При описании алгоритма работы интерполяционного вычислителя ДПФ показано, что для обеспечения высокой точности преобразования необходимо от одного этапа преобразования к другому изменять количество и значения интерполяционных весовых коэффициентов. Так, для обеспечения точности преобразования, соответствующей 12-разрядному вычислителю, необходимо осуществить три перемены весовых коэффициентов, а для 16- и 24-разрядных вычислителей - четыре перемены.

Схема интерполятора, в котором предусмотрено три набора весовых коэффициентов - для нахождения промежуточных спектральных отсчетов на первом этапе преобразования, на втором и последующих, представлена на фиг.7. На приведенной схеме видно, что работа интерполятора обеспечивается взаимодействием трех схем. Первая схема узла 149 в отличие от узла 59 обеспечивает синхронизацию и управление узла 150 задержки для трех наборов весовых коэффициентов. Вследствие этого на нее подаются управляющие сигналы по входу 43, состоящие из трех отдельных сигналов, которые инициируются в соответствии с этапом преобразования. Эти сигналы служат и для переключений в весовом сумматоре 151.

Схема узла 149 синхронизации приведена на фиг.8а. Эта схема рассчитана на формирование сигналов синхронизации для наборов весовых коэффициентов, соответствующих n = 1, n = 2 и n = 6. В первом (11 =1, 2 = 0, 13 = 0) в случае весовой коэффициент один и равняется 0,5 х 0,707106,..., т.е. он, по существу, учитывает только величину фазового множителя при определении нечетных выходных спектральных составляющих по выражению (14). Во втором (11 = 0, 12 = 1, 13 = 1) весовой коэффициент также единственный и с учетом множителя 0,707 равняется 0,54129... *0,707... В третьем случае (11 = 0, 12 = 0, 13 = 1), который применяется для третьего и последующих этапов преобразования, весовых коэффициентов три: А1 = 0,707... *0,5982,,,. А2 = -0,707... *0,1178..., А3 = 0,707... *0,01984.

Управление работой узла 150 происходит с помощью наборов из трех тактовых импульсов (С1, С2 и С3) и шести управляющих сигналов (Е1, Е21, Е22, Е23, Е3 и Е4). В первом случае (фиг.8б) Е1, Е23 и Е3 соответствуют логической "1" (равны единице), а Е21, Е22 и Е4 - логическому "0". Все тактовые импульсы соответствуют входным тактовым импульсам, а входные синхроимпульсы Syn представляют собой меандр с частотой, вдвое меньшей тактовой. Проследим за логикой работы схемы на фиг.8. Отметим, что действительно Е1 = 1, так как на одном из входов элемента ИЛИ 165 находится логическая "1" (11 = 1), Е23 = 1, так как на одном из входов элемента ИЛИ 174 логическая "1", Е3 = 1, так как на обоих входах элемента И 167 логические "1", на входе элемента НЕ 161 логический "0" (12 = 0), а на одном из входов элемента ИЛИ 160 при работе всегда присутствует хоть одна логическая "1", так как они подключены к выходам последовательного регистра 153-156 сдвига, на вход которого подключен Syn. Е21 = 0, так как на входе элемента И 172 логический "0" (13 = 0). Е22 = 0, так как на обоих входах элемента ИЛИ 173 логические "0" вследствие того, что на входах элементов И 158 и 169 логические "0" (12 = 0, 13 = 0). Е4 = 0, так как на входе элемента И 168 - логический "0" (на входе элемента НЕ 164 логическая "1" - 11 = 0). С2 и С3 повторяют тактовые импульсы с входа 75, так как на входах элементов И 175 и 176 логические "1" (выходы элемента ИЛИ 160 и 171 (Е3 = 1) - логические "1").

Во втором случае (фиг.8в) входные синхроимпульсы Syn представляют собой импульсы, длительность которых равна периоду тактовых импульсов, а скважность - четырем. Е22 - это синхроимпульсы Syn, задержанные на три такта. Е23 - это инверсные Е22. Е1 - это Syn, задержанные на четыре такта. Тактовые импульсы С2 совпадают с входными 75, а С3 - только в моменты, когда Е22 = 1. Е4 равно логической "1", а Е21 и Е3 - логическому "0". Рассмотрим логику работы узла 149. Сигнал синхронизации Syn проходит последовательно через регистр 152-156, при этом на выходе триггера 155 задержка составляет три такта. Синхросигнал с выхода триггера 155 поступает через открытые для прохождения импульсов элементы И 169 и 173 и является выходом 179 (Е22). Этот же сигнал через открытый для передачи элемент ИЛИ 171 управляет открыванием элемента И 176 и вместе с импульсами с входа 75 образует выходной сигнал С3. Сигнал с выхода триггера 155, пройдя через открытые элементы И 170 и ИЛИ 174 и элемент НЕ 166, образует выходной сигнал Е23. Сигнал синхронизации с выхода триггера 154 (задержка четыре такта), пройдя через открытые для прохождения элементы И 159 и ИЛИ 165, образует выходной сигнал Е1. Е4 = 1, так как на входах элемента И 168 логические "1" (на входе элемента НЕ 164 логический "0", а на одном из входов элемента ИЛИ 162 логическая "1" - 12 = 1). Е21 = 0, так как 13 = 0, а Е3 = 0, так как на входе элемента И 167 логический "0" (12 = 1).

В третьем случае (фиг.8г) сигналы Е1 и Е22 соответствуют синхросигналу Syn2 из графика на фиг.5а, сигнал Е21 инверсен им, Е4 соответствует Syn3, а сигнал Е3 - Syn2. Тактовые сигналы С2 и С3 - это тактовые импульсы на входе 75 в моменты, когда Е3 = 1. Е23 равно логическому "0". Рассмотрим логику работы узла 149 для Е3 = 1. Выходные сигналы Е1 (выход 177) и Е22 (выход 179) имеют задержку относительно входных синхросигналов на входе 42 шесть тактов, так как образуются из выходного сигнала триггера 152 (задержка шесть тактов) путем прохождения его через открытые элементы И 158 и соответственно ИЛИ 165 и 173. Аналогично получается сигнал Е21 (выход 178), но он инвертирован благодаря элементу НЕ 157. Выходной сигнал Е4 (выход 182) получается благодаря работе четырехвходового элемента ИЛИ, который открыт для работы сигналом 12 = 0 и образует логическую "1" на своем выходе, пока на одном из выходов существует логическая "1" (156, 163 или 155 - первые три такта после поступления синхроимпульса по входу 42). Аналогично, но благодаря работе пятивходового элемента ИЛИ 160 получается выходной сигнал Е3 (выход 181) длительностью пять тактов. Выходной сигнал элемента ИЛИ 160 управляет работой элементов И 175 и 176, на выходе которых получаются выходные тактовые импульсы С2 (выход 183) и С3 (выход 184). Выходной сигнал Е23 (выход 180) равен логическому "0", так как на обоих входах элемента ИЛИ 174 логические "0" (11 = 0 и 12 = 0).

Рассмотрим работу узла 150 задержки во всех трех режимах (случаях). Узел 150 является конкретным воплощением узла 60 для работы в трех описанных выше режимах.

В первом режиме (на первом этапе ДПФ) активными (изменяющимися во времени)/ как показано выше (см. фиг 8б)/ являются только сигналы тактовых импульсов С (вход 75)/ С2 (выход 183) и С3 (выход 184). Управляющие сигналы по выходам 177/ 181 и 180 (логические "1") и 178/ 179 и 182 (логические "0") поданы таким образом/ чтобы обеспечить прохождение информационного сигнала с входа 76 по общему пути через регистра 185/ 186 и 187/ а затем идет разветвление: первый путь через элементы ИСКЛЮЧАЮЩЕЕ ИЛИ 188/ 2И-3ИЛИ-НЕ 195 и триггер 196/ а второй через мультиплексор 197 и триггер 198. В результате на выходах 210 и 211 информационный сигнал появляется одновременно и с задержкой четыре такта. Оба выходных сигнала имеют одинаковую полярность/ так как первый из них инвертируется дважды (в элементах ИСКЛЮЧАЮЩЕЕ ИЛИ 188/ 2И-3ИЛИ-НЕ 195)/ а второй не инвертируется. На выходах 208/ 209/ 212 и 213 тоже появляются информационные сигналы/ но их использование в вычислении промежуточных значений в этом режиме не предусмотрено логикой работы вычислителя ДПФ и исключается схемой весового сумматора.

Дополнительная линия задержки из триггеров 203 - 207 содержит пять регистров/ соединенных последовательно/ и подключена входом к выходу триггера 198. Величина временной задержки этой линии (пять тактов) согласована с задержкой информационного сигнала в весовом сумматоре 151.

Во втором режиме (на втором этапе ДПФ) активными управляющими сигналами (см. фиг. 8в) являются кроме тактовых с входа 75 и выходов 183 и 184/ а также с выходов 177/ 179 и 180. Статические управляющие сигналы с выходов 182 (логическая "1") и 178/ 181 (логический "0") подобраны так/ чтобы обеспечить требуемую комбинацию информационных сигналов на выходах 210 и 211/ соединенных с весовым сумматором 151.

Рассмотрим пути прохождения информационного сигнала во втором режиме. В первые два такта работы сигналов с входа 75 и выхода 183 по окончании каждого синхроимнульса с входа 42 и во время действия логической "1" на выходе 180 первый и второй (из четырех) спектральные отсчеты последовательно поступают на выходы регистров 186 и 185. В третий такт (Е22 = 1, Е23 = 0, действует тактовый сигнал С3 на выходе 184) первый-третий спектральные отсчеты располагаются в регистрах 187-185, на выходах 210 и 211, как и прежде неопределенность. В четвертый такт (после этого такта включается в работу весовой сумматор) благодаря логической "1" на выходе 177 первый спектральный отсчет переписывается в регистр 198, а на выходе триггера 196 - второй спектральный отсчет. Все готово для вычисления первого промежуточного отсчета. В пятый такт на выходах 210 и 211 появляются второй и третий спектральный отсчеты, а в шестой - третий и четвертый. В седьмой такт (это третий такт обработки следующей четверки спектральных отсчетов: Е22 = 1, Е23 = 0, действует тактовый сигнал С3 на выходе 184) на выходе регистра 198 появляется четвертый спектральный отсчет, а на выходе регистра 196 благодаря переключению мультиплексора 195 и работе элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 188 - инвертированный первый отсчет, который все предыдущие такты хранился в регистре 187. Такая комбинация информационных сигналов обеспечивает расчет последнего в данном частичном спектре промежуточного спектрального отсчета. Одновременно в этот такт в регистр 187 запоминается первый отсчет следующего частичного спектра и т.д. Информация, появляющаяся на выходах 208, 209, 212 и 213, как и на первом этапе ДПФ, весовым сумматором 151 не воспринимается.

В третье режиме при расчете промежуточных спектральных отсчетов на третьем и последующих этапах ДПФ все тактовые и управляющие сигналы активны. Рассмотрим работу узла задержки в третьем режиме. В первые пять тактов по окончании синхроимпульса с входа 42 работает средняя (фиг.9) цифровая линия задержки и на выходах регистров 190, 187-185 появляются, соответственно N-1, N, 1, 2 и 3-й спектральные отсчеты. На фиг.8г изображены диаграммы управляющих и тактовых сигналов в соответствии с третьим этапом ДПФ. В соответствии с третьим этапом на указанных выходах после пятого такта появляются 7, 8, 1, 2 и 3-й спектральные отсчеты. При этом благодаря подбору регистров с инверсными выходами (186, 189 и 190), а также управляющему сигналу с выхода 182 (логический "0" на двух последних тактах) эти спектральные отсчеты оказываются инвертированными на выходе регистров 186 и 189.

В шестой такт с помощью сигналов с выходов 181, 177 и 180 регистры нижней (по фиг. 9) линии задержки подключаются к соответствующим регистрам средней линии задержки. После шестого такта на выходах 208-213 появляются соответственно 4, 3, 2, 1, 8 и 7-й спектральные отсчеты (для третьего этапа ДПФ) и 4, 3, 2, 1, N и N-1-й спектральные отсчеты (для остальных этапов ДПФ). Благодаря выбору мультиплексоров с инверсными выходами (193, 195, 199 и 201) инвертированными оказываются отсчеты на выходах 209 и 213. Выше уже указывалось, что требуемые для нахождения первых спектральных отсчетов последние (N, N-1 или 7 и 8-й для третьего этапа) отсчеты должны быть инвертированы. Так и сделано, за исключением пары 3-й - N-й, которая еще раз инвертирована, так как весовой коэффициент для этой пары отрицателен.

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

Период окончания обработки текущего частичного спектра характерен тем, что выход регистра 190 управляющим сигналом с выхода 181 подключается к входу регистра 192, т.е. к входу нижней (основной) линии задержки. При этом используются для работы весового сумматора спектральные отсчеты, запомненные в средней линии задержки. Выше указывалось, что используемые для расчета последних промежуточных отсчетов первые (в данном случае три) спектральные отсчеты должны быть инвертированы, что и делается с помощью управляющего сигнала с выхода 182, переключающего элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 188 на три такта в режим инвертирования. Подготовительный период работы уже описан.

Схема весового сумматора, предназначенного для работы с тремя наборами весовых коэффициентов, представлена на фиг.12. Весовые коэффициенты благодаря применению инверторов в схеме цифрового узла 150 задержки все положительные и в двоичном представлении равны А1 = =01011010100...; А2 = 01100010000. . . ; А31 = = 01101100010...; А32 = 00010101010...; А33 = = 00000011100..., где вес первой значащей цифры 0,5, второй 0,25 и т.д.

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

Как следует из фиг.12, весовой сумматор состоит из масштабирующих множителей 226, 227 и 230 и т.д., в которых множители указаны в дополнительном коде, и собственно сумматоров 234, 235 и т.д., объединенных с регистрами так, как описано на фиг.13 и 14. Регистры использованы с возможностью очистки (обнуления), если R равно логическому "1", или только с возможностью смены информации при подаче тактового импульса по входу С. Кроме того, используются комбинации из масштабирующих множителей и регистров 238, 239 и т. д. , собранных по схеме, изображенной на фиг.15, в которых масштабирующие множители 272 включены перед информационным входом регистра 273. Использованы в весовом сумматоре также элементы И, ИЛИ и НЕ. Общая задержка информации в весовом сумматоре по любому пути пять тактов.

Проследим как реализованы весовые коэффициенты во всех трех режимах использования сумматора.

Режим 1 (11 = 1, 12 = 0, 13 = 0). Обнулены выходы сумматоров 235, 236, 244 и регистров 238 и 240. Умножению на весовой множитель 01011010100 подвергается только сумма на выходе сумматора 234 сигналов, поступающих на входы 210 и 211. Это достигается следующим образом. Сначала на элементах 226, 227, 237, 239, 247 и 250 указанная сумма умножается на 0101 (здесь множитель представлен в дополнительном коде). Потом результата с выхода сумматора 250 на элементах 251, 252 и 255 умножается еще на 1001 (в прямом коде первая значащая цифра 1,0). Общий множитель теперь равен 0101101 (дополнительный код). Коррекция этого множителя на 000000001 происходит по пути: выход сумматора 234 - элементы 241, 248, 253, 256 и 257. Окончательная корректировка (масштабирование) весового множителя в блоке 258 приводит его к требуемому значению 001011010100 (в дополнительном коде).

Режим 2 (11 = 0, 12 = 1, 13 = 0). Обнулены выходы сумматоров 235, 236, 244, регистров 239, 241 и элемента И 252. Умножению на весовой множитель 01100010000 подвергается только сумма на выходе сумматора 234. Сначала на элементах 226, 227, 237, 238, 247, 250 и 255 указанная сумма умножается на 011 (в прямом коде), затем происходит коррекция этого множителя на 0000001 в сумматоре 257 частью информационного сигнала, проходящего по пути: выход сумматора 234 - элементы 240, 248, 253 и 256. В блоке 258 масштабирования происходит окончательная коррекция весового коэффициента до требуемого значения.

Режим 3 (11 = 0, 12 = 0, 13 = 1). Обнулены выходы регистров 239 и 240. Используются три весовых множителя. Умножению на весовой множитель 01101100010 подвергается сумма сигналов с информационных входов 210 и 211. Так же, как и во втором режиме, сначала указанная сумма умножается на 011, затем она на элементах 251, 252 и 255 (как и в первом режиме) умножается на 1001. Общий множитель оказывается равным 011011. Коррекция этого множителя на 0000000001 происходит в сумматоре 257 по пути: выход сумматора 234 - элементы 242, 244, 253 и 256.

Умножению на весовой множитель 00010101010 подвергается сумма сигналов с информационных выходов 209 и 212. Сначала эта сумма с помощью элементов 232, 233, 236 и 246 умножается на 00010001, а затем в блоке 249 и сумматоре 254 еще на 101 (в прямом коде первая значащая цифра 1,0). В результате получается требуемое значение весового коэффициента.

Умножению на весовой множитель 00000011100 (или 00000100-100 для упрощения операции умножения) подвергается сумма информационных сигналов с выходов 208 и 213. При этом элементы 230, 231, 235, 245 и 248 обеспечивают коэффициент передачи 000001, а элементы 230, 231, 235, 243 и 244 - коэффициент передачи 100000001 (отрицательный).

Выходной сигнал (промежуточный спектральный отсчет, увеличенный в 1,4142. . . ) получается на выходе 78 после суммирования частичных сумм в сумматорах 253, 256 и 257, а также масштабирования в блоке 258.

Полученные в результате интерполяции задержанные основные спектральные отсчеты и вычисленные промежуточные поступают для дальнейшей обработки в блок 11 когерентных сумматоров, который содержит четыре (по числу квадратурных составляющих) когерентных сумматора 55s-58s, а также узел 53 задержки синхросигналов и элемент 2И 54.

Подключение когерентных сумматоров 55s-58s к выходам интерполяторов 6-9 происходит в соответствии с алгоритмом, приведенным в табл.1, 3, 2 и 4 (5, 7, 6 и 8) соответственно и оформленным в виде выражений (18) и (19). При этом порядок подключения соответствующих выходов интерполяторов берется из первой и второй строчек таблиц для четных (основных) отсчетов (табл.1, 3 или 5, 7) и из первой строчки таблиц для нечетных (промежуточных) отсчетов (табл.2, 4 или 6, 8) или согласно выражениям (18) и (19). Выбор необходимых по алгоритму знаков слагаемых, а также их множителей (единица или ноль), т. е. коэффициентов р и g, обеспечивается работой когерентных сумматоров 55s-58s в соответствии с их функциональным назначением (суммирование четных или нечетных, действительных или мнимых частей спектральных составляющих, осуществление прямого или обратного преобразования Фурье) и осуществляется установкой по входам Uo/n и DR соответствующих логических сигналов, а по входам Syn и С синхронизирующих и тактовых импульсов. Узел 53 задержки служит для формирования импульсов синхронизации, задержка которых осуществляется на время обработки информационных сигналов в интерполяторах 6-9. С помощью логического элемента 2И 54 в однопроцессорном вычислителе БПФ осуществляется выключение (сигналом CS = log.0) обработки спектральных отсчетов на время операций по записи исходной информации - считыванию готовых спектральных отсчетов.

Проанализируем работу когерентных сумматоров 55s-58s, схема которых приведена на фиг.5.

Когерентный сумматор предназначен для сложения по определенной программе четырех чисел с весами 1, -1 и 0. С этой целью в каждой информационной ветви 110-113 до D-входов регистров 92-95 памяти установлены соответственно элементы 2И 83-86, служащие для умножения на 0, и ИСКЛЮЧАЮЩЕЕ ИЛИ 88-91 - для умножения на 1 или -1. Затем сигналы с выходов регистров 92-95 суммируются за два такта сначала в сумматорах 96, 97, а потом в сумматоре 100. Сложение в когерентном сумматоре происходит всего за три такта по числу рядов регистров 92-95, 98, 99 и 101 памяти.

В зависимости от комбинации управляющих логических сигналов на входах 25 и 114 возможна работа когерентного сумматора по программам суммирования основных или промежуточных спектральных отсчетов (логический сигнал Uo/n на входе 114 равняется логической "1" или "0"), а также для осуществления прямого (сигнал DR на входе 25 равен логическому "0") или обратного (сигнал на входе 25 равен логической "1") БПФ.

Работа когерентного сумматора определяется положениями двухразрядного реверсивного двоичного счетчика 105. Прямое ДПФ осуществляется при работе счетчика в прямом направлении счета, начиная c m = 1 до m = 4 (двоичный код на выходе счетчика изменяется так: 00, 01, 10, 11 - старший разряд впереди). При этом каждый синхроимпульс с входа 115 устанавливает счетчик в положение 00 (DR = 0 и работает элемент 2И 104). Обратное ДПФ осуществляется при установке DR (вход 25) в логическую "1". В этом случае при суммировании основных отсчетов (на входе 114 логический "0") счетчик 105 по-прежнему устанавливается синхроимпульсом с входа 115 в положение 00 (m = 1). Счет по m (см. табл.5 и 7 для четных выходных спектральных отсчетов) ведется так: m = 1, 4, 3, 2 (положения счетчика 00, 11, 10 и 01). При суммировании промежуточных отсчетов согласно табл.6 и 8 счет по m должен быть иным: m = 4, 3, 2, 1 (положения счетчика 11, 10, 01 и 00). Это достигается установкой счетчика 105 в положение 11 (синхроимпульс проходит через элемент 3И 103). Для того, чтобы суммирование происходило в соответствии с алгоритмами, раскрытыми в табл.1-8, необходимо подключить к входам 110-113 сумматора сигналы с выхода интерполяторов в том порядке, как они записаны в выражениях (18) и (19), т. е. для действительных отсчетов Uс1 к входу 110, Uc2 к входу 111 и т. д. , а для мнимых отсчетов Us1 к входу 110, Us2 к входу 111, Uc1 к входу 112 и Uс2 к входу 113.

При этом сигнал р1, управляющий выключением первой пары сигналов, образуется на выходе схемы 108, а управляющий сигнал р2 - на выходе элемента 2И 109. Оба управляющих сигнала берутся с первого выхода счетчика (младший разряд). Изменение знака информационных сигналов осуществляется с помощью элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 88-91. Управляющие сигналы на них берутся с выхода элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 106 (сигнал q1) и второго выхода счетчика 105 (старший разряд - сигнал q2). Требуемое по алгоритму суммирования вычитание сигналов по входам 112 и 113 достигается инверсией - управлением q2 с помощью элемента НЕ 87. При суммировании промежуточных отсчетов выключать информационные сигналы не требуется, поэтому с помощью сигнала с входа 114 и элементов 2ИЛИ 108 и 109 управляющие сигналы р отключаются от элементов 2И 83-86.

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

Подключение когерентных сумматоров к интерполяторам в схеме вычислителя ДПФ показано на фиг.2. Из приведенной схемы следует, что когерентные сумматоры 55s и 57s подсоединены к интерполяторам 6-9 (выходы 45-52) по алгоритму согласно выражению (18), а сумматоры 56s и 58s - согласно выражению (19). Действительно согласно выражению (18) и схеме на фиг.2 входы U1-U4 подключены соответственно к выходам основных отсчетов 45, 47, 49 и 51 (сумматоры 55s и 56s) или промежуточных 46, 48, 50 52 (для сумматоров 57s и 58s).

Когерентные сумматоры 55s и 56s обрабатывают основные спектральные отсчеты и образуют четные действительные и мнимые составляющие выходных спектральных отсчетов на выходах 55 и 56, поэтому на управляющий вход 114 подан логический "0". Когерентные сумматоры 57s и 58s обрабатывают промежуточные спектральные отсчеты и образуют нечетные действительные и мнимые составляющие выходных спектральных отсчетов на выходах 57 и 58, поэтому на управляющий вход 114 подана логическая "1".

Вход 25 (прямое или обратное ДПФ) остается открытым для управления. Вход 115 синхронизации подключен к выходу узла 53 задержки, задержка в котором сигналом с входа 43 переключается синхронно с изменением времени запаздывания информации в интерполяторах, зависящего от этапа БПФ.

На фиг.10 показана схема узла 60 задержки, предназначенного для задержки сигнала синхронизации в случае какого-либо определенного этапа БПФ и имеющего величину задержки m тактов, т.е. ровно столько, сколько задерживается информация от входа узла 60 до выхода регистра 140 (фиг.5). Схема на фиг. 10 состоит из m последовательно соединенных D-триггеров, управляемых синхронно тактовыми импульсами по входу 75.

На фиг.11 показана схема узла 53 синхросигнала, в которую введен мультиплексор 222, с помощью которого на первом и втором этапах БПФ задержка синхроимпульса с входа 115 уменьшается на два такта благодаря обходу триггеров 220 и 221. Максимальная задержка синхроимпульсов в блоке 53 задержки равняется одиннадцати тактам.

Тактовые импульсы по входу 75 поступают на входы когерентных сумматоров и интерполяторов после элемента 2И 54 при условии наличия логической "1" по входу 44 (сигнал CS).

Работа вычислителя БПФ, который обеспечивает преобразование на каком-либо одном этапе, рассмотрена для того, чтобы обеспечить ДПФ в целом, необходимо соответствующим образом соединить между собой требуемое количество процессоров БПФ - арифметических устройств 14 (вычислитель БПФ конвейерного типа) или организовать работу арифметического устройства 14 последовательно во времени и на других этапах БПФ (однопроцессорный вычислитель БПФ). В обоих случаях требуются перегруппировка полученных на предыдущем этапе частичных спектров и определенным образом организация их обработки на следующем этапе. Здесь требуется подключение блока 13 оперативной памяти. В связи с этим рассмотрим алгоритм его работы (фиг.16).

Основу блока составляют четыре ОЗУ 290, 291, 293 и 294. Каждое из них предназначено для хранения информации о комплексных спектральных отсчетах и имеет по два входа и выхода для записи и считывания действительных (D1c и D0c) и мнимых (D1s и D0s) составляющих. Кроме того, имеются адресные входы (Adr), из которых выделен какой-нибудь один, но одинаковый для всех ОЗУ, например нулевой разряд Ad0. Имеется также вход управления записью-считыванием (W/R) и управления третьим состоянием выходов (CS), который в данном случае может быть отключен (соединен с корпусом), так как входы и выходы используются раздельно.

Первая пара ОЗУ 290 и 291 и вторая 293 и 294 используются по очереди. Сначала при обработке первой порции частичных спектров одна пара используется на запись информации, а другая - на считывание, а затем при обработке следующей порции частичных спектров, наоборот, первая пара работает в режиме считывания информации, а вторая - записи и т.д. Поэтому управление режимами записи и считывания одной пары ОЗУ относительно другой происходит через элемент НЕ 295.

Выделенный разряд Ad0 делит адресное пространство каждого ОЗУ на две половины. При этом управление этим разрядом организовано так, что если при записи информации используются какие-то одни половины ОЗУ, например одинаковые, то при считывании информации снимается с разных половин этих ОЗУ. Указанное достигается путем управления по разрядам Ad0 в каждой паре ОЗУ разными сигналами, снимаемыми с проводников первого и соответственно второго адресных шин 319 и 320. Формирование сигналов управления по разрядам Ad0 производится в схеме мультиплексора 385.

Поясним указанные особенности управления ОЗУ. В процессе работы вычислителя БПФ готовые спектральные отсчеты Vco, Vso, Vcn и Vsn после очередного этапа БПФ поступают на входы 55, 56, 57 и 58 соответственно, а затем через мультиплексоры 282-289 на входы ОЗУ. В зависимости от этапа БПФ число частичных спектров различно и на промежуточных этапах всегда четно. Так, если, например, производится 1024 точечных ДПФ, то после первого этапа БПФ будет 512 частичных спектров, после второго - 256 и т.д. На каждом следующем этапе необходимо объединить все нечетные и четные частичные спектры и подать их одновременно соответственно на первый и второй входы вычислителя ДПФ. Если не производить во время записи информации управления мультиплексорами, то все четные спектральные отсчеты оказываются записанными, например, в ОЗУ 290, а нечетные - в ОЗУ 291. Если по окончании обработки на данном этапе БПФ начать обработку на следующем этапе, то придется считывать четные и нечетные частичные спектры с одного и того же ОЗУ, т.е. не одновременно. Чтобы обеспечить одновременное считывание четных и нечетных частичных спектров, необходимо при записи менять их местами по окончании обработки очередного частичного спектра, что и делается сигналом Eon с выхода 318 с помощью мультиплексоров 282, 284, 286 и 288. Одновременно разрядом AdO, который с учетом временной задержки сигнала управления с выхода 318 тождественен ему, четные и нечетные частичные спектры разделяются по области занимаемой памяти: четные частичные спектры в одну половину, а нечетные в другую. При считывании с ОЗУ 290 и 291 четные и нечетные спектры, как указано выше, должны считываться одновременно, поэтому значения разряда AdO при считывании должны быть противоположными, если при записи они были одинаковыми и наоборот.

Вследствие того, что при записи четные спектральные отсчеты в каждом частичном спектре записывались в одно ОЗУ, например в 290, а нечетные - в другое 291, при считывании с каждым тактом необходимо менять ОЗУ: сначала 290, потом 291, потом опять 290 и т.д. Указанное переключение осуществляется с помощью мультиплексоров 298, 299, 302 и 303 и управляющего сигнала Е12 с выхода 316.

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

Проверка увеличения исходной разрядности чисел происходит в элементах ИСКЛЮЧАЮЩЕЕ ИЛИ 278-281, на которые подаются старшие разряды чисел с входов 55-58. Если на выходе этих элементов выходной сигнал соответствует логическому "0" (старшие разряды одинаковые), изменение разрядности чисел не произошло, и поэтому при последующем считывании этих частичных спектров для обработки на следующем этапе БПФ следует старший разряд не учитывать. Если на выходе какого-либо из элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 278-281 хоть в одном спектральном отсчете обнаруживается логическая "1", то необходимо увеличить на единицу порядок представления всех этих чисел и произвести сдвиг на один разряд всех чисел в данной порции частичных спектров. Эта операция осуществляется в сдвигателях 304-307 управляющими сигналами с входов 321 и 322. Сдвигатели разрядов рассчитаны на больший, чем один разряд сдвиг и могут быть, например, собраны по схемам, аналогичным 541ИР21. Больший сдвиг может потребоваться, если отдельные порции частичных спектров являются только частью всего обрабатываемого массива (соответствующего размеру выходного БПФ) и их порядки отличаются. Разделение всего обрабатываемого массива на порции может оказаться выгодным в смысле экономии размера используемой памяти, так как минимальный размер памяти на каждом этапе БПФ, если этот этап не заключительный, равняется удвоенному размеру БПФ на данном этапе. Так, после первого этапа БПФ каждая из четырех схем памяти может состоять всего из четырех ячеек памяти (соответствующей разрядности) вне зависимости от требуемого размера БПФ, на втором - из восьми и т.д.

Выходным сигналом превышения разрядной сетки является сигнал с выхода 323, который получается после логического сложения в элементе 4ИЛИ 297 выходных сигналов элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 278-281. Блок 13 оперативной памяти имеет два выхода информационных сигналов. Сигналы с выходов 39, 41, поступающие со сдвигателей 304-307 разрядов через регистры 308, 310, 313 и 315, используются для осуществления обработки на следующих этапах БПФ или в качестве выходных для БПФ конвейерного типа. Сигналы с выходов 31-34 используются в качестве выходных в однопроцессорном вычислителе БПФ. Управление теми или иными выходными сигналами осуществляется сигналом (CS) с входа 44 с помощью элементов НЕ 296, 2И 300 и 301, а также D-триггера 292, осуществляющего задержку управления на один такт.

В однопроцессорном вычислителе БПФ процесс вычисления начинается с записи в ОЗУ всего массива данных. Эта операция осуществляется по сигналу с входа 44 и с помощью мультиплексоров 283, 285, 287 и 289. Запись исходной информации ведется с входов 21 и 22 параллельно на каждое ОЗУ в соответствующей паре. Это связано с тем, что сигнальные отсчеты рассматриваются как БПФ размера единица. При принятой системе записи исходной информации в выбранной паре ОЗУ получается БПФ размера два по первому отсчету, при этом четный и нечетный спектральные отсчеты равны между собой.

Рассмотрим работу блока 12 управления, схема которого изображена на фиг.17.

Блок управления способен обеспечить работу вычислителя ДПФ в двух режимах однопроцессорной обработки - параллельной и последовательной, а также в режиме конвейерной обработки сигнала. При этом обеспечиваются начальный запуск БПФ, установка размера преобразования и выбор этапа конвейерной БПФ. При параллельной обработке выходные спектральные отсчеты следуют в темпе поступления исходной информации, что весьма удобно при использовании БПФ для цифровой фильтрации в реальном времени. При этом собственно БПФ осуществляется в промежутках между поступлениями очередных сигнальных отсчетов. В случае последовательной обработки запись всей исходной информации - считывание готового спектра и собственно процесс БПФ разделены во времени. Преимущества такого режима - лучшее использование ОЗУ и несколько большая производительность. В конвейерном БПФ на каждом этапе преобразования используется свой процессор БПФ, поэтому он является наиболее производительным. При этом на каждом предыдущем этапе, кроме предпоследнего, размер преобразования может быть уменьшен в два раза, что ведет к существенному сокращению требуемого суммарного размера ОЗУ. Схема управления снабжена двумя тактовыми входами. По одному из них 26 осуществляется тактирование работы собственно вычислителя ДПФ, а другой 16 используется только при режиме однопроцессорной обработки.

В начале работы процессора на вход 15 подается логическая "1", при этом в состояние логической "1" устанавливаются триггеры 327, 330, а в состояние логического "0" - триггеры 352, 377 и 378. Выходной сигнал 386 устанавливается в единицу. В начальное (нулевое) положение через цепи из элементов 2ИЛИ 338 и триггера 339, а также элемента 2ИЛИ 343, триггера 344 и элемента 2ИЛИ 395, триггера 362 устанавливаются по входам R счетчики 345, 346 и 366 соответственно. Следует отметить, что логическая "1", которая устанавливает через элементы 2ИЛИ 359 и триггер 362 счетчик 366 в начальное состояние, генерируется триггером 355. При этом логическая "1" на выходе триггера 355 в режиме конвейерной обработки устанавливается по S-входу постоянно, а в режиме однопроцессорной обработки - в соответствии с изменением сигнала начальной установки ЕВО с входа 15 по тактовым импульсам с входов 26. В состояние логического "0" устанавливаются также все элементы узла 329 задержки. В рабочее состояние схема управления переходит при установке по входу 15 логического "0".

Рассмотрим работу блока 12 управления в режиме конвейерной обработки, когда на входе 29 установлена логическая "1" и мультиплексор 324 готов к приему синхроимпульса S2IN с входа 17.

Уже указывалось, что в конвейерном БПФ на каждом этапе обработки используется свой процессор БПФ (арифметическое устройство 14). При этом на векторном входе 11 должен быть установлен (в двоичном коде) сигнал Nfft, который определяет размер ДПФ по числу этапов обработки, а на векторном входе 28 устанавливается сигнал Lfft, который определяет номер данного этапа обработки.

Функционирование блока управления начинается после поступления на вход 17 синхроимпульса S2IN положительной полярности длительностью, равной периоду следования тактовых импульсов с входов 26. Период следования синхроимпульсов с входа 17 соответствует размеру БПФ, определенному на предыдущем этапе обработки. Основное назначение этих синхроимпульсов запуск счетчиков 345 и 346, а также синхронизация периода их работы, который согласован с размером БПФ и, следовательно, объемом используемого ОЗУ. Если на предыдущем этапе размер БПФ был установлен в два раза меньше, чем на данном, то число синхроимпульсов S2IN, поступающих на вход 17, в два раза больше требуемого и каждый второй из них необходимо исключить. С этой целью на вход 18 подается логический "0" и триггер 327 устанавливается в режим счета. В начале работы триггера 327 установлен в логическую "1", поэтому элемент 2И 328 открыт для прохождения сигнала синхронизации S2IN, поступающего с выхода мультиплексора 324 на D-вход узла 329 задержки. Задний фронт синхроимпульса (с инверсного выхода мультиплексора 324) переключает триггер 327, поэтому каждый четный импульс синхронизации с входа 17 на D-вход узла 329 задержки не поступает. При установке на входе 18 логической "1" триггер 327 установлен в логическую "1" триггер 327 установлен в логическую "1" постоянно, поэтому на D-вход узла 329 задержки поступает каждый синхроимпульс S2IN.

Основное назначение узла 329 задержки - задержка синхроимпульса S2IN с тем, чтобы изменение адресов ОЗУ происходило согласованно с записью и считыванием промежуточных спектральных отсчетов. Поскольку задержка информации в вычислителя ДПФ (в интерполяторе) зависит от этапа преобразования Фурье, то точно такое же изменение задержки синхроимпульсов предусмотрено по Е-входу и в узле 329 задержки. Управляющий сигнал lfft (векторный), с входа 43 который одновременно поступает на выход блока управления, снимается с выхода дешифратора 326. В режиме конвейерной обработки счетчик 331 установлен в начальное состояние, поэтому на вход дешифратора 326 через логический элемент 2ИЛИ 332 просто транслируется сигнал Lfft с входа 28, который определяет настройку блока управления на определенный этап БПФ.

Счетчики адресов записи 345 и чтения 346 одновременно начинают свою работу после поступления синхроимпульсов S2IN с первого выхода узла 329 задержки на входы установки в логическую "1" RS-триггеров 339 и 344. Размер адресного пространства, генерируемого счетчиками, зависит от размера ДПФ, установленного по входу 27 (векторный сигнал Nfft). Этот сигнал после его расшифровки в дешифраторах 347 и 348 сравнивается с выходными сигналами счетчиков в логических элементах И-ИЛИ 349 и 350 и при совпадении кодов, т.е. после наполнения счетчиков согласно установленному размеру ОЗУ, вырабатывает сигнал (логическая "1"), который через элементы 2ИЛИ 338 и 343 устанавливает в логический "0" триггеры 339 и 344. При этом счетчики 345 и 346 устанавливаются по R-входам в начальное состояние, а элементы И-ИЛИ 349 и 350 устанавливаются в логический "0".

При конвейерной обработке вычисление ДПФ следующей пачки сигналов может происходить сразу же по окончании обработки на данном этапе БПФ предыдущей пачки сигналов, поэтому на S-входе триггеров 339 и 344 в этом случае должен находиться следующий синхроимпульс S2IN. Он устанавливает триггеры 339 и 344 в положение логической "1", и счетчики 345 и 346 готовы обслуживать обработку следующей пачки сигналов. Следует отметить, что триггеры 339 и 344 должны иметь приоритет по установке в логический "0" (по R-входу) с тем, чтобы установка счетчиков в начальное состояние могла происходить и при наличии логической "1" по S-входам.

При однопроцессорной обработке (ДПФ осуществляется одним арифметическим устройством 14) сигнал по входу 29 - логический "0". Векторный сигнал по входу 28 (установка номера этапа преобразования) - тоже логический "0", изменение его на выходе группы элементов 2ИЛИ 332 происходит с помощью счетчика 331 по мере изменения этапов БПФ. Как и при конвейерной обработке, сигнал Nfft по входу 27 определяет размер ДПФ. Сигнал F2 на входе 18 - логическая "1", так как в однопроцессорном вычислителе на каждом этапе преобразований используется весь объем памяти в соответствии с размером БПФ.

После начальной установки по входу 15 счетчики 345, 346 и 366 устанавливаются в начальное (нулевое) состояние. Работа счетчиков начинается после поступления по входу 30 положительного импульса (запуск вычислителя) в случае последовательного режима вычислений или логической "1" для режима параллельных вычислений. Положительный импульс (перепад) происходит через элемент 2ИЛИ 357 и устанавливает триггер 362 в состояние логической "1", переводя в режим счета тактовых импульсов счетчик 366. В случае последовательного режима обработки логический "0", устанавливающийся на входе 30 после действия импульса запуска, устанавливает триггер 361 в положение логической "1". При этом элемент 2И 363 открывается для прохождения тактовых импульсов St1 с входа 26 на вход тактовых импульсов счетчика 366.

В случае параллельного режима работы механизм поступления тактовых импульсов на С-вход счетчика 366 несколько иной, а их частота определяется тактовыми импульсами St2 с входа 16.

Рассмотрим взаимодействие триггеров 356, 361 и элемента 2И 360. Пусть в какой-то момент времени при отсутствии тактовых импульсов St1 и St2 на прямом выходе триггера 361 находится логическая "1", а на инверсном - логический "0". При этом триггер 356 устанавливается по R-входу (инверсное управление) на прямом выходе в логический "0", а элемент 2И 360 - тоже в логический "0". Первым тактовым импульсом с входов 26 триггер 361 устанавливается в логический "0", так как на его D-входе логический "0". Теперь на входе установки в ноль триггера 356 логическая "1" и на втором входе элемента 2И 360 логическая "1". Такое состояние сохраняется до прихода тактового импульса St2 на вход 16. При поступлении на тактовый вход триггера 356 положительного импульса с входа 16 он устанавливается в положение логической "1", так как на D-входе установлена постоянно логическая "1". Присутствие логической "1" на обоих входах элемента 2И 360 приводит к установлению на его выходе тоже логической "1". Поэтому первый тактовый импульс с входа 26 устанавливает триггер 361 в положение логической "1", и, так как теперь на одном из входов элемента 2И 363 установлена логическая "1", по другому входу тактовый импульс с входа 26 проходит на вход тактовых импульсов счетчика 366. С приходом следующего импульса по входу 16 этот цикл генерации тактового импульса для счетчика 366 повторяется.

Как и в других счетчиках, общий рабочий объем счетчика 366 определяется кодом сигнала с входа 27, поступающего на вход дешифратора 369. Выходной сигнал этого дешифратора сравнивается в логическом элементе И-ИЛИ 372 с выходным сигналом счетчика. При совпадении кодов вырабатывается логическая "1", которая через логический элемент 2ИЛИ 359 устанавливает RS-триггер в положение логического "0" и счетчик 366 переходит в начальное состояние. После этого снимается логическая "1" с выхода элемента И-ИЛИ 372.

В случае параллельного режима обработки (на входе 30 логическая "1") триггер 362 опять устанавливается в положение логической "1" и начинается заполнение ОЗУ новой пачкой сигнальных отсчетов. В это время обрабатывается предыдущая пачка сигнальных отсчетов. Съем готового спектра происходит во время и в темпе поступления третьей пачки сигнальных отсчетов и т.д.

В случае последовательного режима обработки новое включение счетчика 366 для записи другой пачки сигнальных отсчетов и одновременного считывания готового спектра первой пачки происходит по окончании ДПФ этой пачки сигнальных отсчетов и благодаря генерации триггером 341 и элементом 2И 342 в этот момент положительного импульса.

Проследим теперь как происходит включение счетчиков 345 и 346, обеспечивающих режимы записи и считывания однопроцессорного вычислителя БПФ.

В момент окончания записи исходных сигнальных отсчетов происходит генерация положительного импульса на выходе элемента И-ИЛИ 372. При этом триггер 370 устанавливается (по инверсному выходу) в положение логической "1". Первый тактовый импульс с входа 26 устанавливает эту единицу на выходе D-триггера 373. Эта логическая "1" через элемент 2ИЛИ 367 устанавливает RS-триггер 370 обратно в положение логического "0" (на инверсном выходе). Следующим тактовым импульсом с входа 26 триггер 373 опять переводится в положение логического "0". Цикл генерации импульса длительностью один такт сигнала St1 по окончании записи очередной пачки сигнальных отсчетов в ОЗУ заканчивается.

Логическая "1" с входа элемента 2ИЛИ 374 передается на входы элементов 2И 334 и 335. Первый из этих элементов открывает путь для прохождения тактовых импульсов с входа 26 на вход установки в логический "0" триггера 330, в результате чего подготавливается включение в работу счетчиков 345 и 346. Второй элемент 2И 335 (на его первом входе в этот момент логическая "1") через элемент 2ИЛИ 336 обнуляет счетчик 331 этапов БПФ.

После установки триггера 330 в состояние логического "0" снимаются устанавливающие в логический "0" счетчики 345 и 346 сигналы с соответствующих выходов узла 329 задержки, триггера 339 и триггера 344. Импульс запуска счетчиков 345 и 346 формируется триггерами 351 и 352. По окончании каждого цикла работы счетчика 366 записи исходной информации - считывания готового спектра на выходе элемента 2ИЛИ 374 формируется положительный импульс длительностью, равной периоду тактовых импульсов с входа 26. Этот импульс устанавливает в положение логической "1" триггер 352. Логическая "1" с выхода триггера 352 устанавливает в логический "0" триггер 351, выход которого соединен с D-входом триггера 352. Поэтому по окончании импульса установки с выхода элемента 2ИЛИ 374 первым тактовым импульсом с входа 26, прошедшим через элемент 2И 376, триггер 352 опять устанавливается в положение логического "0". За время своего существования (два тактовых импульса с входа 26) импульс с выхода триггера 351 переводит RS-триггер в положение логической "1" и поступает на узел 329 задержки (по А-входам мультиплексоров 340 и 324, так как управляющий сигнал Е, поступающий с входа 29, равняется в режиме однопроцессорной обработки логическому "0"). Этот импульс также поступает на вход счетчика 331 и устанавливает его в положение, соответствующее БПФ на первом этапе преобразования.

Таким образом, сначала запускается счетчик 346, формирующий адреса считывания сигнала для обработки на первом этапе БПФ. Счетчик 345, определяющий адреса записи частичных спектров, полученных после первого этапа обработки, начинает свою работу после прохождения синхроимпульса с выхода триггера 352 через узел 329 задержки. Задержка сигнала синхронизации в этой линии задержки равняется времени обработки первых спектральных отсчетов в вычислителе ДПФ. В таком же порядке заканчивают свою работу на первом этапе БПФ счетчики 346 и 345.

Положительный импульс, получающийся на выходе элемента И-ИЛИ 349 по окончании работы счетчика 345, устанавливает триггер 351 (логическая "1" на D-входе) в положение логической "1". Очередной тактовый импульс с входа 26 с выхода элемента 2И 376 устанавливает триггер 352 в положение логической "1", а следующий - опять в ноль. Таким образом, на выходе триггера 352 образуется положительный импульс, запускающий последовательно счетчики 346 и 345, а также устанавливающий на выходах счетчика 331 и группы элементов 2ИЛИ 332 состояние, соответствующее обработке на втором этапе БПФ.

Так же происходит функционирование схемы на третьем и последующем этапах обработки БПФ до тех пор, пока не сравняются коды на входах схемы 325 сравнения, т.е. не будет совершен последний этап БПФ, определенный логическим сигналом Nfft, поступающим с входа 27. По окончании последнего этапа БПФ вырабатывается положительный перепад на выходе схемы 325 сравнения, которым триггер 330 переводится в положение логической "1". В результате блокируется работа счетчиков 345 и 346, а также узла 329 задержки. Продолжение работы счетчиков 345 и 346 возможно теперь только по окончании работы счетчика 366, генерации на выходе триггера 373 положительного импульса и т. д., как описано выше.

В режиме параллельной обработки счетчик 366 работает постоянно и импульс на выходе триггера 373 появляется периодически по мере окончания очередного цикла записи исходной информации - считывания готового спектра. Необходимым условием является только такой выбор частоты поступления отсчетов сигнала по входу 16, чтобы процессор БПФ (арифметическое устройство 14) успевал определить ДПФ в каждый период записи очередной пачки сигнальных отсчетов с тем, чтобы окончание работы процессора БПФ наступало раньше очередного окончания работы счетчика 366.

В режиме последовательной обработки счетчик 366 и пара счетчиков 345 и 346 работают последовательно во времени и запуск счетчика 36 необходимо производить по окончании работы счетчиков 345, 346. Возможны два вида синхронизации - внутренний и внешний.

При внешнем режиме синхронизации на вход 17 должна быть подана логическая "1". В этом случае на инверсном выходе триггера 341 устанавливается логический "0" и выход элемента 2И 342 (логический "0") не зависит от работы устройства, поэтому возможен только режим внешней синхронизации по входу 30 (импульс положительной полярности).

При внутреннем режиме синхронизации (на вход 17 подается логический "0") на каждый положительный перепад на выходе триггера 330 схема из триггера 341 и элемента 2И 342 формирует положительный импульс, длительность которого равняется периоду тактовых импульсов по входу 26. Когда на выходе триггера 330, а следовательно, и на D-входе триггера 341 логическая "1" (счетчики 345, 346 работают), на инверсном выходе триггера 341 логическая "1", а на выходе элемента 2И 342 логический "0". При появлении на выходе триггера 330 логического "0" (окончание работы счетчиков 345 и 346) на выходе элемента 2И 342 устанавливается логическая "1" до прихода очередного тактового импульса на его второй вход, когда изменение напряжения на D-входе триггера 341 передается на его выход. Этот положительный импульс устанавливает RS-триггер 362 в состояние логической "1" и включает тем самым счетчик 366.

Отметим также, что как при параллельном режиме работы, так и при последовательном изменении состояния счетчика 346 и пары счетчиков 345, 346 происходят последовательно во времени. Это достигается тем, что та часть тактовых импульсов с входа 26, которая (в обоих режимах) изменяет состояние счетчика 366, не поступает на вход других счетчиков. Это вычитание импульсов происходит в логическом элементе 2И 376, который управляется выходным сигналом элемента 2И-НЕ 368. Эта схема вырабатывает сигнал разрешения только тогда, когда на выходе триггера 361 или 362 присутствует логический "0" и счетчик 366 не изменяет своего состояния при поступлении тактовых импульсов с входа 26. Сигнал разрешения с выхода элемента 2И-НЕ 368 поступает также на выход 44, но с задержкой на один такт.

Выходные сигналы счетчиков записи 345 и считывания 346 поступают на мультиплексор 385 адресов через специальные узлы формирования адресов записи 353 и адресов чтения 354. Сигналы адресов записи исходной информации - чтения готовых спектров со счетчика 366 поступают на узел 385 переключения непосредственно. Работу этих формирователей адресов рассмотрим ниже, а пока только отметим, что на входы узла 353 поступают еще управляющий законом преобразования векторный сигнал с выхода группы элементов 2И 337 и тактовый сигнал с входа 26, прошедший элемент 2И 376. На входы узла 354 поступают еще управляющие векторные сигналы с выхода сумматора 333 и с выхода дешифратора 326 (lfft), а также тактовый сигнал с выхода элемента 2И 376.

Векторный сигнал FW с выхода группы элементов 2И 337, управляющий алгоритмом формирования адресов записи, по существу, повторяет собой двоичный код этапа преобразования БПФ, поступающий с входа 28 (в случае конвейерного БПФ) или со счетчика 331, за исключением последнего этапа БПФ, когда требуется подать код, состоящий из одних нулей. Последнее достигается на заключительном этапе БПФ, когда вследствие выполнения условий схемы 325 сравнения на инверсном выходе образуется логический "0", который и передается во всех разрядах группы элементов 2И 337.

Векторный сигнал FR, поступающий на вход узла 354 с сумматора 333, тоже повторяет собой двоичный код этапа преобразования БПФ. Только для конвейерного вычислителя БПФ узел 354 формирует адреса считывания частичных спектров для следующего этапа БПФ, а в однопроцессорном вычислителе - для данного. Указанное отличие учитывается установкой сумматора 333, который по входу переноса прибавляет к коду, существующему на выходе группы элементов 2ИЛИ 332, сигнал с входа 29, т.е. единицу в случае конвейерного вычислителя БПФ.

В узле 385 переключения кроме векторных адресных сигналов AW, AR и ARW поступают еще четыре управляющих сигнала и тактовый с входа 26. Эти управляющие сигналы регулируют подключение выходных шин, которые определяют адресное пространство первой и второй пар ОЗУ, одна из которых находится в режиме записи, а другая - считывания, к входным адресным шинам. Так, при работе вычислителя БПФ в режиме преобразования и по завершении обработки одной пачки отсчетов (для конвейерного БПФ) или одного этапа БПФ (для однопроцессорного БПФ) направление работы обеих пар ОЗУ взаимно инвертируется. При работе вычислителя БПФ в режиме записи исходной информации - считывания готового спектра (в однопроцессорном вычислителе БПФ) обе выходные шины подключаются к выходу счетчика 366. Переключение на обслуживание режимов преобразования или записи-считывания осуществляется сигналом ES, поступающим с выхода элемента 2И-НЕ 368. Переключение адресных сигналов с выходов улов 353 и 354 осуществляется сигналом RW, поступающим с выхода мультиплексора 382. Одновременно этот сигнал управляет (с задержкой на один такт в триггере 383) переключениями режимов записи-считывания в ОЗУ. Управляющие сигналы EW (с выхода элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 371) и Е3 (с входа 30) служат для обеспечения режима параллельной однопроцессорной обработки.

Рассмотрим теперь работу части блока управления, которая формирует выходной сигнал по входу 317, переключающий режимы записи-считывания в ОЗУ. Эта часть включает элементы 358, 364, 365, 375, 377-380, 382 и 383.

Алгоритмы изменения выходного сигнала с выхода 317 представлены в табл. 9-12.

В конвейерном вычислителе БПФ (табл.9) циклы записи и считывания чередуются от одного цикла БПФ к другому, т.е. при переходе от расчета частичного (или на последнем этапе БПФ полного) спектра одной пачки сигнальных отсчетов к расчету другой. Соответственно изменяется и функциональное назначение пар ОЗУ.

В табл.10 представлен алгоритм изменения сигнала с выхода 317 в однопроцессорном вычислителе БПФ с режимом последовательной обработки. Для примера выбран вычислитель БПФ, у которого пять этапов обработки (размерность БПФ 32). При обработке первой пачки сигнальных отсчетов (первый цикл БПФ) сначала они (нулевой этап БПФ) загружаются в ОЗУ 1-2, затем на первом этапе БПФ считываются с ОЗУ 1-2, обрабатываются в вычислителе БПФ и записываются в ОЗУ 3-4. На втором этапе БПФ роли ОЗУ меняются, теперь частичные спектры, полученные после первого этапа БПФ, считываются с ОЗУ 3-4, а запись готовых спектров ведется в ОЗУ 1-2 и т.д. По окончании вычислений, т.е. после пятого этапа БПФ, во время нулевого этапа БПФ обработки следующей пачки сигнальных отсчетов (второй цикл БПФ) готовые спектральные отсчеты считываются с ОЗУ 1-2, где они были записаны на пятом этапе БПФ, а запись новых отсчетов ведется в ОЗУ 3-4. Как следует из табл.10 в каждой паре ОЗУ запись-считывание чередуются, только в отличие от конвейерной обработки здесь следует учитывать еще нулевой этап БПФ - этап записи исходных сигнальных отсчетов и считывания готового спектра.

В табл. 11 представлен алгоритм изменения сигнала с выхода 317 в однопроцессорном вычислителе БПФ с режимом параллельной обработки с четным количеством этапов БПФ (четыре), а в табл.12 - с нечетным (пять этапов БПФ).

Рассмотрим сначала алгоритм, представленный в табл.11. Здесь в первом цикле БПФ в одну из половин ОЗУ 1-2 (в данном случае во вторую половину) записываются отсчеты сигнала, который будет подвергнут преобразованию Фурье. Во втором цикле осуществляется БПФ записанных в ОЗУ отсчетов. При этом на первом этапе БПФ сигналы для обработки считываются с второй половины ОЗУ 1-2, где они были записаны, а готовые частичные спектры записываются во вторую половину ОЗУ 3-4. На втором этапе БПФ роли вторых половин ОЗУ меняются и т.д. Во время второго цикла БПФ ведется также запись следующей (второй) пачки сигнальных отсчетов в первую половину ОЗУ 3-4 (можно также рассмотреть возможность записи второй пачки сигнальных отсчетов в первую половину ОЗУ 1-2). Выше указывалось, что темп поступления (тактовые импульсы по входу 16) сигнальных отсчетов должен быть таким, чтобы за время их записи в ОЗУ БПФ предыдущей пачки сигнальных отсчетов было уже закончено. В третьем цикле БПФ параллельно совершаются три действия. Во-первых, с второй половины ОЗУ 3-4 считывается готовый спектр отсчетов сигнала, поступивших на обработку в первый цикл БПФ. Во-вторых, ведется обработка второй пачки сигнальных отсчетов. В-третьих, осуществляется запись во вторую половину ОЗУ 1-2 третьей пачки сигнальных отсчетов. В четвертый цикл ведется считывание готового спектра второй пачки сигнальных отсчетов и т.д. Таким образом, запись сигнала, его обработка и выдача готового спектра ведутся в темпе поступления информации.

Рассматривая в целом алгоритм, представленный в табл.11, отметим, что чередование циклов записи-считывания по каждой из половин ОЗУ сохраняется. Это утверждение остается верным и для нечетного количества этапов БПФ, для которого алгоритм изменения сигнала с выхода 317 представлен в табл.12.

В конвейерном вычислителе БПФ сигнал по входу 29 равняется логической "1", поэтому на выходе триггера 355 логическая "1", а на инверсном выходе триггера 358 логический "0". Поэтому на выходе элемента 2И-НЕ 364 логическая "1" и информационный вход демультиплексора 375 соединен с вторым выходом (F1). С вторым входом мультиплексора 380 соединен его выход. Также с вторым входом соединен выход мультиплексора 382, у которого управляющий сигнал (Е) в режиме конвейерной обработки постоянно равняется логической "1". Чередование режимов записи-считывания по окончании каждого цикла БПФ обеспечивается поступлением на счетный триггер 378 импульсов окончания обработки каждой пачки сигналов с триггера 352 через демультиплексор 375.

В однопроцессорном вычислителе БПФ при последовательном режиме обработки установки логической "1" на выходе элемента 2И-НЕ 364 обеспечивается логической "1" на входе 30. Функционирование алгоритма происходит аналогично, только добавляется нулевой цикл - цикл записи исходной информации и считывания готового спектра. При этом сигнал на переброс триггера 378 проходит с выхода триггера 373 через элемент 2ИЛИ 374, триггер 352 и т.д.

В однопроцессорном вычислителе БПФ при параллельном режиме обработки необходимо для генерации сигнала с выхода 317 подключение еще одного триггера - триггера 377. Управление переключениями обоих триггеров происходит последовательно во времени. В одни циклы БПФ, например, в нечетные циклы, работает один триггер, в другие, четные, другой. Подключение переключающего сигнала с выхода триггера 352 осуществляется демультиплексором 375 с помощью управляющего сигнала, поступающего с выхода элемента 2И-НЕ 364. Состояние этого элемента зависит от положения триггера 358, находящегося в счетном режиме (на входе 30 логическая "1"). Сигнал на счетный вход триггера 358 поступает с прямого выхода триггера 373, поэтому переключение его происходит одновременно (можно учесть также одинаковую задержку распространения сигналов в элементах 2И-НЕ 364 и 2ИЛИ 374) с установкой в логическую "1" триггера 352. Поэтому импульс с выхода элемента 2ИЛИ 374 переключает другой триггер. Таким образом, триггеры 377 и 378 работают по очереди в четный и нечетный циклы. При этом период их работы начинается с импульса окончания предыдущего цикла (т. е. с начала этого цикла) и включает все этапы БПФ (переключение по окончании каждого этапа).

Соответствует ли такая последовательность работы триггеров 377 и 378 алгоритму, приведенному в таблице. Пусть, например, триггер 377 определяет работу второй половины ОЗУ 1-2, а триггер 378 - первой. Согласно табл.11 во второй цикл БПФ на первом этапе ОЗУ 1-2 находится в режиме считывания (R). По окончании первого этапа триггер 377 переключается и устанавливается режим записи (W) и т.д. После четвертого такта триггер 377 устанавливается в режим считывания (R). По окончании второго цикла перекидывается триггер 378 и устанавливается, например, в положение, соответствующее записи (W), как это и требуется по приведенному алгоритму (можно рассмотреть и альтернативный вариант с установкой в режим считывания). В третий цикл изменяет свое состояние уже триггер 378, а триггер 377 остается в положении R, как и следует по алгоритму: в этот цикл должно происходить считывание готового спектра с второй половины ОЗУ 1-2. Подобные рассуждения можно продолжать и дальше и распространить их на проверку алгоритма, приведенного в табл.12.

Рассматривая порядок работы счетчиков 345, 346 и 366 в режиме параллельной обработки, выясняют, что работа вычислителя ДПФ происходит в промежутках между отдельными обращениями к источнику отсчетов сигнала и считывания готовых спектральных составляющих. В соответствии с этим происходит изменение адресов ОЗУ в узле 385 переключения и должно происходить переключение половин ОЗУ и режимов их работы. Переключение режимов работы ОЗУ происходит в мультиплексоре 382 по сигналу с выхода элемента 2И-НЕ 368, который управляет также количеством тактовых импульсов с входа 26, поступающих на счетчики 345 и 346. Так как триггеры 377 и 378 по очереди обслуживают вычислитель ДПФ и систему записи исходной информации-считывания готового спектра, а полярность сигнала, управляющего работой мультиплексора 382 не меняется, то сигналы, поступающие на его вход, необходимо взаимно переключать. Эта операция осуществляется мультиплексорами 379 и 380, управляющие сигналы на которые (взаимно инвертированные) подаются с выходов элементов 2И-НЕ 364 и 365. Состояние этих схем определяется положением счетчика 358 и изменяется по окончании каждого цикла БПФ по сигналу с триггера 373. Выбором возможного варианта использования частей ОЗУ 1-2 (и ОЗУ 3-4) можно управлять начальной установкой триггеров 377 и 378.

Рассмотрим теперь алгоритмы записи и считывания информации из ОЗУ, а также основанное на этих алгоритмах построение узлов формирования адресов записи 353 и считывания 354.

Схема узла 353 формирования адресов записи изображена на фиг.18. Основное назначение этой схемы - формирование такой системы записи частичных спектров, поступающих в ОЗУ с выхода когерентного сумматора, чтобы при считывании их для дальнейшей обработки было обеспечено синхронное поступление требуемых по алгоритму обработки спектральных составляющих. Так, согласно описанному алгоритму на входы интерполяторов вычислителя ДПФ необходимо одновременное поступление сначала составляющих первого четного и первого нечетного частичных спектров, затем второго четного и второго нечетного и т. д. Поступают они для записи в ОЗУ в иной последовательности: сначала первый нечетный частичный спектр (первый), затем первый четный (второй), потом второй нечетный частичный спектр (третий) и т.д. При этом спектральные отсчеты с выхода когерентного сумматора поступают парами: первый и второй, третий и четвертый, пятый и шестой и т.д. Для записи (и считывания) частичных спектров также выделены пары ОЗУ (ОЗУ 1-2 и ОЗУ 3-4). Для обеспечения требуемой последовательности поступления спектральных отсчетов на следующий этап БПФ необходимо при записи каждого следующего частичного спектра менять ОЗУ местами. Так, если, например, при записи нечетных частичных спектров все нечетные спектральные отсчеты записывались в ОЗУ 1, а четные - в ОЗУ 2, то при записи четных частичных спектров, наоборот, все нечетные спектральные отсчеты необходимо записывать в ОЗУ 2, а четные - в ОЗУ 1. Указанное переключение потоков информации при записи осуществляется в мультиплексорах 282, 284, 286 и 288 схемы, изображенной на фиг.16, сигналом Eon, поступающим по входу 318. Собственно формирование адресов записи заключается в выделении сигнала управления на входе 318 и установке его на место нулевого разряда адресов записи. Такое решение позволяет унифицировать систему адресации при обслуживании схемой управления вычислителя ДПФ любого этапа обработки. Заметим, что количество выходных спектральных четных (и нечетных) спектральных отсчетов после первого этапа БПФ равняется двум, после второго - четырем, после третьего - восьми и т.д.

Таким образом, при записи результатов первого этапа БПФ на место нулевого разряда необходимо установить первый, а на место первого - нулевой. При записи результатов второго этапа БПФ на место нулевого разряда устанавливают второй, на место второго - первый, а на место первого - нулевой. При записи результатов третьего этапа БПФ на место нулевого разряда устанавливают третий разряд, на место третьего - второй, на место второго - первый и на место первого - нулевой и т.д.

В табл. 13 и 14 приведена последовательность изменения адресов ОЗУ 1 и ОЗУ 2 при записи в них частичных спектров после второго этапа БПФ. Можно отметить, что действительно в пределах одного частичного спектра изменяются только первый и второй разряды (бывшие нулевой и первый) адресов ОЗУ 1-2 (в них ведется запись), нулевой разряд (бывший второй) изменяется при переходе к записи следующего частичного спектра, также по очереди изменяется запись четных и нечетных спектральных отсчетов одним и тем же ОЗУ. Переключение ОЗУ с записи нечетных отсчетов на запись четных (и наоборот) осуществляется с помощью сигнала на входе 318, снимаемого с выхода нулевого разряда. Отметим также, что адресные входы ОЗУ 1 и ОЗУ 2 могут быть соединены поразрядно, так как законы изменения адресов у них одинаковые.

Проследим теперь как должны изменяться адреса ОЗУ 1 и ОЗУ 2 при считывании спектральных отсчетов для обработки на третьем этапе БПФ. В табл.15 и 16 приведено соответствие номеров спектральных отсчетов, подаваемых на процессор БПФ по обоим входам (комплексных U1 и U2). Данные в табл.15 и 16 взяты из табл.13 и 14. Анализируя приведенные данные, можно отметить, что изменению, по существу, подвергаются только разряды, начиная с первого и дальше. Причем изменения адресов осуществляются только при переходе от одной пары отсчетов к другой. Нулевой разряд не изменяется и для U1 он равняется нулю, а для U2 - единице. Но, с другой стороны, необходимо каждый раз, переходя к считыванию нового отсчета, изменять ОЗУ. Указанное переключение ОЗУ, с которого производится считывание очередного спектрального отсчета, осуществляется с помощью сигнала Е12 с входа 316 мультиплексорами 298, 299, 302 и 303. Если проследить как изменяются адреса ОЗУ 1 и ОЗУ 2, то окажется, что адреса ОЗУ 1 изменяются в порядке счета, а нулевой разряд ОЗУ 2, должен быть дополнительно инвертирован.

В действительности, как показано в табл.17 и 18, порядок изменения адресов ОЗУ 1 и ОЗУ 2 при считывании информации не отличается от описанного только для первых двух этапов обработки. Начиная с третьего этапа БПФ, необходимо учитывать то обстоятельство, что первым при обработке каждого частичного спектра должен считываться (для интерполятора с m весовыми коэффициентами) (N-m+1)-й спектральный отсчет, затем (N-m+2)-й и т.д. И только после считывания N-го считываются первый, второй и т.д. отсчеты. Указанного порядка считывания можно достигнуть, если вычитать из кода адреса число m-1, при этом разрядность вычитаемого должна быть ограничена представлением числа N (коды чисел от 0 до N-1).

В примере, приведенном в табл.19, рассматривается процессор БПФ с тремя весовыми коэффициентами (для третьего и последующих этапов БПФ), поэтому при считывании первой пары частичных спектров сначала считывается седьмой отсчет (код...00110), потом восьмой (код...00111), а затем уже первый (код. ..00000), второй и т.д. При обработке второй пары частичных спектров сначала считываются 15-й, потом 16-й, а затем уже 9-й, 10-й и т.д. спектральные отсчеты. Различие нулевых адресов ОЗУ 1 и ОЗУ 2 (в равной степени это касается и ОЗУ 3-4, если они работают в режиме считывания), описанное выше, разумеется, сохраняется. Инверсия нулевого адреса ОЗУ в режиме считывания информации осуществляется с помощью сигнала с входа 317 элементами ИСКЛЮЧАЮЩЕЕ ИЛИ.

Отметим еще особенности алгоритма записи информации на нулевом этапе БПФ и последнем. На нулевом этапе БПФ осуществляется запись исходной информации в ОЗУ. Эта запись может происходить в полном соответствии с описанным выше алгоритмом (с заменой нулевого разряда на нулевой же), т.е. в естественном порядке. При этом в оба ОЗУ записывается одинаковая информация, так как в данном случае четный и нечетный спектральные отсчеты (ДПФ по основанию два по одному отсчету сигнала) равны между собой. Естественным должен быть и порядок следования адресов при записи результатов БПФ после последнего этапа преобразования, так как теперь уже не существует частичных спектров, а имеется только один - готовый искомый спектр. По этой причине последний этап для схемы формирования адресов считывания является, фактически, нулевым и на нее подается управляющий сигнал, соответствующий нулевому этапу.

Рассмотрим теперь логику работы узла формирования адресов записи, изображенного на фиг.18. На узел формирования по входу 401 поступает вектор адресов записи с выхода счетчика 345. Этот вектор адресов соединен шиной с мультиплексорами 394-398, выходы которых подключены через регистр 400 к векторному выходу 404 узла. Мультиплексоры подключены к входам первого - (n-1)-го разрядов регистра 400 и соответственно выхода 404 так, что при управляющем его работой сигнале Е, равном логической "1", соответствующий разряд выходной шины 404 равен аналогичному разряду входной шины 401. Если управляющий сигнал Е равен логическому "0", то соответствующий разряд выходной шины равен на единицу более низкому разряду входной шины, т.е. происходит смещение адресных разрядов в сторону старших разрядов. Формирование сигналов Е осуществляется группой элементов ИЛИ 393. Построение логического элемента ИЛИ 393 показано на фиг.20. Как следует из приведенной схемы, он состоит из каскадного соединения n-1 элементов ИЛИ. При этом первый 426 из них входами подключен к нулевому и первому входным разрядами, второй 427 - к выходу первого и второму разряду, третий 428 - к выходу второго и третьему разряду и т.д., i-й элемент ИЛИ 429 подключен к выходу (i-1)-го элемента и i-у разряду, а (n-1)-й элемент подключен к выходу (n-2)-го и (n-1)-у разряду. Фактически по каждому i-у выходу схема представляет собой (i+1)-входовой элемент ИЛИ 431, входы которого подсоединены к первым i+1 разрядам входной шины.

Входная шина для группы элементов ИЛИ 393 образуется дешифратором 392, который генерирует логическую "1" на том своем выходе, порядковый номер которого совпадает с кодом сигнала с входа 402, поступающего на его вход. Так как первый выход дешифратора 392 (нулевой разряд соответствует нулевому коду на входе 402) соединен с вторым входом (Х1) группы элементов ИЛИ 393, то на всех выходах этой схемы устанавливаются логические "1" и общий выход 404 оказывается эквивалентным (с учетом задержки на один такт в регистре 400) входному вектору 401. Такой же результат будет в случае, если на входе 402 максимальный код (все отдельные разряды равны логической "1"), так как в этом случае логическая "1" оказывается на последнем выходе дешифратора (Xn-1), который соединен с первым входом группы элементов ИЛИ 393. В промежуточном случае, когда код на входе 402 соответствует числу i, совпадение кодов адресов записи на выходе 404 и входе 401 будет только для разрядов более старших, чем i, т.е. для i+1 до n-1. Разряды первый - i-й выходной шины 404 соответствует нулевому - (i-1)-у разрядам входной шины 401 вследствие того, что на управляющие входы мультиплексоров 394, 396, 397... и 395 подается в этом случае логический "0". Нулевой разряд выходной шины 404 определяется во всех случаях работой мультиплексора 391, подключающего на свой выход тот из разрядов входной шины 401, который соответствует содержанию кода с входа 402 на управляющему входе L, что и требуется по описанному выше алгоритму работы ОЗУ в режиме записи.

Сигнал с входа 318, управляющий переключением потоков информации о четных и нечетных отсчетах частичных спектров, снимается с выхода мультиплексора 391 с задержкой в D-триггере 399 на один такт сигнала с входа 403 (это выход элемента 2И 376) с учетом задержки информационного сигнала в мультиплексорах.

Основное назначение узла 354 формирования адресов считывания, схема которого изображена на фиг.19, - обеспечить формирование адресов считывания для той части этих адресов, которая ответственна за порядок считывания спектральных отсчетов в каждом частичном спектре. При обсуждении алгоритма работы узла 354 указывалось, что это формирование заключается в вычитании числа m-1 из указанной части кода адреса, где m - число весовых коэффициентов, используемых в сумматоре интерполятора.

Коррекция адресов считывания осуществляется в вычислителе 406, на один вход которого подаются сигналы с выхода счетчика 346 (уменьшаемое), а на другой - сигнал с выхода шифратора 405 (вычитатель). Роль шифратора заключается в преобразовании векторного сигнала с входа 43 в играющего роль вычитателя, в число со значением, зависящим от номера этапа преобразования и равны m-1. В качестве шифратора 405 может быть применена, например, схема постоянной памяти, в которой требуемая связь между входным и выходным кодами обусловлена записанной в нее информацией.

Работа собственно схемы формирования (мультиплексоры 409-413, группа элементов ИЛИ 408 и дешифратор 407), по существу, не отличается от работы аналогичной схемы формирователя адресов записи (мультиплексоры 394-398, многовыходная группа элементов ИЛИ 393 и дешифратор 392). Указанные элементы попарно идентичны, отличаются только в использовании некоторых связей. Так, первые входы мультиплексоров 409-413 подключены не к более младшим разрядам шины 422 адресов, а к выходам вычитателя 406. Кроме того, для того, чтобы обеспечить коррекцию только требуемой части адресов считывания, входы группы элементов ИЛИ 408 подключены к выходам дешифратора 407 без смещения номеров (i-й входной к i-у выходному и т.д.)
Работа регистров 414 и 415 также аналогична функционированию соответствующих элементов (регистры 399 и 400) узла 353, за исключением того, что для согласованной работы схемы ОЗУ требуется на один такт большая задержка управляющего сигнала Е12 с выхода 316. Здесь выходом регистра 415 является выходная шина 424 адресов считывания, а выходом регистра 414 - сигнал с выхода 316, управляющий переключением выходов ОЗУ при считывании сигналов U1 и U2 на следующий этап обработки БПФ.

Рассмотрим схему задержки сигнала синхронизации с выхода 425 (S1), которая также изображена на фиг. 19. Синхросигнал S1 свидетельствует об окончании считывания очередной пары частичных спектров и начале считывания следующей и представляет собой положительный импульс длительностью, равной периоду тактовых импульсов, поступающих с входа 403 (26). Момент начала синхроимпульса S1 совпадает с переходом старшего бита той части адресных отсчетов с входа 422, которая ответственна за считывание текущего частичного спектра, из состояния логической "1" в состояние логического "0", т.е. в момент окончания считывания данного частичного спектра.

Работа схемы формирования S1 происходит следующим образом. Непосредственно перед генерированием синхроимпульса указанный выше старший разряд равен логической "1" на соответствующем выходе дешифратора 407. Вследствие этого на выходе элемента 2И-nИЛИ 416 получается тоже логическая "1". В результате на одном входе логического элемента 2ИЛИ-НЕ 418 логическая "1", а на другом логический "0", так как снимается второй сигнал с инверсного выхода триггера 417. После инвертирования старшего разряда на первом входе логического элемента 2ИЛИ-НЕ 418 оказывается тоже логический "0". Поэтому на выходе элемента 2ИЛИ-НЕ 418 устанавливается логическая "1", пока на триггер 417 не поступит очередной тактовый импульс. Логическая "1", сформированная в течение одного периода тактовых импульсов с входа 403 (26), транслируется с задержкой три такта на выход цепочки D-триггеров 419-421 и, следовательно, на выход 425.

Схема узла 329 задержки изображена на фиг.21 и представляет собой последовательное соединение D-триггеров 432-434 и 437, 438. Эта схема предназначена для задержки синхросигнала с входа 17, поступающего с выхода логического элемента 2И 328 на вход счетчиков 346 и (или) 345. Синхросигнал с выхода триггера 438 (это первый выход узла 329), подается на входы триггера 339 и мультиплексора 340. По выходу 390 генерируется синхросигнал S3 окончания обработки очередной пачки частичных спектров и фиксации наличия переполнения в процессе ее обработки. Кроме того, схема генерирует синхросигнал S12 (по третьему выходу узла 329), служащий для следующего процессора БПФ в конвейерном вычислителе в качестве синхросигнала S2IN.

Величина задержки генерируемых синхросигналов должна изменяться в зависимости от выполняемого этапа БПФ точно так же, как это происходит в интерполяторе. С целью изменения величины задержки между выходом триггера 434 и входом триггера 437 установлен мультиплексор 435, который подключает к D-входу триггера 437 выходы триггеров 432, 433,...,434 в зависимости от управляющего сигнала с входа 445. Дешифратор 436, включенный в разрыв шины управления, служит для согласования входного кода с кодом управления мультиплексора 435 и может быть выполнен, например, на ПЗУ. Один такт дополнительной задержки синхросигнала с выхода 390 и три такта синхросигнала с выхода 36 учитывают задержку информации в схемах формирования адресов записи-считывания и в блоке 13.

Узел 385 переключения адресов записи-считывания, схема которого приведена на фиг. 22, предназначен для подключения к адресным входам ОЗУ 1-2 и ОЗУ 3-4 выходов узлов формирования адресов записи 353 и считывания 354, а также выходов счетчика 366 адресов записи исходной информации и считывания готового спектра в случае однопроцессорного вычислителя БПФ.

Собственно переключатель собран на элементах 3И-3ИЛИ 451 и 452 с векторными входами и выходами, которые представляют собой параллельное соединение элементов 3И-ИЛИ по числу проводников во входных шинах, подключенных к одним входам элементов И. По другим входам в соответствие с логикой работы элементов И происходит коммутация тех или иных информационных сигналов на выход. Так, при установке логической "1" по входу 461 коммутируются на выход только шины 406 и 424 (адреса записи AW и считывания AR). При установке на входе 460 логической "1" на выход элемента 2И-3ИЛИ 451 проходит сигнал AR, а на выход элемента 2И-3ИЛИ 452 - сигнал AW. При установке на входе 460 логического "0" выходы переключаются. Если на входе ES устанавливается логический "0", то на обоих выходах адреса с выхода счетчика 366, т.е. происходит запись исходной информации - считывание готового спектра.

Элементы ИСКЛЮЧАЮЩЕЕ ИЛИ 453 и 454 работают в качестве управляемых инверторов и предназначены для формирования разряда Adr0 в режимах записи и считывания информации схемами ОЗУ, как это описано выше при анализе работы схемы на фиг.16. В режиме записи спектров по первому и второму проводникам шины 319 (и аналогично 320) адресные сигналы синфазны, так как на управляющем входе элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 453 (и аналогично 454) устанавливается логический "0", в режиме считывания противофазны, так как на управляющем входе логическая "1", за исключением случая, когда в однопроцессорном вычислителе считывается готовый спектр (на входе 461 и управляющих входах элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 453 и 454 логические "0").

Многоканальные мультиплексоры 455 и 456 предназначены для обеспечения параллельного режима работы однопроцессорного вычислителя БПФ. При параллельном режиме работы сигнал по входу 30 - логическая "1", на выход мультиплексоров 455 и 456 проходят адресные сигналы с первых (верхних) входов и на третий проводник шины 319 (аналогично шины 320) проходит адресный сигнал с выхода элемента ИСКЛЮЧАЮЩЕЕ ИЛИ (фиг.17), который переключает первые и вторые половины пар ОЗУ 1-2 и 3-4 согласно алгоритму записи-считывания, описанному выше и приведенному в табл.11 и 12. При этом, разумеется, один разряд ОЗУ "теряется" (их остается n-1) и максимальный размер БПФ, который может обслуживаться данным ОЗУ (и процессором БПФ), уменьшается вдвое. При установке на входе 30 логического "0" мультиплексоры 455 и 456 просто транслируют сигнал, поступающий по входным шинам. Регистры 457 и 458 путем тактирования по входу 26 выравнивают по величине запаздывания адресные сигналы, поступающие по различным входам.

Блок 10 формирования приращения порядка чисел (фиг.23) служит для изменения (увеличения) общего порядка выходных спектральных отсчетов в случае обнаружения сигнала VP переполнения разрядной сетки, который поступает в блок 10 с блока 13 оперативной памяти. Кроме того, блок 10 служит для выравнивания порядков чисел, поступающих на обработку в конвейерном вычислителе с одновременным изменением размера БПФ (в два раза). Этот режим (F2 по входу 18 равняется логическому "0") применяется, как уже указывалось выше, с целью экономии размера ОЗУ.

Опишем сначала работу блока 10 в режиме конвейерного вычислителя (KON равняется логической "1") в случае, когда F2 равняется логическому "0". Порядок чисел, обработка которых ведется, поступает с входа 20 на мультиплексор 468, а затем и на информационные входы регистров 469 и 470 в виде двоичного кода одновременно с приходом на вход интерполяторов вычислителя ДПФ очередной пачки частичных спектров. Запись в эти регистры осуществляется по сигналу S2, поступающему с входа 388. Сигнал S2 в режиме конвейерной обработки повторяет синхросигнал S2IN с входа 17 и при F2, равном логическому "0", поступает дважды в течение обработки одной пачки сигнальных отсчетов вследствие того, что с целью экономии ОЗУ на предыдущих этапах БПФ весь обрабатываемый массив данных разбивается на два равные (по числу отсчетов) части.

В соответствии с поступлением синхросигнала S2IN в указанном (F2 = log. 0) в режиме работает счетный триггер 327, вырабатывающий сигнал EF, поступающий на вход 386. Этот сигнал через логические элементы 2ИЛИ 463 и 464 коммутирует поступление тактовых импульсов S2 с входа 388 на регистры 469 и 470. В результате по прошествии двух тактовых импульсов S2 в один из этих регистров записывается порядок входных спектральных отсчетов первой половины обрабатываемых частичных спектров, а во второй регистр - второй половины.

Следует отметить, что благодаря инверсии сигнала S2 в элементах 2И-НЕ 465 и 466 запись порядков в регистры 469 и 470 осуществляется не по фронту, а по срезу импульса S2, длительность которого равняется длительности периода тактовых импульсов с входа 26.

Выходные сигналы регистров 469 и 470 сравниваются в вычитателе 471, который вырабатывает сигнал абсолютной разности и знака. Сигнал знака (второй выход вычитателя 471) подключен к группе элементов 2-2И-2ИЛИ 472, коммутирующей выходные сигналы регистров 469 и 470, так (используется элемент НЕ 473), чтобы на выход ее поступал всегда сигнал порядка большей (или равной) величины. Выходной сигнал группы элементов 2-2И-2ИЛИ 472 поступает на вход регистра 478. На тактовый вход этого регистра поступает сигнал S4 с входа 387. Сигнал S4 благодаря фильтрующему действию описанного выше триггера 330 повторяет собой только первый из синхроимпульсов S2IN, поступающих с входа 17. Вследствие задержки в формировании сигнала на выходе элемента 2-2И-2ИЛИ 472 (по крайней мере на один такт в регистрах 469, 470) выделенный сигнал максимального порядка записывается в регистр 478 только уже импульсом синхронизации следующей пачки частичных спектров.

Выходной сигнал порядка с выхода регистра 478 поступает в сумматор 481, где суммируется с выходным сигналом триггера 474, задержанным на два такта D-триггерах 484 и 486 и фиксирующим хотя бы одно превышение установленной разрядной сетки (сигнал VP), поступающее с входа 323. После возможного приращения порядок уже теперь выходных спектральных отсчетов фиксируется в регистре 484 выходным сигналом S12 синхронизации, поступающим с входа 36. Триггер 474 обнуляется сигналом S3, поступающим с входа 390, и опять готов к фиксации переполнения в процессе обработки следующей пачки частичных спектральных отсчетов. Необходимость задержки информации в триггерах 485 и 486 связана с более ранним приходом информации о переполнении, чем поступает сигнал по входу 26. В режиме, когда сигнал по входу 29 равен логической "1", группы элементов 2И-НЕ 488 и 489 управляют регистром 490 по R- и S-входам. В результате эта схема без задержки (в тактах сигнала 26) транслирует выходной сигнал регистра 484 на выход 37 - выход порядка отсчетов выходного частичного спектра РВ.

Сигнал абсолютной разности порядков входных массивов спектральных отсчетов, поступающих в первую и вторую половины времени обработки, с выхода вычитателя 471 подается на вход демультиплексора 475, а затем на один из его выходов (F0 или F1) в зависимости от знака разности, поступающей с вычитателя 471 на вход управления. На другом выходе демультиплексора 475 установлен нулевой код. Точно так же, как и сигнал порядка с выхода мультиплексора 472, сигнал разности порядков фиксируется с началом обработки следующей пачки спектральных отсчетов синхросигналом S4 по входу 387 в регистрах первой (476) и второй (477) половин пачки.

С выходов регистров 476 и 477 памяти, с одного нулевой, а с другого равный разности порядков сигнал поступает каждый на свой сумматор, на другой вход которого подается сигнал фиксации переполнения. Выходные сигналы сумматоров фиксируются в регистрах 482 и 483, выходы 321 и 322 которых - первый и второй выходы (Eds1 и Eds2) блока 10. Сигналы с выходов 321 и 322 используются в схеме ОЗУ для коррекции двоичного представления спектральных отсчетов перед подачей их на дальнейшую обработку путем сдвига разрядов в соответствии со значениями сигналов Eds1 и Eds2. Таким образом происходит выравнивание порядков и их одновременное изменение в соответствии с обнаруженным переполнением.

Следует отметить, что указанный механизм выравнивания порядков правильно работает, если разность кодов Nfft и Lfft (т.е. объявленного размера ДПФ, выраженного степенью числа два, и текущего этапа БПФ) равняется единице, так как только в этом случае первая вторая половины всего массива входных спектральных отсчетов после обработки в процессе БПФ представляют собой первый и второй выходные спектры, подаваемые одновременно для дальнейшей обработки. Если на следующем этапе БПФ Nfft не изменяется, а Lfft увеличивается (каждый раз) на единицу, то этот этап БПФ оказывается последним. Если оба кода увеличиваются на единицу (т.е. опять запланировано увеличение размера ДПФ и необходимой памяти ОЗУ), то следующий за описанным этап можно считать предпоследним и при его выполнении следует включать режим сравнения порядков половин спектральных отсчетов (F2 = log.0).

В режиме, когда Nfft остается таким же, как и на предыдущем этапе, сигнал F2 по входу устанавливается равным логической "1", элементы 2И-НЕ 465 и 466 являются одновременно прозрачными для сигнала S2 с входа 388 и в регистры 469 и 479 записывается одна и та же информация. Сравнения порядков не требуется, коды на выходах регистров 476 и 477 памяти равны нулю и сумматоры 479 и 480 отражают только факт вероятного переполнения (на один разряд). На один разряд может сместиться разрядная сетка представления спектра по обоим выходам.

Изменение порядка представления выходного спектра РВ по выходу 37 происходит так же, как и в случае F2 = log.0. В однопроцессорном вычислителе ДПФ порядок выходного спектра может изменяться от этапа к этапу. Поэтому выходной код порядка представления спектра с выхода регистра 484 памяти подается через мультиплексор 468 (KON = log.0) на вход регистров 469 и 470 и вся схема изменения порядка работает точно так же, как и при конвейерной обработке в случае F2 = log.1. Отличие только в механизме фиксации порядка выходного спектра, когда требуется проигнорировать все промежуточные изменения в процессе обработки на различных этапах БПФ, и в необходимости обнуления накопленного значения порядка каждый раз перед началом обработки следующей порции отсчетов сигнала.

Указанное достигается переводом триггера 490 в режим D-триггера путем установки с помощью сигнала по входу 29 на его R- и S-входах логического "0". Фиксация порядка РВ представления выходных спектральных отсчетов и обнуление триггеров 476, 477 и 478 происходит в этом случае синхронно с окончанием ДПФ с помощью сигнала S1М, поступающего с входа 389. Сигнал S1М получается на выходе триггера, включающего и выключающего счетчики адресов записи 345 и считывания 346.

Рассмотрим работу процессора БПФ (арифметического устройства 14), схема которого приведена на фиг.1, в целом. Удобнее всего рассматривать работу этой схемы совместно со схемами на фиг.24-26, где приводятся примеры использования процессора БПФ в конвейерном вычислителе ДПФ (фиг.24), а также в однопроцессорном вычислителе при последовательном (фиг.25) и параллельном (фиг.26) режимах обработки.

В конвейерном вычислителе ДПФ (фиг.24) используются последовательно соединенные устройства 14, число которых определяется количеством этапов БПФ. Режим конвейерной обработки достигается установкой по входу 29 (десятый вход устройства 14) логической "1". В этом случае информационные сигналы с входов 21-24 через мультиплексоры 1-5 поступают на входы интерполяторов 6-9. Порядок представления входных отсчетов Р поступает с входа 20 на четвертый вход блока 10 (пятый вход устройства 14). Выходные спектральные отсчеты снимаются с первого - четвертого выходов 38-41 блока 13. В конвейерном вычислителе выходные сигналы одного процессора БПФ являются входными для другого, а в последнем, N-м (494) сигналы с выходов 38 и 40 - квадратурные нечетные, а с выходов 39 и 41 - квадратурные четные составляющие выходного спектра. Выход 37 (третий выход блока 10 последнего процессора БПФ (494) - это выход порядка представления выходного спектра.

По входам 27 и 28 (шестой и седьмой входы устройства 14) производится установка соответственно размера ДПФ и номера этапа двоичным кодом. При этом размер ДПФ может быть установлен одинаковым на всех этапах БПФ и равным N. В этом случае ОЗУ на каждом этапе БПФ должно быть согласовано с числом N, т.е. рассчитано на весь объем обрабатываемой в данной порции сигнала информации. Выше указывалось, что с целью экономии оперативной памяти на промежуточных этапах можно уменьшить ее вдвое, потом еще вдвое и т.д. Соответственно необходимо также уменьшить на единицу и число, подаваемое на шестой вход устройства 14. Выше указывалось, что правильно работает блок 10 формирования приращения порядка чисел только в том случае, когда разность чисел, подаваемых на входы 27 и 28 (шестой и седьмой входы устройства 14 и первый и второй входы блока 12 управления), равна единице. Поэтому на предпоследнем этапе ДПФ необходимо установить по шестому и седьмому входам устройства 14 соответственно N и N-1, а на двенадцатом входе устройства 14 логической "0", что устанавливает режим выравнивания порядков. Уменьшение вдвое объема ОЗУ можно произвести только, начиная с третье (от конца) процессора БПФ, устанавливая в нем на шестом входе число N-1.

Если уменьшение объема ОЗУ желательно продолжить, то устанавливают на двенадцатом входе третьего от конца устройства 14 логический "0" и на шестом входе четвертого от конца устройства 14 число N-2 и т.д. Можно такую процедуру продолжить до начала конвейерной цепочки. В этом случае минимальный объем каждого ОЗУ на первом этапе может составить всего четыре ячейки (на входе 27 число 2). При этом на двенадцатом входе устройства 491 (14) устанавливается логическая "1".

Если в уменьшении объема ОЗУ нет необходимости, то на всех остальных (начиная с четвертого от конца) устанавливают на шестом входе процессоров 14 двоичное число N-1, как и на третьем от конца устройства 14, а на двенадцатых входах устройств 14 логическую "1".

По входу 25 (восьмой вход устройства 14) устанавливается режим прямого (DR = log. 0) или обратного преобразования. По входам 19 и 17 (девятый и десятый входы устройства 14) подаются сигналы синхронизации S1IN и S2IN. При этом на девятый вход первого устройства 14 (491) подается меандр с частотой, в два раза меньшей тактовой по входу 26 (пятнадцатые входы процессоров 14), вследствие того, что каждый частичный спектр на информационных входах элемента 491, производящего первый этап БПФ, состоит из двух одинаковых сигнальных отсчетов. На следующий этап БПФ синхросигнал S1IN подается с выхода первого. Он представляет собой один импульс положительной полярности на каждые четыре тактовых (в каждом входном частичном спектре четыре спектральных отсчета). На третьем этапе БПФ каждый синхросигнал S1IN приходится на восемь тактовых и т.д.

Синхросигнал S2IN, подаваемый по входу 17, имеет периодичность в соответствии с объявленной на данном этапе общей размерностью ДПФ. Так, если по входу 27 установлено число N, то периодичность синхросигнала S2IN равна двум в степени N.

В конвейерном вычислителе по входу 30 (тринадцатый вход процессора 14) устанавливается логический "0" с тем, чтобы мультиплексоры 455 и 456 установить в положение В и использовать все адресные выводы ОЗУ. В противном случае первый разряд ОЗУ бездействует.

Входы 15 и 26 (четырнадцатый и пятнадцатый входы процессора 14) используются соответственно для начальной установки счетчиков адреса и для подачи тактовых импульсов.

Включение устройства 14 в режиме однопроцессорного вычислителя при последовательной во времени обработке информации показано на фиг.25. Установка его в этот режим осуществляется подачей логического "0" на вход 29 (одиннадцатый вход устройства 14) и вход 30 (тринадцатый вход устройства 14). При этом допускается подача по входу 30 импульсов синхронизации.

Как следует из приведенной схемы включения устройства 495 и схемы, приведенной на фиг.1, квадратурные отсчеты сигнала поступают в устройство 14 по входам 21 и 22 (первый и второй входы блока 13 и устройства 14) в одну из пар ОЗУ (ОЗУ 1-2 или ОЗУ 3-4). Готовые спектральные отсчеты снимаются с выходов 32-34 (пятый - восьмой выходы блока 13). Порядок представления выходных спектральных отсчетов, как и в конвейерном вычислителе, снимается с выхода 37, а информация о порядке входных чисел в однопроцессорном вычислителе ДПФ не используется.

Установка размера готового спектра, как и в конвейерном вычислителе, производится по входу 27 (шестой вход устройства 14), а по входу 28 (седьмой вход устройства 14) необходимо установить число 0 с тем, чтобы информация, поступающая по этому входу, не искажала работу блока 12 управления. По входу 18 (двенадцатый вход процессора 14) необходимо установить логическую "1", так как в режиме однопроцессорной обработки изменения объема используемого ОЗУ не происходит.

По входу 25 (восьмой вход устройства 14), как в конвейерном вычислителе, устанавливается режим прямого или обратного преобразования Фурье.

Вход 17 (десятый вход устройства 14) используется для установки режима внутренней (L) S2IN = log.0 или внешней синхронизации. При этом, как следует из схемы на фиг.17, логическая "1" по входу S устанавливает триггер 341 в фиксированное положение и исключает самосинхронизацию блока управления. Синхронизация работы процессора БПФ осуществляется в этом случае по входу 30 (тринадцатый вход устройства 14) путем подачи положительного синхроимпульса, который запускает счетчик 366 адресов записи исходной информации и считывания готового спектра.

Входы 15 и 26 (четырнадцатый и пятнадцатый входы устройства 14) используются, как и в конвейерном вычислителе, соответственно для начальной установки счетчиков адреса и для подачи тактовых импульсов.

В качестве выходных сигналов однопроцессорного вычислителя можно использовать сигналы по выходам 36 и 389 (одиннадцатый и двенадцатый выходы процессора 14). Первый из них (S12) свидетельствует об окончании каждого этапа БПФ, а второй (S1М) - об окончании ДПФ очередной пачки отсчетов входного сигнала.

Схема включения параллельного режима обработки информации в однопроцессорном вычислителе ДПФ показана на фиг.26. Приведенная схема включения устройства 496 (14) отличается от описанной выше установкой по входам 17 и 30 (десятый и тринадцатый входы процессора 14) логической "1" и использованием второго входа 16 тактовых импульсов для синхронизации работы счетчика 366 в соответствии с темпом поступления входной информации. Выше отмечалось, что режим параллельной обработки отличается тем, что поступление отсчетов входного сигнала и съем готового спектра происходят синхронно, а вычисление ДПФ осуществляется в промежутках между этими операциями. При этом сигналом CS с седьмого выхода блока 12 управления происходит стробирование работы блока 11 когерентных сумматоров по его двенадцатому входу вместе с интерполяторами (через их четвертые входы) и блока 13 (по тринадцатому входу). Установка логической "1" на входах 17 и 30 обеспечивает работу счетчика 366 в режиме самозапуска.

С целью продемонстрировать работоспособность предлагаемого способа БПФ была построена математическая модель, реализующая данный алгоритм.

Моделирование строилось по схеме: вычисление спектра гармонического сигнала заданной частоты и начальной фазы, а затем восстановление исходного сигнала по ранее полученному спектру. Для моделирования была взята гармоническая последовательность с относительной частотой 5,5, состоящая из Nz = 128 отсчетов. На фиг.27 представлены графики, иллюстрирующие прямое ДПФ. Изображение действительных и мнимых составляющих исходного сигнала приводится слева вверху, результаты БПФ на промежуточных этапах в виде модулей квадратурных составляющих занимают весь правый столбец и окончательный результат - выходное БПФ - находится слева внизу. Как видно из фиг.27, на каждом из промежуточных этапов получается готовое БПФ соответствующей части исходной последовательности. Так, например, после первого этапа БПФ получаются 64 спектра из четырех отсчетов по двум отсчетам исходного сигнала, после второго - 32 спектра из восьми отсчетов по четырем отсчетом исходного сигнала и т.д. В конце концов получается спектр исходной последовательности по всей ее длине.

Фиг.28 иллюстрирует процесс обратного преобразования. Здесь так же, как и на фиг. 27, слева вверху исходная последовательность (в данном случае спектр), слева внизу восстановленный сигнал, а правую колонку занимают графики промежуточных этапов. После первого этапа обратного БПФ получается 1/64 часть первоначальной синусоиды, после второго - 1/32 часть и т.д. Восстановленная последовательность, как следует из левого нижнего графика, имеет плотность отсчетов в 2 раза большую, чем у первоначальной последовательности, хотя ее параметры (частота, начальная фаза и амплитуда) остались неизменными.

Более подробный спектр (и восстановленный сигнал) получается вследствие того, что интерполяционный вычислитель БПФ в данном случае вычисляет не только основные (четные) спектральные (сигнальные) отсчеты, но и промежуточные (нечетные).

Предлагаемая структура ДПФ позволит эффективно использовать процессор БПФ не только в качестве многофункциональных анализаторов спектра, но и в устройствах преобразования многоканальных систем связи с временным разделением каналов (требующих синхронизацию) в системы с частотным разделением каналов (асинхронные) и обратно, в однокристальных многофункциональных цифровых фильтрах (особенно эффективно здесь использование параллельного режима работы процессора), в устройствах высокоскоростной свертки сверхширокополосных сигналов, например сигналов с дискретной или линейной частотной модуляцией (здесь используется свойство процессора БПФ составлять композицию из результатов согласованной обработки отдельных частей сложного сигнала) и т.п. Реализация последнего из перечисленных устройств на основе БПФ позволит вчетверо сократить аппаратурные затраты по сравнению с традиционной реализацией, основанной на операции "бабочка", по схеме: прямое БПФ - умножение на частотную характеристику согласованного фильтра - обратное БПФ. Наиболее предпочтительно реализовать предлагаемый процессор БПФ в составе одной микросхемы, например, по технологии КМОП БМК.

Похожие патенты RU2015550C1

название год авторы номер документа
Устройство для цифровой фильтрации на основе дискретного преобразования Фурье 1990
  • Балабанов Валерий Васильевич
  • Павлова Татьяна Ивановна
  • Толстов Алексей Николаевич
  • Чеботов Александр Владимирович
SU1795475A1
Цифровой анализатор спектра 1987
  • Столбов Михаил Борисович
  • Якименко Владимир Иванович
  • Паньшин Игорь Геннадьевич
  • Эпштейн Цецилия Борисовна
SU1413545A1
Цифровой адаптивный фильтр 1990
  • Витязев Владимир Викторович
  • Кузнецов Александр Иванович
  • Шевалдин Борис Михайлович
  • Широков Владимир Алексеевич
SU1837322A1
Процессор быстрых дискретных преобразований 1989
  • Гагарин Юрий Иванович
  • Шифрин Владислав Владиславович
SU1725227A1
ЭЛЕКТРОННЫЕ КЛЮЧ И ЗАМОК 1992
  • Васильев Юрий Геннадьевич
RU2117745C1
Устройство для цифровой обработки сигналов 1985
  • Альховик Александр Сергеевич
  • Байков Владимир Дмитриевич
  • Дорофеев Иван Геннадиевич
  • Попов Алексей Максимович
SU1336028A1
Цифровой анализатор 1981
  • Зеленков Альберт Васильевич
SU1057872A1
Многоканальное устройство тестового контроля логических узлов 1990
  • Мисуловин Алексей Леонидович
  • Матвеева Ольга Владимировна
  • Касперович Людмила Викторовна
SU1837295A1
СПОСОБ ПЕРЕДАЧИ И ПРИЕМА КОМАНД ПО КАНАЛУ СВЯЗИ 2004
  • Чирков Юрий Геннадьевич
  • Чирков Геннадий Васильевич
  • Чирков Алексей Геннадьевич
RU2285336C2
Цифровой спектроанализатор 1982
  • Козко Юрий Анатольевич
  • Моргулев Сергей Александрович
  • Павлов Андрей Леонидович
  • Фин Виктор Александрович
SU1092518A1

Иллюстрации к изобретению RU 2 015 550 C1

Реферат патента 1994 года АРИФМЕТИЧЕСКОЕ УСТРОЙСТВО ДЛЯ ВЫПОЛНЕНИЯ ДИСКРЕТНОГО ПРЕОБРАЗОВАНИЯ ФУРЬЕ

Изобретение относится к вычислительной технике и радиотехнике и предназначено для применения в анализаторах спектра и устройствах цифровой обработки сигналов. Цель изобретения - увеличение точности преобразования. Устройство содержит мультиплексоры, интерполяторы, блок формирования приращения порядка чисел, блок когерентных сумматоров, блок управления, блок оперативной памяти. 17 з.п.ф-лы, 19 табл., 28 ил.

Формула изобретения RU 2 015 550 C1

1. Арифметическое устройство для выполнения дискретного преобразования Фурье, содержащее четыре интерполятора и блок когерентных сумматоров, при этом первые и вторые выходы с первого по четвертый интерполяторов соединены соответственно с первого по восьмой входами блока когерентных сумматоров, отличающееся тем, что устройство содержит блок формирования приращения порядка, блок управления, пять мультиплексоров, блок оперативной памяти, первые информационные входы с первого по четвертый мультиплексоров соединены с первого по четвертый выходами блока оперативной памяти соответственно, с первого по четвертый информационные входы устройства соединены с вторыми информационными входами с первого по четвертый мультиплексоров соответственно, выходы которых соединены с первыми информационными входами с первого по четвертый интерполяторов соответственно, первый и второй информационные входы устройства соединены с первым и вторым информационными входами блока оперативной памяти, с третьего по шестой информационные входы которого соединены с первого по четвертый выходами результата блока когерентных сумматоров, выход тактовых сигналов которого соединен с тактовыми входами с первого по четвертый интерполяторов, синхровходы которых соединены с синхровходом блока когерентных сумматоров и с выходом пятого мультиплексора, первый информационный вход которого соединен с первым входом синхронизации устройства, вход установки режима конвейерной или однопроцессорной обработки устройства соединен с одноименными входами блока формирования приращения порядка и блока управления и с управляющими входами с первого по пятый мультиплексоров, первый выход блока управления соединен с управляющими входами номера текущего этапа преобразования Фурье с первого по четвертый интерполяторов и блока когерентных сумматоров, вход установки которого соединен с входом признака переключения прямого и обратного преобразования Фурье устройства, входы установки размера дискретного преобразования Фурье на выходе анализатора спектра и на данном этапе преобразования которого соединены с одноименными входами блока управления, второй и третий выходы которого соединены с первым и вторым адресными входами соответственно блока оперативной памяти, вход управления записью основных и промежуточных отсчетов спектра которого соединен с четвертым выходом блока управления, пятый выход которого соединен с входом управления считыванием нечетных и четных частичных спектров блока оперативной памяти, первый и второй входы признака управления сдвигом которого соединены с первым и вторым выходами блока формирования приращения порядка, третий выход которого соединен с выходом порядка выходных чисел устройства, входы порядка входных чисел и начальной установки которого соединены с одноименными входами блока формирования приращения порядка, вход признака текущего изменения размера выходного дискретного преобразования Фурье соединен с одноименными входами блока управления и блока формирования приращения порядка чисел устройства, первый вход тактовых импульсов которого соединен с тактовыми входами блока оперативной памяти, блока когерентных сумматоров и блока формирования приращения порядка, вход признака переполнения которого соединен с выходом признака сигнала переполнения блока оперативной памяти, с первого по четвертый выходы которого являются выходами спектра при конвейерной обработке устройства, выходы спектра при однопроцессорной обработке которого являются с пятого по восьмой выходами блока оперативной памяти, вход управления режимами записи/считывания которого соединен с шестым выходом блока управления, седьмой выход которого соединен с входами управления режимами записи исходной информации и считывания готового спектра или преобразования Фурье блока оперативной памяти и блока когерентных сумматоров, восьмой выход блока управления соединен с вторым информационным входом пятого мультиплексора и является выходом признака считывания очередного частичного спектра промежуточного преобразования Фурье устройства, выход признака окончания очередного этапа преобразования Фурье которого соединен с одноименным входом блока формирования приращения порядка и с девятым выходом блока управления, десятый выход которого соединен с входом признака окончания дискретного преобразования Фурье в однопроцессорном вычислителе блока формирования приращения порядка, вход начала обработки присоединяемого частичного спектра при удвоении размера преобразования Фурье на данном этапе которого соединен с одиннадцатым выходом блока управления, двенадцатый выход которого соединен с входом первого признака начала каждого этапа преобразования Фурье блока формирования приращения порядка, вход второго признака начала каждого этапа преобразования Фурье в данном устройстве которого соединен с тринадцатым выходом блока управления, четырнадцатый выход которого соединен с входом признака считывания приращения порядка чисел выходного частичного спектра блока формирования приращения порядка чисел, входы установки режима параллельной или последовательной обработки и начальной установки блока управления соединены с одноименными входами устройства, первый и второй тактовые входы которого соединены с одноименными входами блока управления, вход сигнала сопровождения режима конвейерной обработки которого соединен с вторым входом синхронизации устройства. 2. Устройство по п.1, отличающееся тем, что блок когерентных сумматоров содержит четыре когерентных сумматора, узел задержки и элемент И, первый и второй входы которого соединены с входами управления режимами записи исходной информации, считывания готового спектра или преобразования Фурье и тактовым входом блока соответственно, управляющий вход узла задержки соединен с входом номера текущего преобразования Фурье блока, синхровход которого соединен с информационным входом узла задержки, тактовый вход которого соединен с выходом элемента И, выходом тактовых сигналов блока и тактовыми входами с первого по четвертый когерентных сумматоров, входы синхронизации которых соединены с выходом узла задержки, вход признака переключения прямого или обратного дискретного преобразования Фурье блока соединены с одноименными входами с первого по четвертый сумматоров, входы признака переключения режимов суммирования основных и промежуточных отсчетов первого и второго сумматоров соединены с входом логического нуля блока, вход логической единицы которого соединен с входами признака переключения режима суммирования основных и промежуточных отсчетов третьего и четвертого когерентных сумматоров, выходы четырех сумматоров соединены с выходом результата блока, первый, третий, второй и четвертый информационные входы которого соединены с первыми информационными входами с первого по четвертый когерентных сумматоров соответственно, пятый, седьмой, шестой и восьмой информационные входы блока соединены с вторыми информационными входами с первого по четвертый когерентных сумматоров соответственно, седьмой, первый, восьмой и второй информационные входы блока соединены с третьими информационными входами с первого по четвертый когерентных сумматоров соответственно, третий, пятый, четвертый и шестой информационные входы блока соединены с четвертыми информационными входами с первого по четвертый когерентных сумматоров соответственно. 3. Устройство по п.1, отличающееся тем, что интерполятор содержит узел синхронизации, узел задержки, n/2 двувходовых сумматоров, (n+1) регистров, n/2 умножителей, многовходовый сумматор, причем вход синхронизации интерполятора соединен с синхровходом узла синхронизации, тактовый вход которого соединен с тактовым входом интерполятора и тактовыми входами всех регистров и узла задержки, первый, второй и третий синхровходы которого соединены с первого по третий выходами соответственно узла синхронизации, информационный вход интерполятора соединен с информационным входом узла задержки, с первого по n/2-й выходы узла задержки соединены с первыми информационными входами с первого по n/2-й двувходовых сумматоров, вторые информационные входы которых соединены с (n/2+1)-го по n-й выходами узла задержки, (n+1)-й выход узла задержки соединен с первым выходом интерполятора, выход i-го (где i=1,2,n/2) сумматора соединен с информационным входом регистра, выход i-го регистра соединен с первым информационным входом i-го умножителя, второй информационный вход которого соединен с входом i-го весового коэффициента интерполятора, выход i-го умножителя соединен с информационным входом (n/2+i)-го регистра, выход которого соединен с i-м информационным входом многовходового сумматора, выход которого соединен с информационным входом (n+1)-го регистра, выход которого соединен с вторым выходом интерполятора. 4. Устройство по п.1, отличающееся тем, что блок оперативной памяти содержит четыре элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, двенадцать мультиплексоров, четыре узла оперативной памяти, два элемента НЕ, элемент ИЛИ, два элемента И, D-триггер, четыре сдвигателя и восемь регистров, выходы которых являются информационными выходами блока, выходы с первого по четвертый мультиплексоров соединены с первыми информационными входами с пятого по восьмой мультиплексоров, вторые информационные входы пятого и шестого мультиплексоров соединены с первым информационным входом блока, второй информационный вход которого соединен с вторыми информационными входами седьмого и восьмого мультиплексоров, третий, четвертый, пятый и шестой информационные входы блока соединены с первыми информационными входами первого, третьего, второго и четвертого мультиплексоров соответственно, третий, четвертый, пятый и шестой информационные входы блока соединены с вторыми информационными входами второго, четвертого, первого и третьего мультиплексоров соответственно, с третьего по шестой информационные входы старших разрядов блока соединены с первым и вторым входами с первого по четвертый элементов ИСКЛЮЧАЮЩЕЕ ИЛИ соответственно, выходы которых соединены с первого по четвертый входами элемента ИЛИ, выход которого соединен с выходом признака сигнала переполнения блока, вход управления записью основных или промежуточных спектральных отсчетов которого соединен с управляющими входами с первого по четвертый мультиплексоров, вход управления режимами записи исходной информации и считывания готового спектра или преобразования Фурье блока соединен с управляющими входами с пятого по восьмой мультиплексоров и информационным входом D-триггера, тактовый вход которого соединен с тактовым входом блока, тактовыми входами пятого, шестого, седьмого и восьмого мультиплексоров, с первыми входами первого и второго элементов И, вторые входы которых соединены с выходом и входом соответственно первого элемента НЕ, вход которого соединен с выходом D-триггера, выход пятого мультиплексора соединен с первыми информационными входами первого и второго узлов оперативной памяти, вторые информационные входы которых соединены с выходом седьмого мультиплексора, выход шестого мультиплексора соединен с первыми информационными входами третьего и четвертого узлов оперативной памяти, вторые информационные входы которых соединены с выходом восьмого мультиплексора, первый адресный вход блока соединен с адресными входами первого и третьего узлов оперативной памяти, адресные входы второго и четвертого узлов оперативной памяти соединены с вторым адресным входом блока, вход управления режимами записи/считывания которого соединен с одноименными входами второго и четвертого узлов оперативной памяти и входом второго элемента НЕ, выход которого соединен с входами управления режимами записи/считывания первого и третьего узлов оперативной памяти, первые выходы первого и второго узлов оперативной памяти соединены с первыми информационными входами девятого и десятого мультиплексоров, вторые информационные входы которых соединены с первыми выходами второго и первого узлов оперативной памяти, вторые выходы первого и второго узлов оперативной памяти соединены с первыми информационными входами одиннадцатого и двенадцатого мультиплексоров, вторые информационные входы которых соединены с вторыми выходами второго и первого узлов оперативной памяти, первые и вторые выходы первого узла оперативной памяти соединены с одноименными выходами третьего узла оперативной памяти, первые и вторые выходы второго узла оперативной памяти соединены с одноименными выходами четвертого узла оперативной памяти, вход управления считыванием четных и нечетных частичных спектров блока соединен с управляющими входами с девятого по двенадцатый мультиплексоров, выход (j+8)-го мультиплексора (где j=1,2,3,4) соединен с информационным входом j-го сдвигателя, выход которого соединен с информационным входом (2j-1)-го регистра, информационный вход 2j-го регистра соединен с выходом (j+8)го мультиплексора, входы управления сдвигом первого и третьего сдвигателей соединены с первым входом управления сдвигом блока, второй вход управления сдвигом которого соединен с входами управления сдвигом второго и четвертого сдвигателей, выходы первого и второго элементов И соединены с тактовыми входами 2j-го и (2j-1)-го регистров соответственно. 5. Устройство по п.1, отличающееся тем, что блок управления содержит пять мультиплексоров, схему сравнения, четыре дешифратора, счетный триггер, семь элементов И, три элемента И - НЕ, три элемента И - ИЛИ, четыре счетчика, восемь элементов ИЛИ, группу элементов ИЛИ, четыре RS-триггера, девять D-триггеров, узел формирования адреса записи, D-триггер с RS-входами, узел формирования адреса чтения, элемент ИСКЛЮЧАЮЩЕЕ ИЛИ, демультиплексор, узел задержки, узел переключения, сумматор, три RS-счетных триггера, группу элементов И, первые информационные входы первого и второго мультиплексоров соединены с выходом первого D-триггера, информационным входом демультиплексора, счетным входом первого счетчика, входом сброса второго D-триггера, выход которого соединен с информационным входом первого D-триггера, тактовый вход которого соединен с тактовыми входами узлов формирования адресов записи и чтения, выходом первого элемента И, счетными входами второго и третьего счетчиков, тактовым входом узла задержки, управляющий вход которого соединен с выходом первого дешифратора, является первым выходом блока и соединен с управляющим входом узла формирования адресов чтения, информационный вход которого соединен с выходами третьего счетчика и первыми входами первого элемента И - ИЛИ, вторые входы которого соединены с выходами второго дешифратора, вход которого соединен с входами третьего и четвертого дешифраторов, первыми входами схемы сравнения и входом размера преобразования дискретного преобразования Фурье блока, вход размера преобразования Фурье на данном этапе которого соединен с входами элементов ИЛИ группы, вторые входы которых соединены с выходами первого счетчика, вход сброса которого соединен с выходом первого элемента ИЛИ, первый вход которого соединен с входом переноса сумматора, с управляющими входами первого и второго мультиплексоров, входом установки режима конвейерной или однопроцессорной обработки сигнала блока, с S-входом третьего D-триггера и первым входом четвертого элемента ИЛИ, второй вход первого элемента ИЛИ соединен с выходом второго элемента И, первый вход которого соединен с выходом D-триггера с RS-входами, с входом сброса узла задержки, первыми входами второго и третьего элементов ИЛИ, третьего элемента И, десятым выходом блока, информационным входом четвертого D-треггера, тактовый вход которого соединен с первым тактовым входом блока, тактовыми входами третьего, пятого, шестого, седьмого и восьмого D-триггеров, тактовым входом узла переключения, первыми входами первого, четвертого и пятого элементов И, второй вход которого соединен с вторым входом второго элемента И, выходом четвертого элемента ИЛИ, входом установки в "1" первого D-триггера, вход сигнала сопровождения режима конвейерной обработки блока соединен с вторым информационным входом первого мультиплексора и входом установки в "1" четвертого D-триггера, инверсный выход которого соединен с вторым входом третьего элемента И, выход которого соединен с первым входом пятого элемента ИЛИ, второй вход которого соединен с входами первого и второго элементов И - НЕ, входом установки в единицу пятого D-триггера и входом установки режима параллельной или последовательной обработки сигнала блока, с входом смещения разрядов узла переключения, вход изменения размера преобразования Фурье при конвейерной обработке блока соединен с первым входом установки в "1" счетного триггера, второй вход установки в "1" которого соединен с входом установки в "1" D-триггера с RS-входами, информационным входом третьего D-триггера, входом начальной установки блока и входами сброса первого и второго счетных RS-триггеров, счетные входы которых соединены с первым и вторым выходами демультиплексора соответственно, управляющий вход которого соединен с управляющим входом третьего мультиплексора, выходом первого элемента И - НЕ и вторым входом второго элемента И - НЕ, выход которого соединен с управляющим входом четвертого мультиплексора, первый информационный вход которого соединен с выходом первого счетного RS-триггера и с первым информационным входом третьего мультиплексора, второй информационный вход которого соединен с вторым информационным входом четвертого мультиплексора и выходом второго счетного RS-триггера, вход установки в "1" которого соединен с входом установки в "1" первого счетного RS-триггера и входом логической единицы блока, выходы третьего и четвертого мультиплексоров соединены с первым и вторым информационными входами пятого мультиплексора, выход которого соединен с информационным входом восьмого D-триггера и первым управляющим входом узла переключения, первый и второй выходы которого соединены с первым и вторым выходами блока, инверсный выход первого мультиплексора соединен с тактовым входом счетного триггера, выход которого является одиннадцатым выходом блока и первым входом шестого элемента И, выход которого соединен с тринадцатым выходом блока и информационным входом узла задержки, первый выход которого соединен с входом установки в "1" первого RS-триггера и вторым информационным входом второго мультиплексора, выход которого соединен с входом установки в единицу второго RS-триггера, вход сброса которого соединен с выходом третьего элемента ИЛИ, второй вход которого соединен с выходом первого элемента И - ИЛИ, выход второго RS-триггера соединен с входом сброса третьего счетчика, выход элементов ИЛИ группы соединен с вторым входом схемы сравнения, с входом первого дешифратора, первыми входами элементов И группы и первыми информационными входами сумматора, вторые информационные входы которого соединены с входом логического нуля блока, выход сумматора соединен с адресным входом узла формирования адреса чтения, выход схемы сравнения соединен с тактовым входом D-триггера с RS-входами и с вторыми входами элементов И группы, выходы которых соединены с адресными входами узла формирования адреса записи, информационные входы которого соединены с выходами второго счетчика и первыми входами второго элемента И - ИЛИ, вторые входы которого соединены с выходами четвертого дешифратора, выход второго элемента И - ИЛИ соединен с тактовым входом второго D-триггера и вторым входом второго элемента ИЛИ, выход которого соединен с входом сброса первого RS-триггера, выход которого соединен с входом сброса второго счетчика, выход пятого элемента И соединен с входом сброса D-триггера с RS-входами, информационный вход которого соединен с входом логической единицы блока, с информационным входом девятого D-триггера, тактовый вход которого соединен с вторым тактовым входом блока, выход девятого D-триггера соединен с первым входом седьмого элемента И, выход которого соединен с информационным входом пятого D-триггера, инверсный выход которого соединен с вторым входом седьмого элемента И и входом сброса девятого D-триггера, выход третьего D-триггера соединен с входом установки в "1" третьего счетного RS-триггера, с первыми входами шестого и седьмого элементов ИЛИ и входом сброса шестого D-триггера, выход которого соединен с вторыми входами четвертого и седьмого элементов ИЛИ и счетным входом третьего счетного RS-триггера, вход сброса которого соединен с входом логической единицы блока и информационным входом второго D-триггера, прямой выход третьего счетного RS-триггера соединен с первым выходом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, выход которого соединен с входом переключения адресного пространства узла переключения, второй управляющий вход которого соединен с управляющим входом пятого мультиплексора, информационным входом седьмого D-триггера, вторыми входами первого элемента И и элемента ИСКЛЮЧАЮЩЕЕ ИЛИ и выходом третьего элемента И - НЕ, первый вход которого соединен с прямым выходом пятого D-триггера и вторым входом четвертого элемента И, выход которого соединен со счетным входом четвертого счетчика, вход сброса которого соединен с вторым входом третьего элемента И -НЕ и выходом третьего RS-триггера, входы установки в "1" и "0" которого соединены с выходами пятого и шестого элементов ИЛИ соответственно, второй вход шестого элемента ИЛИ соединен с входом сброса четвертого RS-триггера и выходом третьего элемента И - ИЛИ, входы первой группы которого соединены с выходами третьего дешифратора, выход седьмого элемента ИЛИ соединен с входом установки в "1" четвертого RS-триггера, выход которого соединен с информационным входом шестого D-триггера, прямой выход первого мультиплексора соединен с вторым входом шестого элемента И и двенадцатым выходом блока, второй выход узла задержки соединен с девятым выходом блока и первым входом восьмого элемента ИЛИ, выход которого соединен с восьмым выходом блока, четырнадцатый выход которого соединен с третьим выходом узла задержки, первый и второй выходы узла формирования адреса записи соединены с четвертым выходом блока и первым информационным входом узла переключения соответственно, первый выход узла формирования адреса чтения соединен с вторым информационным входом узла переключения, третий информационный вход которого соединен с выходами четвертого счетчика и вторым входом третьего элемента И - ИЛИ, второй и третий выходы узла формирования адреса чтения соединены с пятым выходом блока и вторым входом восьмого элемента ИЛИ соответственно, вход логической единицы блока соединен с входами сброса восьмого и седьмого D-триггеров, выходы которых соединены с шестым и седьмым выходами блока соответственно, инверсный выход третьего D-триггера соединен с вторым входом первого элемента И - НЕ. 6. Устройство по п.1, отличающееся тем, что блок формирования приращения порядка содержит два элемента ИЛИ, два элемента И - НЕ, два элемента НЕ, триггер, две группы элементов И - НЕ, вычитатель, демультиплексор, девять регистров, три D-триггера, три сумматора, две группы элементов И - ИЛИ, причем вход начала обработки присоединяемого частичного спектра при удвоении размера преобразования Фурье на данном этапе блока соединен с первым входом первого элемента ИЛИ, второй вход которого соединен с входом признака изменения размера преобразования Фурье при конвейерной обработке блока и первым входом второго элемента ИЛИ, выход которого соединен с первым входом первого элемента И - НЕ, второй вход которого соединен с входом признака начала каждого этапа преобразования Фурье блока и первым входом второго элемента И - НЕ, второй вход которого соединен с выходом первого и вторым входом второго элементов ИЛИ, выходы первого и второго элементов И - НЕ соединены с тактовыми входами первого и второго регистров соответственно, информационные входы которых соединены с выходами элементов И - ИЛИ первой группы, первые входы которых соединены с входом порядка входных чисел блока, вход установки режима конвейерной или однопроцессорной обработки сигнала которого соединен с входом первого элемента НЕ и вторыми входами элементов И - ИЛИ первой группы и первыми входами элементов И - НЕ первой и второй групп, вход начальной установки блока соединен с входами сброса первого, второго, третьего, четвертого и пятого регистров, выходы третьего и четвертого регистров соединены соответственно с первым и вторым выходами блока, выходы первого регистра соединены с входами вычитаемого вычитателя и первыми входами элементов И - ИЛИ второй группы, вторые входы которых соединены с выходами второго регистра и входами уменьшаемого вычитателя, выход разности которого соединен с информационным входом демультиплексора, управляющий вход которого соединен с выходом заема вычитателя, третьими входами элементов И - ИЛИ второй группы и входом второго элемента НЕ, выход которого соединен с четвертыми входами элементов И - ИЛИ второй группы, первые и вторые выходы демультиплексора и выходы элементов И - ИЛИ второй группы соединены с информационными входами шестого, седьмого и восьмого регистров соответственно, тактовые входы и входы сброса которых соединены с входами соответственно признака начала каждого этапа преобразования Фурье в данном устройстве и периода одного этапа преобразования Фурье блока, вход признака переполнения которого соединен с входом установки в "1" триггера, выход которого соединен с информационным входом первого D-триггера, тактовый вход которого соединен с тактовыми входами второго и третьего D-триггеров и тактовым входом блока, выходы шестого, седьмого и восьмого регистров соединены с первыми информационными входами первого, второго и третьего сумматоров соответственно, выходы которых соединены с информационными входами третьего, четвертого и пятого регистров соответственно, вход признака считывания порядка чисел выходного частичного спектра блока соединен с входом сброса триггера и информационным входом третьего D-триггера, выход которого соединен с тактовыми входами третьего и четвертого регистров, тактовый вход пятого регистра соединен с входом признака окончания одного этапа преобразования Фурье блока, выход первого элемента НЕ соединен с третьими входами элементов И - ИЛИ первой группы, четвертые входы которых соединены с вторыми входами элементов И первой группы, выходами пятого регистра и информационными входами девятого регистра, входы сброса которого соединены с выходами элементов И первой группы и вторыми входами элементов И второй группы, выходы которых соединены с входами установки в "1" девятого регистра, выход которого соединен с третьим выходом блока, вход сброса восьмого регистра соединен с тактовым входом девятого регистра, выход первого D-триггера соединен с вторыми информационными входами первого и второго сумматоров и информационным входом второго D-триггера, выход которого соединен с вторым информационным входом третьего сумматора. 7. Устройство по п.2, отличающееся тем, что когерентный сумматор содержит шесть элементов И, два элемента ИЛИ, два элемента НЕ, пять элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, три сумматора, семь регистров, счетчик и элемент И - НЕ, причем с первого по четвертый информационные входы сумматора соединены с первыми входами с первого по четвертый элементов И соответственно, выходы которых соединены с первыми входами с первого по четвертый элементов ИСКЛЮЧАЮЩЕЕ ИЛИ соответственно, выходы которых соединены с информационными входами с первого по четвертый регистров соответственно, тактовые входы которых соединены с тактовыми входами пятого, шестого и седьмого регистров, счетчика и тактовым входом сумматора, вход синхронизации которого соединен с первыми входами пятого и шестого элементов И, выходы которых соединены с входами установки "1" и "0" соответственно счетчика, вход изменения направления счета которого соединен с первым входом элемента И - НЕ, вторым входом пятого элемента И и входом установки прямого и обратного преобразования Фурье сумматора, вход признака переключения суммирования основных или промежуточных отсчетов которого соединен с третьим входом пятого элемента И, вторым входом элемента И - НЕ, первыми входами первого и второго элементов ИЛИ, выход элемента И - НЕ соединен с вторым входом шестого элемента И, выход нулевого разряда счетчика соединен с первым входом пятого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, вторым входом первого элемента ИЛИ и входом первого элемента НЕ, выход которого соединен с вторым входом второго элемента ИЛИ, выход которого соединен с вторыми входами третьего и четвертого элементов И, вторые входы первого и второго элементов И соединены с выходом первого элемента ИЛИ, выход первого разряда счетчика соединен с входом второго элемента НЕ и вторыми входами третьего и пятого элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, выход которого соединен с вторыми входами первого и второго элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, выход второго элемента НЕ соединен с вторым входом четвертого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, выходы первого и второго регистров соединены с первым и вторым информационными входами соответственно первого сумматора, выход которого соединен с информационным входом пятого регистра, выходы третьего и четвертого регистров соединены с первым и вторым информационными входами второго сумматора, выход которого соединен с информационным входом шестого регистра, выходы пятого и шестого регистров соединены с первым и вторым информационными входами соответственно третьего сумматора, выход которого соединен с информационным входом седьмого регистра, выход которого соединен с выходом когерентного сумматора. 8. Устройство по п. 3, отличающееся тем, что узел задержки содержит (2n-1) регистров, n мультиплексоров, элемент И, регистр сдвига, элемент ИСКЛЮЧАЮЩЕЕ ИЛИ, причем информационный вход l-го регистра (где l=1,2,...,n) соединен с выходом l-го мультиплексора, l-й выход узла соединен с выходом l-го регистра, первый информационный вход первого мультиплексора соединен с информационным входом узла и информационным входом (n+1)-го регистра, выход (n+i)-го регистра соединен с вторыми информационными входами (i+1)-го мультиплексора и (n+i+1)-го регистра (где i=1,2,...,n/2), выход (n+n/2)-го регистра соединен с первым входом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, второй вход которого соединен с третьим входом синхронизации узла, выход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соединен с информационным входом (n+n/2+1)-го регистра, выход (n+n/2+p+1)-го регистра (где p=2,...,n/2-1) соединен с вторым информационным входом (n/2+1)-го мультиплексора и (n+n/2+p)-го регистра, тактовые входы с первого по n-й регистров соединены с тактовыми входами узла, регистра сдвига и первым входом элемента И, второй вход которого соединен с первым синхровходом узла и управляющим входом первого мультиплексора, выход элемента И соединен с тактовыми входами с (n+1)-го по (2n-1)-й регистров, выход (n/2+1)-го регистра соединен с информационным входом регистра сдвига, выход которого соединен с (n+1)-м выходом узла, второй синхровход узла соединен с управляющими входами с второго по n-й мультиплексоров. 9. Устройство по п.3, отличающееся тем, что узел синхронизации содержит n D-триггеров, два элемента ИЛИ, причем вход синхронизации узла соединен с информационным входом первого D-триггера, выход q-го D-триггера (q=1,2,..., n-1) соединен с информационным входом (q+1)-го D-триггера и q-м входом первого элемента ИЛИ, выход которого соединен с первым выходом узла, второй выход которого соединен с выходом n-го D-триггера, выход i-го D-триггера (где i=1,2,...,n/2) соединен с i-входом второго элемента ИЛИ, выход которого соединен с третьим выходом узла, тактовый вход которого соединен с тактовыми входами всех D-триггеров. 10. Устройство по п. 1, отличающееся тем, что интерполятор по шести спектральным отсчетам содержит управляемый узел синхронизации, управляемый узел задержки и весовой сумматор, причем первый, второй и третий управляющие входы управляемого узла синхронизации соединены соответственно с управляющими входами интерполятора и весового сумматора, вход синхронизации управляемого узла синхронизации соединен с синхровходом интерполятора, тактовый вход которого соединен с тактовым входом управляемого узла синхронизации, первым тактовым входом узла задержки и тактовым входом весового сумматора, выход которого соединен с вторым выходом интерполятора, информационный вход которого соединен с информационным входом управляемого узла задержки, с первого по шестой управляющие входы которого соединены с первого по шестой выходами управляемого узла синхронизации, седьмой и восьмой выходы которого соединены с вторым и третьим тактовыми входами управляемого узла задержки соответственно, с первого по шестой выходы которого соединены с первого по шестой информационными входами сумматора соответственно, седьмой выход управляемого узла задержки соединен с первым выходом интерполятора. 11. Устройство по п.10, отличающееся тем, что управляемый узел задержки содержит шесть D-триггеров, шесть элементов ИЛИ, четыре элемента НЕ, девять элементов И, причем вход первого D-триггера соединен с входом синхронизации узла, тактовый вход которого соединен с тактовыми входами всех D-триггеров, выход первого D-триггера соединен с D-входом второго D-триггера и первыми входами первого и второго элементов ИЛИ, выход второго D-триггера соединен с D-входом третьего D-триггера, вторыми входами первого и второго элементов ИЛИ, выход третьего D-триггера соединен с D-входом четвертого D-триггера, третьими входами первого и второго элементов ИЛИ и первым входом третьего элемента ИЛИ, выход четвертого D-триггера соединен с D-входом пятого D-триггера, четвертым входом первого элемента ИЛИ и первым входом элемента И, выход пятого D-триггера соединен с D-входом шестого D-триггера, пятым входом первого элемента ИЛИ, выход которого соединен с первыми входами второго и третьего элементов И, второй вход третьего элемента И соединен с первым входом четвертого элемента И и тактовым входом узла, первый управляющий вход которого соединен с входом первого элемента НЕ и первыми входами четвертого и пятого элементов ИЛИ, выход шестого D-триггера соединен с первым входом пятого элемента И и входом второго элемента НЕ, выход которого соединен с первым входом шестого элемента И, второй вход которого соединен с третьим управляющим входом узла и вторым входом пятого элемента И, выход которого соединен с вторым входом четвертого элемента ИЛИ и первым входом шестого элемента ИЛИ, второй вход которого соединен с выходом седьмого элемента И, первый вход которого соединен с входом третьего элемента НЕ и выходом третьего D-триггера, второй управляющий вход узла соединен с четвертым входом второго элемента ИЛИ, входом четвертого элемента НЕ, первым входом восьмого и вторыми входами седьмого и первого элементов И, выход третьего элемента НЕ соединен с вторым входом восьмого элемента И , выход которого соединен с вторым входом пятого элемента ИЛИ, выходы первого элемента НЕ и второго элемента ИЛИ соединены с первым и вторым входами девятого элемента И, выход четвертого элемента НЕ соединен с вторым входом второго элемента И, выход которого соединен с вторым входом четвертого элемента И, выход первого элемента И соединен с третьим входом четвертого элемента ИЛИ, выходы четвертого элемента ИЛИ, шестых элементов И и ИЛИ, пятого элемента ИЛИ, второго и девятого элементов И соединены с первого по шестой выходами узла, седьмой и восьмой выходы которого соединены с выходами третьего и четвертого элементов И соответственно. 12. Устройство по п.10, отличающееся тем, что управляемый узел задержки содержит шестнадцать D-триггеров, пять мультиплексоров, элемент 2И - 3ИЛИ - НЕ и элемент ИСКЛЮЧАЮЩЕЕ ИЛИ, первый татковый вход узла соединен с тактовыми входами с первого по шестой триггеров, информационный вход первого D-триггера соединен с прямым выходом первого мультиплексора, первый информационный вход которого соединен с информационными входами узла и седьмого D-триггера, тактовый вход которого соединен с тактовыми входами восьмого, девятого и десятого D-триггеров и вторым тактовым входом узла, третий тактовый вход которого соединен с тактовым входом одиннадцатого D-триггера, выходы с первого по шестой D-триггеров соединены с первого по шестой выходами узла соответственно, первый тактовый вход которого соединен с тактовыми входами с двенадцатого по шестнадцатый D-триггеров, выход последнего D-триггера соединен с седьмым выходом узла, первый управляющий вход которого соединен с управляющим входом второго мультиплексора, второй информационный вход первого мультиплексора соединен с выходом десятого D-триггера, информационный вход которого соединен с инверсным выходом девятого D-триггера, информационный вход которого соединен с выходом элемента ИCКЛЮЧАЮЩЕЕ ИЛИ и первым входом элемента 2И - 3ИЛИ - НЕ, первые входы второго и третьего элементов И которого соединены с инверсным выходом восьмого и прямым выходом второго D-триггеров соответственно, первый вход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соединен с инверсным выходом одиннадцатого D-триггера, с второго по четвертый управляющие входы узла соединены с вторыми входами третьего, второго и первого элементов И элемента 2И - 3ИЛИ - НЕ соответственно, первый управляющий вход узла соединен с управляющими входами с третьего по пятый мультиплексоров, пятый и шестой управляющие входы узла соединены с управляющим входом первого мультиплексора и вторым входом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соответственно, вход седьмого и первого D-триггеров соединены с первым и вторым информационными входами второго мультиплексора соответственно, инверсный выход которого соединен с информационным входом второго D-триггера, прямой выход седьмого и инверсный выход восьмого D-триггеров соединены с информационными входами восьмого и одиннадцатого D-триггеров соответственно, выход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соединен с информационным входом девятого D-триггера, выход элемента 2И - 3ИЛИ - НЕ соединен с информационным входом третьего D-триггера, инверсный выход одиннадцатого и прямой выход третьего D-триггеров соединены с первым и вторым информационными входами третьего мультиплексора, выход которого соединен с информационным входом четвертого D-триггера, выход которого соединен с первым информационным входом четвертого мультиплексора и информационным входом двенадцатого D-триггера, выход r-го D-триггера (где r=12, 13, 14, 15) соединен с информационным входом (r+1)-го D-триггера, инверсный выход девятого D-триггера соединен с вторым информационным входом четвертого мультиплексора, инверсный выход которого соединен с информационным входом пятого D-триггера, выход которого соединен с первым информационным входом пятого мультиплексора, второй информационный вход и инверсный выход которого соединены с выходом десятого и информационным входом шестого D-триггеров соответственно. 13. Устройство по п.10, отличающееся тем, что весовой сумматор содержит одиннадцать блоков масштабирования, два элемента НЕ, десять сумматоров, два регистра, четыре регистра с блоками масштабирования, регистр с умножителем, два элемента ИЛИ и элемент И, входы с первого по шестой блоков масштабирования подключены к соответственно с первого по шестой входам весового сумматора, входы седьмого и восьмого блоков масштабирования подключены к выходам соответственно первого и второго сумматоров, вход девятого блока масштабирования подключен к выходу регистра с умножителем, вход десятого блока масштабирования подключен к выходу третьего сумматора, вход одиннадцатого блока масштабирования подключен к выходу четвертого сумматора, информационные входы первого сумматора подключены к выходам соответственно третьего и четвертого блоков масштабирования, информационные входы второго сумматора подключены к выходам соответственно первого и шестого блоков масштабирования, информационные входы пятого сумматора подключены к выходам второго и пятого блоков масштабирования соответственно, информационные входы шестого сумматора подключены соответственно к выходам седьмого и восьмого блоков масштабирования, входы первого и второго элементов НЕ подключены к первому и второму управляющим входам весового сумматора соответственно, входы установки в "0" второго, пятого и шестого сумматоров подключены к третьему управляющему входу весового сумматора, информационные входы третьего сумматора подключены соответственно к выходам первого регистра и выходу первого элемента ИЛИ, информационные входы седьмого сумматора подключены соответственно к выходам второго элемента ИЛИ и шестого сумматора, информационные входы восьмого сумматора подключены к выходам регистра с умножителем и девятого блока масштабирования, информационные входы девятого сумматора подключены к выходам третьего сумматора и элемента И, информационные входы десятого сумматора подключены к выходам седьмого и восьмого сумматоров, информационные входы четвертого сумматора подключены к выходам девятого и десятого сумматоров, тактовые входы всех сумматоров соединены вместе и подключены к тактовому входу весового сумматора, информационный вход первого регистра подключен к выходу первого сумматора, а информационный вход второго регистра подключен к выходу второго сумматора, тактовые входы первого и второго регистров соединены вместе и подключены к тактовому входу весового сумматора, информационные входы с первого по четвертый регистров с блоками масштабирования соединены вместе и подключены к выходу первого сумматора, входы установки "0" с первого по четвертый регистров с блоками масштабирования подключены соответственно к выходу первого элемента НЕ, первому, второму и первому управляющим входам весового сумматора, тактовые входы всех регистров с блоками масштабирования соединены вместе и подключены к тактовому входу весового сумматора, информационный вход регистра с умножителем подключен к выходу пятого сумматора, первый и второй входы первого элемента ИЛИ подключены к выходам первого и второго регистров с блоками масштабирования, выходы третьего и четвертого регистров с блоками масштабирования соединены с первым и вторым входами второго элемента ИЛИ, третий вход которого соединен с выходом третьего регистра, первый и второй входы элемента И соединены с выходом десятого блока масштабирования и второго элемента НЕ, выход весового сумматора соединен с выходом одиннадцатого блока масштабирования. 14. Устройство по п.5, отличающееся тем, что узел формирования адресов записи содержит n-входовый мультиплексор, дешифратор, группу элементов ИЛИ, (n-1) мультиплексоров, регистр и D-триггер, причем информационные входы n-входового мультиплексора подключены к информационному входу узла, адресный вход n-входового мультиплексора подключен к одноименному входу узла и входу дешифратора, первый вход группы элементов ИЛИ подключен к выходу (n-1)-го разряда дешифратора, с второго по n-й входы элементов ИЛИ группы подключены соответственно к выходам с нулевого по (n-2)-й разрядов дешифратора, первый информационный вход q-го мультиплексора (где q=1,2,...,n-1) подключен к соответственно с нулевого по n-2-й разрядам информационного входа узла, второй информационный вход q-го мультиплексора подключен к соответственно с первого по n-1-й разрядам информационного входа узла, управляющий вход q-го мультиплексора подключен к q-му выходу элементов ИЛИ группы, первый информационный вход регистра подключен к выходу n-входового мультиплексора и информационному входу D-триггера, (q+1)-й вход регистра подключен к выходу q-го мультиплексора, тактовый вход D-триггера соединен с тактовыми входами регистра и узла, первый выход узла подключен к выходу D-тригера, второй выход узла подключен к выходам регистра. 15. Устройство по п.5, отличающееся тем, что узел формирования адресов чтения содержит шифратор, вычитатель, дешифратор, группу элементов ИЛИ, (n-1) мультиплексоров, регистр, пять D-триггеров, элемент 2И - nИЛИ и элемент ИЛИ - НЕ, причем вход шифратора подключен к управляющему входу узла, вход вычитаемого вычитателя подключен к выходу шифратора, а вход уменьшаемого вычитателя подключен к информационному входу узла, вход дешифратора подключен к адресному входу узла, с первого по n-й входы элементов ИЛИ группы подключены соответственно к выходам с нулевого по (n-1)-й разрядов дешифратора, первый информационный вход q-го мультиплексора (где q=1,2, . ..,n-1) подключен к выходу q-го разряда вычитателя, второй информационный вход мультиплексора подключен к q-му разряду информационного входа узла, управляющий вход q-го мультиплексора подключен к n-му выходу элементов ИЛИ группы, первый информационный вход регистра подключен к выходу нулевого разряда вычитателя, (q+1)-й информационный вход регистра подключен к выходу q-го мультиплексора, информационный вход первого D-триггера подключен к первому выходу регистра, D-входы с второго по пятый D-триггеров подключены соответственно к выходу элемента 2И - nИЛИ, выходу элемента ИЛИ - НЕ и выходам третьего и четвертого D-триггеров, тактовые входы всех D-триггеров и регистра соединены вместе и подключены к тактовому входу узла, первые входы с первого по n-й элементов И элемента 2И - nИЛИ подключены соответственно к выходам с нулевого по (n-1)-й разрядов дешифратора, а вторые входы элементов И элемента 2И - nИЛИ подключены с нулевого по (n-1)-й разрядам информационного входа узла, первый и второй входы элемента ИЛИ - НЕ подключены к выходу элемента 2И - nИЛИ и инверсному выходу второго D-триггера соответственно, первый выход узла подключен к выходам регистра, второй выход узла подключен к выходу первого D-триггера, третий выход узла подключен к выходу пятого D-триггера. 16. Устройство по пп.14 и 15, отличающееся тем, что группа элементов ИЛИ содержит (n-1) элементов ИЛИ, причем первый и второй входы первого элемента ИЛИ соединены с первым и вторым входами группы, выход s-го элемента ИЛИ (где s-1,2,...,n-2) соединен с первым входом (s+1)-го элемента ИЛИ, второй вход которого соединен с (s+1)-м входом группы, s-й и (n-1)-й выходы которой соединены соответственно с выходами s-го и (n-1)-го элементов ИЛИ. 17. Устройство по п. 5, отличающееся тем, что узел задержки содержит (n+3) D-триггеров, шифратор и мультиплексор, причем информационный вход первого D-триггера подключен к второму входу узла, D-входы (t+1)-го триггера (где t= 1,2, . . . ,m-1) подключены к выходу t-го D-триггера, D-вход (m+1)-го D-триггера подключен к выходу мультиплексора, D-вход (f+1)-го (где f=m+1, m+2,..., n+3) триггера подключен к выходу f-го D-триггера, с первого по m-й информационные входы мультиплексора подключены соответственно к выходам с первого по m-й D-триггеров, управляющий вход мультиплексора подключен к выходу шифратора, вход шифратора подключен к первому входу узла, все тактовые входы D-триггеров соединены вместе и подключены к третьему входу узла, все входы установки D-триггеров соединены вместе и подключены к четвертому входу узла, первый, второй и третий выходы узла подключены к выходам соответственно n-го, (n+3)-го и (n+1)-го D-триггеров. 18. Устройство по п.5, отличающееся тем, что узел переключения содержит два элемента НЕ, два элемента И, два элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, две группы элементов 2И - 3ИЛИ, первый и второй (n-1)-канальные мультиплексоры, два регистра, причем входы первого и второго элементов НЕ подключены соответственно к первому и второму управляющим входам узла, входы первого элемента И подключены соответственно к выходу первого элемента НЕ и к второму управляющему входу узла, входы второго элемента И подключены соответственно к входам первого и второго элементов НЕ, входы первого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ подключены соответственно к выходу второго элемента И и к выходу нулевого разряда первой группы элементов 2И - 3ИЛИ, входы второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ подключены соответственно к выходу первого элемента И и к выходу нулевого разряда второй группы элементов 2И - 3ИЛИ, первые входы с первого по третий элементов И первой группы элементов 2И - 3ИЛИ подключены соответственно к первому, второму и третьему информационным входам узла, вторые входы с первого по третий элементов И первой группы элементов 2И - 3ИЛИ подключены соответственно к выходам первого и второго элементов И и второго элемента НЕ, первые входы второго, первого и третьего элементов И второй группы элементов 2И - 3ИЛИ подключены соответственно к первому, второму и третьему информационным входам узла, вторые входы второго, первого и третьего элементов И второй группы элементов 2И - 3ИЛИ подключены соответственно к выходам первого и второго элементов И и второго элемента НЕ, первый информационный вход первого разряда первого (n-1)-канального мультиплексора подключен к входу переключения адресного пространства узла, первые информационные входы с второго по (n-1)-й разрядов первого (n-1)-канального мультиплексора подключены соответственно к выходам с первого по (n-2)-й разрядов первой группы элементов 2И - 3ИЛИ, вторые информационные входы q-го (где q= 1,2,...,n-1) разряда первого (n-1)-канального мультиплексора подключены к выходам q-го разряда первой группы элементов 2И - 3ИЛИ, первый информационный вход первого разряда второго (n-1)-канального мультиплексора подключен к входу переключения адресного пространства узла, первые информационные входы с второго по (n-1)-й разрядов второго (n-1)-канального мультиплексора подключены соответственно к выходам с первого по (n-2)-й разрядов второй группы элементов 2И - 3ИЛИ, вторые информационные входы q-го разряда второго (n-1)-канального мультиплексора подключены к выходам q-го разряда второй группы элементов 2И - 3ИЛИ, управляющие входы первого и второго (n-1)-канальных мультиплексоров соединены вместе и подключены к входу смещения разрядов узла, первый информационный вход первого регистра подключен к выходу первого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, второй и (q+1)-й информационные входы первого регистра подключены к выходу нулевого разряда первой группы элементов 2И - 3ИЛИ и к q-му выходу первого (n-1)-канального мультиплексора, первый информационный вход второго регистра подключен к выходу второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, второй и (q+1)-й информационные входы второго регистра подключены к выходу нулевого разряда первой группы элементов 2И - 3ИЛИ и к q-му выходу второго (n-1)-канального мультиплексора, тактовые входы обоих регистров соединены вместе и подключены к тактовому входу узла, первый выход узла подключен к выходам первого регистра, второй выход узла подключен к выходам второго регистра.

Документы, цитированные в отчете о поиске Патент 1994 года RU2015550C1

Авторское свидетельство СССР N 1485269, кл
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1

RU 2 015 550 C1

Авторы

Чирков Геннадий Васильевич

Чирков Алексей Геннадьевич

Чирков Юрий Геннадьевич

Даты

1994-06-30Публикация

1991-08-20Подача