Процессор цифровой обработки сигналов

 

Изобретение относится к вычислительной технике и предназначено для решения задач цифровой обработки сигналов, включающих выполнение алгоритма быстрого преобразования Фурье (БПФ). Целью изобретения является повышение быстродействия процессора цифровой обработки сигналов за счет распараллеливания алгоритма выполнения базовой операции вычислительными блоками, что позволяет формировать одновременно реальную и мнимую части выходного отсчета и значительно сократить длительность реализации базовой операции. При этом время обработки группы входных отсчетов сопоставимо со временем их формирования, что позволяет предлагаемому процессору цифровой обра .ttj у t

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

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

РЕСПУБЛИК (я)5 G 06 F 15/332

ГОСУДАРСТВЕННОЙ ПАТЕНТНОЕ

ВЕДОМСТВО СССР (ГОСПАТЕНТ СССР) ОПИСАНИЕ ИЗОБРЕТЕНЙЯ

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ f. о (21) 4815953/24 (22). 17.04.90 (46) 23,01,93, Бюл. № 3 (71) Конструкторское бюро электроприборостроения (72) H.Ê.Áàéäà, Ю.Г.Нестеренко, Г.H.Тимонькин, В.С.Харченко, К.Ю,Воробьев и

С,H.Têà÷åéêî . (56) Патент США ¹ 3662161, кл. G 06 F

15 332, опублик. 1976.

Обработка сигналов микропроцессоров. Экспресс-информация, серия "Вычислительная техника", 1975, ¹ 7.

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

¹ 1146685, кл. G 06 F 15/332, опублик, 1985. (54) ПРОЦЕССОР ЦИФРОВОЙ ОБРАБОТКИ

СИГНАЛОВ тт,, БЦ„„1789991 А1 (57) Изобретение относится к вычислительной технике и предназначено для решения: задач цифровой обработки сигналов, включающих выполнение алгоритма быстрого преобразования Фурье (БПФ). Целью изобретения является повышение быстродействия процессора цифровой обработки сигналов за счет распараллеливания алгоритма выполнения базовой операции вычислительными блоками, что позволяет формировать одновременно реальную и мнимую части выходного отсчета и значительно сократить длительность реализации базовой операции. При этом время обработки группы входных отсчетов сопоставимо со временем их формирования, что позволяет предлагаемому процессору цифровой обра13

1789991

Наиболее близким к изобретению по технической сущности является процессор

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

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

= 1, И/2) вычислительного блока соединены с первыми информационными входами 2Кго и (2К-1) вычислительных блоков, первый информвиион ни и выход M-го (М = N2 + 1,N вычислительного блока соединен с вторыми информационными входами (2М-N/2)-го и (2М-N/2 + 1)-го вычислительных блоков, - причем каждый вычислительный блок соНедостаткхом процессора является низкая производительность.

Известен процессор для цифровой обработки сигналов, содержащий блок ввода, 15

И шин, N процессорных модулей, первыми входами соединенных с выходом блока ввода, устройство управления, выходом соединенное с управляющими входами процессорных модулей.

Недостатком процессора является низкая производительность, обусловленная большой длительностью интервала обмена

20 ботки сигналов работать в реальном масштабе времени. Процессор цифровой обработки сигналов содержит аналого-цифровой преобразователь 1, блок 2 синхронизации, блок 3 регистров, вычислительные блоки

4.1...4.8, вход 5 обрабатываемого аналогового сигнала, вход 6 сигнала "Пуск", вход 7 сигнала "Стоп", первый 8 и второй 9 групповые выходы блока 3 регистров, первые 10,1, 10.8, вторые 11;1...11.8 и.третьи 12.1...12.8 выходы вычислительных модулей 4.1...4.8, групповой выход 13 блока 2 синхронизации и соответствующие связи. Блок 3 регистров содержит первую 18.1 и вторую 18.2 группы регистров, каждая из групп регистров состоит из N = 8 регистров 18.1.N и 18;2,Й соответственно, первый 19 и второй 20 элементы

И и их связи. Модуль синхронизации содержит RS-триггер 21, генератор 22 тактовых импульсов, счетчик 23, первый 24, второй

25, третий 26, четвертый 27; пятый 28 и шестой 29 элементы И; триггер 30 и йх связи.

Каждый модуль управления (для примера раскрыт первый 15.1) содержит счетчик 37, счетчик 38, первый 39, второй 40 триггеры, элем"е нт ИСКЛЮЧАЮЩЕЕ ИЛИ 41, эле ме нт

ИЛИ 42, первый 43, второй 44, третий 45, четвертый 46, пятый 47, шестой 48, седьмой

49, восьмой 50, девятый 51, десятый 52 и одиннадцатый 53 элемент И, первый 54 и второй 55 триггеры и их связи, группу 56...65 входов группового выхода модуля управления. Все вычислительные блоки 4 идентичИзобретение относится к вычислительной технике и предназначено для решения задач цифровой обработки сигналов, включающих выполнение алгоритма быстрого преобразования Фурье (БПФ).

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

1 ны. Для примера рассмотрим 4,1, он содержит первый 68, второй 69, третий 70 и четвертый 71 регистры, первый 72 и второй 73 вычислительные модули, первый 74 и второй 75 регистры результата и их связи. Первый вычислительный модуль содержит узел

76 формирования коэффициентов, первый

87 коммутатор, третий 88 коммутатор, первый 89 и второй 90 блоки умножения, регистр 93, регистр 94, регистр 95, регистр 96, узел формирования коэффициентов содержит счетчик 95, блок 96 памяти, регистр 97, первый 98, второй 99, элемент 2И вЂ” ИЛИ, первый коммутатор содержит первый 10 и второй 101 элементы 2И вЂ” ИЛИ, третий коммутатор содержит первый 102, второй 103 и третий 104 элементы 2И вЂ” ИЛИ. Второй вычислительный модуль содержит второй 106 коммутатор (первый 110, второй 111, третий

112 и четвертый 113 элементы 2И вЂ” ИЛИ), первый 106 и второй 107 сумматоры-вычитатели, пятый 108, шестой 109 регистры промежуточных результатов и соответствующие связи. Новым в процессоре цифровой обработки сигналов является введение в вычислительных блоках вторых умножителей и сумматоров-вычитателей, блока регистров, второго, третьего и четвертого регистров промеЖуточных результатов, регистров выходных отсчетов, третьего коммутатора, узла формирования коэффициентов преобразования и.обусловленных ими связей. 1 з.п, ф-лы, 14 ил. данными между процессорными модулями держит четыре входных регистра, два коммутатора, первый умножитель, первый сумматор-вычитатель и два буферных регистра, причем информационные входы пер1789991 вого и второго входных регистров являются соответственно первым и вторым информационными входами вычислительного блока, первые выходы второго и третьего входных регистров соединены соответственно с первым и вторым информационными входами первого коммутатора, первый выход которого соединен с информационным входом первого буферного регистра, первые выходы первого и четвертого входных регистров соединены соответственно с первым и вторым информационными входами второго коммутатора, первый выход которого соединен с первым информационным входом первого сумматора-вычитателя, выход которого соединен с информационным входом второго буферного регистра, выход которого соединен с третьим информационным входом второго коммутатора, входы синхронизации с первого по четвертый входных регистров, первого и второго буферных регистров, соединенные между собой управляющий вход первого коммутатора и первый управляющий вход второго коммутатора, второй управляющий вход второго коммутатора и управляющий вход первого сумматора-вычитателя являются соответственно с первого по девятый управляющими входами группы вычислительного блока.

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

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

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

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

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

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

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

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

На фиг.1 изображена структура процессора цифровой обработки сигналов; на фиг.2 — структура блока синхронизации; на фиг.3 — функциональная схема блока регистров: на фиг.4 — функциональная схема модуля синхронизации блока синхронизации; на фиг.5 — функциональная схема модуля управления; на фиг.б — структура вычислительного блока модуля; на фиг.7; функциональная схема первого; на фиг.8— второго вычислительных модулей соответственно; на фиг.9 — 13 представлены временные диаграммы функционирования процессора; на фиг.14 — граф-схема алгоритма БПФ, реализуемого процессором.

Процессор (фиг.1) содержит аналогоцифровой преобразователь 1, блок 2 синхронизации, блок 3 регистров, и 8 вычислительных блоков 4.1...4.8, вход 5 обрабатываемого аналогового сигнала, вход 6 сигнала "Пуск", вход 7 сигнала "Стоп", первый 8 и второй 9 групповые выходы блока 3 регистров, первые 10.1, 10.8, вторые

1789991

20

45

11,1„,11.8 и третьи 12.1...12.8 выходы вычислительных модулей 4,1...4.8,групповой выход 13 блока 2 управления.

Блок 3 регистров (фиг,3) содержит первую 18.1 и вторую 18,2 группы регистров, каждая из групп регистров состоит из M = 8 регистров 18.1 N и 18,2 N соответственно, первый 19 и второй 20 элементы И, Модуль синхронизации (фиг.4) содержит BS-триггер 21, генератор 22 тактовых импульсов, счетчик 23, первый 24, второй

25, третий 26, четвертый 27, пятый 28 и шестой 29 элементы И, триггер 30.

Каждый модуль управления (для примера раскрыт первый 15,1 из них) (фиг.Ь) содержит счетчик 37, счетчик 38, первый 39, второй 40 триггеры, элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 41, элемент ИЛИ 42, первый 43, второй 44, третий 45, четвертый 46, пятый

47, шестой 48, седьмой 49, восьмой 50, девятый 51, десятый 52 и одиннадцатый 53 элемент И, первый 54, второй 55 триггеры, группу 56...65 входов группового выхода модуля управления.."

Все вычислительные блоки идентичны.

Каждый из них содержит первый 4.1 (фиг.6), он содержит первый 68, второй 69, третий

70 и четвертый 71 регистры, первый 72 и второй 73 вычислительные модули, первый

74 и второй 75 регистры результата первый

76 и второй 77 выходы первого 68 регистра, первый 80 и второй 81 выходы второго 69 регистра, первый 78 и второй 79 выходы третьего 70 регистра, первый 82 и второй 83 выходы четвертого 71 регистра, первый 84 и второй 85 выходы первого 72 вычислительного модуля, Первый вычислительный модуль (фиг.7) содержит узел 86 формирования коэффициентов, первый 87 коммутатор, третий 88 коммутатор, первый 89 и второй 90 блоки умножения, первый 91, второй 92, третий 93 и четвертый 94 регистры, узел формирова ния коэффициентов содержит счетчик 95, блок 96 памяти, регистр 97, первый 98 и второй 99 элементы 2И вЂ” ИЛИ,.первый коммутатор содержит первый 100 и второй 101 элементы 2И-ИЛИ, первый t02, второй 103 и тр ий 104 элементы 2И-ИЛИ. торой вычислительный модуль (фиг,8) содержит второй 105 коммутатор, первый

106 и второй 107 сумматоры-вычитатели, пятый 108 и шестой 109 регистры промежуточных результатов, второй коммутатор содержит первый 110, второй 111, третий

112 и четвертый 113 элементы 2И вЂ” ИЛИ.

На фиг,9 — 13 использованы обозначения, введенные на фиг,1 — 8.

На фиг.14 символами Х1, X2„...Х16 обозначены элементы входной последователь-. ности, символами У1, Y2...„Y16 — элементы выходной последовательности коэффициентов Фурье.

Рассмотрим назначение основных узлов процессора. Аналого-цифровой преобразователь (АЦП) 1 предназначен для приема аналогового сигнала с амплитудой, лежащей в пределах заданного диапазона, и формирования эквивалентного цифрового сигнала; т,е. и-разрядного параллельного двоичного сигнала, т.е. п-разрядного параллельного вдвоичного слова, представляющего этот сигнал. Взятые в фиксированные дискретные моменты времени они представляют собой последовательность входных отсчетов процессора, Цепи управления и синхронизации АЦП не показаны.

Устройство 2 управления предназначено для формирования последовательности сигналов для управление и синхронизации работы блока 3 регистров и групп 4.1...4,8 вычислительных блоков.

Рассмотрим порядок работы блока синхронизации.

В исходном положении все триггеры и счетчики находятся в нулевом состоянии.

По сигналу "Пуск", поступающему на вход 6, триггер 21 переходит в единичное состояние (временная диаграмма функционирования блока 14 синхронизации представлена на фиг,11).

По единичному сигналу с его прямого выхода генератор 22 тактового импульса начинает генерировать последовательность синхроимпул ьсов..

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

Счетчик 23 на выходе первого разряда делит входную последовательность синхроимпульсов на два, на выходе второго — на четыре, на выходе третьего — на восемь, на выходе четвертого — на шестнадцать, на выходе пятого — нэ тридцать два.

Элемент И 25 служит для выделения синхроимпульсов, порядковый номер которых равен А = n 88, где n = 1,2,3,... Таким образом, восьмой импульс из синхропоследовательности через элемент И 26 поступит на вход 35, а шестнадцатый через элемент

И 27 — нэ вход 34, двадцать четвертый импульс поступит вновь на вход 35 первой шины и т.д. Элемент И 24 служит для выделения синхроимпульса с порядковым номером двадцать. По этому импульсу триггер 30 переводится в единичное состояние и разрешает прохождение синхропоследовательности с выхода генератора 22, начиная с 21-го импульса через элемент И 28 на вход

1789991

33 первой выходной шины. Элемент И 29 служит для выделения последовательности синхроимпульсов.с порядковыми номерами

6 = 7+ и 16, и = 0,1,..., которая поступает на вход.36 первой шины. По сигналу "Стоп", поступающему на вход 7 процессора, триггеры 21 и 30 переводятся в нулевое состояние. Генератор 22 тактовых импульсов прекращает работы, счетчик 23 обнуляется.

Блок синхронизации переходит в исходное состояние. По запускающему сигналу на входе 6 процессора работа блока возобновится, как описано выше.

Каждый 15.i из группы 15.1...15.8 управляющих модулей предназначен для формирования последовательности сигналов, управляющих работой соответствующего

4,I, = 1,8 вычислительного блока. Рассмотрим порядок работы модуля на примере первого 15.1. В исходном состоянии счетчики 37 и 38, триггеры 39 и 40 обнулены. Первый импульс, поступающий с выхода 33 входной шины через элемент И 44 на первый синхровход счетчика 37, переводит его в очередное состояние, в котором единичный сигнал появляется на его первом выходе, по второму импульсу — на втором, по третьему — на первом и втором, по четвертому импульсу счетчик 37 обнуляется. По очередному им пул ьсу, и роходя щему на синхровход счетчика 37, порядок его работы повторяется, как описано выше, Исключение составляет ситуация, если в момент когда счетчик 37 обнулен, на входе 17.5 появляется единичный сигнал, то очередной импульс гасится и счетчик остается в нулевом состоянии до смены значения сигнала на выходе 17.5. Нулевое состояние счетчика

37 яляется идентификатором начала очередной итерации. Гашение импульса приводит к тому, что появляется возможность управлять временем начала итерации. . Когда на выходе первого разряда счетчика 37 присутствует единичный сигнал, а на втором — нулевой, через элемент И 52 на

J- и С-входы триггера 40 поступит импульс, который переведет его в единичное состояние; Единичный сигнал с прямого выхода триггера 40 разрешит прохождение синхроимпульсов в моменты, когда счетчик 37 бу- дет находиться в описанном состоянии на вход 61 шины 13.1.

При единичном сигнале с выхода элемента И 45, поступающему íà D-вход триггера 39, по синхроимпульсу с выхода 33 входной шины триггер 39 перейдет в единичное состояние, по этому же импульсу счетчик 31 перейдет в следующее состояние и на 0-входе триггера 39 появится нулевой сигнал, таким образом по очередному им10

15 ние и тд.

При этом единичный сигнал на выходе

25 по модулю два.

По единичному сигналу с выхода 7 вход30 ной шины счетчик 37, счетчик 38, триггер 39, та ются:

45 а) наличие в данный момент исходного отсчета А!, где — номер итерации.

