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

Иллюстрации

Показать все

Реферат

 

Изобретение относится к области вычислительной техники и может быть использовано в системах цифровой обработки сигналов в реальном масштабе времени. Цель изобретения - расширение функциональных возможностей за счет выполнения фильтрации и разде- 1ления спектров. Поставленная цель достигается за счет того, что устройство содержит сдвигатели 1,2, умножители 3-6, регистры 7,8, мультиплексоры 9-12, регистры 13-16, сумматоры 17,18, выходные регистры 19, 20, блок управления сдвигом 23 и блок синхронизации 26. 1 з.п.ф-лы, 7 ил.

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

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

РЕСПУБЛИК

„„SU»1 88893

Al (5П 4 G 06 F 15/332

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

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

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 4131923/24-24

i(22) 08.. 10. 86 (46) 15.04.8Ы. Бюл. У 14 (72) Т, П. Савенкова, В.П. Карасев и В.А. Шаньгин (53) 681.32(088.8) (56) Авторское свидетельство. СССР

У 1149275, кл. G 06 F 15/332, 1985.

Авторское свидетельство СССР

Ф 736 112, кл. С 06 F 15/332, 1976. (54) АРИФМЕТИЧЕСКОЕ УСТРОЙСТВО ДЛЯ

ВЫЧИСЛЕНИЯ КОЭФФИЦИЕНТОВ ФУРЬЕ (57) Изобретение относится к области вычислительной техники и может быть использовано в системах цифровой обработки сигналов в реальном масштабе времени. Цель изобретения — расширение функциональных возможностей за счет выполнения фильтрации и разде1ления спектров. Поставленная цель достигается за счет того, что устройство содержит сдвигатели 1,2, умножители 3-6, регистры 7,8, мультиплексоры 9-12, регистры 13-16, сумматоры 17, 18, выходные регистры 19, 20, блок управления сдвигом 23 и блок синхронизации 26. 1 з.п.ф-лы, 7 ил.

1388893

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

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

Иа фиг. 1 представлена блок-схема

Устройства; на фиг, 2 — схема блока синхронизации;на фиг. 3-5 — временные диаграммы работы блока синхронизации выполнения команд БПФ,, разделения спектров и умножения комплексных мас- 15 сивов; на фиг. 6 — временная диаграм ма работы устройства; на фиг. 7 блок-схема блока управления сдвигом.

Устройство содержит сдвигатель 1. вещественной части числа, сдвигатель

2 мнимой части числа, умножители 3-6, промежуточные регистры 7 и 8, мультиплексоры 9-12 промежуточные регистры

13-16, сумматоры 17 н 18, выходные регистры 19 и 20, выходы 21 и 22 уст-25 ройства, блок 23 управления сдвигом, входы 24 и 25 вещественной и мнимой частей весового коэффициента и блок

26 синхронизации.

Блок 26 синхронизации имеет вход

27 запуска, входы 28-31 задания режима, двенадцать выходов 32-43 и содержит генератор 44 тактовых импульсов, распределитель 45 импульсов, че тыре элемента 2И-ИЛИ 46-49 шесть эле9

35 ментов И 50-55, три 3.S-триггера 5658, два D-триггера 59 и 60 и элемент ИЛИ 61.

Блок управления сдвигом (фиг,7) содержит выход 62, преобразователи 4О

63 и 64 дополнительного кода в прямой узел 65 постоянной памяти, элемент

ИЛИ 66, а также регистры 67 и 68.

Устройство работает следующим образом. 45

С приходом сигнала "Пуск" распределитель 45 формирует из двадцати двух тактовых импульсов последовательность. В соответствии с установленной на одном из входов 28-30 ко50 мандой блок синхронизации вырабатывает управляющие сигналы 32-43 согласНо временным диаграммам (фиг. 3-5 соответственно) °

Устройство реализует алгоритм БПФ

55 в соответствии с выражениями:

A „=-А, + В W;, (1)

В;„=-A — В И; (2) где А и  — комплексные числа.

Для перемножения двух комплексных чисел B„W; необходимо выполнить четыре операции умножения, одно сложение и одно вычитание:

Re (H„W,) =ReB„. ReW„-I B„. I WÄ; (3)

1(В,W„j =I В„.Re W;+Re B; I W,,(4)

Приведенный алгоритм в предлагаемом устройстве выполняется следующим образом.

Подлежащие обработке комплексные операнды А„ и W,, а также значения весовых коэффициентов поступают на входы устройства. Вначале иэ ОЗУ считывается операнц В, и через сдвигатели 1 и 2 реальная часть записывается в умножители 3 и 6, а мнимая часть — в умножители 4 и 5. На сдвигателях осуществляется по сигналу 60 иэ блока 23 сдвиг операндов на один разряд или на два разряда вправо или передача операндов беэ сдвига. Значения весовых коэффициентов поступают на соответствующие входы умножителей

3-6 (на входы множителя). Второй операнд А, записывается в регистры 7 и

8 (реальная и мнимая части соответственно), также пройдя через сдвигатели 1 и 2.

На выходах блоков умножения формируются одновременно четыре произведения КеВ, Re Й, ImBI Тай, Т„,Б„ Ке WÄ, ReB, I W,, которые через входы мультиплексоров 9-12 записываются в промежуточные регистры 13-16.

Введение в устройство промежуточных регистров 13-16 позволяет выполнение операций умножения и сложения совместить во времени, 1 т.е, результаты умножения операндов В; и И„ суммируются согласно алгоритму, а новые операнды В„ и М, „ перемножаются в умножителях. После выполнения первого суммирования на выходах сумматоров

17 и 18 формируются суммы согласно выражениям (3) и (4), которые записываются в регистры 14 и 16 через входы мультиплексоров 10 и 12, через первые входы мультиплексоров 9 и 11 содержимое регистров 7 и 8 (второй операнд) переписывается в регистры

i3 и 15.

После выполнения операции вычитания на выходе сумматоров 17 н 18 формируются суммы:

ReB„„=ReA.-(ReB, . ReW„- -I,„Â, I W„); (5)

I B;« =I A; (I„B; ReW;+йеВ, .1 W,),(6) которые соответствуют операнду результата В, „ . С выходов сумматоров з 13888

17 и 18 они записываются в регистры

19 и 20, а затем в ОЗУ. После выполнения третьего цикла суммирования на выходах сумматоров 17 и 18 формируют5 ся суммы:

ReA„, RåÀ„+(ReB„ ReW„-I B;Т,,W,);(7)

I :, =ТА, +(I B;. ReW; +ReB„ Х й„),(8) которые соответствуют операнду результата А . С выходов сумматоров 17 и 10

4 Ф4

18 они записываются в регистры 19 и

20, а затем в ОЗУ.

На временной диаграмме (фиг.6) показано взаимодействие устройств по этапам вычислений:

I этап - считывание из ОЗУ операндов В„и W, в умножители

3-6;

II этап - считывание операндов А„ в регистры 7 и 8, начало 2О умножения операндов В, И ;

III этап — считывание операндов В; (2) и W„(2), завершение умножения и перепись результатов умножения в.регистры 13-16;

IV этап — считывание операнда А„(2) в регистры 7 и 8, начало умножения операндов В,(2)>

° W„(2), обработка операн- ЗО дов в сумматорах согласно выражениям (3) — (6), V этап — считывание операндов В„ (3) и W, (3), заверщение умножения и перепись результатов умножения в ре гистры 13-16, обработка операндов в сумматорах согласно выражениям (7) и (8), запись результатов 40 базовой операции в ОЗУ и т.д, Таким образом, начиная с I этапа считывание операндов из ОЗУ, умножение операндов, суммирование и запись 45 результатов в. ОЗУ производятся одновременно. Это позволяет обеспечить высокое быстродействие устройства.

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

1) произнести упаковку (преобразование) входного массива, заключающуюся в том, что нечетные отсчеты записываются в действительную часть комплексного числа, а четные — в мнимую часть комплексного числа, 93

2) произвести вычисление коэффициентов Фурье от массива -размером N

3) произвести разделение спектров по следующему алгоритму:

A(j)+A (N-1) (9)

B(j)=

2

A(j) — А (N-i)

В(М j)= 1

2 где A(j ) и A(N- j ) - исходные комплексные числа, — знак комплексного (10) ReB(N-j) ReA(j)-ReA(N-j) (11)

I„B(N-j) I„A(j)+I»A(N-j)- (12).

Эти значения переписываются в выходные регистры 19 и 20, а затем записываются в ОЗУ. сопряженного числа;

B(j) и B(N-j) — комплексные числа результата операции.

4) произвести объединение массивов по алгоритму выражений (1) и (2).

Таким образом, для обработки действительных массивов необходимо произвести вычисление по формулам (9) и (10). При выполнении этой операции устройство работает следующим образом.

На входы весового коэффициента постоянно поступают следующие значения: ReWÄ =1, ? У; =О, с тем, чтобы организовать передачу первого операнда через умножители без введения дополнительных связей в устройство.

Первый операнд A(j) считывается из ОЗУ, и через сдвигатели 1 и 2 реальная часть поступает в умножители

3 и 6, а мнимая — в умножители 4 и 5.

Второй операнд A(N-j) через сдвигатели 1 и 2. записывается в промежуточные регистры 7 и 8. После выполнения умножения на выходах умножителя 3 будет ReA(j), а на выходе умножителя

