A pipelined multiple issue architecture for a link layer or protocol layer
packet switch, which processes packets independently and asynchronously,
but reorders them into their original order, thus preserving the original
incoming packet order. Each stage of the pipeline waits for the
immediately previous stage to complete, thus causing the packet switch to
be self-throttling and thus allowing differing protocols and features to
use the same architecture, even if possibly requiring differing processing
times. The multiple issue pipeline is scaleable to greater parallel issue
of packets, and tunable to differing switch engine architectures,
differing interface speeds and widths, and differing clock rates and
buffer sizes. The packet switch comprises a fetch stage, which fetches the
packet header into one of a plurality of fetch caches, a switching stage
comprising a plurality of switch engines, each of which independently and
asychronously reads from corresponding fetch caches, makes switching
decisions, and write to a reorder memory, a reorder engine which reads
from the reorder memory in the packets' original order, and a
post-processing stage, comprising a post-process queue and a post-process
engine, which performs protocol-specific post-processing on the packets.
Un'architettura multipla canalizzata dell'edizione per un interruttore di pacchetto di strato di collegamento o di strato di protocollo, che procede i pacchetti indipendentemente ed asynchronously, ma li riordina nel loro ordine originale, così conservando l'ordine ricevuto originale del pacchetto. Ogni fase della conduttura aspetta la fase immediatamente precedente per completare, così inducendo l'interruttore di pacchetto auto-a strozzare e così permettere che i protocolli e le caratteristiche differenti usino la stessa architettura, anche se possibilmente richiedendo i tempi di lavorazione differenti. La conduttura multipla dell'edizione è scaleable all'emissione parallela più grande dei pacchetti e sintonizzabile alle architetture differenti del motore dell'interruttore, velocità e larghezze differenti dell'interfaccia e tassi di orologio e dimensioni della memoria di transito differenti. L'interruttore di pacchetto contiene una fase di prend, di cui prende l'intestazione del pacchetto in una di una pluralità prendono i nascondigli, una fase di commutazione che contiene una pluralità i motori dell'interruttore, ciascuno di cui indipendentemente ed asychronously legge dal corrispondere prendono i nascondigli, marche che commutano le decisioni e scrivono ad una memoria di riordinazione, ad un motore di riordinazione che indica dalla memoria di riordinazione nell'ordine originale dei pacchetti e ad una fase di post-processing, contenendo una coda di post-process e un motore di post-process, che effettua il post-processing di protocol-specifico sui pacchetti.