A multi-port adapter and method of operation suitable for use with serial ATA
devices
is disclosed. An adapter includes a switch that receives input from multiple host
devices and an arbiter module for assigning a priority scheme to received commands.
An outstanding request table is implemented as a memory module for storing identifying
information associated with commands received from multiple host devices, and a
free pointers queue is maintained to track slots available in the outstanding request
table. A command tracker state machine decodes incoming requests from hosts, monitors
the execution by these commands by the ATA device, and updates the memory module
to reflect completion of commands. Also disclosed is a storage system including
an adapter of the present invention and ATA storage devices.