5 — IA(j). Затем выполняется перепись содержимого регистров 7 и 8 в регистры 13 и 15 через мультиплексоры 9 и 11 соответственно. Результаты умножения с выходов умножителей 3 и 5 переписываются через муль" типлексоры 10 и 12 в регистры 14 и

16 соответственно. Результаты алгебраического суммирования с выходов сумматоров 17 и 18 записываются в выходные регистры 19 и 20, а затем в

ОЗУ. При втором цикле алгебраического суммирования на выходах сумматоров

17 и 18 образуются суммы:

Таким образом, дополнительная операция, необходимая для обработки действительных массивов, выполняется на том же самом оборудовании, что и баЗовая операция БПФ. Операция умножения комплексных массивов выполняется при получении команды на входе 30.

Преобразование операндов осуществляЕтся в соответствии с выражениями (3) и (4). Управляющие сигналы вырабатываются в соответствии с временной диаграммой на фиг.5. По сигналу

32 на входы умножителей .записываются

Входные операнды (первый операнд— через сдвигатели, а второй — по вхоДу M). Результаты перемножения через входы мультиплексоров 9-12 (по сигналам 34 и 35 управления) переписываются в .регистры 13-16 (36 и 37). 1а сумматоре 17 формируегся разность

1зперандов (38), а на сумматоре 18 умма (39). Результаты операции записываются в регистры 19 и 20 — дейСтвительная и мнимая части соответственно (сигнал 40).

Все операции в устройстве выполняЮтся над операндами, представленными

В дополнительном коде с фиксированНой запятой.

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

Хотя бы один операнд имеет модуЛь больше или равный 0,5, то на следую цей итерации производится сдвиг входных операндов на один разряд вправо.

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

При выполнении этих условий обеспе. чивается выполнение вычислений беэ переполнения разрядной сетки.

Блок управления сдвигом (фиг.7) .работает следующим образом, На входы преобразователей 63 и 64 поступают старшие 5 разрядов вещественной и мнимой частей результатов вычислений. С помощью преобразова88893 6 телей 63 и 64, производится преобра10

20 больше или равен 0,25, но меньше

0,5, записан код "1",а по остальным

25 адресам записан код "0".

45 зование их в прямой код (для сокращения объема ПЗУ) . С выхода преобраэ ова тел ей старшие ра з ряды мантиссы действительной н мнимой частей, имеющие вес 0,5, заводятся непосредственно на входы; элемента ИЛИ 66, выход которого поступает на вход старшего разряда регистра 67.

Остальные четыре разряда преобразователей 63 и 64 заведены на адресные входы блока ПЗУ. В первый разряд блока 65 по адресам которые соот1 ветствуют кодам мантисс действительной и мнимой частей числа, у которых модуль больше или равен 0,5,.записан код "1", а по остальным адресам записан код "О". Первый разряд ПЗУ заведен на третий вход элемента ИЛИ. Во второй разряд блока ПЗУ по соответствующим адресам, при которых модуль

