Claims Analysis
Total Claims: 4
Claim 1
Independent Claim
435 words
A finite state automaton (FSA) responsive to a stream of input code elements, each code element consisting of a predetermined plurality of code bits, for searching the stream simultaneously for a plurality of specified query patterns each of which comprises an ordered plurality of code element query values; the FSA making transition in response to each input code element from one to another of a plurality of alternative states which include at least one multiple exit decision state in which the FSA searches simultaneously for a plurality of specified alternative code element query values that are code element values of respective query patterns; each code element query value being associated with a distinct next state to which the FSA makes transition in response to detection of that code element query value in the input stream; said FSA comprising input means for receiving an input stream of digital code data and for successively accessing from the stream a current one of said code elements for parallel delivery, control memory means including a plurality of state words associated with respective alternative states of the FSA, the state word associated with each said decision state including a series of ordered indexing bits corresponding to the respective possible values of said input code elements, with set bits designating said plurality of specified code element query values, and a code representation of a base state number having a predetermined relation to the next success state associated with a selected one of those query values, state register means for storing an identification of the current state and for accessing the contents of the state word associated with that state, action means controlled successively by the currently accessed input code element and by the currently accessed contents of the state word and including, when under control of the state word contents associated with said multiple exit decision state, means for simultaneously comparing said accessed input code element value and the set indexing bits in said accessed state word contents and for developing a match signal in response to detection of a match, means for deriving an index that represents the position among the set indexing bits of the bit corresponding to the input code element value, means for developing from said index and from the base state number represented in said accessed state word contents an identification of the next success state associated with the current input code element value, and means responsive to said match signal for storing the so developed next success state identification in said state register means as an identification of the next current state of the FSA.
Claim 2
Dependent Claim
435 words
A finite state automaton (FSA) responsive to a stream of input code elements, each code element consisting of a predetermined plurality of code bits, for searching the stream simultaneously for a plurality of specified query patterns each of which comprises an ordered plurality of code element query values; the FSA making transition in response to each input code element from one to another of a plurality of alternative states which include at least one multiple exit decision state in which the FSA searches simultaneously for a plurality of specified alternative code element query values that are code element values of respective query patterns; each code element query value being associated with a distinct next state to which the FSA makes transition in response to detection of that code element query value in the input stream; said FSA comprising input means for receiving an input stream of digital code data and for successively accessing from the stream a current one of said code elements for parallel delivery, control memory means including a plurality of state words associated with respective alternative states of the FSA, the state word associated with each said decision state including a series of ordered indexing bits corresponding to the respective possible values of said input code elements, with set bits designating said plurality of specified code element query values, and a code representation of a base state number having a predetermined relation to the next success state associated with a selected one of those query values, state register means for storing an identification of the current state and for accessing the contents of the state word associated with that state, action means controlled successively by the currently accessed input code element and by the currently accessed contents of the state word and including, when under control of the state word contents associated with said multiple exit decision state, means for simultaneously comparing said accessed input code element value and the set indexing bits in said accessed state word contents and for developing a match signal in response to detection of a match, means for deriving an index that represents the position among the set indexing bits of the bit corresponding to the input code element value, means for developing from said index and from the base state number represented in said accessed state word contents an identification of the next success state associated with the current input code element value, and means responsive to said match signal for storing the so developed next success state identification in said state register means as an identification of the next current state of the FSA.
Claim 3
Dependent Claim
254 words
In operation of a finite state automation (FSA) for searching an input stream of digital code elements for a plurality of specified code element query values, the FSA making transition in response to each input code element from one to another of a plurality of alternative states which include at least one multiple exit decision state, each code element query value being associated with a distinct next success state to which the FSA makes transition from said decision state in response to detection of that code element query value in the input stream; the method of controlling such transition, comprising providing a state memory means associated with said decision state, storing in said memory means an ordered series of code bits which correspond to the respective possible values of each input code element and are selectively set to designate said query values, assigning to said next success states correspondingly ordered next state identities, storing in said memory means a base state number representing the identity of the next success state associated with a selected one of said query values, electronically comparing the current input code element simultaneously to all of the set indexing bits, electronically deriving an index that represents the position among the set indexing bits of any indexing bit that matches the current input code element, deriving from said index and from said base state number an identification of the next success state associated with such indexing bit, and causing the FSA to make transition to the so identified next success state.
Claim 4
Dependent Claim
254 words
In operation of a finite state automation (FSA) for searching an input stream of digital code elements for a plurality of specified code element query values, the FSA making transition in response to each input code element from one to another of a plurality of alternative states which include at least one multiple exit decision state, each code element query value being associated with a distinct next success state to which the FSA makes transition from said decision state in response to detection of that code element query value in the input stream; the method of controlling such transition, comprising providing a state memory means associated with said decision state, storing in said memory means an ordered series of code bits which correspond to the respective possible values of each input code element and are selectively set to designate said query values, assigning to said next success states correspondingly ordered next state identities, storing in said memory means a base state number representing the identity of the next success state associated with a selected one of said query values, electronically comparing the current input code element simultaneously to all of the set indexing bits, electronically deriving an index that represents the position among the set indexing bits of any indexing bit that matches the current input code element, deriving from said index and from said base state number an identification of the next success state associated with such indexing bit, and causing the FSA to make transition to the so identified next success state.