1 б) с начала (I-1)-й итерации прошла не менее четырех тактов. Наличие отсчета А! определяется по едийичному сигналу на

50 втором выходе 17.j соответствующего 15.J модуля управления. О определяется из алгоритма БФП реализуемого процессором).

Второе условие реализуется переходом

40 пул ьсу с выхода 33 входной шины триггер 39 возвратится в исходное состояние. Обозначим через А последовательность сигналов с первого выхода, через  — последовательность с второго прямого выхода счетчика 37 — а  — инверсного, последовательность импульсов с выхода 33 входной шины обозначим как С, Тогда элемент И 46 реализует функцию Р1 = АВС. Счетчик 38 по первому импульсу последовательности Е1 перейдет в состояние, когда единичный сигнал появится на первом его выходе, по второму - на втором, по третьему на первом и втором, па четвертому он перейдет в исходное состояэлемента И 49 будет присутствовать только в тот момент, когда на первом выходе счетчика 38 присутствует единичный, а на втором — нулевой сигнал, Элемент И 47 реализует функциюФ2 = АС.

Элемент И 51 реализует функцию Рз = AB, Элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 41 реализует функцию F4 = А 9В, где символом

® обозначается операция суммирования триггер 40 перейдет B исходное состояние.

Рассмотрим порядок работы блока синхронизации в целом. Каждый 15.I из модулей управления по сигналам, поступающим на их первые входы с первого выхода блока

14 синхронизации, формирует на своем первом групповом выходе 13,! последовательность управляющих сигналов для соответствующего 4 !. i = 1,8 вычислительного блока. Начало выполнения базовой операции в данном 4.! вычислительном блоке определяется исходя из наличия условий для ее выполнения. Такими условиями счисчетчика 37 в исходное состояние).

Если первое условие реализуется на пятом такте (! — 1)-й итерации, то за счет гашения тактового импульса йа синхровходе счетчика 37, как было описано выше, происходит задержка на один такт начала I-й итерации. Таким образом, устройство

1789991

На информационный вход блока регистров поступают от АЦП входные отсчеты

Х1„.Х16. По нулевому значению сигнала на выходе 32 входной управляющей шины че- 15 рез элемент И 19 первые восемь тактовых импульсов пройдут на синхровходы первой группы регистров 18,1 1...18.1.8. Входные отсчеты, последовательно перезаписываясь из регистра в регистр, начиная с первого, в 20 конце oocI Inoro такта окажутся записанными в следующем порядке: Х1 — в регистре

18.1.8...Х8 — в регистре 18.1.1. После чего, на выходе 32 появляется единичный сигнал и вторые восемь отсчетов Х9...Х16 аналогич- 25 ным образом окажутся записанными во вторую группу регистров 18.2.1...18,2,8. После этого сигнал на выходе 32 вновь меняет знак и процесс формирования пакетов входных отсчетов повторяется, 30

