Data processor with bit stuffing instruction set extension
First Claim
1. A processor comprising:
- a first input receiving data;
a second input receiving a zero stuffing instruction;
a logic unit coupled to the first input and the second input, the logic unit including activatible zero stuffing circuitry which is activated upon receipt of the zero stuffing instruction and which stuffs the data to produce modified data;
an output coupled to the logic unit, the output outputting the modified data; and
wherein the processor can be reprogrammed to execute one of many different instructions, including at least one instruction from a group comprising;
a zero unstuffing instruction, a CRC instruction, a partial subtraction and conditional move instruction, a partial compare and conditional move instruction and a multiple compare instruction.
2 Assignments
0 Petitions
Accused Products
Abstract
A programmable data communications device is provided to process multiple streams of data according to multiple protocols. The device is equipped with a co-processor including multiple, programmable processors allowing data to be operated on by multiple protocols. The programmable processors within the co-processor include extended instruction sets including instructions providing the operations of zero stuffing, CRC computation, partial compare, conditional move, and trie traversal. These instructions allow the processor(s) of the co-processor to more efficiently execute programs implementing data communications protocols. Since each processor is programmable, protocols standards which change may be accommodated. A network device equipped with the co-processor can handle multiple simultaneous streams of data and can implement multiple protocols on each data stream. The protocols can execute within the co-processor either independently of each other, or in conjunction with each other.
-
Citations
13 Claims
-
1. A processor comprising:
-
a first input receiving data;
a second input receiving a zero stuffing instruction;
a logic unit coupled to the first input and the second input, the logic unit including activatible zero stuffing circuitry which is activated upon receipt of the zero stuffing instruction and which stuffs the data to produce modified data;
an output coupled to the logic unit, the output outputting the modified data; and
wherein the processor can be reprogrammed to execute one of many different instructions, including at least one instruction from a group comprising;
a zero unstuffing instruction, a CRC instruction, a partial subtraction and conditional move instruction, a partial compare and conditional move instruction and a multiple compare instruction.- View Dependent Claims (2, 3, 4, 5, 6)
a detecting logic device which detects a predetermined sequence of bits in the data; and
an insertion logic device which inserts a modifier into the data creating the modified data.
-
-
3. The processor of claim 1 wherein the zero stuffing instruction executes on the logic unit as part of a protocol to perform compression on the data.
-
4. The processor of claim 1 wherein the zero stuffing instruction executes on the logic unit as part of a protocol to perform decompression on the data.
-
5. The processor of claim 1 wherein the zero stuffing instruction executes on the logic unit as part of a protocol to perform encryption on the data.
-
6. The processor of claim 1 wherein the zero stuffing instruction executes on the logic unit as part of a protocol to perform decryption on the data.
-
7. An apparatus comprising a computer readable medium having a zero stuffing instruction recorded thereon, the apparatus comprising:
-
a first input receiving data;
a second input receiving a zero stuffing instruction;
a logic unit coupled to the first input and the second input, the logic unit including activatible zero stuffing circuitry which is activated upon receipt of the zero stuffing instruction and which stuffs the data to produce modified data;
an output coupled to the logic unit, the output outputting the modified data; and
wherein the processor can be reprogrammed to execute one of many different instructions, including at least one instruction from a group comprising;
a zero unstuffing instruction, a CRC instruction, a partial subtraction and conditional move instruction, a partial compare and conditional move instruction and a multiple compare instruction.
-
-
8. A method of processing data received from a CPU comprising the steps of:
-
receiving input data at a processor, which processor is programmable to execute one of many instructions, including at least one instruction from a group comprising;
a zero unstuffing instruction, a CRC instruction, a partial subtraction and conditional move instruction, a partial compare and conditional move instruction and a multiple compare instruction;
receiving, separately from the input data, a zero stuffing instruction at the processor;
coupling the input data to a logic unit within the processor, the logic unit including activatible zero stuffing circuitry;
activating the logic unit upon the receipt of the zero stuffing instruction;
zero stuffing the data to produce modified data; and
outputting the modified data. - View Dependent Claims (9, 10, 11, 12, 13)
detecting a predetermined sequence of bits in the data; and
inserting a modifier into the data to create the modified data.
-
-
10. The method of claim 8 wherein the zero stuffing instruction executes on the logic unit as part of a protocol to perform compression on the data.
-
11. The method of claim 8 wherein the zero stuffing instruction executes on the logic unit as part of a protocol to perform decompression on the data.
-
12. The method of claim 8 wherein the zero stuffing instruction executes on the logic unit as part of a protocol to perform encryption on the data.
-
13. The method of claim 8 wherein the zero stuffing instruction executes on the logic unit as part of a protocol to perform decryption on the data.
Specification