符号を用いて更に詳細に図面について説明する。図1は本発明のハードディスクドライブ10を示す。ディスクドライブ10はホストコンピュータ(図示せず)に差込可能なカードとして構成されている。ユニット10はハウジング12及びコネクタ14を有している。好ましい実施形態において、ハウジングは長さ、幅及び厚さが85.6×54.0×5.0mmの寸法を有している。この寸法はパーソナルコンピュータメモリカード・インターナショナルアソシエーション(PCMCIA)が発行しているII型電子カードの仕様書に準拠している。PCMCIAは規格カードの寸法及び他の必要条件を記載した仕様書を公開している協会である。PCMCIA仕様書に準拠した各コンピュータは規格カードを受承することが可能なスロットを有している。このような規格により、システムの型式又は構成に拘わらず、1つのコンピュータの電子カードは別のコンピュータに容易に差込可能である。郵便番号94086、カリフォルニア州サニーベール、ジーイーストドゥエーンアベニュー1030番地(1030 G East Duane Avenue, Sunnyvale, California 94086)に所在するパーソナルコンピュータメモリカード・インターナショナルアソシエーションに一報を入れれば、PCMCIA規格のコピーを入手することが可能である。
PCMCIA規格は各々が異なる厚さを有する3種類のカードを有している。I型カードは約3.3mmの厚さであり、II型カードは約5.0mmの厚さであり、III型カードは約10.5mmの厚さである。コンピュータはII型カードを受承するほどに幅広の複数の隣接スロットを有している。I型カード及びII型カードの双方とも1つのスロットを占拠するが、III型カードは2つのスロットを占拠する。各コンピュータのスロットは、通常、コンピュータシステムと相互接続するようにマザーボードに装着される68個のピンコネクタを有している。当初、PCMCIA規格は内部モデム及びファクシミリボードを有するメモリカード及び/又は論理カード用に確立された。本発明はPCMCIAのII型カードのフォーマットに準拠可能なハードディスクドライブを提供する。
好ましい実施形態において、カードアセンブリ10のコネクタ14はコンピュータに配置された68個のピンコネクタに係合可能な68個のピンを有している。通常、コネクタ14は複数のソケット16を有する誘電体材料から構成されている。ソケット16はコンピュータのコネクタ(図示せず)に配置されたピンに係合する。コネクタは電力、接地及びデータ用に指定されたピンを有している。PCMCIA規格の要項として、接地用ソケットは電力用ソケットより長く、電力用ソケットはデータ用ソケットより長い。このような配置により、カード内にて電圧スパイク又は電力サージを生じさせることなく、「ライブ」オペレーティングシステムにカードを差し込むことが可能である。
図2〜図7について説明する。ハードディスクドライブはスピンモータ20により回転させられるディスク18を有している。通常、ディスク18は当業者には周知の磁気コーティングで覆われた金属、ガラス、セラミック又は合成の基板から構成されている。図6に示すように、スピンモータ20は一対の円錐形軸受け26によりスピンドル磁石24に接続されたハブ22を有している。ハブ22内には固定子28、及びハブ22の内面に取り付けられた磁石32と協働する複数の巻線30が存在する。巻線30に電流を流すことにより、磁石32を通過する磁束が生じ、ハブ22及びディスク18が回転し始める。ハブ22はテーパ状の一対の内面34を有し、これは円錐形軸受け26の対応するテーパ状面36に沿って摺動する。テーパ状ハブ面36と軸受け26との間には流体の薄層が存在し、これにより2つの部材22及び26は比較的摩擦を生ぜずに回転可能となっている。軸受け26間には軸受け用流体のためのリザーバを形成する空間38が存在する。軸受け用流体は、スピンドル磁石24の磁束によりハブ22と軸受け26との間に保持される鉄−流体潤滑剤であることが好ましい。円錐形軸受け26によりスピンモータ20の形状は狭くなっている。このためにスピンモータ20は、手に持ったコンピュータ及び/又はディスクドライブにかかり得る衝撃度に耐えることが可能である。
ディスク18はディスククランプ42によりハブの肩部40に対して締め付けられている。ディスククランプ42はモータ20に対して超音波で溶融された熱可塑性材料から構成されることが好ましい。熱可塑性物質はハブ22内に位置する複数の溝44の中に流れ込んでいる。溝44におけるプラスチックはディスク18がz軸において移動することを防止している。クランプ42の一部もディスク18の内径とハブ22との間における空間に流れ込み、ディスク18が横方向に移動することを防止している。
固定スピンドル24は一対のキャップ45,46により捕捉されている。底部キャップ45は接着剤層50によりベースプレート48に装着されている。好ましい実施形態において、この接着剤はAF46の名称でミネソタマニュファクチャリングアンドマイニング社(「3M」)により販売されている材料である。薄膜50は下部円錐形軸受け26をキャップ45に装着するためにも使用されている。上部キャップ46は固定スピンドル24に装着されている。好ましい実施形態において、キャップ46とカバー52とは、カバー52に装着された接着性かつ粘弾性の薄膜材料54により接続されている。粘弾性材料54はモータ20の高さと、ベースプレート48とカバー52との間の空間との許容誤差を補正している。粘弾性材料54はモータ20にかかる衝撃及び振動荷重も減衰させている。
図2に示すように、ディスク18は、一般的にヘッドと呼ばれる一対の変換器58を有するアクチュエータアームアセンブリ56に対して回転する。変換器58はディスク18の各対応隣接面の磁界を磁化し、検知することが可能なコイル(図示せず)を有している。各ヘッド58はアクチュエータアーム62に取り付けられたフレックスビーム(flexbeam)60に支持されている。好ましい実施形態において、各フレックスビーム60は、比較的弾性の誘電体材料(図示せず)により分離された1つ以上の導電性プレート(図示せず)から構成されている。金属プレートは変換器58に送信される信号の導電路を設けることができる。各ヘッド58はディスク18の回転により生成されるエアストリームと協働するスライダ(図示せず)を有し、ディスク面と変換器との間に空気軸受けを形成する。この空気軸受けはディスク18の表面からヘッド58を持ち上げる。ヘッドが空気軸受けによりディスク面から分離され、かつディスク18及びモータ20の振れを拾い取ることが可能であるほどに可撓性であるように、フレックスビームは構成されている。ヘッド58は水平方向又は鉛直方向のいずれかで記録するように構成することが可能である。
フレックスビーム60は接着剤によりアクチュエータアーム62のスロットに挿入されている。好ましい実施形態において、この接着剤はプライマ、熱又は紫外線の光源により硬化可能である。アクチュエータアーム62は軽量かつ強固な炭化ケイ素から構成されることが好ましい。アクチュエータアーム62はベアリングアセンブリ66を中心に回動する。図4に示すように、ベアリングアセンブリ66はベースプレート48から延びるころ軸受け68を有している。図2について説明する。アクチュエータアーム62は、ブロック68におけるV字形スロット72に延びる三角形状のローラベアリング70を有している。ローラベアリング70はC字形スプリングクリップ74によりブロック68に接触させられている。アクチュエータアーム62がベアリングアセンブリ66を中心に回転させられる時、ベアリングがブロック68に対して回動するように、ローラベアリング70のアペックスはスロット72のアペックスに係合する。本発明のローラベアリングによりベアリングアセンブリの形状は狭くなっている。このためにベアリングアセンブリは比較的小さい摩擦を生じさせるとともに、手に持ったディスクドライブに加えられる標準衝撃荷重に耐えることが可能である。
アクチュエータアーム62の端部には一対の固定コイル78の間に配置された磁石76が設けられている。この磁石は北極(N)及び南極(S)を有し、一方向にてコイルに電流が流れる時、北極がコイルに対して垂直方向の力を受け、これとは反対方向に電流が流れる時、南極が同一方向の力を受ける。一般的に磁石及びコイルは音声コイルモータ、即ちVCM80と呼ばれ、アクチュエータアーム62を回転させ、ディスク18に対してヘッド58を移動させる。図4に示すように、コイル78はフェライト材料から構成されるとともに、磁束の帰還路を構成するC字形遮蔽プレート82に装着されて、磁束を音声コイル80の領域に保持する。
図2及び図5に示すように、コネクタ14はハウジング12の一端に配置されるとともに、ベースプレート48及びカバー52における鋸歯状面84により保持されている。鋸歯状面84はコネクタ14がハウジング12に対していずれの方向にも移動することを阻止している。各コネクタソケット16は印刷回路板(PCB)90上の導電面パッド88にハンダ付けされたテール86を有している。図5に示すように、印刷回路板90はベースプレート48に支持されるとともに、ディスクドライブアセンブリ10を駆動させるのに必要な全ての電気部品を有している。
図7に示すように、印刷回路板90に装着されているのは、コントローラチップ92、読取り/書込みチャネルチップ94及びサーボチップ96である。各チップは、当業者には周知の従来技術により回路板90にハンダ付けされた集積回路パッケージ内に収容されている。図2に示すように、回路板90の反対側はデータマネージャチップ98、前置増幅器チップ100及び読取り専用メモリ(ROM)チップ102を有している。回路板90は抵抗器104及びコンデンサ106のような受動素子も有し、ドライブアセンブリの電気系をなしている。回路板90はディスク18とコネクタ14との間に配置されている。図5に示すように、回路板90はディスク18とほぼ平行な平面に配置されている。回路板90をディスク18に対してほぼ「平面内」に配置することにより、ディスクドライブアセンブリ全体の厚さが低減している。
図2に示すように、回路板90は可撓性回路板108によりアクチュエータアセンブリ56に連結されている。通常、可撓性回路板108はカプトン(KAPTON)という商標名で市販されているポリイミドシートから構成されている。これらポリイミドシートは回路全体にわたって延びる導電跡を封緘している。可撓性回路板108の一端は、フレックスビーム60にハンダ付けされ、或いは超音波を使用して接着された接触パッド110を有している。図5に示すように、回路板108の対向端部は、カバープレート52に配置された締付けストリップ116により、印刷回路板90上の対応パッドに作動接触するように押圧された接触パッドを有している。カバープレート52がベースプレート48に取り付けられる時、締付けストリップ116は可撓性回路板108の接触パッドに圧力を加えるように適合されている。締付けストリップ116は可撓性回路板108を印刷回路板90に断続させる手段を付与し、これら2つの部材をハンダ付けする必要がない。図2に示すように、ディスクドライブアセンブリは、印刷回路板90を音声コイル80のコイル78及びスピンモータ20の巻線30にそれぞれ接続する可撓性回路118及び120も有している。可撓性回路118及び120は締付けストリップ116により回路板90上の対応パッドに接触するように押圧された接触パッドを有している。
図3及び図4に示すように、カバー52に装着されているのは、ベースプレート48における対応面124に押圧されたエラストマシール122である。エラストマ122は一般的にHDA126と呼ばれる領域において、ディスク18、スピンモータ20及びアクチュエータアセンブリ56を密閉している。カバープレート52はクランプ128によりベースプレート48に取り付けられている。クランプ128はプレート48及び52における対応スロット132に延びる複数のスプリングタブ130を有している。クランプ128はディスクドライブアセンブリ10の縁部に加えられる外部の衝撃荷重及び振動荷重を吸収するエラストマストリップ134を有することが可能である。通常、ディスクドライブ10は、コンピュータのハウジングによりカードの縁部が支持されるように、ホストコンピュータにロードされる。従って、通常、コンピュータに加えられる衝撃荷重又は振動荷重はドライブの縁部を介してディスクドライブに伝達される。エラストマストリップ134はこれら荷重を減衰させ、ドライブの作動に対する損傷又は中断を防止する。クランプはねじ又は他の同様の締付け手段を用いることなく、ベースプレート48をカバー52に取り付けるための手段を付与している。ねじ部品の省略はアセンブリの全高を低減するのに寄与している。図2及び図3に示すように、カバー52は2つの部材48及び52を配列するように、ベースプレート48における対応溝138に挿入された方形ピン136を有している。
ベースプレート48はHDA126の外部に配置されたブリーザフィルタ144を有するフィルタチャンバ140を備えている。ベースプレート48はHDA126とチャンバ140との間を流体を介して連通させるスロット142を有している。HDA126内の空気圧がドライブ10の外側の周囲空気より低い時、差圧によりクランプ128を通過し、カバー52とベースプレート48との間の中間面を介し、HDA領域126及びベース48に空気が注入される。このHDA領域126はフィルタチャンバ140に流体を介して連通し、フィルタチャンバ140もHDAに流体を介して連通している。注入された空気はフィルタチャンバ140を介してHDA126に流入する。空気中の炭化水素、酸性ガス及び他の不純物はブリーザフィルタ142により捕捉される。ブリーザフィルタは湿度制御エレメントを有することも可能である。
ディスクドライブアセンブリ10はHDA内の不純物を除去する再循環フィルタ146も有している。再循環フィルタ146は壁部146によりHDAから分離されたチャンバ147の中央部に配置されている。フィルタ146は上流チャンバ150を下流チャンバ147から分離している ディスク18を回転させることにより、空気は上流チャンバ152に流入し、フィルタ146を介して下方チャンバ147に流入し、ディスク18のHDA領域126に帰還する。ディスクドライブは炭化水素、酸性ガス及び水を吸収する材料から構成された環境制御アセンブリ180を有することも可能である。
図8はハードディスクドライブアセンブリ10のシステムアーキテクチャの概略図を示す。このシステムはディスクドライブの作動を制御する。通常、データはディスクの直径と同心の環状トラックに沿って磁気ディスク12に記憶される。好ましい実施形態において、ディスクは直径が1.8インチである。1.8インチのディスクについて説明しているが、本発明は1.3インチ(3.3cm)、2.5インチ(6.4cm)、3.5インチ(8.9cm)等の他の径を有するディスクにも使用可能であると理解されたい。1.8インチのディスクでは、ディスク面毎に130個のトラックにデータを記憶させる。各トラックは複数のサーボセクタを有している。各セクタは768バイトまでのデータを記憶することが可能である。アセンブリ全体では130メガバイトまでのデータを記憶可能である。
図8に示すように、システム10はデータマネージャチップ98、コントローラチップ92、サーボチップ96及び読取り/書込み(「R/W」)チップ94を有している。このシステムは制御装置92に接続された読取り専用メモリ(「ROM」)装置102、並びにヘッド58及びR/Wチップ94に接続された前置増幅器回路(「プリアンプ」)100も有している。制御装置92は連続線204及び206を介し、それぞれサーボ96及びR/W94チップに接続されている。制御装置92はアドレス/データバス208によりデータマネージャ98に接続されるとともに、命令バス210によりROM202に接続されている。データマネージャ98はアドレス/データバス214によりホスト212に接続されるとともに、データバス216によりR/Wチップ94に接続されている。R/Wチップ94はライン218により前置増幅器チップに接続されている。サーボチップ96はサーボライン220を介してR/Wチップ94に接続されている。サーボチップ96はライン222,224を介し、それぞれ音声コイル80及びスピンモータ20にも接続されている。プリアンプチップ100はライン226を介してヘッド58に接続されている。制御装置92は生データライン228によりR/Wチップ94にも接続されている。連続線及びアドレス/データバスは、それぞれのチップ間に情報を転送するのに必要な制御信号線を有している。本明細書中においては連続線が使用されているが、連続線は多重線を有することが可能であると理解されたい。
図9に示すように、データマネージャ98はホストインターフェースコントローラ回路230によりホスト212に接続されている。インターフェースコントローラ230はホストプロトコルに基づいてリターンハンドシェーク等を出力することによりホスト212にインターフェースで接続するように、ハードウェアを有している。好ましい実施形態において、インターフェースコントローラ230はPCMCIAプロトコルに対応している。インターフェースコントローラ230はデータバス234を介し、ランダムアクセスメモリ(RAM)装置232に接続されている。RAM232はホスト212とディスク18との間にて転送されるデータを記憶するようにデータバッファを供給する。好ましい実施形態において、RAMは4.0キロバイトまでのデータを記憶することが可能である。通常、3.5キロバイトのメモリはホスト・ディスク間にて転送されるデータを記憶することを専用としている。残りの0.5キロバイトのメモリは、通常、所定のディスクドライブの特性を記憶することを専用とするスクラッチパッドを供給する。各ディスクドライブが組み立てられる時、ドライブユニットの種々の特性が確定され、ディスクに記憶される。ディスクドライブがパワーアップされる時、制御装置は初期化ルーチンを行う。ルーチンの一部はディスクからドライブ特性を検索し、これをRAMのスクラッチパッド部分に記憶させる。
RAM232の管理は、アドレスバス238にて記憶、装置232にアドレスを出力し、かつライン240にて使用可能制御信号を供給するメモリコントローラ回路236により制御されている。メモリコントローラ回路236はライン242を介し、インターフェースコントローラ回路からアクセス要求を受信する。コントローラ回路236はライン246を介し、ディスクコントローラ回路244からもアクセス要求を受信する。ディスクコントローラ回路244はディスクマネージャチップ98とR/Wチップ94との間にインターフェースを付与している。ディスクコントローラ回路244はインターフェース回路236からライン248にて読取り/書込み制御信号を受信する。これら読取り/書込み制御信号は読取りゲート線250及び書込みゲート線252にてR/Wチップ94に中継される。また、インターフェースコントローラ回路、メモリコントローラ回路及びディスクコントローラ回路は、ライン254,256及び258を介してコントローラチップ92に接続されている。
メモリコントローラ236はRAM232とインターフェースコントローラ回路230との間、RAM232とディスクコントローラ回路244との間、及びコントローラチップ92とデータマネージャチップ98との間におけるデータの記憶及び検索を制御している。RAM232及びコントローラチップ92は専用データバス208により接続されている。コントローラチップ92がRAM232にアクセスしたい時、コントローラチップはアドレス及びデータマネージャチップセレクト(DMCS)制御信号256を供給する。
ディスクにデータを書き込むには、当初、ホスト212はインターフェースコントローラ回路230が受信する書込み要求を供給する。この書込み要求は必須初期接続手順シーケンスを実行する。インターフェースコントローラ回路230はホストからメモリバッファ232への論理アドレス及びデータを記憶するように、メモリコントローラ回路236に対してアクセス要求を生成する。そして、メモリコントローラ回路236はメモリマッピング型に基づいてバッファ232にデータを記憶する。インターフェースコントローラ回路230はコントローラチップ92に送信されるHOSTINT割込み信号を発生させる。
HOSTINT信号の認識後、コントローラチップ92はホスト212が供給する論理アドレスを読み取るように、RAM232へのアクセスを要求する。コントローラチップ92は論理アドレスを物理的なディスクアドレスに変換する。そして、コントローラチップ92はシークルーチンを開始し、ヘッド58をディスク18上の適正位置に移動させることが可能である。音声コイル80が変換器58を所望のディスクセクタに移動させてしまう時、コントローラチップ92はZセクタ信号をデータマネージャ98に供給する。Zセクタ信号の受信後、ディスクコントローラ回路244はデータアクセス要求をメモリコントローラ回路236に供給する。メモリコントローラ回路236はRAM232の対応内容をバス216に配置することにより、ディスク18に対して書込みシーケンスを開始する。
データを読み込むには、ホスト212はインターフェースコントローラ回路230が受信する読取り要求を供給する。要求された論理アドレスはバッファ232に記憶される。HOSTINT信号が生成され、コントローラチップ92により論理アドレスが検索される。コントローラチップ92は物理的アドレスをディスク上の実際のセクタに変換し、これに応じてアクチュエータアームを移動させるようにシークルーチンを開始する。変換器が適正なディスク位置の上方に存在する時、コントローラチップ92はZセクタ信号をデータマネージャ98に供給する。そして、ディスクコントローラ回路244はメモリアクセス要求をメモリコントローラ回路236に出力し、RAM232が使用可能になる。そして、ディスクコントローラ回路244を介し、R/Wチップ94からバッファ232にデータが転送される。そして、メモリコントローラ回路236はインターフェースコントローラ回路230を介し、RAM232からホスト212にデータを転送する。
図10に示すように、サーボチップ96はボイスコイル80及びスピンモータ20を駆動するように、それぞれ音声コイル制御回路270及びスピンモータ制御回路272を有している。サーボチップ96は双方向の16ビット同期シリアルポート274によりコントローラチップ92に接続されている。シリアルポート274はライン278によりデジタル・アナログ(Dac)変換器に接続されている。Dac276はスピンモータDacポート280、音声コイルDacポート282及びアナログ・デジタル(Ad)変換器Dacポート284を有している。
音声コイルポート282は3つの信号、Vvcmoffset,Vvcmtrack及びVcm gain rangeをライン288〜292にて音声制御回路270に供給する。これら3つの信号は加算回路294内にて加算される。Vvcmoffset信号は音声コイル80にバイアス電圧を加える。Vvcmtrack信号は音声コイル80の駆動信号を更に正確に制御するように、バイアス信号を変化させる二次電圧信号を供給する。Vcm gain range信号はバイアス信号の高分解能を付与する別の二次信号であって、通常、ドライブのサーボルーチン中に使用される。Vcm信号の振幅は8ビットデータストリームにより確定される。この8ビットデータストリームはコントローラチップ92により双方向のシリアルポート274を介し、音声コイルポート280に加えられる。データ命令にはシリアルポートにより復号される7ビットアドレス及び読取り/書込みビットが伴う。この7ビットアドレスの内容に基づき、適正なDacポートにデータが向けられる。
加算回路294はドライブ回路298をバイアスする演算増幅器296に信号を供給する。ドライブ回路298はピンVcmP 300及びVcmN 302を介し、音声コイルのコイル78に接続されている。音声コイル制御回路270は電流センサ304も有している。電流センサ304は演算増幅器296にフィードバックされ、音声コイル80に供給される電流を直接電流制御する。
スピンモータポート280はライン306〜310を介し、信号Vspnoffset,Vspntrack及びVspn gain rangeをスピンモータ制御回路272に供給する。これら信号はスピンモータ回路により受信される。スピンモータ回路は音声コイル回路270とほぼ同一の構成部品である加算回路312、演算増幅器314、ドライバ回路316及び電流センサ318を有している。加算回路は上記のVspin()信号を加算する。音声コイル信号と同様に、オフセット信号はバイアス電圧を加え、他の信号はこのバイアス電圧を調整する。ドライバ回路316はライン320〜324にてそれぞれピンA,B及びCを介し、スピンモータの巻線に接続されている。ドライバ回路316はスピンドル制御論理326により制御されている。スピンドル制御論理326はVcommライン328にてコントローラチップ92により加えられるコミュテーションアドバンス(commutation advance)信号の受信後、出力線A,B及びCのドライバの適正な組合せを連続的に可能にする。コミュテーションアドバンス信号Vcommが出力される毎に、制御論理326は適正ドライブを連続的に可能にし、ラインA,B及びCが適正に組み合わされてスピンモータに電流が供給される。
スピンモータ制御回路272はラインA,B及びC、並びにライン332にてモータのセンタタップ(CT)に接続された逆起電力センサ330を有している。センサ330は逆起電力信号を比較器334に供給する。比較器334はこの信号と基準電圧とを比較する。比較器334はライン336にてVphase信号をコントローラチップ92に供給する。コントローラチップ92はVcommライン328を介してスピンモータ20を整流するように、Vphase信号を用いる。好ましい実施形態において、ドライバ回路316は更なるラインSpnGa,SpnGb及びSpnGcを有している。ラインSpnGa,SpnGb及びSpnGcは更なるドライバに接続され、モータに加えられる電流レベルを上げることが可能である。この特徴により、サーボチップ96は比較的高い回転トルクを必要とする更なるディスクを有するディスクドライバにおいて使用することが可能である。
サーボチップ96は種々の入力信号を受信するアナログマルチプレクサ338を有している。これら信号は、Dac変換器276のデジタル・アナログ回路を用いるアナログ・デジタル(Adc)変換器340に多重化される。Adcは比較器342、及び一連の8ビットデータ列を生成するシリアル近似レジスタ(SAR)344を有している。
稼動時、マルチプレクサ338はアナログ信号を比較器342に供給する。SAR344はAd Dacポート284に送信される連続した8ビットワードを生成する。Ad Dacポート284はこのワードをアナログコンパレータ信号に変換する。このアナログコンパレータ信号はマルチプレクサ338からのアナログ信号と比較される。第1のワードは1に設定された最重要なビット及び0に設定された他の全てのビットを有している。最重要なビットがアナログ信号より大きければ、シリアルポート274にビット1が供給される。SAR344は次の8ビットワードを生成し、これもアナログ信号に変換され、かつ比較器342と比較される。この新ワードは1に設定された次なる最も重要性が低いビットを有している。このルーチンは、アナログ信号の振幅を規定するようにシリアルポート274に8ビットが供給されるまで継続される。そして、シリアルポート274は連続線204を介し、コントローラチップ92にビットを送信する。
マルチプレクサ33はライン346及び348にて逆起電力センサ330及び電流センサ318から、それぞれ入力信号Vbemf及びVispnを受信する。R/Wチップ94からのA−B及びC−Dサーボ信号がライン350及び352を介し、マルチプレクサ338に供給される。音声コイル電流センサ304の出力信号Vivcmがライン354にてマルチプレクサ338に供給される。これらフィードバック信号はAdc340及びシリアルポート274を介してコントローラチップ92に送信される。
音声コイル制御回路270はコントローラチップ92からの命令に応じて、ヘッド58をディスクに対して位置決めする。コントローラチップ92及び制御回路270は、シークルーチン又はサーボルーチンのいずれかに従ってアクチュエータを移動させる。シークルーチンにおいては、ヘッド58はディスク上の第1のトラック位置からディスク上の第2のトラック位置に移動させられる。サーボルーチンは変換器58をトラックの中心線に保持するのに用いられる。
好ましい実施形態において、ディスク18は埋込サーボ情報を有している。図11はディスクのトラックにおける典型的なセクタを示す。当初、各セクタはサーボフィールドを有し、この後にIDフィールドを有している。IDフィールドはセクタを認識するヘッダアドレスを有している。IDフィールドの後にはデータフィールド及び誤り訂正符号(ECC)情報が続いている。ECCフィールドの後には別のIDフィールドが続き、これはデータフィールドDOのデータ片を有する後続のデータフィールドD1を同定する。
当初、サーボフィールドは書込み/読取りフィールドを有し、次に自動利得制御(AGC)フィールドを有し、この後にデータが存在しない過程(DCギャップ)が続いている。DCギャップの端部には同期パルスが存在する。サーボフィールドはセクタの特定のシリンダ(トラック)を同定するためのグレイコード、及び複数のサーボバーストA,B,C及びDも有している。サーボバーストA及びBはトラックの中心線において外縁を有している。サーボバーストCは偶数番トラックのトラックの中心線に配置されている。サーボバーストDはサーボバーストCの上縁に位置する底部縁を有している。トラックの中心線に対する変換器の位置はサーボバーストA〜Dの振幅を読み取ることにより決めることが可能である。AGCフィールドはサーボバーストの基準電圧値を設定するのに用いられる。
同期パルスはAGCフィールドの後に遷移を有さない所定数のクロックサイクル後に検知される第1の電圧遷移として同定される。例えば、変換器がAGCフィールドを検知した後、同期サイクルの検出前に電圧遷移が生じることなく3クロックサイクルが生じ得る。別のシステムとして、グレイコードの開始が同期パルスを示す電圧遷移を出力することが可能である。
図12はコアマイクロプロセッサ360を有するコントローラチップ92の図を示す。好ましい実施形態において、このコアはDSP TMS32OC25という部品名でテキサスインスツルメンツ社(「TI」)により販売されているプロセッサの改良版である。プロセッサ360は、8OC196という系統名でインテル社により販売されているコントローラチップのような従来のハードディスクドライブ制御装置よりも少ない命令セットで稼動する。命令セットが減少することによりメモリアクセス要求が減少する。プロセッサブロック360はRAMメモリ(図示せず)を有している。従来のRAM装置は5.0ボルトの公称電力供給により作動する。ポータブルラップトップ型コンピュータにおいて一般的に使用される電圧レベルである3.3ボルトの公称電力供給にて作動するハードディスクドライブを備えることが望ましい。従来のRAM装置が3.3ボルトにて作動している時、RAM装置が5.0ボルトにて作動している時より、プロセッサメモリアクセス要求に応答する速度が遅い。RAMの速度が遅いとプロセッサの性能が低下する。所定の機能に対するメモリアクセス要求の必要性が少なくなるプロセッサを用いることにより、プロセッサの性能をそれほど左右することなく、3.3ボルトにて稼動するシステムが得られる。
DSPマイクロプロセッサは命令及びデータを転送するための2つの別個の内部バス(図示せず)を有している。デュアルバスアーキテキチャによりプロセッサは取出し、復号化、読取り及び実行のルーチンを並行して実行することが可能である。DSPのパイプライン特性によりプロセッサの性能は著しく高まっている。DSPプロセッサはレジスタ及びRAM装置の双方として機能するオンボードメモリを有している。
コントローラチップはプロセッサ360に接続された支援「オンチップ(on- chip)」ハードウェアも有している。支援ハードウェアは連続線204及び206を介してサーボ96及びR/Wチップ94に接続された双方向性16ビット同期シリアルポート362を有している。また、シリアルポート362はバス364を介してプロセッサ360に接続されている。シリアルポート362はプロセッサ360とチップ94,96との間にバッファを供給するレジスタを有している。ポート362はプロセッサ360により供給されるアドレスに応答し、R/Wチップ94及びサーボチップ96に対してチップセレクト信号も生成する。シリアルポート362はレジスタファイル366に接続されている。
コントローラチップ96はグレイコード回路370、サーボストローブ回路372、バースト復調器回路374、自動利得制御(AGC)回路376及び書込み使用禁止回路378を有するステートマシン368を備えている。バースト復調器374はライン380を介して他の回路の作動を制御する。復調器回路374はライン384を介してタイマ回路382に接続されている。グレイコード回路370及びバースト復調器回路376の双方は、R/Wチップ94から生データを受信するように生データライン228に接続されている。
タイマ回路382は複数のタイマを有し、このうちの1つはセクタのサーボバースト前に「タイムアウト」になる。プリサーボ(pre-servo)タイマがタイムアウトになる時、タイマ回路382はライン386にてAGC信号をAGC回路376に供給する。AGC信号はAGC回路376を使用可能にし、AGC回路376はライン388を介してR/Wチップ94の自動利得制御回路を使用可能にする。また、タイマ回路382はライン384にて検索信号をバースト復調器374に供給する。この検索信号によりバースト復調器374はセクタのサーボバースト内の同期パルスの検索を開始することが可能である。検索信号の受信後、所定数のクロックサイクル内にて(生データライン228から)信号の遷移が生じない時、バースト復調器374は内部シンクロマークフィールドを使用可能にする。このフィールドの使用可能化後、所定時間内に遷移は生じれば、バースト復調器374は同期パルスの検出を示すHセクタ信号を発生させる。
Hセクタ信号はライン394にてZセクタ回路に供給されるとともに、ライン390にてプロセッサ360に供給される。復調器回路374からのHセクタ信号はzセクタ回路392内にて一対のタイマを設定する。タイマが「タイムアウト」になる時、zセクタ回路392はデータマネージャチップ98及びR/Wチップ94にzセクタ信号を供給する。各データフィールドDo及びDIに対してタイマを設けることが好ましい。Zセクタ回路392が使用可能線396を介してプロセッサ360により使用可能になっていれば、回路392はセクタ信号のみを発生させる。バースト復調器374回路は同期パルスの検出後、グレイコード回路372を使用可能にする。グレイコード回路372は生データライン228にて供給されるグレイコードを記憶するシフトレジスタを有している。そして、グレイコードはバス398を介してレジスタファイル366における専用アドレスに記憶され、引き続いてプロセッサ360により検索される。また、同期パルスの検出によりバースト復調器374における内部タイマが設定される。このタイマがタイムアウトになる時、バースト復調器374はグレイコード回路370を使用禁止にし、サーボストローブ回路372を使用可能にする。サーボストローブ回路372はライン399にて一連の2つのビット信号を送信し、R/Wチップ94内の内部回路がA−B及びC−D信号をサーボチップ96に供給することを可能にしている。そして、A−B及びC−D信号はAdc変換器340及びシリアルポート2396.74,362を介してレジスタファイル366に送信される。
また、タイマ382が検索信号を発生させる時、バースト復調器374は書込み使用禁止回路378を使用可能にする。書込み使用禁止回路378が書込み信号を使用禁止にするとともに、ディスクへのデータの書込みを阻止することが可能となるように、データマネージャチップ98からの書込み使用可能線252は書込み使用禁止回路378を介してプリアンプ100に通じている。書込み使用禁止回路378はサーボフィールドに対するデータの書込みを阻止するように、サーボバースト中に書込み信号を使用禁止にする。また、書込み使用禁止回路378はライン400を介して衝撃センサ(図示せず)により使用可能にされる。ディスクドライブが所定値を越えて加速される時、衝撃センサは使用可能信号を供給する。衝撃センサ及び書込み使用禁止回路378は、ドライブが過度の衝撃を受ける時にデータの書込みを阻止する。
コントローラチップ92はバス404及び406を介してプロセッサ360及びレジスタファイル366に接続されたインターフェースモジュール402を有している。インターフェースモジュール402はプロセッサ260とレジスタファイル366との間にメモリマップを付与している。モジュラインターフェース402は支援オンチップハードウェアが異なる種類のプロセッサに接続されることを可能にしている。モジュール402はライン410を介してデコーダ408に接続されている。デコーダ408はプロセッサ360により供給されるアドレスを復号化し、ライン412及び256を介し、ROM102又はデータマネージャチップ98のいずれかを選択するチップセレクト制御信号ROM及びDMを使用可能にする。
コントローラチップ92はライン414にてシステムクロックからクロック信号を受信するオシレータ412を有している。オシレータ412はライン418にてクロック回路416に刻時信号を供給する。クロック回路416はライン420〜428にて、R/Wチップ94、データマネージャチップ98、サーボチップ96、マイクロプロセッサ360及び制御装置92の支援ハードウェアに対して刻時信号を供給する。好ましい実施形態において、オシレータ412は30MHzのクロック信号を発生させる。オシレータ412はライン432を介して休止回路430に接続されている。ライン434にて回路430にINTB信号が供給される時、休止回路430はオシレータ412を使用禁止にする。通常、INTB信号はホストプロセッサ(図示せず)により供給される。通常、所定の時間間隔において、レジスタファイル366のレジスタ内にビットを設定することによりディスクアクセス要求が生成されていない時、ホストプロセッサは休止信号を供給する。
支援ハードウェアはスピン回路436も有している。スピン回路436はVphaseライン336及びVcommライン328を介してサーボチップ96に接続されている。スピン回路436はライン438及び440によりレジスタファイル366及びプロセッサ360の双方に接続されている。スピン回路336がVphase信号を受信する時、回路436はSPININTライン440にてプロセッサ360に割込み信号を供給する。また、Vphase信号はスピン回路436内の内部Vcommタイマを設定する。加えて、スピンブロック回路436はレジスタファイル366における専用レジスタ(1つ又は複数)も読み取る。レジスタファイル366の内容は、サーボモジュール96のスピン制御回路272に対し、スピン回路436がVphase信号を受信する時と、回路436がVcomm信号を発生させる時との間に時間間隔を設ける。
プロセッサ360は継続的に作動する内部タイマ(図示せず)を有している。プロセッサ360がSPININTピン440を認識し、かつこのラインがスピン回路436により起動される時、プロセッサ360は内部タイマの時間及びスピン回路436におけるVcommタイマの値を読み取る。Vcommタイマの値は、Vphase信号の受信とプロセッサ360によるSPININT割込み信号の認識との間にて経過した時間を示す。Vcomm時間は内部プロセッサタイマの値から減じられる。この結果生じる時間は、理論上の時間と比較され、スピンモータ20の速度においてエラーが存在するか否かを判定する。通常、スピンモータ20は12個の極を有し、一回転毎に36個のVphase信号が生成される。
代替として、スピンモータ20の速度は、AGCフィールドの端部とDCギャップの開始との間におけるパルスの数をカウントすることにより測定することが可能である。この実施形態において、各ディスクセクタのAGCフィールドの端部とDCギャップの開始との間にマイクロ秒のタイムフィールドが形成されている。このタイムフィールドは所定数のパルスを有している。同期パルスの検出後、スピンタイマ383が設定される。スピンタイマ383は次のセクタのAGCフィールドの端部においてタイムアウトになる。スピンタイマ383はピン385を起動することにより、バースト復調器374においてカウンタ375を使用可能にする。カウンタ375は変換器により検出されるパルスの数をカウントする。そして、パルス数はレジスタファイル366に記憶される。プロセッサ360が音声コイル80ルーチンを完了した後、プロセッサ360はカウンタ375によりカウントされるパルスの数を検索するとともに、このカウントを公称値と比較する。このカウントが公称値と異なれば、プロセッサ360はデジタル命令を発生させる。このデジタル命令はスピンモータ20の速度を上げ、或いは下げるようにサーボモジュール96に送信される。また、タイマ383が次のセクタのAGCフィールドの正に端部にてタイムアウトになるように、プロセッサ360はタイマ383を変化させる。このように、プロセッサは、カウンタ375が常時、AGCフィールドの端部にてカウントし始めるようにしており、スピンモータの制御エラー値が確実に正確になるようにしている。
プロセッサは、Hセクタの割込み第1(音声コイルのサブタスク)、SPININTの割込み信号第2(スピンモータのサブタスク)並びにHOSTINT又はDISKINTのいずれかの割込み信号(データのサブタスク)に応答する階層に基づき、割込み信号のHセクタ、SPININT、HOSTINT及びDISKINTを認識する。従って、バースト復調器374が同期パルス信号を検出する時、パルスはHセクタライン390にてプロセッサ360に送信される。Hセクタの信号を受信後、プロセッサ360はサーボルーチンを開始することが可能である。当初、プロセッサ360はグレイコード情報を有するレジスタファイル366内のレジスタを読み取る。プロセッサ360はヘッド58のシリンダ位置を確定し、次に、音声コイル制御情報を有するデータをシリアルポート362に書き込む。そして、シリアルポート362はこのデータをサーボチップ96に送信する。グレイコードが(例えば、ディスクからのデータの読取り又は書込みの)所望のトラック位置と一致すれば、プロセッサは使用可能線396を介してZセクタ回路392を使用可能にする。
グレイコードの読取り後、プロセッサ360はA−B及びC−Dサーボ情報を読み取る。トラックの中心線に対するヘッド58の位置を決めるように、サーボバースト情報はプロセッサ360により処理される。そして、プロセッサ360はサーボチップ96に対して引き続いて送信するように、シリアルポート362にデータを書き込む。プロセッサ360がシークルーチンの状態にあれば、サーボ情報はレジスタファイル366から取り出されない。
サーボルーチン後、プロセッサはスピン回路436からの如何なるSPININT信号も認識し、実際のモータ速度と理論上のモータ速度との差を計算する。好ましい実施形態において、プロセッサは各セクタのエラー値を記憶し、ディスクの回転毎にスピンモータの平均エラー値を計算する。そして、プロセッサ360はスピンモータ20の速度を制御するように、シリアルポート362を介し、制御データをサーボチップ96に書き込む。通常、これはディスク18の一回転に一回生じる指標セクタ中に行われる。
スピンルーチン後、プロセッサ360は如何なるHOSTINT又はDISKINT割込み信号も認識する。HOSTINTピンが起動状態にあれば、プロセッサ360はデータマネージャ98のバッファ232に記憶された論理アドレスを検索する。プロセッサ360は論理アドレスをディスク上の実際のセクタ位置に変換する。ヘッド58が所望のトラックの上方になければ、プロセッサ360はシークルーチンを開始する。ヘッドがヘッドの所望のセクタに達すると、コントローラチップ92はZセクタ信号をデータマネージャ98に供給し、次に、データマネージャ98はデータをR/Wチップ94に転送する。DISKINT活性信号はデータ転送の終了又はデータ転送処理におけるエラーを示す。通常、レジスタファイル366は、エラーが生じた時に設定されるエラービットを有している。プロセッサ360はエラービットを読み取り、エラーが存在すれば誤り訂正ルーチンを行う。
図13はR/Wチップ94の図を示す。R/Wチップ94は、コントローラチップ92のシリアルポート362に接続された双方向性16ビット同期シリアルポート450を有している。シリアルポート450はライン454を介してコントローラ回路452に接続されている。コントローラ452はライン458を介してマルチプレクサ456に接続されている。マルチプレクサ456は、シリアルポート450及びコントローラ回路452を介してコントローラチップ92から受信される命令に基づき、ヘッドの種々のラインを多重化する。
R/Wチップ94はバス464を介して検出回路462に接続されたデータポート460を有している。検出回路462はライン466及び468により、それぞれマルチプレクサ456及びコントローラ回路452に接続されている。回路462は変換器により供給される電圧の遷移を検出するとともに、ライン370を介してデータポート246にデジタル出力を供給する。R/Wチップ94はコントローラチップ92のサーボストローブ回路372に接続されたデコーダ472を有している。デコーダ472はライン476を介してサーボバースト回路474に接続されている。デコーダ472はサーボストローブから受信されるパルスに応答し、サーボバースト回路474を使用可能にする。サーボバースト回路474はライン350及び352にて、サーボ信号A−B及びC−Dをサーボチップ96に供給する。
好ましい実施形態において、R/Wチップ94は32P4730という部品名称でシリコンシステムズ社(Silicon Systems Inc.(「SSI」))により販売されている製品に類似した集積回路である。前置増幅器チップはTLV2234という部品名称でTIにより販売されている従来の集積回路であることが好ましい。
図14a−gはディスクドライブの典型的なオペレーティングシーケンスのフローチャートを示す。処理ブロック500において、ホスト212は論理アドレスAO−A63にデータを書き込むための要求をディスクドライブに出力している。 他の状態はディスクのセクタの端部におけるヘッドの位置である。ブロック502において、データマネージャ98はホストからの物理的アドレス及びデータをRAMバッファに232に記憶するとともに、HOSTINT割込み信号を活性させる。ディスクがセクタのサーボフィールドを回転させると、 がヘッドに接近する。ブロック404において、タイマ回路382の検索タイマはタイムアウトになり、バースト復調器374及びプロセッサ360に、それぞれ検索信号及びHセクタ信号を供給する。また、AGC回路は使用可能にされ、R/Wチップ94に制御信号を出力してブロック506において自動利得制御を開始する。
並行路に沿って、サーボチップ96のスピンモータ制御回路はVphase信号を発生させる。このVphase信号はブロック508においてコントローラチップ92のスピン回路436により受信される。ブロック510において、スピン回路436はプロセッサ360に対してSPININT割込み信号を発生させるとともに、内部タイマを初期化する。また、スピン回路436はレジスタファイル366にアクセスし、Vphase信号とVcomm信号の発生との間における時間間隔を判定する。ブロック512において、所定の時間間隔後、スピン回路336はVcomm信号を発生させる。
図14cに示すように、ブロック506の後、バースト復調器回路374はR/Wチップ94からの生データを読み取り、ブロック514において、同期パルスの検出後にグレイコード回路370を使用可能にする。ブロック516において、バースト復調器回路374はグレイコード回路370を使用禁止にするとともに、サーボストローブ回路372を使用可能にする。サーボストローブ回路372はR/Wチップ94にサーボストローブパルスを供給する。ブロック518において、R/Wチップ94はサーボ信号A−B及びC−Dをサーボチップ96に供給する。ブロック518において、サーボチップ96はアナログサーボ信号をデジタルデータ列に変換する。これらデジタルデータ列はコントローラチップ92に送信されるとともに、ブロック520においてレジスタファイル366に記憶される。次に、ブロック522において、サーボバーストのIDフィールドはレジスタファイル366に記憶される。
処理ブロック524において、プロセッサ360はHセクタの割込み信号を認識する。判定ブロック526において、プロセッサ360はディスクドライブがシークルーチン状態にあるか否かを判定する。ドライブがシークルーチン状態にあれば、処理ブロック528において、プロセッサは、グレイコード情報を有するレジスタファイル366の内容を読み取る。ブロック530〜532において、プロセッサ360はグレイコードデータを所望のトラック位置と比較し、シーク電流を計算するとともに、シリアルポート274及び362を介してサーボチップ96に送信される書込み命令を発生させる。図14eに示すように、ディスクがサーボルーチンの状態にあれば、処理ブロック534において、プロセッサ360はサーボバースト情報を有するレジスタファイル366の内容を読み取る。処理ブロック536〜537において、サーボバースト情報は、ヘッドがトラックの中心線に存在するか否かを判定するのに用いられるとともに、音声コイルの訂正命令を計算するのに用いられる。そして、ブロック532において、プロセッサ360はシリアルポートを介し、音声コイル制御データを有する書込み命令をサーボチップ96に対して発生させる。デジタル音声コイル制御データはサーボチップのDacによりアナログ信号に変換されるとともに、アセンブリのアクチュエータアーム及びヘッドを動かすように音声コイルに供給される。
図14dに示すように、ブロック538において、プロセッサ260はSPININT割込み信号が存在すれば、これを認識する。プロセッサ360はプロセッサの内部タイマ及びスピン回路436のVcommタイマを読み取り、処理ブロック540において、Vphase信号間の時間間隔を計算し、この時間間隔を累積時間に加算する。判定ブロック542により割込み数が一回転と同等であれば、処理ブロック544及び546において、スピン訂正命令が計算され、プロセッサ360はシリアルポートを介し、サーボチップ96に対して書込み命令を発生させる。スピン訂正命令は基準時間と累積時間との間の差から計算される。ブロック547において、累積時間は0に再設定される。また、レジスタファイル366に新しい時間間隔値が記憶され、これは後にスピン回路436により用いられる。書込み命令はサーボチップに送信される。サーボチップはデジタル列をアナログ信号に変換する。アナログ信号はスピンモータの制御回路に供給される。割込み数が一回転と同等でなければ、ブロック548において、累積時間はプロセッサ360により記憶される。
処理ブロック550において、プロセッサ360はデータマネージャ98からのHOSTINT割込み信号を認識する。そして、処理ブロック552において、プロセッサ360はデータマネージャ98内のバッファ332からの物理的アドレス、及びレジスタファイル366におけるIDフィールドデータを検索する。ブロック554において、プロセッサ360は論理アドレスを実際のセクタ位置に変換する。判定ブロック556によりヘッド58が実際のセクタ位置の上方に存在しなければ、ブロック558において、プロセッサ360はシークルーチンを開始するとともに、音声コイルを移動させるようにサーボチップ96に対して書込み命令を発生させる。ヘッドがトラックの適正位置に達するまで、アクチュエータアームは移動される。実際のセクタ位置がヘッドに隣接するまで、プロセッサ360は継続してグレイコードを読み取る。ブロック560において、プロセッサ360は、セクタのサーボフィールド後にZセクタピンを起動するZセクタ回路392を使用可能にする。処理ブロック562において、Zセクタピンを起動することにより、データマネージャ98からのデータをR/Wチップ94に書き込み始める。R/Wチップ94はセクタのデータフィールドにデータを書き込む。
例示的な実施形態について説明し、かつ添付図面において図示しているが、これら実施形態は例示にすぎず、広範囲の発明を限定するものではなく、また、当業者であれば他の種々の変更が考え得るため、本発明は図示され、かつ説明されている特定の構成及び装置に限定されるものではないということを理解されたい。