Вычислительный блок 4,i служит для выполнения i-й базовой операции над входными отсчетами А и В. Рассмотрим работу вычислительного блока при выполнении ба- 35 зовой операции.

Базовая операция алгоритма БПФ заключается в вычислении по формулам;

CR = BR+ ARWR — А1Ж;

DR =  — ARWR+ A1W1:

CI = В! + АяяЯк+ AIWI, 0! = BI — ARNfI — AIWR где

А = RI (AR) + jim (А!), В = R! (BR)+ ) Im (BI) 45 — исходные данные для базовой операции, поступа!ощие в вычислительный блок 4Л с соответствующих первого 8Л и второго 9Л,i=

= 1,8 блоков регистров;

С = RI(CR)+jim (C!); 50

D = RI (0R)+ jim (DI) — результаты базовой операции, выдаваемые вычислительным блоком по мере готовности на выход 10Л и принимаемые как исходные данные А и В для базовых опера- 55 ций соответствующими блоками 4.j согласно графу алгоритма БПФ (фиг.14) и заданной схеме расположения шин процессора.

Таким образом:

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

Блок регистров (фиг.3) служит для формирования двух пакетов входных отсчетов;

Х1...Х8... и X9...X16, которые воспринимаются процессором как В1...В8 и А1...A8; 10

В2 = D1, В7 = C4;A4 =06:

Вз =C2; Be =04;А5 =C7, Аа =06

I+1 i, I+1 !, l+1 I, 1+1

В5 =СЗ;А2 =05, А7 =С8; где l = 1,2,3,4 — номер итерации, нижний индекс — номер вычислительного блока, равный номеру базовой итерации.

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

Y1=С1, Y2=С5 УЗ= СЗ Y4=С7,У5=С2, У6=С6, Y7=С4, Ye=С6, Yg=D1

4 4 4 4

Y10 = 05, У11 = 03, У1(= 07, У13 = 02, Y14 = 06, У15 = 04 Y16 = De

4, 4

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

В поступают из регистров 68 и 69 соответственно, а в остальных итерациях — соответственно из регистров 70 и 71, Базовая операция, описанная выше, вычисляется по следующему алгоритму. Вся итерация разбивается на 4 шага, на каждом из которых выполняется по две операции;

1. BR — ARWR = KR; В! — AIWR = К!;

2. KR + AIWI = 0К KI — ARWI = DI, 3. ВR + АВИ/Р = LR; В! + ARWR = LI;

5, Ы вЂ” AIW! = СВ; LI + AIWI = С!

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

13, Блоки умножителей и сумматоров-вычитателей не раскрываются до функциональных схем, так как зто принципиального значения не имеет, В качестве умножителя может быть использовано ПЗУ или программа — решающая логическая матрица (PLM), а в качестве сумматора-вычитателя-сумматор, у которого на одном из информационных входов по соответствующему управляющему сигналу осуществляется представление числа в дополнительном коде.

В исходном состоянии все счетчики, триггеры и регистры вычислительного блока обнулены. По первому синхроимпульсу, поступившему с выхода 35 шины 13.1 в регистр

69 с входа 8,1 будут занесены действительная В1R и мчимая В1! частивходногоотсче1 1 та Х1.

По второму тактовому импульсу, поступившему с выхода 34 шины 13,1 в регис1 р 68 с входа 8.1 занесутся действительная A1R и

1789991

15

25

40

50

55 мнимая Ац части входного отсчета Х9, в это

1 же время по первому синхроимпульсу с выхода 56 шины 13;1 в регистр 97 по первому и второму входу из нулевой строки блока 96 памяти будут занесены соответственно реальная WR и мнимая WI части первого весового коэффициента. Действительная AR u мнимая Ац части входного отсчета посту1 пят на первый и третий 76 и 77информацион ные входы первого 87 коммутатора соответственно, В первом такте итерации по нулевому сигналу с выхода 62 шины 13,1 действительная часть весового коэффициента WR поступит через коммутатор коэффициентов на первые входы первого 89 и второго 90 блоков умножителей соответст венно, на вторые входы которых с первого и второго выходов первого коммутатора поступят соответственно действительная A>R

1 и мнимая Ац части входного отсчета. В

1 блоках умножения 89 и 90 производится умножение реальной A1R и мнимой Ац частей

1 1 входного отсчета на действительную WR часть весового коэффициента. По нулевому значению сигнала с выхода 62 шины 13.1 по заднему фронту импульса с выхода 60 шины

13.1 в регистры 91 и 92 занесутся результаты вычислений А1я WR и Ац WR соответст1 1 венно. Во втором такте в соответствии с нулевым сигналом на выходе 62 и единичным сигналом на выходе 64 шины 13,1 сформированные результаты вычислений с выходов регистров 91 и 92 через третий коммутатор 88 поступят на первые информационные входы первого 106 и второго 107 сумматоров-вычитателей соответственно, На вторые их информационные входы с вхо.дов 80 и 81 по единичным сигналам с выходов 61 и 64 поступают соответственно действительная В1я и мнимая Вц части

1 1 второго входного отсчета. По единичным сигналам с выходов 65 и 62 шины 13.1 в первом 106 и втором 107 сумматорах-вычитателях производится операция вычитания:

BR — ARWR = KR; BI = AIWR — KI

В этом же такте по единичному сигналу с выхода 62 шины 13.1 через коммутатор коэффициентов на первые входы первого 89 и второго 90 умножителей поступит мнимая часть WI весового коэффициента и в них будет произведено умножение реальной

Ащ и мнимой Ац частей входного отсчета

1 на мнимую WI часть весового коэффициента. По заднему фронту импульса с выхода 63 по единичному сигналу с выхода 62 шины

13.1 результаты умножений ARwI u AIwI занесутся соответственно в регистры 93 и 94.

По импульсу с выхода 63 шины 13.1 счетчик

95 перейдет в состояние, в котором единичный сигнал появляется на его первом выходе, т.е. формируется адрес первой линейки в блоке 96 памяти, где записан очередной коэффициент. Полученные во втором такте промежуточные значения KR u KI по заднему фронту импульса с выхода 57 шины 13.1 занесутся в регистры 108 и 109 соответственно. В третьем такте на первые входы первого 106 и второго 107 сумматоров-вычи10 тателей по нулевому сигналу на выходе 64 и единичному на выходе 62 шины 13.1 поступят результаты AIWI u ARWI соответственно, а на вторые входы KR и К1 соответственно. В этом такте первый сумматор-вычитатель 106 работает в режиме сумматора, второй 107 в режиме вычитателя. В конце такта на выходах первого 106 и второго 107 сумматороввычитателей формируются соответственно реальная Ор,=  — ARWR + AIWI и мнимая

DI = BI — А И/к — АвМ/ части преобразованного отсчета, поступающие на выход 10.1 вычислительного блока.

В четвертом такте первый 106 и второй

107 сумматоры-вычитатели работают в режиме сумматоров (так как на выходах 62 и

65 шины 13.1 присутствует нулевой сигнал), в них производится вычисление первых промежуточных значений второго преобразованного отсчетов;

LR = BR+ ARWR, LI = В! +АяЮв, которые по синхроимпульсу с выхода 57 шины 13.1 будут занесены в регистры 108 и 109 соответственно. По импульсу с выхода 56 шины 13.1 сформированный второй весовой коэффициент, его действительная и мнимая части, будут занесены в регистр 97. В пятом такте первый 106 сумматор-вычитатель работает в режиме вычитателя, а второй 107— в режиме сумматора. На первые их входы поступит результат AIWI, на вторые — промежуточные LK и 4 соответственно. В конце o такта на выходах первого 106.и второго 107 сумматоров-вычитателей формируются ñîответственно реальная CR = RR + ARWR—

AIWI и мнимая CI = В} — ARWR + AIWI части второго преобразованного отсчета. Входные отсчеты А1 и В1 по мере формирования заносятся в регистрй 70 и 71 по импульсам, поступающим с выходов 58 и 59 шины 13.1 соответственно, Если выходной отсчет А1 к пятому такту I — 1 итерации уже сформирован и записан в регистр 70, то в этом такте наряду с вышеопиСаннымй операциями сложения-вычитания начинается первый такт следующей итерации аналогично тому, как было описано выше. Таким образом. происходит перекрытие итерации. В противном случае очередная итерация начинается спустя такт.

