[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

RU2430408C1 - Device for parallel search for word inclusions and coincidence - Google Patents

Device for parallel search for word inclusions and coincidence Download PDF

Info

Publication number
RU2430408C1
RU2430408C1 RU2010112170/08A RU2010112170A RU2430408C1 RU 2430408 C1 RU2430408 C1 RU 2430408C1 RU 2010112170/08 A RU2010112170/08 A RU 2010112170/08A RU 2010112170 A RU2010112170 A RU 2010112170A RU 2430408 C1 RU2430408 C1 RU 2430408C1
Authority
RU
Russia
Prior art keywords
input
search
output
bit
inputs
Prior art date
Application number
RU2010112170/08A
Other languages
Russian (ru)
Inventor
Евгений Анатольевич Титенко (RU)
Евгений Анатольевич Титенко
Дмитрий Александрович Воронин (RU)
Дмитрий Александрович Воронин
Вячеслав Сергеевич Евсюков (RU)
Вячеслав Сергеевич Евсюков
Евгений Анатольевич Семенихин (RU)
Евгений Анатольевич Семенихин
Имхаммед Мохсен Занун Набил (RU)
Имхаммед Мохсен Занун Набил
Артур Олегович Атакищев (RU)
Артур Олегович Атакищев
Original Assignee
Государственное образовательное учреждение высшего профессионального образования Курский государственный технический университет
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Государственное образовательное учреждение высшего профессионального образования Курский государственный технический университет filed Critical Государственное образовательное учреждение высшего профессионального образования Курский государственный технический университет
Priority to RU2010112170/08A priority Critical patent/RU2430408C1/en
Application granted granted Critical
Publication of RU2430408C1 publication Critical patent/RU2430408C1/en

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

FIELD: information technology.
SUBSTANCE: characteristic matrix, which is the basic unit of the matrix search for word inclusions and coincidence, includes search cells which augment the geometric shape of the characteristic matrix to rectangular shape, which facilitates parallel search for not only inclusions, but coincidences of a sample and text.
EFFECT: high accuracy of search owing to search for conformity of text with a sample and coincidence of the sample with text.
2 cl, 7 dwg

Description

Изобретение относится к области вычислительной техники и информатики, может быть использовано в высокопроизводительных поисковых системах и системах обработки данных и знаний, ориентированных на организацию параллельных вычислений, в специализированных вычислительных устройствах и системах обработки символьной информации, в устройствах управления потоками данных в информационно-вычислительных сетях или сетях связи, в системах орфографического и синтаксического контроля текстов, в системах обучения и принятия решений и др.The invention relates to the field of computer engineering and informatics, can be used in high-performance search systems and data processing systems and knowledge oriented to the organization of parallel computing, in specialized computing devices and symbol information processing systems, in devices for managing data streams in computer networks or communication networks, in systems of spelling and syntactic control of texts, in training and decision-making systems, etc.

Пусть заданы линейные конструктивные объекты x - образец длиной n символов и y - текст длиной m символов, составленные как цепочки символов конечного алфавита, где n>0, m>0 и n≤m. Требуется найти позиции всех вхождений x в y (далее условимся называть вхождение), т.е. определить все значения i, при которых у(i, i+n-1)=x(1, n), где 1≤i≤k, k=m-n+1. Также необходимо найти позиции всех пересечений собственного начала образца x с собственным окончанием текста у (далее условимся называть «пересечение 1»), т.е. определить все такие i, при которых y(i, m)=x(1, m-i+1), где k+1≤i<m, k=m-n+1, и необходимо найти позиции всех пересечений собственного окончания образца x с собственным началом текста y (далее условимся называть «пересечение 2»), т.е. определить все такие i, при которых y(1, i)=x(n-i+1, n), где 1≤i<n. Таким образом, в обобщенной задаче требуется найти все вхождения и все указанные пересечения.Let linear constructive objects be given x — a pattern of length n characters and y — text of length m characters, composed as chains of characters of a finite alphabet, where n> 0, m> 0 and n≤m. It is required to find the positions of all occurrences of x in y (hereinafter we will agree to call the occurrence), i.e. determine all the values of i for which y (i, i + n-1) = x (1, n), where 1≤i≤k, k = m-n + 1. It is also necessary to find the positions of all intersections of the proper start of pattern x with the proper end of the text y (hereinafter we will call “intersection 1”), i.e. determine all those i for which y (i, m) = x (1, m-i + 1), where k + 1≤i <m, k = m-n + 1, and it is necessary to find the positions of all intersections of the proper end sample x with its own beginning of text y (hereinafter we will agree to call “intersection 2”), i.e. determine all those i for which y (1, i) = x (n-i + 1, n), where 1≤i <n. Thus, in the generalized problem, it is required to find all occurrences and all indicated intersections.

Обработка данных и знаний в системах символьных вычислений основана не только на операциях поиска вхождений, но и на нахождении позиций «пересечений 1» и «пересечений 2». При обнаружении вхождений образца в обрабатываемом тексте необходимо выполнять множественные отступы (возвраты) в пространстве как образца, так и текста. Множественные отступы при поиске вхождений и пересечений образца связаны с выполнением непродуктивных шагов сопоставления и приводят к непродуктивным затратам времени. При реализации технического решения необходимо так организовать поиск позиций вхождений, «пересечений 1» и «пересечений 2», чтобы исключить необходимость возвратных отступов при обнаружении вхождений и этим повысить быстродействие работы на операциях поиска.Data and knowledge processing in symbolic computing systems is based not only on occurrence search operations, but also on finding the positions of “intersections 1” and “intersections 2”. When detecting occurrences of a pattern in the processed text, it is necessary to perform multiple indents (returns) in the space of both the pattern and the text. Multiple indentation in the search for occurrences and intersections of a sample is associated with the implementation of unproductive matching steps and leads to unproductive time expenditures. When implementing a technical solution, it is necessary to organize the search for positions of entries, “intersections 1” and “intersections 2” in such a way as to eliminate the need for return margins when detecting entries and thereby increase the speed of work on search operations.

Известен алгоритм поиска СДВИГ-И, позволяющий последовательно отыскивать все вхождения образца в тексте. Суть алгоритма состоит в построении и обработке характеристических векторов. Недостатком данного алгоритма является последовательная обработка m векторов-столбцов, что приводит к избыточным затратам времени за счет m-кратного обращения к памяти символов текста для вычисления текущего вектора-столбца.A well-known search algorithm SHDIG-I, allowing you to consistently find all occurrences of the sample in the text. The essence of the algorithm is the construction and processing of characteristic vectors. The disadvantage of this algorithm is the sequential processing of m column vectors, which leads to excessive time costs due to m-times access to the text character memory to calculate the current column vector.

Также известно устройство поиска произвольных вхождений (патент № RU 2202823 С2, МКП G06F 17/30). Недостатком этого устройства является последовательный способ обработки текста и образца с отступами при обработке частичных вхождений.A device for searching for arbitrary occurrences is also known (patent No. RU 2202823 C2, MCP G06F 17/30). The disadvantage of this device is a consistent way of processing text and a pattern with indentation when processing partial occurrences.

Наиболее близким устройством к заявляемому является устройство для параллельного поиска и обработки данных, состоящее из двух блоков хранения и сравнения ассоциативных признаков, блока памяти логических векторов, операционного блока и блока матричного поиска (патент № RU 72771 U1, МКП G06F 12/00), выполняющее параллельную обработку совокупности характеристических векторов, объединенных в двумерную матрицу поиска.The closest device to the claimed is a device for parallel search and data processing, consisting of two blocks for storing and comparing associative features, a logical vector memory block, an operation block and a matrix search block (patent No. RU 72771 U1, MCP G06F 12/00), performing parallel processing of a set of characteristic vectors combined in a two-dimensional search matrix.

Недостатком этого устройства является ограниченная функциональность - устройство позволяет осуществлять только поиск всех вхождений образца в текст. Характеристическая матрица поиска имеет геометрическую форму параллелограмма, что не позволяет этому устройству решать задачу поиска пересечений.The disadvantage of this device is its limited functionality - the device allows you to only search for all occurrences of the sample in the text. The characteristic search matrix has a geometric parallelogram shape, which does not allow this device to solve the intersection search problem.

Технической задачей изобретения является расширение функциональных возможностей за счет ввода дополнительных элементов, что позволит отыскивать не только все вхождения образца в текст, но и все вышеобозначенные пересечения образца с текстом.An object of the invention is the expansion of functionality by introducing additional elements that will allow you to find not only all occurrences of the sample in the text, but also all of the above intersections of the sample with the text.

Техническая задача решается тем, что в устройство для параллельного поиска и обработки данных, содержащее первый и второй блоки хранения и сравнения ассоциативных признаков, блок памяти логических векторов и операционный блок, причем информационные входы первого и второго блоков хранения и сравнения ассоциативных признаков являются соответственно первым и вторым информационными входами устройства, а выходы блоков хранения и сравнения ассоциативных признаков соединены соответственно с первым и вторым адресными входами блока памяти логических векторов, входы задания режимов первого и второго блоков хранения и сравнения ассоциативных признаков и вход записи-считывания блока памяти логических векторов являются соответственно первым, вторым и третьим входами задания режимов устройства, а четвертый, пятый, шестой входы задания режимов устройства соответственно соединены с тремя входами кодов операций операционного блока, первый выход которого является первым выходом устройства, первый вход начальной установки устройства подключен к входу начальной установки операционного блока, второй вход начальной установки - к входам начальной установки первого и второго блоков хранения и сравнения ассоциативных признаков, первый и второй выходы блока памяти логических векторов подключены соответственно к первому и второму информационным входам операционного блока устройства, дополнительно введены, во-первых, блок матричного поиска вхождений и пересечений слов, имеющий четыре входа и три выхода, во-вторых, дополнительный однобитовый выход (второй выход) операционного блока, причем первый вход блока матричного поиска вхождений и пересечений слов соединен с первым входом начальной установки устройства, второй вход подключен ко второму выходу операционного блока, третий и четвертый входы блока матричного поиска вхождений и пересечений слов являются, соответственно, третьим и четвертым информационными входами устройства, первый, второй и третий выходы блока матричного поиска вхождений и пересечений слов являются соответственно вторым, третьим и четвертым выходами устройства. Блок матричного поиска вхождений и пересечений слов содержит один элемент задержки, n регистров кода символа образца разрядностью р бит каждый символ, m регистров кода символа текста разрядностью р бит каждый символ, а также характеристическую матрицу, состоящую из поисковых ячеек, геометрическая форма которой представляет собой прямоугольник размером m*n, где n - длина образца, m - длина текста, k триггеров позиции вхождений, триггеры позиции пересечения образца с текстом количеством 2*(n-1), в их числе n-1 триггеров позиции «пересечения 1», и n-1 триггеров позиции «пересечения 2», при этом каждый регистр кода символа образца и каждый регистр кода символа текста имеют соответственно по три входа (первый и второй управляющие входы и третий информационный р-разрядный вход) и один р-разрядный выход, каждая поисковая ячейка имеет три информационных входа (первый и второй входы разрядностью р бит каждый, третий - одноразрядный вход) и один выход, каждый триггер позиции вхождения, каждый триггер позиции «пересечения 1» и каждый триггер позиции «пересечения 2» имеют соответственно по три входа (первый и второй управляющие входы и третий информационный вход) и один выход, каждая поисковая ячейка содержит двухвходовую схему сравнения на равенство р-разрядных кодов символов образца и текста и двухвходовой элемент И, причем первый p-разрядный вход поисковых ячеек i-й строки (i=1…n) соединен с p-разрядным выходом i-го регистра кода символа образца, второй р-разрядный вход поисковых ячеек j-го столбца (j=1…m) соединен с p-разрядным выходом j-го регистра кода символа текста, выход (i, j)-й (i=2…n, j=2…m) поисковой ячейки соединен с третьим входом (i-1, j-1) поисковой ячейки, выход (i, j)-й (i=1, j=1…k) поисковой ячейки соединен с третьим входом j-го триггера позиции вхождения, выход (i, j)-й (i=1, j=k+1…m) поисковой ячейки соединен с третьим входом (j-k)- ого триггера позиции «пересечения 1», выход (i,j)-й (i=2…n, j=1) поисковой ячейки соединен с третьим входом (i-1)-го триггера позиции «пересечения 2», третий вход (i, j)-й (i=n, j=1…m-l и i=1…n, j=m) поисковой ячейки, т.е. нижняя строка и правый столбец характеристической матрицы, предназначен для подачи начального значения - логическая «1» - для организации поиска, вход начальной установки соединен с первым входом n-1 триггеров позиции «пересечения 1», с первым входом n-1 триггеров позиции «пересечения 2», с первым входом n регистров кода символа образца и m регистров кода символа текста, а также с первым входом k триггеров позиций вхождения, вход «Запись строк» соединен со вторым входом n регистров кода символа образца и m регистров кода символа текста, а также с входом элемента задержки, выход которого соединен со вторым входом n-1 триггеров позиции «пересечения 1», со вторым входом n-1 триггеров позиции «пересечения 2» и со вторым входом k триггеров позиции вхождения, выходы k триггеров позиции вхождения, n-1 триггеров позиции «пересечения 1» и n-1 триггеров позиции «пересечения 2» являются, соответственно, первым k-разрядным, вторым n-1-разрядным и третьим n-1-разрядным информационными выходами блока матричного поиска вхождений и пересечений слов, третий вход блока матричного поиска вхождений и пересечений слов состоит из n групп по р разрядов каждая группа, кодирующих символы образца, причем i-ая группа разрядов (i=1…n) подается на третий p-разрядный вход i-го регистра кода символа образца, четвертый вход блока матричного поиска вхождений и пересечений слов состоит из m групп разрядов по р разрядов каждая группа, кодирующих символы текста, причем j-ая группа разрядов (j=1…m) подается на третий p-разрядный входу j-го регистра кода символа текста, поисковые ячейки, содержащие р двухвходовых элементов сравнения (сумма по модулю 2 с инверсией), первый вход l-го (l=1…р) элемента сравнения соединен с l-м разрядом p-разрядного выхода регистра кода символа образца, второй вход l-го (l=1…р) элемента сравнения соединен с l-м разрядом p-разрядного выхода регистра кода символа текста, выход l-го (l=1…р) элемента сравнения соединен с p-входовым элементом И, выход которого, являющийся выходом двухвходовой схемы сравнения на равенство, соединен с первым входом двухвходового элемента И, второй вход которого является третьим входом поисковой ячейки, а выход двухвходового элемента И является выходом поисковой ячейки.The technical problem is solved in that in a device for parallel search and processing of data containing the first and second blocks for storing and comparing associative signs, a memory block of logical vectors and an operation block, the information inputs of the first and second blocks for storing and comparing associative signs are the first and the second information inputs of the device, and the outputs of the storage units and comparison of associative features are connected respectively with the first and second address inputs of the memory unit logical vectors, the inputs of the job modes of the first and second blocks of storage and comparison of associative signs and the write-read input of the memory block of the logical vectors are the first, second and third inputs of the job of the device modes, and the fourth, fifth, sixth inputs of the job of the device modes are respectively connected to three the inputs of the operation unit operation codes, the first output of which is the first output of the device, the first input of the initial installation of the device is connected to the input of the initial installation of the opera unit, the second input of the initial installation - to the inputs of the initial installation of the first and second blocks for storing and comparing associative features, the first and second outputs of the logical vector memory block are connected respectively to the first and second information inputs of the device’s operating unit, additionally, firstly, the unit matrix search for entries and intersections of words, having four inputs and three outputs, secondly, an additional single-bit output (second output) of the operating unit, and the first input of the block is matrix The first search for occurrences and intersections of words is connected to the first input of the initial installation of the device, the second input is connected to the second output of the operation unit, the third and fourth inputs of the matrix search block for occurrences and intersections of words are, respectively, the third and fourth information inputs of the device, the first, second and third the outputs of the block matrix search for occurrences and intersections of words are, respectively, the second, third and fourth outputs of the device. The matrix block for the entries and intersections of words contains one delay element, n sample symbol code registers with a bit width of p bits each character, m text symbol code registers with a width of p bits each character, and also a characteristic matrix consisting of search cells, the geometric shape of which is a rectangle size m * n, where n is the length of the sample, m is the length of the text, k triggers of the position of occurrences, triggers of the position of intersection of the sample with text of 2 * (n-1), including n-1 triggers of the position of “intersection 1”, and n-1 t igers of the “intersection 2” position, with each register of the symbol code of the sample and each register of the code of the symbol of the text respectively have three inputs (the first and second control inputs and the third information p-bit input) and one p-bit output, each search cell has three information inputs (the first and second inputs of each bit are p bits, the third is a single-bit input) and one output, each entry position trigger, each intersection 1 position trigger and each intersection 2 position trigger have three inputs respectively and (the first and second control inputs and the third information input) and one output, each search cell contains a two-input comparison scheme for the equality of p-bit character codes of the sample and text and a two-input element And, and the first p-bit input of the search cells of the i-th line (i = 1 ... n) is connected to the p-bit output of the i-th register of the sample symbol code, the second p-bit input of the search cells of the j-th column (j = 1 ... m) is connected to the p-bit output of the j-th code register character of the text, the output of the (i, j) -th (i = 2 ... n, j = 2 ... m) search cell is connected to the third input (i-1, j-1) of the search cell, the output of the (i, j) -th (i = 1, j = 1 ... k) search cell is connected to the third input of the j-th trigger of the entry position, the output of (i, j) -th (i = 1, j = k + 1 ... m) of the search cell is connected to the third input of the (jk) th trigger of the “intersection 1” position, the output of the (i, j) th (i = 2 ... n, j = 1) search cell is connected with the third input of the (i-1) th trigger of the “intersection 2” position, the third input of the (i, j) th (i = n, j = 1 ... ml and i = 1 ... n, j = m) search cells, those. the bottom row and the right column of the characteristic matrix, designed to supply the initial value - logical "1" - to organize the search, the initial installation input is connected to the first input of n-1 triggers of the "intersection 1" position, with the first input of n-1 triggers of the "intersection 1" position 2 ", with the first input of n registers of the symbol code of the sample and m registers of the code of the symbol of the text, as well as with the first input of k triggers of the entry positions, the input" Record strings "is connected to the second input of n registers of the code of the symbol of the sample and m registers of the code of the text symbol, and also with the input of the delay element, the output of which is connected to the second input of n-1 triggers of the position of "intersection 1", with the second input of n-1 triggers of the position of "intersection 2" and with the second input of k triggers of the entry position, outputs k of triggers of the entry position, n-1 triggers of the “intersection 1” position and n-1 triggers of the “intersection 2” position are, respectively, the first k-bit, second n-1-bit and third n-1-bit information outputs of the matrix for finding entries and word intersections, the third input block matrix search for entries and intersection words consists of n groups of p bits each group encoding sample characters, and the i-th group of bits (i = 1 ... n) is fed to the third p-bit input of the i-th register of the code of the sample symbol, the fourth input of the matrix search entry block and word intersection consists of m groups of digits of p digits each group encoding text characters, the j-th group of digits (j = 1 ... m) being fed to the third p-bit input of the j-th register of the text symbol code, search cells containing p two-input comparison elements (the sum modulo 2 with inversion), the first in the course of the lth (l = 1 ... p) comparison element is connected to the lth digit of the p-bit output of the sample symbol code register, the second input of the lth (l = 1 ... p) comparison element is connected to the lth discharge of p the bit output of the register of the text symbol code, the output of the l-th (l = 1 ... p) comparison element is connected to the p-input element And whose output, which is the output of the two-input comparison circuit for equality, is connected to the first input of the two-input element And, the second input of which is the third input of the search cell, and the output of the two-input element And is the output of the search cells.

Сущность изобретения поясняется чертежами, где на фиг.1 представлена структурная схема устройства для параллельного поиска вхождений и пересечений слов, на фиг.2 - функциональная схема блока матричного поиска вхождений и пересечений слов, на фиг.3 - функциональная схема поисковой ячейки характеристической матрицы, на фиг.4 - пример параллельного поиска вхождений и пересечений слов, на фиг.5 - временные диаграммы работы на операции «ПОИСК ВХОЖДЕНИИ И ПЕРЕСЕЧЕНИЙ» («ПВП»).The invention is illustrated by drawings, in which Fig. 1 shows a block diagram of a device for parallel search of occurrences and intersections of words, Fig. 2 is a functional diagram of a block matrix search for entries and intersections of words, Fig. 3 is a functional diagram of a search cell of a characteristic matrix, figure 4 is an example of a parallel search for occurrences and intersections of words, figure 5 is a timing diagram of the operation on the operation "SEARCH FOR ENTRANCE AND INTERSECTION" ("PVP").

Устройство для параллельного поиска вхождений и пересечений слов (фиг.1) содержит блоки 11 и 12 хранения и сравнения ассоциативных признаков, блок 2 памяти логических векторов, операционный блок 3, блок 4 матричного поиска вхождений и пересечений слов, информационные входы 41 42, 43 и 44, информационные выходы 51-54, входы 61-66 задания режима работы, входы 71 и 72 начальной установки.A device for the parallel search of occurrences and intersections of words (Fig. 1) contains blocks 1 1 and 1 2 for storing and comparing associative signs, a logical vector memory block 2, an operation block 3, a matrix search block 4 for occurrences and intersections, information inputs 4 1 4 2 , 4, 3, and 4 4 , information outputs 5 1 –5 4 , inputs 6 1 –6 6 for setting the operating mode, inputs 7 1 and 7 2 for the initial installation.

Блоки 11, 12, 2, 3 строго соответствуют устройству-прототипу в структурном и в функциональном отношении, состоят из совпадающих элементов и связей между ними.Blocks 1 1 , 1 2 , 2, 3 strictly correspond to the prototype device in structural and functional terms, consist of matching elements and the connections between them.

Блок 4 матричного поиска содержит два управляющих входа: «Начальная установка» 71 (первый вход) и вход «Запись строк» (второй вход), третий и четвертый информационные входы для подачи символов образца и текста в параллельном коде через информационные входы 43 и 44 устройства, а также три информационных выхода, являющиеся вторым 52, третьим 53 и четвертым 54 выходом устройства. При этом второй управляющий вход блока 4 соединен со вторым выходом операционного блока 3.Block 4 of the matrix search contains two control inputs: “Initial installation” 7 1 (first input) and input “Record lines” (second input), third and fourth information inputs for supplying sample characters and text in parallel code through information inputs 4 3 and 4 4 devices, as well as three information outputs, which are the second 5 2 , third 5 3 and fourth 5 4 output of the device. In this case, the second control input of unit 4 is connected to the second output of the operation unit 3.

Блок 4 матричного поиска вхождений и пересечений слов содержит элемент 31 задержки, состоящий из n пар инверторов, n регистров 321…32n кодов символов образца, m регистров 331…33m кодов символов текста, характеристическую матрицу поисковых ячеек 34n…34nm, k триггеров 371…37k позиций вхождения, n-1 триггеров 411…41n-1 позиции «пересечения 2», n-1 триггеров 401…40n-1 позиции «пересечения 1», причем регистр 32i (i=1…n) и регистр 33j (j=1…m) содержат первый и второй управляющие входы, третий p-разрядный информационный вход и один выход соответственно. Первые и вторые входы n регистров 321…32n кодов символов образца и первые и вторые входы m регистров 33 кодов символов текста соединены соответственно с первым и вторым управляющими входами блока 4 матричного поиска вхождений и пересечений слов, третий вход которого разрядностью р·n бит предназначен для параллельной записи образца в регистры 321…32n и состоит из n групп разрядов по р разрядов каждая группа, кодирующих символы образца, причем i-ая группа разрядов (i=1…n) подается на третий p-разрядный вход регистра 32i (i=1…n), четвертый вход блока 4 матричного поиска вхождений и пересечений слов разрядностью р-m бит предназначен для параллельной записи текста в регистры 33i…33m и состоит из m групп разрядов по р разрядов каждая группа, кодирующих символы текста, причем j-ая группа разрядов (j=1…m) подается на третий p-разрядный вход регистра 33j (j=1…m). Второй управляющий вход блока 4 матричного поиска вхождений и пересечений слов также соединен со входом элемента 31 задержки.Block 4 of the matrix search for occurrences and intersections of words contains a delay element 31 consisting of n pairs of inverters, n registers 32 1 ... 32 n sample character codes, m registers 33 1 ... 33 m text character codes, a characteristic matrix of search cells 34 n ... 34 nm , k triggers 37 1 ... 37 k entry positions, n-1 triggers 41 1 ... 41 n-1 positions of “intersection 2”, n-1 triggers 40 1 ... 40 n-1 positions of “intersection 1”, and register 32 i ( i = 1 ... n) and register 33 j (j = 1 ... m) contain the first and second control inputs, the third p-bit information input and one output, respectively. The first and second inputs of n registers 32 1 ... 32 n sample character codes and the first and second inputs of m registers 33 of text character codes are connected respectively to the first and second control inputs of block 4 of the matrix search for occurrences and intersections of words, the third input of which is p · n bits it is intended for parallel recording of the sample in registers 32 1 ... 32 n and consists of n groups of bits of p bits each group encoding the characters of the sample, and the i-th group of bits (i = 1 ... n) is fed to the third p-bit input of the register 32 i (i = 1 ... n), fourth block input 4 m An atric search for occurrences and intersections of words with bits of p-m bits is intended for parallel text writing in registers 33 i ... 33 m and consists of m groups of bits of p bits each group encoding text characters, and the j-th group of bits (j = 1 ... m) is fed to the third p-bit input of register 33j (j = 1 ... m). The second control input of the block 4 matrix search for occurrences and intersections of words is also connected to the input of the delay element 31.

Характеристическая матрица поисковых ячеек 3411-34nm размером m*n ячеек имеет форму прямоугольника, что обеспечивает направление поиска по всем диагоналям, проходящим через ячейки следующим образом:The characteristic matrix of the search cells 34 11 -34 nm in size m * n cells has the shape of a rectangle, which ensures the direction of the search along all diagonals passing through the cells as follows:

l-я (l=1…n-1) диагональ, по которой происходит поиск «пересечений 1», проходит через l поисковых ячеек 34ij, где i=l…1, j=m…m-l+1;The l-th (l = 1 ... n-1) diagonal along which the search for “intersections 1” takes place passes through l search cells 34 ij , where i = l ... 1, j = m ... m-l + 1;

f-я (f=n…m) диагональ, по которой происходит поиск вхождений, проходит через n поисковых ячеек 34ij, где i=n…1, j=m-f+n…m-f+1;the f-th (f = n ... m) diagonal along which the search for entries occurs passes through n search cells 34 ij , where i = n ... 1, j = m-f + n ... m-f + 1;

g-я (g=m+1…m+n-l) диагональ, по которой происходит поиск «пересечений 2», проходит через n+m-g поисковых ячеек 34ij, где i=n…g-m+1, j=g-n+1…m.the gth (g = m + 1 ... m + nl) diagonal along which the search for “intersections 2” takes place passes through n + mg of the search cells 34 ij , where i = n ... g-m + 1, j = g- n + 1 ... m.

Первые p-разрядные входы m поисковых ячеек i-ой строки характеристической матрицы (i=1…n) соединены с p-разрядным выходом регистра 32i. Выход p-разрядного регистра 33j (j=1…m) соединен со вторыми p-разрядными входами всех поисковых ячеек, входящих в j-ый столбец матрицы. Выход каждой поисковой ячейки 34ij, кроме i=1, j=1…n (верхняя строка характеристической матрицы), кроме i=2…m, j=1 (левый столбец характеристической матрицы), соединен с третьим входом поисковой ячейки 34i-1j-1. Выход поисковой ячейки 34ij (i=2…m, j=1), расположенной в левом столбце характеристической матрицы, соединен с информационным входом 3 триггера 41j-i позиции «пересечения 2», выход поисковой ячейки 34ij (i=1, j=1…k), расположенной в верхней строке характеристической матрицы, соединен с информационным входом 3 триггера 37j позиции вхождения, выход поисковой ячейки 34ij (i=1, j=k+1...m), соединен с информационным входом 3 триггера 40j-k позиции «пересечения 1», третий вход каждой поисковой ячейки, расположенной в нижней n-ой строке матрицы и в правом m-ом столбце матрицы, предназначен для подачи значения логической «1», задавая тем самым начальное значение для поиска по соответствующей диагонали от нижней строки характеристической матрицы к ее верхней строке.The first p-bit inputs m of the search cells of the i-th row of the characteristic matrix (i = 1 ... n) are connected to the p-bit output of the register 32 i . The output of the p-bit register 33 j (j = 1 ... m) is connected to the second p-bit inputs of all the search cells included in the j-th column of the matrix. The output of each search cell 34 ij , except for i = 1, j = 1 ... n (the top row of the characteristic matrix), except for i = 2 ... m, j = 1 (the left column of the characteristic matrix), is connected to the third input of the search cell 34 i- 1j-1 . The output of the search cell 34 ij (i = 2 ... m, j = 1) located in the left column of the characteristic matrix is connected to the information input 3 of the trigger 41 ji of the “intersection 2” position, the output of the search cell 34 ij (i = 1, j = 1 ... k) located in the upper row of the characteristic matrix, connected to the information input 3 of the trigger 37 j of the entry position, the output of the search cell 34 ij (i = 1, j = k + 1 ... m), connected to the information input 3 of the trigger 40 jk position "crossing 1", a third input of each search cell located in the lower n-th row of the matrix in the right and m-th column mattresses gical, for supplying the logic values "1", thereby setting the initial value for searching for the corresponding diagonal line from the lower characteristic matrix in an upper line.

Триггеры 371-37k позиции вхождения, триггеры 411-41n-1 позиции «пересечения 2», триггеры 401-40n-1 позиции «пересечения 1» хранят результат поиска в виде соответственно k-разрядного, n-1-разрядного, n-1-разрядного кодов, в которых значением логической «1» отмечены позиции начала вхождений образца в текст, «пересечений 2» и «пересечений 1» соответственно. Триггеры 37i позиции вхождения (i=1…k), триггеры 41j позиции «пересечения 2» (j=1…n-1), триггеры 40j позиций «пересечения 1» (j=1…n-1) содержат по три входа (первый и второй управляющие, третий одноразрядный информационный вход) и один выход соответственно каждый. Первый вход блока 4 матричного поиска вхождений и пересечений слов соединен с первыми входами k триггеров 37 позиции вхождения, n-1 триггеров 41 позиции «пересечения 2», n-1 триггеров 40 позиции «пересечения 1», вторые входы k триггеров 37 позиций вхождения, n-1 триггеров 41 позиций «пересечения 2», n-1 триггеров 40 позиций «пересечения 1» соединены с выходом элемента 31 задержки. Выходы триггеров 371-37k позиций вхождения образуют первый k-разрядный информационный выход блока 4 матричного поиска вхождений и пересечений слов, выходы триггеров 411-41n-1 позиций «пересечения 2» образуют второй n-1-разрядный информационный выход блока 4 матричного поиска вхождений и пересечений слов, выходы триггеров 401-40n-1 позиций «пересечения 1» образуют третий n-1-разрядный информационный выход блока 4 матричного поиска вхождений и пересечений слов, являющиеся соответственно выходами 52, 53 и 54 устройства.Triggers 37 1 -37 k of entry position, triggers 41 1 -41 n-1 of intersection 2 position, triggers 40 1 -40 n-1 of intersection 1 position store the search result in the form of k-bit, n-1-, respectively bit, n-1-bit codes, in which the value of the logical “1” marks the position of the beginning of occurrences of the pattern in the text, “intersections 2” and “intersections 1”, respectively. Triggers 37 i of the entry position (i = 1 ... k), triggers 41 j of the position of "intersection 2" (j = 1 ... n-1), triggers 40 j of the positions of "intersection 1" (j = 1 ... n-1) contain three inputs (first and second control, third one-bit information input) and one output, respectively. The first input of block 4 of the matrix search for occurrences and intersections of words is connected to the first inputs of k triggers 37 of the entry position, n-1 triggers 41 of the “intersection 2” position, n-1 triggers of 40 positions of the “intersection 1”, second inputs of k triggers 37 of the entry positions, n-1 flip-flops 41 positions of "intersection 2", n-1 flip-flops 40 positions of "intersection 1" are connected to the output of the delay element 31. The outputs of the triggers 37 1 -37 k entry positions form the first k-bit information output of the block 4 of the matrix search for occurrences and intersections of words, the outputs of the triggers 41 1 -41 n-1 positions of the "intersection 2" form the second n-1-bit information output of the block 4 matrix search for occurrences and intersections of words, outputs of triggers 40 1 -40 n-1 positions of “intersection 1” form the third n-1-bit information output of block 4 of the matrix search for occurrences and intersections of words, which are outputs 5 2 , 5 3 and 5 4 , respectively devices.

Данное устройство, как и устройство-прототип, работает в режимах «Запись» и «Операция». Режим «Запись» строго соответствует алгоритму, описанному в устройстве-прототипе.This device, like the prototype device, works in the “Record” and “Operation” modes. The Record mode strictly corresponds to the algorithm described in the prototype device.

В алгоритме режима «Операция» выполняемая в устройстве операция, ранее обозначенная как «ПВ», получает название «ПВП» (поиск вхождения и пересечения слов). Она имеет код операции, совпадающий с кодом операции «ПВ», который подается на соответствующий вход кода режима работы. Для реализации данной дополнительной функциональности в алгоритм режима «Операция» вносятся следующие дополнения.In the algorithm of the “Operation” mode, the operation performed in the device, previously designated as “PV”, is called “PVP” (search for the occurrence and intersection of words). It has an operation code that matches the operation code "PV", which is fed to the corresponding input of the operating mode code. To implement this additional functionality, the following additions are made to the algorithm of the “Operation” mode.

Пусть устройство выполняет режим «Операция» с кодом операции «ПВП». На вход 71 «Начальная установка» блока 4 матричного поиска вхождений и пересечений слов подается импульсный сигнал начальной установки, который сбрасывает в нулевое состояние k триггеров 37 позиций вхождения, n-1 триггеров 41 позиций «пересечения 2», n-1 триггеров 40 позиций «пересечения 1» по их входу 1, n регистров 32 по их входу 1 и m регистров 33 по их входу 1. После окончания действия сигнала начальной установки на второй вход «Запись строк» блока 4 матричного поиска вхождений и пересечений слов подается импульсный сигнал от операционного блока. Данный импульсный сигнал по входу «Запись строк» блока 4 матричного поиска вхождений и пересечений слов подается соответственно на вторые входы разрешения записи n регистров 32 кодов символов образца и на вторые входы разрешения записи m регистров 33 кодов символов текста, обеспечивая тем самым запись n символов образца и m символов текста в параллельном коде с входов 43 и 44 устройства соответственно. Также импульсный сигнал по входу «Запись строк» блока 4 матричного поиска вхождений и пересечений слов через элемент 31 задержки подается соответственно на вторые входы разрешения записи k триггеров 37 позиций вхождения, n-1 триггеров 41 позиций «пересечения 2», n-1 триггеров 40 позиций «пересечения 1». Элемент 31 задержки, выполненный в виде n пар инверторов, необходим для завершения процессов параллельного поиска вхождений и пересечений по диагоналям характеристической матрицы, состоящей из поисковых ячеек 3411-34nm.Let the device perform the “Operation” mode with the operation code “PVP”. Input 7 1 “Initial setting” of block 4 of the matrix search for occurrences and intersections of words is supplied with a pulse signal of the initial setting, which resets k triggers 37 entry positions, n-1 triggers 41 positions of “intersection 2”, n-1 triggers 40 positions “Intersection 1” at their input 1, n registers 32 at their input 1 and m registers 33 at their input 1. After the initial signal is completed, the pulse “signal” is sent to the second input “Record lines” of block 4 of the matrix search for occurrences and intersections of words operating unit. This pulse signal at the “Record strings” input of block 4 of the matrix search for occurrences and intersections of words is supplied respectively to the second recording permission inputs of n registers 32 character codes codes and the second write permission inputs of m registers 33 text character codes, thereby recording n character patterns and m characters of text in parallel code from inputs 4 3 and 4 4 of the device, respectively. Also, the pulse signal at the “Record lines” input of block 4 of the matrix search for occurrences and intersections of words through the delay element 31 is supplied respectively to the second recording permission inputs of k triggers 37 entry positions, n-1 triggers 41 “intersection 2” positions, n-1 triggers 40 intersection 1 positions. The delay element 31, made in the form of n pairs of inverters, is necessary to complete the parallel search of occurrences and intersections along the diagonals of the characteristic matrix, consisting of search cells 34 11 -34 nm .

Поиск начинается с ячеек нижней строки и правого столбца характеристической матрицы. Начальные m-битовый и n-битовый характеристические векторы, равные соответственно

Figure 00000001
подаются соответственно на третьи входы поисковых ячеек n-ной (нижней) строки матрицы и на третьи входы поисковых ячеек m-ного (правого) столбца характеристической матрицы, которые соединены с входом логической «1», определяя тем самым направление параллельного поиска по всем диагоналям характеристической матрицы от поисковых ячеек нижней строки и правого столбца к поисковым ячейкам верхней строки и левого столбца характеристической матрицы включительно. Время параллельного поиска вхождений не зависит от количества диагоналей, а определяется величиной T=τкомп+nτи, где τи - время задержки в элементе 36 И, τкомп - время задержки в схеме сравнения 35. По завершении процессов поиска импульсный сигнал с выхода элемента 31 задержки через время T'=n2τинв (2τинв - время задержки на паре инверторов) записывает k-битовый результат поиска начала вхождений в триггеры 371-37k позиций вхождения, n-1-битовый результат поиска «пересечения 2» в триггеры 411…41n-1, n-1-битовый результат поиска «пересечения 1» в триггеры 401…40n-1. Выходы триггеров 371…37k позиций вхождения являются k-разрядным выходом блока 4 матричного поиска вхождений и пересечений слов и образуют первый выход устройства 52, n-1-разрядные выходы триггеров 411-41n-1 позиций «пересечения 2» и n-1-разрядные выходы триггеров 401…40n-1 позиций «пересечения 1» образуют второй и третий выходы устройства 53 и 54 соответственно. Наличие логических «1» в разряде информационного выхода 52 указывает на позиции вхождений образца в текст. Наличие логических «1» разряде информационного выхода 53 указывает позицию «пересечения 2» в тексте. Наличие логических «1» в разряде информационного выхода 54 указывает позицию «пересечения 1» в тексте. На фиг.4 (в) проиллюстрирована интерпретация результатов обработки характеристической матрицы.The search begins with the cells of the bottom row and the right column of the characteristic matrix. The initial m-bit and n-bit characteristic vectors, respectively equal
Figure 00000001
respectively, are fed to the third inputs of the search cells of the nth (lower) row of the matrix and to the third inputs of the search cells of the mth (right) column of the characteristic matrix, which are connected to the input of logical “1”, thereby determining the direction of parallel search on all diagonals of the characteristic matrices from the search cells of the bottom row and the right column to the search cells of the top row and the left column of the characteristic matrix inclusive. The parallel search time for entries does not depend on the number of diagonals, but is determined by the value T = τ comp + nτ and , where τ and is the delay time in the element 36 I, and τ comp is the delay time in the comparison circuit 35. Upon completion of the search processes, the pulse signal from the output of the delay element 31 through the time T '= n2τ inv (2τ inv is the delay time on the pair of inverters) records the k-bit search result of occurrences of triggers 37 1 -37 k entry positions, the n-1-bit search result of “intersection 2” in triggers 41 1 ... 41 n-1 , n-1-bit search result of "intersection 1" in the trigger s 40 1 ... 40 n-1 . The outputs of the triggers 37 1 ... 37 k entry positions are the k-bit output of the block 4 of the matrix search for entries and intersections of words and form the first output of the device 5 2 , n-1-bit outputs of the triggers 41 1 -41 n-1 positions of the "intersection 2" and n-1-bit outputs of flip-flops 40 1 ... 40 n-1 of the “intersection 1” positions form the second and third outputs of the device 5 3 and 5 4, respectively. The presence of logical “1” in the category of information output 5 2 indicates the position of occurrences of the sample in the text. The presence of logical “1” category of information output 5 3 indicates the position of “intersection 2” in the text. The presence of logical “1” in the category of information output 5 4 indicates the position of “intersection 1” in the text. Figure 4 (c) illustrates the interpretation of the processing results of the characteristic matrix.

Выполнение алгоритма в режиме «Операция» на остальных операциях строго соответствует устройству-прототипу.The execution of the algorithm in the "Operation" mode on the remaining operations strictly corresponds to the prototype device.

Таким образом, достигается расширение функциональности устройства за счет введения дополнительных элементов характеристической матрицы поиска, что позволяет осуществлять за одну операцию поиск всех позиций вхождения, всех позиций «пересечения 1» и всех позиций «пересечения 2».Thus, it is possible to expand the functionality of the device by introducing additional elements of the characteristic search matrix, which allows you to search in one operation for all entry positions, all positions of “intersection 1” and all positions of “intersection 2”.

Claims (2)

1. Устройство для параллельного поиска и обработки данных, содержащее первый и второй блоки хранения и сравнения ассоциативных признаков, блок памяти логических векторов и операционный блок, причем информационные входы первого и второго блоков хранения и сравнения ассоциативных признаков являются соответственно первым и вторым информационными входами устройства, а выходы блоков хранения и сравнения ассоциативных признаков соединены соответственно с первым и вторым адресными входами блока памяти логических векторов, входы задания режимов первого и второго блоков хранения и сравнения ассоциативных признаков и вход записи-считывания блока памяти логических векторов являются соответственно первым, вторым и третьим входами задания режимов устройства, а четвертый, пятый, шестой входы задания режимов устройства соответственно соединены с тремя входами кодов операций операционного блока, первый выход которого является первым выходом устройства, первый вход начальной установки устройства подключен к входу начальной установки операционного блока, второй вход начальной установки - к входам начальной установки первого и второго блоков хранения и сравнения ассоциативных признаков, первый и второй выходы блока памяти логических векторов подключены соответственно к первому и второму информационным входам операционного блока устройства, отличающееся тем, что дополнительно введен блок матричного поиска вхождений и пересечений слов, имеющий четыре входа и три выхода, введен дополнительный однобитовый выход (второй выход) операционного блока, причем первый вход блока матричного поиска вхождений и пересечений слов соединен с первым входом начальной установки устройства, второй вход подключен ко второму выходу операционного блока, третий и четвертый входы блока матричного поиска вхождений и пересечений слов являются, соответственно, третьим и четвертым информационными входами устройства, первый, второй и третий выходы блока матричного поиска вхождений и пересечений слов являются соответственно вторым, третьим и четвертым выходами устройства.1. A device for parallel search and data processing, containing the first and second blocks for storing and comparing associative signs, a memory block of logical vectors and an operation block, the information inputs of the first and second blocks for storing and comparing associative signs are the first and second information inputs of the device, and the outputs of the blocks for storing and comparing associative signs are connected, respectively, with the first and second address inputs of the logical vector memory block, the presses of the first and second blocks for storing and comparing associative signs and the write-read input of the logical vector memory block are the first, second, and third inputs of the device mode settings, and the fourth, fifth, and sixth device mode settings inputs are respectively connected to the three inputs of the operation unit operation codes the first output of which is the first output of the device, the first input of the initial installation of the device is connected to the input of the initial installation of the operating unit, the second input is settings - to the inputs of the initial installation of the first and second blocks of storage and comparison of associative signs, the first and second outputs of the logical vector memory block are connected respectively to the first and second information inputs of the device operation block, characterized in that an additional matrix search block for entries and word intersections is introduced, having four inputs and three outputs, an additional one-bit output (second output) of the operating unit is introduced, the first input of the matrix of entries and entries crossing words is connected to the first input of the initial installation of the device, the second input is connected to the second output of the operating unit, the third and fourth inputs of the matrix search block of entries and intersections of words are, respectively, the third and fourth information inputs of the device, the first, second and third outputs of the matrix search block occurrences and intersections of words are, respectively, the second, third and fourth outputs of the device. 2. Устройство по п.1, отличающееся тем, что блок матричного поиска вхождений и пересечений слов содержит один элемент задержки, n регистров кода символа образца разрядностью p бит каждый символ, m регистров кода символа текста разрядностью p бит каждый символ, а также характеристическую матрицу, состоящую из поисковых ячеек, геометрическая форма которой представляет собой прямоугольник размером m×n, где n - длина образца, m - длина текста, k=m-n+1 триггеров позиции вхождений, триггеры позиции пересечения образца с текстом количеством 2·(n-1), в их числе n-1 триггеров позиции «пересечения 1», и n-1 триггеров позиции «пересечения 2», при этом каждый регистр кода символа образца и каждый регистр кода символа текста имеют соответственно по три входа (первый и второй управляющие входы и третий информационный р-разрядный вход) и один р-разрядный выход, каждая поисковая ячейка имеет три информационных входа (первый и второй входы разрядностью р бит каждый, третий - одноразрядный вход) и один выход, каждый триггер позиции вхождения, каждый триггер позиции «пересечения 1» и каждый триггер позиции «пересечения 2» имеют соответственно по три входа (первый и второй управляющие входы и третий информационный вход) и один выход, каждая поисковая ячейка содержит двухвходовую схему сравнения на равенство p-разрядных кодов символов образца и текста и двухвходовой элемент И, причем первый p-разрядный вход поисковых ячеек i-й строки (i=1…n) соединен с p-разрядным выходом i-го регистра кода символа образца, второй p-разрядный вход поисковых ячеек j-го столбца (j=1…m) соединен с p-разрядным выходом j-го регистра кода символа текста, выход (i, j)-й (i=2…n, j=2…m) поисковой ячейки соединен с третьим входом (i-1, j-1)-й поисковой ячейки, выход (i, j)-й (i=1, j=1…k) поисковой ячейки соединен с третьим входом j-го триггера позиции вхождения, выход (i, j)-й (i=7, j=k+1…m) поисковой ячейки соединен с третьим входом (i-k)-го триггера позиции «пересечения 1», выход (i, j)-й (i=2…n, j=1) поисковой ячейки соединен с третьим входом (i-1)-го триггера позиции «пересечения 2», третий вход (i, j)-й (i=n, j=1…m-1 и i=1…n, j=m) поисковой ячейки, т.е. нижняя строка и правый столбец характеристической матрицы, предназначен для подачи начального значения - логическая «1» - для организации поиска, вход начальной установки соединен с первым входом n-1 триггеров позиции «пересечения 1», с первым входом n-1 триггеров позиции «пересечения 2», с первым входом n регистров кода символа образца и m регистров кода символа текста, а также с первым входом к триггеров позиции вхождения, вход «Запись строк» соединен со вторым входом n регистров кода символа образца и m регистров кода символа текста, а также с входом элемента задержки, выход которого соединен со вторым входом n-1 триггеров позиции «пересечения 1», со вторым входом n-1 триггеров позиции «пересечения 2» и со вторым входом к триггеров позиции вхождения, выходы к триггеров позиции вхождения, n-1 триггеров позиции «пересечения 1» и n-1 триггеров позиции «пересечения 2» являются, соответственно, первым k-разрядным, вторым n-1 - разрядным и третьим n-1 - разрядным информационными выходами блока матричного поиска вхождений и пересечений слов, третий вход блока матричного поиска вхождений и пересечений слов состоит из n групп по p разрядов каждая группа, кодирующих символы образца, причем i-я группа разрядов (i=1…n) подается на третий p-разрядный вход i-го регистра кода символа образца, четвертый вход блока матричного поиска вхождений и пересечений слов состоит из m групп разрядов по p разрядов каждая группа, кодирующих символы текста, причем j-я группа разрядов (j=1…m) подается на третий p-разрядный вход j-го регистра кода символа текста, поисковые ячейки, содержащие p двухвходовых элементов сравнения (сумма по модулю 2 с инверсией), первый вход 1-го (l=1…p) элемента сравнения соединен с 1-м разрядом p-разрядного выхода регистра кода символа образца, второй вход 1-го (l=1…р) элемента сравнения соединен с 1-м разрядом p-разрядного выхода регистра кода символа текста, выход 1-го (l=1…p) элемента сравнения соединен с p-входовым элементом И, выход которого, являющийся выходом двухвходовой схемы сравнения на равенство, соединен с первым входом двухвходового элемента И, второй вход которого является третьим входом поисковой ячейки, а выход двухвходового элемента И является выходом поисковой ячейки. 2. The device according to claim 1, characterized in that the matrix search block for occurrences and intersections of words contains one delay element, n sample code symbol registers with a capacity of p bits each character, m text character code registers with a capacity of p bits each character, and also a characteristic matrix consisting of search cells, the geometric shape of which is a rectangle of size m × n, where n is the length of the sample, m is the length of the text, k = m-n + 1 triggers of the position of occurrences, triggers of the position of the intersection of the sample with text of 2 · (n -1), including e n-1 triggers of the “intersection 1” position, and n-1 triggers of the “intersection 2” position, with each sample character code register and each text character code register each having three inputs (the first and second control inputs and the third information input -digit input) and one p-bit output, each search cell has three information inputs (the first and second inputs are each bit bit, the third is a single-bit input) and one output, each entry position trigger, each “intersection 1” position trigger, and each trigger of the “ne Cutoffs 2 ”have three inputs, respectively (first and second control inputs and a third information input) and one output, each search cell contains a two-input comparison scheme for the equality of p-bit character codes of a sample and text, and a two-input element And, and the first p-bit the input of the search cells of the i-th row (i = 1 ... n) is connected to the p-bit output of the i-th register of the code of the sample symbol, the second p-bit input of the search cells of the j-th column (j = 1 ... m) is connected to p- bit output of the j-th register of the text symbol code, the output of the (i, j) -th (i = 2 ... n, j = 2 ... m) cell is connected to the third input of the (i-1, j-1) -th search cell, the output of the (i, j) -th (i = 1, j = 1 ... k) search cell is connected to the third input of the j-th position trigger occurrences, the output of the (i, j) th (i = 7, j = k + 1 ... m) search cell is connected to the third input of the (ik) th trigger of the “intersection 1” position, the output of the (i, j) th ( i = 2 ... n, j = 1) of the search cell is connected to the third input of the (i-1) th trigger of the “intersection 2” position, the third input of the (i, j) th (i = n, j = 1 ... m- 1 and i = 1 ... n, j = m) of the search cell, i.e. the bottom row and the right column of the characteristic matrix, designed to supply the initial value - logical "1" - to organize the search, the initial installation input is connected to the first input of n-1 triggers of the "intersection 1" position, with the first input of n-1 triggers of the "intersection 1" position 2 ", with the first input of n registers of the code of the symbol of the sample and m registers of the code of the symbol of the text, as well as with the first input to the triggers of the entry position, the input" Record strings "is connected to the second input of n registers of the code of the symbol of the sample and m registers of the code of the text symbol, and also with the input of the delay element, the output of which is connected to the second input of n-1 triggers of the “intersection 1” position, with the second input of n-1 triggers of the “intersection 2” position and with the second input to the triggers of the entry position, outputs to the triggers of the entry position, n-1 the triggers of the position “intersection 1” and n-1 the triggers of the position “intersection 2” are, respectively, the first k-bit, the second n-1 - bit and the third n-1 - bit information outputs of the block for the matrix search for occurrences and intersections of words, the third input block matrix search entries and word sequences consists of n groups of p bits each group encoding sample characters, and the i-th group of bits (i = 1 ... n) is fed to the third p-bit input of the i-th code register of the sample character code, the fourth input of the matrix entry search block and word intersection consists of m groups of bits of p bits each group encoding text characters, the j-th group of bits (j = 1 ... m) being fed to the third p-bit input of the j-th code symbol code register, search cells containing p two-input comparison elements (sum modulo 2 with inversion), first input One of the 1st (l = 1 ... p) comparison element is connected to the 1st digit of the p-bit output of the sample symbol code register, the second input of the 1st (l = 1 ... p) comparison element is connected to the 1st discharge of p- bit output of the register of the text symbol code, the output of the 1st (l = 1 ... p) comparison element is connected to the p-input element And whose output, which is the output of the two-input comparison circuit for equality, is connected to the first input of the two-input element And, the second input of which is the third input of the search cell, and the output of the two-input element And is the output of the search cell hers.
RU2010112170/08A 2010-03-29 2010-03-29 Device for parallel search for word inclusions and coincidence RU2430408C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2010112170/08A RU2430408C1 (en) 2010-03-29 2010-03-29 Device for parallel search for word inclusions and coincidence

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2010112170/08A RU2430408C1 (en) 2010-03-29 2010-03-29 Device for parallel search for word inclusions and coincidence

Publications (1)

Publication Number Publication Date
RU2430408C1 true RU2430408C1 (en) 2011-09-27

Family

ID=44804250

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2010112170/08A RU2430408C1 (en) 2010-03-29 2010-03-29 Device for parallel search for word inclusions and coincidence

Country Status (1)

Country Link
RU (1) RU2430408C1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2549525C2 (en) * 2013-07-15 2015-04-27 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗ ГУ) Method and apparatus for searching for composite sample in sequence
RU2760628C1 (en) * 2021-02-25 2021-11-29 Федеральное государственное бюджетное образовательное учреждение высшего образования «Юго-Западный государственный университет» (ЮЗГУ) (RU) Method and associative matrix apparatus for parallel search of a sample based on the prefixes thereof
RU2762781C1 (en) * 2021-02-26 2021-12-22 Федеральное государственное бюджетное образовательное учреждение высшего образования "Юго-Западный государственный университет" (ЮЗГУ) (RU) Matrix device for parallel search of occurrences and data processing
RU2776602C1 (en) * 2021-04-01 2022-07-22 Федеральное государственное бюджетное образовательное учреждение высшего образования «Юго-Западный государственный университет» (ЮЗГУ) (RU) Matrix apparatus for parallel search of a composite sample

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2549525C2 (en) * 2013-07-15 2015-04-27 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗ ГУ) Method and apparatus for searching for composite sample in sequence
RU2760628C1 (en) * 2021-02-25 2021-11-29 Федеральное государственное бюджетное образовательное учреждение высшего образования «Юго-Западный государственный университет» (ЮЗГУ) (RU) Method and associative matrix apparatus for parallel search of a sample based on the prefixes thereof
RU2762781C1 (en) * 2021-02-26 2021-12-22 Федеральное государственное бюджетное образовательное учреждение высшего образования "Юго-Западный государственный университет" (ЮЗГУ) (RU) Matrix device for parallel search of occurrences and data processing
RU2776602C1 (en) * 2021-04-01 2022-07-22 Федеральное государственное бюджетное образовательное учреждение высшего образования «Юго-Западный государственный университет» (ЮЗГУ) (RU) Matrix apparatus for parallel search of a composite sample
RU2789997C1 (en) * 2022-04-21 2023-02-14 Федеральное государственное бюджетное образовательное учреждение высшего образования "Юго-Западный государственный университет" (ЮЗГУ) Method and matrix device for parallel-pipeline pattern match search
RU223472U1 (en) * 2023-11-14 2024-02-19 Общество с ограниченной ответственностью Центр системной безопасности "ЩИТ-ИНФОРМ" DEVICE FOR PROCESSING DESCRIPTORS AND PARALLEL SEARCHING FOR INTERNETWORK INTERACTION CANDIDATES

