Устройство для вычисления коэффициентов фурье

Иллюстрации

Показать все

Реферат

 

Изобретение относится к вычислительной технике и может быть использовано в системах цифровой обработки сигналов в реальном масштабе времени. Цель изобретения повышение точности вычислений . Поставленная цель достигается за счет того, что в состав устройства для вычисления коэффициентов Фурье входит входной регистр 1, мультиплексор 2, арифметический блок 3, блок 4 постоянной памяти коэффициентов, преобразователи 5, 6 модифицированного дополнительного кода в прямой блок 7 постоянной памяти, элемент ИЛИ 8, регистры 9, 10, реверсивный счетчик 11, регистр 12, мультиплексор 13 и блок синхронизации 14. Устройство работет с числами, представленными с фиксированной запятой. Для масштабирования вычислений используется алгоритм условного масштабирования, причем сдвиг операндов в сторону младших разрядов производится после выполнения вычислений. 6 ил. S (Л 00 со 05 О ьо со

СОЮЗ СОВЕТСКИХ

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИК (50 4 G 06 F 15 332

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР

flO ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 4002544/24-24 (22) 06.01.86 (46) 07.09.87. Бюл. № 33 (72) 3. А. Вуколова и В. А. Шаньгин (53) 681.32 (088.8) (56) Авторское свидетельство СССР № 648989, кл. G 06 F 15/332, 1978.

Авторское свидетельство СССР № 1188967, кл. G 06 F 15/332, 1985. (54) УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ

КОЭФФИЦИЕНТОВ ФУРЬЕ (57) Изобретение относится к вычислительной технике и может быть использовано в системах цифровой обработки сигналов в реальном масштабе времени. Цель изобретения повышение точности вычисле„„SU„„1336029 А 1 ний. Поставленная цель достигается за счет того, что в состав устройства для вычисления коэффициентов Фурье входит входной регистр 1, мультиплексор 2, арифметический блок 3, блок 4 постоянной памяти коэффициентов, преобразователи 5, 6 модифицированного дополнительного кода в прямой блок 7 постоянной памяти, элемент

ИЛИ 8, регистры 9, 10, реверсивный счетчик 11, регистр 12, мультиплексор 13 и блок синхронизации 14. Устройство работет с числами, представленными с фиксированной запятой. Для масштабирования вычислений используется алгоритм условного масштабирования, причем сдвиг операндов в сторону младших разрядов производится после выполнения вычислений. 6 ил.

1336029

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

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

На фиг. 1 приведена схема устройства; на фиг. 2 — схема преобразвателя модифицированного дополнительного кода в прямой; на фиг. 3 — схема блока синхронизации; на фиг. 4 — 6 — временные диаграммы работы устройства.

Устройство содержит входной регистр 1, мультиплексор 2, арифметический блок 3, блок 4 постоянной памяти коэффициентов, преобразователи 5 и 6 модифицированного дополнительного кода в прямой, блок 7 постоянной памяти, элемент ИЛИ 8, регистры

9 и 10, реверсивный счетчик 11, регистр

12, второй мультиплексор 13, блок 14 синхронизации.

На фиг. 2 представлен вариант аппаратной реализации преобразователя 5 на пять разрядов.

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

А, Ai4, A/3 — А; при 3 А=О Ai,А,Ai — А;;

А, Ai4, Aia — А; при ЗНА=! Ais,Ai,Aiq — А;. где ЗНА — знак числа (ЗНА=1 соответствует отрицательным числам);

Ai;,...,À; — разряды мантиссы числа (А — старший разряд).

Блок содержит элемент НЕ 15, пять элементов НЕ 16 и пять элементов 2И вЂ” ИЛИ— — НЕ 17.

Блок синхронизации (фиг. 3) содержит генератор 18, распределитель 19 импульсов, элемент ИЛИ 20, элемент И 21, ждущий мультивибратор 22, сдвиговый регистр 23, элемент И 24, элемент ИЛИ 25, элементы И 26 — 30, RS-триггер 31, счетчик 32 и элемент ИЛИ 33.

Устройство работает с числами, представленными с фиксированной запятой. Для масштабирования вычислений используется алгоритм условного масштабирования, при котором на каждой итерации производится оценка величины модуля комплексного числа на выходе арифметического блока. Причем с целью повышения точности вычислений сдвиг операндов в сторону младших разрядов производится после выполнения вычислений. Для исключения потери информации при возникновении переполнения в арифметический блок введен второй знаковый разряд (используется модифицированный дополнительный код). Если хотя бы один операнд имеет модуль, больший или равный 0,5, то на следующей итерации производится сдвиг выходных операндов на один разряд вправо. Если все операнды имеют модули меньше 0,25, то производит5

55 ся сдвиг всех входных операндов на один разряд влево. Если все операнды имеют модули меньше 0,5, но имеется хотя бы один операнд, модуль которого больше или равен 0,25, то входные операнды поступают на вход арифметического блока без сдвига и выходные операнды выдаются из блока без сдвига. При выполнении этих условий обеспечивается работа арифметического блока без потери информации.

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

Как известно, модуль комплексного числа определяет я вы ажением: А; = (Re;) + (ImA;), где А, — комплексное число;

ReA; — действительная часть числа А,;

ImA; — мнимая часть числа А;.

Из анализа этого выражения видно.

При значении IReA;I)0,5 модуль комплексного числа )0,5 независимо от значения ImA;.