1789991

20

30

40

В конце четвертой итерации по импульсу с выхода 36 первый 54 и второй 55 K-триггеры в соответствующем модуле управления перейдут в единичное состояние, чем разрешат запись преобразованных .отсчетов 01 и С1, которые будут являться коэффициентами Фурье У1 и У9 соответственно по задним фронтам сигналов с выходов 16,1 и 17.1 шины 13.1 в регистры 74 и 75 результатов соответственно. По этим же сигналам триггеры 54 и 55 возвращаются в исходное состояние.

Рассмотрим порядок функционирования процессора в целом. На фиг.9 и 10 представлена временная диаграмма выполнения базовых операций вычислительными блоками, На общей шкале абсцисс отмечены номера вычислительных блоков N. Для каждого из Й вычислительных блоков по этой оси отменены номера итерации = 1,2,3,4. По оси ординат — время. На вход 6 устройства 2 управления поступает сигнал "Пуск", На первом выходе этого блока появляются последовательности управляющих сигналов. На этот вход 5 аналого-цифрового преобразователя 1 постуйаат исходный аналоговый сигнал, из которого он формирует эквивалентный цифровой сигнал в виде и-разрядного параллельного двоичного слова, которое является входным отсчетом Хь = 1,16 для вычислительной части процесса, Первая группа X1...Õ16 входных отсчетов накапливается в блоке 3 регистров и по сигналам с второго выхода 13 устройства 2 управления заносится в соответствующие первые и вторые регистры вычислительных блоков.

Все N = 8 вычислительных блоков начинают выполнять свои базовые операции в первой итерации для первой группы входных отсчетов Х1...X16 одновременно.

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

Начало третьей итерации в третьем и седьмом вычислительных блоках станет возможным также на пятом такте выполнения второй итерации в этих блоках. Выполнение третьей итерации в первом и пятом вычислительных блоках начнется по окончании пятого такта 2-й итерации в этих блоках, тем самым эти блоки будут отставать от четных на два такта, а от третьего и седьмого — на один. Начало четвертой итерации в четвертом, шестом и восьмом вычислительных блоках совпадает с пятым тактом вычислений третьей итерации в этих блоках. Второй, третий и седьмой блоки начнут выполнение этой итерации через такт, а первый блок задержится еще на один такт, Часть выходных отсчетов первой группы у161, у141, у15 появится на 15-ом такте обработки первой группы входных отсчетов. Отсчеты Y1z1, У1, У1з — на шестнадцатом, отсчеты Ув, 1 1

Yg, У1о, Yz — на семнадцатом, отсчеты У4

1 1

Уз, Ys, Yo — на восемнадцатом. отсчет У1

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

Начиная с этого момента времени, заканчивается режим втягивания процессора и далее все вычислительные блоки функционируют с неизменным сдвигом начала вычислений в очередных итерациях, тем самым процессор переходит в стационарный режим (фиг.10), По сигналу "Стоп" на входе 7 устройства управления прекращается генерация последовательностей управляющих сигналов, элементы процессора переходят в исходное состояние. По очередному сигналу "Пуск" работа процессора возобновится по выше описанному алгоритму.

1789991

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

1. Процессор цифровой обработки сигналов, содержащий N вычислительных блоков (где N — размерность преобразования) и блок синхронизации, N групп выходов которого соединены с группами управляющих входов соответствующих N вычислительных блоков, первый информационный выход Кго (К = 11N2) вычислительного блока соединен с первыми информационными входами

