. Изобретение относитс к вычислительной технике и может быть использовано в специализированных процессо pax дл организации ортогональной пам ти со считыванием строк или столбцов. Известно буферное запоминающее устройство, содержащее матрицу из запоминающих элементов с чтением строк или столбцов, входные клапаны записи и выходные клапаны чтени ij Недостаток этого устройства заклю чаетс в низкой производительности, так как сначала производитс загрузка пам ти, а затем считьюание записанного массива. Наиболее близким техническим решением к изобретению вл етс буферное запоминающее устройство, содержащее матрицу из запоминающих элементов /триггеров), соединенных цеп ми сдвига по вертикали и цеп ми сдвига по горизонтали, входные клапа ны записи, выходные клапаны чтени и узел местного управлени с входными шинами дл подачи команды, строба сопровождени информации и синхронизации и выходными шинами разрешени записи, разрешени чтени и строба приема, причем управл ющие входы всех триггеров матрицы соедин ны с шиной управлени приемом узла местного управлени , входы клапанов записи соединены с информационными входами устройства, управл ющие входы этих клапанов соединены с шиной разрешени записиэ а выходы клапанов записи соединены в соответ ствующем пор дке с входами пара.п лельного приема триггеров первой .строки матрицы, управл ющие входы клапанов чтени соединены с пшной разрешени чтени , выходы эт11х клапанов вл ютс выходами устройства 2. Недостатком известного устройств вл етс низка производительность поскольку при обработке каждого массива необходимо затрачивать врем на загрузку этого массива,при чем эту загрузку нельз начинать до того, пока пам ть не освободитс полностью. Цель изобретени - повьш1ение быстродействи устройства путем совмещени .процесса чтени хранимого массива и одновременного приема .следующего массива. Поставленна цель достигаетс тем, что в буферное устройство. 1 2 содержащее накопитель, вьшолненный в виде матрицы триггеров, группы элементов И и блок местного управлени , причем выход каждого триггера всех строк, кроме первой, и всех столбцов матрицы, кроме последнего, соединен с первым информационным входом предьщущего триггера одноименной строки матрицы и с вторым информационным входом триггера последующей строки матрицы, выход каждого триггера первого столбца матрицы, кроме последнего, соединен с вторым информационным входом последующего триггера, управл ющие входы триггеров соединены с выходомстроба приема и выходом раз решени записи блока местного управлени , выходы элементов И первой группы соединены с вторыми информационными входами триггеров первой строки матрицы , управл ющие входы эле чентов И второй группы соединены с выходом разрешени чтени блока местного управлени , а выходы вл ютс выходами устройства, введены коммутаторы , причем первые информационные входы коммутаторов с первого по последний подключены к выходам триггеров первого столбца матрицы с последнего по первый, вторые информационные входы коммутаторов соединены с выходами триггеров последней строки матрицы, управл ющие входы коммутаторов подключены к выходу управлени приемом блока местного управлени , выходы элементов И первой группы с первого по последний соединены с первыми информационными входами триггеров последнего столбца матрицы с. последнего по первый. Блок местного управлени содержит триггеры с первогоПО третий, первый и второй элементы И и первый и второй счетчики, причем выходы первого счетчика подключены к одним из входов элементов И, другой вход первого элемента и соединен с выходом третьего триггера выход второго элемента И подключен к счетному входу второго счетчика, выход которого соединен со счетным входом первого счетчика5 установочный вход которого и входы триггеров вл ютс одним из входов блока, другими входами которого вл ютс другие входы второго элемента И, а выходами выходы первого и второго триггеров И элементов И. На фиг. 1 представлена функциональна схема буферного запоминающего устройства; на фиг. 2 - структурна схема блока местного управлени Буферное запоминающее устройство (фиг. 1 содержит накопитель, вьшолненный в виде матрицы триггеров Ь|- 1, первую группу элементов И 2f,, коммутаторы 3 - 3,, вторую группу элементов И А.- 4„, блок 5 местного управлени , входы 6 и выхо ды 7. Блок 5 местного управлени имеет вход 8 команды, вход 9 стробасопро вождени информации и вход 10 синхронизации . На выходах узла 5 формируютс сигналы, постзшающие на шины разрешени , выходы; записи 11, разреше ни чтени 12, управлени приемом 13 и строба-приема 14. Блок 5(фиг. 2 содержит три триггера 15-17, первый счетчик 18, служащий дл приема команды, причем в первый триггер 15 принимаетс признак записи, во второй триггер 16 - признак чтени , в третий триггер 17 - признак режима обращени . В счетчик 18, работающий в режим вычитани , заноситс код числа под массивов . Кроме того, блок 5 содержит второй счетчик 19, первьй 20 и второй 21 элементы И. Счетчик 19 предназначен дл подсчета числа сдвигов в матрице и содержит tJ разр дов, где . Команда, поступающа на вход 8 устройства, содержит 3 + (l ) разр дов, где максимальное числ подмассивов, обрабатываемых; одной командой. Первые три разр да команДы представл ют собой признаки запи си, чтени и режийа обращени соответственно . Остальные разр ды вл ю с кодом начальной установки счетчи ка 185 при этом старший разр д этог счетчика всегда устанавливаетс в М, а код в остальных разр дах равен числу обрабатываемых подмасси вов минус единица. Старший разр д счетчика 18 испол зуетс как признак окончани обрабо ки.: после К;+ 1) -го вычитани содержимое счетчика 18 принимает ви 01111...ПП, и значение О старше го разр да блокирует формирование строба приема. Устройство работает следующим образом. Перед началом работы все триггеры 1(- If, и счетчик 18 устанавливаютс в нулевое состо ние, а в счетчик 19 заноситс значение 1 цепи начальной установки не показаны). Поступивша на вход 8 команда принимаетс в триггеры 15-17 и счетчик 18. Наличие 1 в триггерах 15 и 16 означает вьтолнение совмещенной операции чтени хранийого массива и записи нового массива. Признак обращени в триггере 17 имеет следующий смысл: О - запись и чтение по строкам; 1 -.запись по строкам, чтение по столбцам. В счетчи се 18 находитс код числа подмассивов.В общем случае . обрабатываютс массивы, превышающие объем матрицы, при этом массив делит с на подмассивы, равные по величине объему матрицы, и весь период обработки делитс на циклы: в течение каждого цикла обрабатываетс один подмассив. Код числа подмассивов заноситс в счетчик 1В, причем в старший разр д заноситс i. Пусть на вход блока 5 поступила команда вида И 11000...0100, котора означает, что требуетс произвести операцию совмещенного чтени записи, причем запись требуетс произвести по строкам, а чтение - по столбцам. Количество обрабатываемых подмассивов равно 5. После приема этой команды на выходе блока 5 формируютс сигналы разрешени записи (выход 11), разрешени чтени {выход 12)и сигнал управлени приемом О, т.е. первый цикл записи производитс по строкам. Сигнал разрешени записи открьшает элементы И 2.., сигнал разрешени чтени - элементы И 4.- 4п, сигнал управлени приемом поступает на входы триггеров 1„- 1. Таким образом , матрица подготовлена к приему информации. Далее проивводитс начальна загрузка первого, псдмассива: при этом на вход 6 устройства поступают строки информации, сопровождаемые по входу 9 стробом. По этому стробу формируетс строб пр.иема на выходе 14 блока 5, который производит прием информации в триггеры 1,- 1 по вторым информационным входам. При этом по первому стробу приема перва строка записываемого масг сива заноситс в первую строку матS рицы, по второму стробу приема втора строка информации перемещаетс во вторую строку матрицы (триггеры гГ Zfi первую строку матрицы заноситс втора строка информацииj по третьему стробу приема перва строка информации продвигаетс в третью строку матрицы (триггеры 1.Цп1 втора строка информации - во вторую строку матрицы, а треть строки информации принимаетс в первую строку матрицы и так далее ДОполного заполнени матрицы через п тактов. Счетчик 19 считает сигналы сдвига и после (n-l)-ro сдвига, когда вс матрица заполнена, приходит в нулево состо ние, при этом на выходе счетчи ка 19 по вл етс сигнал переноса, который поступает на вход счетчика 18. Состо ние младшего разр да счетчика 18 мен етс на противоположное, в данном случае становитс равным 1. В результате на выходе 13 блока 5 по витс сигнал I, что означает изменение режима приема в матрицу в следующем цикле, а именно чтение/за пись производитс по столбцам матриц Затем производитс второй цикл об работки: первый подмассив, занесенны в матрицу, считываетс по столбцам, а второй - записываетс в матрицу по столбцам на освобождающиес в резуль тате последовательных сдвигов места матрицы. По окончании второго цикла (через и тактов полностью счйтьгоает с первьщ подмассивS а второй - за-. писываетс в транспонированном виде . При этом счетчик -19 выдает-очеред НОЙ сигнал переноса, и младший раз226 р д счетчика 18 переходит в состо ние О. В следующем, третьем, цикле считываетс второй подмассив и запи сываетс третий подмассив в пр мом, нетранспонированном виде и так далее до полной обработки всех подмассивов. в соответствии с кодом числа подмассивов в счетчике 18. Состо ние .счетчика 18 измен етс в каждом цикле на 1, при этом в каждом цикле чтени запись производитс поочередно в соответствии со значением младшего разр да счетчика 18. Обработка массива заканчиваетс , когда счетчик 18 переходит в состо ние 011...1, и сигнал с выхода старшего разр да счетчика 18 закрывает элемент И 21 тем самым прекраща формирование импульсов сдвига. Таким образом, путем совмещени Ч ени одного массива -с одновременной записьй следующего достигнуто существенное (в 2 раза повьшение быстродейст-ВИЯ устройства. Затраты аппаратуры : незначительны по сравнению с объемом матрицы., Предлагаемое буферное запоминающее устройство имеет применение в цифровой обработке сигналов, коррел ционном анализе, а также дл вычислени по алгоритму быстрого преобразовани Фурье, Повьшение быстродействи устройства позволит существенно увеличить производительность всей вычислительной системы в целом, так .как простои вычислительного оборудовани , св заннь е с загрузкой матрицы, сведены к минимуму.. The invention relates to computing and can be used in specialized processors for organizing an orthogonal memory with reading rows or columns. A buffer storage device is known which contains a matrix of storage elements with reading rows or columns, write input valves and reading output valves ij. The disadvantage of this device is poor performance, since the memory is loaded first and then the recorded array is read. The closest technical solution to the invention is a buffer storage device containing a matrix of storage elements / flip-flops) connected by vertical shear chains and horizontal shear chains, input recording valves, read output valves and local control node with input busbars for supplying the command, information tracking and synchronization strobe and output resolution write, read resolution and reception strobe buses, the control inputs of all the matrix triggers are connected to the control bus The local control node, the recording valve inputs are connected to the information inputs of the device, the control inputs of these valves are connected to the write resolution bus, and the recording valve outputs are connected in corresponding order to the pair input ports of the first matrix trigger, the control inputs the read valves are connected to the read resolution, the outlets of these 11 valves are the outlets of the device 2. A disadvantage of the known devices is the low productivity since the processing of each array does not require Qdim expend time to load the array, at what this loading can not begin until such time as memory osvobodits not completely. The purpose of the invention is to increase the speed of the device by combining the reading process of the stored array and simultaneously receiving the next array. The goal is achieved by having a buffer device. 1 2 containing a drive made in the form of a matrix of triggers, a group of elements And and a local control unit, with the output of each trigger of all rows except the first and all columns of the matrix except the last connected to the first information input of the previous trigger of the same name of the matrix and the second the information input of the trigger of the subsequent row of the matrix, the output of each trigger of the first column of the matrix, except the last one, is connected to the second information input of the subsequent trigger, the control inputs of the trigger are connected to The receiving gate and the output of the local control unit recording output, the outputs of the elements of the first group are connected to the second information inputs of the triggers of the first row of the matrix, the control inputs of the elements of the second group are connected to the output of the read resolution of the local control block, and the outputs are the outputs of the device switches are introduced, the first information inputs of the first to last switches of the switches are connected to the outputs of the first column triggers of the matrix from the last to the first, the second information inputs to The commutators are connected to the outputs of the triggers of the last row of the matrix, the control inputs of the switches are connected to the output of the control reception of the local control unit, the outputs of the elements of the first group from the first to the last are connected to the first information inputs of the triggers of the last column of the matrix c. last to first. The local control unit contains triggers from the first software, the third, first and second elements And the first and second counters, the outputs of the first counter connected to one of the inputs of the elements And another input of the first element and connected to the output of the third trigger the output of the second element And connected to the counting input the second counter, the output of which is connected to the counting input of the first counter; the setup input of which and the trigger inputs are one of the inputs of the block, the other inputs of which are the other inputs of the second AND element, and the output the outputs of the first and second triggers AND elements I. In FIG. 1 is a functional diagram of a buffer memory; in fig. 2 is a block diagram of a local control unit; Buffer memory device (Fig. 1 contains a drive executed in the form of an array of triggers b | - 1, the first group of elements AND 2f, switches 3 - 3, the second group of elements AND A.- 4 ", local control unit 5, inputs 6 and outputs 7. Local control unit 5 has command input 8, information strobe information input 9 and synchronization input 10. At the outputs of node 5 signals are generated that go to the resolution buses, outputs; records 11, and reading 12, receiving control 13 and receiving gate 14. Block 5 (Fig. 2 contains three flip-flops 15-17, the first counter 18, which serves to receive a command, with the write attribute in the first trigger 15, the read flag in the second trigger 16, and the read mode sign in the third trigger 17. , the code of the number under the arrays is entered. In addition, block 5 contains the second counter 19, first 20 and second 21 elements I. Counter 19 is designed to count the number of shifts in the matrix and contains tJ bits, where. The command sent to the input 8 of the device contains 3 + (l) bits, where the maximum number of subarrays processed; one team. The first three bits of a command are signs of writing, reading, and addressing, respectively. The rest of the bits with the initial installation code of the counter 185 while the highest bit of this counter is always set to M, and the code in the remaining bits is equal to the number of processed sub-masses and minus one. The highest bit of counter 18 is used as a sign of the end of processing: after K; + 1) -th subtraction, the contents of counter 18 accept vi 01111 ... PP, and the value O of the older th digit blocks the formation of the reception gate. The device works as follows. Before starting, all the triggers 1 (- If, and the counter 18 are set to the zero state, and the value 19 in the initial setup circuit is not shown). The command received at input 8 is accepted into triggers 15-17 and counter 18. The presence of 1 in triggers 15 and 16 means the execution of a combined operation of reading a stored array and writing a new array. The symptom of a flip-flop in trigger 17 has the following meaning: O — write and read in rows; 1 -. Record in rows, reading in columns. In counter 18, there is a code for the number of subarrays. In general. arrays that exceed the volume of the matrix are processed, the array is divided into subarrays equal in size to the matrix, and the whole processing period is divided into cycles: one subarray is processed during each cycle. The code of the number of subarrays is entered into counter 1B, and i is entered into the high-order bit. Let an instruction of the form 1100 ... 0100 be received at the input of block 5, which means that it is necessary to perform a combined read operation, the write is required to be done in rows, and the read is to be done in columns. The number of processed subarrays is 5. After receiving this command, the output of block 5 generates write enable signals (output 11), read enable (output 12) and receive control signal O, i.e. The first write cycle is performed in rows. The write enable signal clears the AND 2 .. elements, the read enable signal goes to the AND 4-4 elements, the receive control signal goes to the trigger inputs 1 - 1. Thus, the matrix is prepared for receiving information. Next, the first loading of the first, pd-array is performed: at the same time, information lines arrive at the input 6 of the device, followed by the gate 9 at the entrance. The strobe pr.iema is formed on this gate at the output 14 of the block 5, which receives the information into the triggers 1, - 1 via the second information inputs. At the same time, on the first reception gate, the first line of the recorded signal is entered into the first line of the matrix, the second line of reception of the second line of information is moved to the second line of the matrix (triggers rG Zfi, the first line of the matrix is entered into the second line of information j through the third reception gate, the first line of information is moved to the third row of the matrix (triggers 1.Tsp1 the second row of information — into the second row of the matrix, and the third row of information is taken into the first row of the matrix, and so on. Comrade 19 counts the shift signals and after the (nl) -ro shift, when the entire matrix is full, it returns to the zero state, and a transfer signal appears at the output of counter 19, which arrives at the input of counter 18. the discharge of counter 18 is reversed, in this case becomes equal to 1. As a result, at output 13 of block 5, the signal I appears, which means the reception mode changes to the matrix in the next cycle, namely reading / writing is performed on the matrix columns. second revision cycle is performed: first subdisc the grid, entered into the matrix, is read by columns, and the second is written into the matrix by columns, freeing up as a result of successive shifts in the matrix space. At the end of the second cycle (through the cycles, it completely counts with the first sub-array and the second one is recorded in transposed form. At the same time, the counter -19 gives the queue the transfer signal, and the younger time of the counter 18 goes to the state O. V the next, third, cycle reads the second subarray and records the third subarray in direct, untranslated form and so on until all subarrays are fully processed according to the code of the number of subarrays in counter 18. The state of counter 18 changes in each cycle by 1 with each In the read cycle, the write is performed alternately in accordance with the value of the low-order bit of the counter 18. Array processing ends when the counter 18 goes to the state 011 ... 1, and the signal from the high-order output of the counter 18 closes the And 21 element, thereby stopping the formation shear pulses. Thus, by combining the rejection of one array, with simultaneous recording of the next one, a significant achievement was achieved (a 2-fold increase in the speed of the device. The hardware costs are insignificant compared to the matrix volume. The proposed buffer storage device is used in digital signal processing, correlation analysis, as well as for calculating using the fast Fourier transform algorithm. Improving the performance of the computer system as a whole As the downtime of computing equipment associated with matrix load is minimized.
-Tlj-i .J/-Tlj-i .J /
Фи.2Fi.2