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

RU223472U1 - DEVICE FOR PROCESSING DESCRIPTORS AND PARALLEL SEARCHING FOR INTERNETWORK INTERACTION CANDIDATES - Google Patents

DEVICE FOR PROCESSING DESCRIPTORS AND PARALLEL SEARCHING FOR INTERNETWORK INTERACTION CANDIDATES Download PDF

Info

Publication number
RU223472U1
RU223472U1 RU2023129461U RU2023129461U RU223472U1 RU 223472 U1 RU223472 U1 RU 223472U1 RU 2023129461 U RU2023129461 U RU 2023129461U RU 2023129461 U RU2023129461 U RU 2023129461U RU 223472 U1 RU223472 U1 RU 223472U1
Authority
RU
Russia
Prior art keywords
input
bit
search
output
intersections
Prior art date
Application number
RU2023129461U
Other languages
Russian (ru)
Inventor
Валерий Владимирович Карасовский
Егор Андреевич Шиленков
Сергей Николаевич Фролов
Евгений Анатольевич Титенко
Дмитрий Павлович Тетерин
Алексей Николаевич Щитов
Денис Михайлович Зарубин
Дмитрий Сергеевич Коптев
Александр Владимирович Крипачев
Сергей Юрьевич Мирошниченко
Сергей Юрьевич Сазонов
Original Assignee
Общество с ограниченной ответственностью Центр системной безопасности "ЩИТ-ИНФОРМ"
Filing date
Publication date
Application filed by Общество с ограниченной ответственностью Центр системной безопасности "ЩИТ-ИНФОРМ" filed Critical Общество с ограниченной ответственностью Центр системной безопасности "ЩИТ-ИНФОРМ"
Application granted granted Critical
Publication of RU223472U1 publication Critical patent/RU223472U1/en

Links

Abstract

Полезная модель относится к области вычислительной техники и сетей передачи данных, может быть использована для параллельного поиска элементов в маршрутных картах систем и сетей передачи данных, информационно-поисковых системах, сетевых базах данных, специализированных средствах обеспечения реконфигурации системы или сети за счет поиска элементов по их дескрипторам для управления конфигурацией системы или сети. Технической задачей полезной модели является расширение функциональных возможностей за счет ввода для каждого элемента образца дополнительного бита маски и обработки полей дескрипторов на основе битовой маски, что позволит отыскивать не только полные и частичные вхождения, но и исключать из поиска не актуальные данные о состоянии сети. Техническая задача решается тем, что в характеристическую матрицу, являющуюся основой блока матричного поиска вхождений и пересечений слов, введен блок матричного маскированного поиска вхождений и пересечений слов, что позволяет вести параллельный поиск по дескрипторам элементов сети с учетом актуальных полей в составе дескриптора, выделенных маской. 4 ил. The utility model relates to the field of computer technology and data transmission networks; it can be used for parallel search of elements in route maps of systems and data transmission networks, information retrieval systems, network databases, specialized tools for providing system or network reconfiguration by searching for elements by their descriptors to manage the configuration of a system or network. The technical task of the utility model is to expand the functionality by entering an additional mask bit for each sample element and processing descriptor fields based on the bit mask, which will allow you to search not only for full and partial occurrences, but also to exclude irrelevant data about the state of the network from the search. The technical problem is solved by introducing a matrix masked search block for occurrences and intersections of words into the characteristic matrix, which is the basis of the matrix search block for occurrences and intersections of words, which allows for a parallel search through the descriptors of network elements, taking into account the actual fields in the descriptor, highlighted by a mask. 4 ill.

Description

Полезная модель относится к вычислительным системам, сетям передачи данных с изменяемым в процессе работы составом элементов и может быть использована для обработки слов, описывающих состояние сети, и параллельного поиска элементов в маршрутных картах систем и сетей передачи данных, информационно-поисковых системах, сетевых базах данных, специализированных средствах обеспечения реконфигурации системы или сети за счет поиска элементов по их дескрипторам для управления конфигурацией системы или сети. Под дескриптором элемента сети понимается одномерный объект-описатель, содержащий битовые последовательности для управления состоянием сети и оценки ее конфигурации.The utility model relates to computing systems, data networks with a variable composition of elements during operation and can be used for processing words describing the state of the network and parallel search for elements in route maps of data transmission systems and networks, information retrieval systems, network databases , specialized tools for providing system or network reconfiguration by searching for elements by their descriptors to manage the configuration of the system or network. A network element descriptor is a one-dimensional descriptive object containing bit sequences to control the state of the network and evaluate its configuration.

Пусть заданы одномерные объекты (слова, строки): O - слово-дескриптор (образец длиной n символов), S - конфигуратор сети (конфигурационное слово длиной m символов), где n>0, m>0 и n<m. Пусть задана битовая маска M длиной n бит. Маска необходима для выделения (обработки) символов дескриптора, существенных для организации параллельного поиска.Let one-dimensional objects (words, strings) be given: O is a descriptor word (a pattern of n characters long), S is a network configurator (a configuration word of m characters long), where n>0 , m>0 and n<m . Let a bitmask M of length n bits be given. The mask is necessary for selecting (processing) descriptor symbols that are essential for organizing parallel search.

