Non-blocking, multi-context pipelined processor
AssigneeAlcatel Internetworking (PE), Inc.
InventorsWerner Van Hoof, Jerrold Wheeler, Mathieu Tallegas
Life of this patent
Estimating the term…
Loading patent…
AssigneeAlcatel Internetworking (PE), Inc.
InventorsWerner Van Hoof, Jerrold Wheeler, Mathieu Tallegas
Estimating the term…
A packet processor whose processing capabilities are optimized by concurrently processing multiple packets within various pipelined stages. At each stage, multiple packets are processed via an internally pipelined sub-processor. In one embodiment, the packets are processed in a round robin fashion. When a particular packet is done processing at a particular stage, it may pass another packet whose processing is not complete, and move to a next stage. In another embodiment, a packet is processed until a conditional branch instruction or any other instruction causing a potential stall is encountered. If such an instruction is encountered, a next available packet is selected and processed instead of wasting processing cycles during the stall, or proceeding with the processing of the current packet based on a predicted result. The sub-processor resumes processing of the packet once the stall is over.
A packet processor, comprising:
A packet processor, comprising:
A packet processor including a plurality of logic blocks, each logic block comprising:
A packet processor including a plurality of logic blocks, each logic block comprising:
A pipelined processor comprising a plurality of logic blocks, a first logic block for performing a first operation on a first processing instruction associated with a first packet and forwarding the first processing instruction to a second logic block for performing a second operation, the first logic block receiving a second processing instruction associated with a second packet if a potential stall is expected in processing the first processing instruction, the first logic block performing the first operation on the second processing instruction concurrently with the second operation on the first processing instruction.
A method for processing packets in a packet processor including a first logic block for performing one or more processing operations on packet data and a second logic block for performing one or more processing operations on packet data in response to packet data output from said first logic block, the method comprising the steps of:
A method for processing packets in a packet processor including a first logic block operative for performing one or more processing operations on packet data and a second logic block for performing one or more processing operations on packet data in response to packet data output from said first logic block, the method comprising the steps of:
A method for processing packets in a packet processor including a first logic block and a second logic block, the method comprising the steps of:
A method for processing packets in a packet processor including a first logic block and a second logic block, the method comprising the steps of:
A method for processing packets in a pipelined processor having a plurality of logic blocks, the method comprising the steps of:
Dependencies are inferred from the claim text.