← Back to Patent Explorer
US5611056A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for controlling the expansion of connections to a SCSI bus

Assignee: Unisys Corp
•
Filing: 1995-12-04
•
Granted: 1997-03-11
•
Expires: 2015-12-04
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention is useful in a data processing system having a data processor coupled to a SCSI channel disposed for transmitting and receiving data between the data processor and a peripheral storage subsystem. The present invention is a method for controlling a bridge controller that permits expanding the maximum allowable number of disk drives connectable to the SCSI channel. In particular the method comprises the steps of receiving a command from the SCSI channel; initializing queue pointers from a memory in response to the command; determining the command type and setting flags and pointers in response thereto; when the command is a write operation, transferring data from the SCSI channel and storing the data in the memory; selecting a disk drive to receive the data by sending message and command bytes to the disk drive; and, transferring the data from the memory to the selected disk drive. The method of the present invention also includes the steps of transferring data from the disk drive and storing the data in the memory when the command is a read command, selecting a SCSI channel to receive data by sending message bytes to the SCSI channel, and transferring the data from the memory to the selected SCSI channel.

Inventors

  • 👤 Glenn T. Hotchkin

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 20:59
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/38; G06F13/382; G06F13/387

Claims Analysis

Total Claims: 5
Claim 1
Independent Claim 332 words
In a peripheral storage subsystem having a bridge controller for expanding to a maximum allowable number of disk drives connected to a SCSI channel, said bridge controller including a microprocessor coupled to a DMA bus, a buffer memory having control inputs coupled to said DMA bus, a first bus controller coupled between said SCSI channel and said buffer memory and a second bus controller coupled between said buffer memory and said disk drives, a method operating in said microprocessor and said bus controllers executing a program for controlling data flow in said bridge controller comprising the steps of: a. receiving a disk drive identifier and a command from said SCSI channel in said first bus controller; b. initializing queue pointers in said microprocessor in response to said disk drive identifier and said command; c. determining type of said command and setting flags and pointers in said microprocessor in response thereto; d. when said command is a write operation, transferring a write block of data from said SCSI channel and storing said write block of data in said buffer memory; e. disconnecting said bridge controller from said SCSI channel after said write block of data has been stored in said buffer memory; f. in said second bus controller, selecting a disk drive derived from said disk drive identifier to receive said write block of data by sending message and command bytes derived from said command to said disk drive; g. in said second bus controller, transferring said write block of data from said buffer memory to said disk drive selected in step f above; h. disconnecting said bridge controller from said disk drive after status and message bytes are received from said disk drive; i. reconnecting said bridge controller to said SCSI channel after transfer of said write block of data has been completed; j. disconnecting from said SCSI channel after sending status and message bytes to said SCSI channel; and, k. clearing queue flags and performing cleanup operations in said bridge controller.
Claim 2
Dependent Claim 332 words
In a peripheral storage subsystem having a bridge controller for expanding to a maximum allowable number of disk drives connected to a SCSI channel, said bridge controller including a microprocessor coupled to a DMA bus, a buffer memory having control inputs coupled to said DMA bus, a first bus controller coupled between said SCSI channel and said buffer memory and a second bus controller coupled between said buffer memory and said disk drives, a method operating in said microprocessor and said bus controllers executing a program for controlling data flow in said bridge controller comprising the steps of: a. receiving a disk drive identifier and a command from said SCSI channel in said first bus controller; b. initializing queue pointers in said microprocessor in response to said disk drive identifier and said command; c. determining type of said command and setting flags and pointers in said microprocessor in response thereto; d. when said command is a write operation, transferring a write block of data from said SCSI channel and storing said write block of data in said buffer memory; e. disconnecting said bridge controller from said SCSI channel after said write block of data has been stored in said buffer memory; f. in said second bus controller, selecting a disk drive derived from said disk drive identifier to receive said write block of data by sending message and command bytes derived from said command to said disk drive; g. in said second bus controller, transferring said write block of data from said buffer memory to said disk drive selected in step f above; h. disconnecting said bridge controller from said disk drive after status and message bytes are received from said disk drive; i. reconnecting said bridge controller to said SCSI channel after transfer of said write block of data has been completed; j. disconnecting from said SCSI channel after sending status and message bytes to said SCSI channel; and, k. clearing queue flags and performing cleanup operations in said bridge controller.
Claim 3
Dependent Claim 150 words
A method as in claim 1 wherein said command is a read data operation and steps d through j are replaced with the following steps: a. in said second bus controller, selecting a disk drive derived from said disk drive identifier and sending message and command bytes derived from said command to said disk drive; b. transferring a read block of data from said disk drive and storing said read block of data in said buffer memory; c. disconnecting said bridge controller from said disk drive after status and message bytes are received; d. reselecting said SCSI channel for receiving said read block of data by sending message bytes to said SCSI channel; e. transferring said read block of data from said buffer memory to said SCSI channel in said first bus controller; and, f. disconnecting from said SCSI channel after sending said status message bytes to said SCSI channel.
Claim 4
Dependent Claim 474 words
In a peripheral storage subsystem having a bridge controller for expanding to a maximum allowable number of disk drives connected to a SCSI channel, said bridge controller including a microprocessor coupled to a DMA bus, a buffer memory having control inputs coupled to said DMA bus, a first bus controller coupled between said SCSI channel and said buffer memory and a second bus controller coupled between said buffer memory and said disk drives, a method operating in said microprocessor and said bus controllers executing a program for controlling data flow in said bridge controller comprising the steps of: a. receiving a disk drive identifier and a command from said SCSI channel in said first bus controller; b. initializing queue pointers in said microprocessor in response to said disk drive identifier and said command; c. determining type of said command and setting flags and pointers in said microprocessor in response thereto; d. when said command is a write operation, transferring a write block of data from said SCSI channel and storing said write block of data in said buffer memory; e. disconnecting said bridge controller from said SCSI channel after said write block of data has been stored in said memory; f. in said second bus controller, selecting a disk drive derived from said disk drive identifier to receive said write block of data by sending message and command bytes derived from said command to said disk drive; g. in said second bus controller, transferring said write block of data from said memory to said disk drive selected in step e above; h. disconnecting said bridge controller from said disk drive after status and message bytes are received from said disk drive; i. reconnecting said bridge controller to said SCSI channel after transfer of said write block of data has been completed; j. disconnecting from said SCSI channel after sending status and message bytes to said SCSI channel; k. clearing queue flags and performing cleanup operations in said bridge controller; l. when said command is a read data operation, in said second bus controller, selecting a disk drive derived from said disk drive identifier and sending message and command bytes derived from said command to said disk drive; m. transferring a read block of data from said disk drive and storing said read block of data in said buffer memory; n. disconnecting said bridge controller from said disk drive after status and message bytes are received; o. re-selecting said SCSI channel for receiving said read block of data by sending message bytes to said SCSI channel; p. transferring said read block of data from said buffer memory to said SCSI channel in said first bus controller; q. disconnecting from said SCSI channel after sending said status message bytes to said SCSI channel; and, r. clearing queue flags and performing cleanup operations in said bridge controller.
Claim 5
Dependent Claim 474 words
In a peripheral storage subsystem having a bridge controller for expanding to a maximum allowable number of disk drives connected to a SCSI channel, said bridge controller including a microprocessor coupled to a DMA bus, a buffer memory having control inputs coupled to said DMA bus, a first bus controller coupled between said SCSI channel and said buffer memory and a second bus controller coupled between said buffer memory and said disk drives, a method operating in said microprocessor and said bus controllers executing a program for controlling data flow in said bridge controller comprising the steps of: a. receiving a disk drive identifier and a command from said SCSI channel in said first bus controller; b. initializing queue pointers in said microprocessor in response to said disk drive identifier and said command; c. determining type of said command and setting flags and pointers in said microprocessor in response thereto; d. when said command is a write operation, transferring a write block of data from said SCSI channel and storing said write block of data in said buffer memory; e. disconnecting said bridge controller from said SCSI channel after said write block of data has been stored in said memory; f. in said second bus controller, selecting a disk drive derived from said disk drive identifier to receive said write block of data by sending message and command bytes derived from said command to said disk drive; g. in said second bus controller, transferring said write block of data from said memory to said disk drive selected in step e above; h. disconnecting said bridge controller from said disk drive after status and message bytes are received from said disk drive; i. reconnecting said bridge controller to said SCSI channel after transfer of said write block of data has been completed; j. disconnecting from said SCSI channel after sending status and message bytes to said SCSI channel; k. clearing queue flags and performing cleanup operations in said bridge controller; l. when said command is a read data operation, in said second bus controller, selecting a disk drive derived from said disk drive identifier and sending message and command bytes derived from said command to said disk drive; m. transferring a read block of data from said disk drive and storing said read block of data in said buffer memory; n. disconnecting said bridge controller from said disk drive after status and message bytes are received; o. re-selecting said SCSI channel for receiving said read block of data by sending message bytes to said SCSI channel; p. transferring said read block of data from said buffer memory to said SCSI channel in said first bus controller; q. disconnecting from said SCSI channel after sending said status message bytes to said SCSI channel; and, r. clearing queue flags and performing cleanup operations in said bridge controller.

References Cited (Backward Citations)

US4851998A Cited
US5283872A Cited
US5233692A Cited
US5247622A Cited
US5274783A Cited
US5367647A Cited
US5410674A Cited
US5333277A Cited
US5457785A Cited
US5379405A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-03-10 2000-09-09 2001-03-11 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-03-10 2004-09-09 2005-03-11 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-03-10 2008-09-09 2009-03-11 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag