Систолический процессор цифровой обработки сигналов
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может быть использовано в специализированных системах обработки сигналов и изображений высокой производительности. Цель изобретения - расширение области применения путем выполнения цифровой фильтрации. Поставленная цель достигается благодаря тому, что в состав процессора входят информационные входы 1,2, первый, второй и третий входы 3-5 коэффициентов, блок 6 весовой обработки, матрицы 7,8 вычислительных блоков, блок 9 сдвиговых регистров, сумматор 10, блок 11 синхронизации, информационный выход 12 процессора. 4 ил., 1 табл.
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИН
cog 4 G 06 F 15/332
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К А ВТОРСКОМУ СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ НОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМ
ПРИ ГКНТ СССР (21) 4299880/24-24 (22) 26.06.87 (46) 07.04.89. Бюл. К- 13 (71) Ленинградский институт точной механики и оптики (72) Г.А.Кухарев, Ю.А.Тропченко, В,С.Скорняков и В.П.Голубев (53) 681.32(088.8) (56) Авторское свидетельство СССР
В 1196894, кл. G 06 F 15/332, 1985.
Авторское свидетельство СССР 9 1363243, кл. С 06 F 15/332, 1987. (54) СИСТОЛИЧЕСКИЙ ПРОЦЕССОР ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛОВ (57) Изобретение относится к вычис„„80„„1471200 А 1 лительной технике и может быть использовано в специализированных системах обработки сигналов и изображений высокой производительности. Цель изобретения — расширение области применения путем выполнения цифровой фильтрации. Поставленная цель достигается благодаря тому, что в состав процессора входят информационные вхо:ды 1, 2, входы 3-5 козффициентов, блок б весовой обработки, матрицы 7, 8 вычислительных блоков блок 9 сдвиговых регистров, сумматор 10, блок 1! синхронизации, информационный выход 12 процессора. 4 ил. 1 табл.
147 i 200
Изобретение относится к вычислительной технике и может быть использовано в специализированных системах обработки сигналов и и"- бражений вы5 сокой производительности.
Цель изобретения — расширение области применения за счет выполнения операций цифровой фильтрации.
На фиг. 1 представлена функциональ-р ная схема процессора; на фиг. 2 функциональная схема блока весовой обработки, на фиг, 3 — схема первого третьего и четвертого коммутаторов; на фиг. 4 — схема второго комму-15 татора.
Процессор (фиг. 1) содержит первый 1 и второй 2 информационные входы, первый 3, второй 4 и третий 5 входы коэффициентов, блок 6 весовой 30 обработки, первую 7 и вторую 8 матрицы вычислительных блоков, блок 9 сдвиговых регистров, сумматор 10, блок 11 синхронизации, информационный выход 12 процессора.
Блок весовой обработки (фиг. 2) содержит входы 13 и 14 первого и второго операндов, информационные входы
1 5 и 16, вход 17 коэффициента, первый коммутатор 18, умножитель 19, второй коммутатор 20, элемент НЕ 21, третий коммутатор 22, четвертый ком- мутатор 23, узел регистров 24, умножитель 25, первый 26 и второй 27 выходы промежуточного результата, информационный выход 28 и вход 29 управления и синхронизации.
Первый, третий, четвертый коммутаторы (фиг. 3) содержат первый 30 и второй 31 входы, элементы И 32 и 33, 40 управляющий вход 34, элемент НЕ 35, элемент ИЛИ 36 и выход 37.
Второй коммутатор (фиг. 4) содержит вход 38, управляющий вход 39, элементы И 40 и 41, элемент НЕ 42, 45 выход 43, элемент ИЛИ 44, вход 45, элементы И 46 и 47, управляющие входы 48 и 49, элемент НЕ 50, элемент
ИЛИ 51, выходы 52 и 53.
Процессор работает следующим об- 5р разом.
Пусть, например, вычисляется двумерная функция автокорреляции. При поступлении соответствующей команды на вход управления блока 11 синхро- 55 низации ее код дешифрируется и в ви-; де совокупности управляющих сигналов: у 1у у у у у < упРавления поступает н управляющие входы коммутаторов 18, 20, 22 и 23 блока 6 весовой обработки.
При поступлении на управляющий вход коммутатора 18 управляющего сигнала у„ = 0 вход умножителя 19 подключается к входу 15 блока весовой обработки, соединенному с информационным входом 1 процессора, При этом на умножитель 19 поступает текущий отсчет исходных данных х„„(К = 1,N; п = 1,N N — размер отрабатываемой матрицы). На вход умножителя 19 через вход 5 весовых множителей, подключенный к входу 17 блока весовой обработки, поступают симметрирующие весовые множители или весовые множители функции "окна"
7 ехр(-j — -(N-1) (n+k)$ при нечетN ном N ехр(-17 (n+k)) при четном И; при несимметричном спектре, Г„ при весовой обработке на входе.
Взвешенные или сфазированные отсчеты входных данных поступают с выхода умножителя 19 на вход систолической матрицы 7, подключенный к вы-. ходу 27 блока 6. После загрузки строки данных х размером М и при поступлении на вход систолической матрицы
7 с входа 3 весовых множителей весового множителя Ы " первая систоличес- . кая матрица выполняет одномерное пре-, образование Фурье вида
C, =(x, 1 (x +1 (V (x ...+ x ))))" ц о °
С -(х,+У (х +И (x +W (х +...+У х„)))1
С =(х,+V (х +И" (х +М (х +...
С„=(х,+4J (xq+M (х +M (х +....
+V х„)))3 W ", где И = ехр(-j2!!/N).
Отсчеты С (k = 1,N) одномерного
ДПФ по строке данных поступают с выхода первой систолической матрицы 7 на вход 13 блока 6, к которому под1471200 ключен вход второго коммутатора 20.
При поступлении на управляющий вход коммутатора 20 управляющего сигнала у = О выход второго коммутатора 20, соединенный с выходом 26 блока 6, подключается к входу второй систоли . ческой матрицы 8 и входу сумматора 10
При этом на вход весовых множителей поступают весовые множители вида W в темпе поступления данных с выхода
26 блока 6. При этом вторая матрица
8, сумматор 10 и связанный с ними блок 9 сдвиговых регистров выполняют преобразование Фурье матрицы данных 15 по второй координате. После обработки N строк данных по И отсчетов будет сформирована матрица результатов двумерного преобразования Фурье
20 ук1 =С 1к + (С ек+ " (к+ (С к +
+и c„„) ) );
y„, =С,„+W (С,„+Ы (С,Ä+W (С„+...
+и с„))) 3
Уке=СМ+И (С,„+й (C zÄ +W (С к+ ° °
+И С )))
Укее =Сек +W (С „+W (С к+ЪХ (С „+ ..
+w" c„„))), где W = дахр I-j2ti/Nj.
Отсчеты двумерного ДПФ с общего выходе блока 9 сдвиговых регистров поступают на вход 14 блока 6. При на- 40 личин на управляющем входе второго коммутатора 20 управляющего сигнала у = 1 результаты двумерного ДПФ через вход коммутатора поступают на выход данного коммутатора и с него 45 на вход элемента НЕ 21 и вход четвертого коммутатора 23. Элементом HP
21 выполняется инверсия знака мнимой части операнда, что позволяет сформировать комплексно-сопряженное значе-. ние
Уфе =а ке+j sign(b << ) (b ке ) 1 где ак и Ь „, соответственно действи- 55 тельная и мнимая части комплексного отсчета у „,. С выхода элемента НЕ 21 знакового разряда отсчеты у+е посту,пают на вход третьего коммутатора 22.
При поступлении на управляющий вход третьего коммутатора 22 управляющего сигнала у = О комплексно-сопряженные отсчеты у* спектра с выхода элемента ке
НЕ 21 поступают через третий коммутатор 22 на вход умножителя 25. Одновременно с этим при наличии управляющего сигнала у = 1 на управляющем входе коммутатора 20 отсчеты спектра у,с выхода второго коммутатора 20 поступают на вход умножителя 25. С выхода последнего результаты умножения Е ке = у„, у*„, представляющие собой спектральные отсчеты двумерной функции автокорреляции, поступают на выход 28 блока 6 и далее на информационный выход 12 проиессора.
Для выполнения обратного преобразования Фурье, которое необходимо для получения функции автокорреляции в пространственно-временной области, . на вход блока 11 синхронизации поступает следующая команда, соответствующая выполнению обратного преобразования Фурье, которая также дешифрируется и интерпретируется в виде новой последовательности управляющих сигналов у у у у у у ° При поступлении сиг нала у „ = 1 на управляющий вход первого коммутатора 18 происходит отключение входа первого умножителя 19 от первого информационного входа 1, являющегося входом 15 блока 6, а вход первого умножителя 19 подключается коммутатором 18 к выходу умножителя
25. При поступлении на вход 3 весовых множителей коэффициентов вида
И " íà вход 4 весовых множителей коэффициентов вида W-Е" "и на вход 5 весовых множителей коэффициентов вида И- кн и сохранении управляющего сигнала у = 0 на управляющем входе второго коммутатора 20 систолические.матрицы 7 и 8 в совокупности с блоком 9 и сумматором выполняют обратное преобразование
Фурье над данными, поступающими из блока 6 в первую систолическую матри цу 7. При поступлении управляющего сигнала у = 0 на управляющий вход второго коммутатора 20 происходит отключение выхода указанного коммутатора от входа элемента HF 21, и (независимо от управляющего сигнала у на управляющем входе второго коммутатора 20) отсчеты данных поступают с выхода коммутатора только на вход
5 147 умножителя 25. При поступлении управляющего сигнала у = 1 на управляюр щий вход третьего коммутатора 22 происходит отключение выхода элемента
НЕ 21 от входа умножителя 25 и подключение выхода узла регистров 24 к входу умножителя 25. Одновременно из узла регистров 24 по адресу, указанному в поступившей в блок 11 синхронизации команде выбирается масштабная константа, в результате чего на выходе умножителя 25 сформирован результат, соответствующий отсчету функции автокорреляции, приведенной к заданному масштабу. С выхода умножителя 25 указанные отсчеты поступают на выход 28 блока 6 и далее на информационный выход 12 процессора.
При выполнении других функций, например свертки или при выполнении фильтрации, преобразования Фурье меняются команды, поступающие на вход блока 11 синхронизации. При этом операции свертки, автосвертки, фильтрации, авто- и взаимокорреляции требуют двух команд. Каждой команде соответствует определенный набор управляющих сигналов у) у 7у у йу ху6 посту пающих на управляющие входы коммутаторов 18, 20, 22 и 23. Кодовые комбинации этих сигналов, соответствующие различным операциям, реализуемым в процессоре, приведены в таблице.
При выполнении операций свертки и фильтрации весовые функции могут быть загружены в узел регистров 24 или через информационный вход 21 процессора, соединенный с входом 16 бло" ка 6, либо через четвертый коммутатор 23 с выхода элемента НЕ 21. В последнем случае весовая функция в спектральной плоскости рассчитывается через преобразование фурье от некоторой эталонной функции, заданной в координатной плоскости. Переключение каналов загрузки узла регистров 24 осуществляется четвертым коммутатором
23, а переключение режима записьсчитывание — по управляющему сигналу у,р, поступающему на управляющий вход узла регистров 24.
Работой процессора управляет стандартный блок 11 синхронизации, в который по входу управления поступает команда на выполнение той или иной операции в процессоре.
Данная команда в блоке 11 дешифрируется и сформированные управляющие
1200 сигналы по выходу шины управления поступают на управляющие входы коммутаторов 18, 20, 22 и 23 и узла регистров 24, куда поступают сигналы записи-считывания.
По выходу шины синхронизации блока
11 сигналы синхронизации, выработанные генератором тактовых импульсов
10 и счетчиком, поступают на тактовые входы операционных блоков матриц 7 и 8, а также на тактовый вход блока
9 сдвиговых регистров. При поступлении тактового импульса организуется
15" пересылка данных от второй матрицы 8 блоку 9 сдвиговых регистров и обратно и от сумматора 10 к блоку 9 и наоборот.
20 формула изобретения
Систолический процессор цифровой . обработки сигналов, содержащий первую и вторую матрицы иэ N-1 (N — объем входной выборки) вычислительных блоков, блок сдвиговых регистров, сумматор и блок синхронизации, причем первый выход результата и выход коэффициента i ro (i = 1,N-2) вычисли30 тельного. блока первой и второй матриц подключены соответственно к входам первого операнда и коэффициента (i+
+1)-ro вычислительного блока соответственно первой и второй матриц, входы коэффициентов первых вычислительных блоков первой и второй групп являются соответственно первым и вторым входами хозффициаита процессора второй выход результата j — го (j=l,N-1)
40 вычислительного блока второй матрицы подключен к (3+1)-му информационному входу блока сдвиговых регистров, (j+1)-й выход которого подключен к входу второго операнда j-го вычисли45 тельного блока второй матрицы, выход сумматора подключен к первому информационному входу блока сдвиговых регистров, первый выход которого подключен к первому входу сумматора, 50 первый выход блока синхронизации подключен к тактовому входу блока сдвиго вых регистров и входам синхронизации
1-х вычислительных. блоков первой и второй матриц; о т л и ч а ю щ и й— с я тем, что, с целью расширения области применения за счет выполнения операций цифровой фильтрации, в него введен блок весовой обработки, информационный выход которого является ин1471200
Кодовая комбинация
I I
Операция у1 у7 Э 4 у ь уст
1 0 0
0 0
1 0 0
0 0
0 0
0 0
Двумерное ДПФ
Одномерное ДПФ
Обратное двумерное ДПФ
Обратное одномерное ДПФ
Двумерная фильтрация
Одномерная фильтрация
Формирование и запись ядра функции свертки
Запись ядра свертки
1 0
0
0 формационным выходом процессора, первым и вторым информационными входами которого являются соответственно первый и второй информацион5 ные входы блока весовой обработки, вход коэффициента которого является третьим входом коэффициента процессора, второй выход результата j-го вычислительного блока первой матрицы подключен к входу первого операнда блока весовой обработки, первый выход промежуточного результата которого подключен к второму входу сумматора и входу первого операнда пер- 15 ваго вычислительного блока второй матрицы, выход последовательной выдачи блока сдвиговых регистров подключен к входу второго операнда блока весовой обработки, вход синхрОни- 20 зации и управляющий вход которого подключены соответственно к первому и второму выходам блока синхронизации, второй, выход промежуточного результата блока весовой обработки под- 25 ключен к входу первого операнда первого вычислительного блока первой матрицы, причем блок весовой обработки содержит первый и второй умножители, элемент НЕ, узел регистров, пер- 30 вый, второй, третий и четвертый коммутаторы, при этом выход первого коммутатора подключен к первому входу первого умножителя, второй вход которого является входом. коэффициента блока весовой обработки, управляющим входом которого является управляющий вход второго коммутатора, первый выход которого подключен к первому входу второго умножителя, вы-. ход которого подключен к первому информационному входу первого коммутатора и является информационным выходом блока весовой обработки, первым выходом промежуточного результата которого является второй выход второго коммутатора, первый и второй информационные входы которого являются входами соответственно первого и второго операндов блока весовой обработки, входом синхронизации которого являются соединенные между собой управляющие входы первого, третьего и четвертого коммутаторов и вход синхронизации узла регистров, выход которого подключен к первому информационному входу третьего коммутатора, выход которого подключен к второму входу второго умнажителя, третий выход второго коммутатора подключен к первому информационному входу четвертого коммутатора и входу элемента НЕ, выход которого подключен к второму информационному входу третьего коммута,тора, выход четвертого коммутатора подключен к информационному входу узла регистров, вторые информационные входы первого и четвертого коммутаторов являются соответственно первым и вторым информационными входами блока весовой обработки, вторым выходом промежуточного результата которого является выход первого умножителя.
)О
14 1200
Операция
0 0
0
О
0
О
0
0 . 0
O 1
0
О 0
0 1
0
Двумерная автокорреляция
Двумерная взаимокорреляция
Одномерная автокорреляция
Одномерная взаимокорреляция
Двумерная свертка
Одномерная ,Ф свертка
Продолжение таблицы
Кодовая комбинация
"J" !
Составитель А.Баранов
Редактор А.Мотыль Техред Л.Олийнык j KoppeKTop М.Пожо
Заказ 1610/51 Тираж 667 Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-издательский комбинат "Патент", г. Ужгород, ул. Гагарина, 101