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

Disk emulation system

Assignee: Database Excelleration Systems Inc
•
Filing: 1988-07-26
•
Granted: 1991-12-03
•
Expires: 2008-07-26
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Disclosed is a solid state disk emulator system for significantly improving access time, i.e., improving both the seek time and the rotational latency. The disk emulator complies with the SMD interface convention and thus to the central procssor and the SMD disk controller, the disk emulator appears as a disk with virtually a zero access ttime. In one embodiment, the primary systems of the disk emulator are a 66-bit shift register, a parity circuit, a latch circuit, a 66-bit parallel bus and a dynamic random access memory (DRAM) array. Each of these systems interface with control systems of the disk emulator which provide the signals required for the read and write operations of the disk emulator. An error correction process is incorporated in the disk emulator which corrects single bit hard memory errors using only a single parity bit.

Inventors

  • 👤 George B. Tuma
  • 👤 Wade B. Tuma
  • 👤 Robert E. Warne

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-23 14:25
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/08; G06F11/10; G06F11/1008; G06F11/1068; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0866; G06F3/00; G06F3/06; G06F3/0601; G06F3/08; G06F3/0628; G06F3/0662; G06F3/0664

Claims Analysis

Total Claims: 89
Claim 1
Independent Claim 548 words
A data storage subsystem for storing and retrieving data used by a central processor, said subsystem comprising: a disk emulator including a volatile storage medium having data storage locations therein; and disk controller means, operatively connected to said central processor and to said disk emulator, for controlling data storage and retrieval from said disk emulator, wherein; said disk controller means (i) specifies the location within said volatile storage medium where data is to be stored and from which stored data is to be retrieved, by means of geometric address information, (ii) provides to said disk emulator a serial data stream comprised of bits of data to be stored in said volatile storage medium, (iii) accepts stored data from said disk emulator as a serial data stream comprised of bits of data, and (iv) provides control signals to said disk emulator; and said disk emulator further comprises: serializer/deserializer means, operatively coupled to said disk controller means, for (i) receiving said serial data from said disk controller means and providing parallel data on data lines, and (ii) receiving parallel data on said data lines and providing serial data to said disk controller means; temporary data storage means, operatively coupled to said serializer/deserializer data lines 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 a first mode of operation of said disk emulator, said parallel data signals from said serializer/deserializer means, are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to said volatile storage medium; and in a second mode of operation of said disk emulator, data signals from said volatile storage medium are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to the data lines of said serializer/deserializer means; addressing means, operatively coupled to said disk controller means, for generating an address signal for a specified location in said volatile storage medium in response to a first control signal and said geometric address information from said disk controller means; data storage control means, operatively coupled to said disk controller means, to said serializer/deserializer 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 parallel data signals of said serializer/deserializer 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 in response to said address signal and a second control signal from said disk controller means; and data retrieval control means, operatively coupled to said control input line of said temporary data storage means, to said serializer/deserializer means, to said volatile storage medium, to said addressing means, and to said disk controller means, for (i) selectively connecting said temporary data storage means to said specified location in said volatile storage medium in response to the address signal from said addressing means, and (ii) selectively connecting said temporary data storage means to said data lines of said serializer/deserializer means in response to a third control signal from said disk controller means.
Claim 2
Dependent Claim 548 words
A data storage subsystem for storing and retrieving data used by a central processor, said subsystem comprising: a disk emulator including a volatile storage medium having data storage locations therein; and disk controller means, operatively connected to said central processor and to said disk emulator, for controlling data storage and retrieval from said disk emulator, wherein; said disk controller means (i) specifies the location within said volatile storage medium where data is to be stored and from which stored data is to be retrieved, by means of geometric address information, (ii) provides to said disk emulator a serial data stream comprised of bits of data to be stored in said volatile storage medium, (iii) accepts stored data from said disk emulator as a serial data stream comprised of bits of data, and (iv) provides control signals to said disk emulator; and said disk emulator further comprises: serializer/deserializer means, operatively coupled to said disk controller means, for (i) receiving said serial data from said disk controller means and providing parallel data on data lines, and (ii) receiving parallel data on said data lines and providing serial data to said disk controller means; temporary data storage means, operatively coupled to said serializer/deserializer data lines 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 a first mode of operation of said disk emulator, said parallel data signals from said serializer/deserializer means, are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to said volatile storage medium; and in a second mode of operation of said disk emulator, data signals from said volatile storage medium are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to the data lines of said serializer/deserializer means; addressing means, operatively coupled to said disk controller means, for generating an address signal for a specified location in said volatile storage medium in response to a first control signal and said geometric address information from said disk controller means; data storage control means, operatively coupled to said disk controller means, to said serializer/deserializer 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 parallel data signals of said serializer/deserializer 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 in response to said address signal and a second control signal from said disk controller means; and data retrieval control means, operatively coupled to said control input line of said temporary data storage means, to said serializer/deserializer means, to said volatile storage medium, to said addressing means, and to said disk controller means, for (i) selectively connecting said temporary data storage means to said specified location in said volatile storage medium in response to the address signal from said addressing means, and (ii) selectively connecting said temporary data storage means to said data lines of said serializer/deserializer means in response to a third control signal from said disk controller means.
Claim 3
Dependent Claim 27 words
A system as in claim 1 wherein said addressing means further comprises: data receiving means, operatively coupled to said disk controller means, for receiving said geometric addresses.
Claim 4
Dependent Claim 62 words
A system as in claim 2 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.
Claim 5
Dependent Claim 24 words
A system as in claim 3 wherein said parallel data of said serializer/deserializer means comprise n-bit words, where n is a second selected integer.
Claim 6
Dependent Claim 113 words
A system as in claim 4 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.
Claim 7
Dependent Claim 32 words
A system as in claim 5 wherein said operative coupling between said data lines of said serializer/deserializer means, said temporary data storage means, and said volatile storage medium comprises a parallel bus.
Claim 8
Dependent Claim 101 words
A system as in claim 6 wherein said disk emulator further comprises: means, operatively coupled to said parallel bus, for generating a parity signal wherein in said first mode of operation of said disk emulator, 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.
Claim 9
Dependent Claim 25 words
A system as in claim 7 wherein said parity output signal is stored in said volatile storage medium as a bit of said (n+1)-bit word.
Claim 10
Dependent Claim 23 words
A system as in claim 1 wherein said first mode of operation of said disk emulator has a substantially zero seek delay time.
Claim 11
Dependent Claim 23 words
A system as in claim 1 wherein said second mode of operation of said disk emulator has a substantially zero seek delay time.
Claim 12
Dependent Claim 950 words
A data storage subsystem for storing and retrieving data used by a central processor, said subsystem comprising: a disk emulator including a volatile storage medium having data storage locations therein; and disk controller, operatively connected to said central processor and to said disk emulator, to control data storage and retrieval from said disk emulator, wherein; said disk controller means (i) specifies the location within said volatile storage medium where data is to be stored and from which stored data is to be retrieved by means of geometric address information, (ii) provides to said disk emulator a serial data stream comprised of bits of data to be stored in said volatile storage medium, (iii) accepts stored data from said disk emulator as a serial data stream comprised of bits of data, and (iv) provides control signals to said disk emulator wherein said serial data stream comprises sectors, each of said sectors being comprised of sector-specific data and nonsector-specific data; and said disk emulator further comprising: serializer/deserializer means, operatively coupled to said disk controller, for (i) receiving said serial data from said disk controller and providing parallel data on data lines, and (ii) receiving parallel data on said data lines and providing serial data to said disk controller wherein said parallel data comprises an n-bit word, where n is a first selected integer; temporary data storage means, operatively coupled to said serializer/deserializer means data lines, 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 a first mode of operation of said disk emulator, said n-bit word is provided to said temporary data storage means and said data output signals from said temporary data storage means are transferred to said volatile storage medium; and in a second mode of operation of said disk emulator, data signals from said volatile storage medium are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to the data lines of said serializer/deserializer means; parallel bus means comprising said operative coupling between said data lines of said serializer/deserializer means, said temporary data storage means and said volatile storage medium; addressing means, operatively coupled to said disk controller, for generating an address signal for a specified location in said volatile storage medium in response to a first control signal and said geometric address information from said disk controller wherein said addressing means further comprises; data receiving means, operatively coupled to said disk controller, for receiving said geometric address information; means, operatively coupled to said data receiving means, for translating said geometric address information 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 second selected integer; and means for generating lower order addresses for said first contiguous region of said volatile storage medium 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; means, operatively coupled to said parallel bus means, for generating a parity signal, wherein in said first mode of operation of said disk emulator, said parallel bus means simultaneously provides said data output signals from said temporary data storage means 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 means wherein said parity output signal is stored in said volatile storage medium as a bit of sand (n+1)-bit word; data storage control means, operatively coupled to said disk controller, to said serializer/deserializer 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 parallel data signals of said serializer/deserializer 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 in response to said address signal and a second control signal from said disk controller; and data retrieval control means, operatively coupled to said control input line of said temporary data storage means, to said serializer/deserializer means, to said volatile storage medium, to said addressing means and to said disk controller, for (i) selectively connecting said temporary data storage means to said specified location in said volatile storage medium in response to the address signal from said addressing means, and (ii) selectively connecting said temporary data storage means to said serializer/deserializer means data lines in response to a third control signal from said disk controller; and means, operatively coupled to said data storage control means and to said parallel bus means, for selecting sector specific data for storage in said temporary data storage means wherein said parallel data signals from said serializer/deserializer means are provided to said means for selecting sector specific data, and said means for selecting sector specific data, in response to a pattern of parallel data signals from said serializer/deserializer means indicating the initiation of sector specific data, generates an output signal to said data storage control means.
Claim 13
Dependent Claim 950 words
A data storage subsystem for storing and retrieving data used by a central processor, said subsystem comprising: a disk emulator including a volatile storage medium having data storage locations therein; and disk controller, operatively connected to said central processor and to said disk emulator, to control data storage and retrieval from said disk emulator, wherein; said disk controller means (i) specifies the location within said volatile storage medium where data is to be stored and from which stored data is to be retrieved by means of geometric address information, (ii) provides to said disk emulator a serial data stream comprised of bits of data to be stored in said volatile storage medium, (iii) accepts stored data from said disk emulator as a serial data stream comprised of bits of data, and (iv) provides control signals to said disk emulator wherein said serial data stream comprises sectors, each of said sectors being comprised of sector-specific data and nonsector-specific data; and said disk emulator further comprising: serializer/deserializer means, operatively coupled to said disk controller, for (i) receiving said serial data from said disk controller and providing parallel data on data lines, and (ii) receiving parallel data on said data lines and providing serial data to said disk controller wherein said parallel data comprises an n-bit word, where n is a first selected integer; temporary data storage means, operatively coupled to said serializer/deserializer means data lines, 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 a first mode of operation of said disk emulator, said n-bit word is provided to said temporary data storage means and said data output signals from said temporary data storage means are transferred to said volatile storage medium; and in a second mode of operation of said disk emulator, data signals from said volatile storage medium are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to the data lines of said serializer/deserializer means; parallel bus means comprising said operative coupling between said data lines of said serializer/deserializer means, said temporary data storage means and said volatile storage medium; addressing means, operatively coupled to said disk controller, for generating an address signal for a specified location in said volatile storage medium in response to a first control signal and said geometric address information from said disk controller wherein said addressing means further comprises; data receiving means, operatively coupled to said disk controller, for receiving said geometric address information; means, operatively coupled to said data receiving means, for translating said geometric address information 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 second selected integer; and means for generating lower order addresses for said first contiguous region of said volatile storage medium 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; means, operatively coupled to said parallel bus means, for generating a parity signal, wherein in said first mode of operation of said disk emulator, said parallel bus means simultaneously provides said data output signals from said temporary data storage means 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 means wherein said parity output signal is stored in said volatile storage medium as a bit of sand (n+1)-bit word; data storage control means, operatively coupled to said disk controller, to said serializer/deserializer 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 parallel data signals of said serializer/deserializer 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 in response to said address signal and a second control signal from said disk controller; and data retrieval control means, operatively coupled to said control input line of said temporary data storage means, to said serializer/deserializer means, to said volatile storage medium, to said addressing means and to said disk controller, for (i) selectively connecting said temporary data storage means to said specified location in said volatile storage medium in response to the address signal from said addressing means, and (ii) selectively connecting said temporary data storage means to said serializer/deserializer means data lines in response to a third control signal from said disk controller; and means, operatively coupled to said data storage control means and to said parallel bus means, for selecting sector specific data for storage in said temporary data storage means wherein said parallel data signals from said serializer/deserializer means are provided to said means for selecting sector specific data, and said means for selecting sector specific data, in response to a pattern of parallel data signals from said serializer/deserializer means indicating the initiation of sector specific data, generates an output signal to said data storage control means.
Claim 14
Dependent Claim 68 words
A system as in claim 11 wherein said data storage control means, further comprises means, responsive to said output signal of said means for selecting sector specific data, for generating a sequence of control signals to said addressing means, to said serializer/deserializer means, and to said means for temporary data storage so that said sector specific data from said disk controller are stored in said volatile storage medium.
Claim 15
Dependent Claim 63 words
A system as in claim 12, said second mode of operation further comprising said parallel bus means simultaneously providing said data signals retrieved from said volatile storage medium to said temporary data storage means and to said means for generating a parity signal and in turn said means for generating a parity signal generates a parity output signal for said retrieved data signals.
Claim 16
Dependent Claim 37 words
A system as in claim 13 wherein said parity generating means generates a parity signal for n-bits of a retrieved (n+1)-bit word wherein n-bits of said retrieved (n+1)-bit word comprise said stored data from said disk controller.
Claim 17
Dependent Claim 36 words
A system as in claim 14 said parallel bus means further comprising a parity line wherein said stored parity signal is retrieved from said volatile storage medium on said parity line of said parallel bus means.
Claim 18
Dependent Claim 60 words
A system as in claim 15 wherein said disk emulator further comprises means, operatively coupled to said parity line and to said parity generating means, for comparing parity signals wherein said parity signal generated for said n-bits of said retrieved word is compared with said retrieved parity signal and an output signal is generated upon said parity signals being different.
Claim 19
Dependent Claim 73 words
A system as in claim 16 wherein said disk emulator further comprises means, operatively coupled to said temporary data storage means, to said data retrieval control means and to said means for comparing parity signals, for error correcting an n-bit word wherein said means for error correcting is activated only upon receipt of said output signal of said means for comparing, and upon activation, said error correcting means corrects said retrieved n-bit word.
Claim 20
Dependent Claim 109 words
A system as in claim 17 wherein said disk emulator further comprises: means, operatively coupled to said serializer/deserializer means and to said data retrieval control means, for generating a nonsector specific serial data stream wherein said data retrieval control means generates a sequence of signals to said addressing means, to said serializer/deserializer means, to said temporary data storage means, and to said means for generating a nonsector specific serial data stream and in turn said serial data stream provided to said disk controller comprises a sector having nonsector specific data provided by said means for generating nonsector specific data and sector specific data retrieved from said volatile storage medium.
Claim 21
Dependent Claim 15 words
A system as in claim 18 wherein said disk controller comprises a SMD disk controller.
Claim 22
Dependent Claim 15 words
A system as in claim 18 wherein said volatile storage medium comprises a DRAM array.
Claim 23
Dependent Claim 23 words
A system as in claim 11 wherein said first mode of operation of said disk emulator has a substantially zero seek delay time.
Claim 24
Dependent Claim 23 words
A system as in claim 11 wherein said second mode of operation of said disk emulator has a substantially zero seek delay time.
Claim 25
Dependent Claim 266 words
A disk emulator for (i) receiving control signals and data from a disk controller and in response thereto storing said data in said disk emulator and (ii) upon request via control signals from such a disk controller providing said stored data to said disk controller, wherein such a disk controller specifies a storage location for the data within said disk emulator by means of geometric address information, and further wherein such a disk controller provides data to and receives data from said disk emulator as a serial data stream, said disk emulator comprising: a volatile storage medium having storage locations; means, operatively couplable to such a disk controller, for receiving serial data from such a disk controller and for providing serial data to such a disk controller; and means, operatively coupled to said volatile storage medium and to said receiving/providing serial data means, for storing and retrieving data; wherein in a first mode of operation, in response to first control signals from such a disk controller, said means for storing and retrieving data stores said received serial data at a location in said volatile storage medium corresponding to said geometric address information; and in a second mode of operation, in response to second control signals from such a disk controller said means for storing and retrieving data retrieves data at a location in said volatile storage medium corresponding to said geometric address information and provides said retrieved data to said receiving/providing serial data means wherein in turn said receiving/providing serial data means provides said retrieved data as a serial data stream to such a disk controller.
Claim 26
Dependent Claim 266 words
A disk emulator for (i) receiving control signals and data from a disk controller and in response thereto storing said data in said disk emulator and (ii) upon request via control signals from such a disk controller providing said stored data to said disk controller, wherein such a disk controller specifies a storage location for the data within said disk emulator by means of geometric address information, and further wherein such a disk controller provides data to and receives data from said disk emulator as a serial data stream, said disk emulator comprising: a volatile storage medium having storage locations; means, operatively couplable to such a disk controller, for receiving serial data from such a disk controller and for providing serial data to such a disk controller; and means, operatively coupled to said volatile storage medium and to said receiving/providing serial data means, for storing and retrieving data; wherein in a first mode of operation, in response to first control signals from such a disk controller, said means for storing and retrieving data stores said received serial data at a location in said volatile storage medium corresponding to said geometric address information; and in a second mode of operation, in response to second control signals from such a disk controller said means for storing and retrieving data retrieves data at a location in said volatile storage medium corresponding to said geometric address information and provides said retrieved data to said receiving/providing serial data means wherein in turn said receiving/providing serial data means provides said retrieved data as a serial data stream to such a disk controller.
Claim 27
Dependent Claim 66 words
A disk emulator as in claim 23 wherein said means for receiving serial data and providing serial data further comprises: serializer/deserializer means for (i) receiving serial data from such a disk controller and providing parallel data on parallel data lines of said serializer/deserializer means and for (ii) receiving parallel data on said parallel data lines and providing a serial data stream to such a disk controller.
Claim 28
Dependent Claim 340 words
A disk emulator as in claim 24 wherein said means for storing and retrieving data further comprises: temporary data storage means, operatively coupled to said serializer/deserializer parallel data lines 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 first mode of operation of said disk emulator, said parallel data from said serializer/deserializer means, are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to said volatile storage medium; and in second mode of operation of said disk emulator, data signals from said volatile storage medium are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to the parallel data lines of said serializer/deserializer means; addressing means, operatively couplable to such a 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 couplable to such a disk controller, and operatively coupled to said serializer/deserializer 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 parallel data signals of said serializer/deserializer 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 control input line of said temporary data storage means, to said serializer/deserializer means, to said volatile storage medium, to said addressing means, operatively couplable to such a disk controller, 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 parallel data lines of said serializer/deserializer means.
Claim 29
Dependent Claim 34 words
A disk emulator as in claim 25 wherein said addressing means further comprises data receiving means, operatively couplable to such a disk controller, for receiving said geometric address information from such a disk controller.
Claim 30
Dependent Claim 64 words
A disk emulator as in claim 26 wherein said addressing means further comprises means, operatively coupled to said data receiving means, for translating said geometric address information 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.
Claim 31
Dependent Claim 25 words
A disk emulator as in claim 27 wherein said parallel data of said serializer/deserializer means comprise n-bit words, where n is a second selected integer.
Claim 32
Dependent Claim 114 words
A disk emulator as in claim 28 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.
Claim 33
Dependent Claim 34 words
A disk emulator as in claim 29 wherein said operative coupling between said parallel data lines of said serializer/deserializer means, said temporary data storage means, and said volatile storage medium comprises a parallel bus.
Claim 34
Dependent Claim 97 words
A disk emulator as in claim 30, further comprising; means, operatively coupled to said parallel bus, for generating a parity signal wherein said first mode of operation of said disk emulator, 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.
Claim 35
Dependent Claim 26 words
A disk emulator as in claim 31 wherein said parity output signal is stored in said volatile storage medium as a bit of said (n+1)-bit word.
Claim 36
Dependent Claim 165 words
A disk emulator as in claim 23 wherein said means for receiving serial data and providing serial data comprises: data input/output means having a serial data input line for receiving serial data from such a disk controller, a serial data output line for providing serial data to such 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 of said disk emulator, said data input/output means being responsive to control signals on said control input line to receive data on serial data input line and to provide output signals on said input/output lines; and in said second mode of operation of said disk emulator, said data input/output means being responsive to control signals on said control input line to receive data on said data input/output lines and to provide serial data on said serial output line.
Claim 37
Dependent Claim 346 words
A disk emulator as in claim 33 wherein said means for storing and retrieving data 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 a first mode of operation of said disk emulator, 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 of said disk emulator, 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 such a 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 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.
Claim 38
Dependent Claim 29 words
A disk emulator as in claim 34 wherein said addressing means further comprises: data receiving means, operatively couplable to such a disk controller, for receiving said geometric address information.
Claim 39
Dependent Claim 64 words
A disk emulator as in claim 35 wherein said addressing means further comprises means, operatively coupled to said data receiving means, for translating said geometric address information 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.
Claim 40
Dependent Claim 27 words
A disk emulator as in claim 36 wherein said data output signals of said data input/output means comprise n-bit words, wherein n is a second selected integer.
Claim 41
Dependent Claim 114 words
A disk emulator as in claim 37 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.
Claim 42
Dependent Claim 34 words
A disk emulator as in claim 38 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.
Claim 43
Dependent Claim 98 words
A disk emulator as in claim 39 further comprising; means, operatively coupled to said parallel bus, for generating a parity signal wherein in said first mode of operation of said disk emulator, 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.
Claim 44
Dependent Claim 26 words
A disk emulator as in claim 40 wherein said parity output signal is stored in said volatile storage medium as a bit of said (n+1)-bit word.
Claim 45
Dependent Claim 24 words
A disk emulator as in claim 23 wherein said first mode of operation of said disk emulator has a substantially zero seek delay time.
Claim 46
Dependent Claim 24 words
A disk emulator as in claim 23 wherein said second mode of operation of said disk emulator has a substantially zero seek delay time.
Claim 47
Dependent Claim 910 words
A disk emulator for (i) receiving control signals and data from a disk controller and in response thereto storing said data in said disk emulator and (ii) upon request via control signals from such a disk controller, providing said stored data to said disk controller, wherein such a disk controller specifies a storage location for the data within said disk emulator by means of geometric address information, and further wherein such a disk controller provides data to and receives data from said disk emulator as a serial data stream, and serial data stream comprises sectors wherein each of said sectors is comprised of sector-specific data and nonsector-specific data, said disk emulator comprising: a volatile storage medium having data storage locations therein; serializer/deserializer means, operatively couplable to such a disk controller, for (i) receiving said serial data from such a disk controller and providing parallel data on parallel data lines of said serializer/deserializer means and (ii) receiving parallel data on said parallel data lines and providing a serial data stream to such a disk controller, wherein said parallel data comprises an n-bit word, where n is a first selected integer; temporary data storage means, operatively coupled to said serializer/deserializer parallel means data lines, 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 a first mode of operation of said disk emulator, said n-bit word is provided to said temporary data storage means and said data output signals from said temporary data storage means are transferred to said volatile storage medium; and in a second mode of operation of said disk emulator, data signals from said volatile storage medium are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to the parallel data lines of said serializer/deserializer means and in turn said serializer/deserializer provides serial data to such a disk controller; parallel bus means comprising said operative coupling between said parallel data lines of said serializer/deserializer means, said temporary data storage means and said volatile storage medium; addressing means, operatively couplable to such a disk controller, for generating an address signal for a specified location in said volatile storage medium in response to a first control signal and said geometric address information from such a disk controller wherein said addressing means further comprises; data receiving means, operatively couplable to such a disk controller, for receiving said geometric address information; means, operatively coupled to said data receiving means, for translating said geometric address information 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 second selected integer; and means for generating lower order addresses for said first contiguous region of said volatile storage medium, said lower order addresses 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; means, operatively coupled to said parallel bus means, for generating a parity signal, wherein in said first mode of operation of said disk emulator, said parallel bus means simultaneously provides said data output signals from said temporary data storage means 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 means wherein said parity output signal is stored in said volatile storage medium as a bit of sand (n+1)-bit word; data storage control means, operatively coupled to said disk controller, to said serializer/deserializer 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 parallel data signals of said serializer/deserializer 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; data retrieval control means, operatively coupled to said control input line of said temporary data storage means, to said serializer/deserializer means, to said volatile storage medium, to said addressing means and operatively couplable to such a disk controller, 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 serializer/deserializer means parallel data lines; and means, operatively coupled to said data storage control means and to said parallel bus means, for selecting sector specific data for storage in said temporary data storage means wherein said parallel data signals from said serializer/deserializer means are provided to said means for selecting sector specific data, and said means for selecting sector specific data, in response to a pattern of parallel data signals from said serializer/deserializer means indicating the initiation of sector specific data, generates an output signal to said data storage control means.
Claim 48
Dependent Claim 910 words
A disk emulator for (i) receiving control signals and data from a disk controller and in response thereto storing said data in said disk emulator and (ii) upon request via control signals from such a disk controller, providing said stored data to said disk controller, wherein such a disk controller specifies a storage location for the data within said disk emulator by means of geometric address information, and further wherein such a disk controller provides data to and receives data from said disk emulator as a serial data stream, and serial data stream comprises sectors wherein each of said sectors is comprised of sector-specific data and nonsector-specific data, said disk emulator comprising: a volatile storage medium having data storage locations therein; serializer/deserializer means, operatively couplable to such a disk controller, for (i) receiving said serial data from such a disk controller and providing parallel data on parallel data lines of said serializer/deserializer means and (ii) receiving parallel data on said parallel data lines and providing a serial data stream to such a disk controller, wherein said parallel data comprises an n-bit word, where n is a first selected integer; temporary data storage means, operatively coupled to said serializer/deserializer parallel means data lines, 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 a first mode of operation of said disk emulator, said n-bit word is provided to said temporary data storage means and said data output signals from said temporary data storage means are transferred to said volatile storage medium; and in a second mode of operation of said disk emulator, data signals from said volatile storage medium are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to the parallel data lines of said serializer/deserializer means and in turn said serializer/deserializer provides serial data to such a disk controller; parallel bus means comprising said operative coupling between said parallel data lines of said serializer/deserializer means, said temporary data storage means and said volatile storage medium; addressing means, operatively couplable to such a disk controller, for generating an address signal for a specified location in said volatile storage medium in response to a first control signal and said geometric address information from such a disk controller wherein said addressing means further comprises; data receiving means, operatively couplable to such a disk controller, for receiving said geometric address information; means, operatively coupled to said data receiving means, for translating said geometric address information 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 second selected integer; and means for generating lower order addresses for said first contiguous region of said volatile storage medium, said lower order addresses 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; means, operatively coupled to said parallel bus means, for generating a parity signal, wherein in said first mode of operation of said disk emulator, said parallel bus means simultaneously provides said data output signals from said temporary data storage means 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 means wherein said parity output signal is stored in said volatile storage medium as a bit of sand (n+1)-bit word; data storage control means, operatively coupled to said disk controller, to said serializer/deserializer 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 parallel data signals of said serializer/deserializer 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; data retrieval control means, operatively coupled to said control input line of said temporary data storage means, to said serializer/deserializer means, to said volatile storage medium, to said addressing means and operatively couplable to such a disk controller, 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 serializer/deserializer means parallel data lines; and means, operatively coupled to said data storage control means and to said parallel bus means, for selecting sector specific data for storage in said temporary data storage means wherein said parallel data signals from said serializer/deserializer means are provided to said means for selecting sector specific data, and said means for selecting sector specific data, in response to a pattern of parallel data signals from said serializer/deserializer means indicating the initiation of sector specific data, generates an output signal to said data storage control means.
Claim 49
Dependent Claim 70 words
A disk emulator as in claim 44 wherein said data storage control means further comprises means, responsive to said output signal of said means for selecting sector specific data, for generating a sequence of control signals to said addressing means, to said serializer/deserializer means, and to said means for temporary data storage so that said sector specific data from such a disk controller are stored in said volatile storage medium.
Claim 50
Dependent Claim 64 words
A disk emulator as in claim 45, said second mode of operation further comprising said parallel bus means simultaneously providing said data signals retrieved from said volatile storage medium to said temporary data storage means and to said means for generating a parity signal and in turn said means for generating a parity signal generates a parity output signal for said retrieved data signals.
Claim 51
Dependent Claim 38 words
A disk emulator as in claim 46 wherein said parity generating means generates a parity signal for n-bits of a retrieved (n+1)-bit word wherein n-bits of said retrieved (n+1)-bit word comprise said stored data from said disk controller.
Claim 52
Dependent Claim 37 words
A disk emulator as in claim 47 said parallel bus means further comprising a parity line wherein said stored parity signal is retrieved from said volatile storage medium on said parity line of said parallel bus means.
Claim 53
Dependent Claim 57 words
A disk emulator as in claim 48 further comprising means, operatively coupled to said parity line and to said parity generating means, for comparing parity signals wherein said parity signal generated for said n-bits of said retrieved word is compared with said retrieved parity signal and an output signal is generated upon said parity signals being different.
Claim 54
Dependent Claim 70 words
A disk emulator as in claim 49 further comprising means, operatively coupled to said temporary data storage means, to said data retrieval control means and to said means for comparing parity signals, for error correcting an n-bit word wherein said means for error correcting is activated only upon receipt of said output signal of said means for comparing, and upon activation, said error correcting means corrects said retrieved n-bit word.
Claim 55
Dependent Claim 107 words
A disk emulator as in claim 50 further comprising: means, operatively coupled to said serializer/deserializer means and to said data retrieval control means, for generating a nonsector specific serial data stream wherein said data retrieval control means generates a sequence of signals to said addressing means, to said serializer/deserializer means, to said temporary data storage means, and to said means for generating a nonsector specific serial data stream and in turn said serial data stream provided to such a disk controller comprises a sector having nonsector specific data provided by said means for generating nonsector specific data and sector specific data retrieved from said volatile storage medium.
Claim 56
Dependent Claim 17 words
A disk emulator as in claim 51 wherein such a disk controller comprises a SMD disk controller.
Claim 57
Dependent Claim 16 words
A disk emulator as in claim 51 wherein said volatile storage medium comprises a DRAM array.
Claim 58
Dependent Claim 24 words
A disk emulator as in claim 44 wherein said first mode of operation of said disk emulator has a substantially zero seek delay time.
Claim 59
Dependent Claim 24 words
A disk emulator as in claim 44 wherein said second mode of operation of said disk emulator has a substantially zero seek delay time.
Claim 60
Dependent Claim 1007 words
A disk emulator for (i) receiving control signals and data from a disk controller and in response thereto storing said data in said disk emulator and (ii) upon request via control signals from such a disk controller, providing said stored data to said disk controller, wherein such a disk controller specifies a storage location for the data within said disk emulator by means of geometric address information, and further wherein such a disk controller provides data to and receives data from said disk emulator as a serial data stream, and serial data stream comprises sectors wherein each of said sectors is composed of sector-specific data and nonsector-specific data, said disk emulator comprising: a volatile storage medium having data storage locations therein; data input/output means having a serial data input line for receiving serial data from such a disk controller, a serial data output line for providing serial data to such 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 a first mode of operation of said disk emulator, said data input/output means being responsive to control signals on said control input line to receive data on said serial data input line and to provide output signals on said input/output lines, said output signals comprising n-bit words, where n is a first selected integer; and in a second mode of operation of said disk emulator, said data input/output means being responsive to control signals on said control input line to receive data on said data input/output lines and to provide serial data on said serial output line; 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 a first mode of operation of said disk emulator, said n-bit word is 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 a second mode of operation of said disk emulator, data signals from said volatile storage medium are provided to said temporary data storage means and in turn, said data output signals from said temporary data storage means are provided to the data input/output lines of said data input/output means; parallel bus means comprising said operative coupling between said data input/output lines of said data input/output means, said temporary data storage means and said volatile storage medium; addressing means, operatively couplable to such a disk controller, for generating an address signal for a specified location in said volatile storage medium in response to a first control signal and said geometric address information from said disk controller wherein said addressing means further comprises: data receiving means, operatively couplable to such a disk controller, for receiving said geometric address information; means, operatively coupled to said data receiving means, for translating said geometric address information 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 second selected integer; and means for generating lower order addresses for said first contiguous region of said volatile storage medium, said lower order addresses 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; means, operatively coupled to said parallel bus means, for generating a parity signal, wherein in said first mode of operation of said disk emulator, said parallel bus means simultaneously provides said data output signals from said temporary data storage means 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 means wherein said parity output signal is stored in said volatile storage medium as a bit of sand (n+1)-bit word; data storage control means, operatively coupled to said disk controller, to said control input line of said 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; data retrieval control means, operatively coupled to said control input line of said temporary data storage means, to said control input line of said data input/output means, to said volatile storage medium, 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 lines of said data input/output means; and means, operatively coupled to said data storage control means and to said parallel bus means, for selecting sector specific data for storage in said temporary data storage means wherein said data output signals from said data input/output means are provided to said means for selecting sector specific data, and said means for selecting sector specific data, in response to a pattern of parallel data output signals from said data input/output means indicating the initiation of sector specific data, generates an output signal to said data storage control means.
Claim 61
Dependent Claim 1007 words
A disk emulator for (i) receiving control signals and data from a disk controller and in response thereto storing said data in said disk emulator and (ii) upon request via control signals from such a disk controller, providing said stored data to said disk controller, wherein such a disk controller specifies a storage location for the data within said disk emulator by means of geometric address information, and further wherein such a disk controller provides data to and receives data from said disk emulator as a serial data stream, and serial data stream comprises sectors wherein each of said sectors is composed of sector-specific data and nonsector-specific data, said disk emulator comprising: a volatile storage medium having data storage locations therein; data input/output means having a serial data input line for receiving serial data from such a disk controller, a serial data output line for providing serial data to such 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 a first mode of operation of said disk emulator, said data input/output means being responsive to control signals on said control input line to receive data on said serial data input line and to provide output signals on said input/output lines, said output signals comprising n-bit words, where n is a first selected integer; and in a second mode of operation of said disk emulator, said data input/output means being responsive to control signals on said control input line to receive data on said data input/output lines and to provide serial data on said serial output line; 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 a first mode of operation of said disk emulator, said n-bit word is 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 a second mode of operation of said disk emulator, data signals from said volatile storage medium are provided to said temporary data storage means and in turn, said data output signals from said temporary data storage means are provided to the data input/output lines of said data input/output means; parallel bus means comprising said operative coupling between said data input/output lines of said data input/output means, said temporary data storage means and said volatile storage medium; addressing means, operatively couplable to such a disk controller, for generating an address signal for a specified location in said volatile storage medium in response to a first control signal and said geometric address information from said disk controller wherein said addressing means further comprises: data receiving means, operatively couplable to such a disk controller, for receiving said geometric address information; means, operatively coupled to said data receiving means, for translating said geometric address information 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 second selected integer; and means for generating lower order addresses for said first contiguous region of said volatile storage medium, said lower order addresses 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; means, operatively coupled to said parallel bus means, for generating a parity signal, wherein in said first mode of operation of said disk emulator, said parallel bus means simultaneously provides said data output signals from said temporary data storage means 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 means wherein said parity output signal is stored in said volatile storage medium as a bit of sand (n+1)-bit word; data storage control means, operatively coupled to said disk controller, to said control input line of said 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; data retrieval control means, operatively coupled to said control input line of said temporary data storage means, to said control input line of said data input/output means, to said volatile storage medium, 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 lines of said data input/output means; and means, operatively coupled to said data storage control means and to said parallel bus means, for selecting sector specific data for storage in said temporary data storage means wherein said data output signals from said data input/output means are provided to said means for selecting sector specific data, and said means for selecting sector specific data, in response to a pattern of parallel data output signals from said data input/output means indicating the initiation of sector specific data, generates an output signal to said data storage control means.
Claim 62
Dependent Claim 71 words
A disk emulator as in claim 56 wherein said data storage control means further comprises means, responsive to said output signal of said means for selecting sector specific data, for generating a sequence of control signals to said addressing means, to said data input/output means, and to said means for temporary data storage so that said sector specific data from such a disk controller are stored in said volatile storage medium.
Claim 63
Dependent Claim 64 words
A disk emulator as in claim 57, said second mode of operation further comprising said parallel bus means simultaneously providing said data signals retrieved from said volatile storage medium to said temporary data storage means and to said means for generating a parity signal and in turn said means for generating a parity signal generates a parity output signal for said retrieved data signals.
Claim 64
Dependent Claim 38 words
A disk emulator as in claim 58 wherein said parity generating means generates a parity signal for n-bits of a retrieved (n+1)-bit word wherein n-bits of said retrieved (n+1)-bit word comprise said stored data from said disk controller.
Claim 65
Dependent Claim 37 words
A disk emulator as in claim 59 said parallel bus means further comprising a parity line wherein said stored parity signal is retrieved from said volatile storage medium on said parity line of said parallel bus means.
Claim 66
Dependent Claim 57 words
A disk emulator as in claim 60 further comprising means, operatively coupled to said parity line and to said parity generating means, for comparing parity signals wherein said parity signal generated for said n-bits of said retrieved word is compared with said retrieved parity signal and an output signal is generated upon said parity signals being different.
Claim 67
Dependent Claim 70 words
A disk emulator as in claim 61 further comprising means, operatively coupled to said temporary data storage means, to said data retrieval control means and to said means for comparing parity signals, for error correcting an n-bit word wherein said means for error correcting is activated only upon receipt of said output signal of said means for comparing, and upon activation, said error correcting means corrects said retrieved n-bit word.
Claim 68
Dependent Claim 109 words
A disk emulator as in claim 62 further comprising: means, operatively coupled to said data input/output means and to said data retrieval control means, for generating a nonsector specific serial data stream wherein said data retrieval control means generates a sequence of signals to said addressing means, to said data input/output means, to said temporary data storage means, and to said means for generating a nonsector specific serial data stream and in turn said serial data stream provided to such a disk controller comprises a sector having nonsector specific data provided by said means for generating nonsector specific data and sector specific data retrieved from said volatile storage medium.
Claim 69
Dependent Claim 17 words
A disk emulator as in claim 63 wherein such a disk controller comprises a SMD disk controller.
Claim 70
Dependent Claim 16 words
A disk emulator as in claim 63 wherein said volatile storage medium comprises a DRAM array.
Claim 71
Dependent Claim 24 words
A disk emulator as in claim 56 wherein said first mode of operation of said disk emulator has a substantially zero seek delay time.
Claim 72
Dependent Claim 24 words
A disk emulator as in claim 56 wherein said second mode of operation of said disk emulator has a substantially zero seek delay time.
Claim 73
Independent Claim 381 words
A method for improving the access time for retrieving data for a disk controller and storing data from the disk controller wherein the disk controller specifies the location of said data by a geometric address, said method comprising the steps of: providing a volatile storage medium having data storage locations therein; providing serializer/deserializer means for (i) receiving serial data from said disk controller and providing parallel data on data lines and (ii) receiving parallel data on said data lines and providing serial data to said disk controller; providing temporary data storage means for receiving parallel data input signals and subsequently generating parallel output signals, said temporary data storage means having a control input line; generating an address signal for a specified location in said volatile storage medium in response to a first control signal and said geometric address from said disk controller; selectively connecting said data output signals of said temporary data storage means to said specified location in said volatile storage medium wherein said data output signals are stored in said volatile storage medium; selectively connecting said temporary data storage means to said specified location in said volatile storage medium wherein said stored data in said specified location are stored in said temporary data storage means; and selectively connecting said temporary data storage means to said serializer/deserializer means wherein said stored data in said temporary storage means are stored in said serializer/deserializer and in turn provided to said disk controller as serial data; wherein in storing data, said parallel data signals from said serializer/deserializer means are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to said volatile storage medium, said storage of data being performed with substantially zero seek time delay thereby improving the access time for storing data; and in retrieving data, data signals from said volatile storage medium are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to the data lines of said serializer/deserializer means and in turn said serializer/deserializer means provides said retrieved data as a serial data stream to said disk controller, said retrieving of data being performed with substantially zero seek time delay thereby improving the access time for retrieving data.
Claim 74
Independent Claim 381 words
A method for improving the access time for retrieving data for a disk controller and storing data from the disk controller wherein the disk controller specifies the location of said data by a geometric address, said method comprising the steps of: providing a volatile storage medium having data storage locations therein; providing serializer/deserializer means for (i) receiving serial data from said disk controller and providing parallel data on data lines and (ii) receiving parallel data on said data lines and providing serial data to said disk controller; providing temporary data storage means for receiving parallel data input signals and subsequently generating parallel output signals, said temporary data storage means having a control input line; generating an address signal for a specified location in said volatile storage medium in response to a first control signal and said geometric address from said disk controller; selectively connecting said data output signals of said temporary data storage means to said specified location in said volatile storage medium wherein said data output signals are stored in said volatile storage medium; selectively connecting said temporary data storage means to said specified location in said volatile storage medium wherein said stored data in said specified location are stored in said temporary data storage means; and selectively connecting said temporary data storage means to said serializer/deserializer means wherein said stored data in said temporary storage means are stored in said serializer/deserializer and in turn provided to said disk controller as serial data; wherein in storing data, said parallel data signals from said serializer/deserializer means are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to said volatile storage medium, said storage of data being performed with substantially zero seek time delay thereby improving the access time for storing data; and in retrieving data, data signals from said volatile storage medium are provided to said temporary data storage means and said data output signals from said temporary data storage means are provided to the data lines of said serializer/deserializer means and in turn said serializer/deserializer means provides said retrieved data as a serial data stream to said disk controller, said retrieving of data being performed with substantially zero seek time delay thereby improving the access time for retrieving data.
Claim 75
Dependent Claim 57 words
A method as in claim 68 wherein said the step of generating said address signal further comprises translating said geometric address 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 where r is a first selected integer.
Claim 76
Dependent Claim 20 words
A method as in claim 69 wherein said parallel data comprise n-bit words, where n is a second selected integer.
Claim 77
Dependent Claim 81 words
A method as in claim 70 wherein said addressing step further comprises: 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 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.
Claim 78
Dependent Claim 32 words
A method as in claim 71 further comprising the step of providing a parallel bus for coupling together of said serializer/deserializer means, said temporary data storage means and said volatile storage medium.
Claim 79
Dependent Claim 84 words
A method as in claim 72 further comprising the step of; generating a parity signal wherein in said storing of data, said parallel bus simultaneously provides said parallel 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 stored in said volatile storage medium.
Claim 80
Dependent Claim 36 words
A method as in claim 73 wherein said data from said disk controller and said data provided to said disk controller comprise sectors of data and each sector of data includes sector-specific data and nonsector-specific data.
Claim 81
Dependent Claim 24 words
A method as in claim 74 further comprising the step of: selecting only sector specific data for storage in said temporary data storage means.
Claim 82
Dependent Claim 52 words
A method as in claim 75 further comprising the step of: generating a sequence of control signals to said addressing means, to said serializer/deserializer means and to said means for temporary data storage so that said sector specific data in said temporary data storage means are stored in said volatile storage medium.
Claim 83
Dependent Claim 56 words
A method as in claim 76 further comprising the step of: simultaneously providing n-bit word data signals retrieved from said volatile storage medium to said temporary data storage means and to said means for generating a parity signal wherein said means for generating a parity signal generates a parity output signal for said retrieved data signals.
Claim 84
Dependent Claim 21 words
A method as in claim 77 further comprising the steps of retrieving said stored parity signal from said volatile storage medium.
Claim 85
Dependent Claim 39 words
A method as in claim 78 further comprising the step of comparing said parity signal generated for said n-bits of said retrieved word with said retrieved parity signal and generating an output signal upon said parity signals being different.
Claim 86
Dependent Claim 29 words
A method as in claim 79 further comprising the step of error correcting said n-bit retrieved word upon receipt of said output signal of said parity signal comparing step.
Claim 87
Independent Claim 165 words
A method for improving the access time for reading data and writing data by a disk controller wherein the disk controller specifies the location of said data by a head and track geometric address, said method comprising the steps of: issuing, with substantially zero seek time delay, a command to said disk controller indicating that a position, indicated by said head and track geometric addresses from said disk controller, has been located upon receipt of a command from said disk controller indicating the controller is ready to read or write data; converting serial data from said disk controller to n-bit words after receiving a command from said disk controller to write data where n is a selected integer; storing said n-bit words in a volatile storage medium; retrieving stored n-bit words from said volatile storage medium after receiving from said disk controller a command to read data; and converting said retrieved n-bit words to a serial data stream that is provided to said disk controller.
Claim 88
Independent Claim 165 words
A method for improving the access time for reading data and writing data by a disk controller wherein the disk controller specifies the location of said data by a head and track geometric address, said method comprising the steps of: issuing, with substantially zero seek time delay, a command to said disk controller indicating that a position, indicated by said head and track geometric addresses from said disk controller, has been located upon receipt of a command from said disk controller indicating the controller is ready to read or write data; converting serial data from said disk controller to n-bit words after receiving a command from said disk controller to write data where n is a selected integer; storing said n-bit words in a volatile storage medium; retrieving stored n-bit words from said volatile storage medium after receiving from said disk controller a command to read data; and converting said retrieved n-bit words to a serial data stream that is provided to said disk controller.
Claim 89
Dependent Claim 59 words
A method as in claim 81 further comprising, immediately after the command issuing step, the step of: sequentially providing sector by sector to the disk controller a zeroth word of the sector until the disk controller issues one of the write command and the read command wherein the zeroth word for a sector specifies the address of the sector.

References Cited (Backward Citations)

US3891959A Cited
US3863217A Cited
US3891974A Cited
US3887901A Cited
US4467421A Cited
US4527234A Cited
US4630230A Cited
US4642759A Cited
US4617624A Cited
US4727512A Cited
US4780819A Cited
US4789960A Cited
US4849875A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1994-12-02 1995-06-03 1995-12-03 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1998-12-02 1999-06-03 1999-12-03 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2002-12-02 2003-06-03 2003-12-03 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag