← Back to Patent Explorer
US5570306A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for recognizing a bit pattern in a string of bits, altering the string of bits, and removing the alteration from the string of bits

Assignee: Intel Corp
•
Filing: 1994-11-01
•
Granted: 1996-10-29
•
Expires: 2014-11-01
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for recognizing a search pattern in an input string of bits is provided. According to one aspect of the invention, a portion of the string of bits is selected as a currently selected portion. Based upon the search pattern and the bits of the string of bits immediately preceding the currently selected portion, a first set of occurrence patterns is determined. The first set of occurrence patterns is determined such that if any of the occurrence patterns in the first set of occurrence patterns are contained in the currently selected portion of the string of bits, the string of bits contains the search pattern. A determination is then made whether the currently selected portion contains any of the occurrence patterns in the first set of occurrence patterns. Thus, based on whether the currently selected portion contains any of the occurrence patterns in the first set of occurrence patterns, it is determined whether the string of bits contains the search pattern.

Inventors

  • 👤 Paul J. Soo

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 07:43
CPC Classifications
G; G06; G06F; G06F7/00; G06F7/02

Claims Analysis

Total Claims: 54
Claim 1
Independent Claim 154 words
A computer implemented method for recognizing a search pattern in an input string of bits, said method comprising the steps of: A) selecting a portion of said string of bits as a currently selected portion; B) selecting a first set of masked occurrence patterns based on said search pattern and those bits of said string of bits immediately preceding said currently selected portion, said first set of masked occurrence patterns including one or more masked occurrence patterns, each representing a plurality of bit patterns that would be present in said currently selected portion if at least part of said search pattern is contained in said currently selected portion; C) determining if said currently selected portion contains any of said first set of masked occurrence patterns; and D) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said first set of masked occurrence patterns.
Claim 2
Dependent Claim 154 words
A computer implemented method for recognizing a search pattern in an input string of bits, said method comprising the steps of: A) selecting a portion of said string of bits as a currently selected portion; B) selecting a first set of masked occurrence patterns based on said search pattern and those bits of said string of bits immediately preceding said currently selected portion, said first set of masked occurrence patterns including one or more masked occurrence patterns, each representing a plurality of bit patterns that would be present in said currently selected portion if at least part of said search pattern is contained in said currently selected portion; C) determining if said currently selected portion contains any of said first set of masked occurrence patterns; and D) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said first set of masked occurrence patterns.
Claim 3
Dependent Claim 77 words
The method of claim 1, wherein said selecting in step B further comprises the steps of: B1) determining how much of said search pattern is contained in those bits of said string of bits immediately preceding said currently selected portion; and B2) selecting said first set of masked occurrence patterns such that if any of said first set of masked occurrence patterns are contained in said currently selected portion, said string of bits contains said search pattern.
Claim 4
Dependent Claim 42 words
The method of claim 1, wherein said method further comprises the steps of: repeating steps A through D on an unprocessed remainder of said string of bits, wherein said currently selected portion is now a processed portion of said string of bits.
Claim 5
Dependent Claim 37 words
The method of claim 1, wherein said determining in step C further comprises the step of comparing at least a first masked occurrence pattern of said first set of masked occurrence patterns to said currently selected portion.
Claim 6
Dependent Claim 118 words
The method of claim 4, wherein said method further includes the step of: E) performing the following steps if it was determined in step C that said currently selected portion contains any of said first set of masked occurrence patterns: E1) selecting a second set of masked occurrence patterns based on one of said first set of masked occurrence patterns determined in step C to be contained in said currently selected portion; E2) determining if said currently selected portion contains any of said second set of masked occurrence patterns; and E3) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said second set of masked occurrence patterns.
Claim 7
Dependent Claim 76 words
The method of claim 5, wherein said determining in step E3 further comprises the step of comparing at least a first masked occurrence pattern of said second set of masked occurrence patterns to said currently selected portion, wherein each masked occurrence pattern in said second set of masked occurrence patterns represents a plurality of occurrence patterns that would be present in said currently selected portion if said search pattern is contained within said currently selected portion.
Claim 8
Dependent Claim 65 words
The method of claim 1, wherein said selecting in step B further comprises the steps of: B1) determining if said currently selected portion contains an exclusion pattern; and B2) selecting said first set of masked occurrence patterns based on said search pattern, those bits of said string of bits immediately preceding said currently selected portion, and whether said currently selected portion contains said exclusion pattern.
Claim 9
Dependent Claim 37 words
The method of claim 7, wherein said exclusion pattern is such that at least one masked occurrence pattern cannot be contained in said currently selected portion if said exclusion pattern is contained in said currently selected portion.
Claim 10
Independent Claim 120 words
A method for recognizing a search pattern in an input string of bits, said method comprising the steps of: A) selecting a first number of consecutive bits from said string of bits as a currently selected portion; B) selecting a first set of bit patterns based on said search pattern and those bits of said string of bits immediately preceding said currently selected portion; C) operating on the bits of said currently selected portion in parallel to determine if said currently selected portion contains any of said first set of bit patterns; and D) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said first set of bit patterns.
Claim 11
Independent Claim 120 words
A method for recognizing a search pattern in an input string of bits, said method comprising the steps of: A) selecting a first number of consecutive bits from said string of bits as a currently selected portion; B) selecting a first set of bit patterns based on said search pattern and those bits of said string of bits immediately preceding said currently selected portion; C) operating on the bits of said currently selected portion in parallel to determine if said currently selected portion contains any of said first set of bit patterns; and D) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said first set of bit patterns.
Claim 12
Dependent Claim 75 words
The method of claim 9, wherein said selecting in step B further comprises the steps of: B1) determining how much of said search pattern is contained in those bits of said string of bits immediately preceding said currently selected portion; and B2) selecting said first set of bit patterns such that if any of said first set of bit patterns are contained in said currently selected portion, said string of bits contains said search pattern.
Claim 13
Dependent Claim 34 words
The method of claim 9, wherein said operating in step C further comprises the steps of comparing at least a first pattern of said first set of bit patterns to said currently selected portion.
Claim 14
Dependent Claim 62 words
The method of claim 9, wherein said operating in step C further comprises the step of comparing at least a first masked pattern of a first set of masked bit patterns to said currently selected portion, wherein each masked bit pattern in said first set of masked bit patterns represents a plurality of bit patterns in said first set of bit patterns.
Claim 15
Dependent Claim 196 words
The method of claim 12, wherein said step A further includes the steps of: A1) selecting a location in said string of bits as a currently selected location; and A2) selecting said first number of consecutive bits from said string of bits starting at said currently selected location as said currently selected portion; and wherein said method further comprises the step of: F) performing the following steps if said altering in step E was performed: F1) selecting said first number of consecutive bits from said string of bits starting at said currently selected location as said currently selected portion; F2) selecting a second set of bit patterns based on one of said first set of masked bit patterns determined in step C to be contained in said currently selected portion; F3) determining if said currently selected portion contains any of said second set of bit patterns; F4) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said second set of bit patterns; and F5) altering said string of bits in said pre-defined manner if it was determined said string of bits contains said search pattern.
Claim 16
Dependent Claim 63 words
The method of claim 13, wherein said determining in step F3 further comprises the step of comparing at least a first masked occurrence pattern of a second set of masked bit patterns to said currently selected portion, wherein each masked bit pattern in said first set of masked bit patterns represents a plurality of bit patterns in said second set of bit patterns.
Claim 17
Dependent Claim 64 words
The method of claim 9, wherein said selecting in step B further comprises the steps of: B1) determining if said currently selected portion contains an exclusion pattern; and B2) selecting said first set of bit patterns based on said search pattern, those bits of said string of bits immediately preceding said currently selected portion, and whether said currently selected portion contains said exclusion pattern.
Claim 18
Dependent Claim 58 words
The method of claim 15, wherein said exclusion pattern is such that at least a first bit pattern which would indicate an occurrence of said search pattern in said string of bits if contained in said currently selected portion cannot be contained in said currently selected portion if said exclusion pattern is contained in said currently selected portion.
Claim 19
Dependent Claim 31 words
The method of claim 9, further comprising the steps of: E) altering said string of bits in a pre-defined manner if it was determined said string bits contains said search pattern.
Claim 20
Dependent Claim 95 words
The method of claim 17, wherein said altering said string of bits in a pre-defined manner in step E further comprises the steps of: E1) determining if each occurrence of said search pattern determined to be contained in said string of bits in step C is part of an occurrence of a frame delimiter; and E2) removing a bit from said string of bits after each occurrence of said search pattern determined to be contained in said string of bits in step C which was determined not to be an occurrence of said frame delimiter.
Claim 21
Dependent Claim 48 words
The method of claim 17, wherein said altering said string of bits in a pre-defined manner in step E further comprises the step of inserting a bit into said string of bits after each occurrence of said search pattern if said string of bits is to be transmitted.
Claim 22
Dependent Claim 102 words
The method of claim 19, wherein said step A further comprises the steps of: A1) selecting a location in said string of bits as a currently selected location; and A2) selecting said first number of consecutive bits from said string of bits starting at said currently selected location as said currently selected portion; and wherein said method further comprises the step of: F) repeating steps A through E on an unprocessed remainder of said string of bits, wherein at least said first number of consecutive bits starting at said currently selected location is now a processed portion of said string of bits.
Claim 23
Dependent Claim 25 words
The method of claim 20, wherein said method further includes the step of: transmitting in a frame said processed portions of said string of bits.
Claim 24
Independent Claim 176 words
An apparatus for recognizing a search pattern in an input string of bits, said apparatus comprising: a processor for executing instructions during operation; and a storage device coupled to said processor storing a plurality of instructions, said plurality of instructions embodying logic for: A) selecting a portion of said string of bits as a currently selected portion; B) selecting a first set of masked occurrence patterns based on said search pattern and those bits of said string of bits immediately preceding said currently selected portion, said first set of masked occurrence patterns including one or more masked occurrence patterns, each representing a plurality of bit patterns that would be present in said currently selected portion if at least part of said search pattern is contained in said currently selected portion; C) determining if said currently selected portion contains any of said first set of masked occurrence patterns; and D) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said first set of masked occurrence patterns.
Claim 25
Independent Claim 176 words
An apparatus for recognizing a search pattern in an input string of bits, said apparatus comprising: a processor for executing instructions during operation; and a storage device coupled to said processor storing a plurality of instructions, said plurality of instructions embodying logic for: A) selecting a portion of said string of bits as a currently selected portion; B) selecting a first set of masked occurrence patterns based on said search pattern and those bits of said string of bits immediately preceding said currently selected portion, said first set of masked occurrence patterns including one or more masked occurrence patterns, each representing a plurality of bit patterns that would be present in said currently selected portion if at least part of said search pattern is contained in said currently selected portion; C) determining if said currently selected portion contains any of said first set of masked occurrence patterns; and D) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said first set of masked occurrence patterns.
Claim 26
Dependent Claim 84 words
The apparatus of claim 22, wherein said plurality of instructions further embody logic for said selecting said first set of occurrence patterns by: B1) determining how much of said search pattern is contained in those bits of said string of bits immediately preceding said currently selected portion; and B2) selecting said first set of masked occurrence patterns such that if any of said first set of masked occurrence patterns are contained in said currently selected portion, said string of bits contains said search pattern.
Claim 27
Dependent Claim 43 words
The apparatus of claim 22, wherein said plurality of instructions further embody logic for: repeating steps A through D on an unprocessed remainder of said string of bits, wherein said currently selected portion is now a processed portion of said string of bits.
Claim 28
Dependent Claim 52 words
The apparatus of claim 22, wherein said plurality of instructions further embody logic for said determining if said currently selected portion contains any of said first set of occurrence patterns by comparing at least a first masked occurrence pattern of said first set of masked occurrence patterns to said currently selected portion.
Claim 29
Dependent Claim 119 words
The apparatus of claim 25, wherein said plurality of instructions further embody logic for: E) performing the following steps if it was determined in step C that said currently selected portion contains any of said first set of masked occurrence patterns: E1) selecting a second set of masked occurrence patterns based on one of said first set of masked occurrence patterns determined in step C to be contained in said currently selected portion; E2) determining if said currently selected portion contains any of said second set of masked occurrence patterns; and E3) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said second set of masked occurrence patterns.
Claim 30
Dependent Claim 91 words
The apparatus of claim 26, wherein said plurality of instructions further embody logic for said determining if said currently selected portion contains any of said second set of occurrence patterns by: comparing at least a first masked occurrence pattern of said second set of masked occurrence patterns to said currently selected portion, wherein each masked occurrence pattern in said second set of masked occurrence patterns represents a plurality of occurrence patterns that would be present in said currently selected portion if said search pattern is contained within said currently selected portion.
Claim 31
Dependent Claim 72 words
The apparatus of claim 22, wherein said plurality of instructions further embody logic for said selecting said first set of occurrence patterns by: B1) determining if said currently selected portion contains an exclusion pattern; and B2) selecting said first set of masked occurrence patterns based on said search pattern, those bits of said string of bits immediately preceding said currently selected portion, and whether said currently selected portion contains said exclusion pattern.
Claim 32
Dependent Claim 37 words
The apparatus of claim 28, wherein said exclusion pattern is such that at least one masked occurrence pattern cannot be contained in said currently selected portion if said exclusion pattern is contained in said currently selected portion.
Claim 33
Independent Claim 144 words
An apparatus for recognizing a search pattern in an input string of bits, said apparatus comprising: a processor for executing instructions during operation; and a storage device coupled to said processor storing a plurality of instructions, said plurality of instructions embodying logic for: A) selecting a first number of consecutive bits from said string of bits as a currently selected portion; B) selecting a first set of bit patterns based on said search pattern and those bits of said string of bits immediately preceding said currently selected portion; C) operating on the bits of said currently selected portion in parallel to determine if said currently selected portion contains any of said first set of bit patterns; and D) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said first set of bit patterns.
Claim 34
Independent Claim 144 words
An apparatus for recognizing a search pattern in an input string of bits, said apparatus comprising: a processor for executing instructions during operation; and a storage device coupled to said processor storing a plurality of instructions, said plurality of instructions embodying logic for: A) selecting a first number of consecutive bits from said string of bits as a currently selected portion; B) selecting a first set of bit patterns based on said search pattern and those bits of said string of bits immediately preceding said currently selected portion; C) operating on the bits of said currently selected portion in parallel to determine if said currently selected portion contains any of said first set of bit patterns; and D) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said first set of bit patterns.
Claim 35
Dependent Claim 82 words
The apparatus of claim 30, wherein said plurality of instructions further embody logic for said selecting said first set of bit patterns by: B1) determining how much of said search pattern is contained in those bits of said string of bits immediately preceding said currently selected portion; and B2) selecting said first set of bit patterns such that if any of said first set of bit patterns are contained in said currently selected portion, said string of bits contains said search pattern.
Claim 36
Dependent Claim 61 words
The apparatus of claim 30, wherein said plurality of instructions further embody logic for said operating on the bits of said currently selected portion in parallel to determine if said currently selected portion contains any of said first set of bit patterns by: comparing at least a first pattern of said first set of bit patterns to said currently selected portion.
Claim 37
Dependent Claim 89 words
The apparatus of claim 30, wherein said plurality of instructions further embody logic for said operating on the bits of said currently selected portion in parallel to determine if said currently selected portion contains any of said first set of bit patterns by: comparing at least a first masked pattern of a first set of masked bit patterns to said currently selected portion, wherein each masked bit pattern in said first set of masked bit patterns represents a plurality of bit patterns in said first set of bit patterns.
Claim 38
Dependent Claim 212 words
The apparatus of claim 33, wherein said plurality of instructions further embody logic for said selecting a portion of said string of bits as a currently selected portion by: A1) selecting a location in said string of bits as a currently selected location; and A2) selecting said first number of consecutive bits from said string of bits starting at said currently selected location as said currently selected portion; and wherein said plurality of instructions further embody logic for: F) performing the following steps if said altering in step E was performed: F1) selecting said first number of consecutive bits from said string of bits starting at said currently selected location as a currently selected portion; F2) selecting a second set of bit patterns based on one of said first set of masked bit patterns determined in step C to be contained in said currently selected portion; F3) determining if said currently selected portion contains any of said second set of bit patterns; F4) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said second set of bit patterns; and F5) altering said string of bits in a pre-defined manner if it was determined said string of bits contains said search pattern.
Claim 39
Dependent Claim 72 words
The apparatus of claim 34, wherein said plurality of instructions further embody logic for said altering said string of bits in a pre-defined manner by: comparing at least a first masked occurrence pattern of a second set of masked bit patterns to said currently selected portion, wherein each masked bit pattern in said first set of masked bit patterns represents a plurality of bit patterns in said second set of bit patterns.
Claim 40
Dependent Claim 71 words
The apparatus of claim 30, wherein said plurality of instructions further embody logic for said selecting said first set of bit patterns by: B1) determining if said currently selected portion contains an exclusion pattern; and B2) selecting said first set of bit patterns based on said search pattern, those bits of said string of bits immediately preceding said currently selected portion, and whether said currently selected portion contains said exclusion pattern.
Claim 41
Dependent Claim 58 words
The apparatus of claim 36, wherein said exclusion pattern is such that at least a first bit pattern which would indicate an occurrence of said search pattern in said string of bits if contained in said currently selected portion cannot be contained in said currently selected portion if said exclusion pattern is contained in said currently selected portion.
Claim 42
Dependent Claim 36 words
The apparatus of claim 30, wherein said plurality of instructions further embody logic for: E) altering said string of bits in a pre-defined manner if it was determined said string of bits contains said search pattern.
Claim 43
Dependent Claim 95 words
The apparatus of claim 38, wherein said altering said string of bits in a pre-defined manner in step E further comprises the steps of: E1) determining if each occurence of said search pattern determined to be contained in said string of bits in step C is part of an occurence of said frame delimiter, and E2) removing a bit from said string of bits after each occurence of said search pattern determined to be contained in said string of bits in step C which was determined not to be an occurence of said frame delimiter.
Claim 44
Dependent Claim 46 words
The apparatus of claim 38, wherein said plurality of instructions further embody logic for said altering said string of bits in a pre-defined manner by inserting a bit into said string of bits after said search pattern if said string of bits is to be transmitted.
Claim 45
Dependent Claim 103 words
The apparatus of claim 40, wherein said plurality of instructions further embody logic for: A1) selecting a location in said string of bits as a currently selected location; and A2) selecting said first number of consecutive bits from said string of bits starting at said currently selected location as said currently selected portion; and wherein said plurality of instructions further embody logic for: F) repeating steps A through E on an unprocessed remainder of said string of bits, wherein at least said first number of consecutive bits starting at said currently selected location is now a processed portion of said string of bits.
Claim 46
Dependent Claim 26 words
The apparatus of claim 41 wherein said plurality of instructions further embody logic for: transmitting in a frame said processed portions of said string of bits.
Claim 47
Dependent Claim 169 words
A computer system for recognizing a search pattern in an input string of bits, said computer system comprising: a first processor; a bus coupled to said first processor; a modern coupled to said bus for communication, said modem including: a second processor for executing instructions during operation, and a storage device coupled to said second processor storing a plurality of instructions, said plurality of instructions embodying logic for: A) selecting a first number of consecutive bits from said string of bits as a currently selected portion; B) selecting a first set of occurrence patterns based on said search pattern and those bits of said string of bits immediately preceding said currently selected portion; C) operating on the bits of said currently selected portion in parallel to determine if said currently selected portion contains any of said first set of occurrence patterns; and D) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said first set of occurence patterns.
Claim 48
Dependent Claim 169 words
A computer system for recognizing a search pattern in an input string of bits, said computer system comprising: a first processor; a bus coupled to said first processor; a modern coupled to said bus for communication, said modem including: a second processor for executing instructions during operation, and a storage device coupled to said second processor storing a plurality of instructions, said plurality of instructions embodying logic for: A) selecting a first number of consecutive bits from said string of bits as a currently selected portion; B) selecting a first set of occurrence patterns based on said search pattern and those bits of said string of bits immediately preceding said currently selected portion; C) operating on the bits of said currently selected portion in parallel to determine if said currently selected portion contains any of said first set of occurrence patterns; and D) determining if said string of bits contains said search pattern based on whether said currently selected portion contains any of said first set of occurence patterns.
Claim 49
Dependent Claim 83 words
The computer system of claim 43, wherein said plurality of instructions further embody logic for said selecting said first set of occurrence patterns by: B1) determining how much of said search pattern is contained in those bits of said string of bits immediately preceding said currently selected portion; and B2) selecting said first set of occurrence patterns such that if any of said first set of occurrence patterns are contained in said currently selected portion, said string of bits contains said search pattern.
Claim 50
Dependent Claim 63 words
The computer system of claim 43, wherein said plurality of instructions further embody logic for said operating on the bits of said currently selected portion in parallel to determine if said currently selected portion contains any of said first set of occurence patterns by: comparing at least a first occurence pattern of said first set of occurence patterns to said currently selected portion.
Claim 51
Dependent Claim 91 words
The computer system of claim 43, wherein said plurality of instructions further embody logic for said operating on the bits of said currently selected portion in parallel to determine if said currently selected portion contains any of said first set of occurrence patterns by: comparing at least a first masked occurrence pattern of a first set of masked occurrence patterns to said currently selected portion, wherein each masked occurrence pattern in said first set of masked occurrence patterns represents a plurality of occurrence patterns in said first set of occurrence patterns.
Claim 52
Dependent Claim 72 words
The computer system of claim 43, wherein said plurality of instructions further embody logic for said selecting said first set of occurrence patterns by: B1) determining if said currently selected portion contains an exclusion pattern; and B2) selecting said first set of occurrence patterns based on said search pattern, those bits of said string of bits immediately preceding said currently selected portion, and whether said currently selected portion contains said exclusion pattern.
Claim 53
Dependent Claim 59 words
The computer system of claim 43, wherein said exclusion pattern is such that at least a first occurrence pattern which would indicate an occurrence of said search pattern in said string of bits if contained in said currently selected portion cannot be contained in said currently selected portion if said exclusion pattern is contained in said currently selected portion.
Claim 54
Dependent Claim 37 words
The computer system of claim 43, wherein said plurality of instructions further embody logic for: E) altering said string of bits in a pre-defined manner if it was determined said string of bits contains said search pattern.

References Cited (Backward Citations)

US4554541A Cited
US4829462A Cited
US4847877A Cited
US4787095A Cited
US5297185A Cited
US5282194A Cited
US5383142A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-10-29 2000-04-29 2000-10-29 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-10-29 2004-04-29 2004-10-29 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-10-29 2008-04-29 2008-10-29 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag