JPH06502267A - 多重マイクロコントローラのハード・ディスク・ドライブを制御するアーキテクチャ - Google Patents

多重マイクロコントローラのハード・ディスク・ドライブを制御するアーキテクチャ

Info

Publication number
JPH06502267A
JPH06502267A JP4501844A JP50184492A JPH06502267A JP H06502267 A JPH06502267 A JP H06502267A JP 4501844 A JP4501844 A JP 4501844A JP 50184492 A JP50184492 A JP 50184492A JP H06502267 A JPH06502267 A JP H06502267A
Authority
JP
Japan
Prior art keywords
data
control
buffer
microcontroller
transfer
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
JP4501844A
Other languages
English (en)
Other versions
JP3262330B2 (ja
Inventor
スクワイアーズ ジョン ピー
サンダー チャールズ エム
キーラー スタントン エム
クレイ ドナルド ダブリュー
Original Assignee
シーゲイト テクノロジー エルエルシー
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 シーゲイト テクノロジー エルエルシー filed Critical シーゲイト テクノロジー エルエルシー
Publication of JPH06502267A publication Critical patent/JPH06502267A/ja
Application granted granted Critical
Publication of JP3262330B2 publication Critical patent/JP3262330B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B5/00Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
    • G11B5/48Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed
    • G11B5/54Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head into or out of its operative position or across tracks
    • G11B5/55Track change, selection or acquisition by displacement of the head
    • G11B5/5521Track change, selection or acquisition by displacement of the head across disk tracks
    • G11B5/5569Track change, selection or acquisition by displacement of the head across disk tracks details of specially adapted mobile parts, e.g. electromechanical control devices
    • G11B5/5578Multiple actuators addressing the same disk, e.g. to improve data rate or access rate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)
  • Peptides Or Proteins (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 多重マイクロコントローラの11−ド・ディスク・ドライブを制御するアーキテ クチャ 関連出願の参照 「ディスク・ドライブ・システムを制御するアーキテクチャ」という名称の本出 願の譲受人にr11fI!された1987年6月2日付は米国特許出願番号下0 57、289号。
[ディスク・ドライブのソフトウェア・システムのアーキテクチャ」という名称 の本出願の譲受人に譲渡された1987年6月2日付は米国特許出願番号下05 7、806号。 「低電力、ディスク・ドライブ・システムのアーキテクチャ」 という名称の本出願の譲受人に譲渡されたl987年2月4日付は米国特許出願 番号下152.069号。
[複数の埋め込み型直交サーボ・フィールドを使用するディスク・ドライブ・シ ステム」という名称の本出願の譲受人に譲渡された1989年7月27日付は米 国特許出願番号下386.504号。
「ディスク・ドライバに遮断モードを適用できる読み取りイコライザJという名 称の本出願の譲受人に譲渡された1990年7月30日付は米国特許出願番号下 559.899号。
「適応性のある読み取り/書き込みチャンネル制御を採用するディスク・ドライ ブ・システムとこれの使用方法」という名称の本出願の譲受人に譲渡された19 89年IO月12日付は米国特許出願番号下420.371号。
「多重アクチュエータ・ディスク・ドライブ」という名称の本出願の譲受人に譲 渡された1989年11月3日付は米国特許出願番号下431.575号。
「高性能のディスク・ドライブのアーキテクチャ」という名称の本出願の譲受人 に譲渡された1990年11月9日付は米国特許出願番号第号。
「多重アクチュエータ・ディスク・ドライブ」という名称の本出願の譲受人に譲 渡された1990年11月9日付は米国特許出願番号下 号。
技術分野 本発明は、一般的に、ハード・ディスク・ドライブとディスク・ドライブの電子 制御システムに関する。特に、本発明は、ハード・ディスク・ドライブのディス ク・スタックに対して1つ以上のアクチュエータの組を制御する高性能、多重処 理装置による電子制御システムに間する。
背景技術 ディスク・ドライブ・システムの開発は、市場での要求が発展し続けるのに応じ て実質的なペースで継続している。ディスク・ドライブは、フル機能のノート型 コンピュータから高性能、シングル・ユーザ、マルチタスクのワークステーショ ンに至る迄、更には広範囲汎用化された高性能マルチユーザのコンピュータ・シ ステムに至る迄の多様なシステムに用途を育している。このような異なった分野 の用途で使用するディスク・ドライブの設計要件は、実質的に変化するものであ ることは明らかであるが、多数の共通する要件も存在する。これらの要件には、 高信頼性、低電力消費、高速度のデータ・アクセスとデータ転送、及び与えられ た記憶容量に対して形状因子のサイズと重量か最小となることが含まれる。
ワークステーションと高性能汎用コンピュータ・システムの場合、ディスク・ド ライブの設計上の要件は、大容量で十分なデータ・アクセス及び転送の速度に重 点かおかれる傾向がある。加えて、実際の用途の環境によって決まるドライブの 性能を若干、またはできる限り、更には著しく改善するのに適合または強化でき るような高性能ドライブの指定した制御を実行するのに柔軟性を持たせる要望か ある。
一般的に従来の高性能ディスク・ドライブ・システムは、データのアクセス速度 を高めるために、実質的に機械的な性能向上方法に依存してきた。このような改 善には、1ディスク面に対して複数のデータ読み取り/書き込みヘッドを設ける ことが含まれる。幾つかの実施例では、複数のヘッドは共通のアクチユニーク・ アーム上に保持され、これによってトラックの所望のロケーションに到達するデ ータ・シーク行程の長さを短縮している。または、複数のアクチュエータ・アセ ンブリを使用し、独立したデータのシークか同時に発生するのを可能にしてきた 。
これらは、データの転送速度を向上させる従来の手法を機械的に実現したもので あるか、制御エレクトロニクスという観点から、駆動システムを動作させるのに 必要な独立した特定の機能を管理するための特定の専用電子サブシステムを使用 しなければならなかった。一般的に、所望する高速度のデータ転送速度を得るこ とかできるが、このような設計は、必然的に駆動制御システムのアーキテクチャ を拘束する。機械的、または高いレベルの駆動制御動作の特定の本質を変更する ことは、もし完全な再設計ではなくても、少なくともその下に位置する対応した 電子的ハードウェアのアーキテクチャを変える必要かある。更に、最初の専用電 子サブシステムの開発並びにこれの続く全ての設計変更の実行に関連するコスト とは、相当な時間とコストを投質する結果となる。
発明の開示 従って、本発明の一般的な目的は、高速度のデータ・アクセスと転送を実現し同 時に高信頼性と低コストを維持することができるディスク・ドライブ・システム と電子制御アーキテクチャを提供することである。
これは、ホスト・プロセッサ・インタフェースと記録媒体の間のデータの転送を 制御する電子ディスク・ドライブ・アーキテクチャを設けることによって達成さ れ、このアーキテクチャは、データを記憶するための1つ以上のディスク面、メ モリ・バッファ、ホスト・インタフェース、これらのディスクとデータ・バッフ ァの間のデータの転送を制御する低レベルのデータ制御装置、ホスト・インタフ ェースとデータ・バッファの間のデータの転送を制御するインタフェース制御装 置、及び上記の低レベル制御装置とインタフェース制御装置からのデータの転送 要求に応答し、上記のデータ・バッファに対してデータの保存と検索アクセスを 仲裁するアービタとバッファの制御装置を有する。低レベル制御装置とインタフ ェース制御装置は、それぞれの制御動作を実行する場合、相互に実質的に独立し て動作する。従って、データは、データ・バッファを介して両方の制御装置に対 して最適なタイミングで双方向に転送される。
従って、本発明の利点は、本発明のインタフェースと低レベルのコントローラの 双方か効率的に使用されることであり、これによって、電子制御アーキテクチャ とドライブ・システムを介するデータの処理量を最大にする。
本発明の他の利点は、インタフェース制御装置と低レベル#制御装置のの双方が 、高性能、汎用マイクロコントローラを育し、これがファームウェアの制御プロ グラムの実行によってそれぞれの1llJ御装置の機能の重要な部分を実行する ことである。制御アーキテクチャの残りの部分は、数を限定した専用制御回路を 使用して実行される。しかし、このような回路は、マイクロコントローラによっ て直接またはプログラム制御されるように設計され、これによって動作の柔軟性 か最大になる。
更に本発明の利点は、電子制御アーキテクチャは、それぞれのアクチュエータ装 置を取り扱うために、他の低レベル制御装置を加えるることによって拡張できる ことである。従って、データのアクセス時間を実質的に短縮することができ、一 方これに対応して本発明によって構成したハード・ディスク制御システムによっ て達成可能なデータの転送速度を増加することができる。
本発明の更に他の利点は、本発明の電子制御アーキテクチャの動作は、ファーム ウェアに記憶した制御プログラムの変更によって、電子ハードウェアのアーキテ クチャを変更することな(、実質的に変更することができることである。
本発明の更に他の利点は、これがプログラム可能な支援を提供し、集積ドライブ ・エレクトロニクス(IDE)ホスト・インタフェースを使用する場合、このホ スト・インタフェースを介したデータ転送の待ち時間を最小にすることである。
本発明の更に他の利点は、これが所望するレベルのデータ転送とアクセスの速度 に対して、最低限の数の専用制御部品と最適な数の汎用マイクロコントローラを 使用することによって、低コストと高い柔軟性を維持することである。
図面の簡単な説明 本発明の上記及び他の利点、と機能は、添付の図面と関連させて検討した場合最 もよく理解され、ここで図面全体を通して同し参照番号は、同じ部品を示す。
第1図は、本発明の好適な実施例のアーキテクチャを示す代表例の多重アクチュ エータ制御システムのブロック図である。
第2図は、本発明の好適な実施例によって構成したディスク・ドライブ制御アー キテクチャのホスト・インタフェースと第2レベルの制御部分のブロック図であ る。
第3図は、本発明のバッファ・シーケンサとデータ転送支援の回路を詳細に示す ブロック図である。
第4図は、本発明の好適な実施例によって構成した制御支援回路の詳細プロ・ツ ク図である。
第5図は、本発明の好適な実施例によって構成したバッファ制御とシーケンサ装 置の詳細ブロック図である。
第6図は、本発明の好適な実施例によって構成したインタフェース支援回路の好 適な実施例の詳細ブロック図である。
第7a図は、本発明の好適な実施例によって構成した代替のインタフェース支援 回路の詳細ブロック図である。
第7b図は、第7a図に示すインタフェース支援回路か使用するプログラム可能 なバーストの転送制御論理の詳細ブロック図である。
発明を実施するための最良の形態 A、!!要・多重アクチュエータ制御システム複数のマイクロコントローラによ るハードディスク・ドライブ制御アーキテクチャを第」図に示し、一般的に参照 番号lOで示す。この制御アーキテクチャ10は、最終的にホスト・インタフェ ース12と接続したホスト・コンピュータとディスク14の磁気記録面の間でデ ータの転送を行う。代表例として示した実施例では、読み取り/書き込みヘッド 20が、内径(ID)と外径(OD)のトラックによって形成されるトラック帯 の内部の同心状トラック16の選択したトランク16’の上方に位置する。ディ スク14は、スビ〉・モータ18によって回転する。
ヘッド20は、湾曲したアーム22の上に支持さね、次に、このアームはボイス ・コイルを付けたモータで駆動するアクチュエータ24と接続する。更に別の複 数のディスク14とヘッド/アーム・アセンブリ20.22をスピン・モータ1 8とアクチュエータ24の上にそれぞれ連結することができる。アクチュエータ 制御装置32は、線26を介して、ヘッド20とシリアル・データの授受を行う 。制御線28はアクチュエータ制御装置32によって駆動さ札これによって、ア クチュエータ・モータ24と選択したトラック+6’に対するヘッド20の位置 を制御する。更に、アクチュエータ制御装置32は、スピン・モータ18を動作 させるのに必要な通信制御信号を発生する。スピン・モータ18を制御するのに 好適な方法と回路は、スフワイヤ他による、1989年IO月24EI付けの米 国特許番号第4.876.491号で説明されている。
実質的に第1アクチユエータ制御装置32と同一の第2アクチユエータfIiI 御装ft34を設置九湾曲した第2アーム40上に取り付けられヘボイス・コイ ル・モータによって駆動される第2アクチユエータ・アーム42に接続されたヘ ッド36の位置決めを制御する。線38は、ヘッド36とアクチュエータ制御装 置34の間で行われるシリアル・データの転送を可能にする。同様に、アクチュ エータ制御信号か線44を介してアクチュエータ制御装置34からアクチュエー タ・アーム42のボイス・コイル・モータに供給される。第4アクチユエータ制 御装置32は、スピン・モータ18を制御するので、この機能は第2アクチユエ ータ制御装置では実行されないか、または、その代わりに結線しないままにしで ある。
第2アクチユエータ制御装置34の動作は、第1アクチユエータ制御装置32と は実質的に映立していえる。従って、ヘッド35は、ヘッド20が上に位置する 同じトラック16’を育するディスク14の磁気記録面の上の選択したいづれの トラック16に対しても位置決めすることができる。
データ信号と制御信号は、アクチュエータ制御装置32.34によって、独立し たデータ・バスと#御バス46.48を介して、ホスト・インタフェース装置5 0に転送される。本発明の好適な実施例によれば、ホスト・インタフェース装置 50は、このホストとの通信に応答し、インタフェース12を介して、制御要求 とデータ要求を交換し、制御要求とデータ要求を満足する必要かある場合、対応 する一連の1つ以上の#御要求とff1i御データを、ディスク14に対してデ ータを検索または記憶するのに適するように、一方または両方のアクチュエータ 制御装置32.34に送る。
アクチュエータ制御装、fi32.34は、ディスク・データのバッファ用の独 立した共存メモリを内蔵し、ホスト・インタフェース50とディスク14の間を 転送中のデータを保持する。データは、共有メモリ内で待ち行列か作られた場合 、もし必要ならば、アクチュエータ制御装置32.34からマイクロコントロー ラ52に転送するために受け入れるのに先立って、ホスト・インタフェース装置 50によって監視と処理を行うことができる。この目的のため、またマイクロコ ントローラ52かアクチュエータ制御装置32.34とホスト・インタフェース 装置50の動的な機能をプログラムに基づいて制御できるため、データ、アドレ ス及び制御バス54を設ける。このバス54は、制御及びデータ・バス46.4 8とは独立して、メモリとVOが、アクチュエータ制御装置32.34とホスト ・インタフェース装置so内の制御及び状態レジスタに対してマツピングによる アクセスを行うことを可能にする。
アクチュエータ制御装f!i32.34は、それぞれホスト・インタフェース装 置50、マイクロコントローラ52及びシリアル・データ線26.38によって 示される対応するディスク・データ・チャンネルの間を仲裁アクセスし、アクチ ュエータ制御装置32.34の共有メモリを介したデータの転送に責任を持つ。
このように設けられた[6及びデータの経路のアーキテクチャは、ヘッドのシー クとトラックをトレースする位置決めとディスク14と共存メモリの間のデータ の読み取り/書き込み転送を制御することを含む低レベルのディスク制ia1機 能を、ホスト・インタフェースの命令の復号と管理及びインタフェース12とア クチュエータ制御装ft32.34の共有メモリの間のデータの転送のサポート を含むマイクロコントローラ52によって実行される高レベルの機能から実質的 に切り離す。従って、システム10ホストとと低レベルの局面の間の対話は、共 有メモリに対する仲裁されたインタリーピングに実質的に制限され、マイクロコ ントローラ52とアクチュエータ制御aEI装f132.34は、継続的に動作 しそれぞれの機能をサポートして動作する。
B、インタフェースと単一/多重のアクチュエータの制御システムのアーキテク チャ 一般的に、第2図は、共に参照番号60によって示すインタフェースと単一のア クチュエータ制御装置を実現する制御システムの詳細なブロック口を示す。イン タフェース制御装置のレベルは、ホスト・インタフェース装置50とマイクロコ ントローラ52を有する。本発明の好適な実施例では、マイクロコントローラ5 2は、モトローラ社の68F(C1lシングル・チップのマイクロプロセッサで あり、これは、システム・クロック速度4メガヘルツ(4MHz)で動作する。
この68F(C11は、モトローラ・データ・ブック で説明さね、モトローラ ・セミコンダクタ社(住所)より入手できる。更に含まれるのは、ランダム・ア クセス・メモリ(RAM)装置62とリード・オンリ・メモリ(ROM)装置6 4である。このROM装置64は、マイクロコントローラ52によって実行され る制御プログラムを記憶するために使用する。これらのRAM、ROMとホスト ・インタフェース装置f62.64,50は、マイクロコントローラ52のメイ ン・アドレス、1iII御及びデータ・バス54を介してアクセスできる。
第2図に示す残りの部品は、本発明の単一のアクチュエータ制御装置を作る。
このアクチュエータ制御装置は、バッファ/シーケンサ装置66とバッファRA Mメモリ68によって実現される共有メモリを有する。バッファ/シーケンサ装 置66は、バッファ・メモリ68をアクセスするために使用するアドレスを独自 に発生し、バス70を介してこれを設ける。共有データ・バス72は、ホスト・ インタフェース装置50とバッファ・メモリ68の面、及び、これとは別に、バ ッファ/シーケンサ66とバッファRAM68の間でデータの転送を可能にする 。
ホスト・インタフェース装置50によるバッファRAM68へのアクセスは、線 74を通過する要求と確認の制御信号を交換することによって、バッファ/シー ケンサ66によって仲裁される。
バッファ/シーケンサ66は、マイクロコントローラ52がバッファRAM68 の内容をアクセスしてこれを変更するためのページ・モードのアクセス・データ 経路をまた実現する。これは、アドレス、制御及びデータ・バス54のデータ・ バス部分をデータ線72とページ・モードのアドレス発生制御論理装置に接続し ている内部データ経路によって実現される。
第2マイクロコントローラ80が設けら札これはアクチュエータ制御装置のの全 ての動作を制御する。再び、マイクロコントローラ80は4MH2のモトローラ 社の688C11マイクロプロセツサであるおか好ましい。このマイクロコント ローラ80は、メイン・データ・アドレス・バスと制御バス86を介して、RA M装置82とROM装置84に接続されている。このROM装置64は、マイク ロコントローラ80によって実行される制御プログラムを記憶するために設けら れ、トラック+6’にに対するヘッド20のトラックをトレースする制御、選択 したいづれかのトラック16の間に於けるヘッド20のシークの制御、データを ディスク14の面の間で、更にバッファ/シーケンサ66を介してバッファRA M68へ読み取り/書き込み転送すること、最後にスピン・モータ18の回転を 上げる制御と速度の制御といった低レベルの制御機能を提供する。
バッファ/シーケンサ66は、マイクロコントローラ80をサポートし、ディス ク・データとサーボ・シーケンサの制御論理を有するのか好ましい。これらのシ ーケンサは、複数の制御レジスタによってプログラムされ管理されるのか好まし く、これらのレジスタは、データ・アドレス及び制御バス86を介してマイクロ コントローラ80にアクセスできる。読み取り/書き込み支援回路9oをまた設 け、一般的に線104 (WDAT)上にシリアル化したデータを発生させるこ とと、入力線1061□からの差動読み取り生データ信号を受け取ることに必要 なアナログ信号処理機能を実行する。イコライザ回路92は、前に示した「ディ スク・ドライブに適用できる遮断モードを有する読み取りイコライザ」と題され た米国特許出願に開示されるように構成されて動作し、1A10Bを介して読み 取り/書き込み支援回路90と接続される。線110を介して読み取り/書き込 み支援回路90と接続される電圧制御発振器(VCO)94は、線+08を介し て受け取った生データからデータのクロックを再び発振するのに使用する。この 生データ、即ちデータのクロックとクロックによって分離したNRZデータは、 線!00を介してバッファ/シーケンサに戻る。
制御支援装置88は、アドレス、データ及び制御バス86と接続され、アクチュ エータのシーク、トラックのトレース及びスピン・モータの制置機能を実行する 場合の、マイクロコントローラ80に対する基本的なハードウェアのサポートを 提供する。特に、制御支援装置t88は、デジタル/アナログ変換器(DAC) と電力ドライバを実現して差動制御信号(±VC)を発生し、この信号を使用し てアクチュエータ24のボイス・コイル・モータを駆動する。このデジタル/ア ナログ変換器に対する入力は、プログラム可能なデータ・レジスタであり、これ はデータ・アドレス及び制御バス86を介してマイクロコントローラ80によっ て書き込むことができる。同様の方法で、アドレス、データ及び制御バス86を 介して書き込むことかできる制御レジスタは、制御支援装置88内にプログラム 可能な内部インタフェースを設置九このインタフェースは、線114に供給され アクチュエータ・アームのラッチを使用可能または使用禁止にする制御信号、線 116に供給されアクチュエータ通信状態を設定する制御信号、線+28に供給 され読み取り/書き込み支援回路90の適mできる#衡プロファイル状態を設定 する制御信号、及び線130に供給され読み取り/iFき込み支援回路90に間 接的に電力を供給する制御信号の状態を設定する。
制御支援装置88の好適な単一チップの実施例では、スピン・モータ18を直接 駆動するのに十分な駆動電流は制御支援装置88を介して供給できない。従って 、線116に供給される通信#I卯信号を使用して、H童にブリッジ構成した電 力FET回路96を制御し、次に、この回路は三相の直接通信制御信号を線11 8上(Sp 1nA−c)に発生する。H型ブリッジ回路96からの電流帰還経 路は、線!20を介して制御支援装置88に設けられる。この電流による帰還は 、電圧レベルに変換され、線122の1本を介してマイクロコントローラ80の それぞれのアナログ/デジタル変換器の入力に供給される。
本発明の好適な実施例で埋め込み型サーボ制御サブシステムを実現するバッファ /シーケンサ66のサーボをシーケンス化する部分は、データ線100の1本を 介して読み取り/書き込み支援回路90によってバッファ/シーケンサ66に戻 された生データに応答する。これに応答して、バッファ/シーケンサ66の内部 サーボ・シーケンサ論理は、多数のサーボ制御信号98.、を発生し、ディスり 14から受け取った制置情報に対してアクチュエータ制御装置の動作を同期させ 管理する。内部サーボ・シーケンサは、サーボ・バーストのゲート信号のシーケ ンスを更に発生し、これらの信号は線102を介して読み取り/書き込み支援回 路90に供給される。これらのサーボ・バーストのゲート信号を使用してアドレ ス・マークか検出された信号の発生から計時されたそれぞれのサーボ・バースト をゲートし、またこれらのゲート信号はJ1981上でそれぞれのピーク信号線 +26にも供給される。制御支援装置88は、一般的に朦126を介して受信し たピーク信号の各々のためにサンプル及びホールド回路を有する。ピーク・サン プル及びホールド回路の出力は、マイクロコントローラ80の対応するアナログ /デジタル入力への線122のそれぞれ1本に供給される。この方法では、マイ クロコントローラ80は、所望する現在のトラック16′に対するヘッド20の トラックを外れた相対的な位置を得て判定することがきる。トラックを外れた状 態を補償するため、またはシーク動作中のアクチュエータの加速度のプロファイ ルを変更するために、マイクロコントローラ80は適当なアクチュエータ位置補 正のデジタル値を計算し、このデジタル値は、次に、制御支援装置88内のボイ スコイル・モータの位置変更制御レジスタに書き込まれる。
最後に、マイクロコントローラ80は、データを読み取りまたは書き込むために 使用する特定の読み取り/書き込みヘッド20を直接選択するように動作し、こ こで、それぞれのヘッドは、複数のディスク面からデータを読み取りこれらのデ ィスク面データを書き込むのに設けられている。特に、ヘッド選択線124は従 来のヘッド・データ・マルチプレクサ回路とプリアンプ回路(図示せず)に接続 され、読み取り/書き込みヘッド20の対応する1つに対して電子データ・チャ ンネルを選択的に使用可能にする。他の機能、例えば、線126を介してイコラ イザ回路92を使用可能にするような機能も、またマイクロコントローラ80に よって直接実行される。
インタフェースとアクチュエータ制御装置は共に参照番号60によって示され、 単一のアクチュエータ・アセンブリ20.22.24を介してホスト・インタフ ェース12とディスク14の間に完全な制御及びデータ経路を実現する。しかし 、本発明のアーキテクチャは、モジュールの拡張を容易に可能にし、アセンブリ 36.40.42のような複数のアクチュエータ・アセンブリをアーキテクチャ の重要な変更を行うことなく、アーキテクチャ全体の中に含ませることかできる 。
特に、ホスト・インタフェース装置50の好適な実施例には、第2低レベル制御 装置の共有バス76と要求/確認線78か設けられる。アクチュエータ制御装置 32の複製は、一般的にバッファ/シーケンサ66′、バッファ・メモリ68′ 、マイクロコントローラ8Q’ 、RAM82’ 、ROM84’ 、制御支援 装置88′及び読み取り/書き込み支援回路90′を有し、アクチュエータ制御 装rIt32の場合と基本的に同じ方法で相互に接続され、共有データ・バス7 6、要求/確認線78を介してホスト・インタフェースと接続され、データ、ア ドレスと制御のバス54にも接続さ法事2アクチュエータ・アセンブリ36.4 0.42にフル機能と独立1iII御を供給する。再び、留意すべき相違点は、 このような第2アクチユエータ制御装置は、スピン・モータ18の制御を行う必 要がないことであり、もしあっても、冗長モード即ちバック・アップ・モードの 場合だけである。
1、バッファ/シーケンサと読み取り/書き込み支援回路第3図を参照して、バ ッファ/シーケンサ66と読み取り/書き込み支援回路90を詳細に示す。図示 のように、バッファ/シーケンサ66は、インタフェース・マイクロプロセッサ 52に対するデータ・アドレス及び制御バス54 +−s上にメモリによってマ ツピングされた周辺装置として表わされる。要求/確認線74は別個のイネーブ ル線、要求線、確認線及びバイト・カウント信号線、131.132、+33を 有するのが好ましい。ホスト・インタフェース装置50は線+32を介してデー タ転送要求を供給することができる。仲裁か成功した時点で、バッファ/シーケ ンサ66は、134を介して確認信号を供給する。
バイト・カウント線136は、要求/確認の各周期で転送されるべきバイト数を コード化する。バッファ68に対するデータのアクセスと転送の効率を高めるた めに、l乃至4バイトの書き込みのバースト・シーケンスが、要求/確認の各周 期でバッファ68に転送される。静的RAMでバッファ・メモリか構成される場 合、単一バイトの転送を選択するのか好ましい。ページ・モードの動的RAMを 使用する場合、従来のページ・アクセスによるアドレスによって、l乃至4バイ トを高速シーケンスで転送することか可能になる。最後に、ホスト・インタフェ ース装rIL50によってデータがバッファ・メモリ68に転送された場合、バ ッファ/シーケンサ66によってイネーブル信号が発生される。転送の方向は、 ホスト・インタフェース装rIt50とバッファ/シーケンサ66の両者に対し て、ホスト・マイクロコントローラ52によって、前もってプログラムされてい る。線+31上のイネーブル信号を使用して、確認/データ転送周期を予期して ホスト・インタフェースの共有データ・バス・ドライバ回路をイネーブルする。
このイネーブル信号は、データの供給源かバッファ・メモリ68である場合、当 然使用されず、バッファ68のデータ・ドライブ回路は制御線70.上の信号に よってイネーブルされる。従って、バッファ68に転送された全てのデータは、 共有データ・バス72によって転送されたものである。バッファ/シーケンサ6 6は、アドレス線70Iとメモリ・アクセス制御線70.を駆動するのに必要な 、アドレス発生装置とバッファ制御回路を内蔵する。
マイクロプロセッサ52の割り込み入力に11138を設ける。マイクロプロセ ッサ80か処理装置1間の命令と付随するデータをマイクロプロセッサ52に転 送するためにデータ、アドレス及び制御バス86I−+を使用する場合、バッフ ァ/シーケンサ66は、常に線138に割り込み信号を供給する。特に、マイク ロコントローラ52は処理装置間の命令とデータ・レジスタを使用し、命令をマ イクロコントローラ80に送って次に実行しようとする動作を選択する。従って 、ホスト・インタフェース12を介して受け取った命令は、局部RAMメモリ6 2に転送され、マイクロコントローラ52によって、対応する低レベルの命令の ソーケンスに分解され、これらの命令はアクチュエータ制御装置32.34によ って順に実行される。表1とITは、好適な処理装置間の通信レジスタのセット を詳細に示す。
表 I マイクロコントローラlの通信レジスタレジスタ 寸法 ディレクトリ 機能 状悪 8ビツト 読み取り 命令とマイクロコントローラ2のデータの妥当状 態ビット マイクロコント 8ビツト 書き込 マイクロコントローラ1にローラ1の命令  よって書き込まれた命令の値 マイクロコント 8ビツト 読み取り マイクロコントローラ2にローラ2の命 令 よって書き込まれた命令の値 マイクロコント 16ビツト 書き込み マイクロコントローラlにローラlの データ よって書き込まれたデータ値マイクロコント 16ビツト 読み取り  マイクロコントローラ2にローラ2のデータ よって書き込まれたデータ値表I I マイクロコントローラ2の通信レジスタレジスタ 寸法 ディレクトリ 機能 状9 8ビツト 読み取り 命令とマイクロコントローラ1のデータの妥当状態 ビット マイクロコント 8ビツト 読み取り マイクロコントローラIにローラ1の命 令 によって書き込まれた命令の値 マイクロコント 8ビツト 書き込み マイクロコントローラ2にo−ラ2(M t令 よって書き込まれた命令の値 マイクロコント 16ビツト 読み取り マイクロコントローラ1(;ローラl のデータ よって書き込まれたデータ値 マイクロコント 16ビツト 書き込み マイクロコントローラ2にローラ2の データ よって書き込まれたデータ値 バッファ/シーケンサ66は、データをディスク14へまたはディスクI4がら 制御して転送するのに必要なディスク・データ・シーケンサとサーボ・シーケン サを更に実現する。スプリット・セクタ、カッド・サーボ・バースト、埋め込み 型のサーボ制御システムを使用するのか好ましく、これによって、セクタ・ヘッ ダの情報は現在選択しているヘッド20によって継続的にディスクから読み取ら 0、ヘッド20によってトラックをトレースすることを可能にする。差動読み取 り生データは、線106 +、tを介してイコライザ92とDC阻止コンデンサ C3とC6を通過し、線108 +、を介して読み取り/書き込み支援回路9o に供給される。差動生データに基づいたシングル・エンド差動信号を生データ信 号(RDAT)として線140を介してバッファ/シーケンサ66に供給する。
この読み取り/書き込み支fji回路90は、またデータ・クロックを生データ の流れから隔離し、対応するクロック信号を、線142を介してバッファ/シー ケンサ66に供給する。これらの信号から、バッファ/シーケンサ66は、その 内部サーボ・シーケンサ論理によって、このデータの流れの中でアドレス・マー クが発生するのを検出することができる。このアドレス・マークはセクタ・/\ ツダの始めを示す。対応するアドレス・マーク信号は、アドレス・マーク検出信 号として、また割り込み信号として、線98.を介してマイクロコントローラ8 0に供給される。この割り込み信号を使用して、マイクロコントローラ80によ って実行されるファームウェアのプログラムをディスク14の特定の回転位置に 同期させる。
本発明の好適な実施例によれば、一連の4つのサーボ・バーストのゲート信号は 、線146を介して読み取り/書き込み支援回路90に供給され、セクタ/ヘッ ダから得た生データ信号のそれぞれの部分をピーク線150I−4にゲートする 。
これらのゲート信号は、本発明の好適な実施例で使用される直交サーボ・バース ト・パターンを隔離することを意図する。直交サーボ・バースト・パターンを使 用するこの方法は、矛盾なく本発明で使用され、前に示した米国特許出願の[複 数の埋め込み型直交サーボ・フィールドを使用するディスク駆動システム」で説 明されている。レジスタtsz+−aとコンデンサ1541−4は、4つの並列 ピーク信号検出回路を実現する。検出されたピーク信号は、次に、線1221− 4 (IA−LD)に供給される。
バッファ・シーケンサ66のサーボ・シーケンサ論理は、更に線144を介して 読み取り/書き込み制御信号を読み取り/書き込み支援回路90に与え、一般的 にバッファ・シーケンサ66内のディスク・データ・シーケンサ論理によって決 定されるように、最終的にマイクロコントローラ80の指示によってセクター・ データ・フィールドの読み取り、または書き込みを選択する。セクターのヘッダ は、常に埋め込み型サーボ・トランク・トレース機能にサポートされて読み取ら れる。データをデータ・シーケンサ論理によってディスク14上のセクター・デ ータ・フィールドに転送すべき場合、シリアル化したデジタル・データを書き込 みデータ線148上で読み取り/書き込み支援回路90に供給する。このデータ は、続いて書き込みデータ線104上でヘッド・マルチプレクサ回路とプリアン プ回路(図示せず)に供給され、ディスク14の面上に記録するのに適したアナ ログ信号に変換される。
最後に、バッファ・シーケンサ66内のサーボ・シーケンサは、更にサーボ・セ クター・ヘッダからセクターのID番号を読み取るために設けられる。セロ・サ ーボ・セクター1Dを読み取った時αで、#を標信号を発生して線984を介し て供給する。
2、制御支援回路 制御支援回路88の内部ブロック図を第4図に示す。アトバス復号装置160は 、アドレス及び制御ハス861.を受け取り、次に、個々に選択したイネーブル 信号をそれぞれの線+62を介してスピン・ラッチ164、読み取り/書き込み 経路制御ラッチ166、デジタル/アナログ変換器(DAC)のラッチ168、 及び内部制御ラッチ174に供給する。データ・ハス861は、低レベルマイク ロコントローラ80が通信の状態を定義するデジタル・ワードをスピン・ラッチ 164に畜き込むことを可能にする。次に、対応する状慇$tlJ御信号か出力 線+16に供給される。
読み取り/書き込み経路制御ランチ166は、読み取り/書き込み支援回路90 によって使用された場合、データ・バス86.からデータ・ワードを受(ブ取り 、このデータ・ワードは、読み取りデータのタイミング窓に対する調整値、読み 取り信号の識別しきい値及び書き込み電流のレベルををデジタル的に決定する。
読み取り/Iき込み経路制御ランチ166のデジタル出力は、線128+−1を 介して供給された場合、3つの多重ビット2進符号化値を供給し、これらの値は 、レジスタ重み付は回路(図示せず)を通過すると、読み取り/書き込み支援回 路90によって使用されるべき所望するタイミング窓の遅延、読み取りしきい値 の電位及び書き込み電流レベルの変化と比例するアナログ信号値を供給する。こ れらの適応可能な読み取り/書き込みチャンネル制御値を使用する好適な方法は 、前に示した米国特許出願「適応可能な読み取り/書き込みチャンネル制御値を 使用するデジタル式駆動システムとその使用方法」に述へられている。
DACラッチ+88を設け、トラック′に対するヘッド20の位置に対する電流 の調整を決定するデジタル値を保持する。DACラッチ168の出力は、線+7 0を介してDACドライバ装置172に供給する。DACドライバ172内のデ ジタル/アナログ変換器は、このデジタル値を対応するアナログ値に変換する。
増幅係数を線176を介して内部制御ラッチ174の電流バッファから供給され るMm信号によって可変にf/i1mされているアナログ増幅器は、このデジタ ル/アナログ変換器の出力を増幅する。増幅されてもされなくても、その結果得 られるアナログ信号は、内部で供給されるVoot#f 188で動作し、高出 力電流が可能なドライバに供給される。次に、このアナログ・ドライバは、高電 流か可能な差動電圧をボイス・コイルの制御線+12に供給する。
内部制置ラッチ174を設け、データ・バス861からのデジタル・ワードをラ ッチする。このラッチされたワードのビット位置は、線176に供給される増幅 制御信号、線178に供給される変換イネーブル信号、線182を介したアラエ イフ・イネーブル信号、及び線184上のアンラッチ制御信号のそれぞれの状態 を決定する。このアラエイフ制御信号は、DACドライバ172とラッチ・ドラ イバ回路+90の通常動作をイネーブルするために供給される。このアラエイフ 信号かないと、DACとラッチ・ドライバ回路172,190の高い動作電流の 部分を事実上使用ディスエーブルする。次に、このアンラッチ制御信号を、線1 84に供給された場合、取り消すと、ラッチ回路190がアクチュエータ・ラッ チを解放する結果となる。このラッチは、線+14上の対応するランチ信号によ って動作する。このラッチ信号か線114に存在しないと、アクチュエータを、 一般的にトラック帯域■6の内径の内部にある予め選択したランディング・ゾー ン上にヘッド20を位置させて、機械的に保持することができる。
電源V、186によって動作され電源スィッチ192によって、低電力モードと 更に低電力消費スリーブ・モードの選択か可能になる。この低電カモートとスリ ーブ・モードは、それぞれ、線180jを介する周期制御信号と線182にアラ エイフ制御信号を供給することによって選択する。両方の信号は、内部制御ラッ チ174内の対応するビットをセントまたはリセットすることによって発生され る。周期制御信号単独の状態によって、5V電力か切り替えによって÷5V、線 130に供給されたり切られたりする。線130から電源を消すと、読み取り/ 書き込み支援回路90の動作か実質的に遮断される。アラエイフ制御信号を取り 消すと、線130に切り替えて供給されている+5Vcと線188に切り替えて 供給されている12ボルト電源V0か遮断する。従って、DACドライバとラッ チ・トライバ172、+90による電力消費もまたスリーブ・モードの持続期間 は遮断される。
電流77′電圧バツフア194を設けて!+20上のスピン戻り電流をスピン検 知j1122.上の対応する電圧レベルに変換する。電流/電圧バッファ194 は、線182に供給されるアラエイフ制御信号に応答し、スピン・ドライバ回路 96からの電流帰還経路を開放する。従って、スリーブ・モードでは、ドライバ 96とスピン・モータ18による電力消費らまた除去される。
最後に、制御支援回路88は、利得と差動増幅器装置196を有する。この装f t196は、ピーク・ホールド回路+52+−,154,−、から線126、− 、に供給されるピーク・アナログ電圧を受け取る。これに応答して、利得と差動 増幅器装ft196はピーク出力! l 222−5 +=を流をバッファした アナログ電圧を供給する。これらの出力電圧は、固定して、好ましくは線126 ..上の入力電圧に利得を一定の関係にして、供給される。線182上のアラエ イフ割面信号は、また利得と差動増幅器装置f+98にも供給され、動作を不能 にし、従って、電力消費を遮断する。内部制御ラッチ174からリセット信号か 線180.に供給され、奇数制御信号は線180.に供給される。このリセット 制御信号は、入力線1261−1をアースし、その結果、それぞれのコンデンサ I 54、−、を放電し、次に続くサーボ・バーストを処理するのに備える。利 得と差動増幅器装置196は、またアナログ混成論理を育し、Pd1l+出力信 号を発生する。このFull信号の発生は、等式1または2に従って実行され、 これは線18゜、の奇数制御信号の状態によって決定される。
P、、、、(偶数)= (IA+IB)−(IC+TD) ・・・・等式lP、 、、、(奇数)= (IC+ID)−(IA+IB) ・・・・等式2C1高性 能仲裁バッファ/シーケンサsr御アーキテクチャ第5図は、バッファ/シーケ ンサ66の詳細なブロック図を示す。バッファ/シーケンサ66の中心となるの は、仲裁とバブフッ制御装置200であり、内部に、バッファ・メモリ68に対 するデータ・アクセス要求を分解する要求仲裁論理と、データの各要求元に対し て要求されるバッファ・メモリのアクセス動作を制御するための対応する論理を 内蔵する。バッファ・メモリ68に対するデータ・アクセス転送の要求は、j1 1132を介するホスト・インタフェース装置50、バッファ/シーケンサ66 の内部部品及び制御線218の1本を介するサーボ・シーケンサとデータ・シー ケンサ214,216から受け取り、上記のバッファ/シーケンサ66の内部部 品には、制御線204の1本を介するホスト・マイクロコントローラ・インタフ ェース装置t202、制iiI線208の1本を介する低レベルのマイクロコン トローラ・インタフェース装ft206、及び制御J11212の1本を介する エラー補正コード(ECC)発生及び制御装置210が含まれる。
データ転送要求を仲裁して受け取ると、仲裁及びバッファの制御装置200は、 確認信号を適当な確認制御線134.204.208.212.2+8を介して 供給する。この確認信号に一致して開始されて、仲裁及びバッファの制御装置2 00は、内部制御バス220を介してυI御倍信号供給し、仲裁か選択したバッ ファ/シーケンサ66の内部部品のデータ転送の特定の動作を行わせる。しかし 、ホスト・インタフェース装置50は、専用の内部データ転送制御論理を内蔵し 、従って、線184の確認信号と共有システム・クロック信号から直接動作し、 装置50のデータ転送動作をバッファ/シーケンサ66と同期させる。全ての場 合に、仲裁及びバッファのffHIJ装置は1iIIWJ信号を線240に発生 するが、これらの#1?a信号は、データ転送の方向とデータ・マルチプレクサ 222のマルチプレクサの入力/出力線の選択に必要であり、またはホスト・イ ンタフェース装置50とアドレス発生及び読み取り/書き込み制御装置236に よって使用されるアドレス・ソースからのデータの転送またはこれに対するデー タの転送を何処に移動させるかについて必要なものである。
マイクロコントローラ52によるデータ転送は、データ・バス226を介してホ スト・マイクロコントローラ・インタフェース装置202から選択可能で双方向 の1または2バイト深さのFIFOI置224に供給され、ここから7<ス22 8を介してデータ・マルチプレクサ222に供給される。表11Tは、バッファ ・レジスタ装置232内でホスト・マイクロコントローラ52にアクセス可能な バッファ制御レジスタをリストアツブする。
本発明の好適な実施例でJよ、ホスト・マイクロコントローラと低レベル・マイ クロコントローラは、両者と、も8ビツトのプロセッサを基本とするので、デー タFIF0224は、ホスト・ブ0セッサ52のメモリ・マツプ内の2バイト幅 のレジスタのロケーションとして現れる。
マイクロコントローラ1のバッファ・アクセス・レジスタレジスタ 寸法 ディ レクトリ 機能 構成の制御と 4ビツト 読み取り/ マイクロコントローラ1によ状態 書き 込み って書き込まれ、ホスト・イタフェースの転送をイネーブ ルにし、転送方向を選択する 即ちバッファ・メモリ・デー タの転送の状態を選択する制 御値 ページ・アクセス 11ビツト 読み取り/ 値は、512のバッファ・メアド レス 書き込み モリ・ページ・アドレス・ビット[19: l]を選択する ロケーション・ 9ビツト − ホスト・アドレス値の低次ビアクセス・アドレ ス ット[8: O]から転送される データ転送 16ビツト 書き込み データ転送レジスタ、データバッファへ、 またはバッファ から転送されたデータを含む ホスト・アドレス 20ビツト 書き込み ホスト・データ転送に使用さPCプ レロード れるポインタ/カウンタ値のプレロード・ラッチ ホスト・アドレス 20ビツト 読み取り ホスト・データ転送に使用さPCれ るポインタ/カウンタの値 ホスト・アドレス 1ビツト 書き込み このレジスタ内のいづれのビPC転送  ットに書き込み、ブレロードラブチからホスト・アドレス PCを転送する。
データ転送要求は、仲裁及びバッファ制御装置200に対してホスト・インタフ ェース50によって要求線+32に発生される。このような要求は、受は取った 場合、一般的に#載及びバッファ#御装置t200によって認識された最低の優 先順位で仲裁及びバッファ制御装置200によって取り扱われる。要求信号によ って、バイト・カウント要求値もまた制御線+36上で仲裁及びバッファの制御 装置に供給される。このバイト・カウント値は、ホスト・インタフェース装置5 0が、単一の要求/確認周期内で連続するバースト・アクセス周期内に転送しよ うと試みるバイトの数を示す。
線+34に確認信号か供給された場合、ホスト・インタフェース装置50は、バ ッファ・メモリ68に対し、てデータの転送を開始する。データは、共存データ ・バス72を介して転送される。しかし、バッファ/シーケレン・す装置66は 、バッファ・アクセス・アドレスの発生を担当している。特に、ホスト・インタ ーフェイス装置50によって転送されるデータは、ホスト−アドレスPCレジス タ(表III)内に記憶したアドレスによって指定されるバッファ・メモリ68 内の位置に記憶される。このホスト・アドレスPCレジスタは、最初にホスト・ アドレスPCプレロード・レジスタ内に保持されているアドレスをロードされる 。
このアドレスは、ホスト・インターフェイス装置50のデータ転送要求を予想し て、ホスト・マイクロコントローラ52によってこのプレロード・レジスタ内に プログラムされる。
即ち、動作がコマンドの局面にある期間、一般的に、ホスト・インタフェース装 置50は、ホスト・レベルのコマンドを受取り、このコマンドはホスト・インタ フェース12を介してデータを転送することを要求することかできる。このホス ト・レベルのコマンドは、マイクロコントローラ52に転送され、1つ以上の低 レベルのコマンドに処理される。本発明の好適な実施例では、RAMメモリ62 内の命令、ブロック・アドレス・ロケーションとそれぞれの完了/エラー状態の のキュー・リストを実行する。これらの命令は、このリストで実行の@番の妥当 性、この命令を実行するのに最適なアクチュエータ制御装置32.34の選択、 要求されたデータかバッファ・メモリ68.68′内に存在するかどうか及びと こに存在するか、ディスク14から新たに読み込まれたデータをバッファ・メモ リ68内に載置しようととする場合に利用可能なブロックのアドレス、及び、シ ステムIOによるデータの転送の性能と信頼性に影響を与える可能性のある他の 検討事項の適合性について評価されることかできる。
要求されたデータが、バッファ68内に存在しない場合、命令と対応するブロッ クのアドレスが、マイクロコントローラ80に送られ、このデータを検索し、指 定されたブロックのアドレスに置く。続いて要求されたデータかバッファ68内 に検索されると、他のプロセッサ間命令かマイクロコントローラ52に送られ、 このコントローラが適当なホスト・インタフェース動作を再開するのを可能にし 、これによって、ホスト・インタフェースは線132上にデータ要求信号を再び 表明する。
データをバッファ・メモリ68内に転送すべき場合、または出て行くデータがバ ッファ・メモリ68内に存在する場合、ホスト・マイクロコントローラ52は、 ホスト・アドレスPCプレロード・レジスタをバッファ/シーケンサS6の次の 動作用のブロック・アドレスによって正しくプログラムする。ホスト・インタフ ェース50によるマイクロコントローラ52の割り込みは、現在の転送動作の終 了を示す。これに応答して、マイクロコントローラ52は、次のデータ転送動作 のためのバッファ/シーケンサ66の転送の方向を設定し、次にホスト・アドレ スPC転送レジスタの書き込みアクセスを実行し、これによってプレロード・ジ スタかプログラムしたアドレスをホスト・アドレスPCレジスタ内にロードする 。
ホスト・インタフェース装置50による後続の動作のデータ転送の局面では、要 求されたデータのブロックは、一連の要求/確認応答周期でホスト・インタフェ ース装置50とバッファ・メモリ68の間を転送される。各データ・バイトまた はワードを転送すると、これに応答してホスト・アドレスPCレジスタ内のアド レスは、仲裁及びバッファ′#制御装置200によってインクリメントされる。
一方、マイクロコントローラ50は、次のデータ・ブロックの転送のためのブロ ックのアドレスを決定し、このアドレスをホスト・アドレスPCプレロード・レ ジスタ内にプログラムする。ホスト・インタフェース12を介して転送されるデ ータは、一般的に複数の連続するデータ・ブロックであるので、マイクロコント ローラ52は、各データ・ブロックの転送を予測し、現在のデータ・ブロックの 転送と同時に次のホスト・アドレス発生器を前もってロードすることによって、 後続のデータ・ブロックの転送の間に経過する時間を最小にする。後続のデータ ・ブロックの転送の間の待ち時間は、基本的に、マイクロコントローラ52に割 り込みに必要な時間、次のデータの転送の方向を変更するのに必要な時間、及び ホスト・アドレスPC転送ルジスタへ書き込み動作を実行するのに必要な時間に 迄短縮される。
マイクロプロセッサ52によってバッファ/シーケンサ66をアクセスする場合 、マイクロコントローラ・インタフェース装置202は、ホスト・マイクロコン トローラ・バス54から、ホスト・マイクロコントローラ52とバッファ・シー ケンサ66の間に於けるデータの転送方向を決定する。次に、このマイクロコン トローラ・インタフェース装置202は、線230の制御信号によって、データ FTFO224の転送の方向とバイト・シフトのローディングとアンローディン グを制御する。要求されたデータの転送方向は、また制御線204を介して仲裁 及びバッファ制御装置200に供給され、その結果、データ・マルチプレクサ2 22とアドレス発生器236を転送に適した構成にすることかできる。
マイクロコントローラの要求するデータ転送のアドレスは、バッファ・レジスタ 装置232のページ・アクセス・アドレス・レジスタ内に記憶したページ・アド レス・オフセット値とバス54のアドレス部分に供給されたアドレス値のビット 8:0によって制御される。即ち、この低次の部分アドレスはマイクロコントロ ーラ・インタフェース装ft202内のロケーション・アクセス・アドレス・レ ジスタを介して、部分アドレス・ハス234のアドレス発生装置236に反映示 される。
従って、データの転送を実行する場合、マイクロコントローラ・インタフェース 装置202はアドレスの最下位ビット8:Oをアドレス発生装置236の入力線 234に転送する。線220の1本の制御信号は、ページ・アドレス・オフセッ ト値か、バッファ・レジスタ装置232のページ・アクセス・アドレス・レジス タから、線238を介してアドレス発生器236に供給されることを可能にする 。次に、アドレス発生器236によって、制御線240を介して仲裁及びバッフ ァ制御装置200から与えられる制御信号に応答して、複合アドレスか発生され る。データは、内部データ・バス228を介してデータ・マルチプレクサ222 とFIFO224の間を転送される。
マイクロコントローラ・インタフェース装ft202と同様の方法で、低レベル のマイクロコントローラ・インタフェース装置206は、制御線208を介して 仲裁及びバッファ制御装置200と制御清報を交換し、バス242を介してデー タを転送し、部分アドレス・バス234を介してロケーション・アドレスを転送 する。バッファ・メモリ68をアクセスする要求は、ホスト・マイクロコントロ ーラ・インタフェース装置202の優先レベルより低いレベルで取り扱うのか好 ましい。このデータ・バス242は、別の双方向の1または2バイト深さのFI FO244を介して接続され、このFIFOは、制御線246を介して、低レベ ルのマイクロコントローラ・インタフェース装置206によって制御される。こ のFIFO244は、内部データ・バス248を介して、バッファ・レジスタ2 32とデータ・マルチプレクサ222の双方向データ・ボートに接続される。
このデータ・バス248は、更にバッファ・レジスタ232のアクセス・ボート と接続され、これとは別個に、シーケンサ制御及び状態レジスタ250のアクセ ス・ボートに接続される。最後に、低レベルのマイクロコントローラ・インタフ ェース装置206を介して、マイクロコントローラ50は、表IとIIに示すプ ロセッサ間レノスタの組と表IVに示すバッファ・アクセス・レジスタの組をア クセスする。
マイクロコントローラ2のバッファ・アクセス・レジスタレジスタ 寸法 ディ レクトリ 機能 構成の制御と 4ビツト 読取り/ ディスク・シーケンサの転送状態 書き込 み をイネーブルし、転送方向;バッファ・メモリのデータの 転送を選択するためにマイロ コントローラ2によって畜き 込まれた制御値 構成の制御 4ビツト 書き込み マイクロコントローラ2によって書き込まれ た制iil値。
ページ・アクセス 11ビツト 読取り/ 値は、512のバッファ・メアドレ ス 書き込み モリのページ・アドレス・ビット[19+ 9]を選択する ロケーションの 9ビツト − 低レベルのマイクロコントロアクセス −ラの アドレス値の最下位9アドレス 部分の[8o]ビットから 転送される データの転送 16ビツト 書き込み データの転送レジスタ、データ・バッフ ァに転送、または これから転送されるデータを 有するレジスタ ディスク・アドレス 20ビツト 書き込み ディスク・データの転送に使PC プレリロード 用するボンダ/カウンタの値に対するプリロード・ラッチ ディスク・アドレス 20ビツト 読み込み ディスク・データの転送に使PC 用するボンダ/カウンタの値 ディスク・アドレス 1ビツト 書き込み このレジスタへ書き込むと、PCの 転送 プレロード・ランチがらディスク・アドレスPCを転送す る ECCアドレス 20ビツト 読み込み バッファ・メモリのエラー補正に使用 するポインタ/カラ 更に、マイクロコントローラ80は、またサーボ制御、ディスク・データ、シー ケンサとECCコントローラ・レジスタの組からの状!I!情報をプログラムし 、受は取ることかできる。以下で詳細に論じるように、シーケンサ制御及び状態 レジスタ250内に記憶されたデータの値は、一般的にディスクと関連したバッ ファ/シケンサ装ft66の動作を決定する。
サーボ・シーケンサ装置214とデータ・シーケンサ装置2+6は、バッファ/ シケンサ装置66を介してデータを転送する場合、協力して動作する。特に、サ ーボ・シーケンサ装置214は、生データ線+40を介して受け取った場合、こ の生データの検索を担当し、アドレス・マークを識別し、指標セクタの発生を識 別し、サーボ・バーストのゲート信号を発生する。マイクロコントローラ8゜は 、表Vに示すサーボ制御及び状態レジスタによって、このサーボ・シーケンサ2 14の機能を制御する。
表 V マイクロコントローラ2のサーボ制御レジスタレジスタ 寸法 ディレクトリ  機能 サーボの指標 8ビツト 書き込み サーボの指標値サーボのID 16ビツト  読取り セクタのヘッダからのサーボシリンダとIDの値。
サーボの状!E 8ビツト 読取り/ サーボの制御状!!!:書き込みと制御  書き込み のゲート動作をイネーブルする:ディスクの先行補償を イネーブルする。
サーボ・シーケンサ214は、更に制御線252に新しいセクタ制御信号を発生 し、データ・シーケンサ216に対するセクタのデータ領域の先頭を実質的に決 定する。
セクターの先頭を検出すると、サーボ・シーケンサ214は、正しいタイミング 点で、直交サーボ・バーストのゲートのイネーブル信号を線146に発生し、現 在のセクタのセクタ・ヘッドのデータからサーボ・バーストを選択する。サーボ ・シーケンサ2+4は、また現在のシリンダとセクタのIDtflNをセクタ・ ヘッダのデータから転送し、この情報を線254を介してシーケンサ制御及び状 態レジスタ250内のサーボ指標及びサーボIDレジスタに載置する。これらの シリンダとセクタの値は、データ・バス248と低レベルのマイクロコントロー ラ・インタフェースを介して、マイクロコントローラ80によって直ちに読み取 ることかできる。構成の情報、例えば、生のデータ・ストリーム内のアドレス・ マークに対して探索を開始するマーク・サーチ信号のような情報は、マイクロコ ントローラ50によって、シーケンサ制御及び状態レジスタ50から、サーボ状 態及び制御レジスタ装置内の所定のビット・ロケーソヨン内にプログラムされる 。
次に、対応するイネーブル信号が、制御線256を介して、サーボ・シーケンサ 2+4に供給される。
同様に、シーケンサ制御及び状態レジスタ250は、マイクロコントローラ80 によってプログラム可能なデータ・レジスタを存し、これはデータ・シーケンサ 216の動作構成を効率的に決定する。これらのレジスタは表Vlに示すレジス タとCjrrus Logic(住所)から入手可能なCirrusLogi  cのデータ−ンート で説明されているC4rrus LogicCL−SH2 60のような従来のディスク・シーケンサのレジスタを存する。
表vI マイクロコントローラ2のディスク・シーケンサのレジスタレジスタ 寸法 デ ィレクトリ 機 能シーケンサの 8ビツト 書き込み データセクタの順次処 理用のブタ制御装置 ンチ・アドレスを決定 シーケンサの 8ビツト 読み取り 読み取りFCCエラー、検出され状態 た ID及びデータ同期バイトと、完全なハードウェアのFCCの補 正を含む状態tW報 シーケンサの 8ビツト 書き込み データ・シーケンサの書き込み可1iII !III記憶装置t 能な制御記憶装置同期パターン 8ビツト 書き込み 同 期フィールド用のデータ・バタレジスタのデータ値は制御線258を介してデー タ・シーケンサ216に供給される。データ・シーケンサ216は、一般的に、 データ・シリアライザ/デシリアライザ及び動作長限定(RLL)データ・エン コーダ/デコーダとして機能する。直列化した書き込みデータを書き込みデータ 出力線14gに加える。読み取りデータ・クロックとクロックによって分離すし たNRZ読み取りデータを入力線142.、受は取る。並列データをブタ・バス 262を介してデータ・シーケンサ216に転送し、またこのデータ・シーケン サ216から転送する。双方向の16バイトの深さのFIF○260はデータバ ス262をデータ・マルチプレクサ222のデータ・ボート270に接続する。
仲裁及びパンフッ制御袋rI1200は、データ・バッファ68とデータ・シー ケンサ216の間のデータの転送を監視して、これの方向を定める。各セクタの データ・ブロックの転送は、マイクロプロセッサ80によってシーケンサ制御及 び状態レジスタ250のシーケンサ制御レジスタ内のデータ転送選択ビットと方 向ビットをプログラムすることによって、開始される。これらの選択及び方向ビ ットは各セクタをベースとしてプログラムされて転送を行うべきかどうかを決定 し、もし行うべきであれば、この方向ビットをプログラムする。転送がディスク 14に向かうべきである場合、データ・シーケンサ216は直ちにデータ転送要 求制御信号を制御線2201を介して直ちに仲裁及びバッファ制御装置に供給し 、バッファ・メモリ68からデータをFIFO260に予め取り出すが、これは 現在活性状態にあるディスク・データ転送動作によって決まる。データ・シーケ ンサ216を介して行われるディスク・データの転送は、ディスクの回転と同期 しなければならないので、仲裁及びバッファ制御装置200は一般的にこのよう な転送をその最高の優先度を有するバッファの要求として取り扱う。ディスク1 4からデータを転送する場合、データを先ずFIFO260にロードすると要求 か仲裁及びバッファ制御装置200に載置される。いずれの場合にも、バッファ ・レジスタ232内のディスク・アドレスPCレジスタをこの仲裁及びバッファ 制御装置200かバッファ・メモリ内のディスク・アドレス転送ロケーションの ソースとして使用する。
ホスト・アドレスPCのアドレスについて説明すれば、ディスク・アドレスPC のアドレスは、マイクロコントローラ80によるディスク・アドレスPC転送レ ジスタの書き込みアクセスに応答して、ディスク・アドレスPCプレロードのア ドレス・レジスタからロードされる。ディスク14に対するまたはディスク14 からの各々のデータの転送は、マイクロコントローラ80によって開始されるの で、ディスク・アドレスPCプレロード・レジスタは、現在のデータ転送動作中 にプログラムすることかできる。次のバッファ・メモリ・アドレスをディスク・ アトバスPCレジスタに転送するために1回のみ書き込みアクセスを要求し、次 のデータ転送方向をセットし、データ・シーケンサか動作を実行することを可能 にするために書き込みアクセスを要求することによって、マイクロコントローラ 80によるオーバヘッド処理を実質的に削減することかできる。制御線220゜ を介してバッファ・レジスタ232に与えられる制御信号によって、ディスク・ アドレスPCレジスタの内容かアドレス発生器236に向かう線238に加えら れる。その結果得られるバッファのアドレスは、次にバグフ7・アトし・ス及び 制御線70のアドレス部分に加えられる。データ・ボート線270を介してバッ ファ・メモリ68からFIFO260に対応するデータを戻すように、データ・ マリチブレクサ222を選択する。仲裁及びバッファ制御袋!200は、その後 必要に応してFTPO260を介するデータの流れを監視制御し、データ・シー ケンサ装置216の連続したデータ転送動作をサポートする。バッファ68かア クセスする毎に、ディスク・アドレス部分内に保持されているアドレスは、セク タ全体のデータ・フィールドか転送されてしまう迄インクリメントされる。一般 的に516バイト(512データ・バイトに4CRCバイトを加えたもの)であ るセクタのバイト長は、マイクロコントローラ90によってシーケンサ制御及び 状態レジスタ250内のセクタ・サイズ・レジスタにプログラムされた値によっ て設定される。従って、データ・シーケンサ216は簡単に動作してFTP02 60にアクセスし、その内部データ・シーケンサの動作をサポートするために要 求される安定した流れのデータを転送する。データ・バッファのアドレスを得る ためのディスク・アドレスPCの値のインクリメントを含むFIFO260とデ ータ・マリチブレクサ222を介するデータの調整は制御線2203.2207 .2205及び240に加えられる制御信号を介して仲裁及びバッファ制御装置 200によって実行される。
データ・シーケンサ2+6はまたECC発生及び制御装置210と協働してデー タのエラーのハードウェアによる発生と訂正に便宜を与える。データをバッファ ・メモリ68からFIFO260に転送すると、仲裁及びバッファ制御装置20 0は制御線2204を介してマルチプレクサ274を選択し、またデータをEC C装置の入力線276に転送する。線220丁に供給された制御信号によって、 ECC発生及び制御装置210の動作を開始し、この動作を定義する。データを FTFO260に予め取り出すことによって得られるバッファの遅延によって、 データ・シーケンサか最後のセクタのバイトをPIF0260から転送する時点 でまたは転送する前にECC発生制御装!装置0か一般的に長さか1171イト であるセクタのECCMを発生するのに十分な時間か与えられる。このセクタの ECC値は制御線278を介してデータ・シーケンサ2+6に供給される。デー タ・シーケンサ216はECC値のバイトの転送を制御することによって、セク タのECC値をデータ・バス262を介して受け取ったセクタ・データの終端部 に補足し、従って、FCCを含むディスクのセクタのデータ・フィールドは、長 さが一般的に527バイトになる。
読み取りデータを転送する場合、マルチプレクサ274は制御線2204によっ て選択され、読み取りデータの流れをデータ・バス262からECC装置の入力 線276に供給する。データを受け取ると、ECC値を再計算する。ディスク1 4から読み取られたような以前に計算したセクタのECC値は、FTP0260 に書き込まれず、線278を介してECC発生及び制御装置210に再び供給さ れる。再計算したセクタのデータのECC値はデータ・シーケンサ2+6によっ て読み込まれた以前に計算されたECC値と比較する。比較を終了すると、EC C発生及び制御装置210は、FCCの状態ビットをシーケンサ制御及び状態レ ジスタ232のエラー制御及び状態レジスタに線282を介して書き込み、読み 取られたセクタかビット・エラーを含んでいるかとうかを指示する。ECC発生 及び制御装置210の使用するエラー制御及び状態レジスタとその池のレジスタ を表Vllrに示す。
表vr+r マイクロコントローラ2の制御レジスタレジスタ 寸法 ディレクトリ 機 能 エラー制御と 8ビツト 書き込み/ [フライ」上のハードウェアの工状¥!  読み取り ラーを選択し、補正シフト・レジスタをシフトするバイト用の 制御ビット: ECCエラー、E CCエラーの補正、及びECC エラーの補正不能性を識別する 状態ビット エラー・ 14ビツト 読み取り ECCエラーを検出すると、デオフセット・  クリメントされてエラーの位置カウンタ を判定する エラー・ 14ビツト 書き込み 可能な最大のエラー・オフセラオフセット・  トに対してラッチをプレロード補正シフト・ 80ビツト 隠 蔽 ECCC Cニラ正補正シフトジレジスタ スタ 補正シフト・ 8ビツト 読み取り 補正シフト・レジスタの最下位ボート エラーを検出すると、ECC発生及び制御装!210は、もし線284を介して 与えられるようなエラー#制御及び状態レジスタ内のハードウェア補正制御ピッ :・によってイネーブルされると、現在バッフT・メモリ68に記憶されている ようなデータのデーターエラーを自動的に識別して補正しようとする。補正可能 な最大エラー値は、エラー制御状態レジスタに於けるハードウェア補正イネーブ ル制御ビットの設定と組み合わせて、マイクロプロセッサ80によってエラー・ オフセット・カラ〉り・プレロード・レジスタにプログラムされている。このプ レロードされた値は、所定のデータ・セクタのサイズに対してECC補正シフト ・レジスタて理論的に実行することのできるビットのソフトの最大数を表す。エ ラー・オフセット・カウンタのプレロード値は、(セクタのサイズx4)−3と して計算される。ハードウェアのECCエラー補正サイクルの開始時に、この値 はエラー・オフセット・カウンタ・レジスタにロードされる。また、現在バッフ ァ・メモリ68に記憶されているセクタのデータの最後のバイトのアドレスに対 応するディスク・アドレス発生値はECCアドレスPCレジスタに転送される( 表rV)。
セクタのデータ内のビット・エラーのロケーションを実際に識別するため、再計 算してディスク14から読み取られたECC1[は、補正ソフト・レジスタによ って処理される。エラー・オフセット・カウンタの値は、デクリメントされ、補 正シフト・レジスタかそれぞれ8シフトした後に、補正シフト・レジスタとFC CアドレスPCの値の各ソフトかデクリメントされる。エラーのロケーションを 見つけ、このエラーか補正可能であると判定した後、ECC発生及び制御装置2 10は、仲裁及びバッファ制御装置!200に対する制御線212にアクセス要 求を与えることによって、バッファ・メモリのアクセスを要求する。ECC発生 及び制御装fi210の要求は、ホスト及び低レベルのマイクロコントローラ・ イ〉タフエース装置の優先度以下の優先度で取り扱われることか好ましい。
ECC発生及び制御装置210は、必要に応じて最高3つの読み取り/変更/書 き込みのバッファ・アクセス・サイクルを実行してFCCエラーを補正するのか 好ましい。各サイクルに於いて、バッファ読み取りアクセスによって、アドレス 発生及び読み取り/IFき込み制御装置t236を介してバッフ7・レジスタ2 32からバッファ・メモリに供給されたFCCアドレスPC値に位置するセクタ のデータのバイトを入手する。このセクタのデータのバイトは、データ・マルチ プレクサ222と制御線2I2を介して、ECC発生及び制御装置1210に戻 される。変更されると、このセクタのデータのバイトは、バッファ・メモリ68 に書き込まれ、バッフ7・レジスタ232のFCCアドレスPC値かデクリメン トされる。
もしFCCのエラーのロケーションかECC発生及び制御装置210によって見 つけられるが、このエラーは補正不能であると判定されると、対応する状態ビッ トかエラー制御及び状態レジスタにセットされる。マイクロコントローラ80は 、そのファームウェア・ルーチンで、ECCの検出されたエラーを補正するため に、より広範なアルゴリズムを実行することかできる。従って、マイクロコント ローラ80は、補正シフト・レジスタ・ボート・レジスタの連続的アクセスによ って、この補正シフト・レジスタに存在するシンドローム値を読み出すことがで きる。各アクセスによって、このシンドロームの最下位バイトが取り出される。
連続する読み込みの間で、エラー制御及び状態レジスタ内にバイト・シフト・イ ネーブル・ビットを書き込むことによって、補正シフト・レジスタ内でこのシン ドローム値が8ビツトだけ右にシフトされ、これによってシンドローム全体を連 続的に読み込むことが可能になる。
最後に、エラー・オフセット・カウンタの値か満了することによって、FCCの エラーのロケーションを見つけることに失敗したことか検出される。この様な状 況で、ハードウェアの補正サイクルか終了し、対応するエラー状態のビットか、 エラー制御及び状態レジスタにセットされる。このような状況または以前のEC Cのエラーの状況で、マイクロコントローラ80はFCCのエラーを含むデータ の放棄を決断し、ディスクlからデータを再び読み込んでもよい。いずれの場合 でも、マイクロコントローラ80は、命令及びブロックのアドレスの参照値をイ ンタープロセッサ・レジスタを介してホスト・マイクロコントローラ52に対応 させることによって、エラーの性質、範囲及びロケーションを報告し、統計的及 び歴史的な記録の保持を含むエラーの処理を更に行ってもよい。
バッファ・アクセス要求の最終的なソースは、リフレッシュ制御装置286であ る。リフレソンユ制御装!286は、静的なメモリ設計ではなく動的なメモリ・ セルをバッファ・メモリ86か使用する場合のみに要求される。バッファ・メモ リ68に対するアクセスは、制御線288を介して要求制御信号を仲裁及びバッ ファH1t;m装置200に供給することによって、リフレッシュ制御装置28 6によって周期的1こ要求される。メモリ・バッファ68のデータの完全な状態 を保持する必要性か与えられると、リフレッシュ・サイクルの要求は、仲裁及び バッファ制御装置200によって最高の優先度を育する要求として取り扱われる 。この要求を許容すると、仲裁及びバッファ制御装置200は、バッファ・メモ リの従来の動的メモリのリフレッシュ・サイクル・アクセスを命令する。所望の 動的メモリのリフレッシュ・サイクルの時間を表す2進値は、マイクロコントロ ーラ52によってバッファ・レジスタ232内のりフレツシユ・レジスタにプロ グラムされる。このリフレッシュ値は、線290を介してリフレッシュ制御装置 286に転送される。表■Xは、リフレッシュ・レジスタを示す。
表rX マイクロコントローラのDRAMリフレッシュ・レジスタレジスタ 寸法 ディ レクトリ 機 能リフレッシュ 8ビツト 畜き込み DRAMのリフレッシュ 期間を指定する り、小型コンピュータ・システム・インターフェース(SCS I)用のホスト ・インターフェース・アーキテクチャ 第6図は、ホスト・インターフェース装置50の好適な実施例の詳細ブロック図 を示す。図から分かるように、ホスト・インターフェース装R50は、多数の潜 在的データ・ソースとデータの行き先のボートの間でデータを制御しなから転送 することを管理することを要求される。第6図に示すホスト・インターフェース 装fi50の好適な実施例の場合、データの潜在的ソースには、この場合は小型 コンピュータ・システム・インターフェース(SC3I)であるホスト・インタ ーフェース12、データのデータ部分54.、アドレス及び制御バス54と2つ のデータ・ボート、ボートAとボートBか含まれ、これらの2つのデータ・ボー トによって、それぞれのアクチュエータ制御装置32.34の共有データ・バス 72.76か接続される。同じ組のデータ・ソースは同様にデータの行き先であ る。
ホスト・インタフェース装置50を介する正時インバウンド・データ経路はホス ト・インタフェース■2のデータ部分で開始され、このホスト・インタフェース 12はデータ・ラッチ292を通り、内部データ・バス296を介して多重入力 単一出力のデータ経路マルチプレクサ294に接続される。マルチプレクサ29 4の出力は、データ・バス300を介して17バイトの深いFrF0298に接 続される。FIF○のボートA出力は、線306、マルチプレクサ302、線3 14、及び出力ラッチ310を介してボートAの1データ出カバスフ2に接続さ れる。同様に、PIF029gのポート日出力は、830B、マルチプレクサ3 04、線316、及び出力ラッチ312を介してボートBの共有データ出力バッ ファ76に接続される。
第2インバウンド・データ経路を表すホスト・マイクロコントローラ52からの データはデータ線324を介してマルチプレクサ294の他方の入力に接続され る。ここから、マイクロコントローラ54で開始されたデータのデータ経路はホ スト・インタフェースのデータ用の経路と実質的に同じである。しかし、FTP 0298のボートAの出力に加えられたデータは、更に、線306を介してSC 3I命令シーケンサ330に供給することかでき、5C3Iホスト・インタフェ ース12のデータ部分121に供給される。このデータ経路を設けることによっ て、ホスト・マイクロコントローラ52は、ホスト・インタフェースI2を介し て転送される5CSI命令と応答をサポートして直接データを供給することかで きる。ボートAとボートBの共有データ・バス72.76によって、残りの2つ のデータ入力がマルチプレクサ294に供給される。PIF0298を介して適 当に供給することにより、ボートAとボートBのデータをscs r命令シーケ ンサ330、逆のボートBまたはボートAの共有データ・バス76.72または マルチプレクサ318にフレキノプルに供給することかでき、これによってデー タ、アドレス及び制御バス54のデータ部分541を介してホスト・マイクロコ ントローラ52に転送する。
共有データ・バス72.76は線320.322を介して人力データをマルチプ レクサ318に供給するので、ホスト・マイクロコントローラ52は、5C8I 命令ンーケンサ330とアクチュエータ制御装置32.34に転送される実際の データを並列に受信することができる。更に、ホスト・インタフェース12のデ ータ・バス部分12.と両共有データ・バス72.76は双方向であるので、ホ スト・マイクロコントローラ52は、特定のデータ・ソースと行き先ボートとは 関係なく、転送されたデータを監視することかてきる。
ホスト・インタフェース12を介して転送されたデータの完全な状態を保存し、 後でその妥当性を検査するため、SCS Iの各データ・ワードは、パリティ・ ビットを有している。インバウンド・データのパリティ・ビットは、パリティ・ ビット線12+を介してscs r命令シーケンサ330に転送される。データ ・ワードは、ホスト・インタフェース・バス+2.のデータ部分を介してパリテ ィ発生装置332に転送され、このパリティ発生装置332は受信した実際のデ ータ・ワードに基づいて再びパリティ・ビットを発生する。この再び発生された パリティ・ビットは、パリティ・ビット線334を介してscs r命令シーケ ンサに供給され、受信した実際のパリティ・ビットと比較される。もしSC3I 命令シーケンサ330かパリティ・ビットの比較に失敗したと判断すれば、5C 8Iによるエラーの従来の処理か開始される。
ホスト・インタフェース50を介して転送されたデータの妥当性は、巡回冗長チ ェック(CRC)値をホスト・インタフェース装置50を介して転送された各デ ータ・ブロックと関連させることによって、更に保持されてチェックされる。
内部データ・ソース・マルチプレクサを内蔵するCRC発生装置336は、デー タ、アドレス及び制御バス54のデータ・バス部分5411人力バス338.3 40を介してボート八とボートBの共有データ・バス72.76から、及びバス 320.322を介してボートAとボートBの共有データ・バス72.76から 、各データ・ブロックをデータの流れとして受信する。従って、ホスト・インタ フェース12からのインバウンド・データの場合、ボートAまたはボートBの共 有データ・バス72.76のいずれかを介して最終的に転送されたデータは、内 部データ・バス[320または322を介してCRC発生装ft336に供給さ れる。次に、データ・ブロックの行き先によって、その結果得られたCRCの値 は、CRCの出力線346または348に供給され、マルチプレクサ302.3 04と出力ランチ310,312を介して共有データ・バス72.76に供給さ れる。
本発明の好適な実施例では、CRC発生装置336はボートAまたはボートBの 共有データ・バス72.76に転送されたデータの各インバウンドの512バイ トのブロックに対して4バイトのCRC値を発生した。この4バイトのCRC値 は、マルチプレクサ302.304の動作とバッファ・メモリ68の書き込みア クセスの継続によって512バイトのブロックに追加される。現在のブロックを CRC発生装置336を介して処理し、他のバッファ・メモリ68内の現在のブ ロックに対してCRC値を追加するのに必要なこのバッファ・メモリ68のアク セスを実行し、CRC発生装置のCRCンード値によって行う再初期化を完了し ながらインバウンド・データの次のブロックの受信を行うことができるのに一般 的に適するように、PIF0298の深さを設定する。
アウトバンド・データの転送の場合、マルチプレクサ294を介してPIF02 98に対して行うデータの転送と同時にボートAまたはボートBの共有データ・ バス72.76のいずれかからのデータを内部データ・バス338または340 を介してCRC発生装ft336に転送する。PIF0298からのデータはボ ートAバス426を介してscs r命令シーケンサ330に供給され、ホスト ・インタフェース12に出力される。PIF0298に対するデータ・ブロック の転送を終了すると、以前に計算したCRCの値を表す4バイトはボートAまた はボートBのバス72.76からCRC発生装置336に転送され、CRCの値 はPIF0298に載置されない。この再計算したCRCの値は次に以前に計算 した値と比較する。CRCの比較に失敗した場合には、制御信号をCRC発生装 置336からSC3I命令シーケンサ330に供給し、アウトバウンド・データ ・ブロックにはデータ・エラーが含まれ、これは最終的に受信するホストによっ て放棄されるべきであることを示す。
ホスト・インタフェース装ft50のII御経路機能は、マイクロコントローラ の復号装置356、制御レジスタ装置342及び非同期論理ブロック386を介 して実行される。補足的な制御経路のサポートが、FIFO制御装置368、C RC発生装置制御装置354、SCS I要求ラッチ396、及び割り込み制御 装置398によって設けられる。
5C3I命令ソーケンサがホスト・インタフェース]2でインバウンド5C8I 命令を受信すると、命令及び関連するデータがPIF0298にロードされる。
線394の内の1本に加えられた制御信号によって、非同期論理装ft386は 線541上で割り込みをホスト・マイクロコントローラ52に対して発生する。
マルチプレクサ318の出力バス541に対応し、PIF0298、マルチプレ クサ302及びラッチ310を選択するためにマイクロコントローラ復号装置3 56によって認識されたメモリ・ロケーションを連続的に読み出すと、5C3r 命令及び関連するデータをマイクロコントローラ52によって読み出して待ち行 列を作ることかできる。SCS I命令に対する応答を開始するのに必要な低レ ベルの一連の命令がもしあれば、マイクロコントローラ52がこれらの命令の実 行を指示すると、次の動作状態かホスト・インタフェース装置50とバッファ/ シーケンサ66に対して決定される。ホスト・インタフェース装置50とバッフ ァ・メモリ60f17)rFllでデータを転送するのに適するように、ホスト ・インタフェース50の制御レジスタ装置342とバッファ/シーケンサ66の バッファ・レジスタ232をプログラムすることによって、マイクロコントロー ラ52はこの状態を設定する。各ブロックの転送か完了し、ここで一般的にホス ト・アドレスPCレジスタ内のアドレスを更新するためにプログラムされた量の データか転送されてしまうと、非同期論理装置386によって線54コで再び割 り込みがマイクロコントローラ52に発生される。
ホスト・インタフェース装置50の動作状態を変更し、このホスト・インタフェ ース装置50の動作状態を動的に反映するアクセス可能な状態の値を作るために 、制御レジスタ装置342が、ホスト・インタフェース装置50用の静的コンフ ユギレーション・パラメータを静的に記憶し、ホスト・マイクロコントローラ5 2によって再プログラム可能な動的制御値を記憶するために設けられる。制御レ ジスタ装置f342は、ホスト・マイクロコントローラ52のアドレス空間内で メモリによってマツプされているのか好ましい。従って、適当なアドレスと制御 信号をアドレス及び制御バス54.に供給することによって、対応するレジスタ 選択信号か制御線358を介して制御レジスタ装置342に供給される。データ 、アドレス及び制御バス54のデータ部分541に供給されたデータは、そこで 内部バス324を介して対応する制御レジスタに書き込むことができる。しかし 、もしマイクロコントローラ52か読みとり動作を要求すれば、制御レジスタ装 置342のアドレスによって参照されたレジスタの内容は、内部データ・バス3 24.328に転送され、マルチプレクサ318を介してデータ、アドレス及び 制御バス54のデータ部分54.に転送される。
制御レジスタ装置342に記憶されている値には、scs r要求装置396に 対する制御線364の1本に!i11御信号音信号するためのビット位置か含ま れ、これによって、scs r命令の仲裁と実行のトランザクションを要求する 。線398を介してscs r命令シーケンサ330に供給されるこの要求信号 は、非同期論理装置から制御線390を介して1ilIiil信号を供給するこ とによって、先ずホスト・インタフェース装置50の内部動作と同期される。別 のコンフユギレーション制御信号か、制御線360で直接このscs r命令シ ーケンサ330に供給される。もう1つの別の制御信号かマルチプレクサ294 に供給され、マルチプレクサの出力バス300に接続されるべきその4つのデー タ入力の1つを選択する。
制御レジスタ装置342によって記憶されている他の値はCRCシード値であり 、この値は、CRC発生装置336を再初期化すると、制御線344を介してこ のCRC発生装置336に循環される。この最初の値を使用してCRC発生アル ゴリズムを実行するロジックを準酊る。従って、これは、時間的に以前の点でマ イクロコントローラ52によって制御レジスタ装置342にプログラムされた静 的な値である。または、ホスト・マイクロコントローラ52は、このマイクロコ ントローラを共に使用すべきデータ・ブロックの特徴に基づいてシード値を選択 してもよい。即ち、例えば、論理的セクタ番号またはその順列をこのシード値と して使用することも可能であり、これによって、同じCRCの値を計算するデー タ、まrこは異なった論理セクタから不注意に読み出された同一のデータでさえ 、以前に計算したCRC値と一致する再計算したCRC値を発生しないことを保 証することができる。その結果、CRC値は、バッファ・メモリ68に記憶され ながらバッファ/シーケンサ66によって処理されるデータを含むホスト・イン タフェース装置50とディスクI4の間のいずれかの点で発生するデータのエラ ーのみならず、ディスク14の不適切なロケーションからデータ・ブロックを読 み出す結果発生する可能性のある機械的及びファームウェア上のエラーに対して 事実上保護を行うことかできる。
制御レジスタ装置342に記憶されている値から発生される他の制御信号は、制 御線372を介して供給され、CRCi1i制御装置354の動作をイネーブル する。
同様の制御値は、F■FO制御装f1368に対する線370にコンフィギュレ ーソヨン制御信号を発生する。11F0298の動作を定義する別の制御信号は 非同期論理装置386からスタートしている制御線390を介してFIFO制御 装置368によって受信される。CRC発生装置1336とFIFO298の統 合動作はFIFO制御装置368から制御線376に供給され、次にこれらの制 御線378を介してCRC発生装置336に供給される制御信号によって達成さ れる。
多数の制御値か制御レジスタ装置342に記憶され、これらの値は制御線360 を介して非同期論理装置386に供給さベインタフエース50の実行する動作制 御ソーケンスを選択する。この非同期論理装置386は制御線384を介してF IFO制御装ft368、CRC比較失敗線を含む制御線382、CRC発生装 r!t336及び制1i11j!11394’d)−LテSC3I命令シーケン サ330から、別の制御状態フィードバック信号を受信する。更に、アクチュエ ータの制御装置32.34と関連するイネーブル及び確認制御信号が、制御線+ 31.78..134.78.を介して受信される。これlこ応答して、非同期 論理装置386は、出力線392にシーケンサ制御信号を発生し、出力制御線3 90に成分制御信号を発生する。これらの成分制御信号には、線132.781 .136.784上のボートAとBの要求及びバイト・カウント信号と線54. 上のホスト・マイクロコントローラ52に対する割り込み信号か含まれている。
内部的には、成分制御信号には、マルチプレクサ318に供給されるマルチプレ クサ・イネーブル及び入力選択信号、出力ラッチ310.312に対するランチ ・イネーブ信号、CRC制御装f1m354に対するソーケンス定義制御信号及 び制御レジスタ装置342内の状態レジスタに戻される状態値が含まれている。
成分制御信号には、またパリティ発笠装置332と5csr要求装置396の動 作をSC3I命令シーケンサ330の動作と同期させるイネーブル信号が含まれ ている。
最後に、割り込み制御装置398は、多数の可能性のある異なった割り込み条件 に応答して、ホスト・インタフェースの線+24に1つのscs r割り込み信 号を発生する集信装置として機能する。これらのソースにはscs i命令シー ケンサ330から話中/待機割り込み、選択割り込み、選択された割り込みか含 まれる。非同期論理ブロック38Gは、他のソースの中でSCS Iパリティ・ エラー割り込み、識別エラー割り込み及び5CSIリセット割り込みのソースで ある。
マイクロコントローラ52のデータ・バス54.を介して割り込み制御装置に割 り込みマスクをプログラムすることが可能であり、これによってscs iの割 り込みの選択されたソースを選択的にイネーブルする。
E、物理的ブロック(IDE)のホスト・インタフェース・アーキテクチャ第7 A図は、ホスト・インタフェース装置の他のアーキテクチャを装ft50’とし て示す。システムIOが産業上の企画であるIDEインターフェースと一致する ホスト・インタフ二−ス12と共に動作することを意図する場合には、このホス ト装置のインタフェース装置50’が好ましい。インタフェース命令シーケンサ 412は、命令と組み合わせて転送されるべきデータのソースまたは行き先を表 す命令とデータを受け取る一連のレジスタを内蔵している。これに応答して、イ ンタフェース命令シーケンサ412は多数の制御信号をホスト制御線12.に発 生し、これらの信号には、特にI10チャンネル(IOCHNL)準備信号が含 まね、この信号はインタフェース命令シーケンサ412か要求された命令動作を セットアツプするのに必要であり、マイクロコントローラ80かこの動作をセッ トアツプするのに適している。
ホスト・インタフェース12からのデータは、内部データバス416を介してマ ルチプレクサ414の入力に供給される。このマルチプレクサ414に対する他 のデータ人力には、ボート八とボートBの共存データバス72.76とデータ、 アドレス及び制御バス54のデータ部分54.が含まれている。データはマルチ プレクサ416からマルチプレクサ・データ出力バス420を介して17バイツ トの深さのPIF041Bに転送される。データは、FIFO41,8からFI FO出力バス426.428を介して2つのマルチプレクサ422.424のい ずれかまたは両方に転送されると共に、データ・バス434.436を介する出 力データ・ラッチ430.432を介してボートAとボートBの共有データ・バ ス72.76に転送される。F rFO418からのデータは、またデータ・バ ス426を介してインタフェース命令シーケンサ412に転送することかでき、 これによってホスト・インタフェース12のホスト・データ部分12.に供給さ れる。最後に、マルチプレクサ442を設けて、ホスト・インタフェース12か らデータをインタフェース命令シーケンサ412をバイパスして内部データ・バ ス444に選択的に供給し、またはデータはボートAまたはボートBの共存デー タ・バス72.76のいずれかでホスト・マイクロコント0−ラ・データ、アド レス及び制御バス54のデータ部分541に転送される。これによって、マルチ プレクサ442は、ホスト・マイクロコントローラ52かボートAとボートBの バッファ・メモリ68.68′に対する全てのホスト・データの転送と全てのデ ータ転送を監視することを可能にする。
CRC発生装置446を設け、再び一般的に4バイト長であるCRC値を発生し 、このCRC値は再び一般的に512バイト長である各データ・ブロックと独自 の方法で関連させられるか、この各データ・ブロックはホスト・インタフェース I2から受信したものである。データ・ブロックの行き先かボートAまたはボー トBの共■データ・バス72.76であるかどうかによって、インバウンド・デ ータは内部データ・バス438.440を介してCRC発生装置446に供給さ れる。CRC発生装置446によって発生されたCRC値、マルチプレクサ42 2または424に対するデータ・バス454または466のいずれかに供給され 、これはボートAまたはボートBの共存データ・バス72.76にちまうと転送 されたデータ・ブロックの端末部に適当に追加さnる。
FIFO418の深さは、CRC発生装置446の動作を行わせてこれを終了す るのに十分な次のデータ・ブロックのデータの初めを収容するのに十分である。
更に、CRC発生装置446は、4バイトの出カバソファを内蔵するのか好まし く、この出カバソファに対して新しく計算したCRC値か転送され、この出カバ ソファからCRC発生装置は読み出しを行ってその対応するデータの512バイ トのブロックに追加を行う。このCRC発生装置446内の出力段によってこの 装置446を再初期化して次のデータ・ブロックの転送を保留することか可能に なる。
ボートAまたはボートBの共存データ・バス72.76を介してホスト・インタ フェース装置50″か受信するアウトバウンド・データ・ブロックは、内部デー タ・バス450または452を介してCRC発生装置446に転送される。デー タ・ブロック全体か受信されると、マルチプレクサ414はこれ以上のデータを FTFO418に転送しない。しかし、追加された前に計算したCRC値はCR C発生装置446に供給される。この前に計算したCRC値は、データ・ブロッ ク転送データから再計算したCRC値と比較される。このCRCtの比較の一致 /失敗の状態は、最終的にホスト・インタフェース12に接続されたホストが入 手可能な状態条件に反映される。
ホスト・インタフェース50″の動作は、一般的にインタフェース命令シーケン サ412内のレジスタに対してフンフィギュレーンヨン状態パラメータをプログ ラムすることから行われる。これらの値によって、ホスト・インタフェース装置 50″のプログラム状態か設定される。これらのデータの値は、マイクロコント ローラ52のトータル・アドレス・スペース内のこれらの値のIloによってマ ンピングされたロケーションに基づいてホスト・マイクロコントローラ52によ ってプログラムされる。これらのデータ値は、ホスト・マイクロコントローラ・ データ・アドレス及び制御バス54のデータ部分541でインタフェース命令ノ ーケンサ412に供給される。対応するI10アドレスと制御信号はバス54の アドレス及び制御部分542でマイクロコントローラ復号装置454に供給され る。?1号されたアドレスと制御信号は制御線458を介して非同期論理装置4 56に供給される。これに応答して、対応するラッチ・イネーブル信号か制御線 466を介してインタフェース命令シーケンサ412に供給され、データをイン タフェース命令シーケンサ412内の対応するレジスタに書き込むことを可能に する。同様に、既存のフンフィギュレーンヨン・パラメータと状態データをホス ト・マイクロコントローラ52(二よってインタフェース命令シーケンサのレジ スタから読み出すことかできる。
インタフェース命令シーケンサ412内のこのような1つのレジスタは、命令レ ジスタである。有効な命令値がこのレジスタに書き込まれると、インタフェース 命令シーケンサ412はI10チャンネル準備準備金デアサートし、マイクロコ ントローラ52に割り込みをかけて新しい命令を受け取ったことを示す。この命 令及び関連するデータは、内部データ・バス444とマルチプレクサ442を介 してインタフェース命令シーケンサ412から読み取ることかできる。マイクロ コントローラ52かインタフェース命令シーケンサ412とバッファ/ンーγン サ内の制御レジスタを適当にプログラムするとホスト・インタフェース装置50 はI10チャンネル準備準備金再び表明するように指示され、この命令の処理を 開始することを許される。
統合を行う制御信号か制御線474によって非同期論理装置456に供給される 。これに応答して、FIFOの制御信号は制御線460によってFIFO制御装 置480に供給される。制御線482に供給された他のFIFO制御信号によッ テ、FIFO1i11aKl装置480ftF TFO418)1M+4−IF IBlt6゜FIFOの状態に関する状態情報は状態線484によって非同期論 理装置456に戻される。
非同期論理装置454は、制御線462.464てCRC発生装置446とCR C制御装置468に対して制御信号を更に供給する。CRC制御装置t468は CRC発生装置446の詳細な動作を担当し、更にマルチプレクサ422.42 4のいずれかを選択してCRCl[を内部データ・バス454.466から必要 に応じてハス434.436に転送し、CRC値を現在転送中のデータ・ブロッ クの終端部に追加する。CRC発生装置446とCRC制御装ft464は、状 態情報を状態線476を介して非同期論理装置456に戻す。このような状態信 号の1つは、CRC値の比較動作の一致/失敗状態である。この制御信号は、マ ルチプレクサ414、ラッチ430.432及びマルチプレクサ442の特定の 動作を制御する池の信号と共に制御線466の幾つかに供給される。更に、非同 期論理装置456は、線132.782にボートAとボートBの要求信号を発生 し、線136.78.にボートAとボートBのバイトカウント制御信号を発生し てこれらを残りの制御線466を介して供給する。最後に、非同期論理装置45 6は、割り込み信号を発生してこれをマイクロコントローラ割り込み線54.に 対する線466の内の1本に供給する。前に説明したように、この割り込み信号 を使用し、マイクロコントローラ52に警報を出してインタフェース命令シーケ ンサ412に命令を受け取らせてブロック・データの転送の終端部を示すか、こ こでは、例えば、一般的に更にデータの転送を行うために新しいホスト・アドレ スPCのアドレス値か要求され、またはCRCの一致動作の失敗時にこの値か要 求される。
インタフェース命令シーケンサ412の詳細部分を表す第7B図は、共存コンフ ィギュレーンヨン制御レジスタの二重バッファされたステージング・セットを示 す。マイクロコントローラ・インタフェース装置500はホスト・マイクロコン トローラ・データ、アドレス及び制御バッファ54のデータ及び制御部分543 .を受け取る。マイクロコントローラ・インタフェース装置500は、また制御 線466の1つを介して非同期論理装置456からイネーブル制御信号を受け取 る。
これと平行して、ホスト・インタフェース装置502は、ホスト・インタフェー ス・データ制御及びアドレス線12.、を受け取ると共に制御線466の他の1 本を介して非同期論理装置456からイネーブル制御信号を受け取る。マイクロ コントローラ・インタフェース500とホスト・インタフェース装置502を通 過したデータは、内部データ・バス504.506を介してマルチプレクサ50 8に供給さね、このマルチプレクサ508は入力線504.506から分配バス 514のいづれかの出力線にデータを選択的に供給するデマルチプレクサ/ルー タとして動作する。このマルチプレクサの機能は、マイクロコントローラ・イン タフェース装置500とホスト・インタフェース装置502が協力して駆動する 場合、制御線512の1本の選択信号によって制御される。マルチプレクサ50 8からのデータは分配バス514を介してデータ・レジスタ518のアレイに転 送される。これらのデータ・レジスタは命令(CMDI)ヘット(SDHI)、 シリンダ(CYLI)セクタ(SCTI)、カウント(CNT) 、データ(D ATAI)、及び固定値のCRCンードを決定する単独のバイトを記憶する。従 って、マルチプレクサ508の機能と制御バス512から線510に供給された 制御信号によって、レジスタ・アレイ516内の各レジスタには1央立して選択 されたバイトの値が書き込まれる。
第2レノスタ・アレイ518は、アレイ516のカウント・レジスタを介してヘ ットを複写する。更にエラー(ERRO)レジスタを設けて現在のエラーの状態 の値を保持する。ホスト・インタフェース12またはホスト・マイクロコントロ ーラ52からの全てのデータは、データ・レジスタ、DATAIとDATAOを 介して供給する。これらの2つのレジスタは、1つのワード(16ビツト)/バ イト変換器として共にづさしてホスト・インタフェース12からの転送を行う。
制御線510.511に供給される制御信号によってカウント・バイト値を介し てアレイ516からアレイ518にヘッドの高速並列転送が行われる。アレイ5 16のカウント・レジスタを介するヘッドとは異なり、アレイ518の対応する レジスタを使用し、現在のデータ・ブロックの転送動作を直接制御する。ホスト ・インターフェース装置50′の目的のためにホスト・インタフェース12は一 般的に「物理的」ブロック・アドレス・モードで動作し、セクタは512のバイ ト長を存するものとして予め定義されている。従って、カウント・レジスタに記 憶されている幾くつかの数のセクタによって構成されるデータ・ブロックを転送 する場合、各セクタ内のデータを現在のヘッドかアクセスしている現在のシリン ダのセクタ内のオフセット・カウントとして参照することかできる。従って、デ ータ・ブロックの各セクタをホスト・インタフェース装置50″を介して転送す るに従って、レジスタ・アレイ518のセクタ・レジスタに記憶されている値か インクリメントさ托カウント・レジスタの値はデクリメントとされる。セクタの 数がシリンダ当たりの予め決められたセクタの数(一般的に17)を超えると、 セクタの値はゼロと取り替えられ、ヘットの値はインクリメントされる。同様に 、最大のヘッドの数を超えると、シリンダの数をインクリメントする。セクタ・ レジスタの値のインクリメントは、マイクロコントローラまたはホスト・インタ フェース500.502から制御線511で受信された制御信号に応答して実行 される。
セクタの数がシリンダ当たりの所定のセクタの数を超えると、このセクタの数の オーバフローは、オーバフロー・アドレス計算装置522によって検出される。
このオーバフロー・アドレス計算装置522は、線550を介して現在のカウン ト、セクタ、シリンダ及びヘッド・レジスタの値を監視する。セクタ、シリンダ 及びヘッド・レジスタの値のいずれか1つがその予め決められた限界に達すると 、セクタ、シリンダ及びヘッド・レジスタの値の新しい組み合わせを計算してレ ジスタ・アレイ516の対応するレジスタに書き込む。現在のカウント値は、レ ジスタ・アレイ516内のその対応するレジスタに書き込むことによって、また 保存される。従って、現在のセクタか転送されるのと同時に、セクタ、シリンダ 及びヘッドの値の新しい組み合わせを並列にレジスタ・アレイ518に転送する ことができ、ホスト・マイクロプロセッサ52を含めることなくまたデータ・ブ ロックの転送の完了に対応する実質的な待ち時間を導入することなく、データ・ ブロックの転送を継続することができる。
レジスタ・アレイ518の命令レジスタは、セクタ当たりの基準では変化しない 。そうではなくて、この命令は、転送中のデータ・ブロックに対して実行されて いる動作を決定する。
レジスタ・アレイ518のデータ・レジスタを介してこの命令に記憶されている 値は、制MM530.532.534.536.540.542を介してインタ フェース命令シーケンサ412の制御論理に対して直接入手可能である。更に、 レジスタ・アレイ516のエラー・レジスタのデータ値と固定シードCRC値は 制御線544,448□で入手可能である。固定されたCRCのシード値以外に 、これらのレジスタの値を使用してインタフェース命令シーケンサ412の動作 を選択して漸次この動作に順番を付ける。
可変CRC発生器512を設け、現在のヘッドとシリンダ・レジスタの値によっ て直接決まるCRCのシード値を発生する。本発明の好適な実施例では、排他的 ビットまたは制御線532.534からのヘッドとシリンダの値のビットは、可 変シード装置528によって実行される。その結果得られる8ビツトの位置によ って決まるCRCのシード値は、al14481に供給される。マイクロコント ローラ・インタフェース装置sooからの制御信号によって制御されるマルチプ レクサ(図示せず)は、位置によって決まるまたは固定されたCRCのシード値 はインタフェース命令シーケンサ412からCRC発生装置446へのCRCン ード線448に供給されるかどうかを選択する。従って、データの妥当性かホス ト・イシダフエース装置1150”に対してCRCを設けることによって保証さ れるだけてな(、引き続いてディスク14から読み出された場合、データは意図 したヘッドとシリンダから得られるという別の完全な状態のチェックか行われる 。
最後に、ホスト・マイクロコントローラ52とホスト・インタフェース12に接 続されたホストは、いずれもレジスタ・ア、レイ518のデータ・レジスタを介 してヘッドの現在の値を読み取ることか可能になる。汎用データ・マルチプレク サ524はバス522を介してレジスタ・アレイ518のヘッド、シリンダ、セ クタ、カウント、データ及びエラー・レジスタに接続される。従って、これらの レジスタの値は、いずれもこの汎用データ・マルチプレクサ524を介して内部 データ・バス546に対して選択し、内部命令シーケンサ412を介してホスト ・データ・バス+2.に更に供給することができる。同様に、状態マルチプレク サ526はレジスタ・アレイ518の全レジスタに接続され、更に、レジスタ・ アレイ516の命令レジスタに接続される。この状態マイクロコントローラ52 6を介して入手可能な値はデータ・バス444に対する内部データ・バス548 に供給され選択したデータをマルチプレクサ442に転送する。
従って、共通なセットのディスクに対して1つ以上のアクチュエータのアセンブ リを制御するための総合的、高性能で柔軟性のあるアーキテクチャを説明した。
更に、電子的制御アーキテクチャと特にディスクの表面からデータを読み取りこ のディスクの表面に対してデータを書き込むことの両方によってデータの完全な 状態を保証する多重階層スキームを説明した。このアーキテクチャは、モジュー ル性とこれか仲裁制御装置を使用して各アクチュエータまたは制御装置内の中間 バッファ・メモリに対するアクセスを管理していることに特に注意を払うべきで あり、このアクチュエータまたは制御装置によって、個別のマイクロコントロー ラかホスト・インタフェースを管理するそれぞれのタスクとアクチュエータ・ア センブリの低レベルの制御のために完全に動作することかできる。
従って、本発明の多くの変形と変更が上述の開示に照らして可能である、ことを 理解しなければならない。従って、添付の請求の範囲の範囲内で本発明を上で特 に説明したのと異なったに様で実施すること力′できる、ことを見に理解しなけ ればならない。
第1図 平成 年 月 日

Claims (2)

    【特許請求の範囲】
  1. 1.ホスト・プロセッサ・インタフェースと記録媒体の間のデータの転送を制御 するアーキテクチャに於いて、上記のアーキテクチャは:a)データを記憶する 手段; b)データをバッファする手段; c)ホスト・インタフェース; d)上記の記憶手段と上記のバッファ手段の間のデータの転送を制御する第1制 御手段; e)上記のホスト・インターフェースと上記のバッファ手段の間のデータの転送 を制御する第2制御手段;及び f)上記の第1及び第2制御手段に応答して、データの記憶と上記の第1及び第 2制御手段による上記のバッファ手段に対する検索のためのアクセスを仲裁する 第3手段; によって構成されることを特徴とするアーキテクチャ。
  2. 2.ハード・ディスクの駆動システムを制御するアーキテクチャに於いて、上記 のアーキテクチャは: a)データを記憶するのに適した表面を有するディスク;b)所定の第1型のデ ータを上記の表面に転送する手段;c)上記の所定の第1型のデータと所定の第 2型のデータの間でデータの変換を行う手段; d)上記の所定の第2型のデータを含むデータを記憶するバッファ;e)上記の 転送手段と上記の変換手段を制御する制御手段であって、上記の第1手段はデー タの転送のために上記のバッファにアクセスする第1要求を発生する手段を有す る上記の制御手段; f)ホスト・インタフェース; g)所定の第3型のデータを上記のホスト・インタフェースに対して転送するイ ンタフェース手段であって、上記の所定の第2型のデータと上記の所定の第3型 のデータの間でデータの変換を行う手段とデータの転送のために上記のバッファ にアクセスする第2要求を発生する手段を有する上記のインタフェース手段;及 び h)上記の第1及び第2要求に応答して、データの転送のために上記のバッファ に対するアクセスを仲裁する手段であって、上記の制御手段と上記のインタフェ ース手段による上記のバッファに対するアクセスを選択的に可能にする上記の仲 裁手段; によって構成されることを特徴とするアーキテクチャ。