Требуется найти позиции всех полных вхождений образца O в конфигурационное слово S с учетом маски (далее условимся называть вхождения по образцу), т.е. определить все значения позиций i, при которых S(i, m+n-1) =O(1, n)∨(¬M[i])=1, где ¬ - операция инверсии, 1≤i≤n. Также необходимо найти позиции всех пересечений собственного начала образца O с собственным окончанием конфигурационного слова S с учетом маски M (далее условимся называть «левые пересечения»), т.е. определить все такие i, при которых (S(i, m) = O(1, m-i+1)∨(¬M[i])=1, где ¬ - операция инверсии, k+1≤ i<m, k=m-n+1, и необходимо найти позиции всех пересечений собственного окончания образца O с собственным началом конфигурационного слова S с учетом маски M (далее условимся называть «правые пересечения»), т.е. определить все такие i, при которых (S(1, i) = O(n-i+1, n) )∨(¬M[i])=1, где ¬ - операция инверсии, 1≤i<n,. Обработка полей дескриптора осуществляется на основе логической операции дизъюнкции результата сравнения символа образца O с символом конфигурационного слова S и инверсного бита маски M.You need to find the positions of all complete occurrences of a patternO to configuration wordStaking into account the mask (hereinafter we will agree to name the occurrences according to the pattern), i.e. determine all position valuesi, at whichS(i, m+n-1) =O(1, n)∨(¬M[i])=1,where ¬ is the inversion operation, 1≤i≤n. It is also necessary to find the positions of all intersections of the pattern's own originO with its own ending of the configuration wordSincluding maskM(hereinafter we will agree to call “left intersections”), i.e. identify all suchi, for which (S(i, m) = O(1, m-i+1)∨(¬M[i])=1, where ¬ is the inversion operation,k+1≤ i<m,k=m-n+1, and it is necessary to find the positions of all intersections of the own end of the patternO with its own beginning of the configuration wordSincluding maskM(hereinafter we will agree to call “right intersections”), i.e. identify all suchi, for which (S(1, i) = O(n-i+1, n) )∨(¬M[i])=1, where ¬ is the inversion operation, 1≤i<n,. Processing of descriptor fields is carried out based on the logical operation of disjunction of the result of comparing the pattern symbolO with configuration word symbolS and inverse mask bitM.

Управление конфигурацией системы или сети, в том числе, основано на поиске и анализе таких ее элементов, в полях дескрипторов которых присутствуют целевые значения. При этом целевые значения с учетом воздействия помех могут иметь быть неточными, а сами поля - быть распределены по формату дескриптора. Поиск и последующая обработка дескрипторов элементов системы или сети, учитывающих вариативность значений, осуществляется на основе параллельного маскированного поиска полных и частичных вхождений дескриптора в конфигурационное слово.Managing the configuration of a system or network, among other things, is based on the search and analysis of its elements whose descriptor fields contain target values. In this case, the target values, taking into account the impact of interference, may be inaccurate, and the fields themselves may be distributed according to the descriptor format. The search and subsequent processing of descriptors of system or network elements that take into account the variability of values is carried out on the basis of a parallel masked search for full and partial occurrences of the descriptor in the configuration word.

Известно устройство поиска произвольных вхождений (патент № RU 2202823 C2, МКП G06F17/30). Недостатком этого устройства является последовательный способ обработки текста и образца с отступами при обработке частичных вхождений.A device for searching arbitrary occurrences is known (patent No. RU 2202823 C2, MCP G06F17/30). The disadvantage of this device is the sequential way of processing text and indented pattern when handling partial occurrences.

Также известно устройство для параллельного поиска и обработки данных, состоящее из двух блоков хранения и сравнения ассоциативных признаков, блока памяти логических векторов, операционного блока и блока матричного поиска (патент № RU 72771 U1, МКП G06F12/00), выполняющее параллельную обработку совокупности характеристических векторов, объединенных в двумерную матрицу поиска.A device for parallel search and processing of data is also known, consisting of two blocks for storing and comparing associative features, a memory block for logical vectors, an operation block and a matrix search block (patent No. RU 72771 U1, MKP G06F12/00), which performs parallel processing of a set of characteristic vectors , combined into a two-dimensional search matrix.

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

Наиболее близким к заявленному является устройство для параллельного поиска вхождений и пересечений слов [Патент 2430408 Российская Федерация, МПК G06F17/30. Устройство для параллельного поиска вхождений и пересечений слов / Е.А. Титенко, Д.А. Воронин, В.С. Евсюков, В.А. Семенихин, М.З. Набил Имхаммед, А.О. Атакищев, заявитель и патентообладатель Курск. гос. тех. ун-т, опубл. 27.09.2011, Бюл. №27, 2011 - 14с.], состоящий в построении прямоугольной двоичной матрицы сравнений символов образца и текста размером n × m поисковых ячеек. Поиск в устройстве сводится к параллельной обработке полных k (k=m-n+1) диагоналей матрицы, проходящих через все строки с формированием результирующего k-разрядного вектора вхождений, а также к параллельной обработке частичных (левых и правых) 2⋅(n-1) диагоналей матрицы, содержащих (1,2, … n-1) элементов.The closest to the claimed one is a device for parallel search for occurrences and intersections of words [Patent 2430408 Russian Federation, IPC G06F17/30. Device for parallel search for occurrences and intersections of words / E.A. Titenko, D.A. Voronin, V.S. Evsyukov, V.A. Semenikhin, M.Z. Nabil Imhammed, A.O. Atakischev, applicant and patent holder Kursk. state those. univ., publ. 09/27/2011, Bulletin. No. 27, 2011 - 14 pp.], which consists of constructing a rectangular binary matrix of comparisons of sample symbols and text of size n × m search cells. Search in the device comes down to parallel processing of full k ( k = m - n +1) matrix diagonals passing through all rows to form the resulting k -bit vector of occurrences, as well as parallel processing of partial (left and right) 2⋅( n - 1) diagonals of the matrix containing (1,2, ... n -1) elements.

Тем не менее данное устройство не может вести избирательный поиск по необходимым элементам слова-образца (дескриптора), что ограничивает применение устройства для управления конфигурацией сети.However, this device cannot conduct a selective search for the necessary elements of the sample word (descriptor), which limits the use of the device for network configuration management.

Технической задачей полезной модели является расширение функциональных возможностей за счет ввода для каждого элемента образца дополнительного бита маски и обработки полей образца на основе битовой маски, что позволит отыскивать не только полные и частичные вхождения, но и исключать из поиска не актуальные данные о состоянии сети.The technical task of the utility model is to expand the functionality by entering an additional mask bit for each sample element and processing the sample fields based on the bit mask, which will allow you to search not only for full and partial occurrences, but also to exclude irrelevant data about the state of the network from the search.

Техническая задача решается тем, что устройство обработки дескрипторов и параллельного поиска кандидатов межсетевого взаимодействия, содержащее первый и второй блоки хранения и сравнения ассоциативных признаков, блок памяти логических векторов и операционный блок, причем информационные входы первого и второго блоков хранения и сравнения ассоциативных признаков являются соответственно первым и вторым информационными входами устройства, а выходы блоков хранения и сравнения ассоциативных признаков соединены соответственно с первым и вторым адресными входами блока памяти логических векторов, входы задания режимов первого и второго блоков хранения и сравнения ассоциативных признаков и вход записи-считывания блока памяти логических векторов являются соответственно первым, вторым и третьим входами задания режимов устройства, а четвертый, пятый, шестой входы задания режимов устройства соответственно соединены с тремя входами кодов операций операционного блока, первый выход которого является первым выходом устройства, первый вход начальной установки устройства подключен к входу начальной установки операционного блока, второй вход начальной установки - к входам начальной установки первого и второго блоков хранения и сравнения ассоциативных признаков, первый и второй выходы блока памяти логических векторов подключены соответственно к первому и второму информационным входам операционного блока устройства, дополнительно введен блок матричного маскированного поиска вхождений и пересечений слов, имеющий четыре входа и три выхода, причем первый вход блок матричного маскированного поиска вхождений и пересечений слов соединен с первым входом начальной установки устройства, второй вход подключен ко второму выходу операционного блока, третий и четвертый входы блок матричного маскированного поиска вхождений и пересечений слов являются, соответственно, третьим и четвертым информационными входами устройства, первый, второй и третий выходы блок матричного маскированного поиска вхождений и пересечений слов являются соответственно вторым, третьим и четвертым выходами устройства. Блок матричного маскированного поиска вхождений и пересечений слов содержит один элемент задержки, n регистров кода символа образца разрядностью p+1 бит каждый символ, где первые p бит являются информационными, а p+1-й бит является битом маски, m регистров кода символа конфигурационного слова разрядностью p бит каждый символ, а также характеристическую матрицу, состоящую из поисковых ячеек, геометрическая форма которой представляет собой прямоугольник размером m*n ячеек, где n - длина образца, m - длина конфигурационного слова, k триггеров позиции вхождений, триггеры позиции пересечения образца с конфигурационным словом количеством 2*(n-1), в их числе n-1 триггеров позиции «левые пересечения», и n-1 триггеров позиции «правые пересечения», при этом каждый регистр кода символа образца имеет три входа (первый и второй однобитовые управляющие входы и третий p+1-разрядный вход) и один p+1-разрядный выход, каждый регистр кода символа конфигурационного слова имеет три входа (первый и второй однобитовые управляющие входы и третий p-разрядный вход) и один p-разрядный выход, каждая поисковая ячейка имеет три информационных входа (первый p+1-разрядный вход и второй p-разрядный вход, третий - одноразрядный вход) и один выход, каждый триггер позиции «левые пересечения» и каждый триггер позиции «правые пересечения» имеет соответственно по три входа (первый и второй управляющие входы и третий информационный вход) и один выход, каждая поисковая ячейка содержит двухвходовую схему сравнения на равенство p-разрядных кодов символов образца и конфигурационного слова, состоящую из p двухвходовых элементов суммы по модулю 2 с инверсией и одного p-входового элемента И, один двухвходовой элемент И, а также один двухвходовой элемент ИЛИ, имеющий первый прямой и второй инверсный входы, причем первые p+1 разрядные входы поисковых ячеек i-й строки (i=1…n) соединены с p+1 разрядами выходами 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=1, j=k+1…m) поисковой ячейки соединен с третьим входом (j-k)-ого триггера позиции «левые пересечения», выход (i, j)-й (i=2…n, j=1) поисковой ячейки соединен с третьим входом (i-1)-го триггера позиции «правые пересечения», третий вход (i, j)-й (i=n, j=1…m-1 и i=1…n, j=m) поисковой ячейки, т.е. нижняя строка и правый столбец характеристической матрицы, предназначен для подачи начального значения - логическая «1» - для организации поиска, вход начальной установки соединен с первым входом n-1 триггеров позиции «левые пересечения», с первым входом n-1 триггеров позиции «правые пересечения», с первым входом n регистров кода символа образца и m регистров кода символа конфигурационного слова, а также с первым входом k триггеров позиций вхождения, вход «Запись строк» соединен со вторым входом n регистров кода символа образца и m регистров кода символа конфигурационного слова, а также с входом элемента задержки, выход которого соединен со вторым входом n-1 триггеров позиции «левые пересечения», со вторым входом n-1 триггеров позиции «правые пересечения» и со вторым входом k триггеров позиции вхождения, выходы k триггеров позиции вхождения, n-1 триггеров позиции «левые пересечения» и n-1 триггеров позиции «правые пересечения» являются, соответственно, первым k-разрядным, вторым n-1 -разрядным и третьим n-1 - разрядным информационными выходами блока матричного маскированного поиска вхождений и пересечений слов, третий вход блока матричного маскированного поиска вхождений и пересечений слов состоит из n групп по p+1 разряду каждая группа, где первые p разрядов кодируют символ образца, а p+1-й разряд является битом маски, причем i-ая группа разрядов (i=1…n) подается на третий p+1-разрядный вход i-го регистра кода символа образца, четвертый вход блока матричного маскированного поиска вхождений и пересечений слов состоит из m групп разрядов по p разрядов каждая группа, кодирующих символы конфигурационного слова, причем j-ая группа разрядов (j=1…m) подается на третий p-разрядный вход j-го регистра кода символа конфигурационного слова, поисковые ячейки, содержащие двухвходовые схемы сравнения на равенство, каждая из которых состоит из p двухвходовых элементов сравнения на равенство (сумма по модулю 2 с инверсией) и одного p-входового элемента И, первый вход l-го (l = 1…p) элемента сравнения соединен с l-м разрядом p+1-разрядного выхода регистра кода символа образца, второй вход l-го (l = 1…p) элемента сравнения соединен с l-м разрядом p-разрядного выхода регистра кода символа конфигурационного слова, выход l-го (l = 1…p) элемента сравнения соединен c l-ым входом p-входового элемента И (l = 1…p), выход которого соединен с первым входом двухвходового элемента ИЛИ, на второй инверсный вход которого подан p+1-ый бит (бит маски) из p+1-разрядного кода символа образца, выход двухвходового элемента ИЛИ соединен с первым входом двухвходового элемента И, второй вход которого соединен с третьим входом поисковой ячейки, выход двухвходового элемента И является выходом поисковой ячейки.The technical problem is solved by the fact that a device for processing descriptors and parallel search for candidates for internetworking, containing the first and second blocks for storing and comparing associative features, a memory block of logical vectors and an operating unit, wherein the information inputs of the first and second blocks for storing and comparing associative features are, respectively, the first and the second information inputs of the device, and the outputs of the storage and comparison blocks of associative features are connected, respectively, to the first and second address inputs of the logical vector memory block, the inputs for setting the modes of the first and second storage and comparison blocks of associative features and the write-read input of the logical vector memory block are respectively the first, second and third inputs for setting device modes, and the fourth, fifth, sixth inputs for setting device modes are respectively connected to three inputs of operation codes of the operating unit, the first output of which is the first output of the device, the first input of the initial setting of the device is connected to the initial setting input of the operating unit , the second input of the initial setting - to the inputs of the initial setting 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 operating unit of the device, an additional block of matrix masked search for occurrences and intersections of words is introduced , having four inputs and three outputs, and the first input of the matrix masked search block 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 operating unit, the third and fourth inputs of the matrix masked search for occurrences and intersections of words are, respectively, the third and fourth information inputs of the device, the first, second and third outputs of the matrix masked search block for occurrences and intersections of words are, respectively, the second, third and fourth outputs of the device. The matrix masked search block for occurrences and intersections of words contains one delay element,n pattern character code registers bit depthp+1 bit each character, where firstp bits are informational, andpThe +1st bit is the mask bit,m configuration word character code registers, bit depthp bits of each character, as well as a characteristic matrix consisting of search cells, the geometric shape of which is a rectangle of sizem*ncells wheren - sample length,m - length of the configuration word,k triggers of the position of occurrences, triggers of the position of intersection of the pattern with the configuration word, number 2*(n-1), among themn-1 position triggers “left intersections”, andn-1 triggers of the “right intersection” position, while each register of the pattern symbol code has three inputs (the first and second one-bit control inputs and the thirdp+1-bit input) and onep+1-bit output, each configuration word character code register has three inputs (the first and second one-bit control inputs and the thirdp-bit input) and onep-bit output, each search cell has three information inputs (the firstp+1-bit input and secondp-bit input, the third is a single-bit input) and one output, each trigger of the “left intersections” position and each trigger of the “right intersections” position has, respectively, three inputs (the first and second control inputs and the third information input) and one output, each search the cell contains a two-input equality comparison circuitp- bit codes of sample symbols and configuration words, consisting ofp two-input modulo-2 sum elements with inversion and one p-input AND element, one two-input AND element, as well as one two-input OR element having the first direct and second inverse inputs, the firstp+1 bit search cell inputsith line (i=1…n) connected top+1 bit outputsi-th sample character code register, secondp-bit input of search cellsjth column (j=1…m) connected top-bit outputjth register of the configuration word symbol code, output (i, j)th (i=2…n,j=2…m) of the search cell is connected to the third input (i-1, j-1)th search cell, output (i, j)th (i=1,j=1…k) search cell connected to the third inputjth trigger position entry, exit (i, j)th (i=1,j=k+1…m) of the search cell is connected to the third input (jk)-th trigger position “left intersections”, exit (i, j)th (i=2…n,j=1) the search cell is connected to the third input (i-1)-th position trigger “right intersections”, third input (i, j)th (i=n,j=1…m-1 Andi=1…n, j=m) search cell, i.e. the bottom line and right column of the characteristic matrix are intended to supply the initial value - logical “1” - to organize the search, the initial setting input is connected to the first inputn-1 triggers of the “left intersection” position, with the first inputn-1 position triggers “right intersections”, with the first inputn pattern character code registers andm configuration word symbol code registers, as well as with the first inputkoccurrence position triggers, the “Write Rows” input is connected to the second inputn pattern character code registers andm registers of the configuration word symbol code, as well as with the input of the delay element, the output of which is connected to the second inputn-1 triggers of the “left intersection” position, with a second inputn-1 triggers of the position “right intersections” and with the second inputktriggers position entries, exitsk entry position triggers,n-1 position triggers “left intersections” andn-1 triggers of the position "right intersections" are, accordingly, the firstk-bit, secondn-1 -bit and thirdn-1 - bit information outputs of the block of matrix masked search for occurrences and intersections of words, the third input of the block of matrix masked search of occurrences and intersections of words consists ofn groups byp+1st category each group, where the firstp digits encode the pattern symbol, andpThe +1st bit is a mask bit, andith group of digits (i=1…n) served on the thirdp+1-bit inputith register of the sample symbol code, the fourth input of the matrix masked search block for occurrences and intersections of words consists ofm groups of categories according top digits each group encoding the symbols of the configuration word, andjth group of digits (j=1…m) served on the thirdp-bit inputjth register of the configuration word symbol code, search cells containing two-input equality comparison circuits, each of which consists ofp two-input equality comparison elements (sum modulo 2 with inversion) and onep-input element AND, first inputl-th (l =1…p)comparison element connected tol-m rankp+1-bit sample character code register output, second inputl-th (l =1…p) comparison element connected tol-m rankp-bit output of the configuration word symbol code register, outputl-th (l =1…p) comparison element is connected tol-th entrancep-input element AND (l =1…p),the output of which is connected to the first input of a two-input OR element, the second inverse input of which is suppliedp+1st bit (mask bit) ofp+1-bit sample symbol code, the output of the two-input OR element is connected to the first input of the two-input AND element, the second input of which is connected to the third input of the search cell, the output of the two-input AND element is the output of the search cell.

