JP2009070401A - Ata/sata複合コントローラ - Google Patents
Ata/sata複合コントローラ Download PDFInfo
- Publication number
- JP2009070401A JP2009070401A JP2008292828A JP2008292828A JP2009070401A JP 2009070401 A JP2009070401 A JP 2009070401A JP 2008292828 A JP2008292828 A JP 2008292828A JP 2008292828 A JP2008292828 A JP 2008292828A JP 2009070401 A JP2009070401 A JP 2009070401A
- Authority
- JP
- Japan
- Prior art keywords
- parallel
- data transfer
- ata
- storage device
- sata
- 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.)
- Pending
Links
- 238000012546 transfer Methods 0.000 claims abstract description 49
- 238000000034 method Methods 0.000 claims abstract description 13
- 238000005516 engineering process Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 241000122205 Chamaeleonidae Species 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/387—Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0661—Format or protocol conversion arrangements
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 Networks & Wireless Communication (AREA)
- Information Transfer Systems (AREA)
Abstract
【課題】複合ATAおよびSATAコントローラ(制御装置)およびその方法を提供する。
【解決手段】制御装置は、ATA準拠のパラレル記憶装置(135,140)との間のデータ転送を制御する制御ユニット(300−330)と、SATA準拠のシリアル記憶装置(220,225)との間のデータ転送を制御する制御ユニット(335,340)とを備える。この制御装置はパラレル記憶装置およびシリアル記憶装置との間のデータ転送を同時に実行可能である。制御装置のハードウェアの相当の部分を再利用することによって、複合制御装置はコスト対効果の高い形態で実現できる。
【選択図】図3
【解決手段】制御装置は、ATA準拠のパラレル記憶装置(135,140)との間のデータ転送を制御する制御ユニット(300−330)と、SATA準拠のシリアル記憶装置(220,225)との間のデータ転送を制御する制御ユニット(335,340)とを備える。この制御装置はパラレル記憶装置およびシリアル記憶装置との間のデータ転送を同時に実行可能である。制御装置のハードウェアの相当の部分を再利用することによって、複合制御装置はコスト対効果の高い形態で実現できる。
【選択図】図3
Description
本発明は一般的に記憶装置への、および/または記憶装置からのデータ転送に関し、特にATA(Advanced Technology Attachment)およびSATA(シリアルATA)コントローラに関する。
コンピュータシステムにおいては、ハードディスクおよびCDまたはDVD、テープデバイス、大容量リムーバブルデバイス、zipドライブおよびCDRWドライブのようなその他のドライブは、それらのデバイスへの、およびそれらのデバイスからのデータ転送を実行するための物理的および論理的な要件を定義するインターフェイスを介して、コンピュータに接続される記憶装置(記憶デバイス)である。現代のコンピュータシステムで使用されているもっとも一般的なインターフェイスの一つは、IDE(Integrated Drive Electronics)として一般的によく知られているものである。このIDEドライブインターフェイス(より正確にはAT(Advanced Technology)Attachment(ATA)インターフェイスと呼ばれる)の開発は1986年に始まり、1988年ごろに標準化されている。ディスクドライブをPC(Personal Computer)アーキテクチャに「取り付け」するための方法を提供するこの規格はさらに開発が続けられ、最近ではATA/ATAPI,EIDE,ATA−2,FastATA,Ultra ATA,Ultra DMA, ATA−4およびその他の様々な多数の規格が作られている。これらの規格はすべて、パラレル記憶装置を接続するための記憶(ストレージ)インターフェイスを定義するものであって、以下ではATA準拠のものと呼ぶ。
パラレルATAインターコネクトは、他との比較における単純さ、高性能、低コストのために、デスクトップおよびモバイルコンピュータにおける支配的な内部記憶装置用相互接続であったが、ATA準拠のインターフェイスは性能を向上させ続ける能力に限界をもたらす多くの制限を持つ。そのような制限としては、5ボルトの信号要件、ピン数の多さなどがある。パラレルATAインターフェイスのこれらのおよび他の特徴は、そのようなインターフェイスが、過去には実現していた速度倍増をさらに何回か実現するように拡張できないことの原因となっており、したがってこのインターフェイスはその性能限界に近づいている。
この理由から、および次の10年において拡張可能な性能を提供するために、次世代のATA規格として、シリアルATA(SATA)が開発されている。SATAはパラレルATA物理ストレージインターフェイスに対する革新的な代替技術であって、現在のATAと100%ソフトウェア互換性を持つように設計されているが、ずっと少ないピン数を持ち、より薄く、より柔軟性に富んだケーブルを実現している。ソフトウェア互換性が保たれているので、現在のドライバおよびオペレーティングを変更する必要がない。さらに、ピン数が少なくなるために、マザーボードおよびそのチップセットならびにその他の集積シリコン部品の設計に恩恵をもたらす。
上述のように、SATAのインターフェイスの主要な特徴の一つは、パラレルATAコントローラとのソフトウェア互換性である。このことは、標準のATAとシリアルATA(SATA)との接続性をそれぞれ示す図1および図2を比較することによってよりよく理解することができる。
最初に図1を参照する。図1はATA準拠のパラレル記憶デバイスが、当該デバイスへの、および当該デバイスからのデータ転送を可能にするためにコンピュータシステムにどのように接続されるかを示す。このコンピュータシステムは当該コンピュータで走っている主ソフトウェアであるオペレーティングシステム115を含む。ユーザーに対して情報を提供し、入力を受け取るユーザーインターフェイスを一般的に有する、複数のアプリケーションプログラム100,105,110をさらに含んでいてもよい。もちろん、ユーザーインターフェイスを持たないアプリケーションプログラムも存在しうる。さらに、拡張ソフトウェアコンポーネントである、またはオペレーティングシステム115の一部であるドライバソフトウェア120も一般に提供され、特にATA準拠のハードウェアと相互に作用するように実行される。
このハードウェアは、パラレルポート130を介してデバイス135,140とデータ信号を交換するATAアダプタ125を含む。このATAアダプタ125はATAコントローラとも呼ばれ、しばしばパラレルポート130と一緒にされている。
図2は、SATAインターフェイスを持つコンピュータシステムの対応する部分を描いたものである。アプリケーションプログラム100,105,110、オペレーティングシステム115、ドライバ120は変更の必要がない。ハードウェア側では、SATAアダプタ200が設けられ、シリアルデバイス220,225と信号を交換するために一以上のシリアルポート210,215に接続されている。つまり、SATAが利用可能なコンピュータシステムは、デバイスおよびポートがシリアル化され、適切なSATA準拠アダプタ200が設けられているという点で図1のシステムとは異なっている。このアダプタのさらに詳細について焦点を合わせると、このSATAアダプタ200は、データ信号のパラレル・シリアルおよびシリアル・パラレル変換を実行するパラレル/シリアルコンバータ205を備えるATAアダプタ125を含むものとして理解されることがわかる。
オペレーティングシステム115においても、ドライバソフトウェア120においてもSATA規格に対する特別な対応は必要ないので、図2のインターフェイスは図1の技術とソフトウェア互換である。従って、SATAは棚ぼた式の解決方法(drop-in solution)なのであって、手持ちのソフトウェアはなんらの修正もなしに新しいアーキテクチャで動く。この特徴および上述の他の特長が与えられ、さらにSATA準拠のコントローラおよびデバイスは従来のユニットとほぼ同じコストになることを勘定に入れると、SATAはいずれパラレルATAインターフェイスを完全に置き換えることが期待される。業界におけるSATAの受け入れは段階的な移行経過をたどり、いずれかの時点でパラレルおよびシリアルATAの両方の能力が利用可能になる。
この技術はソフトウェア互換であり、かつオペレーティングシステム透過性を持つにもかかわらず、SATAの電気回路およびコネクタは従来のATAインターフェイスのそれらとは異なっている。この理由から、コンピュータシステムにおけるハードディスクおよび他の記憶デバイスの前方および後方互換性を促進するためにアダプタが提供される。例えば、SATA対ATAブリッジがハードディスクおよび記憶システムにおいて使用可能であり、ATA対SATAブリッジがマザーボード、アドインカード、ドライブテスト装置において使用可能である。しかしながら、そのような従来の解決方法は多くの追加ハードウェア部品を必要とし、製造コストの増加につながる。
本発明の一実施形態は、記憶装置に対する、および/または記憶装置からのデータ転送を制御する制御装置である。この制御装置は、ATA準拠のパラレル記憶装置(デバイス)との間のデータ転送を制御する第1制御ユニットを備える。さらに、この制御装置はSATA準拠のシリアル記憶装置(デバイス)との間のデータ転送を制御する第2制御ユニットを備える。この制御装置はパラレルデバイスおよびシリアルデバイスとの間のデータ転送を同時に実行する能力を持つ。
別の実施形態において、前記第1制御ユニットは、2つのパラレルATA記憶装置との間のデータ転送を制御するように構成されており、前記第2制御ユニットは、2つのSATA記憶装置との間のデータ転送を制御するように構成されている。
別の実施形態において、前記制御装置は前記第1制御ユニットを動作停止(ディスエーブル)にして、SATA記憶装置との間のデータ転送のみを可能に(イネーブルに)することができる。
別の実施形態において、前記制御装置は前記第2制御ユニットを動作停止(ディスエーブル)にして、パラレルATA記憶装置との間のデータ転送のみを可能に(イネーブルに)することができる。
別の実施形態において、本装置は、SATA記憶装置が前記制御装置に接続されているかどうかを決定するように構成される。
別の実施形態において、本装置は、前記決定されたSATA記憶装置に関する情報をホストコンピュータに提供するように構成されている。
別の実施形態において、前記第2制御ユニットはパラレルデータをシリアルデータに、および/またはシリアルデータをパラレルデータに変換してSATA記憶装置との間のデータ転送を可能にすることができる。
別の実施形態において、本装置は集積回路チップである。
別の実施形態において、前記第1制御ユニットは、2つのパラレルATA記憶装置との間のデータ転送を制御するように構成されており、前記第2制御ユニットは、2つのSATA記憶装置との間のデータ転送を制御するように構成されている。
別の実施形態において、前記制御装置は前記第1制御ユニットを動作停止(ディスエーブル)にして、SATA記憶装置との間のデータ転送のみを可能に(イネーブルに)することができる。
別の実施形態において、前記制御装置は前記第2制御ユニットを動作停止(ディスエーブル)にして、パラレルATA記憶装置との間のデータ転送のみを可能に(イネーブルに)することができる。
別の実施形態において、本装置は、SATA記憶装置が前記制御装置に接続されているかどうかを決定するように構成される。
別の実施形態において、本装置は、前記決定されたSATA記憶装置に関する情報をホストコンピュータに提供するように構成されている。
別の実施形態において、前記第2制御ユニットはパラレルデータをシリアルデータに、および/またはシリアルデータをパラレルデータに変換してSATA記憶装置との間のデータ転送を可能にすることができる。
別の実施形態において、本装置は集積回路チップである。
本発明の他の実施形態は、記憶装置に対する、および/または記憶装置からのデータ転送を制御する制御装置の制御方法である。本方法は、制御装置に接続されたATA準拠のパラレル記憶装置との間のデータ転送を実行するステップを含む。本方法は、制御装置に接続されたSATA準拠シリアル記憶装置との間のデータ転送を実行するステップをさらに含む。ATA準拠のパラレル記憶装置との間のデータ転送およびSATA準拠シリアル記憶装置との間のデータ転送は並行して行われる。
別の実施形態において、2つのSATA記憶装置との間のデータ転送はマスタ/スレーブエミュレーションモードで実行され、一方のSATA記憶装置はホストコンピュータに対してマスタとして表示され、他方のSATA記憶装置はスレーブとして表示され、両方がホストバスアドレスの同じセットにおいてアクセス可能である。
別の実施形態において、制御装置の一つのパラレルポートに接続された2つのパラレルATA記憶装置との間のデータ転送は、パラレルポートにおいて一方の装置がマスタとなり、他方の装置がスレーブとなるように制御される。
別の実施形態において、2つのATA準拠パラレル記憶装置との間のデータ転送が制御され、2つのSATA準拠シリアル記憶装置との間のデータ転送が制御される。
別の実施形態において、本方法は、SATA記憶装置が前記制御装置に接続されているかどうかを決定するステップをさらに含む。
別の実施形態において、本方法は、前記決定されたSATA記憶装置に関する情報をホストコンピュータに提供するステップをさらに含む。
別の実施形態において、前記SATA準拠シリアル記憶装置との間でデータ転送を実行するステップは、パラレルデータをシリアルデータに、および/またはシリアルデータをパラレルデータに変換するステップを含む。
別の実施形態において、2つのSATA記憶装置との間のデータ転送はマスタ/スレーブエミュレーションモードで実行され、一方のSATA記憶装置はホストコンピュータに対してマスタとして表示され、他方のSATA記憶装置はスレーブとして表示され、両方がホストバスアドレスの同じセットにおいてアクセス可能である。
別の実施形態において、制御装置の一つのパラレルポートに接続された2つのパラレルATA記憶装置との間のデータ転送は、パラレルポートにおいて一方の装置がマスタとなり、他方の装置がスレーブとなるように制御される。
別の実施形態において、2つのATA準拠パラレル記憶装置との間のデータ転送が制御され、2つのSATA準拠シリアル記憶装置との間のデータ転送が制御される。
別の実施形態において、本方法は、SATA記憶装置が前記制御装置に接続されているかどうかを決定するステップをさらに含む。
別の実施形態において、本方法は、前記決定されたSATA記憶装置に関する情報をホストコンピュータに提供するステップをさらに含む。
別の実施形態において、前記SATA準拠シリアル記憶装置との間でデータ転送を実行するステップは、パラレルデータをシリアルデータに、および/またはシリアルデータをパラレルデータに変換するステップを含む。
添付の図面は、本発明の本質を説明する目的において、本明細書に組み合わされ、その一部を構成する。これらの図面は、本発明がいかに製造され、および使用されるかを示す例示され、説明される実施形態のみに本発明を限定するものと解釈するべきではない。別の特徴および利点は、添付の図面に示され、後述の本発明の詳細な説明において明らかになるであろう。
本発明の例示としての実施形態を以下図面を参照して説明する。類似の要素および構造は、同様の参照番号で示される。
図面、特に図3を参照する。図3は、一実施形態に従ったATAコントローラのハードウェア要素を示す。このコントローラはターゲットインターフェイスユニット305およびソースインターフェイスユニット310を含む。両方のインターフェイスはホストインターフェイス300に接続され、ソフトウェアドライバ120による要求(リクエスト)およびデータを交換する。ドライバ120はターゲットインターフェイスユニット305を用いて、設定の目的でコントローラにアクセスすることができる。一方、ソースインターフェイス310を用いて、記憶装置との間でデータの読み出しまたは書き込みを行うためにデータアクセスを実行することができる。
さらに、マスタ制御ユニット325とスレーブ制御ユニット330のどちらが、ターゲットインターフェイス305とソースインターフェイス310のどちらかへのアクセスを許可されるのか、またはその逆を制御するバスマスタエンジン320が設けられる。マスタ制御ユニット325およびスレーブ制御ユニット330は、2つのパラレルデバイス(一方がマスタで他方がスレーブ)を接続できるパラレルポートを制御する従来のATAコントローラ125に似た形態で構成することが可能である。
さらに、デバイスに対するコマンドを配送し、デバイスからのステータスを報知(ポスト)するのに用いられるインターフェイスレジスタを含むシャドウレジスタブロック315が設けられる。このシャドウレジスタブロック315の名前の由来は、標準ATAエミュレーションを実行するために、従来のデバイスレジスタの内容を保護する(shadow)レジスタセットを含んでいることにある。本実施形態では、このコントローラはSATA規格に定められたマスタ/スレーブエミュレーションモードで動作する。つまり、2つの分離したシリアルポート210,215における2つのシリアルデバイスが、ホストバスアドレスの同じセットにおいてマスタおよびスレーブとしてアクセスされるようにホストソフトウェアに対して示される。
この機能を実現するために、パラレルおよびシリアルポート130,210,215の間を切り替えるのに使用できるポート割り当てユニット335が設けられる。このポート割り当てユニット335はさらにパラレルポート130に接続されたマスタおよびスレーブ装置を正しい制御ユニット325,330に接続する。さらに、上述したように本実施形態のコントローラはマスタ/スレーブエミュレーションモードで動作するので、シリアルポート210,215に接続されたシリアル装置はマスタ制御ユニット325またはスレーブ制御ユニット330のいずれかに接続される。ポート割り当てユニット335によって実行される他の機能はパラレル/シリアルコンバータ205の機能である。つまり、それはパラレル・シリアルデータ信号変換またはその逆を実行する。
図3からわかるように、ポート割り当てユニット335はポートマップレジスタ340からさらに入力を受信する。実際にはレジスタセットであるポートマップレジスタ340はパラレルおよびシリアルポート130,210,215のどれがアクティブになっているのかを示す、ポート特定データを記憶する。一般的には、どのポートもアクティブではない状態を含め、ポートをいくつでもアクティブにできるし、パラレルおよびシリアルポートのすべてをアクティブにできる、ことに注意してもらいたい。
別の実施形態では、ポートマップレジスタ340およびポート割り当てユニット335は、図3のATAコントローラが次の設定中のいずれかで動作できるようにする。第1設定では、0,1または2つのパラレルATAデバイスを駆動できる。他の設定では、0,1または2つのシリアルATAデバイスを駆動できる。最後に、3番目の設定では、1つのパラレルおよび1つのシリアルデバイスを駆動できる。
使用されるポートを定義しているポート特定データ、または設定を記憶するポートマップレジスタ340はターゲットインターフェイス305に接続されており、それによってドライバ120は再設定を行うためにレジスタに対してアクセスできることに注意してもらいたい。つまり、この実施形態をシリアルポートによる既存のパラレルATAコントローラにまで拡張して、それによってコスト対効果の高い、ソフトウェアによって設定可能な複合シリアル/パラレルATAコントローラを実装するために相当数のパラレルATAコントローラハードウェアを再利用することが可能になる。
コントローラ全体を従来のATAコントローラとして動作するように再設定することも可能であるし、また従来のSATAコントローラとして動作するように再設定することも可能である。つまり、本コントローラが従来のATAコントローラのように振る舞うモードと、それが従来のSATAコントローラのように振る舞うモードとの間での切り替えを可能にするように、ソフトウェアによる再設定が可能である。さらに、本実施形態に従ったコントローラはパラレルデバイスおよびシリアルデバイスに並行してデータ転送を実行するように構成することができる。つまり、本実施形態のコントローラは、ソフトウェアによる再構成を実行するだけでどのような接続モードにも設定することができる、カメレオンのような装置である。
さらに、前記モードの一つにおいて、パラレルデバイスとシリアルデバイスとを同時に動作させることもできる。パラレル記憶装置およびシリアル記憶装置への、および/またはそれらからの並行データ転送は、従来のATAインターフェイス制御回路によって生成される従来のATA制御信号を扱うことを可能にし、追加のペイロードバッファを加えるようにSATAトランスポート層状態機械を拡張することで実現できることに注意してもらいたい。
上述のように、ポートマップレジスタ340は、ソフトウェア100,105,110,115,120による構成の設定および再設定を可能にする。これには、パラレルデバイスまたはシリアルデバイスに対する、マスタデバイスまたはシリアルデバイスもしくはその両方の設定も含まれる。さらに、SATA規格で定義されているように、本コントローラはSATAポートステータスおよびエラーレジスタに対するリード・ライトプロセスを許可するために必要なレジスタを備えていてもよい。
図4は、図3の実施形態に従ったATAコントローラを動作させるプロセスを示すフローチャートである。ステップ400では、ソフトウェアにより、シリアルATA装置が接続されているかどうかを、例えばSATAポートステータスレジスタを読み出すことでチェックする。次に、ステップ405で、このソフトウェアはポートマップレジスタ340を設定する。ステップ400および405は、コントローラの初期化の際に実行可能であることに注意してほしい。
ドライバ120からの働きかけに応答して、または記憶装置の一つからの要求に応答して、ステップ410において、ポート割り当てユニット335は、適切なポート130,210,215を切り替えるためのポート切り替えユニットとして動作する。もしすでに正しいポートがアクティブになっている場合は、このステップは省略可能である。記憶装置へのアクセスが可能になると、ステップ415でデータ転送が実行される。
本発明は、パーソナルコンピュータなどの大量生産品におけるデータ通信を飛躍的に拡張することが可能である。
300 ホストインターフェイス
305 ターゲットインターフェイス
310 ソースインターフェイス
315 シャドウレジスタブロック
320 バスマスタエンジン
325 マスタ制御ユニット
330 スレーブ制御ユニット
335 ポート割り当てユニット
340 ポートマップレジスタ
305 ターゲットインターフェイス
310 ソースインターフェイス
315 シャドウレジスタブロック
320 バスマスタエンジン
325 マスタ制御ユニット
330 スレーブ制御ユニット
335 ポート割り当てユニット
340 ポートマップレジスタ
Claims (10)
- 記憶装置に対する、および/または記憶装置からのデータ転送を制御する制御装置であって、
ATA(Advanced Technology Attachment)準拠のパラレル記憶装置に対する、および/またはそれからのデータ転送を制御する第1制御ユニットと、
SATA(シリアルATA)準拠のシリアル記憶装置に対する、および/またはそれからのデータ転送を制御する第2制御ユニットとを備え、
前記パラレル記憶装置および前記シリアル記憶装置に対する、および/またはそれらからのデータ転送を並行して実行する能力を持つ、制御装置。 - 前記第2制御ユニットは、2つのSATA記憶装置に対して、および/またはそれからのデータ転送の制御をマスタ/スレーブエミュレーションモードで実行するように構成され、前記マスタ/スレーブエミュレーションモードにおいては一方のSATA記憶装置はホストコンピュータに対してマスタとして表示され、他方のSATA記憶装置はスレーブとして表示され、両方がホストバスアドレスの同じセットにおいてアクセス可能である、請求項1記載の制御装置。
- 前記第1制御ユニットは、一つのパラレルポートに接続された2つのパラレルATA記憶装置に対する、および/またはそれからのデータ転送を制御するように構成され、前記パラレルポートにおいて一方の装置がマスタとなり、他方の装置がスレーブとなる、請求項1記載の制御装置。
- 前記第1制御ユニットは2つのパラレルATA記憶装置に対する、および/またはそれからのデータ転送を制御するように構成され、前記第2制御ユニットは2つのSATA記憶装置に対する、および/またはそれからのデータ転送を制御するように構成される、請求項1記載の制御装置。
- 前記第2制御ユニットはパラレルデータをシリアルデータに変換し、および/またはシリアルデータをパラレルデータに変換して、SATA記憶装置に対する、および/またはそれからのデータ転送を可能にする、請求項1記載の制御装置。
- 集積回路チップである、請求項1記載の制御装置。
- ATA(Advanced Technology Attachment)およびSATA(シリアルATA)装置との間のデータ転送を実行する回路を含む集積回路チップであって、
ATA準拠のパラレル記憶装置に対する、および/またはそれからのデータ転送を制御する第1制御回路と、
SATA準拠のシリアル記憶装置に対する、および/またはそれからのデータ転送を制御する第2制御回路とを備え、
前記第1および第2制御回路は、前記パラレル記憶装置および前記シリアル記憶装置に対する、および/またはそれらからのデータ転送を並行して実行する能力を持つ、集積回路チップ。 - 記憶装置に対する、および/または記憶装置からのデータ転送を制御する制御装置の制御方法であって、
前記制御装置に接続されたATA(Advanced Technology Attachment)準拠のパラレル記憶装置に対する、および/またはそれからのデータ転送を実行するステップと、
前記制御装置に接続されたSATA(シリアルATA)準拠のシリアル記憶装置に対する、および/またはそれからのデータ転送を実行するステップとを含み、
前記ATA準拠のパラレル記憶装置に対する、および/またはそれからのデータ転送と、SATA準拠のシリアル記憶装置に対する、および/またはそれからのデータ転送とは並行して行われる方法。 - 2つのATA準拠のパラレル記憶装置に対する、および/またはそれからのデータ転送を制御するステップと、2つのSATA準拠のシリアル記憶装置に対する、および/またはそれからのデータ転送を制御するステップとを含む、請求項8記載の方法。
- SATA準拠のシリアル記憶装置に対する、および/またはそれからのデータ転送を実行するステップは、
パラレルデータをシリアルデータに変換し、および/またはシリアルデータをパラレルデータに変換するステップを含む、請求項8記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10214700A DE10214700B4 (de) | 2002-04-03 | 2002-04-03 | Kombinierter ATA/SATA-Controller als integrierter Schaltkreischip und dazugehöriges Verfahren zum Betreiben |
US10/259,710 US6922738B2 (en) | 2002-04-03 | 2002-09-27 | ATA/SATA combined controller |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003582653A Division JP4351071B2 (ja) | 2002-04-03 | 2003-02-28 | Ata/sata複合コントローラ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009070401A true JP2009070401A (ja) | 2009-04-02 |
Family
ID=28458551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008292828A Pending JP2009070401A (ja) | 2002-04-03 | 2008-11-14 | Ata/sata複合コントローラ |
Country Status (5)
Country | Link |
---|---|
US (1) | US6922738B2 (ja) |
JP (1) | JP2009070401A (ja) |
KR (1) | KR100993017B1 (ja) |
DE (1) | DE10214700B4 (ja) |
TW (1) | TWI293419B (ja) |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7346135B1 (en) | 2002-02-13 | 2008-03-18 | Marvell International, Ltd. | Compensation for residual frequency offset, phase noise and sampling phase offset in wireless networks |
US6976190B1 (en) * | 2002-07-31 | 2005-12-13 | Western Digital Technologies, Inc. | Serial ATA disk drive having a parallel ATA test interface and method |
AU2003270413A1 (en) * | 2002-09-06 | 2004-03-29 | Silicon Image, Inc. | Method and apparatus for double data rate serial ata phy interface |
US7263153B2 (en) * | 2002-10-09 | 2007-08-28 | Marvell International, Ltd. | Clock offset compensator |
US7319705B1 (en) | 2002-10-22 | 2008-01-15 | Marvell International Ltd. | Programmable pre-emphasis circuit for serial ATA |
US20040083323A1 (en) * | 2002-10-24 | 2004-04-29 | Josef Rabinovitz | Large array of SATA data device assembly for use in a peripheral storage system |
US20040083324A1 (en) * | 2002-10-24 | 2004-04-29 | Josef Rabinovitz | Large array of mass data storage devices connected to a computer by a serial link |
US7107369B2 (en) * | 2002-12-19 | 2006-09-12 | Intel Corporation | Connecting storage devices to a processor-based device |
US7246192B1 (en) | 2003-01-10 | 2007-07-17 | Marvell International Ltd. | Serial/parallel ATA controller and converter |
US8095704B2 (en) * | 2003-01-13 | 2012-01-10 | Sierra Logic | Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves that may be incorporated within disk arrays |
US7353321B2 (en) * | 2003-01-13 | 2008-04-01 | Sierra Logic | Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves that may be incorporated within disk arrays |
US6848954B2 (en) * | 2003-01-20 | 2005-02-01 | Tyco Electronics Amp Gmbh | Electrical contact element |
TW200415464A (en) * | 2003-02-12 | 2004-08-16 | Acard Technology Corp | SATA flash memory device |
JP4651913B2 (ja) * | 2003-02-17 | 2011-03-16 | 株式会社日立製作所 | 記憶装置システム |
JP4060235B2 (ja) * | 2003-05-22 | 2008-03-12 | 株式会社日立製作所 | ディスクアレイ装置及びディスクアレイ装置の制御方法 |
US8930583B1 (en) | 2003-09-18 | 2015-01-06 | Marvell Israel (M.I.S.L) Ltd. | Method and apparatus for controlling data transfer in a serial-ATA system |
JP4156499B2 (ja) | 2003-11-28 | 2008-09-24 | 株式会社日立製作所 | ディスクアレイ装置 |
JP2005190202A (ja) * | 2003-12-25 | 2005-07-14 | Toshiba Corp | シリアルataインタフェースを持つ電子機器及びシリアルataバスのパワーセーブ方法 |
US7152135B2 (en) * | 2004-03-26 | 2006-12-19 | Avlab Technology Inc. | PC CardBus structure |
JP2005293427A (ja) * | 2004-04-02 | 2005-10-20 | Matsushita Electric Ind Co Ltd | データ転送処理装置及びデータ転送処理方法 |
TWI242716B (en) * | 2004-04-30 | 2005-11-01 | Mediatek Inc | Method for processing interference of noise |
CN100383736C (zh) * | 2004-05-08 | 2008-04-23 | 鸿富锦精密工业(深圳)有限公司 | 串行高阶硬盘架构控制器自动初始化方法 |
US7958292B2 (en) | 2004-06-23 | 2011-06-07 | Marvell World Trade Ltd. | Disk drive system on chip with integrated buffer memory and support for host memory access |
KR100640588B1 (ko) * | 2004-09-24 | 2006-11-01 | 삼성전자주식회사 | Sata 인터페이스와 ata 인터페이스를 선택적으로사용하는 비휘발성 메모리 저장 장치 |
DE102005002339A1 (de) * | 2005-01-13 | 2006-07-27 | Fachhochschule Dortmund | Ein- und Ausgabeeinrichtung zum Anschluß an ein Laufwerksinterface |
TW200627170A (en) * | 2005-01-25 | 2006-08-01 | Sunplus Technology Co Ltd | Control system for storage device |
US20060206632A1 (en) * | 2005-03-09 | 2006-09-14 | Dell Products L.P. | Storage enclosure including a storage device capable of communicating with multiple controllers |
US7603514B2 (en) * | 2005-03-31 | 2009-10-13 | Intel Corporation | Method and apparatus for concurrent and independent data transfer on host controllers |
TWI277874B (en) * | 2005-06-24 | 2007-04-01 | Via Tech Inc | Method for access non-standard register in serial advanced technology attachment (SATA) device |
TWI298840B (en) * | 2005-07-13 | 2008-07-11 | Via Tech Inc | Bus device used in computer system |
US7493430B2 (en) * | 2005-07-14 | 2009-02-17 | Quantum Corporation | Data flow control and bridging architecture enhancing performance of removable data storage systems |
KR100736928B1 (ko) * | 2005-12-05 | 2007-07-10 | 삼성전자주식회사 | 호스트 디바이스 간의 데이터 통신이 가능한 복합기기 및호스트 디바이스 간의 데이터 통신방법 |
KR100732354B1 (ko) | 2006-01-18 | 2007-06-27 | 도시바삼성스토리지테크놀러지코리아 주식회사 | 스토리지 장치 |
US7634692B2 (en) | 2006-02-10 | 2009-12-15 | Mediatek Inc. | SATA primitive prediction and correction |
US20070260757A1 (en) * | 2006-03-28 | 2007-11-08 | Bueb Christopher J | Command interface for flash device |
JP5103198B2 (ja) * | 2008-01-18 | 2012-12-19 | 株式会社日立製作所 | 情報記録再生装置 |
TWI373768B (en) * | 2008-02-05 | 2012-10-01 | Phison Electronics Corp | System, controller and method for data storage |
US8598993B2 (en) * | 2008-08-15 | 2013-12-03 | Homerun Holdings Corporation | Method for wiring devices in a structure using a wireless network |
JP2010049640A (ja) * | 2008-08-25 | 2010-03-04 | Seiko Epson Corp | 情報処理装置及びその制御方法 |
US20100138566A1 (en) * | 2008-11-30 | 2010-06-03 | Rite Track Equipment Services, Inc. | Control System for Legacy Computers Using Peripheral Devices |
US20130097346A1 (en) * | 2011-10-14 | 2013-04-18 | Innodisk Corporation | Storage device and connecting seat for connecting the same to host |
US10608819B1 (en) | 2019-09-24 | 2020-03-31 | Apricorn | Portable storage device with internal secure controller that performs self-verification and self-generates encryption key(s) without using host or memory controller and that securely sends encryption key(s) via side channel |
US10656854B1 (en) | 2019-10-22 | 2020-05-19 | Apricorn | Method and portable storage device with internal controller that can self-verify the device and self-convert the device from current mode to renewed mode without communicating with host |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04346123A (ja) * | 1991-05-23 | 1992-12-02 | Fujitsu Ltd | データ転送装置 |
JP2001014258A (ja) * | 1999-06-29 | 2001-01-19 | Yec:Kk | 複写装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4539564A (en) * | 1982-08-04 | 1985-09-03 | Smithson G Ronald | Electronically controlled interconnection system |
US5530960A (en) * | 1991-12-17 | 1996-06-25 | Dell Usa, L.P. | Disk drive controller accepting first commands for accessing composite drives and second commands for individual diagnostic drive control wherein commands are transparent to each other |
US5727184A (en) * | 1994-06-27 | 1998-03-10 | Cirrus Logic, Inc. | Method and apparatus for interfacing between peripherals of multiple formats and a single system bus |
US5596562A (en) * | 1995-01-19 | 1997-01-21 | United Microelectronics Corp. | Controlling method and apparatus for supporting hard disk and/or CD-ROM drives through the PCMCIA interface |
US5949979A (en) * | 1997-02-12 | 1999-09-07 | Apple Computer, Inc. | Method and apparatus for dynamic addition of buses to a computer system |
US6134630A (en) * | 1997-11-14 | 2000-10-17 | 3Ware | High-performance bus architecture for disk array system |
US6845420B2 (en) * | 2001-10-11 | 2005-01-18 | International Business Machines Corporation | System for supporting both serial and parallel storage devices on a connector |
US6735650B1 (en) * | 2002-08-30 | 2004-05-11 | Western Digital Technologies, Inc. | Disk drive and method for data transfer initiated by nonstandard disk-drive commands on a serial ATA interface that only supports standard ATA disk-drive commands |
-
2002
- 2002-04-03 DE DE10214700A patent/DE10214700B4/de not_active Expired - Fee Related
- 2002-09-27 US US10/259,710 patent/US6922738B2/en not_active Expired - Lifetime
-
2003
- 2003-02-28 KR KR1020047015687A patent/KR100993017B1/ko not_active Expired - Fee Related
- 2003-03-26 TW TW092106730A patent/TWI293419B/zh not_active IP Right Cessation
-
2008
- 2008-11-14 JP JP2008292828A patent/JP2009070401A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04346123A (ja) * | 1991-05-23 | 1992-12-02 | Fujitsu Ltd | データ転送装置 |
JP2001014258A (ja) * | 1999-06-29 | 2001-01-19 | Yec:Kk | 複写装置 |
Also Published As
Publication number | Publication date |
---|---|
US6922738B2 (en) | 2005-07-26 |
DE10214700A1 (de) | 2003-10-23 |
KR100993017B1 (ko) | 2010-11-09 |
TW200305808A (en) | 2003-11-01 |
TWI293419B (en) | 2008-02-11 |
KR20040111472A (ko) | 2004-12-31 |
DE10214700B4 (de) | 2006-02-23 |
US20030191874A1 (en) | 2003-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4351071B2 (ja) | Ata/sata複合コントローラ | |
JP2009070401A (ja) | Ata/sata複合コントローラ | |
JP5085334B2 (ja) | Usb・otgコントローラ | |
US6038624A (en) | Real-time hardware master/slave re-initialization | |
US8677047B1 (en) | Serial/parallel ATA controller and converter | |
US6363452B1 (en) | Method and apparatus for adding and removing components without powering down computer system | |
US7225290B2 (en) | ATA and SATA compliant controller | |
US20030110342A1 (en) | USB control circuit with automatic route-switching function | |
EP3382567B1 (en) | Multiple storage devices implemented using a common connector | |
TW202143061A (zh) | 促進與積體電路間(ic)反向相容性之改良式積體電路間(i3c)集線器 | |
CN113190084B (zh) | 一种支持多种位宽硬盘的硬盘背板连接方法及装置 | |
WO2005066819A1 (en) | Mapping sdvo functions from pci express interface | |
US6851007B1 (en) | Multi-channel interface controller for enabling a host to interface with one or more host devices | |
CN115061958B (zh) | 一种硬盘识别方法、识别系统、存储介质和计算机设备 | |
CN111897753A (zh) | Usb主机对主机芯片 | |
KR101118558B1 (ko) | Usb otg 제어기 | |
US7418539B2 (en) | System and method for utilizing an external computing device to access storage inside an inactive computing device | |
CN114297982A (zh) | 一种基于uvm的spi总线验证方法及系统 | |
US7146440B1 (en) | DMA acknowledge signal for an IDE device | |
KR20010063912A (ko) | 마스터 및 슬레이브 기능 변환장치 | |
CN107818064B (zh) | 支持主从变换的通用串行总线的集线器的运作方法 | |
US20100023818A1 (en) | Multiple access test architecture for memory storage devices | |
KR20050112980A (ko) | 휴대용컴퓨터 및 그 제어방법 | |
US20050050238A1 (en) | Computer system for dynamically accessing externally connecting storage devices | |
JPS61253570A (ja) | バス制御方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100421 |
|
RD05 | Notification of revocation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7425 Effective date: 20100902 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110413 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20111012 |