Процессор быстрых дискретных преобразований Советский патент 1992 года по МПК G06F15/332 

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

С

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

название год авторы номер документа
ПРОЦЕССОР С МАКСИМАЛЬНО ВОЗМОЖНОЙ ПРОИЗВОДИТЕЛЬНОСТЬЮ ДЛЯ БЫСТРОГО ПРЕОБРАЗОВАНИЯ ФУРЬЕ 2005
  • Стальной Александр Яковлевич
  • Литвинов Дмитрий Михайлович
  • Шуцко Валерий Александрович
RU2290687C1
Устройство для формирования широкополосного случайного процесса 1986
  • Петровский Александр Александрович
  • Цырульников Александр Николаевич
  • Качинский Михаил Вячеславович
  • Самойлов Евгений Борисович
  • Супрун Владимир Иванович
SU1432514A1
Устройство для цифровой обработки сигналов 1985
  • Альховик Александр Сергеевич
  • Байков Владимир Дмитриевич
  • Дорофеев Иван Геннадиевич
  • Попов Алексей Максимович
SU1336028A1
Арифметическое устройство для вычисления коэффициентов Фурье 1986
  • Савенкова Тамара Петровна
  • Карасев Владимир Петрович
  • Шаньгин Владимир Алексеевич
SU1388893A1
Арифметическое устройство для процессора быстрого преобразования Фурье 1986
  • Гамкрелидзе Сергей Анатольевич
  • Завьялов Анатолий Викторович
  • Боровицкий Андрей Викторович
SU1336030A1
Цифровой анализатор спектра Уолша речевых сигналов 1987
  • Гринчук Петр Николаевич
  • Коркмазский Филипп Ефимович
  • Красовский Владимир Васильевич
SU1425710A1
Устройство для быстрого действительного преобразования Фурье 1986
  • Демиденко Сергей Николаевич
  • Дашук Владимир Николаевич
  • Куновский Эдуард Брониславович
  • Чеголин Петр Михайлович
SU1476488A1
Устройство для выполнения быстрого преобразования Фурье 1985
  • Редькин Сергей Валентинович
  • Васянин Сергей Николаевич
  • Плешаков Сергей Борисович
SU1337904A1
Процессор быстрого преобразования Фурье 1988
  • Поваренкин Сергей Григорьевич
  • Магрупов Талат Мадиевич
SU1667101A1
Арифметическое устройство для процессора быстрого преобразования Фурье 1983
  • Колюскин Владимир Александрович
SU1120347A1

Иллюстрации к изобретению SU 1 725 227 A1

Реферат патента 1992 года Процессор быстрых дискретных преобразований

Изобретение относится к вычислительной технике, в частности к цифровой обработке сигналов. Изобретение позволяет реализовать гнездовые алгоритмы быстрых преобразований Фурье и Хартли со спектральными весовыми функциями и модулями комплексных коэффициентов ДПФ с введением программируемого блока формирования адресов и сигналов управления. Цель изобретения - повышение быстродействия. Для этого процессор содержит два блока памяти, блок управления, арифметический блок, содержащий шесть мультиплексоров, пять регистров, сумматор-вычитатель, узел постоянной памяти, три триггера, два дешифратора и элемент ИСКЛЮЧАЮЩЕЕ ИЛИ. 3 ил.,5табл.

Формула изобретения SU 1 725 227 A1

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

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

На фиг.1-3 представлены структурная схема и алгоритмы процессора БПФ.

В табл. 1-4 представлены временные диаграммы различных режимов работы устройства.

Устройство состоит из двух блоков 1 и 2 памяти, двух блоков 3 и 4 постоянно памяти, сумматора-вычитателя 5, пяти регистров 6-10, регистра 11 микрокоманд, счетчика 12, тактового генератора 13, шести мультиплексоров 14-19, трех триггеров 20-22, дешифратора 23 кода операции, схем ИСКЛЮЧАЮЩЕЕ ИЛИ 24 и 25, ИЛИ 26, И 27 и 28, дешифратора 29 выбора операндов, внешних выходов 30-32 и внешних входов 33-36.