Similar Documents

Publication Publication Date Title
US11315626B2 (en) Sort operation in memory
US11775296B2 (en) Mask patterns generated in memory from seed vectors
US20240362020A1 (en) Apparatus and methods related to microcode instructions indicating instruction types
US9898253B2 (en) Division operations on variable length elements in memory
CN107209665B (en) Generating and executing control flow
TW202001884A (en) Memory computation circuit
Chowdhury et al. A DNA read alignment accelerator based on computational RAM
RU2430408C1 (en) Device for parallel search for word inclusions and coincidence
US20220019407A1 (en) In-memory computation circuit and method
US3391390A (en) Information storage and processing system utilizing associative memory
US11200029B2 (en) Extendable multiple-digit base-2n in-memory adder device
RU84615U1 (en) ASSOCIATIVE MEMORIAL MATRIX
US20190251127A1 (en) Methods and apparatuses for searching data stored in a memory array using a replicated data pattern
RU72771U1 (en) DEVICE FOR PARALLEL SEARCH AND DATA PROCESSING
RU223472U1 (en) DEVICE FOR PROCESSING DESCRIPTORS AND PARALLEL SEARCHING FOR INTERNETWORK INTERACTION CANDIDATES
RU2549525C2 (en) Method and apparatus for searching for composite sample in sequence
RU2789997C1 (en) Method and matrix device for parallel-pipeline pattern match search
RU163442U1 (en) DEVICE FOR PARALLEL SEARCH FOR COMPOSITE SAMPLE
RU2762781C1 (en) Matrix device for parallel search of occurrences and data processing
RU2776602C1 (en) Matrix apparatus for parallel search of a composite sample
RU2469425C2 (en) Associative memory matrix for masked inclusion search
RU2787742C1 (en) Matrix device for fast occurrence search and data processing
RU2509383C2 (en) Method for parallel search and row replacement and homogeneous memory matrix for realising said method
US10430326B2 (en) Precision data access using differential data
RU2760628C1 (en) Method and associative matrix apparatus for parallel search of a sample based on the prefixes thereof

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20120330