Patent ID: 7107343
Filing Date: 2006-09-12
Classification: G06F

Abstract:
1. A method for controlling data transfer between a host and a plurality of storage devices, comprising: receiving first data for storage at a transport master, wherein said first data for storage is addressed to said transport master; receiving said first data for storage at a transport slave, wherein said first data for storage is addressed to said transport master, and wherein said first data for storage is received at said transport master and said transport slave substantially simultaneously, plus or minus an arrival time difference due to a difference in length of a signal line traversed by said first data received at said transport master and the length of a signal line traversed by said first data received at said transport slave; providing from said transport master said first data for storage to a first storage device interface; providing from said transport slave said first data for storage to a second storage device interface, wherein said first data for storage is provided to said first device interface and to said second device interface substantially simultaneously, plus or minus an arrival time difference due to a difference in the length of a signal line traversed by said first data for storage provided to said first storage device interface and the length of a signal line traversed by said first data for storage provided to said second storage device interface, and plus or minus an arrival time difference due to a difference in a processing time of said first data for storage in said transport master and a processing time of said first data for storage in said transport slave; storing said first data for storage on a first storage device; storing said first data for storage on a second storage device; receiving a request for one of said first data and second data at said transport master, wherein said request for data is addressed to said transport master; receiving said request for one of said first data and second data at said transport slave, wherein said request for data is addressed to said transport master; providing from said transport master said request for one of said first data and second data to said first storage device interface; providing from said transport slave said request for one of said first data and second data to said second storage device interface; and in a normal operating mode, retrieving said requested one of said first data and second data from said first storage device and from said second storage device, wherein in said normal operating mode a multiplexer is controlled to connect said first storage device interface to said transport master such that said requested one of said first data and second data from said first storage device is provided to said transport master for delivery to said host and said multiplexer is controlled to not connect said second storage device interface to said transport master such that said requested one of said first data and second data from said second storage device is not provided to said transport master for delivery to said host; and in a failover operating mode, retrieving said requested one of said first and second data from at least said second storage device, wherein in said failover mode said multiplexer is controlled to connect said second storage device interface to said transport master such that said requested one of said first and second data from said second storage device is provided to said transport master and said multiplexer is controlled to not connect said first storage device interface to said transport master wherein any portion of said first and second data retrieved from said first storage device is not provided to said transport master.