Patent ID: 7835397

Claim:
A system for generating a plurality of output frames based on a single input frame, comprising: an input interface configured to receive at least a portion of individual input frame(s); and an output controller configured to: if at least a portion of an input frame is received by the input interface and made available for generating output frames, then receive, for each of the plurality of output frames generated from the input frame, a new header and a control information comprising data indicating a specific location within an input buffer in which specific location at least a portion of the input frame received via the input interface is stored, combine each new header with said at least a portion of the input frame to form output frames; if no input frame is received by the input interface and made available for generating output frames, then in response to a message, command, or indication received via the input controller, receive one or more new headers and combine each of the one or more new headers with a dummy payload to form one or more output frames; wherein the respective new headers are received from a processor included in a multi-processor array comprising a plurality of processors each of at least a subset of which is configured to: when receiving a multicast frame, output multiple headers that are required for multicasting the multicast frame and prohibit other processors in the multi-processor array from outputting headers for other frames they are processing until the processor finished generating all of multiple headers required for multicasting the multicast frame; and wait to begin processing a next frame header until an indication is received that one or more other processors in the multi-processor array have generated all of one or more copies of headers required for one or more frames that the other processors are currently processing.