SU1297073A1 - Устройство дл вычислени свертки - Google Patents
Устройство дл вычислени свертки Download PDFInfo
- Publication number
- SU1297073A1 SU1297073A1 SU853965067A SU3965067A SU1297073A1 SU 1297073 A1 SU1297073 A1 SU 1297073A1 SU 853965067 A SU853965067 A SU 853965067A SU 3965067 A SU3965067 A SU 3965067A SU 1297073 A1 SU1297073 A1 SU 1297073A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- input
- block
- information
- output
- memory
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Abstract
Изобретение относитс к вычислительной технике, предназначено дл вычислени свертки или коррел ций двух цифровьпс последовательностей и может быть использовано в системах цифровой обработки сигналов и изображений. Цель изобретени - повышение быстродействи . Поставленна цель достигаетс за счет того, что устройство дл цифровой фильтрации содержит аналого-цифровые преобразователи 1 и 2, блок пам ти 3, циклический регистр сдвига 4, состо щий из сдвигового регистра 5 и элемента НЕ 6, счетчик сдвигов 7, блок пам ти коэффициентов 8, накапливающие сумматоры 9 и 10, элементы НЕ 11 и 2, оперативную пам ть 13, состо щую из блока 14 пам ти и буферного блока 15 пам ти, блок 16 умножени по модулю целого числа, регистр 17 адреса, регистр 18 адреса этапа, дешифратор 19 и блок 20 пам ти константы. 1 ил. (Л го со t
Description
Изобретение относитс к вычислительной технике, предназначено дл вычислени свертки иликоррел ции Двух цифровых последовательностей и может быть использовано в системах цифровой обработки сигналов и изображений .
Цель изобретени - повьпнение быст- родействи устройства.
На чертеже изображена структурна схема устройства (пример конкретного выполнени дл случа )
Устройство вычисл ет свертку двух последовательностей с помощью числового преобразовани вида
Y Т и -IM
(Т Ь„гт Х„);
(1)
где
т.-п (%®V- )(I..);
)( + i®
М П (I „.i®T,
®IVM где
)
ч.
® - определ ет левое кронеке- ровское произведение матриц, т. е. А®В { ; cooTBeTCTBeliHo пр мое и обратное теоретико-числовое преобразование Рейдера
,j 2 (modF);i,j 67lM; 3) Т„ s {modP }Jt: 2 (modF) ,
(I,®T,)R-;a( I)
В этом случае при , F 257 имеем 25 , N 256у . Дл удовлетвореNI
- диагональные матрицы весовых коэффициентов вида К
(I i.i ,
к N-1 . Nf-l
.i-r
К..,
(4)
.1 -diag(0, N , 2 N , ...,
(N - -1) ).
Аналогично вьфажению (4) определ ютс
«
матрицы Rj. с учетом замены показателей степеней на отрицательные
использована сим . J
В матрице К н
N
волическа запись j вместо , число d. беретс равным
(F g - первообразный корень (т.е. g(F -D sl mod F и mod F
при любом rj F -1). Кроме того, чтобы в разложении (2) матрицы Т и Т соответствовали преобразованию Рейдера (3), необходимо выбрать первообразный корень g, удовлетвор ющий условию
g ft-- ) 2(modF,). (5)
НИН услови (5) g выбираетс равным , отсюда оС 27.
При t«4, F 65537 имеем , N 1024, , тогда, , отсюда
30 i 41054.
Устройство дл вычислени свертки содержит аналого-цифровые преобразователи Г и 2, блок 3 оперативной ) пам ти, циклический сдвиговый
35 регистр 4, состо щий из сдвигового регистра 5 и элемента НЕ 6, включенного в цепь обратной св зи, идущей с выхода старшего разр да сдвигового регистра 5 на вход его младшего раз40 р да через элемент 6, счетчик сдвигов 7, блок 8 пам ти коэффициентов, накапливающие сумматоры 9 и 10, эле-, менты НЕ 11 и 12, оперативную пам ть 13, состо щую из блока Г4 (оператив45 ной) пам ти и буферного блока 15 где (оперативной) пам ти, блок умножени NO 16 по модулю целого числа, регистр 17 адреса, регистр 18 адреса этапа, дешифратор 19 (двоичной инверсии ад50 реса), блок 20 пам ти (весовых) коэффициентов .
Устройство работает следующим образом .
Аналого-цифровые преобразователи
55 1 и 2 преобразуют аналоговые сигналы в числовой код разр дностью бит, которые запоминаютс в блоке 3 оперативной пам ти. Числовые последоваТаким образом, в случае вычислений согласно выражению (2) возможно увеличение размерностей обрабатываемых последовательностей с N
N
2
N
.
в устройстве прототипе до где (F -1)(х Mixwc t
ближайгдее целое число меньше х), при этом за счет того, что в выражении (2) матрицы Т и Т вл ютс преобразовани ми Рейдера (3), которые вычисл ютс без умножений, число умножений уменьшаетс с W, I +3 2 (в случае сохранени структуры процессора ) до (п-1) , Например,
имеем W5 l+3 2 25;
в случае
0
(, отсюда, W,,25; при b 65537, W,,. Дл случа
T..(T,®I«)R,.(I,®T,); j
ч.
(I,®T,)R-;a( I)
В этом случае при , F 257 имеем 25 , N 256у . Дл удовлетворетельности записываютс в блок 3 оперативной пам ти в последовательном пор дке, занима соответственно чейки пам ти с адресами дл сигнала Х(п) с О по N -1 и дл сигнала h(n) 5 с N по 2N -1. С учетом пор дка записи сигналов Х(п) и h(n) в устройстве сначала вычисл етс теоретико- числовое преобразование X(k), затем H(k).W
На первом этапе вычислений проис- одит вычисление преобразований Рейдера Т .. от соответствуюпщх блоков входных данных. Каждое преобразование Т вычисл етс по быстрому алго- 15 из блока 8 пам ти коэффициентов. В
блок 14 оперативной пам ти записыритму с прореживанием по времени. Алгоритм с прореживанием по времени требует перестановки адресов входных данных по закону двоичной инверсии.
ВЙ.ЮТСЯ и считываютс результаты про межуточных вычислений (7). Промежуточные результаты, записанные в неПерестановка данных на входе позвол -20 го, снова подаютс на вход цикличесет исключить данную операцию из процесса вычислений введением дешифратора 19 двоичной инверсии адреса. При этом преобразование N чисел прокого сдвигового регистра 4. Операц ( 7) повтор етс N/2-log N раз до полного завершени преобразовани Т. Окончательный результат преоб-
изводитс за итераций, в каждой разовани поступает в блок из которых вычисл етс N/2 величин 15 буферной пам ти емкостью в Nх
/ о
вида
(2 +1) разр дных слов. При вычислении второго преобразовани Т с блока 3 оперативной пам ти считыва
А,+2 Bk
-.- (modF,)
Дл вычислени первого преобразо- 30 етс последовательность чисел Х (i),.
, N-1 с адресами отсчетов 1, 1+N, 1+2N, ..., 1+(N-1)N. При этом процесс вычислени преобразовани Т X
вани Т из блока 3 оперативной пап
м ти считываетс последовательность Xj,(i), , К-1 с адресами отсчетов О, N, 2N,...,(N-ON. Депшфратор 19 двоичной инверсии адреса определ ет считывание необходимых пар чисел А и В с учетом перестановки чисел Xjj(i) по закону двоичной инверсии. Пары чисел А и В из блока 3 оперативной пам ти через циклический сдвиговый регистр 4 передаютс в накапливающие сумматоры 9 и 10. Причем , в соответствии с выражением (7), первое число А передаетс без сдвига , а второе число В сдвигаетс в циклическом сдвиговом регистре 4 на г разр дов влево, что эквивалентно умножению на 2 . Сумматоры 9 и 10 осуществл ют соответственно операции сложени и вычитани . Справедливость правил арифметики по модулю F. обеспечиваетс с помощью элемента НЕ 6, обеспечивающего цикличность сдвигов при умножении на 2, и элементов НЕ
40
11 и 12, предотвращающих возникнове- ние режима генерации при наличии единиц во всех разр дах. С выхода сумматоров 9 и 10 результаты записываютN N,f
полностью аналогичен предащущему.
35 Одновременно, пока блок 14 оперативной пам ти участвует в следующем преобразовании, буферный блок 15 оперативной пам ти осуществл ет обмен с блоком 16 умножени по модулю целого числа, в котором происходит умножение результатов первого преобразовани на соответствующие весовые коэффициенты ci. , определ емые из диагональной матрицы в выр.а жении (6). Последовательность весовых коэффициентов Ы записана в блоке 20 пам ти весовых коэффициентов ем- i костью NV2«() разр дных слов. Пор док подачи коэффициентов d в блок 16 умножени определ етс регистром 1В адреса этапа следующим образом. После каждого определени блок из N отсчетов результата преобразовани необходимо умножить на соответствующий блок весовых коэффициентов ct . В этом случае величина показател Р, а,следовательно , и соответствующий адрес
50
с в блок 13 пам ти. Блок 8 пам ти коэффициентов- определ ет необходимое число сдвигов г, требуемых дл вычислени преобразовани Т по быстрому алгоритму, и представл ет собой конечный автомат, определ ющий число г согласно правилу г(2. i) -imod N, где k - номер этапа вычислений; i - номер итерации на k-м этапе, , N/2-1. Управление сдвигами в циклическом сдвиговом регистре 4 осуществл етс счетчиком сдвигов 7, в который предварительно записываетс нужное число сдвигов
ВЙ.ЮТСЯ и считываютс результаты промежуточных вычислений (7). Промежуточные результаты, записанные в некого сдвигового регистра 4. Операци (7) повтор етс N/2-log N раз до полного завершени преобразовани Т. Окончательный результат преоб-
разовани поступает в блок 15 буферной пам ти емкостью в Nх
/ о
(2 +1) разр дных слов. При вычислении второго преобразовани Т с блока 3 оперативной пам ти считываi 0 , N-1 с адресами отсчетов 1, 1+N, 1+2N, ..., 1+(N-1)N. При этом процесс вычислени преобразовани Т X
0
N N,f
полностью аналогичен предащущему.
5 Одновременно, пока блок 14 оперативной пам ти участвует в следующем преобразовании, буферный блок 15 оперативной пам ти осуществл ет обмен с блоком 16 умножени по модулю целого числа, в котором происходит умножение результатов первого преобразовани на соответствующие весовые коэффициенты ci. , определ емые из диагональной матрицы в выр.а жении (6). Последовательность весовых коэффициентов Ы записана в блоке 20 пам ти весовых коэффициентов ем- i костью NV2«() разр дных слов. Пор док подачи коэффициентов d в блок 16 умножени определ етс регистром 1В адреса этапа следующим образом. После каждого определени блок из N отсчетов результата преобразовани необходимо умножить на соответствующий блок весовых коэффициентов ct . В этом случае величина показател Р, а,следовательно , и соответствующий адрес
0
его хранени , равны , т.е. дл
последовательности X;-(i), i,,N-l имеем pelO,j ,r , . . ., (N-1) j J.
Результат умножени с блока 15 буферной оперативной пам ти записы- ваетс в блок 3 оперативной пам ти по тем же адресам, по которым происходило считывание последовательности .X.(i).
Аналогично рассмотренному происхо дит вычисление преобразований Т последовательностей X (i), i, N-1, считываемых с блока 3 оперативной пам ти по адресам j, j+N, j+2Nj ..., j + (N-l)N, умножение результатов nperi образований , Х на соответствующие коэффициенты о1 и запись результатов обратно в блок 3 оперативной пам ти по тем же адресам. Таким образом, первый этап вычислений завершаетс вычислением N раз преобразований Рейдера Т, второй этап - умножением результатов преобразований на весовые коэффициенты Ы и записью промежуточных результатов в блок 3 оперативной пам ти.
На третьем этапе вычисл ютс N преобразований Рейдера Т от промежуточных данных , записанных в блоке 3 оперативной пам ти после первых двух этапов вычислений. Считывание из блока 3.оперативной пам ти после- довательностей X.(i), 1,, N-1 на третьем этапе выполн етс по адресам
JN, jN+l, jN+2jN+N-1. После
вычислени каждого преобразовани Т , данные с буферного блока 15 оперативной пам ти записываютс обратно в блок 3 оперативной пам ти по тем же адресам.
После данного этапа заканчиваетс вычисление преобразовани Т 2 X а. Аналогичным образом выполн етс вы
числение преобразовани Т ЬК том того,
с уче
;, ЧТО адресаци данных после- довательности hN сдвинута на N относительно адресов данных последовательности X ..о
После вычислени преобразований
Х, на четвертом
,
этапе осуществл етс поэлементное
I -,л
умножение последовательностей Х и . При этом пары чисел Х, и Н соответственно с адресами i и i+N , , поступают из блока 3 оперативной пам ти на блок 16 умножени по модулю целого числа. Результат умножени через буферный бло
15 оперативной пам ти записываетс обратно в блок 3 оперативной пам ти по адресу i. Таким образом, после данного этапа вычислений по адресам
О, N -1 в блоке 3 оперативной пам ти записана последовательность Y
На п том - седьмом этапах вычисл етс обратное преобразование Y ,j
J
Т гYjj) , которое выполн етс в .обратном пор дке относительно пр мого преобразовани , т.е. на п том этапе вычисл етс N обратных преобразований Рейдера Т от последовательнос
тей Y. (i), i,, N-15 считываемых из блока 3 оперативной пам ти по адресам JN, JN+1, JN+2, ..., JN+N-1.
При этом каждое обратное преобразование Рейдера Т выполн етс таким же образом, как и пр мое, за исключением того, что коэффициенты циклического сдвига станов тс равными
j. j,3j 2 Е2 (mod F ) .
Результаты преобразований Z
-1 л
Т Y N KiJ
N,J
записываютс в буферный блок 15 оперативной пам ти, с помощью которого во врем вычислени следующего преобразовани 1 производитс умножение последователь K ,J
ности Zi, i на соответствующие весо , -р
Так как
dL-
вые .коэффициенты dг ci (njod F. ) J то из блока 20 пам ти весовых коэффициентов в блок 16 умножени по модулю целого числа подаютс числа из того же множества коэффициентов oL ,, , которые использовались в пр мом преобразовании Т,5. При этом только регистр 18 адреса этапа мен ет адресацию вызова с К-го адреса на N /2-К с учетом знака т.е., если N /2, то
(,od F,. ) и, если N%-7,NV2,
fji-P №/1- р
то ( oL(mod F). Результаты
умножени d- Z .(i) записываютс в блок 3 оперативной пам ти по тем же адресам, по которым происходило счи
тывание Y.(i). На этом заканчиваютс п тый и шестой этапы вычислений.
На последнем - седьмом этапе выполн етс вычисление преобразований Рейдера последовательностей
Zj(i), i,,N-l, считываемых из блока 3 оперативной пам ти по адресам За J+N, J+2N, .,., J+N-1. Результаты
преобразований Y . Т Z .записываютс в блок 3 оперативной пам ти по тем же адресам, по котсфым происходило считывание. Таким образом, после этой части вычислений в блоке 3 опе- ративной пам ти по адресам О, N содержитс результат циклической свертки
М -1
Y(k)
но
X(i)h(), , N -l
(П)
.1
- эквивалентно X mod N
Предлагаемое устройство может вычисл ть циклическую коррел цию
Y(k)|Z X(i)h( ) (12) В этом случае поэлементное умножение производитс дл пар чисел Х и Н с адресами соответственно i и 2N -i, где , N -I (адрес первой пары чисел X и Н не мен етс ). Это осуществл етс на четвертом этапе вычислений инверсией адресов чисел Н регистром 18 адреса этапа и не требует дополнительных операционных затрат.
Claims (1)
- Формула изобретениУстройство дл вычислени свертки , содержащее первый и второй аналого-цифровые преобразователи, выходы которых объединены и подключены к информационному входу первого блока пам ти, выход которого подключен к первому входу блока умножени по мо- дулю целого числа и первому информационному входу циклического сдвигового регистра, выход которого подключен к входам первого и второго накапливающих сумматоров, выходы которых объединены и подключены к информаци- онному входу второго блока пам ти, информационный выход которого подключен к информационному входу блокабуферной пам ти, информационный выСоставитель Ю. Ланцов Редактор Т, Парфенова Техред Л.Сердюкова Корректор Л. ПилипенкоЗаказ 783/53Тираж 673ПодписноеВНИИПИ Государственного комитета СССРпо делам изобретений и открытий 113035, Москва, Ж-35, Раушска наб., д. 4/5Производственно-полиграфическое предпри тие, г. Ужгород, ул. Проектна , 4.5fO5202530З , 045ход которого подключен к первому входу блока умножени по модулю целого числа и информационному входу второго блока пам ти, информационный выход которого подключен к второму информационному входу циклического сдвигового регистра, выходы переноса первого и второго накапливающих сумматоров подключены к входам соответственно первого и второго элементов НЕ, выходы которых подключены к входам млад- пшх разр дов соответственно первого и второго накапливакнцих сумматоров, выход регистра адреса подключен к адресному входу второго блока пам ти и адресному входу блока пам ти коэффициентов , выход которого подключен к информационному входу счетчика сдвигов , информационный выход которого подключен к входу управлени сдвигом циклического сдвигового регистра, выход умножител по модулю целого числа подключен к информационному входу буферного блока пам ти, инфор мационный выход которого подключен к информационному входу первого блока пам ти, а входы первого и второго аналого-цифровых преобразователей вл ютс соответственно первым и вторым информационными входами уст- . ройства, отличающеес тем, что, с целью повьшени быстродействи , в него введены блок П 1м ти константы, дешифратор и регистр адреса этапа, первый, второй и третий информационные выходы которого подключены соответственно к адресному входу блока пам ти константы, первому адресному входу первого блока пам ти и входу дешифратора, выход которого подключен к второму адресному входу первого блока пам ти, а выход блока пам ти константы подключен к второму входу блока умножени по модулю целого числа.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU853965067A SU1297073A1 (ru) | 1985-10-15 | 1985-10-15 | Устройство дл вычислени свертки |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU853965067A SU1297073A1 (ru) | 1985-10-15 | 1985-10-15 | Устройство дл вычислени свертки |
Publications (1)
Publication Number | Publication Date |
---|---|
SU1297073A1 true SU1297073A1 (ru) | 1987-03-15 |
Family
ID=21201339
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU853965067A SU1297073A1 (ru) | 1985-10-15 | 1985-10-15 | Устройство дл вычислени свертки |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU1297073A1 (ru) |
-
1985
- 1985-10-15 SU SU853965067A patent/SU1297073A1/ru active
Non-Patent Citations (1)
Title |
---|
Авторское свидетельство СССР № 800995, кл. G 06 F 15/332, 1981. Авторское свидетельство СССР № 744601, кл. G 06 F 15/332, 1980. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5262976A (en) | Plural-bit recoding multiplier | |
US5268853A (en) | Orthogonal transformation processor for compressing information | |
US5331582A (en) | Digital signal processor using a coefficient value corrected according to the shift of input data | |
US4092723A (en) | Computer for computing a discrete fourier transform | |
US5226002A (en) | Matrix multiplier circuit | |
US4853887A (en) | Binary adder having a fixed operand and parallel-serial binary multiplier incorporating such an adder | |
EP0021018B1 (en) | Digital filters | |
CN109711542B (zh) | 一种支持动态精度的dnn加速器及其实现方法 | |
US4991132A (en) | Apparatus for executing division by high-speed convergence processing | |
SU1297073A1 (ru) | Устройство дл вычислени свертки | |
US5031137A (en) | Two input bit-serial multiplier | |
US5886911A (en) | Fast calculation method and its hardware apparatus using a linear interpolation operation | |
US4825397A (en) | Linear feedback shift register circuit, of systolic architecture | |
US5309385A (en) | Vector division processing method and system | |
RU2755734C1 (ru) | Устройство для умножения чисел по произвольному модулю | |
SU955087A1 (ru) | Адаптивный веро тностный спектрокоррел тор | |
SU1119006A1 (ru) | Устройство дл делени чисел | |
SU1300495A1 (ru) | Устройство дл решени дифференциальных уравнений | |
SU1432512A1 (ru) | Конвейерное вычислительное устройство | |
KR100202567B1 (ko) | 고속 역이산 코사인변환 연산장치 | |
JP2960594B2 (ja) | ディジタル信号プロセッサ | |
JP3697716B2 (ja) | 行列データ乗算装置 | |
SU754415A1 (ru) | Устройство для деления двоичных чисел 1 | |
SU684550A1 (ru) | Специализированный процессор | |
SU1670685A1 (ru) | Устройство дл умножени |