JPS6158033A - Disc controller - Google Patents

Disc controller

Info

Publication number
JPS6158033A
JPS6158033A JP18012384A JP18012384A JPS6158033A JP S6158033 A JPS6158033 A JP S6158033A JP 18012384 A JP18012384 A JP 18012384A JP 18012384 A JP18012384 A JP 18012384A JP S6158033 A JPS6158033 A JP S6158033A
Authority
JP
Japan
Prior art keywords
memory
data
disk
write data
buffer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP18012384A
Other languages
Japanese (ja)
Other versions
JPH053612B2 (en
Inventor
Yasushi Karatsu
唐津 靖司
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fuji Electric Co Ltd
Fuji Facom Corp
Original Assignee
Fuji Electric Co Ltd
Fuji Facom Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Electric Co Ltd, Fuji Facom Corp filed Critical Fuji Electric Co Ltd
Priority to JP18012384A priority Critical patent/JPS6158033A/en
Publication of JPS6158033A publication Critical patent/JPS6158033A/en
Publication of JPH053612B2 publication Critical patent/JPH053612B2/ja
Granted legal-status Critical Current

Links

Abstract

PURPOSE:To detect and process an error at data write in a disc controller in a short time without relieving the load from software by using an operation processor to read write data of a disc storage device and collating the data with the write data from the processor stored in a memory. CONSTITUTION:The processor 2 receives a command parameter in a prescribed area of a 2-port memory 401 in a disc controller 4a, generaes an interruption signal to an operation processor 42a, which analyzes it and obtains a non-use block buffer, the information is set to a block selection register 402 and the data of a common memory 3 is fetched into a memory 401. Further, the device 42a writers the data in the memory 401 to a disc device 5, sets status informa tion to the memory 401, informs the end to the device 2, reads the data of the memory 5, compares it with the data of the memory 401, and when they are dissident, the succeeding use is inhibited, other record is assigned, the data in the memory 401 is written to release it.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、マイクロプロセッサを利用したディスク制
御装置にかかわる。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a disk control device using a microprocessor.

〔従来の技術〕[Conventional technology]

この種従来の磁気ディスク制御装置(以下、ディスク制
御装置という)の典型的な例が第5図にブロック構成で
示されている。ここでは、第5図を参照して、処理装置
(CPU)2が磁気ディスク記憶装置(以下、ディスク
装置という)5をアクセス゛する場合について説明する
。まず、CPU2は共通バス1及びバスインタフェース
44を介して、コマンドレジスタ46上に、論理アクセ
ス情報としての、いわゆる高レベルコマンドを設定する
。コマンドレジスタ46にコマンドが設定されると、演
算処理装置(マイクロプロセッサ)42は、割込等によ
り、コマンドが設定されたことを知り、コマンドレジス
タ46の内容を読出してそのコマンドを解析し、その内
容により、DMAコントローラ49の起動やディスクイ
ンタフェース48への物理アクセス情報としての、いわ
ゆる低レベルコマンドの送出等を実施する。このような
処理が終了すると、マイクロプロセッサ42は、ステー
タスレジスタ47に所定のステータス情報をセットして
、割込等により処理が終了したことをCPU2に通知す
る。そこで、CPU2は、バスインタフェース44を介
してステータスレジスタ47を読出してそのステータス
情報により正常終了か異常終了かを知り、一連の処理を
終了する。
A typical example of this type of conventional magnetic disk control device (hereinafter referred to as disk control device) is shown in block configuration in FIG. Here, with reference to FIG. 5, a case will be described in which a processing unit (CPU) 2 accesses a magnetic disk storage device (hereinafter referred to as a disk device) 5. First, the CPU 2 sets a so-called high-level command as logical access information on the command register 46 via the common bus 1 and the bus interface 44. When a command is set in the command register 46, the arithmetic processing unit (microprocessor) 42 learns that the command has been set by an interrupt or the like, reads the contents of the command register 46, analyzes the command, and executes the command. Depending on the content, activation of the DMA controller 49 and sending of so-called low-level commands as physical access information to the disk interface 48 are carried out. When such processing is completed, the microprocessor 42 sets predetermined status information in the status register 47 and notifies the CPU 2 that the processing has been completed by means of an interrupt or the like. Therefore, the CPU 2 reads the status register 47 via the bus interface 44, determines whether the process has ended normally or abnormally based on the status information, and ends the series of processes.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

かかる従来の構成での第1の問題点は、データをディス
ク装置5に書込む場合に生じる。つまり、バッファメモ
リ (FiFo)45に保持されているデータが内部バ
ス41及びディスクインタフェース48を介してディス
ク85に書込まれる場合を考えると、そのデータが正常
に書込まれたか否かは、そのデータを読出したときに初
めて判明することになる。しかし、これでは、正常に書
込まれていないことが判明した時点では、正常なデータ
がないので正規な処理続行が不可能である。
The first problem with such a conventional configuration occurs when data is written to the disk device 5. In other words, if we consider the case where data held in the buffer memory (FiFo) 45 is written to the disk 85 via the internal bus 41 and the disk interface 48, whether or not the data was written normally depends on the This becomes clear only when the data is read. However, in this case, when it is determined that the data has not been written normally, it is impossible to continue normal processing because there is no normal data.

かかる不都合を解決する方法としては、CPU2がディ
スク装置5にデータを書込む場合、ディスク装置5に書
込まれたデータを直ちに読出してチェックすることが考
えられる。しかし、これでは、CPU2のソフトウェア
に負1旦がかかると同時に、ディスク装置5への書込動
作の処理に時間がかかる。
As a method for solving this problem, when the CPU 2 writes data to the disk device 5, it may be possible to immediately read and check the data written to the disk device 5. However, this requires a negative amount of time for the software of the CPU 2, and at the same time, it takes time to process the write operation to the disk device 5.

また、第2の問題は、ECCエラーの修正処理である。The second problem is ECC error correction processing.

ディスク装置5にデータを書込む場合、通常ではデータ
部の最後にECCパターンも書込まれる。そこで、その
データが読出されて、修正可能なECCエラーが見出さ
れた場合、修正すべきデータは、CPUの管理下にある
バッファメモリ内にあり、マイクロプロセッサ42は、
その修正を実行できないので、CPU2がその旨、通知
を受けてデータの修正処理をしなげればならず、CPU
2のソフトウェアに負担がかかるという欠点がある。
When writing data to the disk device 5, an ECC pattern is usually also written at the end of the data section. Then, if that data is read and a correctable ECC error is found, the data to be corrected is in a buffer memory under the control of the CPU, and the microprocessor 42
Since the correction cannot be executed, the CPU 2 must receive a notification to that effect and correct the data;
The disadvantage is that it places a burden on the software in step 2.

〔発明の目的〕[Purpose of the invention]

依って、この発明の主な目的は、ディスク装置へのデー
タ書込時に発生したエラーを、ソフトウェアに負担をか
けることなく、また、処理時間を増大させることなしに
ディスク制御装置内で検出して、その処理の信頼性を向
上させることにある。
Therefore, the main object of the present invention is to detect errors that occur when writing data to a disk device within a disk controller without placing a burden on software or increasing processing time. , the purpose is to improve the reliability of the processing.

また、この発明の別な目的は、ディスク装置のデータを
読出して、修正可能なECCエラーが発生した場合、欠
陥レコードには代替レコードを割当てることによりソフ
トウェアに負担をかげず、かつ、その処理速度を落とさ
ずに処理するディスク制御装置を提供するにある。
Another object of the present invention is to allocate a replacement record to a defective record when a correctable ECC error occurs when reading data from a disk device, thereby reducing the burden on software and speeding up the processing. The object of the present invention is to provide a disk control device that can process data without dropping it.

〔問題点を解決するための手段〕[Means for solving problems]

かかる目的を達成するために、この発明では、処理装置
とディスク記憶装置との間に演算処理装置とメモリとデ
ィスクインタフェースとを備え、そのメモリは、その処
理装置とその演算処理装置とからアクセスされそしてそ
の処理装置から転送された書込みデータを記憶し、その
演算処理装置は、そのディスク記憶装置に転送して記憶
された書込みデータを読出してメモリに記憶されている
書込みデータと照合し、そのディスク記憶装置に記憶さ
れた書込みデータのチェックを行うようにしている。具
体的には、CPUとL’t’を気ディスク装置との間に
おけるデータバッファを、その各ブロックをレコードと
同じ大きさとした複数のブロックからなる2ボートメモ
リでもって構成して、磁気ディスク装置に内蔵している
マイクロプロセッサにより、どのブロックが使用されて
いるかを知ることにより、CPU側からの読込みデータ
を使用されていないブロックに書込むようにするもので
ある。
In order to achieve such an object, the present invention includes an arithmetic processing unit, a memory, and a disk interface between the processing device and the disk storage device, and the memory is accessed by the processing device and the arithmetic processing device. Then, the write data transferred from the processing device is stored, and the arithmetic processing device reads the write data transferred and stored in the disk storage device and compares it with the write data stored in the memory. The write data stored in the storage device is checked. Specifically, the data buffer between the CPU and the magnetic disk drive is configured with a two-boat memory consisting of a plurality of blocks, each block of which is the same size as a record. By knowing which blocks are being used by the microprocessor built into the CPU, data read from the CPU side can be written to blocks that are not being used.

〔作用〕[Effect]

如上のように構成しているために、ディスク装置へのデ
ータ書込み後でも、メモリに書込みデータが保持されて
いて、特に2ボートメモリのブロックに書込まれたデー
タにあっては、これを保有するブロックと空きブロック
とを設けることが可能となる。従って、ディスク制御装
置におけるマイクロプロセッサがアイドル状態となった
時点で、ディスク装置の書込みデータを続出して2ポー
トメモリ上の書込みデータを比較することにより、これ
らの間で照合することが可能となる。その結果、書込み
時でのエラーを検出して流動的に代替レコードを割当て
る等の処理が可能になる。
Due to the above configuration, even after data is written to the disk device, the written data is retained in memory, especially data written to a block of 2-board memory. It becomes possible to provide a block and an empty block. Therefore, when the microprocessor in the disk control device is in an idle state, it is possible to check the data by sequentially outputting write data from the disk device and comparing the write data on the 2-port memory. . As a result, it becomes possible to detect errors during writing and to fluidly allocate alternative records.

〔実施例〕〔Example〕

第1図は本発明の1つの好ましき実施例を示し、ここで
は、前述の従来技術の説明に対応させて、ディスク装置
へのデータ書込み動作について説明する。なお、第1図
において、第5図のものと同一の構成要素には同一の参
照数字が付与され、部分的変更を含むものについては、
aの添字がなされている。
FIG. 1 shows one preferred embodiment of the present invention, and the operation of writing data to a disk device will now be described in correspondence with the description of the prior art described above. In addition, in FIG. 1, the same reference numerals are given to the same components as those in FIG. 5, and those that include partial changes are as follows.
The subscript a is added.

まず、CPU2は、ディスク制御装置4aにコマンドを
発信するに先立ち、例えばディスク装置5のレコードア
ドレス、共通メモリ3のデータが格納されているメモリ
アドレス及び転送レコード数等のコマンドパラメータを
ディスク制御袋Wfj−4rxでの2ポートメモリ40
1の所定の領域に入れ、その後、そのコマンドを2ポー
トメモリ401上のコマンドレジスタ領域に設定する。
First, before transmitting a command to the disk control device 4a, the CPU 2 sends command parameters such as the record address of the disk device 5, the memory address where the data of the common memory 3 is stored, and the number of records to be transferred to the disk control bag Wfj. -2 port memory 40 with 4rx
After that, the command is set in the command register area on the two-port memory 401.

コマンドレジスタ領域にコマンドが設定されると、マイ
クロプロセッサ42aに対して割込み信号が発信される
。従って、マイクロプロセッサ42aは割込み信号の受
信によりコマンドが設定されたことを知り、コマンド及
びコマンドパラメータを解析する。
When a command is set in the command register area, an interrupt signal is sent to the microprocessor 42a. Therefore, microprocessor 42a learns that a command has been set by receiving the interrupt signal and analyzes the command and command parameters.

その結果、マイクロプロセッサ42aはディスクインタ
フェース48に対してシークコマンドを送出すると共に
、メモリ43内に持っているバッファブロックの使用状
態を示すテーブルにより未使用バッファブロックを求め
、ブロック選択レジスター402にその情報を設定し、
共通メモリ3の指定アドレスからのデータをバスインタ
フェース44を介して2ポートメモリ401の指定され
たバッファブロックに取込む。更に、シーク動作が終了
したならば、DMAコントローラ49を起動し、ディス
クインタフェース48に対してディスク装置5へのデー
タ書込みコマンドを送出し、2ポートメモリ401にお
けるバッファブロックのデータをディスク装置5へと凹
込む。この時、2ポートメモリ401からディスク装置
5へのデータ転送と同時に、共通バス1から2ポートメ
モリ401における別な空いているバッファブロックへ
のデータ転送も2ポートメモリ401を時分割として使
用することにより同時に行われる。また、ここでは、書
込みが終了しても、2ポートメモリ401におけるバッ
ファブロックを解除することをせず、書込みデータをそ
のままに保持するものである。このようにして指定レコ
ード数の書込みが終了したならば、マイクロプロセッサ
42aは、2ポートメモリ401上のステータス領域に
ステータス情報を設定し、CPU2に対して処理終了を
通知する割込み信号を送出する。CPU2は、この割込
みの受信に応答して、2ポートメモリ401上のステー
タス情報を読出し、処理状態をチェックし、ディスク装
置5への書込み動作を終了する。
As a result, the microprocessor 42a sends a seek command to the disk interface 48, searches for an unused buffer block from a table showing the usage status of buffer blocks in the memory 43, and stores the information in the block selection register 402. and set
Data from the designated address of the common memory 3 is taken into the designated buffer block of the 2-port memory 401 via the bus interface 44. Furthermore, when the seek operation is completed, the DMA controller 49 is activated, a data write command to the disk device 5 is sent to the disk interface 48, and the data in the buffer block in the 2-port memory 401 is transferred to the disk device 5. dented. At this time, simultaneously with the data transfer from the 2-port memory 401 to the disk device 5, the 2-port memory 401 is also used in a time-sharing manner for data transfer from the common bus 1 to another vacant buffer block in the 2-port memory 401. This is done simultaneously. Further, here, even when writing is completed, the buffer block in the 2-port memory 401 is not released, and the written data is held as is. When writing of the designated number of records is completed in this manner, the microprocessor 42a sets status information in the status area on the 2-port memory 401, and sends an interrupt signal to the CPU 2 to notify the CPU 2 of the end of the process. In response to receiving this interrupt, the CPU 2 reads the status information on the 2-port memory 401, checks the processing status, and ends the write operation to the disk device 5.

その後、マイクロプロセッサ42aは、アイドル状態と
なったところで、先にディスク装置5へと書込んだデー
タを読出して、2ポートメモリ401上の対応する書込
みデータとの比較をする。もしもその比較結果が一致し
たならば、メモリ43内に持っているバッファブロック
の使用状態を示すテーブルでの該当する領域を未使用状
態に書換えて、2ポートメモリ401の8亥当するバッ
ファフ゛ロックを解放する。比較データが一致せずにエ
ラーとなった場合には、ディスク装置5で凹込みの行わ
れたレコードを欠陥レコードとみなして、以後の使用を
禁止するとともに、別の正常なレコードを割当てて、そ
こに2ポートメモリ401上のデータを書込み、その後
、2ボートメモリ401のバッファブロックを解放する
。前述の動作においては、1回の転送レコード数は2ポ
ートメモリ401のバッファブロックの個数より少なく
なければならない。
Thereafter, when the microprocessor 42a enters the idle state, it reads the data previously written to the disk device 5 and compares it with the corresponding written data on the two-port memory 401. If the comparison results match, the corresponding area in the table showing the usage status of buffer blocks in the memory 43 is rewritten to an unused status, and the 8 corresponding buffer blocks in the 2-port memory 401 are transferred. release. If the comparison data does not match and an error occurs, the record that has been dented in the disk device 5 is regarded as a defective record, and its future use is prohibited, and another normal record is allocated. The data on the 2-port memory 401 is written there, and then the buffer block of the 2-port memory 401 is released. In the above operation, the number of records transferred at one time must be less than the number of buffer blocks in the two-port memory 401.

次に、ディスク装置5からのデータ読出し動作について
説明する。まず、CPU2は、書込みの場合と同様に、
ディスク制御装置4aにおける2ボートメモリ401の
コマンドレジスタ領域にコマンドパラメータ及びコマン
ドを設定する。マイクロプロセッサ42aは割込みを通
してそのコマンドレジスタ領域のコマンドを読出してそ
れを解析する。更に、マイクロプロセッサ42aは、コ
マンド解析後に、ディスクインタフェース48に対して
シークコマンド及びレコードの読出しコマンドを送出す
ると共に、DMAコントローラ49を起動し、ディスク
装置5からの読出しデータを2ボートメモリ401の読
出し用バッファブロックの一方のバッファブロックに取
込む。ルコード分のデータを続出してバッファブロック
に取り込んだ後、ECCエラーがなければ、バスインタ
フェース44を起動して、共通メモリ3の指定された領
域へのデータ転送を行う。このデータ転送と同時に、次
のレコードを、2ポートメモリ401のブロックを時分
割として使用して読出し用バ・ソファブロックのもう一
方の領域に取込む。そこで、エラーがなければ、共通メ
モリ3へのデータ転送を開始する。このように、続出し
動作では、2ボートメモリ401における2つのバッフ
ァブロックを交互に使用して、処理速度の低下を防止す
る。
Next, the operation of reading data from the disk device 5 will be explained. First, the CPU 2, as in the case of writing,
Command parameters and commands are set in the command register area of the 2-board memory 401 in the disk controller 4a. Microprocessor 42a reads the command in its command register area through an interrupt and parses it. Furthermore, after analyzing the command, the microprocessor 42a sends a seek command and a record read command to the disk interface 48, and also activates the DMA controller 49 to read the read data from the disk device 5 into the 2-board memory 401. data into one of the two buffer blocks. After the data corresponding to the code is successively fetched into the buffer block, if there is no ECC error, the bus interface 44 is activated and the data is transferred to the designated area of the common memory 3. Simultaneously with this data transfer, the next record is taken into the other area of the reading buffer block using the block of the two-port memory 401 as a time division. Then, if there is no error, data transfer to the common memory 3 is started. In this manner, in the successive output operation, two buffer blocks in the two-vote memory 401 are used alternately to prevent a decrease in processing speed.

もしも、lレコード分のデータがバッファブロックに取
込まれた後にECCエラーが見出されたとすると、マイ
クロプロセッサ42aは2ボートメモリ401をアクセ
スし、エラー箇所の修正を行い、データの修正後に共通
メモリ3へのデータ転送を開始する。指定されたレコー
ド数のデータ転送が終了したならば、マイクロプロセッ
サ42aは2ポートメモリ401のステータス領域にス
テータス情報を設定し、CPU2に割込み信号を送出す
る。CPU2は、この割込み信号に応答して、2ボート
メモリ401のステータス情報を読出し、データ転送の
結果を知って処理を終了する。
If an ECC error is found after one record worth of data has been loaded into the buffer block, the microprocessor 42a accesses the 2-board memory 401, corrects the error location, and after correcting the data, transfers the data to the common memory. Start data transfer to 3. When data transfer for the designated number of records is completed, the microprocessor 42a sets status information in the status area of the 2-port memory 401 and sends an interrupt signal to the CPU 2. In response to this interrupt signal, the CPU 2 reads the status information of the two-board memory 401, learns the result of the data transfer, and ends the process.

次に、主として第2図及び第3図を参照して、マイクロ
プロセッサ42aが2ポートメモリ401のバッファブ
ロックを管理する処理について具体的に説明する。第2
図は、2ポートメモリ401であって、ルーコード(1
セクタ対応、例えば128バイト)を単位に、バッファ
“0”401a、バ・ソファ“1”40 lb 、バッ
ファ″2”401c・・・バッファ“N−2”401−
z、バッファ″N−1″401−+、バッファ″N”4
01n、コマンド領域401x及びステータス領域40
1yとしてパンツ1分割した例を示し、そして第3図は
、そのバッファを管理するために必要なメモリ43内に
含まれている3バイトの情報を示している。これら3バ
イトの制御情報431,432゜433の初期値はすべ
てOである。ここで制御情報431はフラグとして使用
され、制御情報432は次に使用すべきバッファNOを
示し、制御情報433は次にチェックすべきバッファN
Oを示す。
Next, referring mainly to FIGS. 2 and 3, the process by which the microprocessor 42a manages the buffer blocks of the 2-port memory 401 will be specifically described. Second
The figure shows a 2-port memory 401 and a roux code (1
Buffer "0" 401a, buffer "1" 40 lb, buffer "2" 401c, . . . buffer "N-2" 401-
z, buffer "N-1" 401-+, buffer "N" 4
01n, command area 401x and status area 40
An example is shown in which the pants are divided into one piece as 1y, and FIG. 3 shows 3 bytes of information contained in the memory 43 necessary to manage the buffer. The initial values of these 3-byte control information 431, 432, and 433 are all O. Here, the control information 431 is used as a flag, the control information 432 indicates the buffer number to be used next, and the control information 433 indicates the buffer number to be checked next.
Indicates O.

もしも、マイクロプロセッサ42aがコマンドを受信し
て、その解析の結果が、例えば、ディスク装置5への書
込み指令であったとすると、マイクロプロセッサ42.
aは、先ず、第3図の1バイト目の制御情報431のフ
ラグ(データ)をチェックする。ここでは、説明の便宜
上、フラグのデータ″XOI″を1バツフア使用中”に
、そして“XOO”を“バッファ未使用中”にそれぞれ
対応させている。かくして、フラグが“Xoo”ならば
XOI″を設定し、ブロック選択レジスタ402にマイ
クロプロセッサ42aが第3図での2バイト目の制御情
報432のデータを設定する。
If the microprocessor 42a receives a command and the result of its analysis is, for example, a write command to the disk device 5, the microprocessor 42.
First, a checks the flag (data) of the first byte of control information 431 in FIG. Here, for convenience of explanation, flag data "XOI" corresponds to 1 buffer in use, and "XOO" corresponds to "buffer not in use."Thus, if the flag is "Xoo", then the flag data "XOI" corresponds to "1 buffer in use". , and the microprocessor 42a sets the data of the second byte of control information 432 in FIG. 3 in the block selection register 402.

これにより、例えばこの2バイト目のデータ値が0であ
るならば、バスインタフェース44がらは、第2図に示
されているバッファ0がアクセスされることになる。そ
してバッファ0への転送が終了すると、第3図の2バイ
ト目の制御情幸に432のデータを+1して、そのデー
タをブロック選択レジスタ402に設定する。これによ
り、ハスインタフェース44からは第2図のバッファ1
への転送が行われる。この時、第2図のバッファ0のデ
−りは内部バス41へと同時に読出せ、これがディスク
インタフェース48を介してディスク装置5に書込まれ
る。
As a result, if the data value of the second byte is 0, for example, buffer 0 shown in FIG. 2 will be accessed from the bus interface 44. When the transfer to buffer 0 is completed, data 432 is incremented by 1 in the second byte of control information in FIG. As a result, from the lotus interface 44, the buffer 1 in FIG.
The transfer will take place. At this time, the data in buffer 0 in FIG.

如上の動作を繰返して、もしも指定されたレコード分の
データ転送が終了したならば、前述のように、バッファ
Oからのデータはそのまま保持されているので、これら
についてはOから順次そのディスク装置5上のデータと
照合を行う。この場合、1つのバッファについての照合
が終了する毎に、第3図における3ハイド目の制御情報
433のデータを÷1し、その2バイト目の市U卸情幸
艮432のデータと一致したところで処理を終了し、第
3図に示す3バイトの3つのデータを全てOにクリアす
る。
If the above operation is repeated and the data transfer for the specified record is completed, as mentioned above, the data from buffer O will be retained as is, so these data will be transferred sequentially from O to the disk device 5. Check with the above data. In this case, each time the verification for one buffer is completed, the data of the control information 433 in the third hide in FIG. By the way, the process is ended and all three data of 3 bytes shown in FIG. 3 are cleared to O.

ところで、第2図に示すバッファの内、バフファO〜バ
ッファN−2を凹込み用バッファとして使用し、バッフ
ァN−1及びバッファNを読出し用バッファとして使用
するものである。読出し用バッフlN−1+ Nのバッ
ファ管理としては、2つのバ・ノファに対応して使用中
か否かを示すフラグを持てば良いことになる。
By the way, among the buffers shown in FIG. 2, buffers O through N-2 are used as buffers for recessing, and buffers N-1 and N-1 are used as buffers for reading. To manage the read buffer lN-1+N, it is sufficient to have flags corresponding to the two buffers indicating whether or not they are in use.

第4図には、この発明において使用できる2ポートメモ
リ401の好ましき実施例が示されている。ここでの2
ポートメモリ401は、アドレスバッファ411.41
2と、メモリ制御部413と、RAM414と、そして
データバッファ415゜416とから成っている。RA
M414はメモリ制御部413からの制御信号により時
分割において使用される通常のRAMである。メモリ制
御部413は、バスインタフェース44からの制御信号
(アドレスデコード信号、メモリ読出し信号、メモリ書
込み信号等)428と、そして内部バス41からの制御
信号(RAMのチップセレクト、メモリ読出し、メモリ
書込み信号等)427を受けて優先制御を行い、制御信
号4.29 、430.431を出力してメモリを時分
割において使用する。
FIG. 4 shows a preferred embodiment of a two-port memory 401 that can be used in the present invention. 2 here
The port memory 401 has address buffers 411.41
2, a memory control section 413, a RAM 414, and data buffers 415 and 416. R.A.
M414 is a normal RAM used in time division according to a control signal from the memory control unit 413. The memory control unit 413 receives control signals 428 (address decode signal, memory read signal, memory write signal, etc.) from the bus interface 44 and control signals (RAM chip select, memory read, memory write signals, etc.) from the internal bus 41. etc.) 427, performs priority control, outputs control signals 4.29, 430.431, and uses the memory in a time-sharing manner.

メモリ制御部413からの制御、信号429は、メモリ
アドレス信号423として、アドレスバッファ411の
出力か又は412の出力を選択する。
A control signal 429 from the memory control unit 413 selects the output of the address buffer 411 or 412 as the memory address signal 423.

制御信号430は、データバッファ415又は416の
いずれかを選択すると同時に、データの転送方向を指定
する。制御信号431はメモリ414に対するチップセ
レクト、メモリ書込みストローブ等の制御信号である。
The control signal 430 selects either the data buffer 415 or 416 and also specifies the data transfer direction. The control signal 431 is a control signal for chip select, memory write strobe, etc. for the memory 414.

バッファ選択レジスタ402の出力420は、バスイン
タフェース44からのアドレス信号421に対するベー
スアドレスとなり、メモリ414が第2図に示されてい
るように分割されている場合、どのバッファを選択する
のかを修飾する関係にある。また、バスインタフェース
44からのアドレス信号421はそのバッファ内の相対
アドレスとなっている。従って、CPU2.すなわちバ
スインタフェース44から見てバッファはこの相対アド
レスでアクセスされる1つのバッファとして取扱われ、
1つとしか見えない。従って、CPUZ側のアクセスに
対しては何の影響もない。バスインタフェース44から
メモリ414のコマンド領域及びステータス領域をアク
セスする場合には、ブロック選択レジスタ402の出力
420は当然無効となり、コマンド領域401X又はス
テータス領域401yがそれぞれアクセスされるもので
ある。
The output 420 of the buffer selection register 402 becomes the base address for the address signal 421 from the bus interface 44 and modifies which buffer is selected if the memory 414 is partitioned as shown in FIG. In a relationship. Further, the address signal 421 from the bus interface 44 is a relative address within the buffer. Therefore, CPU2. That is, from the perspective of the bus interface 44, the buffer is treated as one buffer that is accessed using this relative address,
I can only see one. Therefore, there is no effect on access on the CPUZ side. When accessing the command area and status area of the memory 414 from the bus interface 44, the output 420 of the block selection register 402 is naturally invalidated, and the command area 401X or status area 401y is accessed, respectively.

以上説明してきたが、実施例では2ボートメモリを使用
しているが、これはCPU側とマイクロプロセッサ側と
でアクセスできるメモリであれば良い。
As described above, the embodiment uses a two-board memory, but this may be any memory that can be accessed by the CPU side and the microprocessor side.

また、ディスク装置に記憶される書込みデータは、照合
を受けるまでこのメモリに記憶されていればよい。
Further, the write data stored in the disk device only needs to be stored in this memory until it is verified.

実施例ではディスク装置として磁気ディスク制御装置を
中心に説明しているが、これは磁気ディスクに限定され
るものではなく、光ディスク等のディスク制御装置であ
ってもよく、要するに、ディスクのレコード単位で又は
その整数倍を単位としてデータ転送がなされればよい。
In the embodiments, a magnetic disk control device is mainly explained as a disk device, but this is not limited to magnetic disks, and may be a disk control device for optical disks, etc. Alternatively, data may be transferred in units of integral multiples thereof.

また、この場合に書込みデータを記憶するメモリの各ブ
ロックは、レコード単位としてセクタ対応のブロックと
しているが、レコード単位又はその整数倍の記憶容量の
ものを1ブロツクとして割当てて使用できることはもち
ろんである。
Furthermore, in this case, each block of memory that stores write data is a block corresponding to a sector as a record unit, but it is of course possible to allocate and use the storage capacity of a record unit or an integral multiple thereof as one block. .

〔発明の効果〕〔Effect of the invention〕

処理装置とディスク記憶装置との間に演算処理装置とメ
モリとディスクインタフェースとを備えそのメモリは、
その処理装置とその演算処理装置とからアクセスされそ
してその処理装置から転送された書込みデータを記憶し
、その演算処理装置は、そのディスク記憶装置に転送し
て記憶された占込みデータを読出してメモリに記憶され
ている書込みデータと照合し、そのディスク記憶装置に
記憶された書込みデータのチェックを行うので、ディス
ク装置へのデータ転送後もデータを保持でき、ディスク
装置に書込んだデータの照合ができる。その結果、書込
み時点で早期にエラーの検出ができ、例えば不良レコー
ドの代替レコード処理等によりディスク制御装置内で正
しい記憶をする処理を行うなどの対応が可能となり、ソ
フトウェアへの負担を増やさずに、システムの信頼性を
高くできる。
An arithmetic processing unit, a memory, and a disk interface are provided between the processing unit and the disk storage device, and the memory includes:
Write data accessed and transferred from the processing device and the processing device is stored, and the processing device reads out the occupied data transferred and stored in the disk storage device and stores it in the memory. Since the written data stored in the disk storage device is checked against the written data stored in the disk storage device, the data can be retained even after the data is transferred to the disk device, and the data written to the disk device can be checked. can. As a result, errors can be detected early at the time of writing, and countermeasures can be taken, for example, by processing a replacement record for a defective record to ensure correct storage within the disk controller, without increasing the burden on the software. , the reliability of the system can be increased.

さらに、2ボートメモリを使用した場合には、この2ボ
ートメモリに2つのバッファブロックを設け、それらブ
ロックを交互に使用できるように構成することができる
ので、ディスク装置からのデータ読出しの場合において
、ECCエラーの発生時には、ディスク制御装置内での
マイクロプロセッサが2ボートメモリをアクセスし、エ
ラーの修正が行える。そこで、処理速度を落とさずにし
かもソフトウェアに負担をかけることなしにECCエラ
ーの修正がディスク制御装置内で行える効果が得られる
Furthermore, when a 2-boat memory is used, it is possible to provide two buffer blocks in the 2-boat memory and configure the blocks to be used alternately, so that when reading data from a disk device, When an ECC error occurs, the microprocessor within the disk controller accesses the two-port memory and can correct the error. Therefore, it is possible to correct ECC errors within the disk control device without reducing the processing speed or placing a burden on the software.

【図面の簡単な説明】[Brief explanation of drawings]

第1図はこの発明によるディスク制御装置の好ましき実
施例のブロック図、第2図は第1図の実施例において使
用される2ボートメモリの構成図、第3図はバッファブ
ロックの使用状態を示すテーブルの例を示す説明図、第
4図は第2の2ボートメモリのブロック図、そして第5
図は従来のディスク制御装置のブロック図である。 1・・・共通バス    2・・・cpu3・・・共通
メモリ   4・・・ディスク制御装置5・・・ディス
ク装W  41・・・内部バス42・・・マイクロプロ
セッサ 43・・・共通メモリ44・・・バスインタフ
ェース 45・・・バッファメモリ 46・・・コマンドレジスタ 47・・・ステータスレジスタ 48・・・ディスクインタフェース 49・・・DMAコントローラ 401・・・2ボートメモリ 402・・・ブロック選択レジスタ 特許出願人 富士電機製造株式会社 同 上  冨士ファコム制御株式会社 弁理士 代理人 森   哲 也 弁理士 代理人 内 B 嘉 昭 弁理士 代理人 ・清 水   正 弁理士 代理人 梶 山 信 是 第1図 第2図 へ
FIG. 1 is a block diagram of a preferred embodiment of a disk control device according to the present invention, FIG. 2 is a configuration diagram of a two-boat memory used in the embodiment of FIG. 1, and FIG. 3 is a usage state of buffer blocks. FIG. 4 is a block diagram of the second 2-boat memory, and FIG.
The figure is a block diagram of a conventional disk control device. 1... Common bus 2... CPU3... Common memory 4... Disk control device 5... Disk unit W 41... Internal bus 42... Microprocessor 43... Common memory 44. ... Bus interface 45 ... Buffer memory 46 ... Command register 47 ... Status register 48 ... Disk interface 49 ... DMA controller 401 ... 2 boat memory 402 ... Block selection register Patent application Fuji Electric Manufacturing Co., Ltd. Same as above Fuji Facom Control Co., Ltd. Patent attorney Agent Tetsuya Mori Patent attorney Agent B Yoshiaki Patent attorney Agent Masashi Shimizu Patent attorney Agent Nobu Kajiyama Figure 1 Figure 2 fart

Claims (4)

【特許請求の範囲】[Claims] (1)処理装置とディスク記憶装置との間に設けられ、
演算処理装置とメモリとディスクインタフェースとを備
えるものであって、前記メモリは、前記処理装置と前記
演算処理装置とからアクセスされ、前記処理装置から転
送された書込みデータを記憶し、前記演算処理装置は、
前記ディスク記憶装置に転送して記憶された前記書込み
データを読出して前記メモリに記憶されている前記書込
みデータと照合し、前記ディスク記憶装置に記憶された
前記書込みデータのチェックを行うことを特徴とするデ
ィスク制御装置。
(1) Provided between the processing device and the disk storage device,
The device includes an arithmetic processing device, a memory, and a disk interface, the memory being accessed by the processing device and the arithmetic processing device, storing write data transferred from the processing device, and the memory being accessed by the processing device and the arithmetic processing device, and storing write data transferred from the processing device. teeth,
The write data transferred to and stored in the disk storage device is read out and compared with the write data stored in the memory to check the write data stored in the disk storage device. disk controller.
(2)演算処理装置は、ディスク記憶装置に転送して記
憶された書込みデータをそのアイドル時間に読出してメ
モリに記憶されている前記書込みデータと照合し、前記
ディスク記憶装置に記憶された前記書込みデータのチェ
ックを行うことを特徴とする特許請求の範囲第1項記載
のディスク制御装置。
(2) The arithmetic processing unit reads the write data transferred and stored in the disk storage device during its idle time, compares it with the write data stored in the memory, and reads the write data stored in the disk storage device. 2. The disk control device according to claim 1, wherein the disk control device checks data.
(3)メモリは、ディスク記憶装置の各レコード単位又
はその整数倍記憶容量のブロックを複数有する2ポート
メモリであって、演算処理装置は、この各ブロックの使
用状態を管理し、処理装置からの書込みデータは、使用
されていないブロックに書込まれることを特徴とする特
許請求の範囲第1項又は第2項記載のディスク制御装置
(3) The memory is a 2-port memory that has multiple blocks each having a storage capacity of each record of the disk storage device or an integral multiple thereof, and the arithmetic processing unit manages the usage status of each block, and the processing unit manages the usage status of each block and 3. The disk control device according to claim 1, wherein the write data is written to an unused block.
(4)チェックの結果、誤りのあるレコードについては
、メモリに記憶された対応データをディスク記憶装置の
他のレコードに記憶することを特徴とする特許請求の範
囲第3項記載のディスク制御装置。
(4) The disk control device according to claim 3, characterized in that for records with errors as a result of the check, the corresponding data stored in the memory is stored in another record of the disk storage device.
JP18012384A 1984-08-29 1984-08-29 Disc controller Granted JPS6158033A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18012384A JPS6158033A (en) 1984-08-29 1984-08-29 Disc controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18012384A JPS6158033A (en) 1984-08-29 1984-08-29 Disc controller

Publications (2)

Publication Number Publication Date
JPS6158033A true JPS6158033A (en) 1986-03-25
JPH053612B2 JPH053612B2 (en) 1993-01-18

Family

ID=16077819

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18012384A Granted JPS6158033A (en) 1984-08-29 1984-08-29 Disc controller

Country Status (1)

Country Link
JP (1) JPS6158033A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0347492B1 (en) * 1981-12-18 1991-07-19 Toyo Boseki
US11739203B2 (en) 2017-05-22 2023-08-29 Takemoto Yushi Kabushiki Kaisha Polyolefin resin modifier, polyolefin resin composition, modified polyolefin resin film, and laminated film

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5916067A (en) * 1982-07-20 1984-01-27 Fujitsu Ltd Data checking system
JPS5917653A (en) * 1982-07-22 1984-01-28 Fujitsu Ltd Method for transferring data of magnetic disc controlling device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5916067A (en) * 1982-07-20 1984-01-27 Fujitsu Ltd Data checking system
JPS5917653A (en) * 1982-07-22 1984-01-28 Fujitsu Ltd Method for transferring data of magnetic disc controlling device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0347492B1 (en) * 1981-12-18 1991-07-19 Toyo Boseki
US11739203B2 (en) 2017-05-22 2023-08-29 Takemoto Yushi Kabushiki Kaisha Polyolefin resin modifier, polyolefin resin composition, modified polyolefin resin film, and laminated film

Also Published As

Publication number Publication date
JPH053612B2 (en) 1993-01-18

Similar Documents

Publication Publication Date Title
US5381538A (en) DMA controller including a FIFO register and a residual register for data buffering and having different operating modes
US7676728B2 (en) Apparatus and method for memory asynchronous atomic read-correct-write operation
US5301278A (en) Flexible dynamic memory controller
EP0986783B1 (en) Time-distributed ecc scrubbing to correct memory errors
EP0614142B1 (en) System and method for detecting and correcting memory errors
KR950000550B1 (en) Semiconductor memory unit
US5548786A (en) Dynamic bus sizing of DMA transfers
US20020124129A1 (en) Method for using RAM buffers with multiple accesses in flash-based storage systems
WO1996032674A2 (en) Semiconductor memory device for mass storage block access applications
CA2071301A1 (en) Error detection and recovery in a dma controller
AU610226B2 (en) Computer bus having page mode memory access
JPS6230664B2 (en)
AU762703B2 (en) Data write control system and method therefor
JPS6158033A (en) Disc controller
EP0619546A1 (en) Programmable memory controller and method for configuring same
WO1993019419A1 (en) Solid state disk emulator apparatus and method
JPS62250563A (en) Magnetic disk storage device
JP3036449B2 (en) Memory diagnostic device
JP2584466B2 (en) Disk controller self-diagnosis method
JPH0341538A (en) Main storage device
JP2825589B2 (en) Bus control method
JPH04125747A (en) Cache memory controller
JPH0191375A (en) Magnetic disk controller
JPH05289947A (en) Ecc check system
JPH01197860A (en) Memory fault detecting circuit