Изобретение относится к области вычислительной техники и может быть использовано в специализированных системах обработки сигналов высокой производительности для вычисления четырехмерного ДПФ.
Известно устройство, реализующее систолический способ вычисления одномерного ДПФ и содержащее два коммутатора, операционный блок, два блока постоянной памяти, группу из К-1 (К размер преобразования) операционных блоков, группу и К блоков хранения и блок управления [1]
Недостатком этого устройства является невозможность вычисления четырехмерного ДПФ.
Наиболее близким по технической сущности является устройство, реализующее систолический способ вычисления трехмерного ДПФ для данных размером N1xN2xN3xN4 и содержащее четыре многоканальные систолические матрицы, причем первая многоканальная систолическая матрица содержит N1 вычислительных ячеек и N1 запоминающих ячеек (каждая запоминающая ячейка содержит регистр и сумматор), вторая многоканальная систолическая матрица содержит N2 вычислительных ячеек (емкость каждой запоминающей ячейки составляет (2 N1-1)регистров), третья систолическая матрица содержит N3 вычислительных ячеек и N3 запоминающих ячеек (емкость каждой запоминающей ячейки составляет 2N1•N2 - регистров) и четвертая систолическая матрица содержит N4 вычислительных ячеек и N4 запоминающих ячеек (емкость каждой запоминающей ячейки составляет (2N1•N2•N3 1) регистров) [2]
Недостатком такого устройства является большой объем оборудования и невысокая технологичность при реализации на сверхбольших интегральных схемах за счет наличия многоразрядных длинных выходных шин, связывающих выходы первой, второй и третьей многоканальных систолических матриц соответственно со входами второй, третьей и четвертой многоканальных систолических матриц.
Устройство для вычисления четырехмерного дискретного преобразования Фурье содержит N1 вычислительных модулей, где N1 размерность входных данных х(i2, i3, i4, i5), 0≅i2≅N1, 0≅i3≅N2-1, 0≅i4≅N3-1, 0≅i5≅N4-1, причем информационный вход 1 устройства подключен к первому информационному входу первого вычислительного модуля 8o, 2i-й вход группы информационных входов подключен ко второму информационному входу 8i-го вычислительного модуля, первый 3, второй 4, третий 5 и четвертый 6 управляющие входы устройства подключены соответственно к первому, второму, третьему и четвертому управляющим входам первого вычислительного модуля 8o информационный выход, первый, второй, третий и четвертый управляющие выходы 8i-го вычислительного модуля подключены соответственно к информационному входу, первому, второму, третьему и четвертому управляющим входам 8(i+1)-го вычислительного модуля, второй информационный выход 8i-го вычислительного модуля подключен к 8i-му выходу устройства, тактовый вход 7 которого подключен к синхровходам всех вычислительных модулей, при этом в вычислительном модуле 8 первый 101 информационный вход подключен к первым входам элементов И 24 первой группы и информационному входу первого регистра, выход которого подключен к первому входу умножителя 17 и первому 66 информационному выходу вычислительного модуля, выходы элементов И 24 первой группы подключены к соответствующим первым входам элементов ИЛИ 47 первой группы, выход которых подключен к информационному входу первого регистра 201 первой группы, выход которого подключен к первым входам элементов И второй 25, третьей 38 и четвертой 40 групп, вторые входы элементов И 25 подключены к выходу первого элемента ИЛИ 57, а выходы к соответствующим первым входам элементов ИЛИ 48 второй группы, выходы которых подключены к информационному входу второго регистра 202 второй группы, выход 20i-го регистра первой группы подключен к информационному входу 20 (i + 1)-го регистра, выход 20 N4-го регистра первой группы подключен к первым входам элементов И пятой 26 и шестой 28 групп, вторые входы элементов И 26 пятой группы подключены к выходу второго элементов ИЛИ 56, а выход ко вторым входам элементов ИЛИ 47 первой группы, выход третьего элемента ИЛИ 58 подключен к первым входам элементов И 27 седьмой группы, выходы которых подключены к соответствующим вторым входам элементов ИЛИ 48 второй группы, выходы элементов И 28 шестой группы подключены к соответствующим первым входам элементов ИЛИ 49 третьей группы, вторые входы которых подключены к соответствующим выходам элементов И 30 восьмой группы, а выходы к информационному входу первого регистра 211 второй группы, выход которого подключен к первым входам элементов И девятой 29, десятой 41 и одиннадцатой 42 групп, выходы элементов И 29 девятой группы подключены к соответствующим первым входам элементов ИЛИ 50 четвертой группы, вторые входы которых подключены к соответствующим выходам элементов И 31 двенадцатой группы, а выходы к информационному входу второго регистра 212 второй группы, выход 21i-го регистра второй группы подключен к информационному входу 21 (i + 1)-го регистра второй группы, выход -го регистра второй группы подключен к первым входам элементов И восьмой 30 и тринадцатой 32 групп, выход пятого элемента ИЛИ 59 подключен ко вторым входам элементов И 30 восьмой группы, выход шестого элемента ИЛИ 60 подключен ко вторым входам элементов И 29 девятой группы, выход элементов И 32 тринадцатой группы подключен к первым входам элементов ИЛИ 51 четвертой группы, вторые входы которых подключены к соответствующим выходам элементов И 34 четырнадцатой группы, а выходы к информационному входу первого регистра 221 третьей группы, выход которого подключен к первым входам элементов И пятнадцатой 33, шестнадцатой 43 и семнадцатой 45 групп, выход седьмого элемента ИЛИ 62 подключен ко вторым входам элементов И 33 пятнадцатой группы, выходы которых подключены к соответствующим первым входам элементов ИЛИ 52 пятой группы, вторые входы которых подключены к соответствующим выходам элементов И 35 восемнадцатой группы, а выходы к информационному входу первого регистра 222 третьей группы, выход 22i-го регистра третьей группы подключен к информационному входу 22 (i + 1)-го регистра третьей группы, выход -го регистра третьей группы подключен к первым входам элементов И четырнадцатой 34 и девятнадцатой 36 групп, выход восьмого элемента ИЛИ 61 подключен ко вторым входам элементов И 34 четырнадцатой группы, второй информационный вход 102 вычислительного модуля подключен к первым входам элементов И 37 двадцатой группы, выходы которых подключены к соответствующим первым входам элементов ИЛИ 53 шестой группы, вторые входы которых подключены к соответствующим выходам элементов И 36 девятнадцатой группы, а выходы к информационному входу второго регистра 23, синхровход которого подключен к выходу элемента И 46, а выход к первым входам элементов И двадцать первой 39 и двадцать второй 44 групп, выход девятого элемента ИЛИ 63 подключен к первому входу элемента И 46, выход десятого элемента ИЛИ подключен ко вторым входам элементов И 39 двадцать первой группы, выходы элементов И третьей 38, одиннадцатой 42, шестнадцатой 43 и двадцать первой 39 групп подключены соответственно к соответствующим первым, вторым, третьим и четвертым входам элементов ИЛИ 54 седьмой группы, выходы которых подключены ко второму входу умножителя 17, выход которого подключен к первому входу сумматора 18, выход которого подключен ко вторым входам элементов И седьмой 27, двенадцатой 31 и восемнадцатой 35 групп и второму информационному выходу 67 вычислительного модуля, выход одиннадцатого элемента ИЛИ 64 подключен ко второму входу элементов И 40 четвертой группы, выходы элементов И четвертой 40, десятой 41, семнадцатой 45 и двадцать второй 44 групп подключены соответственно к соответствующим первым, вторым, третьим и четвертым входам элементов ИЛИ 55 восьмой группы, первый 11, второй 12, третий 13 и четвертый 14 управляющие входы вычислительного модуля подключены соответственно к первому, второму, третьему и четвертому входам блока управления 16, первый, второй, третий и четвертый выходы которого подключены соответственно к первому 68, второму 69, третьему 70 и четвертому 71 управляющим выходам вычислительного модуля, пятый выход блока управления 16 подключен ко вторым входам элементов И 24 первой группы, шестой выход блока управления 16 подключен к вторым входам элементов И 37 двадцатой группы, первым входам второго 56 и девятого 63 элементов ИЛИ, седьмой выход блока управления 16 подключен ко второму входу второго элемента ИЛИ 56, восьмой выход блока управления 16 подключен ко вторым входам элементов И 28 шестой группы и третьему входу второго элемента ИЛИ 56, девятый выход блока управления 16 подключен к четвертому входу второго элемента ИЛИ 56 и первому входу пятого элемента ИЛИ 59, десятый выход блока управления 16 подключен ко вторым входам элементов И 32 тринадцатой группы и второму входу пятого элемента ИЛИ 59, одиннадцатый выход блока управления 16 подключен к третьему входу пятого элемента ИЛИ 59 и первому входу восьмого элемента ИЛИ 61, двенадцатый выход блока управления 16 подключен ко вторым входам элементов И 36 девятнадцатой группы и вторым входам восьмого 61 и девятого 63 элементов ИЛИ, тринадцатый выход блока управления 16 подключен к третьему входу восьмого элемента ИЛИ 61, четырнадцатый выход блока управления 16 подключен к первому входу первого элемента ИЛИ 57, пятнадцатый выход блока управления 16 подключен к первым входам третьего 58, десятого 65 и одиннадцатого 64 элементов ИЛИ, шестнадцатый выход блока управления 16 подключен ко вторым входам третьего 58, десятого 65 и одиннадцатого 64 элементов ИЛИ, семнадцатый выход блока управления 16 подключен к второму входу первого элемента ИЛИ 57 и первому входу шестого элемента ИЛИ 60, восемнадцатый выход блока управления 16 подключен к третьему входу первого элемента ИЛИ 57, вторым входам элементов И третьей 38, десятой 41 и двенадцатой 31 групп, девятнадцатый выход блока управления 16 подключен к второму входу шестого элемента ИЛИ 60 и первому входу седьмого элемента ИЛИ 62, двадцатый выход блока управления 16 подключен к третьему входу шестого элемента ИЛИ 60 и вторым входам элементов И одиннадцатой 42, семнадцатой 45 и восемнадцатой 35 групп, двадцать первый выход блока управления 16 подключен ко второму входу седьмого элемента ИЛИ 67, двадцать второй выход блока управления 16 подключен к третьему входу седьмого элемента ИЛИ 62 и вторым входам элементов И шестнадцатой 43 и двадцать второй 44 групп, тактовый вход 15 вычислительного модуля подключен к синхровходам первого регистра 19 и регистров первой 20, второй 21 и третьей 22 групп и блока управления 16, при этом блок управления 16 содержит первый 72, второй 73, третий 74 и четвертый 75 входы, синхровход 76, тринадцать триггеров 77 - 89, девять элементов И 90 98, четыре элемента НЕ 99 102 и двадцать два выхода 103 124, причем первый вход 72 блока управления подключен к входу первого элемента НЕ 99, информационному входу первого триггера 86, первым входам первого 90, третьего 92, пятого 94, седьмого 96 и девятого 98 элементов И, выход первого элемента НЕ 99 подключен к первым входам второго 91, четвертого 93, шестого 95 и восьмого 97 элементов И, второй вход 73 блока управления подключен к входу второго элемента НЕ 100, информационному входу второго триггера 87 и ко вторым входам второго 91, третьего 92, шестого 95 и седьмого 96 элементов И, выход второго элемента НЕ 100 подключен ко вторым входам первого 90, четвертого 93, пятого 94, восьмого 97 и девятого 98 элементов И, третий вход 74 блока управления подключен к входу третьего элемента НЕ 101, информационному входу третьего триггера 88 и третьим входам четвертого 93, пятого 94, шестого 95 и седьмого 96 элементов И, выход третьего элемента НЕ 101 подключен к третьим входам первого 90, второго 91, третьего 92, восьмого 97 и девятого 98 элементов И, четвертый вход 75 блока управления подключен ко входу четвертого элемента НЕ 102, информационному входу четвертого триггера 89 и четвертым входам восьмого 97 и девятого 98 элементов И, выход четвертого элемента НЕ 102 подключен к четвертым входам с первого по седьмой элементы И 90 96, выходы триггеров с первого по четвертый 86 89 подключены соответственно к выходам блока управления с первого по четвертый 103 106, выходы элементов И с первого по девятый 90 98 подключены соответственно к информационным входам триггеров с пятого по тринадцатый 77 - 85 и к выходам блока управления с пятого по тринадцатый 107 115, выходы триггеров с пятого по тринадцатый 116 124 подключены соответственно к выходам блока управления с четырнадцатого по двадцать второй 116 124, синхровход 76 блока управления подключен к синхровходам всех триггеров.
Устройство для вычисления четырехмерного дискретного преобразования Фурье (фиг. 1) содержит информационный вход 1, группу информационных входов 2, первый 3, второй 4, третий 5 и четвертый 6 управляющие входы, тактовый вход 7, вычислительные модули 8i и выходы 9i.
Вычислительный модуль 8 (фиг. 2) содержит первый 101 и второй 102 информационные входы, первый 11, второй 12, третий 13 и четвертый 14 управляющие входы, синхровход 15, блок управления 16; умножитель 17, сумматор 18, регистры 19 23, группы элементов И 24 45, элементы И 46, группы элементов ИЛИ 47 55, элементы ИЛИ 56 65, первый 66 и второй 67 информационные выходы, первый 68, второй 69, третий 70 и четвертый 71 управляющие выходы.
Блок управления 16 (фиг. 3) содержит первый 72, второй 73, третий 74 и четвертый 75 входы, синхровход 76, триггеры 77 89, элементы И 90 98, элементы НЕ 99 102, выходы 103 124.
В основу работы устройства положено вычисление четырехмерного дискретного преобразования Фурье, определяемое выражением
где х(q1, q2, q3, q4) входная последовательность, 0 ≅ iα≅ Nα-1,
N1,N2,N3 целые положительные числа, .
Вычисление элементов Y4(i1, i2, i3, i4) осуществляется за четыре этапа:
0≅i1≅N1-1, 0≅i3≅N2-1, 0≅i4≅N3, 0≅i5≅N4-1
,
0≅i1≅N1-1, 0≅i2≅N2-1, 0≅i4≅N3-1, 0≅i5≅N4-1
0≅i1≅N1-1, 0≅i2≅N2-1, )≅i3≅N3-1, 0≅i5≅N4-1
,
≅i1≅N1-1, 0≅i2≅N2-1, 0≅i3≅N3-1, 0≅i4≅N4-1
Искомая последовательность определяется выражением
Y4(i1, i2, i3, i4) x4(i1, i2, i3, i4, N4-1),
0 ≅ iα≅ Nα-1, α = 1,2,3,4.
Алгоритм вычисления четырехмерного дискретного преобразования Фурье задается следующими рекуррентными соотношениями:
х0(i1, i2, i3, i4, i5) х0(i1-1, i2, i3, i4, i5),
(0≅i1≅N1-1, 0≅i2≅N1-1, 0≅i3≅N2-1, 0≅i4≅N3-1, 0≅i5≅N4-1, (0≅i1≅N1-1, N1≅i2≅N1+N2-1, 1≅i3≅N2-1, 0≅i4≅N3-1,
0≅i5≅N4-1,
(0≅i1≅N1-1, N1≅i2≅N1+N2-1, N2≅i3≅N2+N3-1, 1≅i4≅N3-1, 0≅i5≅N4-1),
(0≅i1≅N1-1, N1≅i2≅N1+N2-1, N2≅i3≅N2+N3-1, N3≅i4≅N3+N4-1,
1≅i5≅N4-1).
Начальные значения х(i2, i3, i4, i5) переменной х0(i1, i2, i3, i4, i5) присваиваются при i1= 0, 0≅i2≅N1-1, 0≅i3≅N2-1, 0≅i4≅N3-1, 0≅i5≅N4-1. Начальные значения х(i2, i3, i4, i5) переменной присваиваются при i1=0, N1≅i2≅N1+N2-1, 1≅i3≅N2-1, 0≅i4≅N3-1, 0≅i5≅N4-1. Начальные значения х(i2, i3, i4, i5) переменной присваиваются при i1=0, N1≅i2≅N1+N2-1, N2≅i3≅N2+N3-1, 1≅i4≅N3-1, 0≅i5≅N4-1. Начальные значения х(i2, i3, i4, i5) переменной присваиваются при i1=0, N1≅i2≅N1+N2-1, N2≅i3≅N2+N3-1, N3≅i4≅N3+N4-1,
1≅i5≅N4-1.
Начальное значение переменной х4(i1, i2, i3, i4, i5-1) присваиваются при 0≅i1≅N1-1, 1≅i2≅N1-1, 0≅i3≅N2-1, 0≅i4≅N3-1,
i5=0.
Искомый результат вычисления четырехмерного дискретного преобразования Фурье определяется равенством
х4(i1, i2, i3, i4, N4-1)=Y4(i1, i2-N1, i3-N2, i4-N3),
0≅i1≅N1-1, N1≅i2≅N1+N2-1, N2≅i3≅N2+N3-1, N3≅i4≅N3+N4-1. Вычислительный модуль 8 обладает возможностью реализации следующих функций:
где Aj+1, Bj+1, Гj+1 и Δj+1 значения соответственно на первом, втором, третьем и четвертом управляющих выходах вычислительного модуля на (j+1)-м такте,
αj, βj, γj и δj значения соответственно на первом, втором, третьем и четвертом управляющих входах вычислительного модуля на j-м такте,
Pj+1=aj,
где Pj+1 значение на первом информационном выходе вычислительного модуля на (j+1)-м такте,
аj значение на первом информационном входе вычислительного модуля на j-м такте,
где ωj значение на втором информационном входе вычислительного модуля на j-м такте,
Входной поток данных задается следующими выражениями.
На входы подается последовательность коэффициентов (0≅i1≅N1-1, 1≅i2≅i2≅N1-1) в моменты времени i1+N4(i2+(N1+N2)(i3+(N2+N3)i4)), (0≅i3≅N2-1, (0≅i4≅N3-1. На вход 1 подается последовательность коэффициентов (N1≅i≅N1+N2-1, 1≅i3≅N2-1) в моменты времени = N4(i2+(N1+N2)(i3+(N2+N3)i4))+i5, 0≅i4≅N3-1, 0≅i5≅N4-1. На вход 1 подается последовательность коэффициентов (N2≅i3≅N2+N3-1, 1≅i4≅N3-1) в моменты времени = N4(i2+(N1+N2)(i3+(N2+N3) i4))+i5, N1≅i2≅N1+N2-1, 0≅i5≅N4-1. На вход 1 подается последовательность коэффициентов (N3(i4≅N3+N4-1, 1≅i5≅N4-1) в моменты времени N4(i2+(N1+N2)(i3+(N2+N3) i4))+i5, N1≅i2≅N1+N2-1, N2≅i3≅N2+N3-1. На вход 1 подается входная последовательность х(i2, i3, i4, i5) в моменты времени N4(i2+(N1+N2)(i3+(N2+N3) i4))+i5, 0≅i2≅N1-1, 0≅i3≅N2-1, 0≅i4≅N3-1, 0≅i5≅N4-1.
На входы 3, 4, 5 и 6 подаются соответственно управляющие сигналы α, β, γ и δ, принимающие значения 0 или 1.
Управление работой вычислительных модулей 8 задается комбинацией управляющих сигналов , которые определяются переменными i2, i3, i4, i5:
Комбинация управляющих сигналов τ = {α, β, γ, δ} подается на входы 3, 4, 5 и 6 в моменты времени
tτ= N4(i2+(N1+N2)(i3+(N2+N3)i4))+i5.
Элементы выходного потока данных Y4(i1, i2, i3, i4) формируются в вычислительном модуле в моменты времени
которые выдаются с соответствующих выходов 9i.
Последний элемент Y4(N1-1, N2-1, N3-1, N4-1) формируется на (N4(N1+N2)(N2+N3)(N3+N4)+N1-1)-м такте.
Рассмотрим работу устройства для случая N1=N2=N3=N4=2 (фиг. 1). Устройство содержит два вычислительных модуля 80 и 81. Весовые коэффициенты и подаются соответственно на входы 20 и 21. Весовые коэффициенты и входные данные х(i2, i3, i4, i5) подаются в соответствующие моменты времени на вход 1, а управляющие сигналы α, β, γ и δ- соответственно на входы 3, 4, 5 и 6. Выходные данные Y(i1, i2, i3, i4) формируются на соответствующих выходах 90 и 91. В таблицах 1 и 2 приведены организация подачи входных данных, состояние регистров, формируемые значения на выходе сумматора и выходные данные соответственно в вычислительных модулях 80 и 81. ТТТ1 ТТТ2 ТТТ3 ТТТ4 ТТТ5 ТТТ6 ТТТ7 ТТТ8 ТТТ9 ТТТ10 ТТТ11 ТТТ12 ТТТ13 ТТТ14 ТТТ15 ТТТ16 ТТТ17 ТТТ18 ТТТ19 ТТТ20 ТТТ21 ЫЫЫ1 ЫЫЫ2
название | год | авторы | номер документа |
---|---|---|---|
УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ ТРЕХМЕРНОГО ДИСКРЕТНОГО ПРЕОБРАЗОВАНИЯ ФУРЬЕ | 1993 |
|
RU2069011C1 |
УСТРОЙСТВО ДЛЯ РЕШЕНИЯ ЗАДАЧИ НАИМЕНЬШИХ КВАДРАТОВ | 1993 |
|
RU2049354C1 |
УСТРОЙСТВО ДЛЯ РЕШЕНИЯ СИСТЕМ ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ | 1994 |
|
RU2116667C1 |
УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ СОБСТВЕННЫХ ЗНАЧЕНИЙ (N X N)-МАТРИЦЫ | 1992 |
|
RU2012050C1 |
УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ ДВУМЕРНОГО ДИСКРЕТНОГО ПРЕОБРАЗОВАНИЯ ФУРЬЕ | 1994 |
|
RU2049351C1 |
УСТРОЙСТВО ДЛЯ УМНОЖЕНИЯ ТРЕХ МАТРИЦ | 1990 |
|
RU2024932C1 |
УСТРОЙСТВО ДЛЯ УМНОЖЕНИЯ МАТРИЦЫ НА ВЕКТОР | 1991 |
|
RU2011222C1 |
УСТРОЙСТВО ДЛЯ РЕШЕНИЯ СИСТЕМ ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ | 1991 |
|
RU2012049C1 |
Устройство для вычисления двухмерного преобразования фурье | 1989 |
|
SU1661790A1 |
Устройство для умножения матриц | 1990 |
|
SU1793446A1 |
Изобретение относится к области вычислительной техники и может быть использовано в специализированных системах обработки сигналов высокой производительности для вычисления четырехмерного дискретного преобразования Фурье. Устройство содержит N1 вычислительных модулей 80-8N,1, где N1 - размерность входных данных х(i2, i3, i4, i5), 0≅i2≅N1-1, 0≅i3≅N2-1, 0≅i4≅N3-1, 0≅i5≅N4-1, причем, вычислительный модуль содержит блок 16 управления, умножитель 17, сумматор 18, два регистра 19 - 20, три группы регистров 21 - 23, двадцать две группы элементов 24 - 45 И, восемь групп элементов 47 - 55 ИЛИ, элемент 46 И, одиннадцать элементов 56 - 65 ИЛИ. 1 з. п. ф-лы, 2 табл., 3 ил.
Устройство для вычисления двумерного дискретного преобразования Фурье | 1990 |
|
SU1751778A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Кухарев Г.А | |||
и др | |||
Систолические процессоры для обработки сигналов.- Минск, 1988, с | |||
Фальцовая черепица | 0 |
|
SU75A1 |
Очаг для массовой варки пищи, выпечки хлеба и кипячения воды | 1921 |
|
SU4A1 |
Авторы
Даты
1996-11-10—Публикация
1993-05-14—Подача