SU1615741A1 - Systolic processor of discrete fourier transform - Google Patents
Systolic processor of discrete fourier transform Download PDFInfo
- Publication number
- SU1615741A1 SU1615741A1 SU894643347A SU4643347A SU1615741A1 SU 1615741 A1 SU1615741 A1 SU 1615741A1 SU 894643347 A SU894643347 A SU 894643347A SU 4643347 A SU4643347 A SU 4643347A SU 1615741 A1 SU1615741 A1 SU 1615741A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- input
- output
- inputs
- control
- switch
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Abstract
Изобретение относитс к вычислительной технике и может быть использовано в специализированных системах многоканальной обработки сигналов и в измерительно-вычислительных системах. Цель изобретени - расширение области применени за счет многоканальной обработки данных. Поставленна цель достигаетс за счет того, что в состав устройства вход т коммутатор 1, операционный блок 2, блок посто нной пам ти 3, группа 4 из К-1 /К- размер преобразовани / операционных блоков 5, блок посто нной пам ти 6, группа 7 из К блоков хранени 8, коммутатор 10 и блок управлени 11. 6 ил.The invention relates to computing and can be used in specialized systems of multi-channel signal processing and in measuring and computing systems. The purpose of the invention is to expand the scope of application due to multi-channel data processing. The goal is achieved due to the fact that the device includes a switch 1, an operation unit 2, a permanent memory unit 3, a group 4 of K-1 / K - a size of a transformation / operational units 5, a permanent memory unit 6, group 7 of K storage units 8, switch 10 and control unit 11. 6 sludge.
Description
31615743161574
Изобретение относитс к вычисли тельной технике и может быть использовано в специализированных системах многоканальной обработки сигналов и в измерительно-вычислительных системах .The invention relates to computing technology and can be used in specialized systems of multichannel signal processing and in measuring and computing systems.
Цель изобретени - расширение области применени за счет многоканальной обработки данных,.„The purpose of the invention is to expand the scope of application due to multi-channel data processing.
На фиг, 1 представлена функциональна схема (многоканального) систолического ДПФ-процессора; на фиг. 2 - функциональна схема опера1щонного блока; на фиг„ 3 - функциональна ,с схема блока хранени ; на фиг. 4 - функциональна схема коммутатора блока хранени ; на фиг, 5 - функциональна схема блока управлени j на фиг. 6- функциональна схема второго дешифра-.2п тора состо ний счетчика.Fig, 1 shows the functional diagram of the (multichannel) systolic DFT processor; in fig. 2 - functional diagram of the operative block; Fig. 3 is functional, with a storage unit diagram; in fig. 4 is a functional diagram of the storage unit switch; FIG. 5 is a functional diagram of the control unit j in FIG. 6 is a functional diagram of the second counter-encoder of the counter states.
Процессор (фиг, 1) содержит (входной М-канальньй) коммутатор 1, опера- ционный блок 2, блок 3 посто нной пам ти взвешивающих множителей), сие- 25 толическую матрицу 4 из (N-l)-ro операционного блока 5, блок 6 посто нной пам ти.(весовых множителей), грзттпу 7 из N блоков 8 хранени , выход 9 группы 7, (вькодной М-канальньй) коммутатор 10, блок 11 управлени , вьй выход 12 блока управлени , пер- : вый 13 и второй 14 управл ющие выходы блока управлени , адресный выход 15 блока управлени и тактовьй вход 16.35The processor (FIG. 1) contains (input M-channel) switch 1, operation unit 2, block 3 of constant memory of weighting factors), systolic matrix 4 of (Nl) -ro operation unit 5, block 6 fixed memory. (weighting factors), group 7 of N storage units 8, output 9 of group 7, (V-code M-channel) switch 10, control unit 11, control unit output 12, first- and second 14 control outputs of the control unit, address output 15 of the control unit and clock input 16.35
Операционньй блок процессора (фиг. 2) содержит первьй 17, второй , 18 и третий 19 входы, регистр (весовых коэффициентов) 20, тактовый вход 21, умножитель 22, сумматор 23, первьй 24, второй 25 и третий 26 выходы.The operational processor unit (Fig. 2) contains the first 17, second, 18 and third 19 inputs, the register (weighting factors) 20, the clock input 21, the multiplier 22, the adder 23, the first 24, the second 25 and the third 26 outputs.
Каждьй блок 8 хранени (фиг. 3) содержит входы 27 и 28, коммутатор 29, тактовьй вход 30, вход 31, элемент 32 задержки, выход 33, узлы 34 и 35 регистров из (М-1) И|М регистров 36 соответственно и выходы 37 и 38.Each storage unit 8 (FIG. 3) contains inputs 27 and 28, switch 29, clock input 30, input 31, delay element 32, output 33, nodes 34 and 35 of the registers from (M-1) and | M registers 36 respectively and exits 37 and 38.
Коммутатор 29 (фиг. 4) содержит первьй 39 и второй 40 вход данных, вход 41, управл ющий вход 42, эле- менты И 43 - 45, элемент ИЖ 46, пер,ь- вый 47 и второй 48 выходы.Switch 29 (Fig. 4) contains the first 39 and second 40 data inputs, input 41, control input 42, And 43–45 elements, IL 46, per 47, 47, and second 48 outputs.
30thirty
4040
4545
Блок 11 управлени (фиг, 5) содержит генератор 49 тактовых импульс.ов lo gj, NM-разр дньй двоичньй счетчик 50, первьй дешифратор 51 состо ний счетчика и второй дешифратор 52.The control unit 11 (FIG. 5) contains a clock pulse generator 49 lo gj, NM-bit binary counter 50, a first decoder 51 of the counter states and a second decoder 52.
.„. „
,с п with n
5 55 5
00
00
5five
1414
Второй дешифратор 52 блока управлени (фиг. 6) содержит 1о§2 (Н-1)М-й элемент ИЛИ 53, log N-входной элемент ИЛИ 54, элемент НЕ 55, элемент И 56, выходы 57 и 58. The second decoder 52 of the control unit (Fig. 6) contains 1о§2 (Н-1) M-th element OR 53, log N-input element OR 54, element NOT 55, element AND 56, outputs 57 and 58.
Процессор работает следующим образом .The processor works as follows.
Блок 3 взвешиваю1ц:их множителей емко- стью слов имеет страничную организа- 1ЩЮ из N страниц по М слов. В каждой странице блока 3 записаны взвешивающие множители дл отсчетов данных с номерами xj|, где i е 1, М, а К - пор дковый номер страницы. Дл обращени к блоку 3 по адресному выходуBlock 3 weighed: their multipliers with a capacity of words has a paged organizer of 1 page of N pages with M words. Each page of block 3 contains weighting factors for data samples with numbers xj |, where i e 1, M, and K is the sequence number of the page. To access block 3 by address output
22
5five
15 блока 11 передаетс (log, N + 1о§2 М)-разр дньй адрес.15, block 11 is transmitted (log, N + 1O§2 M) -diff address.
Блок 6 весовых множителей имеет емкость N слов, дл обращени к нему требуетс logg N-разр дньй адрес, что достигаетс подключением старших logg N разр дов адресного выхода 16 блока 12 к адресному входу данного блока.Block 6 of the weight factors has a capacity of N words, to access it, you need a logg N-bit address, which is achieved by connecting the higher logg N bits of the address output 16 of block 12 to the address input of this block.
Перед началом работы процессора счетчик 50 обнулен и тем самым на управл ющих входах 41 и 42 коммутаторов 29 всех блоков 8 поступают управл ющие-сигналы , обнул ющие все ре гистры 36 всех секций 34 и 35 пам ти - типа FIFO.Before the processor starts operation, the counter 50 is reset to zero, and thus the control inputs 41 and 42 of the switches 29 of all blocks 8 receive control signals that zero all registers 36 of all sections 34 and 35 of memory — of the FIFO type.
Пусть М входных параллельных потоков данных формируютс так, что в те-- чение очередньк М тактов времени на вход процессора по одному отсчету данных в кахдьй такт, при этом последовательно поступают М отсчетов данных X от каждого из М jca- налов - источников данных ( € Т, ll) , где п 50, N-1, номер отсчета данных, - N - длина входной:- последовательности (число отсчетов) . данных, а i - номер канала данныхLet M input parallel data streams be formed in such a way that during the queue M time ticks to the processor input one data sample per each tact, while successively M data samples X from each of the MS data channels (€ T, ll), where n 50, N-1, the number of reference data, - N - the length of the input: - sequence (number of samples). data and i is the data channel number
Отсчеты данных -х; (Vi-C l, М; К€ G1, N) поступают на входы входного М-канального коммутатора 1, -управл ю- шдй вход которого соединен с выходом первого дешифратора 51 состо ний счетчика 50. В результате на 1-м такте ра ,боты (1 i-k, i ei,. MF К 61, N) К-Й отсчет данных от i-го канала переда - - етс с входа коммутатора 1 на его выход и далее на первый вход операци-: онного блока 2.Samples of data x; (Vi-C l, M; K € G1, N) arrive at the inputs of the input M-channel switch 1, -the control of which input is connected to the output of the first decoder 51 states of the counter 50. As a result, on the 1st clock , bots (1 ik, i ei,. MF K 61, N) The K-Y data readout from the i-th channel is transferred from the input of the switch 1 to its output and then to the first input of the operational unit: 2.
На второй вход блока 2 поступают с выхода блока 3 взвешивающих множи- j телей отсчеты весовой функции окнаThe second input of block 2 comes from the output of block 3 of the weighing factors j of the window weight function.
с тем же темпом и синхронно с отсчетами данных х.at the same pace and synchronized with the readings of data x.
Блок 2 реализует операции видаBlock 2 implements the operations of the form
вых I k )exit i k)
МM
вых ,, (1)out ,, (1)
гл ch
k-ik-i
при этом текуща сумма видаhowever, the current amount of the form
milmil
imim
хСО;,в выражении (1) накапливаетс в первом блоке 8 группы 7. ЗначениеxCO; in expression (1) accumulates in the first block 8 of group 7. Meaning
XX
выхout
передаетс далее на первьй входtransmits further to the first input
систолической матрицы 4, на второй вход которой поступают весовые множи- тели ехр (-J 2 (К-1) /N), где К € 1, N от блока 6 весовых коэффициНентов . Отсчеты W ;, поступают наsystolic matrix 4, the second input of which receives weight factors exp (-J 2 (K-1) / N), where K € 1, N from block 6 are weighting coefficients. The counts W; come on
вход систолической матрицы 4 с тем же темпом и синхронно с отсчетами х input systolic matrix 4 at the same tempo and synchronously with the x readings
В блоке 5 систолической матрицы 4 с номером 1 (fiei, N-1) и св занным с ним блоком 8 с номером (1+1) реализуютс функции In block 5 of the systolic matrix 4 with the number 1 (fiei, N-1) and the associated block 8 with the number (1 + 1), the functions are implemented
МM
N N
шк WBX Wwkx w
вых ( ;гЦ-к - )w J, ...)w j fout (; hz-to -) w J, ...) w j f
1 раз1 time
вых +out +
k-lk-l
ZZ
mm
-I-I
Е: (im W;E: (im W;
XmXm
N N N N
.. 1 раз. (2).. 1 time. (2)
Текущее значение суммы в выражеюзи (2) накапливаетс в блоке 8 с номером 1+1. Там самьк. блок 2, блок 5 систолической матрицы 4 и св занные с нимиThe current value of the sum in the expression (2) is accumulated in block 8 with the number 1 + 1. There samk. block 2, block 5 of the systolic matrix 4 and associated with them
блоки 8 группы 7 реализуют в совокупности вычисление одномерного ДПФ с blocks 8 of group 7 implement in aggregate the calculation of a one-dimensional DFT with
предварительным взвешиванием отсчетов исходных данных по вьфажению pre-weighing the readings of the initial discharge data
NN
«"
(k-Oh(k-oh
;к-0з;к-м . (3); K-0Z; KM. (3)
Данное вьгражение вычисл етс в процессоре за 2(N-1)M тактов. При этом в течение первых (N-1)M+l-l3 тактов во второй секции 35 узла реги157416This load is calculated in a processor in 2 (N-1) M cycles. Moreover, during the first (N-1) M + l-l3 cycles in the second section 35 of the node 157416
стров блока 8 с номером 1 (VI € 1, N). осуществл етс накопление текущей суммы в соответствии с выражени ми (1) и (2), в течение всего данного промежутка времени с второго управл ющего выхода 14 блока 11 управлени на управл ющих входах коммутатора 29 блока 8 с номером 1 присутствуют сиг-Line of block 8 with number 1 (VI € 1, N). the current sum is accumulated in accordance with expressions (1) and (2), during the entire given period of time from the second control output 14 of the control unit 11, the control inputs of the switch 29 of block 8 with the number 1
0 налы уJ , 1, У О, сформированные вторым дешифратором 52 состо ний счетчика 50 блока управлени (поскольку Ct(N-1)M в течение первых (N-1)M тактов работы),0 yr y, 1, y o, formed by the second decoder 52 states of the control unit counter 50 (since Ct (N-1) M during the first (N-1) M operation cycles),
(5 -.Данные с первого входа 27 1-го блока 8 поступают на второй выход коммутатора 29 и с него .на вход вто.рой секции узла 35, который соединен с вхо- дом первого регистра 36 данной сек20 1ЩИ. Данные, вл ющиес частичными суммами в выражени х (1) и (2), последовательно переписываютс из реги - стра в регистр данного второго 35, с выхода последнего регистра 36(5 -.Data from the first input 27 of the 1st unit 8 is fed to the second output of the switch 29 and from it to the input of the second section of the node 35, which is connected to the input of the first register 36 of this section SIR. partial sums in expressions (1) and (2) are sequentially rewritten from register to register of the given second 35, from the output of the last register 36
25 данного узла поступают на первый выход , 37 блока 8, а дальше на,третий вход 19 соответствующего блока 5 сис-. толической матрицы 4 (при 1 Ь 2) или на третий вход 19 блока 2 (при ).25 of this node arrive at the first exit, 37 of block 8, and further on, the third input 19 of the corresponding block 5 of the system. Tolic matrix 4 (with 1 b 2) or to the third input 19 of block 2 (with)
30 L30 L
I в течение следующих К тактов работ ты процессора в блоке в блоке :5 с номером (1-1) (VI 62, N) систолической матрицы 4 формируютс оконча35 результаты в соответствии с выражени ми (1) и (2). Каждый резуль- С поступает при этом уже в первую секцию узла 34 соответствующего 1 блока 8, так как на (N-I)M-M тактеI during the following K processor cycles in the block in the block: 5 with the number (1-1) (VI 62, N) of the systolic matrix 4 are formed and the end results are generated in accordance with expressions (1) and (2). Each result comes here already in the first section of the node 34 of the corresponding 1 block 8, since at the (N-I) M-M cycle
4Q работы вторым дeшiфpaтopoм 52 счетчика 50 формируютс управл ющие сигналы у О и у 1, которые сохран ютс до такта 1 Ш с начала обработки данных к , f в процессоре. При этом4Q of operation by the second descriptor 52 of the counter 50, control signals are generated at O and y 1, which are stored until step 1 III from the beginning of data processing k, f in the processor. Wherein
5 данные, поступающ11е на первый вход 27 блока 8 через коммутатор 29, поступают на его первьй выход, соединенный с входом первой секции узла 34, Поскольку каждый блок 5 включаетс 5, the data arriving at the first input 27 of the unit 8 via the switch 29 is received at its first output connected to the input of the first section of the node 34. Since each block 5 is turned on
0 в работу тактом позже, то через (М-1) тактов с начала переключени секций заполн етс перва - секци узла 34 первого блока tJ., через М тактов - второго блока 8 и так далее до блока 8 с 5 номером No Вторые секции узла 35 блоков 8 при этом отключены от входов блока, и содержимое регистров 36 вторых секций узла 35 за этот период обнул етс .0 into the operation with a clock later, then through (M-1) cycles from the beginning of the switching of sections, the first section of the first block tJ. 34 is filled, after the M blocks of the second block 8, and so on up to block 8 with 5 number No Second sections of the node The 35 blocks 8 are then disconnected from the inputs of the block, and the contents of the registers 36 of the second sections of the node 35 are zeroed over this period.
Начина с такта M(N-1), т.е„ на |М-м такте после переключени секций |узлов 34 и 35, в первом блоке 8 про- зводитс вывод результатов С i- с второго выхода 38 данного блока 8, ко- ;торый занимает М тактов о Выводимые (отсчеты С.;о с второго выкода 38 пер- |вого блока 8 поступают на выход 9 группы блоков 8 и с него на выход выходного М канального коммутатора 10 далее в выводные каналы данных. При этом выходной М-канальный коммутатор )Шравл етс также управл ющими сиг- :шламн от первого дешифратора 51 счетС. шка 50, представл ющими собой унк- арньй М-разр дный код, В результате на каждом 1-м такте (1 i- п + Ш где i € 1, М, п е1, N) отсчет резулыtoStarting from the M (N-1) cycle, i.e., “on the | Mth cycle after switching sections | of nodes 34 and 35, the first block 8 outputs the results С i- from the second output 38 of this block 8, -; which takes M clocks Выв Output (counts C.; o from the second output 38 of the first block 8 arrives at the output 9 of the group of blocks 8 and from there at the output of the output M of the channel switch 10 further into the output data channels. The output M-channel switch) It is also mismatched with control signals: slash from the first decoder 51 C. a scale of 50, which is an unc-arnial M-bit code, as a result, at every 1st clock (1 i - n + W where i € 1, M, n e1, N) is the countdown
ата С|| передаетс в i-й выходной анал.ata c || is transmitted to the i-th output anal.
На такте (М+1) с начала вывода д;анных коммутатор 29 первого блока 8 группы 7 подключает к второму входу :8 данного блока 8 второй выход 38 iToporo блока 8. Это осуществл етс гоступлением на управл юшде входы 41 р 42 коммутатора-управл ющих сигналов У - У2 О, сформированных к это Ny моменту дешифратором 36. При этом наборе управл ющих сигналов у к у данные поступают на второй вход 42 коммутатора 29 и с его первого вьр- хода 47 на вход первой секщш узла 34. Одновременно с этим данные, с пер- врго входа 27 блока 8 (т.е.. от тое- т|ьего выхода 26 блока 2) поступают нр первьй вход коммутатора 29 перво - .гр блока 8ис его второго выхода 48 н вход второго узла 35.At the cycle (M + 1) from the beginning of the output d; data, the switch 29 of the first unit 8 of group 7 connects to the second input: 8 of this unit 8 the second output 38 of the iToporo unit 8. This is accomplished by listening to the control inputs 41 p 42 of the switch-control Y - V2 O signals generated by this Ny moment by the decoder 36. With this set of control signals y k y data, they are fed to the second input 42 of the switch 29 and from its first latch 47 to the input of the first section of the node 34. At the same time the data from the first input 27 of block 8 (i.e. from the so-called output of block 26) comes nr first input of the switch 29, the first - .gr 8is unit 48 outputs its second input of the second node N 35.
: На такте (М+1) с начала вывода данных аналогичные переютючени осуществл ютс в 1-го блока 8, в кото-- рОм вновь третий выход 26 соответст- блока 5 подключаетс комму- тутором 29 к входу второго з зла 35, а вход первого узла 34 в данном бло-: К( оказываетс подключенным к второ- м;|г выходу 38 следующего (1ч-1)-го бйока 8 (VI 6 2, N-1), : At the cycle (M + 1) from the beginning of the data output, similar switching operations are carried out in block 1 8, in which the third output 26 of block 5 is connected again; switch 5 is connected to the input of the second evil 35, and input the first node 34 in this block: K (it turns out to be connected to the second; | g output 38 of the next (1h-1) -th bioca 8 (VI 6 2, N-1),
Таким образом, в течение следующих МЙ тактов, счита с начала вывода езультатов, осуществл етс вьшод (fex сформированных результатов С i. ; йрвые узлы 34 всех блоков 8 при tOM оказываютс последовательно под 11 юченными один за другим, образу бы единую пам ть типа FIFO емко- z, N(M-1) регистров. ОдновременноThus, during the next MI cycles, counting from the beginning of the output of the results, the output is performed (fex of the generated results C i.; The node nodes 34 of all blocks 8 at tOM are sequentially under 11 values one after the other, forming a single FIFO memory capacitive z, N (M-1) registers.
2020
2525
30thirty
3535
4040
4545
5050
5555
во вторых узлах 35 постепенно накап- i ливаютс текущие суммы в соответствии с вьгражени ми (1) и (2) дл вновь по-; ступающих следук11и;их последовательностей данных X , j4 по всем входным каналам , тем самым в таком многоканаль-, ном процессоре отсутствуют паузы на ввод/вывод даннйх.in the second nodes 35, the current sums are gradually accumulated in accordance with the statements (1) and (2) for re-raising; those who follow the X, j4 data sequence across all input channels, thus there are no data input / output pauses in such a multichannel processor.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU894643347A SU1615741A1 (en) | 1989-01-27 | 1989-01-27 | Systolic processor of discrete fourier transform |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU894643347A SU1615741A1 (en) | 1989-01-27 | 1989-01-27 | Systolic processor of discrete fourier transform |
Publications (1)
Publication Number | Publication Date |
---|---|
SU1615741A1 true SU1615741A1 (en) | 1990-12-23 |
Family
ID=21425503
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU894643347A SU1615741A1 (en) | 1989-01-27 | 1989-01-27 | Systolic processor of discrete fourier transform |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU1615741A1 (en) |
-
1989
- 1989-01-27 SU SU894643347A patent/SU1615741A1/en active
Non-Patent Citations (1)
Title |
---|
Системымпараллельной обработки М.: Мир, 1985. Rung Н. Т. Systolic algpritms. for CMD WARP Processor. II Int, Conf. jPattern) Recogn. - Montreal, July 30- iAugust/2, 1984, p.p. 570-575. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
SU1615741A1 (en) | Systolic processor of discrete fourier transform | |
SU385283A1 (en) | ANALOG-DIGITAL CORRELATOR | |
SU1265795A1 (en) | Device for executing walsh transform of signals with adamard ordering | |
SU526906A1 (en) | Correlometer | |
SU1697086A1 (en) | Device for computing fast fourier transformation | |
SU1319045A1 (en) | Device for calculating convolution | |
SU1443002A1 (en) | Device for swift walsh-adamar transform | |
SU1327280A1 (en) | Digital filter | |
SU1030797A1 (en) | Device for sorting mn-digit numbers | |
SU1644128A1 (en) | Device for numbers sorting | |
SU1115051A1 (en) | Device for calculating squared number | |
SU1043662A1 (en) | Fourier coefficient computing device | |
SU1134947A1 (en) | Device for calculating values of polynominal m-th order | |
SU877555A1 (en) | Device for fast fourier transform | |
SU1062717A1 (en) | Correlator | |
SU650081A1 (en) | Adaptive device for processing information | |
SU1580564A1 (en) | Device for detecting errors in equal-weight code | |
SU824419A2 (en) | Device for multiplying periodic pulse repetition frequency | |
SU1141420A1 (en) | Device for implementing fast walsh transformation | |
SU1027733A1 (en) | Device for computing dynamic specturm | |
SU1095188A1 (en) | Device for calculating spectrum with sliding analysis window | |
SU1180883A1 (en) | Calculating device | |
SU1223225A2 (en) | Device for exrtacting n-th root | |
SU1425722A1 (en) | Device for parallel processing of video information | |
SU1716536A1 (en) | Device for multiplying matrices |