NFA completion notification
First Claim
Patent Images
1. A method comprising:
- (a) a processor communicates a first command across a bus to an NFA (Non-deterministic Finite Automaton) engine, the first command is an instruction to the NFA engine to perform an NFA operation, wherein the NFA engine is not a Deterministic Finite Automaton (DFA) engine;
(b) the processor communicates a second command across the bus to the NFA engine, the second command is an instruction to the NFA engine to return a reference value to the processor;
(c) in response to the first command the NFA engine performs the NFA operation thereby generating a result and storing the result in a memory; and
(d) in response to the second command the NFA engine causes the reference value to be transferred across the bus to the processor, wherein the first command has a type field that indicates that the first command is of a first type of NFA engine command, wherein the second command has a type field that indicates that the second command is of a second type of NFA engine command different from the first type of NFA engine command, wherein the first type of NFA engine command is a GO command that causes the NFA engine to start an NFA operation, wherein the second type of NFA engine command is an EVENT GENERATE command, wherein the second command has a reference value field that contains the reference value, and wherein the first command has no reference value field.
3 Assignments
0 Petitions
Accused Products
Abstract
Multiple processors share access, via a bus, to a pipelined NFA engine. The NFA engine can implement an NFA of the type that is not a DFA (namely, it can be in multiple states at the same time). One of the processors communicates a configuration command, a go command, and an event generate command across the bus to the NFA engine. The event generate command includes a reference value. The configuration command causes the NFA engine to be configured. The go command causes the configured NFA engine to perform a particular NFA operation. Upon completion of the NFA operation, the event generate command causes the reference value to be returned back across the bus to the processor.
38 Citations
20 Claims
-
1. A method comprising:
-
(a) a processor communicates a first command across a bus to an NFA (Non-deterministic Finite Automaton) engine, the first command is an instruction to the NFA engine to perform an NFA operation, wherein the NFA engine is not a Deterministic Finite Automaton (DFA) engine; (b) the processor communicates a second command across the bus to the NFA engine, the second command is an instruction to the NFA engine to return a reference value to the processor; (c) in response to the first command the NFA engine performs the NFA operation thereby generating a result and storing the result in a memory; and (d) in response to the second command the NFA engine causes the reference value to be transferred across the bus to the processor, wherein the first command has a type field that indicates that the first command is of a first type of NFA engine command, wherein the second command has a type field that indicates that the second command is of a second type of NFA engine command different from the first type of NFA engine command, wherein the first type of NFA engine command is a GO command that causes the NFA engine to start an NFA operation, wherein the second type of NFA engine command is an EVENT GENERATE command, wherein the second command has a reference value field that contains the reference value, and wherein the first command has no reference value field. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. An apparatus comprising:
-
a plurality of processors that can supply NFA (Non-deterministic Finite Automaton) commands to an NFA engine, wherein one of the processors is a commanding processor that supplies both a first NFA command and a second NFA command to the NFA engine, and wherein the NFA engine can carry out an NFA, wherein the NFA is an NFA that is not a Deterministic Finite Automaton (DFA), wherein the commanding processor determines a reference value and passes the reference value to the NFA engine as part of the second NFA command, wherein the first NFA command has a type field that indicates that the first NFA command is of a first type of NFA engine command, wherein the second NFA command has a type field that indicates that the second NFA command is of a second type of NFA engine command different from the first type of NFA engine command, wherein the first type of NFA engine command is a GO command that causes the NFA engine to start an NFA operation, wherein the second type of NFA engine command is an EVENT GENERATE command, wherein the second NFA command has a reference value field that contains the reference value, and wherein the first NFA command has no reference value field; an NFA pipeline that performs an NFA operation indicated by the first NFA command, wherein the NFA pipeline is a part of the NFA engine; and means for notifying the commanding processor that the first NFA command has been completed without notifying any of the other processors of the plurality of processors, wherein the means notifies the commanding processor at least in part by supplying the commanding processor with the reference value. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification