Synchronous network traffic processor
First Claim
Patent Images
1. A processor synchronous with an instruction clock signal, comprising:
- an execution control unit synchronous with the instruction clock signal and operable to execute an instruction per clock cycle of the instruction clock signal;
an input pipeline unit synchronous with the instruction clock signal and operable to receive a stream of input data words one data word per clock cycle of the instruction clock signal, the input pipeline unit further operable to selectively output one input data word per clock cycle of the instruction clock signal;
a data modify unit coupled to the input pipeline unit, the data modify unit operable to selectively modify input data words received form the input pipeline unit according to instruction-specified operators to generate modified data words one modified data word per clock cycle of the instruction clock signal; and
a processor output selector operable to selectively output, at each clock cycle of the instruction clock signal, an instruction-specified one of the input data words and the modified data words.
16 Assignments
0 Petitions
Accused Products
Abstract
A synchronous network traffic processor that synchronously processes, analyzes and generates data for high-speed network protocols, on a wire-speed, word-by-word basis. The synchronous network processor is protocol independent and may be programmed to convert protocols on the fly. An embodiment of the synchronous network processor described has a low gate count and can be easily implemented using programmable logic. An appropriately programmed synchronous network traffic processor may replace modules traditionally implemented with hard-wired logic or ASIC.
9 Citations
45 Claims
-
1. A processor synchronous with an instruction clock signal, comprising:
-
an execution control unit synchronous with the instruction clock signal and operable to execute an instruction per clock cycle of the instruction clock signal;
an input pipeline unit synchronous with the instruction clock signal and operable to receive a stream of input data words one data word per clock cycle of the instruction clock signal, the input pipeline unit further operable to selectively output one input data word per clock cycle of the instruction clock signal;
a data modify unit coupled to the input pipeline unit, the data modify unit operable to selectively modify input data words received form the input pipeline unit according to instruction-specified operators to generate modified data words one modified data word per clock cycle of the instruction clock signal; and
a processor output selector operable to selectively output, at each clock cycle of the instruction clock signal, an instruction-specified one of the input data words and the modified data words. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
12. A processor synchronous with an instruction clock signal, comprising:
-
an execution control unit synchronous with the instruction clock signal and operable to execute an instruction per clock cycle of the instruction clock signal;
an input pipeline unit synchronous with the instruction clock signal and operable to receive a stream of input data words one data word per clock cycle of the instruction clock signal, the input pipeline unit further operable to selectively output the input data words one input data word per clock cycle of the instruction clock signal; and
a data compare unit coupled to the input pipeline unit, the data compare unit operable to generate compare flags by selectively comparing input data words received from the input pipeline unit to instruction-specified operands, wherein the execution control unit is operable to determine a next instruction to be processed according to compare flags generated by the data compare unit during a current clock cycle of the instruction clock signal and a branch operator specified in a current instruction.
-
-
13. A processor synchronous with an instruction clock signal, the processor comprising:
-
an input pipeline unit operable to receive a plurality of input data words at a rate of one input data word per clock cycle of the instruction clock signal;
an execution control unit;
an instruction memory storing instructions for execution by the execution control unit, wherein the execution control unit is operable to execute, during each clock cycle of the instruction clock signal, one of the instructions so as to control an instruction-specified operation on an instruction-specified one of the input data words in the input pipeline unit.
-
-
25. A processor synchronous with an instruction clock signal, comprising:
-
an input pipeline unit operable to continuously receive a stream of input data words including one data word during each clock cycle of the instruction clock signal, the input pipeline unit further operable to output successive ones of the data words during successive clock cycles of the instruction clock signal;
a data modify unit coupled to the input pipeline unit, said data modify unit operable to selectively modify during each clock cycle of the instruction clock signal an input data word received from the input pipeline unit in accordance with an instruction specified operator and generating a resultant output data word;
a data compare unit coupled to the input pipeline unit, said data compare unit operable to selectively compare during each clock cycle of the instruction clock signal an input data word received from the input pipeline unit with an instruction specified operand and generating a resultant set of compare flags; and
an execution control unit, coupled to the data modify unit and data compare unit, the execution control unit operable to configure during each clock cycle of the instruction clock signal at least one of the data modify unit and the data compare unit in accordance with a current instruction.
-
-
41. A protocol independent synchronous processor for processing network data, comprising:
-
an execution control unit synchronous with an instruction clock signal, the execution control unit operable to execute an instruction per clock cycle of the instruction clock signal;
an input interface synchronous with the instruction clock signal, the input interface operable to receive network data at a rate of one data word per clock cycle of the instruction clock signal; and
a plurality of configurable units synchronous with the instruction clock signal, the plurality of configurable units operable to process the received network data in real time under control of the execution control unit. - View Dependent Claims (42, 43, 44)
-
-
45. A protocol independent synchronous processor for processing network data, comprising:
-
an input interface for receiving the network data;
a plurality of software configurable units for processing a sequence of data words of the network data in real time, at a rate corresponding to a rate at which the network data is received at the input interface;
software configurable connections for interconnecting the plurality of software configurable units and input interface; and
a software execution unit, coupled to the plurality of software configurable units and software configurable connections, the software execution unit operable for configuring the plurality of software configurable units and software configurable connections in accordance with any selected network protocol of a predefined multiplicity of network protocols so as to configure the processor to process the received network data in real time in a manner consistent with the selected network protocol.
-
Specification