Disclosed is an apparatus and method for an interface for scheduling the
store-forwarding of back-to-back multi-channel packet fragments. The
apparatus may include a data extraction block, a plurality of data
assemblers, a scheduler, and an output memory. The scheduler may be
configured to operate according to a scheduling policy. The scheduling
policy may include a set of priorities to determine an order of
scheduling writes to the output memory from a plurality of data
assemblers. The scheduling policy may also include selecting one or more
of the plurality of data assemblers having a fill level greater than
twice an input data path width of an input data bus and having no
end-of-packet (EOP) or start-of-packet (SOP) as a first priority,
selecting one or more of the plurality of data assemblers having a fill
level greater than twice the input data path width of the input data bus,
and not covered in the first priority selection, as a second priority,
selecting one or more of the plurality of data assemblers having a fill
level greater than the input data path width of the input data bus, and
not covered in the first and second priority selections, as a third
priority, and selecting one or more of the plurality of data assemblers
having an end-of-packet (EOP) as a fourth priority.