Re-programmable finite state machine
First Claim
1. A re-programmable finite state machine (“
- RFSM”
) comprising;
a content addressable memory (“
CAM”
) comprising;
a compare register adapted to store a status vector to be matched; and
a compare array adapted to store a plurality of compare vectors, and to generate as an output a match vector as a function of respective bits of said status vector and said compare vectors; and
an output array adapted to store a plurality of control vectors, and to select for output one of said control vectors as a function of said match vector, a first portion of said selected control vector comprising a portion of said status vector and a second portion of said selected control vector comprising an output vector.
11 Assignments
0 Petitions
Accused Products
Abstract
A re-programmable finite state machine comprising a content-addressable memory (“CAM”) and a read/write memory output array (“OA”). In operation, the CAM receives and periodically latches a status vector, and generates a match vector as a function of the status vector and a set of stored compare vectors. In response, the OA selects for output one of a set of a control vector as a function of the match vector. A state vector portion of the selected control vector is forwarded to the CAM as a portion of the status vector. An output vector portion of the selected control vector controls the operation of external components. Both the set of stored compare vectors and the set of control vectors are fully re-programmable.
-
Citations
18 Claims
-
1. A re-programmable finite state machine (“
- RFSM”
) comprising;
a content addressable memory (“
CAM”
) comprising;
a compare register adapted to store a status vector to be matched; and
a compare array adapted to store a plurality of compare vectors, and to generate as an output a match vector as a function of respective bits of said status vector and said compare vectors; and
an output array adapted to store a plurality of control vectors, and to select for output one of said control vectors as a function of said match vector, a first portion of said selected control vector comprising a portion of said status vector and a second portion of said selected control vector comprising an output vector. - View Dependent Claims (2, 3, 4, 5, 6)
- RFSM”
-
7. A re-programmable finite state machine (“
- RFSM”
) comprising;
a content addressable memory (“
CAM”
) comprising;
a compare register adapted to store a status vector to be matched;
a status mask adapted to store a status mask, and to generate a masked status vector as a function of the status vector and the status mask;
a compare array adapted to store a plurality of compare vectors, and to generate as an output a match vector as a function of respective bits of said masked status vector and said compare vectors;
a match mask adapted to store a match mask, and to generate a masked match vector as a function of the match vector and the match mask; and
an output array adapted to store a plurality of control vectors, and to select for output one of said control vectors as a function of said masked match vector, a first portion of said selected control vector comprising a portion of said status vector and a second portion of said selected control vector comprising an output vector. - View Dependent Claims (8, 9, 10, 11, 12)
- RFSM”
-
13. A re-programmable finite state machine (“
- RFSM”
) comprising;
a content addressable memory (“
CAM”
) comprising;
a compare register adapted to store a status vector to be matched;
a status mask adapted to store a status mask, and to generate a masked status vector as a function of the status vector and the status mask;
a compare array adapted to store a plurality of compare vectors, and to generate as an output a match vector as a function of respective bits of said masked status vector and said compare vectors;
a match mask adapted to store a match mask, and to generate a masked match vector as a function of the match vector and the match mask; and
an encoder adapted to generate an address as a function of the masked match vector; and
an output array adapted to store a plurality of control vectors, and to select for output one of said control vectors as a function of said address, a first portion of said selected control vector comprising a portion of said status vector and a second portion of said selected control vector comprising an output vector. - View Dependent Claims (14, 15, 16, 17, 18)
- RFSM”
Specification