System and method for encoding instruction fields within data packets
First Claim
1. A system for manipulating data packets comprising:
- logic adapted to receive one or more input data packets, wherein the logic is operable to include a non-routing instruction field comprising non-routing instructions within the one or more input data packets to produce instruction encoded packets, wherein said instruction encoded packets include said non-routing instruction field comprising non-routing instructions and a data field comprising data;
a data bus for communicating data;
one or more processors coupled to the data bus, wherein said one or more processors comprise;
parsing logic including an input coupled to receive an instruction encoded packet, wherein said parsing logic operates to extract said non-routing instructions from said non-routing instruction field comprised in said instruction encoded packet and output said non-routing instructions;
an instruction buffer coupled to receive said non-routing instructions from said parsing logic;
a processor block coupled to the instruction buffer which is operable to read said non-routing instructions from said instruction buffer and execute said non-routing instructions to operate on said data comprised in said instruction encoded packet, andwherein each of the one or more processors operate to exchange said instruction encoded packets,wherein the one or more of the processors are operable to execute instructions from said instruction field comprised in said instruction encoded packets.
3 Assignments
0 Petitions
Accused Products
Abstract
A communication system which includes more efficient packet conversion and routing for improved performance and simplified operation. The present invention includes an improved method for converting data packets between a plurality of different packet formats using a pre-defined generic packet format for simplified conversions. In order to perform a packet conversion, the method first converts a data packet having a first packet format to a the pre-defined generic packet format. The method then converts the data packet having the predefined generic packet format to a desired second different packet format. The method is thus operable to convert a data packet having any of a plurality of possible packet format types to the pre-defined generic packet format, and to convert a data packet having the pre-defined generic packet format to a data packet having any of the plurality of possible packet format types. The present invention also includes a system comprising a plurality of processors which operate to exchange packets in a common format, such as the generic format described above. In this embodiment, the system includes an instruction field comprising instructions within each of the data packets to produce instruction encoded packets. Each of the plurality of processors operate to exchange the instruction encoded packets in the common format. Each of the plurality of processors are operable to include instructions in an instruction field of a packet and to execute instructions from the instruction field comprised in the instruction encoded packets. The instructions may direct a processor to perform operations on data comprised in the instruction encoded packets or perform routing operations on the instruction encoded packets.
128 Citations
25 Claims
-
1. A system for manipulating data packets comprising:
-
logic adapted to receive one or more input data packets, wherein the logic is operable to include a non-routing instruction field comprising non-routing instructions within the one or more input data packets to produce instruction encoded packets, wherein said instruction encoded packets include said non-routing instruction field comprising non-routing instructions and a data field comprising data; a data bus for communicating data; one or more processors coupled to the data bus, wherein said one or more processors comprise; parsing logic including an input coupled to receive an instruction encoded packet, wherein said parsing logic operates to extract said non-routing instructions from said non-routing instruction field comprised in said instruction encoded packet and output said non-routing instructions; an instruction buffer coupled to receive said non-routing instructions from said parsing logic; a processor block coupled to the instruction buffer which is operable to read said non-routing instructions from said instruction buffer and execute said non-routing instructions to operate on said data comprised in said instruction encoded packet, and wherein each of the one or more processors operate to exchange said instruction encoded packets, wherein the one or more of the processors are operable to execute instructions from said instruction field comprised in said instruction encoded packets. - View Dependent Claims (2, 3, 4, 5, 6, 7, 16)
-
-
8. A system for manipulating data packets comprising:
-
a data bus for communicating data; a plurality of processors coupled to the data bus, wherein at least one of the processors is operable to receive one or more input data packets, wherein the at least one of the processors is operable to include a non-routing instruction field comprising non-routing instructions within the one or more input data packets to produce instruction encoded packets, wherein said instruction encoded packets include a non-routing instruction field comprising non-routing instructions and a data field comprising data, wherein each of the plurality of processors are operable to exchange said instruction encoded packets, wherein each of the plurality of processors are operable to execute instructions from said non-routing instruction field comprised in said instruction encoded packets; and wherein said plurality of processors each comprise; parsing logic including an input coupled to receive an instruction encoded packet, wherein said parsing logic operates to extract said non-routing instructions from said non-routing instruction field comprised in said instruction encoded packet and output said non-routing instructions; an instruction buffer coupled to receive said non-routing instructions from said parsing logic; and a processor block coupled to the instruction buffer which is operable to read said non-routing instructions from said instruction buffer and execute said non-routing instructions to operate on said data comprised in said instruction encoded packet. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 17)
-
-
18. A system for manipulating data packets comprising:
-
logic adapted to receive one or more input data packets, wherein the logic is operable to include a non-routing instruction field comprising non-routing instructions within the one or more input data packets to produce instruction encoded packets, wherein said instruction encoded packets include said non-routing instruction field comprising non-routing instructions and a data field comprising data; a data bus for communicating data; one or more processors coupled to the data bus, wherein said one or more processors comprise; parsing logic including an input coupled to receive an instruction encoded packet, wherein said parsing logic operates to extract said non-routing instructions from said non-routing instruction field comprised in said instruction encoded packet and output said non-routing instructions, wherein said parsing logic operates to extract said data from said data field comprised in said instruction encoded packet and output said instructions; an instruction buffer coupled to receive said non-routing instructions from said parsing logic; a processor block coupled to the instruction buffer which is operable to read said non-routing instructions from said instruction buffer and execute said non-routing instructions to operate on said data output from said parsing logic, and wherein each of the one or more processors operate to exchange said instruction encoded packets, wherein the one or more of the processors are operable to execute instructions from said instruction field comprised in said instruction encoded packets. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25)
-
Specification