A shared buffer packet switching device is provided for receiving data
packets via associated ones of a plurality of receive ports, and for
transmitting data packets via associated selected ones of a plurality of
transmit port. The device includes: a shared buffer unit for temporarily
storing at least a portion of each of a plurality of the data packets
received via the receive ports, the shared buffer including a plurality
of word locations each being associated with a shared buffer memory
address value, and having an associated word storage space, the word
storage spaces defining a shared buffer memory width; a tail buffer for
temporarily storing remainder portions of selected ones of the received
data packets, the tail buffer including a plurality of tail buffer
locations each being associated with a tail buffer memory address value,
and an associated tail data storage space, the tail data storage spaces
defining a tail buffer memory width; and a source managing unit for
receiving packets via the input ports, and being operative to store each
of the received packets in selected ones of the word locations and the
tail buffer locations.