Сущность полезной модели поясняется чертежами, где The essence of the utility model is illustrated by drawings, where

на фиг. 1 представлена структурная схема устройство обработки дескрипторов и параллельного поиска кандидатов межсетевого взаимодействия; in fig. Figure 1 shows a block diagram of a device for processing descriptors and parallel search for candidates for internetworking;

на фиг. 2 - функциональная схема блока матричного маскированного поиска вхождений и пересечений слов; in fig. 2 - functional diagram of a block of matrix masked search for occurrences and intersections of words;

на фиг. 3 - функциональная схема поисковой ячейки характеристической матрицы; in fig. 3 - functional diagram of the search cell of the characteristic matrix;

на фиг. 4 - пример параллельного маскированного поиска вхождений и пересечений слов.in fig. 4 is an example of parallel masked search for occurrences and intersections of words.

Устройство обработки дескрипторов и параллельного поиска кандидатов межсетевого взаимодействия слов (фиг. 1) содержит блоки 11 и 12 хранения и сравнения ассоциативных признаков, блок 2 памяти логических векторов, операционный блок 3, блок 4 матричного маскированного поиска вхождений и пересечений слов, информационные входы 41, 42, 43 и 44, информационные выходы 51-54, входы 61-66 задания режима работы, входы 71 и 72 начальной установки.The device for processing descriptors and parallel search for candidates for internetworking of words (Fig. 1) contains blocks 1 1 and 1 2 for storing and comparing associative features, block 2 of memory of logical vectors, operating block 3, block 4 of matrix masked search for occurrences and intersections of words, 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 initial setting.

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

