JPH03168857A - Direct memory access controller of pointer base - Google Patents
Direct memory access controller of pointer baseInfo
- Publication number
- JPH03168857A JPH03168857A JP29946389A JP29946389A JPH03168857A JP H03168857 A JPH03168857 A JP H03168857A JP 29946389 A JP29946389 A JP 29946389A JP 29946389 A JP29946389 A JP 29946389A JP H03168857 A JPH03168857 A JP H03168857A
- Authority
- JP
- Japan
- Prior art keywords
- data
- host
- disk
- buffer memory
- address
- 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
Links
- 239000000872 buffer Substances 0.000 claims abstract description 89
- 238000012546 transfer Methods 0.000 claims abstract description 77
- 238000000034 method Methods 0.000 claims abstract description 22
- 239000013256 coordination polymer Substances 0.000 claims description 14
- 238000012937 correction Methods 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 3
- 238000012986 modification Methods 0.000 claims description 2
- 230000004048 modification Effects 0.000 claims description 2
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 abstract 3
- 238000010586 diagram Methods 0.000 description 15
- 101100313763 Arabidopsis thaliana TIM22-2 gene Proteins 0.000 description 12
- 101100015456 Litomosoides carinii GP22 gene Proteins 0.000 description 11
- 230000006870 function Effects 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 238000005286 illumination Methods 0.000 description 2
- 101000651958 Crotalus durissus terrificus Snaclec crotocetin-1 Proteins 0.000 description 1
- 101001093690 Homo sapiens Protein pitchfork Proteins 0.000 description 1
- 101100258315 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) crc-1 gene Proteins 0.000 description 1
- 102100036065 Protein pitchfork Human genes 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005755 formation reaction Methods 0.000 description 1
- 102000001942 human pituitary glycopeptide Human genes 0.000 description 1
- 108010001037 human pituitary glycopeptide Proteins 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Landscapes
- Bus Control (AREA)
Abstract
Description
【発明の詳細な説明】
(産業上の利用分野〉
この発明はプログラマプル・ディスク制御器におルプる
ポインタ式直接メモリ・アクセス(DMA)υ11器に
関する。D M A ilill ill器はポート状
態およびリング・メモリ・バッファの動作サイクルを制
御し、それによって異なるサイズおよび速度の転送(ま
たはデータ転送)が処理装置の干渉なしに行われる。DETAILED DESCRIPTION OF THE INVENTION (Industrial Application Field) This invention relates to a pointer-based direct memory access (DMA) device that is used in a programmable disk controller. Controls the operating cycle of the ring memory buffer so that transfers (or data transfers) of different sizes and speeds occur without interference from the processing unit.
(従来の技術〉
標準のコンピュータ・システムにおいて、大容量記憶ホ
ストは、しばしばホスト・システムにまたはホスト・シ
ステムから転送されるデータを記憶するのに通常利用さ
れている。ホストとディスク装四との間のそのようなデ
ータ転送において、動作はホスト寝込みディスク・サイ
クルまたはホスト読出しディスク・サイクルのいずれか
である。さらに、ホストおよびディスクの両方の異なる
データ転送特性に合うように、バッファ・メモリは転送
プロセスの間にデータを一時保持1るのに菖通利用ざれ
ている。BACKGROUND OF THE INVENTION In standard computer systems, mass storage hosts are commonly utilized to store data that is often transferred to or from the host system. In such data transfers between transfers, the operations are either host sleep disk cycles or host read disk cycles.Furthermore, to suit the different data transfer characteristics of both host and disk, buffer memory is It is used to temporarily hold data during a process.
例えばホスト読出しディスク・サイクルの間、ディスク
磁気媒体に記録されたデータは感知ざれて、ディスク制
I器からバッファ・メモリにまず送り出され、さらにホ
ストがデータを受信する用意を整えているときは小スト
に転送される。ホス1・潟込みディスク・ザイクルの間
、ホストから来るデータはバッファ・メモリにまず送ら
れ、次にディスク41御器に送られ、@後にディスクに
入る。For example, during a host read disk cycle, data recorded on the disk magnetic medium is sent first to the buffer memory from the disk controller without sensing, and then to the buffer memory when the host is ready to receive the data. Transferred to ST. During the host 1-logged disk cycle, data coming from the host is first sent to the buffer memory, then to the disk 41 controller, and then enters the disk.
データ転送サイクルのいずれの方向でも、ディスクIl
illtmit器の直接メモリ・アクセス(DMA)制
御器は寸ぺての関連転送作川をあり御するのに用いられ
る。まず第1に、ホストUデータ・バイトの単位でバッ
ファ・メモリを呼び出すが、ディスクk二対タるデータ
読出しまたは書込みはセクタ〈例えば512バイト)の
単位で行われる。したがって、DMA制御器はホストが
一方ではデータを転送すべき時にメモリが空白であるか
満杯であるかを確認し、かつディスクに書込むべきデー
タの完全なセクタが存在することを保証しなければなら
ない。また、D M A tlIl tll器はディス
クから読み出すべきデータ用のバツフ7・メモリ内に利
用できる完全なセクタ空間が存在することを保証しなけ
ればならない。In either direction of the data transfer cycle, disk Il
The illtmit device's direct memory access (DMA) controller is used to control all related transfer operations. First of all, while the host U calls the buffer memory in units of data bytes, reading or writing data to the disks is done in units of sectors (eg, 512 bytes). Therefore, the DMA controller must ensure that the host, on the one hand, checks whether the memory is empty or full when data is to be transferred, and that there is a complete sector of data to write to disk. It won't happen. The DMA tlIl tll must also ensure that there is complete sector space available in the buffer memory for the data to be read from the disk.
さらにDMA制mt器は、ホストおよびディスク制御器
が特有のバツフ7・メモリ場所をアクセスして、データ
がバッファ・メモリにまたはバツフ?・メモリから転送
できるようにする必要があるアドレス信月を発生させる
。ざらに、D M A it,II ill器は、ある
誤りが現われて修正されないとき、ホストがディスクか
らデータを読み戻さないように防止しなければならない
。Additionally, the DMA controller allows the host and disk controller to access specific buffer memory locations so that data can be transferred to or from buffer memory. - Generates an address signal that needs to be transferred from memory. In general, the DMA illumination device must prevent the host from reading data back from the disk when certain errors occur and are not corrected.
ホストと大容格記憶装置とをインターフェース接続する
バツフ7配列には多くの方法がある。例えば、米国特許
第3.851,335@は、バツファに出入するデータ
転送の跡をたどる簡単な加/減算カウンタを開示してい
る。読出し操作では、カウンタは減分されるが、同じ時
に起こる入力と読出しはカウンタに影響を及ぼさない。There are many ways to interface a buffer 7 array with a host and a mass storage device. For example, US Pat. No. 3,851,335@ discloses a simple add/subtract counter that tracks data transfers into and out of a buffer. On read operations, the counter is decremented, but inputs and reads that occur at the same time have no effect on the counter.
これは、複雑なD M A tall御器が解決しなけ
ればならない問題に取り組むには余りにも簡単過ぎる装
置である。This is far too simple a device to address the problems that complex DMA tall controllers must solve.
米国特許第4.723.233号は、ディスクの転送区
域を定める開始と終了のアドレスを示すa個のレジスタ
と、呼び出された区域を指す記憶位置カウンタと、終了
アドレスに達してから記憶位置カウンタを最初のアドレ
スにセットする更新回路とを含むD M A fill
tll i5!を開示している。この方法の目的は、
転送の速度の損失を減らすことである。U.S. Pat. No. 4,723,233 discloses a number of registers indicating starting and ending addresses defining a transfer area on the disk, a storage location counter pointing to the area being called, and a storage location counter after reaching the ending address. and an update circuit that sets DMA fill to the first address.
tll i5! is disclosed. The purpose of this method is to
The goal is to reduce the loss of speed of transfer.
若干の市販用ディスクυ11Il器では、異なるDMA
ilill 11111m能の実施もよく知られてい
る。例えば、アダプテック社(^daptec In
C.)のディスク制御器(Arc−610)は書込みア
クセス、読出しアクセスおよび停止の諸ポインタを有す
るDMA制御器を組み込んでいる。最初の2つのポイン
タの実際の使用は、選択されているバツフ?・ポートお
よびデータ転送の方向に左右される。停止ポインタは、
ホストとバツフ7との間のデータ転送を制御するのに用
いられる。この方法では、転送制御処理はホストによっ
て行われ、それによってホストの性能が低下寸る。Some commercial disk υ11I devices have different DMA
The implementation of illumination functions is also well known. For example, Adaptec In
C. )'s disk controller (Arc-610) incorporates a DMA controller with write access, read access, and stop pointers. What is the actual use of the first two pointers? - Depends on port and direction of data transfer. The stop pointer is
It is used to control data transfer between the host and buffer 7. In this method, the transfer control processing is performed by the host, which tends to degrade the performance of the host.
他の知られたデザインのDMA制mt器はスタンダード
・マイクロシステムズ社( standardHiCr
OSyStQIS Corp− )のディスク制御器(
95C02)である。この装置では、D M A II
I III器は多くの内部レジスタ、カウンタ、状態機
械およびALU (演算論理装置)を含むマイクロブロ
ヒツサと同等のレベルにまで高められている。そのいろ
いろなカウンタには、バツフ7の空白/満杯状態の跡を
追うオフセット・カウンタおよびバツファに残る誤りの
ないデータ・バイトの数を追跡する補助オフセット・カ
ウンタが含まれている。DM A !,II till
iはホストの介在なしにディスク・データの転送を可
能にするが、IlltIII器自体は多くの追加のハー
ドウエアを必要とし、また11雑な操作を伴う。Other known designs of DMA controllers are those manufactured by Standard Microsystems (standardHiCr).
Disk controller (OSyStQIS Corp-)
95C02). In this device, DM A II
The IIII processor has been upgraded to the level of a microbrochure, including many internal registers, counters, state machines, and an ALU (arithmetic logic unit). The various counters include an offset counter that tracks the empty/full condition of buffer 7 and an auxiliary offset counter that tracks the number of error-free data bytes remaining in the buffer. DM A! , II till
Although IlltIII allows the transfer of disk data without host intervention, IlltIII itself requires a lot of additional hardware and is complicated to operate.
(発明の要約)
本発明の目的は、一方では最小のハードウエア要求で有
効なD M A all I1l Il能を提供するこ
とであり、他方ではホストとディスクとの量だけ増加さ
せる段階データがデータの大きさおよび転送速度の面で
異なるとき、複雑なバッファ管理のタスクを克服するこ
とである。SUMMARY OF THE INVENTION The object of the invention is, on the one hand, to provide efficient DMA all I1Il Il functionality with minimal hardware requirements, and on the other hand, to provide an efficient DMA all I1I IlIl capability with minimal hardware requirements and, on the other hand, to provide a step-by-step data processing system that increases the amount of host and disk data. is to overcome the task of complex buffer management when buffers differ in terms of size and transfer speed.
本発明は、ホストとディスクとの間のデータ転送の処理
中に呼び出されるバツフ7・メモリのアドレスを示す2
個の主ポインタを利用している。The present invention provides a buffer 7 memory address that is called during the process of data transfer between the host and the disk.
It uses multiple primary pointers.
特有な内容を持つ2個の追加のポインタは、2個の主ポ
インタと所定の関係により指定されている。Two additional pointers with unique content are designated by predetermined relationships with the two primary pointers.
データ転送が進むにつれて、これらのポインタは内容が
変えられて所定の操作規則に基づきバツフ7・メモリ・
ポートを作動させるフラグ信号を発生させるために比較
される。As the data transfer progresses, these pointers are changed in content according to predetermined operating rules.
are compared to generate a flag signal that activates the port.
この配列によって、DMA制m器は、ホストがデータを
転送すべきとき必ずバッファ・メモリが空白であるか満
杯であるかを検出するようにされる。データのセクタま
たは空白セクタの空間がそれぞれ利用できるとき、ディ
スクはバッファ・メモリからフル・セクタ・データを受
信し始めたり、データをバッファ・メモリに転送し始め
たりするのを検出するのが可能になる。D M A I
I1御器は、異なるデータ転送の大きさに合わせて、誤
りのデータがそれにより修正されるときに良好なデータ
を転送することができる。This arrangement allows the DMA controller to detect whether the buffer memory is empty or full whenever the host is to transfer data. Enables the disk to detect when it starts receiving full sector data from or transferring data to the buffer memory when space for sectors of data or blank sectors, respectively, is available. Become. D M A I
The I1 controller can accommodate different data transfer sizes and transfer good data when erroneous data is thereby corrected.
本発明により、D M A t.lI 611 mはホ
ストの介在なしに自動かつ有効なプロセスでデータ転送
を処理する。また上述の所定の操作規則によって、バッ
ファ・メモリ内のデータのオーバーラン状態が防止され
る。本発明の好適な実施例を付図に関して以下に詳しく
説明する。According to the present invention, DMA t. The II 611 m handles data transfers in an automatic and efficient process without host intervention. The predetermined operating rules described above also prevent data overrun conditions in the buffer memory. Preferred embodiments of the invention are described in detail below with reference to the accompanying drawings.
本発明の好適な実施例を明確に説明する目的で、ディス
クill II器を構或する主ブロックがffIl潔に
紹介される。For the purpose of clearly explaining the preferred embodiment of the present invention, the main blocks that make up the disk ill II device will be briefly introduced.
ディスクt,+1a器の機能は、ディスクに出入するデ
ータ転送に責任を有する直列データ転送制御器およびバ
ッファ・メモリに出入するデータ転送に責任を11する
バッファ管理制御器と考えられる。The functions of the disk t,+1a device can be thought of as a serial data transfer controller responsible for transferring data to and from the disk and a buffer management controller responsible for transferring data to and from the buffer memory.
第1図に示されたような本発明の発明者によって設計さ
れたディスク制a器のアーキテクチャは、ビルディング
・ブ[コックおよびその間の関係を示している。The architecture of the disc controller designed by the inventors of the present invention as shown in FIG. 1 shows the building blocks and the relationships therebetween.
第1図において、ディスク・ベースのコンピュータ・シ
ステムのシステム構造が示されている。In FIG. 1, the system structure of a disk-based computer system is shown.
ホスト1とディスク駆動器2との間に、相互に接続され
る若干の機能的なブロックが介在する。ランダム・アク
セス・メモリ(RAM)バッファ4は、ディスク制mt
器(WDC)3を通してホスト1とディスク駆動器2と
の間で転送すべきデータを一時保持する。ディスクf.
ll御器3は局部マイクロブOセッサ(LμP)6の指
令を受けてすべてのデータ転送を遂行する。あるシステ
ム構造では、直接メモリ・アクセス(DMA)!llt
ll器5がディスク制t!ll器3に含まれていて、L
μP6およびディスク制御器3の制御を受けてすべての
データ転送を処理する。RAMバッノ74は、l) M
A mill III器5によって供給されるアドレ
ス信号によりホスト1およびディスクilltll器3
によって呼び出される。There are several functional blocks interposed between the host 1 and the disk drive 2 that are interconnected. Random access memory (RAM) buffer 4 is a disk-based mt
Data to be transferred between the host 1 and the disk drive 2 through the controller (WDC) 3 is temporarily held. disk f.
The controller 3 receives commands from the local microbe processor (LμP) 6 and performs all data transfers. In some system architectures, Direct Memory Access (DMA)! llt
ll device 5 is disc-based! It is included in ll vessel 3, and
It processes all data transfers under the control of μP 6 and disk controller 3. RAM Bano 74 is l) M
The host 1 and the disk illtll unit 3 are connected to each other by the address signal provided by the A mill
called by
このシステムにおけるデータ・パターンは直並列ビット
流の両型式を含んでいる。ホスト1、RAMバッファ4
およびディスク制御器3の間を流れる並列データは、そ
れぞれバイト単位およびセクタ単槓であるデータ転送の
単位の点で相違する。The data pattern in this system includes both types of serial and parallel bit streams. Host 1, RAM buffer 4
The parallel data flowing between the disk controller 3 and the disk controller 3 differ in the unit of data transfer, which is a byte unit and a sector unit, respectively.
エンコーダ/デコーダ・ブロック7は、データがディス
ク媒体に書き込まれる前にデータをコード化し、ディス
ク媒体から読み出されるコード化されたデータをデコー
ドする。Encoder/decoder block 7 encodes data before it is written to the disk medium and decodes encoded data that is read from the disk medium.
RAMバッフ74は、ホスト1およびディスク制m+器
3にそれぞれ出入1るバイト・ベースならびにセクタ・
ベースのデータ転送を収容するのに用いられる。RAM
バッファ4の1つの実施例は、動的RAMまたは静的R
AMのような円形リング・メモリを利用することによっ
て実施することができる。リング・メモリに出入するデ
ータ転送がディスク制WJ器3の正しいtI11御を受
けるならば、R A Mバッファ4の大きさは事実上無
III限とじて?理することができる。The RAM buffer 74 stores byte-based and sector-based inputs and outputs to and from the host 1 and the disk controller 3, respectively.
Used to accommodate base data transfer. RAM
One embodiment of buffer 4 is dynamic RAM or static R
It can be implemented by utilizing a circular ring memory such as AM. If data transfers to and from the ring memory are subject to proper tI11 control of the disk controller 3, the size of the RAM buffer 4 is virtually unlimited? can be managed.
第1図のディスク制御器3をこれから簡潔に説明する。The disk controller 3 of FIG. 1 will now be briefly described.
それは、局部プロセッサ( L.μP〉インターフェー
ス10、ホスト・インターフェース11、バツファ・イ
ンターフェース12、周辺8M器インターフェース13
、シーケンサRAM14、優先度決定器15、先入れ先
出しメモリ(FIFO)16、誤り修正コード/局1l
1冗艮検査器(ECC/CRC)1 7、クロツク制1
1I器18、および直列化/非直列化器19a、19b
1ならびにエンコーダ/デコーダ7のような第2図に示
される機能ブロックを含む。It includes a local processor (L.μP) interface 10, a host interface 11, a buffer interface 12, and a peripheral 8M device interface 13.
, sequencer RAM 14, priority determiner 15, first-in first-out memory (FIFO) 16, error correction code/station 1l
1 redundancy checker (ECC/CRC) 1 7, clock system 1
1I unit 18, and serializer/deserializer 19a, 19b
1 and the functional blocks shown in FIG. 2, such as an encoder/decoder 7.
ディスク制tII器3の動作は、ディスク駆動器2から
のデータ転送動作(ディスク読出し動作)およびディス
ク駆#7]B2へのデータ転送動作(ディスク書込み動
作)を観測することによって容易にPINTることがで
きる。ディスク読出し動作では、デ■ィスク《図示ざれ
ていない)に記憶されたデータは読み出されてから、デ
コードされるようにデコーダ7に送り込まれる。次に合
成直列データ・ビットは非直列化器19bを経て並列デ
ータ・バイトに変換される。次にデータ・バイトはシー
ケンスRAM14からのデータと共に計算されて、正し
いデータ・セクタ!.D.を決定して、読み戻しの処理
中に生じた誤りを検査するためにFCC/CRCブロッ
ク17に送り込まれる。The operation of the disk controller tII unit 3 can be easily pinned by observing the data transfer operation (disk read operation) from the disk drive 2 and the data transfer operation (disk write operation) to disk drive #7]B2. Can be done. In a disk read operation, data stored on a disk (not shown) is read and then sent to the decoder 7 to be decoded. The composite serial data bits are then converted into parallel data bytes via deserializer 19b. The data bytes are then calculated along with the data from sequence RAM 14 to find the correct data sector! .. D. is determined and sent to the FCC/CRC block 17 for checking for errors that occurred during the readback process.
ディスク書込み動作では、RAMバッファ4にデータを
転送するために優先度決定器15にホスト・サイクル要
求を送ることによってホスト・インターフェース11が
始動する。次に、RAMバツファ4のデータは、P I
F01 6が満杯になるまで優先度決定器15にFI
FOサイクル要求を送るF I F O 1 6によっ
てPIF016に送り込まれる。F I FO1 6が
空白であるときは必ず、FIFOナイクル要求が再度送
られる。同時に、データはECC/CRC1 7にも送
り込まれて、各セクタ用の検査バイトを発生させる。P
IF016にあるデータ・バイトはまず直列化器19a
に送り込まれて、並列データ・バイトを、MFM《変形
周波数変調)およびRLL (実行長さ制限〉」一ドの
ような所望のデータ・チャネル・コード化形成を作るよ
うにエンコーダ7を通してチャネル・エンコードされる
ビット流に変換する。In a disk write operation, host interface 11 is initiated by sending a host cycle request to priority determiner 15 to transfer data to RAM buffer 4. Next, the data in RAM buffer 4 is P I
FI to priority decider 15 until F01 6 is full
It is fed into PIF016 by F I F O 1 6 which sends the FO cycle request. Whenever FIFO1 6 is blank, a FIFO Nicle request is sent again. At the same time, the data is also fed into the ECC/CRC1 7 to generate check bytes for each sector. P
The data byte in IF016 is first serialized by serializer 19a.
The parallel data bytes are channel encoded through an encoder 7 to produce the desired data channel coding formations such as MFM (Modified Frequency Modulation) and RLL (Run Length Limited) codes. Convert to a bit stream.
ディスク制御器
本発明のディスクa,11111器3の関連した機能ブ
ロックが第2図に関して簡潔に説明される。DISK CONTROLLER The relevant functional blocks of the disk a, 11111 device 3 of the present invention are briefly described with respect to FIG.
(a) LμPインターフェース
LμPインターフェース10のブロックは、ディスク制
御器3と、その記憶済プログラムによりfIll II
Iされる別の単一チップのマイクロコンピュータである
第1図の局部マイクロブOセッナ6との間の通信を管理
する。LLtP6がディスク制fil器3やRAMバッ
フ74のレジスタを呼び出す必要があるとき、それはL
μPインターフェース10のCSビン101、ALE[
3ビン102、ADO=7ポート107、RDBビン1
04またはWRBビン105により通信して、ディスク
制iltaの内部レジスタをセットしたり、LμPサイ
クル要求を発生させたりする。LμPインターフェース
10のINTビン106は、ECC/CRC1 7での
どんなFCCの誤りでもまたはシーケンサRAM14で
検出されるセクタIQの誤りといったような事象の発生
をLμρ6に知らせるようにディスク制′@器3によっ
てセットされる。ADO−7ポート107は、LμP6
の内部レジスタに出入するデータおよびアドレスを送受
信する。(a) LμP interface The block of the LμP interface 10 is configured by the disk controller 3 and its stored program.
1, which is another single-chip microcomputer connected to the local microcontroller 6 of FIG. When LLtP6 needs to call the register of disk control filter 3 or RAM buffer 74, it calls L
CS bin 101 of μP interface 10, ALE[
3 bin 102, ADO=7 port 107, RDB bin 1
04 or WRB bin 105 to set internal registers of the disk controller ilta and generate LμP cycle requests. The INT bin 106 of the LμP interface 10 is configured by the disk controller 3 to inform the Lμρ 6 of the occurrence of an event such as any FCC error in the ECC/CRC 17 or a sector IQ error detected in the sequencer RAM 14. Set. ADO-7 port 107 is LμP6
Sends and receives data and addresses to and from internal registers.
(b)ポスト・インターフェース
ホスト●インターフェース11は、ディスク制611B
3がホス]・に出入するようにデータを転送させること
を要求するとき、ポートHReq.B信号3715のよ
うな信号を発生させる。データの各バイトがホスト1に
よって転送されたり受信ざれると、ポート口ACKl3
信号3714はホスト1によりホスト・インターフェー
ス11に送られて、ポート口Req−B信M3715に
応動するハンドシエーキング信号として応答する。ホス
ト・インターフェース11によって送られるLOI信号
3718は、データ損失の場合に任意の外部入/出カデ
ータ・ラッチ装置(図示されていない)でデータをラッ
チする。BIEB信号3716およびBOEB信号37
17は、RAMバッファ4に出入するデータの流れを制
御する。(b) Post interface host ●Interface 11 is a disk-based 611B
When requesting data to be transferred to or from a host], port HReq. A signal such as B signal 3715 is generated. As each byte of data is transferred or received by host 1, the port ACKl3
Signal 3714 is sent by host 1 to host interface 11 and is responsive as a handshaking signal in response to port entry Req-B signal M3715. The LOI signal 3718 sent by the host interface 11 latches the data with any external input/output data latching device (not shown) in case of data loss. BIEB signal 3716 and BOEB signal 37
17 controls the flow of data into and out of the RAM buffer 4.
(C イ゛ −フェース
周辺インターフェース13は、(ディスク書込み動作の
間)ディスク駆動器2の磁気ヘッドに書込み電流を出力
するようにディスク駆動′!A2に指令するWG信号1
32を供給するとともに、《ディスク読出し動作の間)
ディスクから再生される到来粗ディスク・データにロッ
ク・オンするようにディスク駆lJ器2の位相ロック・
ループ回路に指令するRG信号131を供給する。周辺
インターフェース13は、シーケンスRAM14および
ECC/CRC1 7に接続されている。(The C-face peripheral interface 13 receives the WG signal 1 which instructs the disk drive '!A2 to output a write current to the magnetic head of the disk drive 2 (during a disk write operation).
32 and <<during disk read operation)
Phase locking of the disk driver 2 to lock onto incoming coarse disk data being played from the disk.
It supplies an RG signal 131 that instructs the loop circuit. Peripheral interface 13 is connected to sequence RAM 14 and ECC/CRC 17.
(d)シーケンサRAM
シーケンサRAM14は第2図のいろいろなブロック間
の作動関係を調整する。シーケンサRAM14は、おの
おのがさらに多重バイトの形に組織化されている多重語
の形で組織化ざれたRAMのアレイを用いて構成される
ことが望ましい。各バイトは順序流れ制御に45けるフ
ィールドを表わす。各語のこれらのフィールドをプログ
ラムすることによって、ディスク&+1御器3の中のす
べてのビルディング・ブロックの間のすべての操作順序
は、よく知られた方法で実行することができる。(d) Sequencer RAM Sequencer RAM 14 coordinates the operational relationships between the various blocks of FIG. Sequencer RAM 14 is preferably constructed with an array of RAMs organized in multiple words, each of which is further organized in multiple bytes. Each byte represents a field in 45 sequential flow controls. By programming these fields of each word, all operational sequences between all building blocks in the Disk&+1 controller 3 can be performed in a well-known manner.
(e)ECC/CRC
このブロック17は、よく知られた方法で選択されたF
CC/CRC多項式によるディスク書込み動作において
データ検査バイト(ECCデコーディング)を発生させ
る。ディスク制御器3がデータを読み戻すとき、これの
多項式もこのブロックに送り込まれて、どの誤りでも存
在するかどうかを検査する。もし誤りが検出されたら、
このブロックは誤りの位置および誤りのパターンを算出
し、次に誤り修正( rEccJ *正)を遂行するL
μP6にECC誤り割込み要求を出す。(e) ECC/CRC This block 17 consists of the selected F
Generate data check bytes (ECC decoding) in disk write operations with CC/CRC polynomials. When the disk controller 3 reads back the data, its polynomial is also sent to this block to check whether any errors are present. If an error is detected,
This block calculates the error location and error pattern, and then performs error correction (rEccJ *correct)
Issue an ECC error interrupt request to μP6.
mFIFoメモリ
FIFO(先入れ先出し〉メモリ16は、ディスク2と
ホスト1との間の異なる転送速度を調和させる。FIF
Oメモリ16の大きさは、メモリの16バイトまでブO
グラム可能であり、かつディスク駆動器2のデータ転送
速度、ホスト1のデータ転送度、およびRAMバッファ
呼出し速度に左もされる。mFIFo memory FIFO (first in, first out) memory 16 reconciles different transfer rates between disk 2 and host 1.
The size of memory 16 is limited to 16 bytes of memory.
, and also depends on the data transfer rate of the disk drive 2, the data transfer rate of the host 1, and the RAM buffer access rate.
(り)クロツク制御器
ク[Iツク制tll器18は2個の独立したクロツク入
力、すなわちDMACLKI信号1 8 1 J3よび
R R C信号を受信する。DMACLK1信号181
は、バツファ・インターフェース12とホスト・インタ
ーフェース11との間のデータ転送の速度を左右するR
AMバッファ転送クロツクである。(i) Clock controller clock controller 18 receives two independent clock inputs, the DMACLKI signal 181J3 and the RRC signal. DMACLK1 signal 181
R determines the speed of data transfer between the buffer interface 12 and the host interface 11.
AM buffer transfer clock.
RRC信号182は、シーケンスRAM14の速度を左
右するシーケンサR八M作動クロツクであり、かつFI
FOメモリ16と周辺インターフェース13との間のデ
ータ転送の速度を左右する1:IFO転送クロツクであ
る。これら2つのクロツクは独立しているので、ホスト
・データ転送速度1まより遅いディスク・データ転送速
度によって速度を落されない。The RRC signal 182 is the sequencer R8M operating clock that controls the speed of the sequence RAM 14, and
1: IFO transfer clock that controls the speed of data transfer between the FO memory 16 and the peripheral interface 13. Since these two clocks are independent, they are not slowed down by disk data rates slower than the host data rate.
h 1ゝコー /−コー
列化器
直列化器19aおよび非直列化器19bは、それぞれ並
列バイト・データを直列ビット流データにかつその逆に
変換する。The serializer 19a and the deserializer 19b convert parallel byte data to serial bitstream data and vice versa, respectively.
エンコーダ/デコーダ7はデータをディスクに壽き込む
前に所望のデータ形式に変換するとともに、ディスクか
ら読み出されたデータをその原データ形式に回復させる
。The encoder/decoder 7 converts the data into a desired data format before writing it to the disc, and also restores the data read from the disc to its original data format.
エンコーダ/デコーダ7の好適なlI造物は、本出願と
同一日付で本出願人によって出願ざれた同時係属米国特
許出願第 号に開示されている。A preferred construction of encoder/decoder 7 is disclosed in co-pending US patent application Ser.
mバッファ・インターフェース
第2図において、バッファ・インターフェース・ブロッ
ク12は、16ビット番バツフ7・メモリ・アドレスB
A15〜O(121)、および8ビット・データ詔BD
O−7 (1 22> 、バッファ害込み可能信号(B
WEB)3719、およびDMAクロツク信号(DMA
CLKO)1 23のような信号を発生させる。バッフ
ァ・インターフェース12の構造および動作は下記の直
接メモリ・アクセスtiI111l器5と共に以下に説
明ざれる。m buffer interface In FIG. 2, the buffer interface block 12 has a 16 bit buffer 7 memory address
A15-O(121) and 8-bit data edict BD
O-7 (1 22>, buffer corruption possible signal (B
WEB) 3719, and DMA clock signal (DMA
CLKO) 1 23 is generated. The structure and operation of buffer interface 12 is described below in conjunction with direct memory access unit 5 below.
直接メモリ・アクセス
第1図に示された直接メモリ・アクセス制御器(DMA
C)5は3個のブロック、すなわちホスト・インターフ
ェース11、優先度決定器15、およびバッファ・イン
ターフェース12から戒っている。これらのブロックに
は本出願の発明が含まれている。DMAC5の細部構造
は以下に説明される。Direct Memory Access The direct memory access controller (DMA) shown in FIG.
C) 5 is separated from three blocks: host interface 11, priority determiner 15, and buffer interface 12. These blocks include the invention of this application. The detailed structure of DMAC5 is explained below.
第3(a)図から、D M A IQ 11+器は4個
ノレシスタまたはポインタすなわちホスト・ポインタ《
HP)20.ディスク・ポインタ(DP)21、良好デ
ータ・ポインタ(GP)22、および検査ポインタ(C
P)23を含む。HP20およびDP21の値は、ホス
ト1ならTjにディスクυ1111器3がそれぞれアク
セスする必要があるRAMバッファ・アドレス121を
供給する。ディスク読出し動作の際に、GP22はデー
タの最後のFCC修正ブロック(セクタ〉の最高アドレ
スを指す。From FIG. 3(a), it can be seen that the DMA IQ 11+ device has four registers or pointers or host pointers.
HP)20. A disk pointer (DP) 21, a good data pointer (GP) 22, and a check pointer (C
P) Contains 23. The values of HP20 and DP21 supply the RAM buffer address 121 that the disk υ1111 unit 3 needs to access in Tj if it is the host 1, respectively. During a disk read operation, GP22 points to the highest address of the last FCC modified block (sector) of data.
ディスク害込み動作の際に、それはデータの最終EGC
コード化ブロック(セクタ)の最低アドレスを指す。本
発明により、CP23の値はHP20の値より小ざい1
つのセクタ《例えば512バイト〉に固定される。In the event of a disk damaging operation, it is the final EGC of the data.
Points to the lowest address of a coded block (sector). According to the present invention, the value of CP23 is smaller than the value of HP20 by 1
It is fixed to one sector (for example, 512 bytes).
1−I P 2 0は16ビット・カウンタであること
が望ましい。HP20の出力は3状態バツフ7(図示さ
れていない)によって駆動されかつ端子OE24および
EC25でそれぞれ受信される「使用可能」ならびに「
増分」信号によって制御されることが望ましい.CP2
3の構造は似ている。GP22はGL28およびOE2
9でそれぞれ「ラッチ」および「使用可能」信号を受信
する16ビット・データ・ラッチである。DP21も「
使用可能」および「増分」信号によって制御される16
ビット・カウンタである。HP20およびDP21の両
出力は、RAMバッフ74に接続ざれる16ビット・ラ
ッチ・アドレス信号(BA15〜O)である。1-I P 2 0 is preferably a 16-bit counter. The output of HP20 is driven by a three-state buffer 7 (not shown) and received at terminals OE24 and EC25, respectively.
It is preferable that it be controlled by an "increment" signal. CP2
The structure of 3 is similar. GP22 is GL28 and OE2
9 and 16-bit data latches that receive ``latch'' and ``enable'' signals at 9 and 9, respectively. DP21 also said “
16 controlled by “enable” and “increment” signals
It is a bit counter. Both outputs of HP20 and DP21 are 16-bit latch address signals (BA15-O) connected to RAM buffer 74.
ラッチ32は、アドレス・バッファ33によりアドレス
信号121をRAMバツフ?4に送る前に、HP20ま
たはDP21のいずれかから受信したアドレス信号12
1をラッチする。The latch 32 uses the address buffer 33 to transfer the address signal 121 to the RAM buffer? The address signal 12 received from either HP 20 or DP 21 before being sent to
Latch 1.
DMA制御器5は比較器34をさらに含むが、その比較
器の片側はH P 2 0およびD P 2 1に接続
され、またその他側はCP23およびGP22に接続さ
れている。以下に説明する通り、データ転送動作中に、
DMA制御器5は、どの比較作用を異なるデータ転送サ
イクルで行うべきかを選択t ル各zjcインタ20.
2 1 .22.23のOEga子を駆動する。The DMA controller 5 further includes a comparator 34, one side of which is connected to H P 2 0 and D P 2 1, and the other side connected to CP 23 and GP 22. As explained below, during data transfer operations,
The DMA controller 5 selects which comparison operations are to be performed in different data transfer cycles for each zjc interface 20.
2 1. 22. Drives 23 OEga children.
比較器34のCPEQ端子35における出力は、ポート
状態決定器36により抜き取られて、シーケンサRAM
14に送られる開始ポートD信号38およびホスト1と
共にデータ転送を制御する停止ポートロ信月39を含む
制御フラグ信号を発生させる。開始ポートD信号38お
よび停止ポートH 3 9はいずれも、以下に詳しく説
明するこのデータ転送配列において重大な任務を果たす
。The output at the CPEQ terminal 35 of the comparator 34 is extracted by the port state determiner 36 and sent to the sequencer RAM.
It generates control flag signals including a start port D signal 38 sent to the host 14 and a stop port D signal 39 that together with the host 1 control the data transfer. Both the start port D signal 38 and the stop port H 3 9 play a critical role in this data transfer arrangement, which will be explained in detail below.
RAMパッファ4を呼び出1ことができる数個のDMA
チャネルがある。例えばFIFOナイクルにおいて、デ
ータはPIFO16とRAMバッファ4との量だけ増加
させる段階。このサイクル中に、R A Mバッノ7・
アドレス(BA15〜0)121はDP21の内容であ
る。FIFOサイクルはバッフ7・バスに対して最高の
優先度を有する。Several DMAs that can call RAM buffer 4
There is a channel. For example, in FIFO Nicle, the data is increased by the amount of PIFO 16 and RAM buffer 4. During this cycle, R A M Bano 7.
Address (BA15-0) 121 is the content of DP21. FIFO cycles have highest priority over the Buffer 7 bus.
他の優先度の低いDMAチャネルはパッフン◆データが
転送されてホストに出入りするホスト・サイクルである
。ホスト・サイクルの間、RAMバツファ・アドレス1
21はH P 2 0の内容である。The other low priority DMA channel is the host cycle where puff data is transferred to and from the host. During the host cycle, RAM buffer address 1
21 is the content of HP20.
転送サイクル優先度およびRAMバッファ4の転送方向
制御の機能は、D M A 装置御器5にあるサイクル
および方向制Ma器37によって果たされる。The functions of transfer cycle priority and transfer direction control of the RAM buffer 4 are performed by a cycle and direction control Ma unit 37 in the DMA device controller 5.
第3(b)図はHPG241、GPL281、CPEQ
351、初期状態セット361およびCPDP301が
下記の所定の動作規則または順序により発生される入力
信号である、ポート状態決定器36の1つの実施例を示
す。H T D 3 6 2は、ホスト書込みディスク
・サイクルまたはホスト読出しディスク・サイクルのい
ずれかにおけるデータ転送の方向を示す。以下において
、ポートDディスク制御器3を示し、ポート口はホスト
1を示す。ポートDCy信号363は、ディスク制御器
3からの転送盟求信号であるポートD要求信号3711
によって開始されるポートDの転送サイクルを示す。従
来のAND (論理積)ゲート2411〜2415およ
びNOR (否定論理相)ゲート2811〜2814は
、下記の所定の動作規則または順序に従って所望の停止
ポート口信号39および停止ポートD信号38を発生さ
せる。ポート状態決定器36により受信されたり発生さ
れる.E記のいろいろなタイミングならびにiljll
l信号は、第9図a〜第9図Sに示されているが、その
内の第9図b〜第9図jはディスク書込み動作中に得ら
れるものを示し、第9図k〜第9図Sはディスク読出し
動作中に得られるものを示す。Figure 3(b) shows HPG241, GPL281, CPEQ
351, shows one embodiment of port state determiner 36, where initial state set 361 and CPDP 301 are input signals generated according to a predetermined operating rule or sequence described below. HTD362 indicates the direction of data transfer in either a host write disk cycle or a host read disk cycle. In the following, the port D disk controller 3 is shown, and the port mouth is the host 1. The port DCy signal 363 is a port D request signal 3711 which is a transfer request signal from the disk controller 3.
2 shows a transfer cycle of port D initiated by . Conventional AND gates 2411-2415 and NOR gates 2811-2814 generate the desired stop port input signal 39 and stop port D signal 38 according to a predetermined operating rule or sequence described below. received or generated by port status determiner 36. Various timings of E book and iljll
The l signals are shown in FIGS. 9a to 9S, of which FIGS. 9b to 9j show those obtained during a disk write operation, and FIGS. Figure 9S shows what is obtained during a disk read operation.
第3(C)図はサイクルおよび方向11ltll器37
の構造を示す。それは基本的に、下記の所定の動作規則
または順序に従ってタイミング順序を発生させるDMA
タイミング発生器371から戒っている。DMAタイミ
ング発生器371は停止ポート}−1信号39およびポ
ートD要求信号3711を受信し、それによって、DM
ACLK1信号181の半分に等しいクロツク周波数を
有する転送クOツクXC3 7 1 3(7)IJli
lヲ受ケテ、ホート口cy信号3712およびポートo
cy信号363を発生させる。FIG. 3(C) shows the cycle and direction 11ltller 37.
The structure of It is basically a DMA that generates a timing sequence according to a predetermined operating rule or order below.
The timing generator 371 warns. The DMA timing generator 371 receives the stop port}-1 signal 39 and the port D request signal 3711, thereby causing the DMA
Transfer clock XC3 7 1 3 (7) IJli with clock frequency equal to half of ACLK1 signal 181
Receive port cy signal 3712 and port o
cy signal 363 is generated.
DMAタイミング発生器371はポートHACKB信号
3714をも受信するが、これはDMAtlIltII
l器5とホスト1との間のポート口要求83715の初
期手順信号である。DMAタイミング発生器371はそ
のとき、HPGP241、HPINC251、DPOU
T261、DPING271、GPL281、CPDP
301、CPINC311、ALE321、81EB3
716、80EB3717、LOI3718、BWEB
3719およびポート要求83715を含む数個のサイ
クルならびに方向制御信号を発生させる。DMA timing generator 371 also receives port HACKB signal 3714, which is DMAtlIltII.
This is an initial procedure signal for a port request 83715 between the device 5 and the host 1. The DMA timing generator 371 then outputs the HPGP 241, HPINC 251, DPOU
T261, DPING271, GPL281, CPDP
301, CPINC311, ALE321, 81EB3
716, 80EB3717, LOI3718, BWEB
3719 and a port request 83715 as well as a direction control signal.
サイクルおよび方向!11tll器37(またはタイミ
ング発生器371)によって受信されたり発生される上
述のいろいろなタイミングおよびill御信号は第7図
a〜第7図nに示されており、その内の第7図a〜第7
図dは受信された信号を表わす。Cycles and directions! The various timing and ill control signals described above that are received and generated by the 11tll generator 37 (or timing generator 371) are shown in FIGS. 7a-7n, of which FIGS. 7th
Figure d represents the received signal.
サイクルおよび方向制御器37によって受信されたり発
生ざれ、かつディスク読出しならびに書込み動作に直接
影響を及ぼす、上)ボのいろいろなタイミグおよびtI
Il御信号は第8図a〜第8図0に示ざれているが、そ
の内の第8図b〜第8図iはディスク書込み動作中(H
TD=1のとき)に得られるものを示し、第8図j〜第
8図Oはディスク読出し動作巾(口TD=Oのとき〉の
ものを示づ。The various timing and tI signals received or generated by the cycle and direction controller 37 and which directly affect disk read and write operations.
The Il control signals are shown in FIGS. 8a to 80, of which FIGS. 8b to 8i are used during a disk write operation (H
FIGS. 8j to 8o show what is obtained when TD=1), and FIGS. 8j to 8o show what is obtained when TD=0.
第7図、第8図および第9図のタイミングを一Uに相関
させるように、それらはおのおのクロック信号XCのタ
イミング図(すなわち第7図b、第8図aおよび第9図
a)を含んでいる。In order to correlate the timing of FIGS. 7, 8 and 9 to one U, they each include a timing diagram for clock signal XC (i.e. FIG. 7b, FIG. 8a and FIG. 9a). I'm here.
D M A IIIll Ill器5の動作は、上述の
DMACLK1信号から作られる内部DMAクロツクに
基づく。The operation of DMA IIIll Iller 5 is based on an internal DMA clock generated from the DMACLK1 signal mentioned above.
第4図から、内部DMAクロックが4つの作業段階、す
なわち作業段階0〜3を作ることが示されている。DM
Aサイクルの間、すべてのバイトは作業段fflOで内
始するとは限らない1つの作業段階でバツファ4に転送
されたリバッファ4から転送される。From FIG. 4, it is shown that the internal DMA clock creates four working stages, namely working stages 0-3. DM
During the A cycle, all bytes are transferred from rebuffer 4 to buffer 4 in one working phase, which does not necessarily start with working stage fflO.
実際の動作では、HP20およびGP22の比較は必ず
作業段階Oと1とで行われるが、DP21とCP23と
の比較は必ず作業段階2および3におけるHP20の値
の増加中に行われる。CP23の幀の増加は、作業段階
0および1におけるH P 2 0の増加を伴う。In actual operation, the comparison of HP20 and GP22 is always carried out in working phases O and 1, while the comparison of DP21 and CP23 is always carried out during the increase in the value of HP20 in working phases 2 and 3. An increase in CP23 is accompanied by an increase in H P 2 0 in working stages 0 and 1.
上述のDMA制御器5が具備されると、局部プロセッサ
LμP6により生じた初期条件から開始して、ホスト1
とディスク−1御器3との間でLμP6からの干渉なし
にデータ転送を自動的に実行することが可能である。動
作に必要な初用状態および値は、ポート状態決定器36
における初期状態ノ組361、HP20,GP22、D
PIおよびCP23の初期内容を含む。どんなデータで
も転送する菌に、[μP6は停止カウンタ(図示されて
いない)を初期設定する転送カウント(バイト)を計算
しなければならない。データ◆バイトがホスト1に転送
されたりホスト1から転送されるときは必ず、そのよう
な停止カウンタはホスト転送を停止させる0に達するま
で1つずつカウント・ダウンする。Once the above-mentioned DMA controller 5 is provided, starting from the initial conditions created by the local processor LμP6, the host 1
It is possible to automatically perform data transfer between the LμP 6 and the disk-1 controller 3 without interference from the LμP 6. The initial state and values required for operation are determined by the port state determiner 36.
Initial state set 361, HP20, GP22, D
Contains the initial contents of PI and CP23. To transfer any data, [μP6 must calculate a transfer count (bytes) that initializes a stop counter (not shown). Whenever a data byte is transferred to or from host 1, such a stop counter counts down by one until it reaches zero, which stops the host transfer.
D M A t.ll 611器の細部動作を説明する
ために、第5図(a)〜第5図(+))および第6図(
a)〜第6図(0)に示されるようなホスト書込みディ
スク・サイクルならびにホスト読出しディスク・サイク
ルの2つの別な動作に進む必要がある。D M A t. ll In order to explain the detailed operation of the 611 device, Fig. 5(a) to Fig. 5(+)) and Fig. 6(
It is necessary to proceed with two separate operations: a host write disk cycle and a host read disk cycle as shown in FIG. 6(0).
ホスト出込みディスク・サイクルを第5図(a)〜第5
図(p)および第9図a〜第9図jに関してこれから説
明する。Host input/output disk cycles are shown in Figures 5(a) to 5.
Reference will now be made to FIG. 9(p) and FIGS. 9a to 9j.
ホスト書込みディスク・サクルにおいて、第5図(a)
は初期状態r l−I P 2 1、DP21、GP2
2が同じ位置を指し、CP23がHP20より小さい1
つのセクタ(例えば512バイト)の位置を指す。第9
図0のタイミング図に示される通り、時1m表示t5a
で、信号停止ポートト139はOにセットされてポート
口転送を可能にする。開始ポート038はOにセットさ
れてポートD転送を禁止する。第5図(b)はホスト1
がバッファ4にデータ転送を開始するとき、HP20の
値およびCP23の値がホストから転送されるデータの
各バイトと共に増分されることを示す。In the host write disk cycle, FIG. 5(a)
is the initial state r l-I P 2 1, DP21, GP2
2 points to the same position, CP23 is smaller than HP20 1
This indicates the location of one sector (for example, 512 bytes). 9th
As shown in the timing diagram of Figure 0, hour 1m display t5a
Then, signal stop port 139 is set to O to enable port-to-port transfer. Start port 038 is set to O to inhibit port D forwarding. Figure 5(b) shows host 1
indicates that when the host starts transferring data to buffer 4, the values of HP20 and CP23 are incremented with each byte of data transferred from the host.
第5図<C)は、データの1つのセクタがホスト1から
転送されてから、CP23の値がDP21の値に等しく
なって、その結果開始ポートD38が時間表示t5cの
点で第9図jのタイミング図にボされる通り1にセット
されて、ポートDが使用可能にされることを示す。FIG. 5<C) shows that after one sector of data has been transferred from the host 1, the value of CP23 becomes equal to the value of DP21, so that the starting port D38 is at the point of time indication t5c. is set to 1 to indicate that port D is enabled, as shown in the timing diagram.
第5図(d)は、.ポートDがディスクにデータを転送
し始めると、DP21の値がディスクに転送されるデー
タの各バイトと共に増分されることを示す。FIG. 5(d) shows . When port D begins to transfer data to disk, it indicates that the value of DP21 is incremented with each byte of data transferred to disk.
第5図(e)は、バッファ4にあるデータの完全セクタ
(例えば512バイト)が1個に満たないことをボすD
P21がCP23に結局追いつき、その結果開始ボー1
− 0 3 8が第9図jのタイくング図に時間t5e
で示される通りOにセットされる。Figure 5(e) shows that there is less than one complete sector (for example, 512 bytes) of data in buffer 4.
P21 eventually caught up with CP23, resulting in a starting bow of 1.
- 0 3 8 is shown at time t5e in the tying diagram of Figure 9j.
It is set to O as shown in .
第5図(f)は、開始ポートD38が作動していないが
、ポートDのみが各セクタ転送の初めに開始ポートD3
8の状態を検査し、その結果ポートDはデータの1つの
完全セクタが転送されるまでディスクにデータを転送し
続けることを示す。FIG. 5(f) shows that the starting port D38 is not activated, but only the starting port D38 is activated at the beginning of each sector transfer.
8, indicating that port D will continue to transfer data to the disk until one complete sector of data has been transferred.
第5図(lは、データの1つの完全セクタがディスクに
転送されてから、G22がDP21の{直にセットされ
てポートDが開始ポート038の状態を検査することを
示す.開始ポートD38はOに等しいので、ポートDデ
ータ転送はいま停止される。FIG. 5 (l indicates that after one complete sector of data has been transferred to the disk, G22 is set immediately on DP21 and port D checks the status of starting port 038. Since port D data transfer is now stopped.
第5図(h)および第5図(i)は、バッファ4にいま
データの2つ以上のセクタがあるとき、ポートDは開始
ポートDを1にセットすることによって使用可能にされ
ることを示す。Figures 5(h) and 5(i) show that when there is now more than one sector of data in buffer 4, port D is enabled by setting start port D to 1. show.
第5図(j)は、バッファ4が最終的に満杯であるとぎ
HP20がGP22に追いつくことを示す。ホスト・デ
ータ用の部屋は存在しない。したがって第9図qのタイ
ミング図に示される通り、時間t5jで、停止ポートH
39は1にセッ1・される。ディスク・データ転送速度
は比較的遅いので、バッフ74は十分に満たされる。FIG. 5(j) shows that HP 20 catches up with GP 22 once buffer 4 is finally full. There is no room for host data. Therefore, as shown in the timing diagram of FIG. 9q, at time t5j, the stop port H
39 is set to 1. Since disk data transfer rates are relatively slow, buffer 74 is fully filled.
第5図(k)は、データの1つのセクタがディスクに転
送されるまでは、データの最終ブロックまたはセクタが
ECC/CRCによってまだ処理されているのでGP2
2を更新することはできない。したがってポートロはま
だ使用不能である。Figure 5(k) shows that the GP2
2 cannot be updated. Portro is therefore still unusable.
第5図(1)は、バッファ4にあるデータの最終ブロッ
クが最終的にECC/CRC1 7によって処理された
のでGP22が更新されることを示す。したがって、第
9図9のタイミング図に示される通り、時間t51で、
停止ポート839は0にセットされてポートHは再び転
送を開始する。FIG. 5(1) shows that GP 22 is updated because the last block of data in buffer 4 has finally been processed by ECC/CRC 1 7. FIG. Therefore, as shown in the timing diagram of FIG. 9, at time t51,
Stop port 839 is set to 0 and port H starts transferring again.
第5図(m)および第5図(n)は、停止ポートH=0
および1m始ポートD=1であることを示し、したがっ
てポートト1およびポートDは能動状態である。FIG. 5(m) and FIG. 5(n) show the stop port H=0
and 1m indicates that the starting port D=1, so port 1 and port D are active.
第5図(0)は、開始ポートD38がOにセットされる
とDP21みCP23に追いつくことを示す。一方では
、ポートDP21はデータの最終セクタをまだ転送中で
ある。FIG. 5(0) shows that when starting port D38 is set to O, only DP21 catches up with CP23. On the one hand, port DP21 is still transferring the last sector of data.
第5図(p)はバッファ4が空白であることを示す。す
べてのポインタおよびフラグは最初の状態と同じである
。FIG. 5(p) shows that buffer 4 is blank. All pointers and flags are the same as their initial state.
ホスト読出しディスク・サイクルは第6図(a)〜第6
図(0)および第9図k〜第9図Sに関してこれから説
明する。The host read disk cycle is shown in Figures 6(a) to 6.
FIG. 9(0) and FIGS. 9k to 9S will now be described.
第6図(a)は、初期の状態}IP20,GP22、D
P21が同じ位置を指し、CP23は1つのセクタが目
P201.:満たない位置を指すことを示す。FIG. 6(a) shows the initial state} IP20, GP22, D
P21 points to the same position, and CP23 points to one sector as P201. : Indicates a position that is not satisfied.
停止ポートH39は1にセットされて、ポート[一1転
送を不可能にする。第9図Sに示される通り、時間te
aで、開始ポートD38は1にセットされて、ポートD
転送を可能にする。Stop port H39 is set to 1 to disable port [11 forwarding. As shown in FIG. 9S, the time te
a, start port D38 is set to 1, and port D
enable transfer.
第6図(b)は、ポートDがディスク・データをバッフ
ァ4に転送し始めることを示す。DP21はデータの各
バイトがディスクから転送されるにつれて増分ざれる。FIG. 6(b) shows port D beginning to transfer disk data to buffer 4. FIG. DP21 is incremented as each byte of data is transferred from disk.
第6図(C)は、データの1つのセクタがディスクから
転送されてECCが修正されてから、GP22の値がD
P21の値に等しくなるように更新され、次に第9図p
に示される通り、時間t6Cで、停止ポート口39がO
にセットざれてポート口を使用可能にすることを示す。Figure 6(C) shows that after one sector of data has been transferred from the disk and the ECC has been modified, the value of GP22 is D.
P21 is updated to be equal to the value of P21, and then the value of FIG.
As shown in , at time t6C, the stop port opening 39 becomes O.
is set to indicate that the port is enabled.
第6図(d)は、停止ポートト1がOにセットされてか
ら、開始ポートDが1にセットされるので、ポートDお
よびポート口がいずれも使用可能にされることを示す。FIG. 6(d) shows that after stop port 1 is set to O, start port D is set to 1, so that both port D and port mouth are enabled.
第6tJ(e)は、ホストに転送し得る修正されたEC
Cがないことを表わしながらHP20が結局GP22に
追いつき、したがって第9図pに示される通り、時間6
eで、停止ポートト139が1にセットされることを示
す。Section 6tJ(e) is a modified EC that can be transferred to the host.
HP20 eventually catches up with GP22, representing the absence of C, and thus at time 6, as shown in Figure 9p.
e indicates that the stop port 139 is set to 1.
第6図(f)および第6図(9〉は、データの2個以上
のセクタがバッファ4に転送されているが、GP21に
先んずるデータの1個のセクタはまたEGG修正されて
いないので、GP22を更新することができず、ポート
口が依然として使用不能であることを示す。Figures 6(f) and 6(9) show that more than one sector of data has been transferred to buffer 4, but one sector of data preceding GP21 is also not EGG modified. Therefore, GP22 cannot be updated, indicating that the port mouth is still unavailable.
第6図(h)は、1個のセクタがいまFCC修正され、
したがってGP22がDP21の前に(次の未修正セク
タの前に)セクタ境界まで更新され、次に停止ポート口
39がOにセットされてポートHが使用可1拒にされる
ことを示す。FIG. 6(h) shows that one sector has now been FCC corrected,
Therefore, GP22 is updated to the sector boundary before DP21 (before the next unmodified sector), and then stop port 39 is set to O to indicate that port H is enabled.
第6図(i)は、ディスク・データを記憶するバッファ
・スペースの完全セクタ(例えば512バイト〉が1個
未満であることを表わしながら、DP21がCP23に
追いつくことを示し、したがって第9図Sに示される通
り、時間t61で、開始ポートD38がOにセットされ
ることを示す。FIG. 6(i) shows that DP21 catches up with CP23, representing less than one full sector (e.g. 512 bytes) of buffer space storing disk data, and thus FIG. As shown in FIG. 3, it is shown that the start port D38 is set to O at time t61.
第6図(j)は、データの1個のセクタがバッファ4に
転送されてから、開始ポートD38が検査され、ポート
Dを使用不能にさせる。データの最後の転送されたセク
タがECCM正されているので、GP22はDP21ま
で史新される。FIG. 6(j) shows that after one sector of data has been transferred to buffer 4, starting port D38 is examined and port D is disabled. Since the last transferred sector of data has been ECCM corrected, GP22 is updated to DP21.
第6図(k)は、ディスク・データの1@のセクタ用の
十分なスペースがあることを表わしながら、CP23が
DP21に追いつき、したがってポートDが使用可能に
され、すなわち開始ポートD38が第9図Sの時間t6
kで1にセットされる。FIG. 6(k) shows that while there is enough space for 1@ sector of disk data, CP23 has caught up with DP21 and thus port D is enabled, i.e. starting port D38 is the 9th Time t6 in Figure S
Set to 1 at k.
第6図(l〉、第6図(m)および第6図(n)は、停
止ポート口一〇および開始ポートD=1のとき、ポート
HおよびポートDがいずれも能動的であることを示づ。Figures 6(l), 6(m) and 6(n) show that when stop port 10 and start port D = 1, port H and port D are both active. Show.
第6図(0〉は、HP20がGP22に追いつくとき、
バッノ74が空白であることを示すように停止ポートH
39が1にセットされることを示す。ポインタおよびフ
ラグはすべて初期状態と同じである。Figure 6 (0>) shows that when HP20 catches up with GP22,
Stop port H to indicate that Bano 74 is blank.
39 is set to 1. All pointers and flags are the same as their initial state.
上述の動作規則は下記の通り一般化することができる:
初期設定段階において、DMAC5の内側にあるすべて
の装置は初期の鉋にセットされる。The above operating rules can be generalized as follows:
During the initialization stage, all devices inside the DMAC 5 are set to the initial plane.
データ転送が完了されるとは必ず、+m連ポインタは増
分され、次に開始ポート03Bまたは停止ポート口信号
を発生させたり逆にするポート状態決定器36を活性化
すべきか否かを決定するために比較される。これらの動
作規則はすべて、ホスト書込みディスク・サイクルおよ
びホスト読出しディスク・サイクルに適用される。Whenever a data transfer is completed, the +m chain pointer is incremented to determine whether to then activate the port status determiner 36 which generates or reverses the start port 03B or stop port signals. compared to All of these operating rules apply to host write disk cycles and host read disk cycles.
こうした構造のD M A IIll御器5の動作は、
ディスク制meの他のブロックと協力して、ホスト14
.
とディスク2との間のデータ転送の所望の機能を生む。The operation of the DMA IIll controller 5 having such a structure is as follows.
In cooperation with other blocks of disk-based me, the host 14
.. and the desired function of data transfer between the disk 2 and the disk 2.
ハードウエアの最小要求条件により、DMA制御器5は
データ転送工程が開始するとぎバッファ・メモリ4がホ
スト1およびディスク2によって呼び出されるかどうか
を検出することができる。i!III I1l m 5
は、誤りのデータが検出されかつ修正されるときにデー
タを転送することができる。Due to the minimum hardware requirements, the DMA controller 5 is able to detect whether the buffer memory 4 is called by the host 1 and the disk 2 as soon as the data transfer process begins. i! III I1l m 5
may transfer data when erroneous data is detected and corrected.
したがって、D M A ill御器5は局部ブ0セッ
サ6およびホスト1の干渉なしにデータ転送を効果的に
処理することができ、したがってホスト・システム1の
性能が向上ずる。Therefore, the DMAill controller 5 can effectively handle data transfers without interference from the local processor 6 and the host 1, thus improving the performance of the host system 1.
本発明は特定の実施例に関して説明されたが、間示され
た発明の主旨および特許請求の範囲から逸脱せずにいろ
いろな変更ならびに変形が行われることを当業者は理解
しなければならない。Although the invention has been described with respect to particular embodiments, those skilled in the art will appreciate that various modifications and changes can be made without departing from the spirit of the invention as set forth and the scope of the claims.
第1図は本発明のディスク制Iu器を含むディスク・ベ
ースのコンピュータ・シスデムの主ビルディング・ブロ
ック図、第2図は本発明のディスク制御器の機能ブロッ
ク図、第3(a)図から第3(C)図までは本発明の好
適な実施例のifill図、第4図はクロツク信号の区
分を示すグラフ図。第5図(a)から第5図(p)まで
はホスト読出しディスク・サイクルにおける本発明のポ
インタの動作の詳細図、第6図(a)から第6図(0)
まではホスト書込みディスク・サイクルにおける本発明
のポインタの動作の詳細図、第7図aから第7図nまで
は第3(C)図のサイクルおよび方向副御によって受イ
エされたり発生される1組の信号の同時に生じるタイミ
ング図、第8図aから第8図Oまでは第3(C)図のサ
イクルおよび方向Ill御によって受信されたり発生ざ
れるもう1組の信号の同時に生じるタイミング図であっ
て、その内の第8図dから第8図1までがディスク書込
み動作中に得られ、第8図jから第8図Oまでがディス
ク読出し動作中に得られる前記タイミング図、第9図a
から第9図Sまでは第3(b)図のポート状態決定器に
よって受信されたり発生される信号の同時に生じるタイ
ミング図であって、その内の第9図bから第9図jまで
がディスク皇込み勤作中に得られ、かつW49図kから
第9図Sまでがディスク読出し動作中に得られる前記タ
イくング図を示す図面。
符号の説明:
1・・・・・・ホスト:2・・・・・・ディスク駆動器
;3・・・・・・ディスク制御器;4・・・・・・R
A Mバツファ;5・・・・・・DMAC (直接メモ
リ・アクヒスtljlMI器);6・・・・・・Lμp
(h4部マイクロブOセッサ);7・・・・・・エンコ
ーダ/デコーダFIG. 1 is a main building block diagram of a disk-based computer system including the disk controller of the present invention, FIG. 2 is a functional block diagram of the disk controller of the present invention, and FIGS. 3(C) to FIG. 3(C) are ifill diagrams of the preferred embodiment of the present invention, and FIG. 4 is a graph diagram showing divisions of clock signals. 5(a) to 5(p) are detailed diagrams of the operation of the inventive pointer during a host read disk cycle; FIGS. 6(a) to 6(0)
7(a) to 7(n) are detailed illustrations of the operation of the pointer of the present invention during a host write disk cycle; FIGS. FIGS. 8a through 8o are simultaneous timing diagrams of another set of signals received or generated by the cycle and direction control of FIG. Of these, FIG. 8 d to FIG. 8 1 are obtained during a disk write operation, and FIG. 8 j to 8 O are obtained during a disk read operation. a
9S to 9S are timing diagrams of simultaneous occurrences of signals received and generated by the port status determiner of FIG. 3B, of which FIGS. FIG. 9 is a diagram showing the tying diagram obtained during the process of working on a disc, and in which FIGS. Explanation of symbols: 1...Host: 2...Disk drive; 3...Disk controller; 4...R
A M buffer; 5...DMAC (direct memory access tljlMI unit); 6...Lμp
(h4 part microbe O processor); 7...Encoder/decoder
Claims (1)
装置のアクセスを制御する直接メモリ・アクセス制御器
において、前記バッファ・メモリと前記ホストおよびデ
ィスク装置との間のデータ転送はデータがホストとディ
スク装置との間で転送されかつ誤り修正装置によって処
理されるとき必ず、別々のディスク読出しおよび書込み
サイクル中に、第1および第2信号によりそれぞれ制御
され、前記直接メモリ・アクセス制御器は: (A)下記、すなわち (1)バッファ・メモリに対するホストのアクセス・ア
ドレスHP、 (2)バッファ・メモリに対するディスク装置のアクセ
ス・アドレスDP、 (3)前記アドレスHPから所定量だけ差し引かれたア
ドレスCP、 (4)前記誤り修正装置によって処理された所定の大き
さのデータ・ブロックの前記バ ッファ・メモリにあるアドレスGP、 を供給するポインタ装置と; (B)HPをGPと比較しかつDPをCPと比較する前
記ポインタ装置に結合される比較装置と; (C)前記比較装置に応動して、HPとGPが等しいと
きおよびDPとCPが等しいとき必ず、前記第1、第2
信号の状態をそれぞれ変えるポート状態決定装置と; (D)下記、すなわち (1)前記誤り修正装置が前記所定の大きさの1つのデ
ータ・ブロックを処理するときに必ず前記ポインタ装置
における前記アドレスGPを前記所定の量だけ増分させ
、 (2)データ・ユニットが前記バッファ・メモリと前記
ホストおよびディスク装置との間で転送されるときに必
ず前記ポインタ装置における前記アドレスHPならびに
DPを1つのデータ・ユニットの大きさだけそれぞれ増
分させ、 (3)現在停止しているならばデータ転送を開始させ、
または前記第1および第2信号のそれぞれの1つの状態
の変化に応じて前記バッファ・メモリと前記ホストおよ
びディスク装置との間で現在進行中ならばデータ転送を
停止させる、 サイクルおよび方向制御装置とを含むことを特徴とする
直接メモリ制御器。 (2)前記ディスク装置は複数個のデータのセクタを有
しており、前記データ・ブロックの大きさは1個のセク
タの大きさに等しく、かつアドレスCPはアドレスHP
よりも1個のディスク・セクタの大きさよりも小さい、
ことを特徴とする請求項1記載による直接メモリ制御器
。 (3)前記誤り修正装置は前記データにある誤りを修正
することによって前記読出しおよび書込みの間に前記デ
ータを処理する、ことを特徴とする請求項1記載による
直接メモリ制御器。 (4)ポインタ装置の初期の内容ならびに前記第1およ
び第2信号の状態をセットする局部プロセッサをさらに
含む、ことを特徴とする請求項1記載による直接メモリ
制御器。 (5)前記初期の内容は、HP=GP=DPのセッティ
ング、CP=HP−セクタの大きさ+1のセッティング
、ホスト読出しディスク・サイクル中において前記第1
および第2信号をそれぞれ不活性ならびに活性にするよ
うなセッティング、およびホスト書込みディスク・サイ
クル中におけるそれぞれ活性ならびに不活性としてのセ
ッティングによって達成される、ことを特徴とする請求
項3記載による直接メモリ制御器。 (6)前記第1信号の不活性状態によりホストはバッフ
ァ・メモリに出入するデータの1バイトを転送すること
ができ、また前記第2信号の活性状態によりバッファ・
メモリはディスク装置に出入りするデータの1セクタを
転送することができる、ことを特徴とする請求項4記載
による直接メモリ制御器。 (7)バッファ・メモリの大きさはディスク装置の複数
個のセクタの大きさに等しい、ことを特徴とする請求項
1記載による直接メモリ・アクセス制御器。 (8)ホストおよびディスク装置のバッファ・メモリに
対するアクセスを制御する方法において、前記バッファ
・メモリと前記ホストおよびディスク装置との間のデー
タ転送は、データがホストとディスクとの間で転送され
て誤り修正装置により処理されるときは必ず、別のディ
スク読出しおよび書込みサイクル中に、第1および第2
信号によってそれぞれ制御される前記方法は、 (A)個々のポインタ・レジスタにおいて下記、すなわ
ち (1)バッファ・メモリに対するホストのアクセス・ア
ドレス、 (2)バッファ・メモリに対するディスク装置のアクセ
ス・アドレス、 (3)前記アドレスHPから所定の量だけ差し引かれた
アドレスCP、 (4)前記誤り修正装置によって処理された所定の大き
さのデータ・ブロックの前記バ ッファ装置にあるアドレスGP、 を供給する段階と、 (B)HPをGPと比較しかつDPをCPと比較する段
階と、 (C)HPとGPが等しいとき、およびDPとCPが等
しいときは必ず、前記第1および第2信号の状態を前記
比較段階に定められた通りに変える段階と、 (D)前記誤り修正装置が前記所定の大きさの1つのデ
ータ・ブロックを処理するときは必ず、前記アドレスG
Pを前記所定の量だけ増加させる段階と、 (E)データ・ユニットが前記バッファ・メモリと前記
ホストおよびディスク装置との間で転送されるときに必
ず、前記アドレスHPおよびDPを1つのデータ・ユニ
ットの大きさだけそれぞれ増分させる段階と、 (F)現在停止しているならばデータ転送を開始させ、
または前記第1および第2信号のそれぞれの1つの状態
が変化するときに必ず、前記バッファ・メモリと前記ホ
ストおよびディスク装置の1つとの間で現在進行中なら
ばデータ転送を停止させる段階とを含む、 ことを特徴とする制御方法。 (9)(A)前記第1および第2信号を活性となるよう
にセットし、HP=GP=DPとなるようにセットし、
かつホスト読出しディスク・サイクルの前にCP=HP
−ディスク・セクタの大きさ+1となるようにセットす
る段階と、 (B)前記第1および第2信号を非活性となるようにセ
ットし、HP=GP=Dとなるようにセットし、かつホ
スト書込みディスク・サイクルの前にCP=HP−ディ
スク・セクタの大きさ+1となるようにセットする段階
とから成る初期段階をさらに含む、 ことを特徴とする請求項8記載による直接メモリ・アク
セスを制御する方法。 (10)ホストとバッファ・メモリとの間でデータを転
送する段階は、 (A)1つのデータ・バイト転送後にHPを1だけ増分
させる段階と、 (B)HPがGPに等しいとき前記第1信号を活性とな
るようにセットする段階と、 (C)CPがDPに等しいとき前記第2信号を活性とな
るようにセットする段階と、 (D)CPを1データ・バイトだけ増分させる段階とを
含む、 ことを特徴とする制御方法。 (11)バッファ・メモリとディスク装置との間でセク
タ・データを転送する段階は (A)1つのデータ・バイトが前記バッファ・メモリに
転送されたりバッファ・メモリから転送されてから、D
Pを1だけ増分させる段階と、 (B)CPがDPに等しいとき前記第2信号を不活性と
なるようにセットする段階と、 (C)バッファ・メモリにあるデータの1つのブロック
が前記誤り修正装置によって処理されるときGPをDP
に等しくなるようにセットする段階と、 を含むことを特徴とする請求項8記載による直接メモリ
・アクセスを制御する方法。[Scope of Claims] (1) In a direct memory access controller that controls access by a host and a disk device to a buffer memory, data transfer between the buffer memory and the host and disk device is performed when the data is and a disk device and processed by an error correction device, the direct memory access controller is controlled by first and second signals, respectively, during separate disk read and write cycles, and the direct memory access controller: (A) The following, namely (1) host access address HP to the buffer memory, (2) disk device access address DP to the buffer memory, (3) address CP subtracted by a predetermined amount from the address HP. , (4) a pointer device for providing an address GP in the buffer memory of a data block of a predetermined size processed by the error correction device; (B) comparing HP with GP and DP with CP; (C) in response to said comparison device, whenever HP and GP are equal and whenever DP and CP are equal, said first and second
(D) the following: (1) the address GP in the pointer device whenever the error correction device processes one data block of the predetermined size; (2) incrementing the addresses HP and DP in the pointer device by the predetermined amount whenever a data unit is transferred between the buffer memory and the host and disk device; (3) start data transfer if currently stopped;
or a cycle and direction control device that stops data transfer, if currently underway, between the buffer memory and the host and disk device in response to a change in state of each one of the first and second signals; A direct memory controller comprising: (2) The disk device has a plurality of data sectors, the size of the data block is equal to the size of one sector, and the address CP is equal to the address HP.
smaller than the size of one disk sector,
A direct memory controller according to claim 1, characterized in that: 3. A direct memory controller according to claim 1, wherein said error correction device processes said data during said reading and writing by correcting errors in said data. A direct memory controller according to claim 1, further comprising: (4) a local processor for setting the initial contents of a pointer device and the states of said first and second signals. (5) The initial content is set to HP=GP=DP, CP=HP-sector size+1, and the first
and a second signal as inactive and active, respectively, and as active and inactive, respectively, during a host write disk cycle. vessel. (6) The inactive state of the first signal allows the host to transfer one byte of data into and out of the buffer memory, and the active state of the second signal allows the host to transfer one byte of data into and out of the buffer memory.
5. A direct memory controller according to claim 4, wherein the memory is capable of transferring one sector of data to and from the disk device. (7) The direct memory access controller according to claim 1, wherein the size of the buffer memory is equal to the size of a plurality of sectors of the disk device. (8) In a method for controlling access to a buffer memory of a host and a disk device, data transfer between the buffer memory and the host and disk device is such that data is transferred between the host and the disk and errors occur. Whenever processed by a modification device, the first and second
The methods, each controlled by a signal, include (A) in each pointer register: (1) the host's access address to the buffer memory; (2) the disk device's access address to the buffer memory; 3) providing an address CP subtracted by a predetermined amount from the address HP; (4) an address GP in the buffer device of a data block of a predetermined size processed by the error correction device; (B) comparing HP to GP and DP to CP; and (C) determining the states of the first and second signals whenever HP and GP are equal and whenever DP and CP are equal. (D) whenever said error correction device processes one data block of said predetermined size, said address G
(E) increasing the addresses HP and DP to one data unit whenever a data unit is transferred between the buffer memory and the host and disk device; (F) starting data transfer if currently stopped;
or stopping a data transfer, if currently underway, between the buffer memory and the one of the host and disk devices whenever the state of each one of the first and second signals changes. A control method comprising: (9) (A) setting the first and second signals to be active so that HP=GP=DP;
and CP=HP before host read disk cycle
(B) setting the first and second signals to be inactive such that HP=GP=D; and 9. Direct memory access according to claim 8, further comprising an initial step of setting CP = HP - disk sector size + 1 before a host write disk cycle. How to control. (10) Transferring data between the host and the buffer memory includes: (A) incrementing HP by 1 after transferring one data byte; and (B) incrementing the first byte when HP is equal to GP. (C) setting the second signal to be active when CP is equal to DP; and (D) incrementing CP by one data byte. A control method comprising: (11) The steps of transferring sector data between a buffer memory and a disk device are (A) after one data byte is transferred to or from the buffer memory;
(B) setting said second signal to be inactive when CP is equal to DP; and (C) incrementing P by one; (C) setting said second signal to be inactive when one block of data in a buffer memory GP to DP when processed by correction device
9. A method for controlling direct memory access according to claim 8, comprising the steps of: setting .
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP29946389A JPH0622005B2 (en) | 1989-11-17 | 1989-11-17 | Pointer-based direct memory access controller |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP29946389A JPH0622005B2 (en) | 1989-11-17 | 1989-11-17 | Pointer-based direct memory access controller |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH03168857A true JPH03168857A (en) | 1991-07-22 |
| JPH0622005B2 JPH0622005B2 (en) | 1994-03-23 |
Family
ID=17872900
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP29946389A Expired - Lifetime JPH0622005B2 (en) | 1989-11-17 | 1989-11-17 | Pointer-based direct memory access controller |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0622005B2 (en) |
-
1989
- 1989-11-17 JP JP29946389A patent/JPH0622005B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0622005B2 (en) | 1994-03-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5056010A (en) | Pointer based DMA controller | |
| US5276662A (en) | Disc drive with improved data transfer management apparatus | |
| US5784390A (en) | Fast AtA-compatible drive interface with error detection and/or error correction | |
| US4825403A (en) | Apparatus guaranteeing that a controller in a disk drive system receives at least some data from an invalid track sector | |
| US5465338A (en) | Disk drive system interface architecture employing state machines | |
| US4612613A (en) | Digital data bus system for connecting a controller and disk drives | |
| US4965801A (en) | Architectural arrangement for a SCSI disk controller integrated circuit | |
| US4454595A (en) | Buffer for use with a fixed disk controller | |
| US5267241A (en) | Error correction code dynamic range control system | |
| US8762596B2 (en) | Direct memory access controller with multiple transaction functionality | |
| CN114328316A (en) | DMA controller, SOC system and data carrying method based on DMA controller | |
| US20070182445A1 (en) | Efficient configuration of daisy-chained programmable logic devices | |
| US4773004A (en) | Disk drive apparatus with hierarchical control | |
| US4630269A (en) | Methods for diagnosing malfunctions in a disk drive | |
| US4600990A (en) | Apparatus for suspending a reserve operation in a disk drive | |
| JP2696212B2 (en) | Error correction device | |
| JPH1040122A (en) | Computer | |
| US4593375A (en) | Read-write processor with internal diagnostic data path | |
| JPH03168857A (en) | Direct memory access controller of pointer base | |
| US20070022226A1 (en) | Direct memory access system for iSCSI | |
| JPH0721103A (en) | Data transfer device | |
| KR0147709B1 (en) | Data transfer control apparatus using single buffer and its method | |
| US11914895B2 (en) | Method for updating stored information and apparatus | |
| JPS6083451A (en) | Synchronous data buffering system | |
| JPS60214043A (en) | Pipeline control circuit |