RU2469425C2 - Associative memory matrix for masked inclusion search - Google Patents
Associative memory matrix for masked inclusion search Download PDFInfo
- Publication number
- RU2469425C2 RU2469425C2 RU2010119752/08A RU2010119752A RU2469425C2 RU 2469425 C2 RU2469425 C2 RU 2469425C2 RU 2010119752/08 A RU2010119752/08 A RU 2010119752/08A RU 2010119752 A RU2010119752 A RU 2010119752A RU 2469425 C2 RU2469425 C2 RU 2469425C2
- Authority
- RU
- Russia
- Prior art keywords
- input
- matrix
- output
- associative storage
- elements
- Prior art date
Links
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
Изобретение относится к области вычислительной техники, может быть использовано в высокопроизводительных системах обработки разнородной информации, в интеллектуальных системах обработки знаний, в информационно-поисковых и экспертных системах, в системах, ориентированных на решение задач обработки цифровых потоков (вхождение в синхронизм, поиск маркеров и т.д.) и позволяет расширить область применения операции поиска начал вхождений за счет использования ассоциативных принципов организации поиска по значимым позициям (разрядам) образца.The invention relates to the field of computer technology, can be used in high-performance heterogeneous information processing systems, in intelligent knowledge processing systems, in information retrieval and expert systems, in systems aimed at solving problems of processing digital streams (entering synchronism, searching for markers, etc. .d.) and allows you to expand the scope of the search operation for the beginning of occurrences through the use of associative principles of organizing the search for significant positions (categories) of the image ztsa.
Известен алгоритм приблизительного поиска (маскированного поиска) на основе алгоритма СДВИГ-И [1], состоящий в обработке n-характеристических векторов по m разрядов в каждом векторе и последовательном построении характеристической матрицы из m строк и n столбцов (где m - количество символов в образце, n - количество символов в тексте) и позволяющий последовательно отыскивать все вхождения образца в текст. Для каждой позиции текста характеристическая матрица отражает, является ли эта позиция текущим окончанием рассматриваемого образца. Недостатком данного алгоритма является последовательный характер обработки характеристических векторов (двоичных векторов), описывающих вхождение текущего префикса образца, и невозможность учета не значимых позиций при поиске.The known approximate search (masked search) algorithm based on the ADSIG-I algorithm [1], which consists in processing n-characteristic vectors of m bits in each vector and sequentially constructing the characteristic matrix of m rows and n columns (where m is the number of characters in the sample , n is the number of characters in the text) and allows one to sequentially search for all occurrences of the pattern in the text. For each position of the text, the characteristic matrix reflects whether this position is the current end of the sample in question. The disadvantage of this algorithm is the sequential nature of the processing of characteristic vectors (binary vectors) describing the occurrence of the current prefix of the sample, and the inability to account for insignificant positions in the search.
Известна ассоциативная запоминающая матрица, состоящая из n×m ассоциативных запоминающих элементов, содержащих n×m бит исходной битовой строки S, и коммутационных элементов, представляющих собой 1-n-полюсники [2]. Коммутационные элементы с помощью загружаемого в них настроечного кода, обеспечивают статическую настраиваемую реконфигурацию соединительных элементов перед поиском.Known associative storage matrix, consisting of n × m associative storage elements containing n × m bits of the original bit string S, and switching elements, which are 1-n-pole [2]. Switching elements with the help of the configuration code loaded into them provide static configurable reconfiguration of connecting elements before searching.
Недостатком этого устройства является ограниченность реализации операции поиска начал вхождений битового образца О в битовую строку S ввиду отсутствия возможности задания отношения следования между элементами смежных строк ассоциативной матрицы, что необходимо при проведении поиска.The disadvantage of this device is the limited implementation of the search operation for the occurrences of the bit pattern O in the bit string S due to the inability to set the sequence relationship between elements of adjacent rows of the associative matrix, which is necessary when conducting a search.
Наиболее близким устройством к заявленному является ассоциативная запоминающая матрица [3], состоящая из n×m ассоциативных запоминающих элементов, содержащих n×m бит исходной битовой строки S длиной v=n×m бит, коммутационных элементов, представляющих собой 1-n-полюсники, n×m элементов-селекторов, маскирующего элемента, элемента И. При проведении ассоциативного поиска обеспечивается гибкая реконфигурация ассоциативной запоминающей матрицы за счет динамического перестроения соединений ассоциативных запоминающих элементов матрицы по направлению к первому элементу и повышение быстродействия операции поиска всех начал вхождений битового образца в битовую строку за счет исключения операций повторной загрузки данных в ассоциативную матрицу.The closest device to the claimed one is an associative storage matrix [3], consisting of n × m associative storage elements containing n × m bits of the original bit string S of length v = n × m bits, switching elements, which are 1-n-poles, n × m element-selectors, masking element, element I. When conducting an associative search, a flexible reconfiguration of the associative storage matrix is provided due to the dynamic rearrangement of the connections of the associative storage elements of the matrix in the direction to the first element and increasing the speed of the search operation for all the beginnings of occurrences of the bit pattern in the bit string by eliminating the operations of reloading data into the associative matrix.
Недостатком этого устройства является ограниченность реализации операции точного поиска начал вхождений битового образца О в битовую строку S. При точном поиске представляется невозможным учесть не значимые позиции (разряды) образца, что не позволяет управлять допустимыми границами поиска при обработке неточных данных.The disadvantage of this device is the limited implementation of the operation of the exact search for the occurrences of the bit pattern O in the bit string S. In the exact search, it seems impossible to take into account the insignificant positions (digits) of the sample, which does not allow to control the valid search boundaries when processing inaccurate data.
Технической задачей изобретения является расширение функциональных возможностей операции поиска начал вхождений за счет исключения из поиска не значимых позиций (разрядов) образца путем маскирования разрядных срезов (столбцов) ассоциативной запоминающей матрицы маскированного поиска вхождений при осуществлении динамической реконфигурации соединений ассоциативных запоминающих элементов в структуре матрицы.An object of the invention is to expand the functionality of the search operation for the occurrences of entries by excluding from the search insignificant positions (bits) of the sample by masking the bit slices (columns) of the associative storage matrix of the masked search for occurrences when dynamically reconfiguring the connections of associative storage elements in the matrix structure.
Техническая задача решается тем, что в ассоциативную запоминающую матрицу маскированного поиска вхождений, содержащую n×m ассоциативных запоминающих элементов, первые входы которых в соответствующих строках матрицы объединены и являются соответствующими адресными входами матрицы, четвертые входы ассоциативных запоминающих элементов подключены к внешнему входу синхронизации "CLOCK", первые выходы ассоциативных запоминающих элементов в соответствующих столбцах матрицы объединены и являются соответствующими информационными выходами матрицы, коммутационные элементы, входы которых подключены ко вторым выходам соответствующих ассоциативных запоминающих элементов, а выходы коммутационных элементов соответственно объединены и являются соответствующими выходами результатов опроса, n×m элементов-селекторов, первые и вторые входы которых являются соответственно первыми и вторыми информационными входами матрицы в соответствующих столбцах, третьи входы элементов-селекторов подключены к первым выходам ассоциативных запоминающих элементов соответствующей строки матрицы, при этом третьи входы элементов-селекторов крайнего правого столбца матрицы подключены к первым выходам соответствующих ассоциативных запоминающих элементов крайнего левого столбца матрицы, расположенных строкой ниже, четвертые входы элементов-селекторов подключены к внешнему входу "РЕЖИМ", первые и вторые выходы n×m элементов-селекторов являются соответственно вторыми и третьими информационными входами ассоциативных запоминающих элементов соответствующей строки матрицы, маскирующий элемент, первый вход которого подключен к внешнему входу синхронизации "CLOCK", второй вход - к внешнему входу "РЕЖИМ", третий вход - к внешнему входу "СБРОС", а выход является индикатором произошедших реконфигураций матрицы из двухмерного вида в одномерный и обратно, элемент И, первый вход которого подключен к выходу результата опроса n-й строки матрицы, второй вход - к выходу маскирующего элемента, а выход является маскируемым выходом опроса n-й строки матрицы, ограничительный резистор, соединенный с третьим входом nm-го элемента-селектора и источником питания, дополнительно введены внешние информационные входы маскирования разрядных срезов (столбцов) ассоциативной запоминающей матрицы маскированного поиска вхождений, пятые входы ассоциативных запоминающих элементов, соединенные с соответствующими внешними информационными входами маскирования разрядных срезов (столбцов) ассоциативной запоминающей матрицы маскированного поиска вхождений, двухвходовой элемент И в состав каждого ассоциативного запоминающего элемента, первый вход двухвходового элемента И соединен с выходом элемента 2И-ИЛИ, второй вход двухвходового элемента И соединен с пятым входом ассоциативного запоминающего элемента, а выход двухвходового элемента И является вторым выходом ассоциативного запоминающего элемента.The technical problem is solved in that in the associative storage matrix of a masked search for entries containing n × m associative storage elements, the first inputs of which in the corresponding rows of the matrix are combined and are the corresponding address inputs of the matrix, the fourth inputs of the associative storage elements are connected to the external synchronization input "CLOCK" , the first outputs of associative storage elements in the corresponding columns of the matrix are combined and are the corresponding information outputs atria, switching elements, the inputs of which are connected to the second outputs of the corresponding associative storage elements, and the outputs of the switching elements are respectively combined and are the corresponding outputs of the survey results, n × m selector elements, the first and second inputs of which are the first and second information inputs of the matrix in corresponding columns, the third inputs of the selector elements are connected to the first outputs of the associative storage elements of the corresponding row of the matrix zy, while the third inputs of the selector elements of the far right column of the matrix are connected to the first outputs of the corresponding associative storage elements of the far left column of the matrix, located a row below, the fourth inputs of the selector elements are connected to the external input "MODE", the first and second outputs n × m selector elements are respectively the second and third information inputs of associative storage elements of the corresponding row of the matrix, a masking element, the first input of which is connected to the current synchronization input “CLOCK”, the second input - to the external input “MODE”, the third input - to the external input “RESET”, and the output is an indicator of the reconfiguration of the matrix from two-dimensional view to one-dimensional and vice versa, element I, the first input of which is connected to the output of the polling result of the nth matrix row, the second input is the output of the masking element, and the output is the masked polling output of the nth matrix row, the limiting resistor connected to the third input of the nmth selector element and the power supply are additionally introduced externally other information inputs for masking bit slices (columns) of the associative storage matrix of the masked search for entries, fifth inputs of associative memory elements connected to the corresponding external information inputs for masking the bit slices (columns) of the associative storage matrix of the masked search for entries, two-input element And in the composition of each associative storage element , the first input of the two-input element AND is connected to the output of the
Стандартные процессы поиска вхождений образца в обрабатываемой битовой строке адекватно описываются в терминах конструктивной логики над линейными конструктивными объектами, в которых каждый разряд является значимым при поиске. Вместе с тем учет отношений следования разрядов во всех позициях позволяет вести только точный поиск вхождений, что ограничивает применение данного подхода для обработки неточных исходных данных. С другой стороны, трактовка обрабатываемых объектов (образец, битовая строка) только как линейных (одномерных) конструкций приводит к непродуктивным затратам времени вследствие последовательного переборного сравнения всех разрядов обрабатываемой битовой строки, что в худшем случае приводит к v×m (v - длина обрабатываемой битовой строки, m - длина битового образца) сравнениям битов и цикличности операции поиска в целом, при этом в случае отрицательного результата сопоставления осуществляется возврат на первый бит образца О для сравнения с очередным битом строки S.The standard processes for searching for occurrences of a sample in the processed bit string are adequately described in terms of constructive logic over linear constructive objects in which each bit is significant in the search. At the same time, taking into account the relations of the sequence of discharges in all positions allows only an accurate search of occurrences, which limits the application of this approach for processing inaccurate source data. On the other hand, the interpretation of the processed objects (sample, bit string) only as linear (one-dimensional) constructions leads to unproductive time expenditures due to sequential exhaustive comparison of all bits of the processed bit string, which in the worst case leads to v × m (v is the length of the processed bit strings, m is the length of the bit sample) to bit comparisons and the cyclic nature of the search operation as a whole, in this case, in the case of a negative result of matching, the sample O is returned to the first bit for comparison with the next bit of string S.
Задача маскированного поиска начал вхождений формулируется следующим образом. Пусть в двоичном алфавите Σ={0,1} заданы образец О и битовая строка S как последовательности бит длиной в m и v символов соответственно, при этом m<v. Пусть в двоичном алфавите Σ={0,1} задана маска М как последовательность бит длиной в m символов. Требуется найти все позиции начал вхождений О в S, т.е. определить все позиции р, при которых справедливо выражение , где i=p..p+m-1, j=1..m, «=» - равенство i-го и j-го бит.The task of a masked search for the beginning of occurrences is formulated as follows. Suppose that in the binary alphabet Σ = {0,1} a pattern O and a bit string S are given as sequences of bits of length m and v characters, respectively, with m <v. Let the mask M be given in the binary alphabet Σ = {0,1} as a sequence of bits of length m characters. It is required to find all positions of the beginnings of occurrences of O in S, i.e. determine all the positions of p for which the expression , where i = p..p + m-1, j = 1..m, "=" is the equality of the i-th and j-th bits.
При реализации технического решения необходимо так организовать поиск всех начал вхождений образца, чтобы не только уменьшить количество переборных сравнений по всей длине обрабатываемой битовой строки и сократить тем самым временные затраты на поиск до m-1 циклов сравнения, но и обеспечить маскирование разрядов образца для проведения поиска с учетом только его значащих разрядов.When implementing a technical solution, it is necessary to organize a search for all the occurrences of the sample so as not only to reduce the number of search comparisons along the entire length of the processed bit string and thereby reduce the time spent on searching to m-1 comparison cycles, but also to mask the discharges of the sample for the search taking into account only its significant digits.
Ассоциативный маскированный поиск всех начал вхождений обеспечивается путем представления исходной битовой строки S длиной до v=n×m разрядов в виде двухмерной матрицы из n строк по m разрядов в каждой строке, где m соответствует разрядности битового образца О. При таком представлении битовой строки S битовый образец О длиной в m разрядов и битовая маска М длиной в m разрядов подаются на информационные входы ассоциативной запоминающей матрицы и параллельно сравниваются по n строкам матрицы, что обеспечивает параллельный маскированный поиск всех вхождений.An associative masked search for all occurrences of occurrences is provided by presenting the original bit string S of length up to v = n × m bits in the form of a two-dimensional matrix of n lines of m bits in each line, where m corresponds to the bit capacity of bit pattern A. With this representation of the bit string S, the bit sample O with a length of m bits and a bit mask M with a length of m bits are fed to the information inputs of the associative storage matrix and are compared in parallel along n rows of the matrix, which provides a parallel masked search in sekh occurrences.
Основу ассоциативного поиска всех вхождений составляет динамическая реконфигурация структуры битовой строки S: двумерная матрица ↔ одномерный сдвиговый регистр. Двумерный вид S необходим для организации параллельного поиска всех вхождений по разрядным срезам ассоциативной запоминающей матрицы. Одномерный вид S необходим для выполнения сдвига строки S и переходу к следующей итерации поиска вхождений.The basis of the associative search for all occurrences is the dynamic reconfiguration of the structure of the bit string S: two-dimensional matrix ↔ one-dimensional shift register. The two-dimensional form S is necessary for organizing a parallel search for all occurrences by bit slices of an associative storage matrix. The one-dimensional form S is needed to perform a line shift S and go to the next iteration of the search for occurrences.
Сущность изобретения поясняется схемами, где на фиг.1 представлена схема точного ассоциативного поиска всех начал вхождений по всем позициям текста и образца, т.е. при М=1111, на фиг.2 представлена схема маскированного ассоциативного поиска всех начал вхождений с учетом значения маски М=0101, задающей поиск только по значащим позициям образца, на фиг.3 - схема ассоциативной запоминающей матрицы, на фиг.4 - схема ассоциативного запоминающего элемента и коммутационного элемента, на фиг.5 - схема элемента-селектора, на фиг.6 - схема маскирующего элемента.The invention is illustrated by diagrams, where Fig. 1 shows a diagram of an exact associative search for all the occurrences of occurrences in all positions of a text and a sample, i.e. when M = 1111, Fig. 2 shows a diagram of a masked associative search of all occurrences of occurrences, taking into account the value of the mask M = 0101, which defines a search only by the significant positions of the sample, Fig. 3 is a diagram of an associative storage matrix, Fig. 4 is a diagram of an associative storage element and switching element, figure 5 is a diagram of a selector element, figure 6 is a diagram of a masking element.
Па фиг.1 демонстрируется точный поиск вхождений для S=1100101011001100, O=1001 и М=1111, где М - маска разрядных срезов (столбцов) ассоциативной запоминающей матрицы (значения логических «1» в позициях маски разрешают параллельное сравнение по разрядным срезам (столбцам) ассоциативной запоминающей матрицы. Ассоциативный поиск всех начал вхождений состоит из m-1-циклов, включающих параллельное сравнение с учетом маски и сдвиг битовой строки на 1 разряд в сторону начальной позиции. В текущем цикле процесса поиска после сравнения - положительного (фиг.1в) или отрицательного (фиг.1а, 1д, 1ж) - выполняется сдвиг битовой строки S на 1 разряд в сторону начальной позиции (фиг.1б, 1г, 1е) и осуществляется следующий цикл параллельного сравнения образца О по n строкам матрицы. В случае положительного сравнения фиксируется начальная позиция точных вхождений битового образца О в битовую строку S. При втором и последующих циклах параллельного сравнения результат опроса n-й строки матрицы не учитывается, т.к. последний фрагмент битовой строки S не совпадает (меньше) с разрядностью битового образца О. Для обнаружения всех начал вхождений битового образца О в исходную битовую строку S потребуется не более чем m-1 сдвигов.In Fig. 1, an exact search of occurrences is shown for S = 1100101011001100, O = 1001 and M = 1111, where M is the mask of bit slices (columns) of the associative storage matrix (logical “1” values in mask positions allow parallel comparison by bit slices (columns) ) associative storage matrix. The associative search for all the beginning of occurrences consists of m-1-cycles, including parallel comparison taking into account the mask and shifting the bit string by 1 bit towards the initial position. In the current cycle of the search process after comparison, it is positive (Fig. 1c) or negative (figa, 1d, 1g) - the bit string S is shifted by 1 bit towards the initial position (fig.1b, 1d, 1e) and the next cycle of parallel comparison of sample O is performed along n rows of the matrix. the initial position of the exact occurrences of the bit pattern O in the bit string S. In the second and subsequent cycles of parallel comparison, the result of polling the nth row of the matrix is not taken into account, because the last fragment of the bit string S does not coincide (less) with the bit depth of the bit pattern O. To detect all the beginnings of occurrences of the bit pattern O in the original bit string S, no more than m-1 shifts are required.
На фиг.2 демонстрируется неточный поиск вхождений для S=1100101011001100, O=1001 и М=0101 (значения логических «0» в позициях маски запрещают параллельное сравнение по соответствующим разрядным срезам (столбцам) ассоциативной запоминающей матрицы). В текущем цикле поиска после сравнения - положительного (фиг.2в, 2д) или отрицательного (фиг.2а, 2ж) - выполняется сдвиг битовой строки S на 1 разряд в сторону начальной позиции (фиг.2б, 2г, 2е) и осуществляется следующий цикл параллельного сравнения образца О по n строкам матрицы. В случае положительного сравнения фиксируется начальная позиция неточных вхождений битового образца О в битовую строку S с учетом маски. При втором и последующих циклах параллельного сравнения результат опроса n-й строки матрицы не учитывается, т.к. последний фрагмент битовой строки S не совпадает (меньше) с разрядностью битового образца О. Для обнаружения всех начал вхождений битового образца О в исходную битовую строку S с учетом маски М потребуется не более чем m-1 сдвигов.Figure 2 shows an inaccurate search for occurrences for S = 1100101011001100, O = 1001 and M = 0101 (the values of logical "0" in the mask positions prohibit parallel comparisons on the corresponding bit slices (columns) of the associative storage matrix). In the current search cycle, after comparing - positive (Fig. 2c, 2e) or negative (Fig. 2a, 2g) - the bit string S is shifted by 1 digit towards the initial position (Fig. 2b, 2d, 2e) and the next cycle is carried out parallel comparison of sample O on n rows of the matrix. In the case of a positive comparison, the initial position of inaccurate occurrences of the bit pattern O in the bit string S is fixed taking into account the mask. In the second and subsequent cycles of parallel comparison, the result of the survey of the nth row of the matrix is not taken into account, because the last fragment of the bit string S does not coincide (less) with the bit depth of the bit pattern O. To detect all the beginnings of occurrences of the bit pattern O in the original bit string S, taking into account the mask M, no more than m-1 shifts are required.
Таким образом, ассоциативный маскированный поиск начал вхождений основан на динамической реконфигурации соединений между ассоциативными запоминающими элементами матрицы из двухмерного вида в одномерный и обратно, а также на маскировании разрядных срезов (столбцов) ассоциативной запоминающей матрицы.Thus, the associative masked search for the beginning of entries is based on the dynamic reconfiguration of the connections between the associative storage elements of the matrix from the two-dimensional form to the one-dimensional view and vice versa, as well as on masking the bit sections (columns) of the associative storage matrix.
Матрица (фиг.3) состоит из n×m ассоциативных запоминающих элементов 1 (n - количество битовых строк, необходимых для представления входной битовой строки длиной v=n×m бит, m - количество разрядов битового образца) с входами с первого 2 по четвертый 5 и пятый вход 46 и с выходами с первого 6 по второй 7, коммутационных элементов 10, представляющих собой 1-n-полюсники, элементов-селекторов 12 с входами с первого 13 по четвертый 16 и с выходами с первого 17 по второй 18, маскирующего элемента 36 с входами с первого 37 по третий 39 и с выходом 40, элемента И 44, первый вход которого подключен к выходу результата опроса n-й строки матрицы, второй вход - к выходу 40 маскирующего элемента 36, а выход является маскируемым выходом опроса n-й строки матрицы 11n, ограничительного резистора 27, соединенного с третьим входом 15 nm-го элемента-селектора 12 и источником питания, и имеет адресные входы 81÷8n, первые 191÷19m и вторые 201÷20m информационные входы, третьи 451÷45m информационные входы маскирования разрядных срезов (столбцов), внешний вход "РЕЖИМ", определяющий двумерный или одномерный вид структуры матрицы, внешний вход синхронизации "CLOCK", внешний вход "СБРОС", информационные выходы 91÷9m, выходы 111÷11n результатов опроса.The matrix (Fig. 3) consists of n × m associative storage elements 1 (n is the number of bit strings required to represent the input bit string of length v = n × m bits, m is the number of bits of the bit pattern) with inputs from the first 2 to the fourth 5 and the
Ассоциативный запоминающий элемент 1 (фиг.4) состоит из RS-триггера 21 с инверсными входами установки в "1" и "0", элементов И с первого 22 по второй 47, элементов И-НЕ с первого 23 по третий 25, элемента 2И-ИЛИ 26. Первый вход элемента И 22 подключен к первому входу 2 ассоциативного запоминающего элемента 1, второй вход элемента И 22 подключен к четвертому входу 5 ассоциативного запоминающего элемента 1, а выход элемента И 22 подключен к первому входу элемента И-НЕ 25, ко второму входу элемента И-НЕ 23, ко второму входу элемента И-НЕ 24. Первый вход элемента И-НЕ 23 подключен ко второму входу 3 ассоциативного запоминающего элемента 1, а выход элемента И-НЕ 23 подключен к входу S RS-триггера 21. Первый вход элемента И-НЕ 24 подключен к третьему входу 4 ассоциативного запоминающего элемента 1, а выход элемента И-НЕ 24 подключен к входу R RS-триггера 21. Выход Q RS-триггера 21 подключен ко второму входу элемента И-НЕ 25, а также к первому входу элемента 2И-ИЛИ 26, выход RS-триггера 21 подключен к третьему входу элемента 2И-ИЛИ 26. Выход элемента И-НЕ 25 является первым выходом 6 ассоциативного запоминающего элемента 1. Второй вход элемента 2И-ИЛИ 26 подключен ко второму входу 3 ассоциативного запоминающего элемента 1, четвертый вход элемента 2И-ИЛИ 26 подключен к третьему входу 4 ассоциативного запоминающего элемента 1, выход элемента 2И-ИЛИ 26 подключен к первому входу элемента И 47. Второй вход элемента И 47 подключен к пятому входу 46 ассоциативного запоминающего элемента 1, а выход элемента И 47 является вторым выходом 7 ассоциативного запоминающего элемента 1.The associative storage element 1 (Fig. 4) consists of an RS-flip-
Коммутационный элемент 10 (фиг.4) строго соответствует устройству-прототипу в структурном и в функциональном отношении, состоит из регистра 28 и n-элементов И-НЕ 32 и имеет n-входов данных 29 регистра 28, входы сигналов записи 30 и установки в начальное состояние 31 регистра 28, n-выходов полученного результата опроса ассоциативного запоминающего элемента 1. Первый вход каждого из n-элементов И-НЕ 32 подключен ко второму выходу 7 ассоциативного запоминающего элемента 1, а второй вход каждого из n-элементов И-НЕ 32 подключен к соответствующему выходу данных регистра 28, а выход каждого из n-элементов И-НЕ 32 является соответствующим выходом коммутационного элемента 10.The switching element 10 (figure 4) strictly corresponds to the prototype device structurally and functionally, consists of a
На фиг.4 также представлены ограничительные элементы 27 в виде резисторов, подключенных к n-выходам коммутационного элемента 10, к первому выходу 6 ассоциативного запоминающего элемента 1 и к источникам питания.Figure 4 also presents the
Элемент-селектор 12 (фиг.5) строго соответствует устройству-прототипу в структурном и в функциональном отношении, состоит из двух мультиплексоров 33 и 34, имеющих два однобитовых входа данных и один однобитовый адресный вход каждый, двухвходового элемента И-НЕ 35. При этом адресные входы мультиплексоров 33 и 34 подключены к четвертым входам 16 соответствующих элементов-селекторов 12, т.е. к внешнему входу "РЕЖИМ". Первые входы данных мультиплексоров 33 подключены к первым входам 13 соответствующих элементов-селекторов 12, первые входы данных 14 мультиплексоров 34 подключены ко вторым входам соответствующих элементов-селекторов 12, вторые входы данных мультиплексоров 33 подключены к третьим входам 15 соответствующих элементов-селекторов 12 через инвертирующий элемент И-НЕ 35, вторые входы данных мультиплексоров 34 напрямую подключены к третьим входам 15 соответствующих элементов-селекторов 12, выходы мультиплексоров 33 и 34 являются соответственно первыми 17 и вторыми 18 выходами элементов-селекторов 12.The selector element 12 (Fig. 5) strictly corresponds to the prototype device in structural and functional terms, consists of two
Маскирующий элемент 36 (фиг.6) строго соответствует устройству-прототипу в структурном и в функциональном отношении, состоит из двухвходового элемента И 41, двоичного счетчика 42 с разрядностью m бит, элемента ИЛИ-НЕ 43 с m-входами. Первый вход элемента И 41 подключен к первому входу 37 маскирующего элемента 36, второй вход элемента И 41 подключен ко второму входу 38 маскирующего элемента 36. Первый вход двоичного счетчика 42 подключен к выходу элемента И 41, второй вход двоичного счетчика 42 подключен к третьему входу маскирующего элемента 36, а m-выходов счетчика подключены к m-входам элемента ИЛИ-НЕ 43. Выход элемента ИЛИ-НЕ 43 подключен к выходу 40 маскирующего элемента 36.The masking element 36 (Fig.6) strictly corresponds to the prototype device structurally and functionally, consists of a two-input element And 41, a
Сущность динамической реконфигурации, воплощенная на фиг.3, сводится к подключению первых 13 и вторых 14 входов или третьих входов 15 элементов-селекторов 12 к их выходам 17 и 18 соответственно в зависимости от значения внешнего входа РЕЖИМ. Если вход РЕЖИМ=0, то к выходам 17 и 18 подключаются входы 13 и 14 соответственно, т.е. обеспечивается ассоциативный поиск вхождений на двумерном представлении S. Если вход РЕЖИМ=1, то к выходам 17 и 18 подключаются вход 15, т.е. обеспечивается сдвиг на одномерном представлении S. Элементы-селекторы 12 (фиг.4) содержат два мультиплексора 33 и 34, которые обеспечивают ввод в ассоциативные запоминающие элементы 1 бит образца О (для ассоциативного поиска вхождений) или бит от соседнего справа ассоциативного запоминающего элемента (для сдвига).The essence of the dynamic reconfiguration, embodied in figure 3, is reduced to connecting the first 13 and second 14 inputs or
Ассоциативная запоминающая матрица, как и устройство-прототип, работает в одном из четырех состояний: запись, чтение, ассоциативный маскированный поиск, реконфигурация - при этом работа ассоциативной запоминающей матрицы в любом из ее состояний начинается с подачи сигнала синхронизации "CLOCK"=1. Состояние записи, чтения и реконфигурации строго соответствует алгоритму, описанному в устройстве-прототипе.The associative storage matrix, like the prototype device, operates in one of four states: writing, reading, associative masked search, reconfiguration - in this case, the operation of the associative storage matrix in any of its states starts with the synchronization signal "CLOCK" = 1. The state of recording, reading and reconfiguration strictly corresponds to the algorithm described in the prototype device.
Перед выполнением ассоциативного маскированного поиска выполняется настройка ассоциативной запоминающей матрицы, заключающаяся в предварительной записи в регистры 28 всех коммутационных элементов 10 настроечных кодов, обеспечивающих подключение вторых выходов 7 соответствующих ассоциативных запоминающих элементов 1 к соответствующим выходам 11 результатов опроса. В общем случае настроечный код может быть как униполярным, обеспечивающим подключение выхода 7 ассоциативного запоминающего элемента 1 к одному выбранному выходу 11 результатов опроса, так и k-полярным (k=1…n), где k - число выходов 11 результатов опроса матрицы, к которым подключается выход 7 ассоциативного запоминающего элемента 1. В рассматриваемой ассоциативной запоминающей матрице при маскированном поиске начал вхождений образца по строкам матрицы настроечный код коммутационных элементов 10 соответствующих строк матрицы имеет следующий вид: 291=100..0, 292=010..0, …, 29n=000..1, что позволяет получить инверсное значение выходов 7 соответствующих ассоциативных запоминающих элементов 1 на выходах 11 результатов опросов соответствующих строк матрицы.Before performing an associative masked search, an associative storage matrix is set up, which consists in pre-recording in the
Также перед выполнением ассоциативного маскированного поиска на третий вход 39 маскирующего элемента 36 подается сигнал "СБРОС"=1, инициируя сброс двоичного счетчика 42 и получение на выходе 40 маскирующего элемента 36 значения логической "1".Also, before performing an associative masked search, the signal “RESET” = 1 is applied to the
Для расширения функциональных возможностей в алгоритм работы устройства в состоянии ассоциативного маскированного поиска вносятся следующие дополнения.To expand the functionality, the following additions are made to the algorithm of the device in the state of associative masked search.
При осуществлении циклического ассоциативного маскированного поиска начал вхождений на первые 19 и вторые 20 информационные входы матрицы и, следовательно, на первые 13 и вторые 14 входы всех элементов-селекторов 12 соответствующей строки матрицы поступает одна из следующих комбинаций сигналов: 10 - код единицы, 01 - код нуля. При этом на четвертый вход 16 соответствующих элементов-селекторов 12 подается сигнал "РЕЖИМ"=0, что осуществляет подключение первых 13 и вторых 14 входов элементов-селекторов 12 к первым 17 и вторым 18 выходам элементов-селекторов 12 и соответственно ко вторым 3 и третьим 4 входам ассоциативных запоминающих элементов соответствующей строки матрицы. На внешние входы маскирования 45 ассоциативной запоминающей матрицы и, следовательно, на пятые входы 46 ассоциативных запоминающих элементов 1 соответствующих разрядных срезов (столбцов) матрицы подаются сигналы маскирования: логическая «1» - разрядный срез не замаскирован, т.е. поиск разрешен, логический «0» - разрядный срез замаскирован, т.е. поиск запрещен. Затем на соответствующие четвертые входы 5 ассоциативных запоминающих элементов 1 соответствующей строки матрицы подается сигнал синхронизации "CLOCK=1", инициируя сравнение с содержимым триггера 21 соответствующего ассоциативного запоминающего элемента 1 с учетом сигнала маскирования. Если происходит совпадение бит образца и битовой строки или соответствующий разрядный срез (столбец) матрицы замаскирован, то второй выход 7 ассоциативного запоминающего элемента 1 сохраняет уровень логического "0" и, следовательно, на выходе(ах) 11 результатов опроса матрицы, к которому(ым) подключен выход 7 этого ассоциативного запоминающего элемента 1, сохраняется уровень логической "1". Если происходит несовпадение и соответствующий разрядный срез матрицы не замаскирован, то на выходе 7 такого ассоциативного запоминающего элемента 1 появляется уровень логической "1", устанавливающий в "0" этот (эти) выход(ы) 11. При этом если была произведена хотя бы одна операция реконфигурации матрицы, на выходе 11n результатов опроса ассоциативных запоминающих элементов 1 n-й строки матрицы получается значение логического "0" в результате установки на выходе маскирующего элемента 36 значения логического "0".When performing a cyclic associative masked search for occurrences of entries on the first 19 and second 20 information inputs of the matrix and, therefore, on the first 13 and second 14 inputs of all
Таким образом, достигается расширение функциональных возможностей операции поиска начал вхождений за счет обеспечения маскирования разрядных срезов (столбцов) ассоциативной запоминающей матрицы при осуществлении динамической реконфигурации соединений ассоциативных запоминающих элементов в структуре матрицы и реализация маскированного поиска начал вхождений, необходимого при обработке неточных данных.Thus, the expansion of the functionality of the search operation for the beginning of occurrences is achieved by providing masking of the bit slices (columns) of the associative storage matrix during dynamic reconfiguration of the connections of associative storage elements in the matrix structure and the implementation of the masked search for the beginning of occurrences required in processing inaccurate data.
Источники информацииInformation sources
1. Максимов В. Алгоритмы поиска, или как искать неизвестно что [Текст] / В.Максимов // Журнал "Монитор". - М.: Изд.-во "Открытые системы", 1995. - №6. С.10-15.1. Maksimov V. Search algorithms, or how to search, it is not known what [Text] / V. Maksimov // Journal "Monitor". - M.: Publishing House "Open Systems", 1995. - No. 6. S.10-15.
2. Пат. №2025797 РФ, МПК G11C 15/00. Ассоциативная запоминающая матрица [Текст] / Борисов В.В.; заявитель и патентообладатель Борисов В.В.; заявл. 02.09.1992; опубл. 30.12.1994.2. Pat. No. 2025797 of the Russian Federation,
3. Пат. №84615 РФ, МПК G11C 15/00. Ассоциативная запоминающая матрица [Текст] / Титенко Е.А., Евсюков В.С., Семенихин Е.А., Атакищев А.О.; заявитель и патентообладатель. Курск, гос. тех. ун-т. - №2009104196/22; заявл. 09.02.2009; опубл. 10.07.2009, Бюл. №19. - 14 с.: ил.3. Pat. No. 84615 of the Russian Federation,
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2010119752/08A RU2469425C2 (en) | 2010-05-17 | 2010-05-17 | Associative memory matrix for masked inclusion search |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2010119752/08A RU2469425C2 (en) | 2010-05-17 | 2010-05-17 | Associative memory matrix for masked inclusion search |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2010119752A RU2010119752A (en) | 2011-11-27 |
RU2469425C2 true RU2469425C2 (en) | 2012-12-10 |
Family
ID=45317512
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2010119752/08A RU2469425C2 (en) | 2010-05-17 | 2010-05-17 | Associative memory matrix for masked inclusion search |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2469425C2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2582053C2 (en) * | 2014-07-01 | 2016-04-20 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Юго-Западный государственный университет" (ЮЗГУ) | Method and multifunctional associative matrix device for processing line data and solving tasks for recognising images |
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 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU1718274A1 (en) * | 1990-04-09 | 1992-03-07 | Московский энергетический институт | Associative memory |
RU1785039C (en) * | 1990-10-30 | 1992-12-30 | Московский энергетический институт | Associative memory device |
US20090141531A1 (en) * | 2007-11-30 | 2009-06-04 | Abedin Md Anwarul | Associative memory and searching system using the same |
RU84615U1 (en) * | 2009-02-09 | 2009-07-10 | Государственное образовательное учреждение высшего профессионального образования "Курский государственный технический университет" | ASSOCIATIVE MEMORIAL MATRIX |
-
2010
- 2010-05-17 RU RU2010119752/08A patent/RU2469425C2/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU1718274A1 (en) * | 1990-04-09 | 1992-03-07 | Московский энергетический институт | Associative memory |
RU1785039C (en) * | 1990-10-30 | 1992-12-30 | Московский энергетический институт | Associative memory device |
US20090141531A1 (en) * | 2007-11-30 | 2009-06-04 | Abedin Md Anwarul | Associative memory and searching system using the same |
RU84615U1 (en) * | 2009-02-09 | 2009-07-10 | Государственное образовательное учреждение высшего профессионального образования "Курский государственный технический университет" | ASSOCIATIVE MEMORIAL MATRIX |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2582053C2 (en) * | 2014-07-01 | 2016-04-20 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Юго-Западный государственный университет" (ЮЗГУ) | Method and multifunctional associative matrix device for processing line data and solving tasks for recognising images |
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 |
Also Published As
Publication number | Publication date |
---|---|
RU2010119752A (en) | 2011-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9396143B2 (en) | Hierarchical in-memory sort engine | |
US20110035566A1 (en) | Hashing and serial decoding techniques | |
US3320594A (en) | Associative computer | |
Yuan et al. | Design space exploration for hardware-efficient stochastic computing: A case study on discrete cosine transformation | |
Abdelhadi et al. | Modular SRAM-based binary content-addressable memories | |
RU84615U1 (en) | ASSOCIATIVE MEMORIAL MATRIX | |
RU2469425C2 (en) | Associative memory matrix for masked inclusion search | |
US3391390A (en) | Information storage and processing system utilizing associative memory | |
US3389377A (en) | Content addressable memories | |
RU2760628C1 (en) | Method and associative matrix apparatus for parallel search of a sample based on the prefixes thereof | |
Yang et al. | Conflict-free sorting algorithms under single-channel and multi-channel broadcast communication models | |
RU2509383C2 (en) | Method for parallel search and row replacement and homogeneous memory matrix for realising said method | |
Brođanac et al. | Parallelized rabin-karp method for exact string matching | |
RU72771U1 (en) | DEVICE FOR PARALLEL SEARCH AND DATA PROCESSING | |
RU2569567C2 (en) | Method and associative matrix device for processing line data | |
JP2015162257A (en) | Reconfigurable content addressable memory | |
RU163442U1 (en) | DEVICE FOR PARALLEL SEARCH FOR COMPOSITE SAMPLE | |
RU2549525C2 (en) | Method and apparatus for searching for composite sample in sequence | |
RU2776602C1 (en) | Matrix apparatus for parallel search of a composite sample | |
RU223472U1 (en) | DEVICE FOR PROCESSING DESCRIPTORS AND PARALLEL SEARCHING FOR INTERNETWORK INTERACTION CANDIDATES | |
RU2792182C1 (en) | Number ranking device | |
RU2789997C1 (en) | Method and matrix device for parallel-pipeline pattern match search | |
Vinnakota et al. | A new circuit for maximum value determination | |
Ranganathan et al. | VLSI architectures for pattern matching | |
RU2717628C1 (en) | Pulse selector |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20121110 |