Блок 4 (фиг.2) матричного маскированного поиска вхождений и пересечений слов содержит два управляющих входа: «Начальная установка» 71 (первый вход) и вход «Запись строк» (второй вход), третий и четвертый информационные входы для подачи символов образца с маской и конфигурационного слова в параллельном коде через информационные входы 43 и 44 устройства, причем каждый символ образца сопровождается 1 битом маски, а также три информационных выхода, являющиеся вторым 52, третьим 53 и четвертым 54 выходом устройства. При этом второй управляющий вход блока 4 соединен со вторым выходом операционного блока 3.Block 4 (Fig. 2) of the matrix masked search for occurrences and intersections of words contains two control inputs: “Initial setting” 7 1 (first input) and the “Write strings” input (second input), the third and fourth information inputs for supplying sample symbols with mask and configuration word in parallel code through the information inputs 4 3 and 4 4 of the device, each symbol of the sample is accompanied by 1 bit of the mask, 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 block 4 is connected to the second output of the operating block 3.

Блок 4 матричного маскированного поиска вхождений и пересечений слов содержит элемент 31 задержки, состоящий из n пар инверторов, n регистров 321…32n кодов символов образца, m регистров 331…33m кодов символов конфигурационного слова, характеристическую матрицу поисковых ячеек 3411…34nm, k триггеров 371…37 k позиций вхождения, n-1 триггеров 411…41 n-1 позиции «левые пересечения», n-1 триггеров 401…40 n-1 позиции «правые пересечения», регистров 32i (i=1…n) и регистров 33j (j=1…m),которые имеют первый и второй управляющие входы, регистр 32i (i=1…n) имеет третий p+1-разрядный вход и один выход соответственно, а регистр 33j (j=1…m) имеет третий p-разрядный вход и один выход соответственно. Первые и вторые входы n регистров 321…32n кодов символов образца и первые и вторые входы m регистров 33 кодов символов конфигурационного слова соединены соответственно с первым и вторым управляющими входами блока 4 матричного маскированного поиска вхождений и пересечений слов, третий вход которого разрядностью (p+1)⋅n бит предназначен для параллельной записи образца в регистры 321…32 n вместе с n битовой маской и состоит из n групп разрядов по p+1 разряду каждая группа, кодирующих символы образца и одного бита маски, причем
i-ая группа разрядов (i=1…n) подается на третий p+1-разрядный вход регистра 32 i (i=1…n), четвертый вход блока 4 матричного маскированного поиска вхождений и пересечений слов разрядностью p⋅m бит предназначен для параллельной записи конфигурационного слова в регистры 331…33 m и состоит из m групп разрядов по p разрядов каждая группа, кодирующих символы конфигурационного слова, причем j-ая группа разрядов (j=1…m) подается на третий p-разрядный вход регистра 33 j (j=1…m). Второй управляющий вход блока 4 матричного маскированного поиска вхождений и пересечений слов также соединен со входом элемента 31 задержки.
Block 4 of the matrix masked search for occurrences and intersections of words contains a delay element 31, consisting ofn pairs of inverters,n registers 321…32n sample character codes,m registers 331…33m configuration word character codes, characteristic matrix of search cells 34eleven…34nm,k triggers 371…37 k entry positions,n-1 triggers 411…41 n-1 “left intersection” positions,n-1 triggers 401…40 n-1 positions “right intersections”, registers 32i (i=1…n) and registers 33j (j=1…m),which have first and second control inputs, register 32i (i=1…n) has a thirdp+1-bit input and one output respectively, and the register is 33j (j=1…m) has a thirdp-bit input and one output respectively. First and second entrancesn registers 321…32n pattern character codes and first and second inputsm registers 33 codes of the configuration word symbols are connected, respectively, to the first and second control inputs of block 4 of the matrix masked search for occurrences and intersections of words, the third input of which has a bit width (p+1)⋅n bit is intended for parallel writing of a sample into registers 321…32 n together withn bitmask and consists ofn groups of categories according top+1 bit each group encoding sample symbols and one mask bit, and
i-th group of digits(i=1…n) served on the thirdp+1-bit register 32 input i (i=1…n), the fourth input of block 4 of the matrix masked search for occurrences and intersections of words with bit depthp⋅m the bit is intended for parallel writing of the configuration word to registers 331…33 m and consists ofm groups of categories according top digits each group encoding the symbols of the configuration word, andj-th group of digits(j=1…m) served on the thirdp-bit input of register 33 j (j=1…m). The second control input of block 4 of the matrix masked search for occurrences and intersections of words is also connected to the input of delay element 31.

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

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

f(f=nm) диагональ, по которой происходит поиск вхождений, проходит через n поисковых ячеек 34ij, где i=n...1, j=m-f+n...m-f+1; The f -th (f=n ... m) diagonal along which the search for occurrences 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-1) диагональ, по которой происходит поиск «правых пересечений», проходит через n+m-g поисковых ячеек 34ij, где i=n...g-m+1, j=g-n+1...m. The g -th (g=m+ 1 ...m+n- 1 ) diagonal along which the search for “right intersections” occurs passes through n+mg search cells 34 ij , where i=n...g-m+ 1 , j=g-n+ 1 ...m .

