CA2755373C

Associative database scanning and information retrieval

Abstract

A method and device are disclosed for an associative and approximate, analog or digital scanning of databases that allows for the asynchronous accessing of data from a mass storage medium. The invention includes circuitry and decision logic at the mass storage medium level for determining a key identifying the data of interest, continuously comparing the key to a signal generated from a reading of the data from the mass storage medium with an approximate or exact matching circuit to determine a pattern match, determining a correlation value between the key and the data as it is read in a continuous fashion, and determining a match based upon a preselected threshold value for the correlation value. The key and data may be either analog or digital.

CA2755373C, drawing sheet 1
Sheet 1 of 7

Term

Term ended

Expired 6 April 2021, 5.5 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

39 claims: 6 independent, 33 dependent

  1. 1
    CA 02755373 2013-08-15 The embodiments of the present invention for which an exclusive property or privilege is claimed are defined as follows :1. A device for searching comprising: a programmable logic device in communication with a memory to search for data of interest to a software application external to the programmable logic device, the programmable logic device being configured to (1) store a data key, the data key being representative of the data of interest, (2) receive streaming data from the memory, and (3) perform a matching operation by (i) processing the streaming data against the data key to generate a signal indicative of a similarity between the streaming data and the data key, and (ii) comparing the generated signal with a threshold value to thereby determine whether the streaming data is deemed a match to the data key, wherein the threshold value is adjustable to control whether the approximate matching unit performs an approximate match operation or an exact match operation, and further to control, for an approximate match operation, a degree of approximate matches returned by the approximate match operation.
  2. 12
    The device of claim 1 further comprising the memory
  3. 13
    The device of claim 12 wherein the memory comprises disk storage.
  4. 14
    The device of claim 12 wherein the programmable logic device is directly coupled to the memory.
  5. 16
    A device for matching comprising:a processor;and an approximate matching unit in communication with the processor, wherein the approximate matching unit is configured under control of the processor to (1) store a data key, (2) receive streaming data from a storage medium, and (3) perform a matching operation by (i) processing the streaming data against the data key to generate a signal indicative of a similarity between the streaming data and the data key, and (ii) comparing the CA 02755373 2013-08-15 generated signal with an adjustable threshold value to thereby determine whether the streaming data is deemed a match to the data key;and wherein the processor is configured to adjust the predetermined threshold value to control whether the approximate matching unit performs an approximate match operation or an exact match operation, and further to control, for an approximate match operation, a degree of approximate matches returned by the approximate match operation.
  6. 31
    A computer comprising:a processor, a memory, and an approximate matching unit configured to perform a matching operation between a data key representative of data sought to be retrieved from the memory with a data signal representative of a continuous stream of data read from the memory, wherein the approximate matching unit is switchable between a plurality of different types of matching operations under control of the processor, wherein at least one of the matching operation types comprises an approximate matching operation, wherein the approximate matching unit is configured to perform the approximate matching operation by (i) processing the data stream against the data key to generate a signal indicative of a similarity between the data stream and the data key, and (ii) comparing the generated signal with an adjustable threshold value to thereby determine whether the CA 02755373 2013-08-15 streaming data is deemed an approximate match to the data key, and wherein the processor is configured to adjust the predetermined threshold value to control a degree of approximate matches returned by the approximate match operation.