При этом выход тактового генератора 13 соединен со счетным входом счетчика 12, выход которого соединен с входом блока 3 постоянной памяти, соединенного выходом с входом регистра 11 микрокоманд. Выходы блоков 1 и 2 памяти объединены и соединены с внешним выходом 30 и с одним из информационных входов мультиплексора 14, выход которого последовательно через регистры 6 и 7 соединен с одним из информационных входов мультиплексора 19, соединенного выходом через регистр 8 с первыми информационными входами мультиплексоров 15 и 16, выходы которых соединены с входами

VJ

ho

01

го ю VI

данных сумматора-вычитателя 5, соединенного выходом данных через регистр 9 с одним из информационных входов мультиплексора 17, второй информационный вход которого соединен через блок постоянной памяти также с выходом регистра 9. Выход мультиплексора 17 через регистр

10соединен с вторым информационным входом мультиплексора 14 и с одним из информационных входов мультиплексора 18, выход которого соединен с объединенными входами данных блоков 1 и 2 памяти. Вход 35 данных соединен с вторым информационным входом мультиплексора 18. Адресные и управляющие чт.зп-входы блоков памяти, управляющие входы мультиплексоров 14, 19,17 и 18, часть входов дешифратора 23 кода операции и дешифратора 29 выбора операнда, выходы 31 и 32 соединены с соответствующими выходами регистра

11микрокоманды. Старшие (знаковые) разряды регистров 6 и 7 объединены на входах схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 24, выход которой соединен с входом первого .триггера 22, и с одним из входов дешифратора 23 кода операции, соединенного выходом с управляющим входом сумматора-вычитателя 5. Выход дешифратора выбора операндов соединен с управляющими входами мультиплексоров 15 и 16, информационные входы которых соединены с соответствующими выходами регистров 6-10. Внешние входы 33, 34 и 36 соединены с входами соответствующих схем И 27 и 28 и схем ИЛИ 25 и 26, соединенных выходами с управляющими входами счетчика 12. Входы триггеров 20 и 21 соединены с выходами, соответствующими признакам результата операции сумматора-вычитателя 5.

Рассмотрим работу устройства в соответствии с временными диаграммами, отражающими различные режимы (табл.1-4). Заметим, что табл.1-4 представляют собой таблицы занятости и являются эквивалентом временной диаграммы работы устройства.

При включении питания схема начальной установки блока управления формирует импульс Начальная установка, который сбрасывает счетчик микрокоманд (МК). Начиная с нулевого адреса в ПЗУ МК, расположена микропрограмма ввода данных в ОЗУ процессора. Во время ввода данных бит Готовность ввода устанавливается в О, что сигнализирует внешнему источнику данных о том, что процессор готов принять данные. Если данные сформированы, то источник данных устанавливает сигнал Требование ввода в О. Если процессор установил сигнал Готовность ввода при 1 на входе Треб, ввода, то на выходе

вентиля И-ИЛИ устанавливается 1 и счетчик МК не будет принимать тактовые импульсы, пока сигнал Треб, ввода не станет равным О. После этого с каждым тактом

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

может синхронизировать процессор, устанавливая сигнал Треб, ввода в 1.

Вывод данных осуществляется аналогично, но для синхронизации обмена служат сигналы Треб, вывода и Готов, т.е. для

выполнения микропрограммы ввода (вывода) данных необходимо как минимум 2N + 1 тактов (N тактов для действительной и N - для мнимой частей).

После выполнения микропрограммы

ввода выполняется микропрограмма БПФ, вычислений окна и модулей комплексных взвешенных коэффициентов, а затем - микропрограмма вывода данных. По окончании вывода формируется сигнал сброса счетчика ИК и вводится новый входной вектор.

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

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

на целое число тактов.

Рассмотрим работу устройства по следующим базовым операциям: базовая операция БПФ с тривиальными множителями, равным

М ±1, М ±i;

базовая операция БПФ с произвольным вещественным или мнимым множителями

М ± w, М ± jw;

оконные функции: окно Хэннинга, модуль- нокомбинированное окно;

вычисление модуля комплексного числа.

Будем полагать, что все операции записи в регистры осуществляются по переднему фронуТИ.5

