Array disk system and method of writing and reading data in array disk system

Abstract: An array disk system includes a plurality of disk units (1-1 - 1-N+1, DISK1 - DISKN+1) respectively having at least one disk for storing data and a head for writing the data on the disk, a control unit (2, 200) supplied with data for controlling write operations in which the data are simultaneously written to the disk units which are coupled to the control unit in parallel, and a non-volatile memory (4-1 - 4-N+1) for storing data to be written into a defective block of the disk unit. The control unit writes the data into blocks of the disk units when the disk units are free of defective blocks, and writes the data to be written into the defective block of an arbitrary one of the disk units into the non-volatile memory when the arbitrary disk unit includes the defective block. The control unit also has a function of writing the data related to the defective block and stored in the non-volatile memory into the alternate block of the arbitrary disk unit during a free time of the arbitrary disk unit.

Description: BACKGROUND OF THE INVENTION The present invention generally relates to array disk systems, and more particularly to an array disk system which writes data to and reads data from a plurality of disk units in parallel. The present invention also relates to a method of writing and reading data in such an array disk system. In order to cope with the high data processing speeds of recent information processing systems, there is a need to write data to and read data from a disk unit at a high speed. An array disk system shown in FIG.1 was proposed to satisfy this need. This proposed array disk system includes a plurality of magnetic disk units which are coupled in parallel. For example, the array disk system includes N magnetic disk units 10-11 through 10-1N for writing data and one magnetic disk unit 10-1N+1 for writing parity data, and an array disk controller 11. As shown in FIG.2, data DATA1 through DATAN which are transmitted serially from a host unit (not shown) are written into the magnetic disk units 10-11 through 10-1N in parallel by the array disk controller 11. The array disk controller 11 produces the parity data used for carrying out a parity check on the data, and writes the parity data in the magnetic disk unit 10-1N+1. In FIG.1, the host unit regards the N+1 magnetic disk units such as the magnetic disk units 10-11 through 10-1N+1 as one set, and uses a combination of n such sets. According to the array disk system shown in FIG.1, it is possible to write data to and read data from the magnetic disk units at a high speed when compared to the conventional system in which the writing and reading of data are made with respect to a single magnetic disk unit. In FIG.1, it is assumed for the sake of convenience that the array disk controller 11 is coupled to a plurality of input/output channels of the host unit. In the proposed array disk system described above, there are cases where a defective block exists on a magnetic surface of the magnetic disk, and in such cases, data cannot be written into the detective block. The defective block of the magnetic disk is found when making the formatting of the magnetic disk. Hence, the data to be written into the defective block is written in an alternate area which is provided in a secondary area of the same magnetic disk, that is, the so-called alternate area assignment is made. However, when the alternate area assignment is made, mechanical operations such as moving a magnetic head to the alternate area and positioning the magnetic head are required, and it takes time to prepare for the data transfer. As shown in FIG.3, it takes time to make the data transfer corresponding to the alternate area assignment process. In the example shown in FIG.3, it is assumed for the sake of convenience that a second block of a second magnetic disk unit DISK2 is the defective block. In this case, a time T1 is required to move the magnetic head of the second disk unit DISK2 to an alternate area which actually stores the data which should originally be stored in the second block, and a time T2 is required to thereafter move the magnetic head from the alternate area to a third block. In other words, a time T1+T2 is additionally required when the alternate area assignment is made. The time delay caused by the alternate area assignment not only occurs when reading the data from the magnetic disk unit but also when writing the data to the magnetic disk unit. Although the proposed array disk system can transmit the data at a high speed, there is a problem in that it is impossible to bring out the performance of the array disk system to limit when the alternate area assignment is made. For an example of an array disk system with a memory back-up for the writing of data, corresponding to the preamble of claim 1, reference may be made to EP-A-0 073 330. A single disk system provided with a semiconductor memory for accessing data corresponding to invalid portions of the disk is discussed in US-A-4 558 446. Finally, a parallel-access multiple disk storage system without any form of memory back-up is disclosed in EP-A-0 156 724. SUMMARY OF THE INVENTION Accordingly, it is a general object of the present invention to provide a novel and useful array disk system in which the problems described above are eliminated. Another and more specific object of the present invention is to provide an array disk system, as defined in claim 1. According to the array disk system of the present invention, there is no need to move a magnetic head to the alternate block of the disk unit during the normal write operation and no time delay is generated thereby. The present invention also has for object a method of writing data in parallel implementing the above system, as defined in claim 12. Other objects and further features of the present invention will be apparent from the following detailed description when read in conjuction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a system block diagram showing a previously proposed array disk system; FIG. 2 is a diagram for explaining a write operation of the array disk system shown in FIG. 1; FIG. 3 is a time chart for explaining a read operation of the array disk system shown in FIG. 1 when making an alternate area assignment; FIG. 4A is a system block diagram for explaining one aspect of an array disk system according to the present invention; FIG.4B is a flow chart for explaining the array disk system shown in FIG.4A; FIG.5A is a system block diagram for explaining another aspect of the array disk system according to the present invention; FIG.5B is a flow chart for explaining the array disk system shown in FIG.5A; FIG.6 is a system block diagram showing an essential part of an embodiment of the array disk system according to the present invention; FIG.7 is a diagram for explaining contents of a non-volatile memory shown in FIG.6; FIG.8 is a system block diagram showing an essential part of the embodiment for explaining a write operation; FIG.9 is a flow chart for explaining the write operation; FIG.10 is a flow chart for explaining the write operation to an alternate block of a disk unit; FIG.11 is a system block diagram showing an essential part of the embodiment for explaining a read operation; FIG.12 is a flow chart for explaining the read operation; FIG.13 is a time chart for explaining the read operation when a defective block is already registered in a non-volatile memory; and FIG.14 is a time chart for explaining the read operation when a defective block is not registered in the non-volatile memory. DESCRIPTION OF THE PREFERRED EMBODIMENTS First, a description will be given of one aspect of an array disk system according to the present invention, by referring to FIGS.4A and 4B. As shown in FIG.4A, the array disk system includes disk units 1-1 through 1-N+1, an array data controller 2 and non-volatile memories 4-1 through 4-N+1 which are coupled as shown. The array data controller 2 distributes data from a host unit (not shown) in parallel to the disk units 1-1 through 1-N to be written therein. The array data controller 2 includes a parity data producing part 3 for producing parity data with respect to the data which are supplied in parallel to the disk units 1-1 through 1-N, and the parity data are stored in the disk unit 1-N+1. The non-volatile memories 4-1 through 4-N+1 are provided in correspondence with the disk units 1-1 through 1-N+1. FIG.4B is a flow chart for explaining an operation of the array data controller 2 shown in FIG.4A. When a write operation starts, a step ST1 judges whether or not a defective block exists on a recording surface of the disk unit 1-i which is to store the data. When the judgement result in the step ST1 is NO, a step ST2 writes the data to the disk unit 1-i and the process ends. On the other hand, when the judgement result in the step ST1 is YES, a step ST3 writes the data which originally is to be written in the defective block of the disk unit 1-i into the corresponding non-volatile memory 4-i and writes to the disk unit 1-i the data which is to be written in the non-defective block of the disk unit 1-i. Then, a step ST4 judges whether or not the disk unit 1-i is free, and a step ST5 writes the data which orignally is to be written in the defective block of the disk unit 1-i from the non-volatile memory 4-i into an alternate area of the disk unit 1-i during a free time of the disk unit 1-i when the judgement result in the step ST4 becomes YES. The process ends after the step ST5. The process shown in FIG.4A is carried out for i = 1, 2, ..., N, N+1. Accordingly, even when a defective block exists on the recording surface of the disk unit when carrying out a write operation, the data originally to be written into the detective block is temporarily stored in the non-volatile memory. The data stored in the non-volatile memory is written into an alternate area of the disk unit during a free time of the disk unit, so as to prevent the time delay which would occur if the recording head were to move to the alternate area during the normal write operation. Therefore, the high-speed write operation of the array disk system will not be deteriorated by the alternate area assignment. Next, a description will be given of another aspect of an array disk system according to the present invention, by referring to FIGS.5A and 5B. As shown in FIG.5A, the array disk system includes the disk units 1-1 through 1-N+1, the array data controller 2 and the non-volatile memories 4-1 through 4-N+1 which are coupled as shown. The disk units 1-1 through 1-N are already written with the parallel data, and the disk unit 1-N+1 is already written with the parity data. The array data controller 2 includes a data restoration part 5 for restoring data not written in a defective block of a disk unit based on the parity data and the data written in other disk units. The non-volatile memories 4-1 through 4-N+1 are provided in correspondence with the disk units 1-1 through 1-N+1 for storing the data to be stored in defective blocks of the disk units 1-1 through 1-N+1. The array data controller 2 transmits the parallel data read from the disk units 1-1 through 1-N to the host unit (not shown) in the form of serial data. FIG.5B is a flow chart for explaining an operation of the array data controller 2 shown in FIG.5A. When a read operation starts, a step ST11 judges whether or not a defective block exists on a recording surface of the disk unit 1-i from which data is to be read out. When the judgement result in the step ST11 is NO, a step ST12 reads the data from the disk unit 1-i and the process ends. On the other hand, when the judgement result in the step ST11 is YES, a step ST13 judges whether or not the data originally to be stored in the defective block is prestored in the non-volatile memory 4-i. When the judgement result in the step ST13 is YES, a step ST14 reads the data from the non-volatile memory 4-i. On the other hand, when the judgement result in the step ST13 is NO, a step ST15 restores the data not written in the defective block of the disk unit 1-i nor the corresponding non-volatile memory 4-i based on the parity data and the data written in other disk units. The process ends after the step ST14 or ST15. The process shown in FIG.5A is carried out for i = 1, 2, ..., N, N+1. Accordingly, when the data originally to be written in the defective block of the disk unit is prestored in the non-volatile memory, the data can be read out from the non-volatile memory instead of from the alternate area of the disk unit. As a result, it is possible to reduce the time required to carry out the read operation. On the other hand, when the data originally to be written in the defective block of the disk unit is not prestored in the non-volatile memory, the data is restored from other data and parity data written in other disk units. For this reason, no time delay is introduced because there is no need to move the magnetic head to the alternate area of the disk unit, and the high-speed read operation of the array disk system will not be deteriorated by the alternate area assignment. Next, a description will be given of an embodiment of the array disk system according to the present invention which employs an embodiment of a method of writing data in the array disk system according to the present invention. FIG.6 shows an essential part of the embodiment of the array disk system. A director 200 shown in FIG.6 is coupled to a plurality of input/output channels of a host unit (not shown) and a plurality of disk units DISK1 through DISKN+1 (not shown). The director 200 includes a channel interface circuit 21, a channel controller 22, a microprocessor unit (MPU) 23, a control storage 24, an error checking and correction (ECC) circuit 25, a disk interface circuit 26, a circuit 27 including a data correction and restoration part and a parity part, data buffers 28-1 through 28-N+1 respectively including non-volatile memories 29-1 through 29-N+1, and a multiplexer circuit 30 which are coupled as shown. The circuit 27 corresponds to the parity producing part 3 and the data restoration part 5 of the array data controller 2 shown in FIGS.4A and 5A. The disk units DISK1 through DISKN are used for writing data, and the disk unit DISKN+1 is used for writing parity data. The disk units DISK1 through DISKN+1 respectively correspond to the disk units 1-1 through 1-N+1 shown in FIGS.4A and 5A. Similarly as in the case of the array disk system shown in FIG.1, the director 200 converts serial data from the host unit into parallel data and writes the parallel data into the N disk units DISK1 through DISKN simultaneously. The MPU 23 controls the entire operation of the director 200, and the control storage 24 stores programs of the MPU 23. The disk interface circuit 26 supplies the data from the ECC circuit 25 to the disk units DISK1 through DISKN and supplies the parity data to the disk unit DISKN+1. The circuit 27 produces the parity data in the parity part and corrects and restores the data of a defective block in the data correction and restoration part based on the parity data. The data buffers 28-1 through 28-N+1 are provided in correspondence with the disk units DISK1 through DISKN+1. The ECC circuit 25 checks and corrects the error of the data based on ECC data which are added to the data. The non-volatile memories 29-1 through 29-N+1 employ the least recently used (LRU) system. As shown in FIG.7, the non-volatile memory 29-i (i = 1, 2, ..., N+1) includes an LRU information storage area 29a, a pointer storage area 29b and a data storage area 29c. The LRU information storage area 29a stores the LRU information. The pointer storage area 29b stores pointer information related to a disk number, a defective block number and an alternate block number. The data storage area 29c stores the data to be stored in the alternate block. A write operation of the embodiment will now be described with reference to FIGS.8 through 10. FIG.8 shows only a part of the system shown in FIG.6 essential to explain the write operation. For the sake of convenience, it is assumed that data are to be written in blocks 32-1 through 32-N+1 of the respective disk units DISK1 through DISKN+1. When the write operation starts in FIG.9, a step ST21 judges whether or not a next block of the disk unit DISKi is a defective block. When the judgement result in the step ST21 is NO, a step ST22 waits until the writing of data to a present block of the disk unit DISKi ends, and a step ST23 writes the data to the next block. On the other hand, when the judgement result in the step ST21 is YES, a step ST24 judges whether or not an alternate block of the disk unit DISKi is already registered in the non-volatile memory 29-i. When the judgement result in the step ST24 is YES, a step ST25 waits until the writing of data to the present block ends, and a step ST26 writes the data to the alternate block of the disk unit DISKi. FIG.8 shows a case where the block 32-3 of the disk unit DISK3 is defective and the solid line indicates a state where the data intended for the defective block 32-3 is stored in the non-volatile memory 29-3. The other blocks 32-1, 32-2 and 32-4 through 32-N+1 are not defective and the data intended therefor are normally written into these blocks. When the judgement result in the step ST24 is NO, a step ST27 judges whether or not an empty area exists in the non-volatile memory 29-i. When the judgement result in the step ST27 is YES, a step ST28 registers the alternate block of the disk unit DISKi into the non-volatile memory 29-i and the process advances to the step ST25 described above. On the other hand, when the judgement result in the step ST27 is NO, a step ST29 waits until the writing of data to the present block of the disk unit DISKi ends. Then, a step ST30 moves a magnetic head H to the alternate block of the disk unit DISKi and a step ST31 writes the data intended for the defective block into the alternate block of the disk unit DISKi. a step ST32 moves the magnetic head H to a block next to the defective block. After the steps ST23, ST26 and ST32, a step ST33 judges whether or not the write operation is to be ended, that is, there is no more data to be written. The process ends when the judgement result in the step ST33 is YES, but the process returns to the step ST21 when the judgement result in the step ST33 is NO. The process shown in FIG.9 is carried out for i = 1, 2, ..., N+1. FIG.10 shows a routine which is carried out after the alternate block is written in the non-volatile memory 29-i and the MPU 23 is in an idling state. A step ST40 judges whether or not a start request from a high order unit or an interrupt request from a disk unit is received. The start or interrupt process is carried out when the judgement result in the step ST40 is YES. But when the judgement result in the step ST40 is NO, a step ST41 judges whether or not a sufficient empty area exists in the non-volatile memory 29-i. The process returns to the step ST40 when the judgement result in the step ST41 is YES. On the other hand, when the judgement result in the step ST41 becomes NO, a step ST42 selects an alternate block which is registered in the non-volatile memory 29-i, and a step ST43 moves the magnetic head H to the alternate block of the concerned disk unit DISKi. Then, a step ST44 writes the data contents of the selected alternate block stored in the non-volatile memory 29-i into the alternate block of the disk unit DISKi, and a step ST45 erases the selected alternate block registered in the non-volatile memory 29-i so as to make available (empty) area in the non-volatile memory 29-i. The process returns to the step ST40 after the step ST45. FIG.8 shows a case where the contents of the non-volatile memory 29-3 is written into an alternate block 34 of the disk unit DISK3, as indicated by a phantom line. Accordingly, even when the disk unit includes a defective block, no writing of data is made to the alternate block of the disk unit during the write operation with respect to the disk unit. For this reason, there is no need to move the magnetic head to the alternate block during the write operation. There is no need to return the magnetic head from the alternate block to the next block after the writing of the data, since the writing of data to the alternate block does not take place during the write operation with respect to the disk unit. Therefore, the data can be written into the disk units at a high speed even when the alternate block assignment is made. Next, a read operation of the embodiment will be described with reference to FIGS.11 through 14. FIG.11 shows only a part of the system shown in FIG.6 essential to explain the read operation. The data read from the disk unit DISKi is supplied to the disk interface circuit 30 of the director 200. In FIG.11, multiplexer parts 30a and 30b form the multiplexer 30 shown in FIG.6. In addition, data restoration circuits 5a form the data restoration part 5. The circuit 27 shown in FIG.6 includes the data restoration circuits 5a, the multiplexers 30a and 30b, and a buffer register 43. When a read operation starts in FIG.12, a step ST51 judges whether or not a next block of the disk unit DISKi to be read is a defective block. When the judgement result in the step ST51 is NO, a step ST52 waits until the reading of data from a present block of the disk unit DISKi ends, and a step ST53 reads out the data of the next block from the disk unit DISKi. On the other hand, when the judgement result in the step ST51 is YES, a step ST54 judges whether or not an alternate block is already registered in the non-volatile memory 29-i. When the judgement result in the step ST54 is YES, a step ST55 waits until the reading of data from the present block of the disk unit DISKi ends, and a step ST56 reads the data of the next block from the non-volatile memory 29-i. FIG.13 is a time chart for explaining the read operation. In FIG.14, it is assumed for the sake of convenience that a second block of the disk unit DISK2 is a defective block but the alternate block therefor is already registered in the non-volatile memory 29-2. A mark X in FIG.13 indicates the transfer of this defective block from the non-volatile memory 29-2. When the judgement result in the step ST54 is NO, a step ST57 judges whether or not a failure exists in the disk units other than the disk unit DISKi. When the judgement result in the step ST57 is NO, a step ST58 waits until the reading of data from the present block of the disk unit DISKi ends. Then, a step ST59 forcibly generates a read error at the next block, and restores the data of this defective block in the data restoration part 5 based on the data and parity data from the disk units other than the disk unit DISKi. FIG.14 is a time chart for explaining the read operation. In FIG.14, it is assumed for the sake of convenience that a second block of the disk unit DISK2 is a defective block and the alternate block therefor is not registered in the non-volatile memory 29-2. A mark Y in FIG.14 indicates the transfer of this defective block while restoring the data of the defective block from the data and parity data read from the other disk units DISKi and DISK3 through DISKN+i.. When the judgement result in the step ST57 is YES, a step ST60 waits until the reading of data from the present block of the disk unit DISKi ends. A step ST61 moves the magnetic head to the alternate block of the disk unit DISKi, and a step ST62 reads the data from the alternate block of the disk unit DISKi. A step ST63 moves the magnetic head from the alternate block to a next block of the disk unit DISKi. After the steps ST53, ST56, ST59 and ST63, a step ST64 judges whether or not the read operation is to be ended, that is, there is no more data to be read. The process ends when the judgement result in the step ST64 is YES, but the process returns to the step ST51 when the judgement result in the step ST64 is NO. The process shown in FIG.12 is carried out for i = 1, 2, ..., N+1. Accordingly, it is possible to reduce the read-out time when reading the data from the disk unit because the data is read from the non-volatile memory and not the disk unit when the necessary data related to the defective block is prestored in the non-volatile memory. In addition, even when the necessary data related to the defective block is not prestored in the non-volatile memory, the data is not read from the alternate block of the disk unit when no failure exists in the disk units, and there is no need to move the magnetic head to the alternate block. Instead, the data of the defective block is restored based on the data and parity data read from other disk units. Therefore, the data can be read from the disk units at a high speed even when the alternate block assignment is made. In the described embodiment, the magnetic disk units are coupled in parallel in the array disk system. However, the present invention is of course applicable to other array disk systems such as a system which includes a plurality of optical disk units coupled in parallel. In addition, it should be noted that each disk unit actually includes a plurality of disks which are coaxially arranged, and a magnetic head is provided with respect to each recording surface of each disk. Hence, an alternate block for a defective block existing on one recording surface of one disk does not necessarily have to be provided on the same recording surface or the same disk. Moreover, it is of course not essential that a plurality of non-volatile memories are provided in correspondence with the disk units. For example, mutually different memory areas of a single non-volatile memory may be allocated in correspondence with the disk units.

