Изобретение относится к области вычислительной техники и может быть использовано в специализированных системах обработки сигналов высокой производительности для вычисления трехмерного ДПФ.
Известно устройство, реализующее систолический способ вычисления одномерного ДПФ и содержащее два коммутатора, операционный блок, два блока постоянной памяти, группу из К-1 (К размер преобразования) операционных блоков, группу и К блоков хранения и блок управления /1/.
Недостатком этого устройства является невозможность вычисления трехмерного ДПФ.
Наиболее близким по технической сущности является устройство, реализующее систолический способ вычисления трехмерного ДПФ для данных размером N1•N2•N3 и содержащее три многоканальные систолические матрицы, причем первая многоканальная систолическая матрица содержит N1 вычислительных ячеек N1 запоминающих ячеек (каждая запоминающая ячейка содержит регистр и сумматор), вторая многоканальная систолическая матрица содержит N2 вычислительных ячеек (емкость каждой запоминающей ячейки составляет 2N1-1 регистров) и третья систолическая матрица содержит N3 вычислительных ячеек и N3 запоминающих ячеек (емкость каждой запоминающей ячейки составляет 2N1N2 1 регистров) /2/.
Недостатком такого устройства является большой объем оборудования и невысокая технологичность при реализации на сверхбольших интегральных схемах за счет наличия многоразрядных длинных выходных первой и второй многоканальных систолических матриц соответственно со входами второй и третьей многоканальных систолических матриц.
Устройство для вычисления трехмерного дискретного преобразования Фурье (фиг. 1, 2) содержит N1 вычислительных модулей 7, где N1 - размерность входных данных x(i2, i3, i4), 0≅i2≅N1-1, 0≅i3≅N2-1, 0≅i4≅N3-1, причем информационный вход 1 устройства подключен к первому информационному входу первого вычислительного модуля 7о, 2i-й вход группы информационных входов подключен ко второму информационному входу 7i-го вычислительного модуля, первый 3, второй 4 и третий 5 управляющие входы устройства подключены соответственно к первому, второму и третьему управляющим входам первого вычислительного модуля 7о, информационный выход, первый, второй и третий управляющие выходы 7i-го вычислительного модуля подключены соответственно к информационному входу, первому, второму и третьему управляющим входам 7 (i+1)-го вычислительного модуля, второй информационный выход 7i-го вычислительного модуля подключен к 8i-му выходу устройства, тактовый вход 6 которого подключен к синхровходам всех вычислительных модулей 7, при этом в вычислительном модуле 7 первый 9 информационный вход подключен к первым входам элементов И 22 первой группы и информационному входу первого 18 регистра, выход которого подключен к первому входу умножителя 16 и первому 52 информационному выходу вычислительного модуля, выходы элементов И 22 первой группы подключены к соответствующим первым входам элементов ИЛИ 38 первой группы, выход которых подключен к информационному входу первого регистра 201 первой группы, выход которого подключен к первым входам элементов И второй 23, третьей 34 и четвертой 33 групп, вторые входы элементов И 23 второй группы подключены к выходу элемента ИЛИ-НЕ 51, а выходы к соответствующим первым входам элементов ИЛИ 39 второй группы, выходы которых подключены к информационному входу второго регистра 202 первой группы, выход 20i-го регистра первой группы подключен к информационному входу 20(i+1)-го регистра, выход 20N3-го регистра первой группы подключен к первым входам элементов И пятой 24 и шестой 26 групп, вторые входы элементов И 24 пятой группы подключены к выходу первого элемента ИЛИ 45, а выход ко вторым входам элементов ИЛИ 38 первой группы, выход второго элемента ИЛИ 46 подключен к первым входам элементов И 25 седьмой группы, выходы которых подключены к соответствующим вторым входам элементов ИЛИ 39 второй группы, выходы элементов И 26 шестой группы подключены к соответствующим первым входам элементов ИЛИ 40 третьей группы, вторые входы которых подключены к соответствующим выходам элементов И 28 девятой группы, а выходы к информационному входу первого регистра 211 второй группы, выход которого подключен к первым входам элементов И десятой 27, одиннадцатой 36 и двенадцатой 35 групп, выходы элементов И 27 десятой группы подключены к соответствующим входам элементов ИЛИ 41 четвертой группы, выходы которых подключены к информационному входу второго регистра 212 второй группы, выход 21i-го регистра подключен к информационному входу 21 (i+1)-го регистра, выход 21 N3(N1+N2)-го регистра подключен к первым входам элементов И девятой 28 и тринадцатой 31 групп, второй 10 информационный вход вычислительного модуля подключен к первым входам элементов И 30 четырнадцатой группы, выходы которых подключены к соответствующим первым входам элементов ИЛИ 42 пятой группы, вторые входы которых подключены к соответствующим выходам элементов И 31 тринадцатой группы, а выходы к информационному входу второго 19 регистра, выход которого подключен к первым входам элементов И пятнадцатой 32 и шестнадцатой 37 групп, а синхровход к выходу элемента И 50, первый вход которого подключен к выходу третьего элемента ИЛИ 47, выход четвертого элемента ИЛИ 48 подключен ко вторым входам элементов И 32 пятнадцатой группы, выходы которых подключены к соответствующим первым входам элементов ИЛИ 43 шестой группы, вторые входы которых подключены к соответствующим выходам элементов И 34 третьей группы, а третьи входы к соответствующим выходам элементов И 36 одиннадцатой группы, второй вход умножителя 16 подключен к выходам элементов ИЛИ 43 шестой группы, а выход к первому входу сумматора 17, второй вход которого подключен к выходу элементов ИЛИ 44 седьмой группы, первые входы которых подключены к соответствующим выходам элементов И 35 двенадцатой группы, а вторые входы к соответствующим выходам элементов И 37 шестнадцатой группы, выход сумматора 7 подключен ко вторым входам элементов И 25 седьмой группы и первым входам элементов И 29 восьмой группы, тактовый вход 14 вычислительного модуля подключен к синхровходам первого 18 регистра, регистрам первой 20 и второй 21 групп, второму входу элемента И 50 и блока управления 15, первый, второй и третий входы которого подключены соответственно к первому 11, второму 12 и третьему 13 управляющим входам вычислительного модуля, первый, второй и третий информационные выходы которого подключены соответственно к первому 54, второму 55 и третьему 56 выходам блока управления, четвертый выход которого подключен ко вторым входам элементов И 22 первой группы, пятый выход блока управления подключен ко вторым входам элементов И 30 четырнадцатой группы, первого 45 и третьего 47 элемента ИЛИ, шестой выход блока управления подключен к первому входу первого элемента ИЛИ 45, седьмой выход блока управления подключен ко вторым входам элементов И 26 шестой группы, вторым инверсным входам элементов И 28 девятой группы и третьему входу первого элемента ИЛИ 45, восьмой выход блока управления подключен к четвертому входу первого элемента ИЛИ 45, девятый выход блока управления подключен ко вторым входам элементов И 31 тринадцатой группы и третьего элемента ИЛИ 47, десятый выход блока управления подключен к первым входам элементов ИЛИ-НЕ 51, второго 46, четвертого 48 и пятого 49 элементов ИЛИ, одиннадцатый выход управления подключен ко вторым входам элемента ИЛИ-НЕ 51, второго 46, четвертого 48 и пятого 49 элементов ИЛИ, двенадцатый выход блока управления подключен ко вторым входам элементов И 34 третьей и двенадцатой 35 групп и вторым инверсным входам элементов И 27 десятой группы, тринадцатый выход блока управления подключен ко вторым входам элементов И 36 одиннадцатой и шестнадцатой 37 групп, при этом первый вход 57 блока управления подключен к входу первого элемента НЕ 75, первым входам четвертого 71, пятого 72, шестого 73 и седьмого 74 элементов И и информационному входу первого 61 триггера, выход которого подключен к первому 78 выходу блока управления, второй 58 вход которого подключен к входу второго элемента НЕ 76, вторым входам второго 69, третьего 70, шестого 73 и седьмого 74 элементов И и информационному входу второго 62 триггера, выход которого подключен ко второму 79 выходу блока управления, третий вход 59 которого подключен к входу третьего элемента НЕ 77, третьим входам первого 68, третьего 70, пятого 72 и седьмого 74 элементов И и информационному входу третьего 63 триггера, выход которого подключен к третьему 80 выходу блока управления, выход первого элемента НЕ 75 подключен к первым входам первого 68, второго 69 и третьего 70 элементов И, выход второго элемента НЕ 76 подключен ко вторым входам первого 68, четвертого 71 и пятого 72 элементов И, выход третьего элемента НЕ 77 подключен к третьим входам второго 69, четвертого 71 и шестого 73 элементов И, выход с первого по шестой элементов И 68 73 подключены соответственно к выходам с четвертого по девятый 81 86 блока управления, выходы второго 69, третьего 70, пятого 72 и седьмого 74 элементов И подключены к информационным входам соответственно четвертого 64, пятого 65, шестого 66 и седьмого 67 триггеров, выходы которых подключены соответственно к выходам с десятого по тринадцатый 90 93 блока управления, синхровход 60 которого подключен к синхровходам всех триггеров.
Устройство для вычисления трехмерного ДПФ (фиг. 1) содержит информационный вход 1, группу информационных входов , первый 3, второй 4 и третий 5 управляющие входы, тактовый вход 6, вычислительные модули и группу информационных входов .
Вычислительный модуль 7 (фиг. 2) содержит первый 9 и второй 10 информационные входы, первый 11, второй 12 и третий 13 управляющие входы, тактовый вход 14, блок управления 15, умножитель 16, сумматор 17, регистры 18 и 19, первую группу регистров , вторую группу регистров , группы элементов И 22 37, группы элементов ИЛИ 38 44, элементы ИЛИ 45 49, элемент И 50, элемент ИЛИ-НЕ 51, первый 52 и второй 53 информационные выходы, первый 52 и второй 53 информационные выходы, первый 54, второй 55 и третий 56 управляющие выходы.
Блок управления 15 (фиг. 3) содержит первый 57, второй 58 и третий 59 управляющие входы, тактовый вход 60, триггеры 61 67, элементы И 68 74, элементы НЕ 75 77, выходы 78 90.
В основу работы устройства положено вычисление трехмерного дискретного преобразования Фурье, определяемое выражением
где x(q1, q2, q3) входная последовательность,
0≅q1≅N1-1, 0≅q2≅N2-1, 0≅q3≅N3-1,
N1, N2, N3 целые положительные числа,
Алгоритм вычисления трехмерного дискретного преобразования Фурье задается следующими рекуррентными выражениями:
x0(i1, i2, i3, i4) x0(i1-1, i2, i3, i4), 0≅i1≅N1-1, 0≅i2≅N1-1, 0≅i3≅N2-1, 0≅i4≅N3-1} 0≅i1≅N1-1, 0≅i2≅N1+N2-1, 0≅i3≅N2-1, 0≅i4≅N3-1} 0≅i1≅N1-1, N1≅i2≅N1+N2-1, N2≅i3≅N2+N3-1, 1≅i4≅N3-1}
Начальные значения x(i2, i3, i4), переменной x0(i2, i3, i4) присваиваются при i1=0, 0≅i2≅N1-1, 0≅i3≅N2-1, 0≅i4≅N3-1.
Начальные значения переменной x0(i1, i2, i3, i4), присваиваются при i1=0, N1≅i2≅N1+N2-1, 1≅i3≅N2-1, 0≅i4≅N3-1.
Начальные значения переменной x0(i1, i2, i3, i4), присваиваются при i1=0, N1≅i2≅N1+N2-1, N2≅i3≅N2+N3-1, 1≅i4≅N3-1.
Начальные значения переменной x3(i1, i2, i3, i4), присваиваются при 0≅i1≅N1-1, 1≅i2≅N1-1, 0≅i3≅N2-1, i4=0.
Искомый результат вычисления трехмерного дискретного преобразования Фурье определяется равенством x3(i1, i2, i3, N3-1) Y3(i1, i2-N1, i3-N2),
0≅i1≅N1-1, N1≅i2≅N1+N2-1, N2≅i3≅N2+N3-1.
Вычислительный модуль 7 (фиг. 2) обладает возможностью реализации следующих функций:
где Аj+1, Вj+1 и Гj+1 значения соответственно на первом, втором и третьем управляющих выходах вычислительного модуля на (j+1)-м такте,
αj, βj и γj значения соответственно на первом, втором и третьем управляющих входах вычислительного модуля на j-м такте,
Рj+1=pj,
где Рj+1 значение на первом информационном выходе вычислительного модуля на (j+1)-м такте,
рj значение на первом информационном входе вычислительного модуля на j-м такте,
где ωj значение на втором информационном входе вычислительного модуля на j-м такте,
Входной поток данных задается следующими выражениями.
На входы 2i1 подается последовательность коэффициентов (0≅i1≅N1-1, 1≅i2≅N1-1,
в моменты времени
На вход 1 подается последовательность коэффициентов (N1≅i2≅N1+N2-1, 1≅i3≅N2-1)
в моменты времени
На вход 1 подается последовательность коэффициентов
(N2≅i3≅N2+N3-1, 1≅i4≅N3-1)
в моменты времени
На вход 1 подается входная последовательность x(i2, i3, i4) в моменты времени
0≅i2≅N1-1, 0≅i3≅N2-1, 0≅i4≅N3-1.
На входы 4, 5 и 6 подаются соответственно управляющие сигналы α, β и γ, принимающие значения 0 или 1.
Управление работой вычислительных модулей 7 задается комбинацией управляющих сигналов , которые определяются переменными i1, i2, i3, i4:
Комбинация управляющих сигналов τ=(α, β, γ) подается на входы 3, 4 и 5 в моменты времени
tτ=i1+N3•i2+N3(N1+N2)i3+i4.
Элементы выходного потока данных Y3(i1, i2, i3)=x3(i1, i2+N1, i3+N2, N3-1) при 0≅i1≅N1-1, 0≅i2≅N2-1, 0≅i3≅N3-1 формируются в вычислительном модуле 7i1-м в моменты времени
которые выдаются с соответствующих выходов 8i.
Последний элемент Y3(N1-1, N2-1, N3-1) формируется на (N3(N2+N3)+(N1+N2)+N1-1)-м такте.
Рассмотрим работу устройства для случая N1=3, N2=N3=2 (фиг. 1). Устройство содержит три вычислительных модуля 70, 71 и 72. Весовые коэффициенты подаются соответственно на выходы 20, 21 и 22. Весовые коэффициенты и входные данные x(i2, i3, i4) подаются в соответствующие моменты времени на вход 1, а управляющие сигналы α, β и γ соответственно на входы 3, 4 и 5. Выходные данные Y(i1, i2, i3) формируются на соответствующих выходах 80, 81 и 82. В таблицах 1, 2 и 3 приведены организация подачи входных данных, состояние регистров, формируемые значения на выходе сумматора и выходные данные соответственно в вычислительных модулях 70, 71, 72. ТТТ1 ТТТ2 ТТТ3 ТТТ4 ТТТ5 ТТТ6 ТТТ7 ТТТ8 ТТТ9 ТТТ10 ЫЫЫ1 ЫЫЫ2
название | год | авторы | номер документа |
---|---|---|---|
УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ ЧЕТЫРЕХМЕРНОГО ДИСКРЕТНОГО ПРЕОБРАЗОВАНИЯ ФУРЬЕ | 1993 |
|
RU2069010C1 |
УСТРОЙСТВО ДЛЯ РЕШЕНИЯ ЗАДАЧИ НАИМЕНЬШИХ КВАДРАТОВ | 1993 |
|
RU2049354C1 |
УСТРОЙСТВО ДЛЯ РЕШЕНИЯ СИСТЕМ ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ | 1994 |
|
RU2116667C1 |
УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ ДВУМЕРНОГО ДИСКРЕТНОГО ПРЕОБРАЗОВАНИЯ ФУРЬЕ | 1994 |
|
RU2049351C1 |
УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ СОБСТВЕННЫХ ЗНАЧЕНИЙ (N X N)-МАТРИЦЫ | 1992 |
|
RU2012050C1 |
УСТРОЙСТВО ДЛЯ УМНОЖЕНИЯ ТРЕХ МАТРИЦ | 1990 |
|
RU2024932C1 |
УСТРОЙСТВО ДЛЯ УМНОЖЕНИЯ МАТРИЦЫ НА ВЕКТОР | 1991 |
|
RU2011222C1 |
УСТРОЙСТВО ДЛЯ РЕШЕНИЯ СИСТЕМ ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ | 1991 |
|
RU2012049C1 |
Устройство для вычисления двухмерного преобразования фурье | 1989 |
|
SU1661790A1 |
Устройство для LV-разложения матриц | 1991 |
|
SU1777155A1 |
Изобретение относится к области вычислительной техники и может быть использовано в специализированных системах обработки сигналов высокой производительности для вычисления трехмерного дискретного преобразования Фурье. Устройство содержит N1 вычислительных модулей, где N1 - размерность входных данных x(i2, i3, i4), 0≅i2≅N1-1, 0≅i3≅N2-1, 0≅i4≅N3-1, причем вычислительный модуль содержит блок управления, умножитель, сумматор, два регистра, две группы регистров, шестнадцать групп элементов И, семь групп элементов ИЛИ, пять элементов ИЛИ, элемент И и элемент ИЛИ-НЕ. 1 з. п. ф-лы, 3 табл., 3 ил.
Устройство для вычисления двумерного дискретного преобразования Фурье | 1990 |
|
SU1751778A1 |
Кухарев Г.А | |||
и др | |||
Систолические процессоры для обработки сигналов.- Минск: Беларусь, 1988, с.75 - 82, рис.4.3.4. |
Авторы
Даты
1996-11-10—Публикация
1993-05-14—Подача