Базовая операция БПФ представляет собой операцию вида

Re(a1) Re(a) + Re(b); Re(b1) (Re(a)-Re(b))-M;

Im(a1)lm(a)(b); lm(b1) (lrn(a)-lm(b))-M,

где М - мнимый либо вещественный поворачивающий множитель.

Табл.1 занятости соответствует выполнению базовой операции БПФ с М ±1. Рассмотрим выполнение этой операции по тактам.

Такт 1. Считывание Re(a) из ОЗУ.

Такт 2. Запись Re(a) с Рег.6, считывание H303YRe(b).

ТактЗ. Запись Re(a) в Рег.7, запись Re(b) в Рег.6, подготовка записи Рег.7 в Рег.8, для этого мультиплексор 19 коммутируется на Вх.2 под управлением сигнала аи от БУ, сложение на сумматоре-вычитателе 5: Re(a) + Re(b). Для выполнения этой операции на входы КОП сумматора-вычитателя подается код, соответствующий операции сложения, мультиплексоры 15 и 16 выбирают операнды Рег.6 и Рег.7 под управлением сигналов аэ, поступающих от БУ через дешифратор выбора операндов на адресные входы мультиплексоров.

Такт 4. Запись Re(a) в Рег.8, запись Re(b) в Рег.7, запись lm(a) в Рег.6, считывание из ОЗУ lm(b), запись Re(a1) Re(a) + Re(b) с выхода сумматора-вычитателя 5 в Per.9, вычитание Re(a) - Re(b) (в качестве операндов выбираются Рег.8 и Рег.7), подготовка мультиплексора 17 для записи выхода Рег.9 в Per. 10 (для этого БУ выдает соответствующий управляющий сигнал на выход аэ).

Такт 5. Запись Re(a1) в Per. 10 и затем в ОЗУ через мультиплексор 18, запись Re(b1) - Re(a) - Re(b) в Рег.9., сложение lm(a) + lm(b), запись lm(a) в Рег.7, запись lm(b) в Рег.6.

Такт 6. Запись Re(b ) в Per.10 и затем в ОЗУ, запись lm(a1) в Рег.9, вычитание lm(b1) lm(a) - lm(b), запись lm(a) в Рег.8, запись im(b) в Рег.7, подготовка мультиплексора 17 для записи из Рег.9 в Рег.10.

Такт 7. Запись lm(b1) в Рег.9, запись lm(a1) в Рег.10 и в ОЗУ.

Такт 8. Запись lm(b1) в Рег.10 и в ОЗУ.

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

Рассмотрим базовую операцию БПФ с произвольным поворачивающим множителем. Так как устройство предназначено для выполнения гнездовых и простых множителей алгоритмов БПФ, то число разнотипных множителей при ограниченной длине преобразования N 120 составляет от 1 до 6. Так, для длин БПФ 8 и 12 требуется умножение на один тип множителя соответственно и . Произведения всех чисел на эти множители могут быть вычислены заранее и размещены в ПЗУ, поэтому алгоритм такого рода отличается от алгоритма для множителя равного 1 только управляющими сигналами для мультиплексора 17, формируемыми на выходах БУ (см. табл.2).

Окно Хэннинга в частотной области имеет вид

Yk (Xk J 2

(Xk-1 + Xk+i))

1/4(dk-i-dk),

I Yk I (ldk-11- I dk I).

где dk i.Xk-1 - Xk, dk Xk-1 I- IXk + 1 I,

{ I Yk I} - компенсационная последовательность для { I Yk I }k-o .

В табл.4 представлена диаграмма занятости в приведенных обозначениях, причем для вычисления каждого нового Yk используется dk-i, уже вычисленное для Yk-1, что позволило сократить время для вычисления каждого нового Yk до двух тактов.

Вычисление модуля комплексного числа производится по приближенной формуле, например

I а -МЫ а2 + Ь2 - max la I, I bl + + -y min{ laljbl} .

Алгоритм вычисления модуля имеет следующий вид (в соответствии с табл.3).

Определить знак Nab в произведении а-Ь:

Nab 0, если а b :0, Nab 1, если а-Ь 0.