Claims: An array disk system comprising a plurality of disk units (1 - 1 to 1 - N+1, DISK1 to DISKN+1) respectively having at least one disk and means for writing data on the disk, each said at least one disk having a recording surface divided into blocks and including an alternative block for each defective block existing thereon; and control means (2, 200), for controlling write operations, supplied with external data which are sent to said disk units as parallel data, said disk units being coupled to said control means in parallel in correspondance with said parallel data, and memory means (4 - 1 to 4 - N+1) separate from said disk units coupled to said control means (2, 200) for storing data due to be written onto the disks, characterized in that said control means (2, 200) only stores in said memory means data due to be written into defective blocks of the disks, and said control means controls the writing of the data stored in said memory means into the alternative blocks of said disks during a free time when external data are not supplied to said control means. The array disk system as claimed in claim 1, characterized in that said control means (2, 200) receives the data in a serial form and includes means (27) for converting the data into a parallel form, said data in the parallel form being written into said disk units (1 - 1 to 1 - N+1, DISK1 to DISKN+1). The array disk system as claimed in claim 1 or 2, characterized in that said memory means (4 - 1 to 4 - N+1) includes a plurality of non-volatile memories (4 - 1 to 4 - N+1) which are provided in correspondence with said disk units (1 - 1 to 1 - N+1, DISK1 to DISKN+1). The array disk system as claimed in any of claims 1 to 3, characterized in that said control means (2, 200) further includes detecting means for detecting whether or not an empty area exists in said memory means (4 - 1 to 4 - N+1) for storing the data related to said defective block prior to storage thereof. The array disk system as claimed in claim 4, characterized in that said control means (2, 200) further includes writing means coupled to said detecting means for transferring data which is related to an arbitrary defective block and already stored in said memory means (4 - 1 to 4 - N+1) into the alternate block of a corresponding one of said disk units (1 - 1 to 1 - N+1, DISK1 to DISKN+1) when said detecting means detects no empty area in said memory means prior to storing fresh data related to said defective block into said memory means. The array disk system as claimed in claim 5, characterized in that said control means (2, 200) further includes erasing means coupled to said writing means for erasing the data related to said arbitrary defective block from said memory means (4 - 1 to 4 - N+1) after writing the same into said corresponding disk unit by said writing means. The array disk system as claimed in any one of claims 1 to 6, further comprising means for reading data from said disk units, said control means (2, 200) also being coupled to said disk units for controlling read operations in which the data are read from said disk units as parallel data, said memory means (4 - 1 to 4 N+1), being adapted for storing the data from said alternative blocks before starting the read operations from the disk unit, said control means simultaneously reading the data from corresponding blocks of each of said disk units all the while said blocks are not defective, and simultaneously reading the data from said memory means only when the block corresponding to that data is a defective block of an arbitrary one of said disk units and the data of the defective block is stored in said memory means. The array disk system as claimed in claim 7, characterized in that said control means (2, 200) reads the data in a parallel form from said disk units (1 - 1 to 1 - N+1, DISK1 to DISKN+1) and includes means (27) for converting the data into a serial form prior to outputting the data. The array disk system as claimed in claim 7 or 8, characterized in that said memory means (4 - 1 to 4 - N+1) includes a plurality of non-volatile memories which are provided in correspondence with said disk units (1 - 1 to 1 - N+1, DISK1 to DISKN+1). The array disk system as claimed in any of claims 7 to 9, characterized in that said control means (2, 200) includes restoring means for restoring the data of said defective block of said arbitrary disk unit based on the data and parity data read from the disk units other than said arbitrary disk unit when said arbitrary disk unit includes said defective block and the data of the defective block is not already stored in said memory means (4 - 1 to 4 - N+1). The array system as claimed in claim 10, characterized in that said control means (2, 200) further includes detecting means for detecting whether or not a failure exists in said disk units (1 - 1 to 1 - N+1, DISK1 to DISKN+1), and said restoring means is coupled to said detecting means and restores the data of said defective block of said arbitrary disk unit only when no failure exists in said disk units. A method of writing data in parallel in an array disk system which includes a plurality of disk units (1 - 1 to 1- N+1, DISK1 to DISKN+1) respectively having at least one disk and means for writing data on said at least one disk, said at least one disk having a recording surface divided into blocks and including an alternative block for each defective block existing thereon, the data being written into corresponding blocks of said disk units all the while said disk units are free of defective blocks; characterized in that said method further comprises the steps of: writing into memory means (4 - 1 to 4 - N+1), separate from said disk units (1 - 1 to 1-N+1, DISK 1 to DISKN+1), only data due to be written into defective blocks of the disks; and writing the data stored in said memory means into the alternative blocks of said disks during a free time when external data are not supplied to said control means. The method as claimed in claim 12, characterized in that there is further provided the step of converting data received in a serial form into a parallel form, so that said data in the parallel form are written into said disk units (1 - 1 to 1 - N+1, DISK1 to DISKN+1). The method as claimed in claim 12 or 13, characterized in that said memory means (4 - 1 to 4 - N+1) includes a plurality of non-volatile memories (4 - 1 to 4 - N+1) which are provided in correspondence with said disk units (1 - 1 to 1 to N+1, DISK1 to DISKN+1). The method as claimed in any of claims 12 to 14, characterized in that there is further provided the step of detecting whether or not an empty area exists in said memory means (4 - 1 to 4 - N+1) for storing the data related to said defective block prior to storage thereof. The method as claimed in claim 15, characterized in that there is further provided the step of writing data related to an arbitrary defective block and prestored in said memory means (4 - 1 to 4 - N+1) into the alternate block of a corresponding one of said disk units (1 - 1 to 1 - N+1, DISK1 to DISKN+1) when said detecting means detects no empty area in said memory means prior to storing the data related to said defective block into said memory means. The method as claimed in claim 16, characterized in that there is further provided the step of erasing the data related to said arbitrary defective block from said memory means (4 - 1 to 4 - N+1) after writing the same into said corresponding disk unit by said writing means. A method of reading data in parallel from the array disk system of any one of claims 7 to 11, comprising the steps of : storing in memory means (4 - 1 to 4 - N+1) data from said alternative blocks before starting the read operations; reading the data from blocks of said disk units when said disk units are free of defective blocks; and reading the data from said memory means only when the block corresponding to that data is a defective block of an arbitrary one of said disk units and when the data of the defective block exists in said memory means. The method as claimed in claim 18, characterized in that there is further provided the step of converting the data read in a parallel form from said disk units (1 - 1 to 1 - N+1, DISK1 to DISKN+1) into data in a serial form, so that said data in the serial form are output from said array disk system.

Inventors: ISHIBASHI KAZUHIKO, OHYAMA TOMOHISA, ISHIBASHI, KAZUHIKO, OHYAMA, TOMOHISA
Applicants: FUJITSU LTD, FUJITSU LIMITED
Application year: 1990
Main classification: G11B20
IPC codes: G11B20, G06F3, G11C29, G06F11