2К-го и (2К вЂ” 1)-го вычислительных блоков, пе вый информационный выход M-ro (M =

N 2 + 1,N) вычислительного блока соединен с вторыми информационными входами (2М вЂ” N/2)-го и (2М вЂ” N/2 + 1)-го вычислительных блоков, причем каждый вычислительный блок содержит четыре входных регистра, дза коммутатора, первый умнсжитель, первый сумматор-вычитатель и два буферных регистра, причем информационные входы первого и второго входных регистров являнлся соответственно первым и вторым информационными входами вычислительного блока, первые выходы второго и третьего входных регистров соединены соответственно с первым и вторым информационными входами первого коммутатора, первый выход которого соединен с первым входом первого умножителя, выход которого соединен с информационным входом первого буферного регистра, первые выходы первого и четвертого входных регистров соединены соответственно с первым и вторым информационными входами второго коммутатора, первый выход которого соединен с первым информационным входом первого сумматора-вычитателя, выход которого соединен с информационным входом второго буферного регистра, выход которого соединен с третьим информационным входом второго коммутатора, сходы синхронизации с первого по четвертый входных регистров, первого и второго буферных регистров, соединенные между собой, управляющий вход первого коммутатора и первый управляющий вход второго коммутатора, второй управляющий вход второго коммутатора и управляющий вход первого сумматора-вычитателя являются соответственно с первого по девятый управляющими входами группы вычислительного блока, о т л и ч а юшийся тем, что, с целью повышения производительности, он дополнительно содержит блок регистров, а каждый вычислительный блок дополнительно содержит узел формирования коэффициентов и реобразования, третий коммутатор, второй умножитель, второй сумматор-вычитатель, два выходных регистра и с третьего по шестой буферные регистры, причем информэционный вход блока регистров подключен к информационному входу процесса, первый и второй входы синхронизации блока регистров подключены соответственно к первому и второму выходам блока синхронизации, первый и второй выходы блока регистров подключены соответственно к третьему и четвертому информационным входам вычислительных блоков, второй и третий информационные выходы которых образуют группу информационных выходов процессора, третий и четвертый информационные входы каждого вычислительного блока подключены к информационным входам соответственно третьего и четвертого входах регистров, выходы первого и второго сумматоров-вычитателей образуют первый информационный выход вычислительного блока, второй и третий информационные выходы которого являются соответственно выходами первого и второго выходных регистров, информационные входы которых подключены к выходам соответственно пер- вого и второго сумматоров-вычитателей, выход второго сумматора-вычитателя подключен к информационному входу третьего буферного регистра, выход которого соединен с четвертым информационным входом второго коммутатора, пятый и шестой информационные входы которого подключены к вторым выходам соответственно первого и четвертого входных регистров, второй выход второго коммутатора соединен с первым информационным входом второго сумматора-вычитателя, вторые информационные входы первого и второго сумматоров-вычитателей соединены соответственно с первым и вторым выходами третьего коммутаторов, второй выход первого коммутатора соединен с первым входом второго умножителя, выход которого соединен с информационными входами четвертого и пятого буферных регистров, выходы которых соединены соответственно с первым и вторым информационными входами третьего коммутаторов, третий и четвертый информационные входы которого соединены с выходами соответственно пер- . вого и шестого буферных регистров, информационный вход шестого буферного регистра соединен с выходом первого умножителя, третий и четвертый информационные входы первого коммутатора соединены с вторыми выходами соответственно второго и третьего входных регистров, вторые входы первого и второго умножителей соединены соответственно с первым и вторым выходами узла формирования коэффициентов преобразования, вход синхронизации третьего буферного регистра соединен с

1789991

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

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

1789991

1789991

1789991

1789991

1789991

Ябй ам5

ЛББб

ЯИ7 в

Я уг

И8б

107

Т7Е

Т75

ИИ

%71 (ГВМУ(3

Я

О

Я

И

59

Я

И

58

И

f75

777

1789991

Составитель К. Воробьев

Редактор О.Стенина Техред М.Моргентал Корректор Н.Слободяник

Заказ 350 Тираж Подписное

ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР

113035, Москва, Ж-35, Раушская наб., 4/5

Производственно-издательский комбинат "Патент", г. Ужгород, ул.Гагарина, 101 х

У

Ху

Х6

Хъ

Х

Ху ю о

Х72 хц

Х7Д

Х7

Х16

"7

У

У

Yg уз

777

Уу

"75 2

У7р

Ъ

Ъ

Yg

Уц

Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов Процессор цифровой обработки сигналов 

 

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

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

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

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

Изобретение относится к вычислительной технике и может быть использовано при разработке и моделировании вычислительных систем

Изобретение относится к области кибернетики и вычислительной техники и может быть использовано при обработке и распознавании изображений объектов

Изобретение относится к области кибернетики и вычислительной техники и может быть использовано при обработке и распознавании изображений объектов

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

Изобретение относится к электронным играм

Микроэвм // 2108619
Изобретение относится к области микропроцессорной техники, в частности, может применяться для реализации обмена информацией

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

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

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

Изобретение относится к вычислительной технике, точнее к построению многопроцессорных векторных ЭВМ

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

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