При значении llmA;l)0,5 модуль комплексного,числа )0,5 независимо от значения ReA;.

При других значениях IReA;I и llmA;I выполнение неравенства А; )0,5 зависит как от значений реальной, так и мномой частей комплексного числа. С целью экономии оборудования оценка величины модуля комплексного числа производится приближенно по анализу К старших разрядов действительной и мнимой частей числа. Ðàñсмотрим работы устройства при К=5.

В исходном состоянии все регистры установлены в ноль. В счетчик 11 записывается код, равный (Iog N — 1), где N — размер обрабатываемого массива. Значение

IogqN численно равно числу итераций БПФ.

На управляющий вход мультиплексора 2 входных операндов на первой итерации подан потенциал, соответствующий передаче операндов без сдвига. Операнды, участвующие в вычислениях в соответствующей последовательности, необходимой для алгоритма БПФ, через регистр операндов 1 подаются на вход мультиплексора 2 и без сдвига поступают на первый вход арифметического блока 3. На второй вход блока поступают весовые коэффициенты из блока 4.

С арифметического блока 3 операнды подаются на вход мультиплексора 13, который настраивается на первой итерации со сдвигом на 1 разряд вправо. На выходе мультиплексора 13 производится оценка величины модуля операндов, вычисленных на текущей итерации. Вначале с помощью преобразователей 5 и 6 производится преоб1,186! !29

Форму.га ггзобретени.г

3 разование их в прямой код, что позволяет сократить объем блока ПЗУ. Для этого на управляющие входы преобразователей 5 и 6 подключены знаковые разряды соотетственно действительной и мнимой частей операнда.

При единичном значении знакового разряда производится инвертирование кода мантиссы операндов, поданных на вход преобразователя 5 или 6. При нулевом значении знакового разряда производится передача кода мантиссы без инвертирования.

С выхода преобразователей 5 и 6 кода старшие разряды мантиссы действительной и мни мой частей, имеющие вес 0,5. заводятся непосредственно на входы элемента 8, выход которого поступает на вход старшего разряда регистра 9, Остальные четыре разряда преобразователей кодов 5 и 6 заведены на адресные входы блока 7. В первый разряд блока 7 по адресам, которые соответствуют кодам мантисс действительной и мнимой части числа, у которых модуль больше или равен 0,5, записан код 1, а по остальным адресам записан код О.

Во второй разряд блока 7 по адресам, которые соответствуют кодам мантисс действительной и мнимой частей числа, у которых модуль больше или равен 0,25, записан код 1, а по остальным адресам — О.

Таким образом за время текущей итерации в регистре 9 могут быть установлены следующие коды; 11 или 01, или 00. По окончании первой итерации содержимое регистра 9 переписывается в регистр 10, причем второй разряд регистра 9 переписывается с инверсией. Затем регистр 9 обнуляется. Таким образом, на время текущей итерации в регистре в регистре 10 могут быть установлены следующие коды: 10 или 00, или О1. При наличии в регистре

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

При наличии в регистре 10 кода О1 происходит сдвиг входной последовательности на один разряд влево, выходные операнды поступают на выход устройства без сдвига, и на счетчике 11 происходит прибавление единицы. При наличии в регистре 1О кода

00 входная и выходная последовательности передаются без сдвига, и состояние счетчика 11 не изменяется.

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

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

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

1336029 кб

Чиг 3 бк2

Пусн бык 2 исх бых1

cu1Си 1б

Cvum.

Запись

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

О сО

Составитель А. Баранов

Редактор С. Патрушева Техред И. Верес Корректор Г. Решетник

Заказ 3804/45 Тираж 672 Подписное

ВНИИПИ Государственного комитета СССР по делам изобретений и открытий ! 13035, Москва, K — 35, Раушская наб., д. 4/5

Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4. х Я О ° 0

CQ

Ъ(° О О сС) еС1 С> х

С)

О CQ х

О