Disk controller having sequential digital logic in a state machine for transferring data between DMA device and disk drive with minimal assistance of the CPU
First Claim
1. A method for transferring data between a host and peripheral storage under the control of a state machine, said host including a central processing unit (CPU), memory means and a direct memory access (DMA) channel coupled to said memory means, said method comprising the steps of:
- receiving data from said host via said DMA channel, said data being received by a state machine;
determining whether escape is enabled and whether said data includes a predetermined escape code using sequential digital logic of said state machine and with minimal assistance from said CPU of said host;
determining that an escape command is present in said data using sequential digital logic of said state machine when escape is enabled and when said data includes a predetermined escape code, and determining that an escape command is not present in said data when escape is disabled;
writing said data to a peripheral storage medium if an escape command is not present in said data under the control of said state machine; and
performing at least one command relative to said peripheral storage if an escape command is present in said data under the control of said state machine.
0 Assignments
0 Petitions
Accused Products
Abstract
A method for transferring data between a host computer and peripheral storage including the steps of: (a) receiving data from the host; (b) determining if an escape command is present in the data; (c) writing the data to the a peripheral storage medium if a escape command is not present in the data; and (d) performing as least one command relative to the peripheral storage if a escape command is present in the data. Also disclosed is a method for controlling a disk drive unit including the steps of: (a) determining on a host computer a current action to be performed with a disk drive unit; (b) formatting a track of a disk engaged with a disk drive unit based upon output data provided by the host computer if the current action is a formatting action; (c) writing a sector on the disk based upon the output data provided by the host computer if the current action is a writing action; and (d) reading a sector of the disk and transferring input information to the host computer if the action is a reading action. Escape codes are used to distinguish "normal" data from "special" data. A disk drive controller of the present invention includes digital logic responsive to a data bus of the host computer and operative to develop a datatype bus based on the data bus, where the datatype bus is operative to specify one of a plurality of data types, and a converter responsive to the data bus and the datatype bus and operative to provide serial data to a disk drive unit mechanism.
-
Citations
32 Claims
-
1. A method for transferring data between a host and peripheral storage under the control of a state machine, said host including a central processing unit (CPU), memory means and a direct memory access (DMA) channel coupled to said memory means, said method comprising the steps of:
-
receiving data from said host via said DMA channel, said data being received by a state machine; determining whether escape is enabled and whether said data includes a predetermined escape code using sequential digital logic of said state machine and with minimal assistance from said CPU of said host; determining that an escape command is present in said data using sequential digital logic of said state machine when escape is enabled and when said data includes a predetermined escape code, and determining that an escape command is not present in said data when escape is disabled; writing said data to a peripheral storage medium if an escape command is not present in said data under the control of said state machine; and performing at least one command relative to said peripheral storage if an escape command is present in said data under the control of said state machine. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for controlling a disk drive unit using a state machine comprising the steps of:
-
(a) determining on a host computer a current action to be performed with a disk drive unit, said host computer including a central processing unit (CPU) coupled to said state machine; (b) formatting a track of a disk engaged with said disk drive unit based upon output data provided by said host computer if said current action is a formatting action, said step of formatting a track including the step of writing a portion of said output data to a sector on said disk, where said output data includes at least one command code preceded by an escape code, wherein said escape code and said command code are processed by sequential digital logic of a state machine located between said host computer and said disk drive unit; (c) writing a sector on said disk based upon output data provided by said host computer via a direct memory access (DMA) channel if said current action is a writing action, a portion of said output data being written to said sector, where said output data includes at least one command code preceded by an escape code, wherein said escape code and said command code are processed by sequential digital logic of said state machine located between said host computer and said disk drive unit with minimal assistance from said CPU; (d) reading input data from a sector of said disk and transferring said input data to said host computer via a direct memory access (DMA) channel if said action is a reading action, said transferring occurring under control of said state machine with minimal assistance from said CPU. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer system with peripheral storage comprising:
-
digital processing means; scratch-pad memory means coupled to said digital processing means; peripheral storage control means coupled to said scratch-pad memory means, said peripheral storage control means being responsive to real data and special data, said peripheral storage control means including sequential digital logic of a state machine which is operative to process escape codes contained in said real data; peripheral storage means coupled to said peripheral storage control means such that data can be transferred between said scratch-pad memory means and said peripheral storage means under control of said peripheral storage control means with minimal assistance from said digital processing means; and process control means operating on said digital processing means for storing data in said scratch-pad memory means, wherein said data includes both said real data and said special data, said special data being preceded by at least one escape code, wherein data derived from said real data may be written to said peripheral storage means by said peripheral storage control means, and wherein data derived from said special data may also be written to said peripheral storage by said peripheral storage control means. - View Dependent Claims (18, 19, 20)
-
-
21. A process for transferring data under control of a state machine between a host computer and a magnetic disk medium comprising the steps of:
-
detecting the existence of a disk command originated by said host computer, said host computer including a central processing unit (CPU) coupled to said state machine; upon the detection of a format disk command, calculating and storing format data to scratch-pad memory and subsequently using said format data to format a track on said disk utilizing sequential digital logic of said state machine to format said track; upon the detection of a write disk command, calculating and storing write data to said scratch pad memory comprising a data header information, a number of bytes of real data, and trailer information, and subsequently using the write data stored in said scratch pad memory to write a sector on said disk, utilizing sequential digital logic of said state machine to write said sector with minimal assistance from said CPU; and upon the detection of a read disk command, transferring a sector of read data from said disk to said scratch pad memory utilizing sequential digital logic of said state machine with minimal assistance from said CPU. - View Dependent Claims (22)
-
-
23. A disk drive controller comprising:
-
sequential digital logic in a state machine responsive to a data bus and other inputs of a host computer, said host computer including a central processing unit (CPU) and a direct memory access (DMA) device, said sequential digital logic being operative to develop a datatype bus based upon data on said data bus and said other inputs, where said datatype bus specifies one of a plurality of data types, said sequential digital logic being operative to process an escape code present on said data bus such that said sequential digital logic serves to assist in controlling a disk drive unit mechanism with minimal assistance from said CPU, said sequential digital logic being further operative to transfer data between said DMA device and said disk drive unit mechanism with minimal assistance from said CPU; a register for combining said data bus and said datatype bus into an expanded bus such that said expanded bus includes said data bus and said datatype bus in parallel; and converter means responsive to said expanded bus, such that said expanded bus serves as an input to said converter means, said converter means being operative to provide serial data developed from said expanded bus to said disk drive unit mechanism. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32)
-
Specification