Первые p+1-разрядные входы m поисковых ячеек i-ой строки характеристической матрицы (i = 1…n) соединены с p+1-разрядным выходом регистра 32 i . Выход p-разрядного регистра 33 j (j = 1...m) соединен со вторыми p-разрядными входами всех поисковых ячеек, входящих в j-ый столбец матрицы. Выход каждой поисковой ячейки 34ij, кроме i = 1, j = 1..n (верхняя строка характеристической матрицы), кроме i=2..m, j = 1 (левый столбец характеристической матрицы), соединен с третьим входом поисковой ячейки 34 i -1 j -1. Выход поисковой ячейки 34 ij (i=2..m, j=1), расположенной в левом столбце характеристической матрицы, соединен с информационным входом 3 триггера 41 i -1 позиции «левые пересечения», выход поисковой ячейки 34 ij (i=1, j=1…k), расположенной в верхней строке характеристической матрицы, соединен с информационным входом 3 триггера 37 j позиции вхождения, выход поисковой ячейки 34 ij (i=1, j=k+1...m), соединен с информационным входом 3 триггера 40 j - k позиции «правые пересечения», третий вход каждой поисковой ячейки, расположенной в нижней n-ой строке матрицы и в правом m-ом столбце матрицы, предназначен для подачи значения логической «1», задавая тем самым начальное значение для поиска по соответствующей диагонали от нижней строки характеристической матрицы к ее верхней строке.Firstp+1-bit inputsm search cellsi-th row of the characteristic matrix(i =1…n) connected top+1-bit register 32 output i . Exitp-bit register 33 j (j =1...m) connected to the secondp-bit inputs of all search cells included injth column of the matrix. Output of each search cell 34ij, excepti =1, j =1..n (top row of the characteristic matrix), excepti=2..m, j =1 (left column of the characteristic matrix), connected to the third input of search cell 34 i -1 j -1. Search cell 34 output ij (i=2..m, j=1), located in the left column of the characteristic matrix, is connected to information input 3 of trigger 41 i -1 positions “left intersections”, output of search cell 34 ij (i=1, j=1…k), located in the top row of the characteristic matrix, is connected to information input 3 of trigger 37 j entry positions, search cell output 34 ij (i=1, j=k+1...m), connected to information input 3 of trigger 40 j - k positions "right intersections", the third input of each search cell located at the bottomn-th row of the matrix and in the rightmThe th column of the matrix is intended to supply a logical “1” value, thereby setting the initial value for searching along the corresponding diagonal from the bottom row of the characteristic matrix to its top row.

Поисковая ячейка 34 ij (фиг. 3) содержит двухвходовую схему сравнения 35 ij на равенство p-разрядных кодов символов образца и конфигурационного слова, состоящую из p двухвходовых элементов 38 l (l=1 … p) сравнения на равенство (сумма по модулю 2 с инверсией) и p-входового элемнта И 39, двухвходовой элемент ИЛИ 42, двухвходовой элемент И36, первый вход l-го (l = 1…p) элемента сравнения 38 соединен с l-м разрядом p+1-разрядного выхода регистра 32 i (i=1…n), второй вход l-го (l = 1…p) элемента сравнения 38 соединен с l-м разрядом p-разрядного выхода регистра 33 i (i=1…m) , выход l-го (l = 1…p) элемента сравнения 38 соединен c l-ым входом элемента И 39 (l = 1…p), выход которого соединен с первым входом двухвходового элемента ИЛИ 42, на второй инверсный вход которого подан p+1-ый бит (бит маски) из p+1-разрядного выхода регистра 32 i (i=1…n), выход двухвходового элемента ИЛИ 42 соединен с первым входом двухвходового элемента И 36, второй вход которого соединен с третьим входом поисковой ячейки 34 ij , выход двухвходового элемента И 36 является выходом поисковой ячейки 34 ij .Search cell 34 ij (Fig. 3) contains a two-input comparison circuit 35 ij for equalityp- bit codes of sample symbols and configuration words, consisting ofp two-input elements 38 l (l=1...p) comparison for equality (sum modulo 2 with inversion) and p-input element AND 39, two-input element OR 42, two-input element I36, first inputl-th (l =1…p)comparison element 38 connected tol-m rankp+1-bit register 32 output i (i=1…n), second entrancel-th (l =1…p) comparison element 38 connected tol-m rankp-bit output of register 33 i (i=1…m) , exitl-th (l =1…p) comparison element 38 connected tol-th input of element AND 39 (l =1…p),the output of which is connected to the first input of the two-input element OR 42, the second inverse input of which is suppliedp+1st bit (mask bit) ofp+1-bit register 32 output i (i=1…n), the output of the two-input element OR 42 is connected to the first input of the two-input element AND 36, the second input of which is connected to the third input of the search cell 34 ij , the output of two-input AND element 36 is the output of search cell 34 ij .

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

Данное устройство, как и устройство-прототип, работает в режимах «Запись» и «Операция». Режим «Запись» строго соответствует алгоритму, описанному в устройстве-прототипе.This device, like the prototype device, operates 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 is a masked “PVP” (masked search for the occurrence and intersection of words). To implement this additional functionality, the following additions are made to the “Operation” mode algorithm.

Пусть устройство выполняет режим «Операция» с кодом операции маскированного «ПВП». На вход 71 «Начальная установка» блока 4 матричного маскированного поиска вхождений и пересечений слов подается импульсный сигнал начальной установки, который сбрасывает в нулевое состояние k триггеров 37 позиций вхождения, n-1 триггеров 41 позиций «левые пересечения», n-1 триггеров 40 позиций «правые пересечения» по их входу 1, n регистров 32 по их входу 1 и m регистров 33 по их входу 1. После окончания действия сигнала начальной установки на второй вход «Запись строк» блока 4 матричного маскированного поиска вхождений и пересечений слов подается импульсный сигнал от операционного блока. Данный импульсный сигнал по входу «Запись строк» блока 4 маскированного матричного поиска вхождений и пересечений слов подается соответственно на вторые входы разрешения записи n регистров 32 кодов символов образца с n-ой маской и на вторые входы разрешения записи m регистров 33 кодов символов конфигурационного слова, обеспечивая тем самым запись n символов образца вместе с n-ой битовой маской и m символов конфигурационного слова в параллельном коде с входов 43 и 44 устройства соответственно. Также импульсный сигнал по входу «Запись строк» блока 4 матричного маскированного поиска вхождений и пересечений слов через элемент 31 задержки подается соответственно на вторые входы разрешения записи k триггеров 37 позиций вхождения, n-1 триггеров 41 позиций «левые пересечения», n-1 триггеров 40 позиций «правые пересечения». Элемент 31 задержки, выполненный в виде n пар инверторов, необходим для завершения процессов параллельного поиска вхождений и пересечений по диагоналям характеристической матрицы, состоящей из поисковых ячеек 3411-34 nm .Let the device perform "Operation" mode with the masked "PVP" operation code. At input 7 1 “Initial setting” of block 4 of the matrix masked search for occurrences and intersections of words, an initial setting pulse signal is supplied, which resets k triggers 37 entry positions, n- 1 triggers 41 “left intersection” positions, n-1 triggers 40 positions “right intersections” at their input 1, n registers 32 at their input 1 and m registers 33 at their input 1. After the end of the initial installation signal, a pulse is applied to the second input “Write lines” of block 4 of the matrix masked search for occurrences and intersections of words signal from the operating unit. This pulse signal at the “Write Rows” input of block 4 of the masked matrix search for occurrences and intersections of words is supplied, respectively, to the second write permission inputs of n registers of 32 sample character codes with the nth mask and to the second write permission inputs of m registers of 33 configuration word character codes, thereby ensuring that n sample symbols are written together with the nth bit mask and m configuration word symbols in parallel code from inputs 4 3 and 4 4 of the device, respectively. Also, the pulse signal at the input “Write lines” of block 4 of the matrix masked search for occurrences and intersections of words through delay element 31 is supplied, respectively, to the second inputs of recording permission k flip-flops 37 entry positions, n- 1 triggers 41 “left intersection” positions, n- 1 flip-flops 40 “right intersection” positions. Delay element 31, made in the form of n pairs of inverters, is necessary to complete the processes of parallel search for occurrences and intersections along the diagonals of the characteristic matrix, consisting of search cells 34 11 -34 nm .

Процесс поиска в характеристической матрице поисковых ячеек 3411-34 nm описывается следующим образом. The search process in the characteristic matrix of search cells 34 11 -34 nm is described as follows.

Поиск начинается с ячеек нижней строки и правого столбца характеристической матрицы 3411-34 nm . Начальные m-битовый и n-битовый характеристические векторы, равные соответственно , подаются соответственно на третьи входы поисковых ячеек n-ой (нижней) строки матрицы и на третьи входы поисковых ячеек m-ого (правого) столбца характеристической матрицы, которые соединены с входом логической 1, определяя тем самым направление параллельного поиска по всем диагоналям характеристической матрицы от поисковых ячеек нижней строки и правого столбца к поисковым ячейка верхней строки и левого столбца характеристической матрицы включительно. На первый и второй входы поисковой ячейки 34ij характеристической матрицы подаются (p+1)-разрядный код символа образца и p-разрядный код символа конфигурационного слова соответственно. На основе схемы сравнения 35 ij на равенство выполняется сравнение первых p бит кода символа образца и p бит кода символа конфигурационного слова. Схема сравнения 35 ij на равенство состоит из p двухвходовых элементов 38 сравнения на равенство (сумма по модулю 2 с инверсией) и одного p-входового элемента И 39. Результат сравнения двух кодов символов обрабатывается p+1-ым битом кода символа дескриптора (битом маски) с помощью двухвходового элемента ИЛИ 42. На первый вход элемента ИЛИ 42 подается бит результата сравнения двух кодов символов со схемы 35 ij , на второй (инверсный) вход элемента ИЛИ 42 поступает бит маски. Результат маскированного сравнения формируется на выходе двухвходового элемента ИЛИ 42, который подается на первый вход двухвходового элемента И35. Второй вход двухвходового элемента И35 является третьим входом поисковой ячейки 34 i j, который соединен со выходом поисковой 34 i -1 j -1, расположенной по диагонали характеристической матрицы, кроме i = 1, j = 1..n (верхняя строка характеристической матрицы), кроме i=2..m, j = 1 (левый столбец характеристической матрицы).The search begins with the cells of the bottom row and the right column of the characteristic matrix 34eleven-34 nm . Initial m-bit and n-bit characteristic vectors, equal respectively, are fed respectively to the third inputs of the search cells of the n-th (bottom) row of the matrix and to the third inputs of the search cells of the m-th (right) column of the characteristic matrix, which are connected to the input of logical 1, thereby determining the direction of parallel search along all diagonals of the characteristic matrix from the search cells of the bottom row and right column to the search cells of the top row and left column of the characteristic matrix, inclusive. To the first and second inputs of search cell 34ij characteristic matrix is supplied (p+1)-bit code of the sample symbol andp-bit code of the configuration word symbol, respectively. Based on comparison scheme 35 ij the first ones are compared for equalityp pattern character code bit andp bit of the configuration word symbol code. Comparison circuit 35 ij for equality consists ofp two-input elements 38 comparisons for equality (sum modulo 2 with inversion) and onep-input element AND 39. The result of comparing two character codes is processedp+1st bit of the descriptor character code (mask bit) using two-input OR element 42. The first input of OR element 42 receives a bit of the result of comparing two character codes from circuit 35 ij , the mask bit is received at the second (inverse) input of OR element 42. The result of the masked comparison is generated at the output of the two-input element OR 42, which is fed to the first input of the two-input element I35. The second input of the two-input element I35 is the third input of the search cell 34 i j, which is connected to the search output 34 i -1 j -1located along the diagonal of the characteristic matrix, excepti = 1,j = 1..n (top row of the characteristic matrix), excepti=2..m,j = 1 (left column of the characteristic matrix).

По завершении процессов маскированного поиска по всем диагоналям характеристической матрицы импульсный сигнал с выхода элемента 31 задержки записывает k-битовый результат поиска начала вхождений в триггеры 371-37 k позиций вхождения, (n-1)-битовый результат поиска «левые пересечения» в триггеры 411…41 n -1, (n-1)- битовый результат поиска «правые пересечения» в триггеры 401…40 n -1. Выходы триггеров 371…37 k позиций вхождения являются k-разрядным выходом блока 4 маскированного матричного поиска вхождений и пересечений слов и образуют первый выход устройства 52, n-1-разрядные выходы триггеров 411…41 n -1 позиций «левые пересечения» и n-1-разрядные выходы триггеров 401…40 n -1 позиций «правые пересечения» образуют второй и третий выходы устройства 53 и 54 соответственно. Наличие логических 1 в разрядах информационного выхода 52 указывает позиции вхождений дескриптора в конфигурационное слово. Наличие логических 1 в разрядах информационного выхода 53 указывает позиции «правые пересечения» образца с конфигурационным словом. Наличие логических 1 в разрядах информационного выхода 54 указывает позиции «правые пересечения» образца с конфигурационным словом.Upon completion of the masked search processes along all diagonals of the characteristic matrix, the pulse signal from the output of delay element 31 is recordedk-bit result of searching for the beginning of entries in flip-flops 371-37 k occurrence positions, (n-1)-bit search result for “left intersections” in flip-flops 411…41 n -1, (n-1) - bit result of the search for “right intersections” in triggers 401…40 n -1. Trigger outputs 371…37 k occurrence positions arek-bit output of block 4 of masked matrix search for occurrences and intersections of words and form the first output of device 52,n-1-bit trigger outputs 411…41 n -1 positions “left intersections” andn-1-bit trigger outputs 401…40 n -1 positions “right intersections” form the second and third outputs of device 53 and 54 respectively. Presence of logical 1s in the bits of information output 52 indicates the positions of occurrences of the descriptor in the configuration word. Presence of logical 1s in the bits of information output 53indicates the positions of the “right intersections” of the pattern with the configuration word. Presence of logical 1s in the bits of information output 54 indicates the positions of the “right intersections” of the pattern with the configuration word.

Выполнение алгоритма в режиме «Операция» на остальных операциях строго соответствует устройству-прототипуExecution of the algorithm in the “Operation” mode for other operations strictly corresponds to the prototype device

Таким образом, достигается расширение функциональных возможностей устройства за счет введения битовой маски и организации параллельного маскированного поиска вхождений и частичных пересечений образца и конфигурационного слова.Thus, the expansion of the functionality of the device is achieved by introducing a bit mask and organizing a parallel masked search for occurrences and partial intersections of a sample and a configuration word.

Claims (1)

Устройство обработки дескрипторов и параллельного поиска кандидатов межсетевого взаимодействия, содержащее первый и второй блоки хранения и сравнения ассоциативных признаков, блок памяти логических векторов и операционный блок, причем информационные входы первого и второго блоков хранения и сравнения ассоциативных признаков являются соответственно первым и вторым информационными входами устройства, а выходы блоков хранения и сравнения ассоциативных признаков соединены соответственно с первым и вторым адресными входами блока памяти логических векторов, входы задания режимов первого и второго блоков хранения и сравнения ассоциативных признаков и вход записи-считывания блока памяти логических векторов являются соответственно первым, вторым и третьим входами задания режимов устройства, а четвертый, пятый, шестой входы задания режимов устройства соответственно соединены с тремя входами кодов операций операционного блока, первый выход которого является первым выходом устройства, первый вход начальной установки устройства подключен к входу начальной установки операционного блока, второй вход начальной установки - к входам начальной установки первого и второго блоков хранения и сравнения ассоциативных признаков, первый и второй выходы блока памяти логических векторов подключены соответственно к первому и второму информационным входам операционного блока устройства, отличающееся тем, что дополнительно введен блок матричного маскированного поиска вхождений и пересечений слов, имеющий четыре входа и три выхода, причем первый вход блок матричного маскированного поиска вхождений и пересечений слов соединен с первым входом начальной установки устройства, второй вход подключен ко второму выходу операционного блока, третий и четвертый входы блок матричного маскированного поиска вхождений и пересечений слов являются соответственно третьим и четвертым информационными входами устройства, первый, второй и третий выходы блок матричного маскированного поиска вхождений и пересечений слов являются соответственно вторым, третьим и четвертым выходами устройства; блок матричного маскированного поиска вхождений и пересечений слов содержит один элемент задержки, n регистров кода символа образца разрядностью p+1 бит каждый символ, где первые p бит являются информационными, а p+1-й бит является битом маски, m регистров кода символа конфигурационного слова разрядностью p бит каждый символ, а также характеристическую матрицу, состоящую из поисковых ячеек, геометрическая форма которой представляет собой прямоугольник размером m*n ячеек, где n - длина образца, m - длина конфигурационного слова, k триггеров позиции вхождений, триггеры позиции пересечения образца с конфигурационным словом количеством 2*(n-1), в их числе n-1 триггеров позиции «левые пересечения», и n-1 триггеров позиции «правые пересечения», при этом каждый регистр кода символа образца имеет три входа (первый и второй однобитовые управляющие входы и третий p+1-разрядный вход) и один p+1-разрядный выход, каждый регистр кода символа конфигурационного слова имеет три входа (первый и второй однобитовые управляющие входы и третий p-разрядный вход) и один p-разрядный выход, каждая поисковая ячейка имеет три информационных входа (первый p+1-разрядный вход и второй p-разрядный вход, третий - одноразрядный вход) и один выход, каждый триггер позиции «левые пересечения» и каждый триггер позиции «правые пересечения» имеет соответственно по три входа (первый и второй управляющие входы и третий информационный вход) и один выход, каждая поисковая ячейка содержит двухвходовую схему сравнения на равенство p-разрядных кодов символов образца и конфигурационного слова, один двухвходовой элемент И, а также один двухвходовой элемент ИЛИ, имеющий первый прямой и второй инверсный входы, двухвходовая схема сравнения на равенство состоит из p двухвходовых элементов сравнения на равенство (сумма по модулю 2 с инверсией) и одного p-входового элемента И, первые p+1 разрядные входы поисковых ячеек i-й строки (i=1…n) соединены с p+1 разрядами выхода 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=1, j=k+1…m) поисковой ячейки соединен с третьим входом (j-k)-го триггера позиции «левые пересечения», выход (i, j)(i=2…n, j=1) поисковой ячейки соединен с третьим входом (i-1)-го триггера позиции «правые пересечения», третий вход (i, j)-й (i=n, j=1…m-1 и i=1…n, j=m) поисковой ячейки, т.е. нижняя строка и правый столбец характеристической матрицы, предназначен для подачи начального значения - логическая 1 - для организации поиска, вход начальной установки соединен с первым входом n-1 триггеров позиции «левые пересечения», с первым входом n-1 триггеров позиции «правые пересечения», с первым входом n регистров кода символа образца и m регистров кода символа конфигурационного слова, а также с первым входом k триггеров позиций вхождения, вход Запись строк соединен со вторым входом n регистров кода символа образца и m регистров кода символа конфигурационного слова, а также с входом элемента задержки, выход которого соединен со вторым входом n-1 триггеров позиции «левые пересечения», со вторым входом n-1 триггеров позиции «правые пересечения» и со вторым входом k триггеров позиции вхождения, выходы k триггеров позиции вхождения, n-1 триггеров позиции «левые пересечения» и n-1 триггеров позиции «правые пересечения» являются соответственно первым k-разрядным, вторым n-1-разрядным и третьим -разрядным информационными выходами блока матричного маскированного поиска вхождений и пересечений слов, третий вход блока матричного маскированного поиска вхождений и пересечений слов состоит из n групп по p+1 разряду каждая группа, где первые p разрядов кодируют символ образца, а p+1-й разряд является битом маски, причем i-я группа разрядов (i=1…n) подается на третий p+1-разрядный вход i-го регистра кода символа образца, четвертый вход блока матричного маскированного поиска вхождений и пересечений слов состоит из m групп разрядов по p разрядов каждая группа, кодирующих символы конфигурационного слова, причем j-я группа разрядов (j=1…m) подается на третий p-разрядный вход j-го регистра кода символа конфигурационного слова, поисковые ячейки, содержащие p двухвходовых элементов сравнения (сумма по модулю 2 с инверсией), первый вход l-го (l=1…p) элемента сравнения соединен с l-м разрядом p+1-разрядного выхода регистра кода символа образца, второй вход l-го (l=1…p) элемента сравнения соединен с l-м разрядом p-разрядного выхода регистра кода символа конфигурационного слова, выход l-го (l=1…p) элемента сравнения соединен c l-м входом p-входового элемента И (l=1…p), выход которого соединен с первым входом двухвходового элемента ИЛИ, на второй инверсный вход которого подан p+1-й бит (бит маски) из p+1-разрядного кода символа образца, выход двухвходового элемента ИЛИ соединен с первым входом двухвходового элемента И, второй вход которого соединен с третьим входом поисковой ячейки, выход двухвходового элемента И является выходом поисковой ячейки.A device for processing descriptors and parallel search for candidates for internetworking, containing first and second blocks for storing and comparing associative features, a memory block of logical vectors and an operating unit, wherein the information inputs of the first and second blocks for storing and comparing associative features are, respectively, the first and second information inputs of the device, and the outputs of the storage and comparison blocks of associative features are connected, respectively, to the first and second address inputs of the logical vector memory block, the inputs for setting the modes of the first and second storage and comparison blocks of associative features and the write-read input of the logical vector memory block are the first, second and third inputs, respectively setting device modes, and the fourth, fifth, sixth inputs setting device modes are respectively connected to three inputs of operation codes of the operating unit, the first output of which is the first output of the device, the first input of the initial setting of the device is connected to the initial setting input of the operating unit, the second input of the initial setting is 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 operating unit of the device, characterized in that a block of matrix masked search for occurrences and intersections of words is additionally introduced, having four inputs and three outputs, the first input of the block of matrix masked 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 operating unit, the third and fourth inputs of the block of matrix masked search for occurrences and intersections of words are respectively the third and the fourth information inputs of the device, the first, second and third outputs of the matrix masked search block for occurrences and intersections of words are the second, third and fourth outputs of the device, respectively; the block of matrix masked search for occurrences and intersections of words contains one delay element, n registers of the sample symbol code with a width of p+1 bits each symbol, where the first p bits are informational, and the p+1th bit is a mask bit, m registers of the configuration word symbol code each symbol is p- bit wide, as well as a characteristic matrix consisting of search cells, the geometric shape of which is a rectangle of m*n cells in size, where n is the length of the sample, m is the length of the configuration word, k triggers of the position of occurrences, triggers of the position of the intersection of the sample with configuration word in the amount of 2*(n-1) , including n-1 flip-flops of the “left intersection” position, and n-1 flip-flops of the “right intersection” position, while each register of the sample symbol code has three inputs (the first and second one-bit control inputs and a third p+1 -bit input) and one p+1 -bit output, each configuration word character code register has three inputs (the first and second one-bit control inputs and the third p -bit input) and one p -bit output, each search cell has three information inputs (the first p+1 -bit input and the second p -bit input, the third is a single-bit input) and one output, each trigger of the “left intersections” position and each trigger of the “right intersections” position has three respectively input (the first and second control inputs and the third information input) and one output, each search cell contains a two-input comparison circuit for equality of p -bit codes of the sample symbols and the configuration word, one two-input AND element, as well as one two-input OR element having the first direct and the second inverse inputs, a two-input equality comparison circuit consists of p two-input equality comparison elements (modulo 2 sum with inversion) and one p -input AND element, the first p+ 1-bit inputs of search cells of the i -th row (i=1... n) are connected to p+1 bits of the 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 register of the configuration word symbol code, the output (i, j) -th ( i =2…n, j=2…m) search cell is connected to the third input (i-1, j-1) -th search cell, output (i, j) -th ( i=1, j=1…k) of the search cell is connected to the third input of the j -th trigger of the occurrence position, the output (i, j) of the (i=1, j=k+1…m) search cell is connected to the third input (jk) -th trigger of the “left intersections” position, the output of the (i, j) -th (i=2…n, j=1) search cell is connected to the third input (i-1) of the (i-1) -th trigger of the “right intersections” position , the third input (i, j) is the th (i=n, j=1…m-1 and i=1…n, j=m) search cell, i.e. the bottom row and right column of the characteristic matrix are intended to supply the initial value - logical 1 - to organize the search, the initial setting input is connected to the first input of n-1 triggers of the “left intersection” position, with the first input of n-1 triggers of the “right intersection” position , with the first input of n sample symbol code registers and m configuration word symbol code registers, as well as with the first input of k occurrence position triggers, the Write Strings input is connected to the second input of n sample symbol code registers and m configuration word symbol code registers, as well as with input of a delay element, the output of which is connected to the second input of n-1 flip-flops of the “left intersection” position, with the second input of n-1 triggers of the “right intersection” position and to the second input of k flip-flops of the entry position, outputs of k flip-flops of the entry position, n-1 triggers of the “left intersections” position and n-1 triggers of the “right intersections” position are respectively the first k -bit, second n-1 -bit and third -bit information outputs of the matrix masked search block for occurrences and intersections of words, the third input of the matrix masked search block occurrences and intersections of words consists of n groups of p+1 digits each group, where the first p digits encode the sample symbol, and the p+1th digit is a mask bit, and the i -th group of digits (i=1...n) is supplied to the third p+1 -bit input of the i -th register of the sample symbol code, the fourth input of the block of matrix masked search for occurrences and intersections of words consists of m groups of bits with p bits each group encoding the symbols of the configuration word, and the j -th group of bits (j= 1…m) is fed to the third p -bit input of the j -th register of the configuration word symbol code, search cells containing p two-input comparison elements (sum modulo 2 with inversion), the first input of the l-th (l=1…p) element comparison element is connected to the l-th digit of the p+1 -bit output of the sample symbol code register, the second input of the l-th (l=1...p) comparison element is connected to the l-th digit of the p -bit output of the configuration word symbol code register, output l -th (l=1...p) comparison element is connected to the l-th input of the p -input element AND ( l=1...p ), the output of which is connected to the first input of the two-input OR element, the second inverse input of which is supplied with p+1- th bit (mask bit) from the p+1 -bit code of the sample symbol, the output of the two-input OR element is connected to the first input of the two-input AND element, the second input of which is connected to the third input of the search cell, the output of the two-input AND element is the output of the search cell.
RU2023129461U 2023-11-14 DEVICE FOR PROCESSING DESCRIPTORS AND PARALLEL SEARCHING FOR INTERNETWORK INTERACTION CANDIDATES RU223472U1 (en)