В третий разряд блока ПЗУ по соответствующим адресам, при которых модуль комплексного числа меньше 0,25, записан код "1", а по остальным адресам записан код "О". С выхода ПЗУ второй и третий разряды заведены на вход регистра 67, причем регистр 67 построен так, что в случае установки в единичное состояние старшего разряда происходит установка в нулевое состояние всех младших по отношению. к нему разрядов.

Таким образом, во время текущей итерации в регистр по сигналу 41 могут быть установлены следующие коды:

1000 или 010, или 001. По окончании итерации по сигналу 42 содержимое регистра 67 переписывается в регистр

68 и затеи регистр 67 обнуляется по сигналу 43. Регистр 68 управляет сдвигателями 1 и 2.

Формула изобретения

1. Арифметическое устройство для вычисления коэффициентов Фурье, содержащее два сдвигателя, четыре умножителя, шесть регистров, два выходных регистра, два сумматора, блок управления сдвигом и блок синхронизации, причем выход первого сдвигателя подключен к первым входам первого и второго умножителей и информационному входу первого регистра, 1388893 выход второго сдвигателя подключен к первым входам третьего и четвертого умНожителей и информационному входу второго регистра, вторые входы первого и четвертого умножителей соединены между собой и являются входом задания реальной части коэффициента устройства, входом задания мнимой части коэффициента которого являются 1О соединенные между собой вторые входы второго и третьего умножителей, вы- ходы первого и второго сумматоров подключены к информационным входам соответственно первого и второго вы- 15 кодных регистров, выходы которых являются выходами соответственно реальной и мнимой частей результата г устройства и подключены соответственно к первому и второму входам блока управления сдвигом, выход которого подключен к управляющим входам пер- ( вого и второго сдвигателей, информационные входы которых являются входами соответственно реальной и мни- 25 мой частей операнда устройства, первый выход блока синхронизации подклю чен к входам синхронизации первого, второго, третьего и четвертого умножителей, вход запуска устройства под- 30 ключен к входу запуска блока синхро-. низации, второй выход блока синхронизации подключен к тактовым входам первого и второго регистров, третий выход блока синхронизации подключен к тактовому входу третьего регистра, четвертый выход блока синхронизации подключен к тактовым входам четвертого и пятого регистров, пятый выход блока Синхронизации подключен к так- 4о товому входу шестого регистра и входу синхронизации первого сумматора, шестой, выход блока синхронизации иод= ключен к входу синхронизаций второго сумматора, седьмой выход блока син- 45 хронизации подключен к тактовым входам первого и второго регистров,вось« мой, девятый и десятый выходы блока синхронизации подключены соответствен-. но к третьему, четвертому и,пятому входам блока управления сдвигом, о тл и ч а ю щ е е с я тем, что, с целью расширения функциональных возможностей за счет выполнения фильтраии и разделения спектров, в него введены четыре мультиплексора, при этом выход первого умножителя подключен к первым информационным входам первого и второго мультиплексоров„ выходы которых подключены к информационным входам соответственно третьего и четвертого регистров, выходы которых подключены соответственно к первому и второму входам первого сумматора, выход которого подключен к второму информационному входу второго мультиплексора, третий информационный вход которого подключен к выходу третьего умножителя, выход четвертого умножителя подключен к первым информационным входам третьего и четвертого мультиплексоров, выходы которых подключены к информационным входам соответственно шестого и пятого регистров, выходы которых подклю- . чены соответственно к первому и .второму входам второго сумматора, выход которого подключен к второму информационному входу четвертого мультиплексора, третий информационный вход которого подключен к выходу второго у умножителя,а выходы первого и второго регистров подключены к вторым информационным входам соответственно первого и третьего мультиплексоров, десятый выход блока синхронизации подключен к управляющим входам первого и третьего мультиплексоров и первым управляющим входам второго и четвертого мультиплексоров, вторые управляющие входы которых подключены к двенадцатому выходу блока синхронизации, первый, второй и третий входы задания режима которого подключены соответственно к входам задания режима с первого по третий устройства.

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

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

1388893

1388893

Ун7

УФ 2

Тираж 704

Подписное

ВНИИПИ Заказ 2589

Пронзя.-пглигр. пр-тпе, г. Ужгород, ул. Проектная, 4

1

1 !

1 .щ 1 Я