Если а Ь 0, то выполнить а - b и запомнить бит переноса Са-ь, если ab 0, то выполнить а + b и запомнить бит знака суммы Na+b.

Сформировать признак того, что I a l I Ы, следующим образом:

h Nab Ca-b + Nab-(Na© Na-b).

Если h 0, то выполнить , иначе а Ь/2, где - операция, выбираемая в зависимости от знаков а и Ь,

Еслиа, b О, то соответствует операции +,

если а 0, b а - операции а/2 - b (а - - Ь/2),

если а 0, b 0, то а/2 + b (-а + Ь/2),

если а О, Ь 0, то -а/2 - b (-а - Ь/2).

Для реализации изложенного алгоритма в микрокоманде, управляющей работой устройства, заведены следующие биты CND: So, Si, Ro, RI, выбор операндов для первого и второго входов сумматора-вычи- тателя (биты ад БУ на фиг.1), (СОР0, COPi, СОР2) - код операции сумматора-вычитате- ля (биты аю БУ на фиг.1).

Дешифратор 29 выбора операндов работает в двух режимах: условного и безусловного выбора операндов в зависимости от бита CND,

В режиме условного выбора операндов бит CND 0 в качестве операнда для сумматора-вычитателя выбирается а/2 и b (если h 0) или Ь/2 и а (если h 1). В режиме безусловного выбора операндов бит CND 1 и значение не влияют на выбор операндов.

Условный выбор операндов осуществляется, если СОР(аю) 111. В этом случае СОР для сумматора-вычитателя выбирается в зависимости от знаков операндов.

Знаки индицируются двумя битами: знак ab и знак а.

Логика выбора КОП приведена в табл.5.

В режиме безусловного выбора КОП знаки ab и а не влияют на выбор КОП для сумматора-вычитателя, который определяется только битами аю, принимающими значения от ОООа до 1 Юг.

Условный выбор КОП сумматора-вычитателя реализован в дешифраторе выбора операндов 23.

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

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

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

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

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

5 постоянной памяти, три триггера, два дешифратора и элемент ИСКЛЮЧАЮЩЕЕ ИЛИ, причем выход первого мультиплексора подключен к информационному входу первого регистра, выход которого подклю0 чен к первому информационному входу второго мультиплексора и информационному входу второго регистра, выход которого подключен к первым информационным входам третьего мультиплексора и четвертого муль5 типлексора, выход которого подключен к информационному входу третьего регистра, выход которого подключен к вторым информационным входам второго и третьего мультиплексоров, выходы которых подключены

0 соответственно к первому и второму информационным входам сумматора-вычитателя, выход которого подключен к информационному входу четвертого регистра, выход которого подключен к второму

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

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

шестого мультиплексора, выходы знаковых разрядов первого и второго регистров подключены соответственно к первому и второму входам элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, выход которого подключен к первым входам первого и второго дешифраторов и тактовому входу триггера, выход которого подключен к втормы входам первого и второго дешифраторов, третьи входы которых подключены к знаковому выходу третьего регистра, выход первого дешифратора подключен к управляющему входу сумматора- вычитателя, выходы переноса и знака которого подключены ктактовым входам со0

5

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

Та Ь л и. ч & 1

и. ц О. з

/ О. 5л О; Ц О.

Таблица 5

fc/ 35

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

Процессор быстрого преобразования Фурье 1984
  • Шаньгин Владимир Алексеевич
  • Перьков Павел Павлович
  • Мельник Владимир Егорович
SU1278884A1
Прибор для нагревания перетягиваемых бандажей подвижного состава 1917
  • Колоницкий Е.А.
SU15A1
Способ получения моносульфата 7- @ / @ /-2-/2-аминотиазол-4-ил/-2-метоксииминоацетамидо @ -3-/триметиламмонийметил/-3-цефем-4-карбоксилата 1984
  • Хадзиме Камати
  • Юн Окумура
  • Такаюки Наито
SU1313351A3
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1

SU 1 725 227 A1

Авторы

Гагарин Юрий Иванович

Шифрин Владислав Владиславович

Даты

1992-04-07Публикация

1989-12-25Подача