Claims
- 1. A disk storage subsystem for storing data supplied by a disk controller and retrieving data needed by said disk controller, wherein said disk controller specifies a storage location by geometric address information, said disk storage subsystem comprising:
- a volatile storage medium;
- a parallel path;
- a nonvolatile media;
- a control circuit comprising a first port, a second port, a first control line and a second control line, wherein said first port is operatively coupled to said nonvolatile media, said second port is operatively coupled to said parallel path, said first control line is operatively coupled to said volatile storage medium and said second control line is operatively couplable to said disk controller;
- wherein in a first mode of operation, in response to a first control signal from said disk controller, said control circuit stores data received from said disk controller at a location in said volatile storage medium corresponding to geometric address information;
- in a second mode of operation, in response to a second control signal from said disk controller, said control circuit retrieves data from a location in said volatile storage medium corresponding to said geometric address information and provides said retrieved data to said disk controller; and
- further wherein said control circuit can store parallel data received on said parallel path into said nonvolatile media and supply parallel data from said nonvolatile media on said parallel path.
- 2. The disk storage subsystem of claim 1:
- wherein said control circuit copies data stored in said volatile storage medium into said nonvolatile media.
- 3. The disk storage subsystem of claim 2:
- wherein said control circuit does said copying in response to a failure of battery power.
- 4. The disk storage subsystem of claim 3:
- wherein said control circuit copies data from said nonvolatile media into said volatile storage medium on receipt of power after said response to battery power failure.
- 5. The disk storage subsystem of claim 1 wherein said volatile storage medium comprises a DRAM array.
- 6. The disk storage subsystem of claim 1 wherein said parallel path comprises a SCSI data path.
- 7. The disk storage subsystem of claim 1 wherein said nonvolatile media comprises a SCSI hard disk.
- 8. The disk storage subsystem of claim 1 further comprising:
- a serializer/deserializer operatively coupled to said volatile storage medium, to said parallel path, to said control circuit and operatively couplable to said disk controller;
- wherein said serializer/deserializer can (i) receive serial data from said disk controller and provide parallel data on parallel data lines coupled to said volatile storage medium; and (ii) receive parallel data on said parallel data lines and provide a serial data stream to said disk controller;
- wherein in said first mode of operation, said control circuit stores serial data received by said serializer/deserializer; and
- in said second mode of operation, said control circuit provides said retrieved data to said serializer/deserializer and said serializer/deserializer in turn provides said retrieved data as a serial data stream to said disk controller.
- 9. The disk storage subsystem of claim 8 wherein said serializer/deserializer comprises:
- data input/output means having a serial data input line for receiving serial data from said disk controller, a serial data output line for providing serial data to said a disk controller, a serial data path through said data input/output means connecting said serial data input line and said serial data output line, data input/output lines, and a control input line;
- wherein in said first mode of operation, said data input/output means is responsive to control signals on said control input line to receive data on serial data input line and provides output signals on said input/output lines; and
- in said second mode of operation, said data input/output means is responsive to control signals on said control input line to receive data on said data input/output lines and provides serial data on said serial output line.
- 10. The disk storage subsystem of claim 9 wherein said control circuit comprises:
- temporary data storage means, operatively coupled to said data input/output lines of said data input/output means and to said volatile storage medium for receiving data input signals and subsequently generating data output signals, said temporary data storage means having a control input line;
- wherein in said first mode of operation, said data output signals from said data input/output means are provided to said temporary data storage means and in turn, said data output signals from said temporary data storage means are transferred to said volatile storage medium; and
- in said second mode of operation, data signals from said volatile storage medium are provided to said temporary data storage means and in turn, said output signals from said temporary data storage means are provided to said data input/output lines of said data input/output means;
- addressing means, operatively couplable to said disk controller, for generating an address signal for a specified location in said volatile storage medium in response to said geometric address information and a first control signal from such a disk controller;
- data storage control means, operatively coupled to said control input line of said data input/output means, to said control input line of said temporary data storage means, to said volatile storage medium and to said addressing means, for (i) selectively connecting said data output signals of said data input/output means to said temporary data storage means; and (ii) selectively connecting said data output signals of said temporary data storage means to said specified location in said volatile storage medium; and
- data retrieval control means, operatively coupled to said input control line of said means for temporary data storage, to said control input line of said data input/output means, to said volatile storage medium, and to said addressing means, for (i) selectively connecting said temporary data storage means to said specified location in said volatile storage medium and (ii) selectively connecting said temporary data storage means to said data input/output means.
- 11. The disk storage subsystem of claim 10 wherein said addressing means further comprises:
- data receiving means, operatively couplable to said disk controller, for receiving said geometric address information.
- 12. The disk storage subsystem of claim 10 wherein said addressing means further comprises means, operatively coupled to said data receiving means, for translating said geometric addresses to a high order address for a first contiguous region of said volatile storage medium wherein said first contiguous region comprises r contiguous storage locations in said volatile storage medium where r is a first selected integer.
- 13. The disk storage subsystem of claim 12 wherein said data output signals of said data input/output means comprise n-bit words, where n is a second selected integer.
- 14. The disk storage subsystem of claim 13 wherein said addressing means further comprises means, operatively coupled to said translation means, for generating lower order addresses for said first contiguous region of said volatile storage medium, said lower address generating means comprising:
- means for generating addresses for second contiguous regions of said volatile storage medium within said first contiguous region wherein each of said second contiguous regions comprises m contiguous (n+1)-bit words, where m is a third selected integer; and
- means for generating addresses for m contiguous word locations of said volatile storage medium within said second contiguous region wherein said specified location is defined by said high order address and said lower order addresses.
- 15. The disk storage subsystem of claim 14 wherein said operative connection between data input/output lines of said data input/output means, said temporary data storage means and said volatile storage medium comprises a parallel bus.
- 16. The disk storage subsystem of claim 15 further comprising:
- means, operatively coupled to said parallel bus, for generating a parity signal wherein in said first mode of operation, said parallel bus simultaneously provides said data output signals from said means for temporary data storage to said means for generating a parity signal and to said volatile storage medium, and in response to said data output signals, said means for generating a parity signal generates a parity output signal and said parity output signal is provided to said volatile storage medium by said parallel bus.
- 17. The disk storage subsystem of claim 16 wherein said parity output signal is stored in said volatile storage medium as a bit of said (n+1)-bit word.
- 18. The disk storage subsystem of claim 8 wherein said first mode of operation has a substantially zero seek delay time.
- 19. The disk storage subsystem of claim 8 wherein said second mode of operation has a substantially zero seek delay time.
RELATED APPLICATIONS
This application is a continuation of U.S. patent application Ser. No. 07/985,731 entitled "Disk Emulation System" of George B. Tuma, Wade B. Tuma and Robert E. Warne, filed on Dec. 1, 1992, which is a divisional of U.S. patent application Ser. No. 07/753,269, entitled "Disk Emulation System" of George B. Tuma, Wade B. Tuma and Robert E. Warne, filed on Aug. 30, 1991, now U.S. Pat. No. 5,218,691 which is a divisional of U.S. patent application Ser. No. 07/224,530, entitled "Disk Emulation System" of George B. Tuma, Wade B. Tuma and Robert E. Warne, filed on Jul. 26, 1988 which issued as U.S. Pat. No. 5,070,474 on Dec. 3, 1991.
US Referenced Citations (22)
Foreign Referenced Citations (1)
Number |
Date |
Country |
0557723 |
Jan 1987 |
AUX |
Non-Patent Literature Citations (1)
Entry |
IBM Technical Disclosure Bulletin, vol. 27/No. 18, pp. 896-899 (Jun. 1984). |
Divisions (2)
|
Number |
Date |
Country |
Parent |
753269 |
Aug 1991 |
|
Parent |
224530 |
Jul 1988 |
|
Continuations (1)
|
Number |
Date |
Country |
Parent |
985731 |
Dec 1992 |
|