JP50184492A 1990-11-09 1991-10-29 多重マイクロコントローラのハード・ディスク・ドライブを制御するアーキテクチャ Expired - Lifetime JP3262330B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US61114190A 1990-11-09 1990-11-09
US611,141 1990-11-09
PCT/US1991/008061 WO1992009036A1 (en) 1990-11-09 1991-10-29 Multiple microcontroller hard disk drive control architecture

Publications (2)

Publication Number Publication Date
JPH06502267A true JPH06502267A (ja) 1994-03-10
JP3262330B2 JP3262330B2 (ja) 2002-03-04

Family

ID=24447805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50184492A Expired - Lifetime JP3262330B2 (ja) 1990-11-09 1991-10-29 多重マイクロコントローラのハード・ディスク・ドライブを制御するアーキテクチャ

Country Status (6)

Country Link
US (2) US5412666A (ja)
EP (2) EP0556324B1 (ja)
JP (1) JP3262330B2 (ja)
KR (5) KR100245896B1 (ja)
DE (2) DE69132618T2 (ja)
WO (1) WO1992009036A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001034427A (ja) * 1999-07-23 2001-02-09 Fujitsu Ltd デバイス制御装置及び制御方法
JP2002244941A (ja) * 2001-02-16 2002-08-30 Scarabs Corporation Co Ltd 情報処理システム
US7546411B2 (en) 2001-09-14 2009-06-09 Bruner Curtis H Digital device configuration and method
US9396746B2 (en) 2001-09-14 2016-07-19 Benhov Gmbh, Llc Digital device configuration and method
JP2020155170A (ja) * 2019-03-19 2020-09-24 株式会社東芝 磁気ディスク装置
JP2021140838A (ja) * 2020-03-03 2021-09-16 株式会社東芝 磁気ディスク装置、および磁気ディスク装置のメモリ管理方法

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2855019B2 (ja) * 1992-02-10 1999-02-10 富士通株式会社 外部記憶装置のデータ保証方法及び外部記憶装置
US5424881A (en) 1993-02-01 1995-06-13 Cirrus Logic, Inc. Synchronous read channel
US5629949A (en) * 1993-09-21 1997-05-13 Cirrus Logic, Inc. Error correction verification method and apparatus using CRC check remainders
US5602857A (en) * 1993-09-21 1997-02-11 Cirrus Logic, Inc. Error correction method and apparatus
US5640583A (en) * 1994-08-22 1997-06-17 Adaptec, Inc. Programmable servo burst decoder
US5640538A (en) * 1994-08-22 1997-06-17 Adaptec, Inc. Programmable timing mark sequencer for a disk drive
US5684972A (en) * 1994-08-22 1997-11-04 Adaptec, Inc. Programmable servo burst sequencer for a disk drive
US5680537A (en) * 1995-03-01 1997-10-21 Unisys Corporation Method and apparatus for isolating an error within a computer system that transfers data via an interface device
US5691994A (en) * 1995-05-08 1997-11-25 Western Digital Corporation Disk drive with fast error correction validation
US5812564A (en) * 1995-05-08 1998-09-22 Western Digital Corporation Disk drive with embedded finite field processor for error correction
US5649233A (en) * 1995-08-18 1997-07-15 United Microelectronics Corporation Apparatus for flexibly selecting primary and secondary connectors and master and slave cascaded disk drives of an IDE interface
KR0176637B1 (ko) * 1995-12-30 1999-04-15 김광호 디스크 콘트롤러의 프로그래머블 콘트롤 시퀀서와 그의 맵 할당방법
KR0159435B1 (ko) * 1995-12-30 1998-12-15 김광호 디스크 콘트롤러의 프로그래머블 콘트롤 시퀀서와 그의 맵 할당방법
US5801897A (en) * 1996-04-11 1998-09-01 Kabushiki Kaisha Toshiba Head positioning control system for use in a disk storage system
US5822330A (en) * 1996-04-19 1998-10-13 International Business Machines Corp. Method and system for dynamically adjusting signal skewing
EP0821308A1 (en) * 1996-07-23 1998-01-28 Hewlett-Packard Company Error indication for a storage system with removable media
US5889796A (en) * 1996-10-17 1999-03-30 Maxtor Corporation Method of insuring data integrity with a data randomizer
JP3290365B2 (ja) * 1996-11-19 2002-06-10 インターナショナル・ビジネス・マシーンズ・コーポレーション エラー回復プロシージャを実行する方法
KR100253279B1 (ko) * 1997-03-12 2000-04-15 김영환 퍼스널컴퓨터의음악연주데이터페치회로
JPH10293975A (ja) * 1997-04-21 1998-11-04 Sony Corp 磁気ディスク装置
US6157984A (en) * 1997-05-15 2000-12-05 Seagate Technology, Llc Integrated controller/processor for disc drive having direct memory access
US6057990A (en) * 1997-05-27 2000-05-02 Gilovich; Paul A. Multiple actuator assemblies for data storage devices
US6061822A (en) * 1997-06-23 2000-05-09 Micron Electronics, Inc. System and method for providing a fast and efficient comparison of cyclic redundancy check (CRC/checks sum) values of two mirrored disks
US5953352A (en) 1997-06-23 1999-09-14 Micron Electronics, Inc. Method of checking data integrity for a raid 1 system
US6076180A (en) 1997-06-23 2000-06-13 Micron Electronics, Inc. Method for testing a controller with random constraints
US5832418A (en) * 1997-06-23 1998-11-03 Micron Electronics Apparatus for testing a controller with random contraints
US6035425A (en) * 1997-09-29 2000-03-07 Lsi Logic Corporation Testing a peripheral bus for data transfer integrity by detecting corruption of transferred data
US20020021526A1 (en) * 1997-12-04 2002-02-21 Evert S. Cooper Method and apparatus for controlling a voice coil motor of a hard disk drive
US6052818A (en) * 1998-02-27 2000-04-18 International Business Machines Corporation Method and apparatus for ECC bus protection in a computer system with non-parity memory
JP2000155751A (ja) * 1998-11-18 2000-06-06 Mitsubishi Electric Corp システムlsi
US6230062B1 (en) 1999-01-08 2001-05-08 Voyan Technology Adaptation to unmeasured variables
US6948113B1 (en) 1999-04-21 2005-09-20 Seagate Technology Llc Self-throttling error-correction buffer and method for a disc drive
US6654195B1 (en) * 1999-04-27 2003-11-25 Western Digital Ventures, Inc. Disk drive having a register set for providing real time position variables to a host
US6446238B1 (en) * 1999-05-21 2002-09-03 International Business Machines Corporation System and method for updating microcode stored in a non-volatile memory
KR100621615B1 (ko) * 1999-08-30 2006-09-06 삼성전자주식회사 마스터 및 슬레이브 모드를 모두 지원하는 스왑 베이 디바이스와 이를 갖는 휴대용 컴퓨터
US6515672B1 (en) * 1999-12-23 2003-02-04 Intel Corporation Managing prefetching from a data buffer
JP3457602B2 (ja) * 1999-12-28 2003-10-20 株式会社東芝 ディスク装置
US6691198B1 (en) 2000-03-30 2004-02-10 Western Digital Ventures, Inc. Automatically transmitting scheduling data from a plurality of storage systems to a network switch for scheduling access to the plurality of storage systems
US7274525B2 (en) * 2000-10-19 2007-09-25 Scarabs Corporation Co., Ltd Information processing system
US6751757B2 (en) 2000-12-07 2004-06-15 3Ware Disk drive data protection using clusters containing error detection sectors
US6788488B2 (en) * 2001-01-22 2004-09-07 Qualcomm, Incorporated Variable mode multi-media data object storage device
US7143202B2 (en) * 2001-07-02 2006-11-28 Seagate Technology Llc Dual serial port data acquisition interface assembly for a data storage device
US20030154355A1 (en) * 2002-01-24 2003-08-14 Xtec, Incorporated Methods and apparatus for providing a memory challenge and response
US7421459B2 (en) * 2002-03-06 2008-09-02 Hewlett-Packard Development Company, L.P. Buffer management for data transfers between a host device and a storage medium
JP4074110B2 (ja) * 2002-03-20 2008-04-09 Necエレクトロニクス株式会社 シングルチップ・マイクロコンピュータ
US7171525B1 (en) * 2002-07-31 2007-01-30 Silicon Image, Inc. Method and system for arbitrating priority bids sent over serial links to a multi-port storage device
US7174485B2 (en) * 2003-11-21 2007-02-06 Seagate Technology Llc Reverse error correction coding with run length limited constraint
DE10355583A1 (de) * 2003-11-28 2005-07-07 Advanced Micro Devices, Inc., Sunnyvale Gemeinsame Nutzung eines Speichers in einer Zentralsteuerung
US20050204185A1 (en) * 2004-03-11 2005-09-15 Tait Philip J. Detecting and identifying data loss
US7315429B2 (en) * 2005-07-28 2008-01-01 International Business Machines Corporation Apparatus, method and program product for a multi-controller and multi-actuator storage device
US7430091B2 (en) * 2005-10-21 2008-09-30 Microsoft Corporation Method and apparatus for improving the performance of a disk drive
US7205912B1 (en) * 2005-10-31 2007-04-17 Seagate Technology Llc Structured set partitioning and multilevel coding for partial response channels
US20080005749A1 (en) * 2006-06-01 2008-01-03 Broadcom Corporation, A California Corporation Hard disk controller having multiple, distributed processors
US20080005384A1 (en) * 2006-06-01 2008-01-03 Broadcom Corporation, A California Corporation Hard disk drive progressive channel interface
US7587538B2 (en) 2006-06-01 2009-09-08 Broadcom Corporation Disk controller, channel interface and methods for use therewith
KR100849212B1 (ko) * 2006-10-12 2008-07-31 삼성전자주식회사 메모리 카드 및 메모리 카드의 구동 프로그램 업데이트방법
US7760463B2 (en) * 2006-12-19 2010-07-20 Teradata Us, Inc. Multiple disks in a single disk package
US8176386B1 (en) * 2007-04-10 2012-05-08 Marvell International Ltd. Systems and methods for processing streaming data
US8144413B2 (en) 2007-04-30 2012-03-27 Broadcom Corporation Reduced instruction set computer (RISC) processor based disk manager architecture for hard disk drive (HDD) controllers
US20090034107A1 (en) * 2007-08-05 2009-02-05 Joshua Posamentier Redundant data on hard drive
DE102007063291A1 (de) * 2007-12-27 2009-07-02 Robert Bosch Gmbh Sicherheitssteuerung
US20090185311A1 (en) * 2008-01-18 2009-07-23 Broadcom Corporation Multiple access hard disk
JP2010027105A (ja) * 2008-07-15 2010-02-04 Hitachi Global Storage Technologies Netherlands Bv ディスク・ドライブ装置及びそのエラー回復処理の方法
US8223451B2 (en) * 2009-02-13 2012-07-17 International Business Machines Corporation Data storage apparatus and method
US8578242B1 (en) 2010-01-29 2013-11-05 Western Digital Technologies, Inc. Data storage device employing seed array for data path protection
RU2450328C1 (ru) * 2010-12-15 2012-05-10 Государственное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗГУ) Логический мультиконтроллер с распределенным параллельно-конвейерным барьерным синхронизатором
US20120250177A1 (en) * 2011-04-01 2012-10-04 Lsi Corporation Increased data access rates for magnetic hard disk media
KR101932920B1 (ko) * 2012-09-14 2019-03-18 삼성전자 주식회사 비휘발성 메모리 카드를 제어하는 호스트, 이를 포함하는 시스템 및 이의 동작 방법
US20140337676A1 (en) * 2013-05-09 2014-11-13 Lsi Corporation Systems and Methods for Processing Data With Microcontroller Based Retry Features
US9823966B1 (en) 2013-11-11 2017-11-21 Rambus Inc. Memory component with error-detect-correct code interface
US9851901B2 (en) 2014-09-26 2017-12-26 Western Digital Technologies, Inc. Transfer of object memory references in a data storage device
US9607632B1 (en) * 2016-02-16 2017-03-28 Seagate Technology Llc Multiple virtual preamps in a single die
US9911442B1 (en) 2016-11-23 2018-03-06 Seagate Technology Llc Feedforward compensation for multi-actuator hard drives
US9792938B1 (en) * 2017-05-03 2017-10-17 Western Digial Technologies, Inc. Data storage device communicating servo information between servo channels of multiple actuators
US9934803B1 (en) * 2017-05-03 2018-04-03 Western Digital Technologies, Inc. Data storage device attenuating multiple actuator coupling disturbance
US10192576B1 (en) 2017-12-05 2019-01-29 Seagate Technology Llc Method and apparatus that modifies seeks to remediate inter-actuator coupling in a storage drive
US10446180B1 (en) 2018-03-21 2019-10-15 Seagate Technology Llc Multi-actuator interconnector
JP2020042876A (ja) * 2018-09-11 2020-03-19 株式会社東芝 磁気ディスク装置
US10706886B1 (en) * 2019-03-29 2020-07-07 Seagate Technology Llc Scheduling low-priority disk seeks for multi-actuator data storage device
US10803893B1 (en) 2019-06-03 2020-10-13 Seagate Technology Llc Data transfer scheduling for fairness and balance
US10741210B1 (en) * 2019-08-09 2020-08-11 Seagate Technology Llc Magnetic disk device having coupling observers for reducing coupling issues between independently running multi-actuators
US10861490B1 (en) * 2019-08-12 2020-12-08 Seagate Technology Llc Multi-controller data storage devices and methods
JP2021044039A (ja) * 2019-09-11 2021-03-18 株式会社東芝 磁気ディスク装置の製造方法および磁気ディスク装置
US11200112B1 (en) 2020-08-24 2021-12-14 International Business Machines Corporation Method and apparatus to reduce bandwidth overhead of CRC protection on a memory channel
JP2022051129A (ja) * 2020-09-18 2022-03-31 株式会社東芝 磁気ディスク装置および方法
US11861195B2 (en) * 2021-03-15 2024-01-02 Western Digital Technologies, Inc. TLC data programming with hybrid parity
TWI798672B (zh) * 2021-03-30 2023-04-11 幸福新科技股份有限公司 一種具有多個讀寫頭之驅動臂以同步存取資料的儲存裝置
WO2023050147A1 (zh) * 2021-09-29 2023-04-06 长江存储科技有限责任公司 用于存储器的数据保护方法及其存储装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3638182A (en) * 1970-01-02 1972-01-25 Bell Telephone Labor Inc Random and burst error-correcting arrangement with guard space error correction
US4166211A (en) * 1978-04-03 1979-08-28 Burroughs Corporation Error control system for named data
US4371932A (en) * 1979-07-30 1983-02-01 International Business Machines Corp. I/O Controller for transferring data between a host processor and multiple I/O units
US4371929A (en) * 1980-05-05 1983-02-01 Ibm Corporation Multiprocessor system with high density memory set architecture including partitionable cache store interface to shared disk drive memory
US4420819A (en) * 1981-03-13 1983-12-13 Data Card Corporation System for processing and storing transaction data and for transmitting the transaction data to a remote host computer
JP2533076B2 (ja) * 1983-04-30 1996-09-11 ソニー株式会社 エラ−訂正のための符号化方法
US4773004A (en) * 1983-05-16 1988-09-20 Data General Corporation Disk drive apparatus with hierarchical control
US4987530A (en) * 1985-11-15 1991-01-22 Data General Corp. Input/output controller for a data processing system
US4783705A (en) * 1986-02-27 1988-11-08 Quantum Corporation High capacity disk file with embedded sector servo and SCSI interface
US5034914A (en) * 1986-05-15 1991-07-23 Aquidneck Systems International, Inc. Optical disk data storage method and apparatus with buffered interface
US4979056A (en) * 1987-06-02 1990-12-18 Conner Peripherals, Inc. Disk drive system controller architecture
US4965801A (en) * 1987-09-28 1990-10-23 Ncr Corporation Architectural arrangement for a SCSI disk controller integrated circuit
JPH0193933A (ja) * 1987-10-06 1989-04-12 Sony Corp エラー訂正符号化装置
US4949245A (en) * 1988-10-21 1990-08-14 Modular Computer Systems, Inc. Intermediate memory system for connecting microcomputers to a rotating disk memory
EP0446250A4 (en) * 1988-11-10 1995-02-22 Maxtor Corp Control for a rotating media storage system
JPH02158824A (ja) * 1988-12-12 1990-06-19 Nippon I B M Kk ディスク装置の記憶制御装置
US5072420A (en) * 1989-03-16 1991-12-10 Western Digital Corporation FIFO control architecture and method for buffer memory access arbitration
US5214768A (en) * 1989-11-01 1993-05-25 E-Systems, Inc. Mass data storage library
US5155845A (en) * 1990-06-15 1992-10-13 Storage Technology Corporation Data storage system for providing redundant copies of data on different disk drives
US5261058A (en) * 1990-11-09 1993-11-09 Conner Peripherals, Inc. Multiple microcontroller hard disk drive control architecture
US5274773A (en) * 1990-11-09 1993-12-28 Conner Peripherals, Inc. Flexible host interface controller architecture
US5191584A (en) * 1991-02-20 1993-03-02 Micropolis Corporation Mass storage array with efficient parity calculation
US5341387A (en) * 1992-08-27 1994-08-23 Quantum Corporation Viterbi detector having adjustable detection thresholds for PRML class IV sampling data detection

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001034427A (ja) * 1999-07-23 2001-02-09 Fujitsu Ltd デバイス制御装置及び制御方法
JP2002244941A (ja) * 2001-02-16 2002-08-30 Scarabs Corporation Co Ltd 情報処理システム
JP4620267B2 (ja) * 2001-02-16 2011-01-26 株式会社スカラベ・コーポレーション 情報処理システム
US7546411B2 (en) 2001-09-14 2009-06-09 Bruner Curtis H Digital device configuration and method
US9396746B2 (en) 2001-09-14 2016-07-19 Benhov Gmbh, Llc Digital device configuration and method
US9940025B2 (en) 2001-09-14 2018-04-10 Benhov Gmbh, Llc Digital device configuration and method
JP2020155170A (ja) * 2019-03-19 2020-09-24 株式会社東芝 磁気ディスク装置
JP2021140838A (ja) * 2020-03-03 2021-09-16 株式会社東芝 磁気ディスク装置、および磁気ディスク装置のメモリ管理方法

Also Published As

Publication number Publication date
JP3262330B2 (ja) 2002-03-04
KR100202262B1 (ko) 1999-06-15
KR100242178B1 (ko) 2000-08-01
EP0556324A1 (en) 1993-08-25
US5610808A (en) 1997-03-11
EP0556324B1 (en) 2001-05-30
KR100242179B1 (ko) 2000-08-01
DE69133216T2 (de) 2003-12-18
DE69133216D1 (de) 2003-04-17
EP0990980A3 (en) 2000-05-24
EP0990980B1 (en) 2003-03-12
EP0990980A2 (en) 2000-04-05
KR970703013A (ko) 1997-06-10
US5412666A (en) 1995-05-02
KR100343878B1 (ko) 2006-03-28
EP0556324A4 (en) 1997-03-12
WO1992009036A1 (en) 1992-05-29
DE69132618T2 (de) 2001-09-13
KR970703014A (ko) 1997-06-10
KR100245896B1 (ko) 2000-03-02
KR930702723A (ko) 1993-09-09
KR970703031A (ko) 1997-06-10
KR970703012A (ko) 1997-06-10
DE69132618D1 (de) 2001-07-05

Similar Documents

Publication Publication Date Title
JPH06502267A (ja) 多重マイクロコントローラのハード・ディスク・ドライブを制御するアーキテクチャ
EP0384620B1 (en) High performance memory system
US5274773A (en) Flexible host interface controller architecture
US4092732A (en) System for recovering data stored in failed memory unit
JPH06214934A (ja) プログラム可能な外部記憶制御装置
JPH02500228A (ja) エラーデータ訂正可能なコンピュータ用記憶装置及びディジタルデータの記憶方法
JPH0756688A (ja) データ記憶装置
JPS62298970A (ja) シ−ケンシャルバッファ装置
JPS5860410A (ja) 磁気デイスク制御方式
JPS6381660A (ja) 磁気メモリ制御装置
WO1998003970A1 (en) Hard disk drive having dynamic in-line sparing
US6603621B1 (en) System and method for storing disk sector information
JP3615250B2 (ja) ディスクアレイ装置
JPH04311218A (ja) 外部記憶制御装置
JPH04259025A (ja) ディスクアレイ制御装置
JP4004102B2 (ja) 符号誤り訂正検出装置
JPH04311217A (ja) 外部記憶制御装置
JPS59180811A (ja) Ecc制御方式
JPH11119915A (ja) ディスクアレイ装置
JPS62117180A (ja) 磁気デイスク装置
JPH06309113A (ja) ディスク装置
JPH03189719A (ja) ディスク記憶装置
JPH01128144A (ja) フレキシブルディスク装置
JPS6231455A (ja) キヤツシユ制御方式
JPH02109151A (ja) ディクスキャッシュ制御方式

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081221

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091221

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091221

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101221

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111221

Year of fee payment: 10

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111221

Year of fee payment: 10