Publications (1)

Publication Number Publication Date
RU223472U1 true RU223472U1 (en) 2024-02-19

Family

ID=

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2202823C2 (en) * 2001-04-06 2003-04-20 Курский государственный технический университет Device for searching arbitrary occurrences
RU72771U1 (en) * 2007-12-25 2008-04-27 Государственное образовательное учреждение высшего профессионального образования "Курский государственный технический университет" DEVICE FOR PARALLEL SEARCH AND DATA PROCESSING
RU2430408C1 (en) * 2010-03-29 2011-09-27 Государственное образовательное учреждение высшего профессионального образования Курский государственный технический университет Device for parallel search for word inclusions and coincidence
US20170097883A1 (en) * 2014-12-15 2017-04-06 International Business Machines Corporation Differential data access
RU2789997C1 (en) * 2022-04-21 2023-02-14 Федеральное государственное бюджетное образовательное учреждение высшего образования "Юго-Западный государственный университет" (ЮЗГУ) Method and matrix device for parallel-pipeline pattern match search

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2202823C2 (en) * 2001-04-06 2003-04-20 Курский государственный технический университет Device for searching arbitrary occurrences
RU72771U1 (en) * 2007-12-25 2008-04-27 Государственное образовательное учреждение высшего профессионального образования "Курский государственный технический университет" DEVICE FOR PARALLEL SEARCH AND DATA PROCESSING
RU2430408C1 (en) * 2010-03-29 2011-09-27 Государственное образовательное учреждение высшего профессионального образования Курский государственный технический университет Device for parallel search for word inclusions and coincidence
US20170097883A1 (en) * 2014-12-15 2017-04-06 International Business Machines Corporation Differential data access
RU2789997C1 (en) * 2022-04-21 2023-02-14 Федеральное государственное бюджетное образовательное учреждение высшего образования "Юго-Западный государственный университет" (ЮЗГУ) Method and matrix device for parallel-pipeline pattern match search

Similar Documents

Publication Publication Date Title
US4897814A (en) Pipelined &#34;best match&#34; content addressable memory
EP0119319B1 (en) Sort mechanism for stored digital data
US20180341642A1 (en) Natural language processing with knn
KR102409615B1 (en) Method for min-max computation in associative memory
US3290659A (en) Content addressable memory apparatus
JP6229024B2 (en) A memory having an information search function, a method of using the same, an apparatus, and an information processing method.
US3391390A (en) Information storage and processing system utilizing associative memory
US3389377A (en) Content addressable memories
RU223472U1 (en) DEVICE FOR PROCESSING DESCRIPTORS AND PARALLEL SEARCHING FOR INTERNETWORK INTERACTION CANDIDATES
RU2430408C1 (en) Device for parallel search for word inclusions and coincidence
RU84615U1 (en) ASSOCIATIVE MEMORIAL MATRIX
RU72771U1 (en) DEVICE FOR PARALLEL SEARCH AND DATA PROCESSING
CN110019815B (en) Natural language processing using KNN
US3553659A (en) Biemitter transistor search memory array
RU2787742C1 (en) Matrix device for fast occurrence search and data processing
RU2789997C1 (en) Method and matrix device for parallel-pipeline pattern match search
Yang et al. Conflict-free sorting algorithms under single-channel and multi-channel broadcast communication models
RU2776602C1 (en) Matrix apparatus for parallel search of a composite sample
RU2762781C1 (en) Matrix device for parallel search of occurrences and data processing
Appiah et al. Magnetic bubble sort algorithm
Digby A search memory for many-to-many comparisons
US3292158A (en) Data processing apparatus including means for processing word and character formatted data
RU2549525C2 (en) Method and apparatus for searching for composite sample in sequence
RU163442U1 (en) DEVICE FOR PARALLEL SEARCH FOR COMPOSITE SAMPLE
RU2028664C1 (en) Concurrent data processing device