JP2009515254A - System and method for enhancing external storage - Google Patents

System and method for enhancing external storage Download PDF

Info

Publication number
JP2009515254A
JP2009515254A JP2008538929A JP2008538929A JP2009515254A JP 2009515254 A JP2009515254 A JP 2009515254A JP 2008538929 A JP2008538929 A JP 2008538929A JP 2008538929 A JP2008538929 A JP 2008538929A JP 2009515254 A JP2009515254 A JP 2009515254A
Authority
JP
Japan
Prior art keywords
firmware
hdds
storage
peripheral
peripheral device
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
Application number
JP2008538929A
Other languages
Japanese (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
Priority claimed from US11/478,895 external-priority patent/US20070162626A1/en
Application filed by オンスペック エレクトロニク,インコーポレーテッド filed Critical オンスペック エレクトロニク,インコーポレーテッド
Publication of JP2009515254A publication Critical patent/JP2009515254A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving 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
    • 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/0626Reducing size or complexity of 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/123Software or firmware update, e.g. device firmware management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Software Systems (AREA)

Abstract

本明細書に記載の一実施形態が、外部記憶装置をエンハンスするシステムおよび方法を提供する。一つの実施形態は、コンピュータ・システムの周辺デバイスの制御装置を含む。制御装置が、周辺デバイスの記憶媒体へのアクセスを提供する。一実施形態では、周辺デバイスの記憶媒体が、周辺デバイスのファームウェア用に確保された記憶セクションを含む。  One embodiment described herein provides a system and method for enhancing an external storage device. One embodiment includes a controller for a peripheral device of a computer system. A controller provides access to the storage media of the peripheral device. In one embodiment, the peripheral device storage medium includes a storage section reserved for the peripheral device firmware.

Description

本発明は記憶装置に関し、より詳細には、外部記憶装置をエンハンス(enhance)するシステムおよび方法に関する。   The present invention relates to storage devices, and more particularly to systems and methods for enhancing external storage devices.

USBまたはファイヤワイヤ(商標)(Firewire)(IEEE1394とも呼ばれる)、SATA(シリアルATA)に基づく外部記憶装置ソリューション(外部ストレージソリューション)が極めて普及している。デジタル環境における生活スタイルの定着に伴い、記憶装置の需要が大いに高まっており、さらに大容量の記憶装置が登場するだろう。このことが、全体的なシステム・コストは低減しながら性能を発揮し続ける、費用対効果の高い制御装置の設計をもたらした。
米国特許仮出願第60/733,067号
External storage device solutions (external storage solutions) based on USB or Firewire (also called IEEE 1394), SATA (Serial ATA) are very popular. With the establishment of a lifestyle in the digital environment, the demand for storage devices has greatly increased, and more storage devices will appear. This has resulted in a cost-effective controller design that continues to perform while reducing overall system cost.
US Provisional Patent Application No. 60 / 733,067

ほとんどの制御装置は、その制御装置自体の中に、エンハンスメントをなし得る余地をもつ基本ファームウェアを含む。制御装置の全てのアプリケーションを予測することは難しく、そこで制御装置をエンハンスして新しいアプリケーションに対処する方法が、これらエンハンスメントをEEPROMなどに常駐できるようにすることにより与えられる。   Most controllers include basic firmware within the controller itself that has room for enhancement. It is difficult to predict all applications of the controller, so a way to enhance the controller to deal with new applications is given by making these enhancements resident in EEPROM or the like.

本明細書に記載の一実施形態は、外部記憶装置をエンハンスするシステムおよび方法を提供する。一実施形態は、コンピュータ・システムの周辺デバイスに対する制御装置を含む。この制御装置は、周辺デバイスの記憶媒体へのアクセスを提供する。一実施形態では、周辺デバイスの記憶媒体が、周辺デバイスのファームウェア用に確保された記憶セクションを含む。   One embodiment described herein provides a system and method for enhancing an external storage device. One embodiment includes a controller for a peripheral device of the computer system. The controller provides access to the storage media of the peripheral device. In one embodiment, the peripheral device storage medium includes a storage section reserved for the peripheral device firmware.

第2の実施形態では、コンピュータ・システムの周辺記憶デバイスの制御装置が、複数のハードディスク・ドライブ(HDD)の存在を識別し、複数のHDDのうちのどの1つの記憶容量よりも大きな記憶容量を有する単一のHDDとして当該複数のHDDに対して論理的アクセスを与える。   In the second embodiment, the control device of the peripheral storage device of the computer system identifies the presence of a plurality of hard disk drives (HDD), and has a storage capacity larger than any one of the plurality of HDDs. Logical access is given to the plurality of HDDs as a single HDD.

本発明の諸実施形態についての以下の詳細な説明では、同様な参照符号が類似の要素を示し、本発明が実施され得る特定の実施形態が例として示される添付の図面が参照される。これらの実施形態は、当業者が本発明を実施できるよう十分詳細に説明されており、他の実施形態が利用され得ること、ならびに本発明の範囲を逸脱することなく論理的、機構的、電気的、機能的、かつその他の変更がなされ得ることを理解されたい。したがって以下の詳細な説明は限定する意味で受け取られてはならず、本発明の範囲は、添付の特許請求の範囲によってのみ定義される。   In the following detailed description of the embodiments of the invention, reference is made to the accompanying drawings, in which like reference numerals designate like elements, and specific embodiments in which the invention may be practiced are shown by way of example. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and other embodiments may be utilized and may be logical, mechanical, electrical, without departing from the scope of the invention. It should be understood that general, functional, and other changes can be made. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is defined only by the appended claims.

一実施形態では、外部周辺機器(本明細書では外部エンクロージャ(external enclosures)とも呼ばれる)が、製造番号、製造元の識別、型番ID(本明細書では一括してファームウェア・エンハンスメントとも呼ばれる)のうちの1つまたは複数を示す。他の実施形態では、ファームウェア・エンハンスメントに追加情報が含まれ得る。   In one embodiment, an external peripheral device (also referred to herein as external enclosures) includes a serial number, manufacturer identification, and model ID (collectively referred to herein as firmware enhancement). One or more are shown. In other embodiments, additional information may be included in the firmware enhancement.

図1に示されるように、典型的には、情報(すなわちファームウェア・エンハンスメント)が周辺機器の制御装置のファームウェアに、例えばEEPROMまたはシリアルEEPROMなど小容量の不揮発性記憶装置に与えられる。   As shown in FIG. 1, information (ie, firmware enhancement) is typically provided to the firmware of the peripheral controller, for example to a small capacity non-volatile storage device such as an EEPROM or a serial EEPROM.

一実施形態では、周辺機器が、ディスク・ドライブなどの外部記憶デバイスである。例えば、記憶デバイスは、USB(ユニバーサル・シリアル・バス、Universal Serial Bus)ディスク・ドライブ、IEEE1394(ファイヤワイヤ)ディスク・ドライブ、あるいはIDEディスク・ドライブのうちの1つである。他の実施形態では、参照される周辺機器が、ネットワーク・ルータなどディスク・ドライブ以外の別のデバイスを含む。一実施形態では、周辺デバイスが、USBインターフェース、シリアルATAインターフェース、ファイヤワイヤ(IEEE1394インターフェース)、ATA(シリアルまたはパラレル)ディスク・ドライブに接続されたUSB on−the−go(オン・ザ・ゴー、OTG)のうちの少なくとも1つを含むホスト・インターフェースを有する。   In one embodiment, the peripheral device is an external storage device such as a disk drive. For example, the storage device is one of a USB (Universal Serial Bus) disk drive, an IEEE 1394 (Firewire) disk drive, or an IDE disk drive. In other embodiments, the referenced peripheral device includes another device other than a disk drive, such as a network router. In one embodiment, the peripheral device is a USB on-the-go (OTG) connected to a USB interface, serial ATA interface, Firewire (IEEE 1394 interface), ATA (serial or parallel) disk drive. ) Having a host interface including at least one of

一実施形態では、図2に示されるように、制御装置の記憶媒体ではなく、周辺機器の記憶媒体の1セクションに、上記で論じたファームウェア・エンハンスメントの記憶が割り振られる。一実施形態では、周辺機器の制御装置に記憶媒体が含まれない。   In one embodiment, as shown in FIG. 2, the firmware enhancement storage discussed above is allocated to a section of the peripheral storage medium rather than the controller storage medium. In one embodiment, the storage device is not included in the control device of the peripheral device.

したがって、一実施形態における、周辺機器の記憶媒体上の記憶装置へのファームウェア・エンハンスメントの記憶の割振りが、一実施形態では周辺制御装置のシリアルEEPROMをエミュレートする。周辺制御装置の記憶媒体ではなく、周辺機器の記憶媒体にファームウェア・エンハンスメントを置いた結果、制御装置に補助記憶装置を提供するコストが低減される。   Accordingly, in one embodiment, the allocation of storage of firmware enhancements to a storage device on the storage medium of the peripheral device emulates a serial EEPROM of the peripheral controller in one embodiment. As a result of placing the firmware enhancement on the storage medium of the peripheral device instead of the storage medium of the peripheral control device, the cost of providing the auxiliary storage device to the control device is reduced.

一実施形態では、ファームウェア・エンハンスメントを記憶する事前に識別された記憶領域を有する周辺機器の記憶媒体が、その周辺機器の主記憶媒体である。他の実施形態では、複数の記憶媒体が周辺機器に与えられ、そのうちの1つがファームウェア・エンハンスメントを記憶するように指定される。   In one embodiment, the peripheral storage medium having a pre-identified storage area for storing firmware enhancements is the peripheral main storage medium. In other embodiments, multiple storage media are provided to the peripheral device, one of which is designated to store the firmware enhancement.

起動時に、周辺機器の制御装置が周辺デバイスの記憶媒体をスキャンして、ファームウェア・エンハンスメントを含む、記憶装置の事前に指定された位置を調べる。ファームウェア・エンハンスメントは、制御装置のメモリにロードされ、起動ルーチンにより処理されることになる。   At start-up, the peripheral controller scans the peripheral device's storage medium for a pre-specified location of the storage device, including firmware enhancements. Firmware enhancements will be loaded into the memory of the controller and processed by the startup routine.

より具体的には、一実施形態では、電源投入時に、ホストのプロセッサまたは制御装置がリセットされ、様々なレジスタの設定など初期化用関数の実行を開始する。この処理の一部として、制御装置に置かれた論理回路が、ファームウェア・エンハンスメントを記憶する、記憶媒体の事前に指定されたセクションの存在を調査する。位置が判定されると、エンハンスされたファームウェアが、実行にあたってホストのメモリにロードされる。あるいは、エンハンスされたファームウェアが、実行にあたって異なるメモリにロードされてもよい。   More specifically, in one embodiment, upon power-up, the host processor or controller is reset and starts executing initialization functions such as various register settings. As part of this process, logic circuitry located in the controller checks for the presence of a pre-specified section of the storage medium that stores the firmware enhancement. Once the location is determined, the enhanced firmware is loaded into the host memory for execution. Alternatively, the enhanced firmware may be loaded into a different memory for execution.

一実施形態では、プロセッサまたは制御装置に周辺機器の記憶媒体の事前に指定されたセクションを見つけ出させる論理回路が、1つまたは複数のオペレーティング・システム(OS)、ホストの基本入出力システム(BIOS)、あるいは周辺デバイスまたは他のデバイスのドライバに常駐する。   In one embodiment, a logic circuit that causes a processor or controller to locate a pre-specified section of a peripheral storage medium is one or more operating systems (OS), a host basic input / output system (BIOS). ), Or resides in a peripheral device or other device driver.

一実施形態では、論理回路が、周辺機器の制御装置ではなく、以下に応答して、エンハンスされたファームウェアを周辺機器の記憶媒体上で調査すると認識している。一実施形態では、エンハンスされたファームウェアを記憶するのに周辺機器の記憶媒体を用いるという所定の取決めがある。一例として、エンハンスされたファームウェアを、記憶媒体に使用可能な周辺機器の末尾の32(あるいは数倍の)セクタに記憶する所定の取決めがある。したがって論理回路は、エンハンスされたファームウェアを所定の位置で調査して、エンハンスされたファームウェアが存在するかどうか判定する。   In one embodiment, the logic circuit recognizes that the enhanced firmware is examined on the peripheral storage medium in response to the following rather than the peripheral controller. In one embodiment, there is a predetermined convention of using a peripheral storage medium to store the enhanced firmware. As an example, there is a predetermined convention for storing enhanced firmware in the last 32 (or several times) sectors of a peripheral device available for storage media. Thus, the logic circuit examines the enhanced firmware at a predetermined location to determine whether enhanced firmware is present.

一実施形態では、周辺機器の記憶媒体において最大64セクタまで(32キロバイトの領域)が、エンハンスされたファームウェアを記憶するように事前に指定される。他の実施形態では、別のサイズのセクタが使用される。   In one embodiment, up to 64 sectors (32 kilobyte region) in the peripheral storage media are pre-designated to store the enhanced firmware. In other embodiments, different sized sectors are used.

テラディスク
記憶媒体には通常、スイート・スポットとなる容量があり、場合によっては、それが投じた金額に対し最も見合う価値となることが見受けられる。例えば、図3での多項目が例示された典型例では、250GBディスク・ドライブが80ドルであっても、500GBのIDEハードディスク・ドライブは300ドルするだろう。したがって、図4に示されるように、2つの250GBのハードディスク・ドライブが組み合わされて1つの論理的な500GBのハードディスク・ドライブ(本明細書ではテラディスクとも呼ばれる)を形成することになれば、コストの大幅な節減が達成され得る。
Terradisk storage media usually has the capacity of a sweet spot, and in some cases it appears to be the best value for the amount invested. For example, in the typical example illustrated with multiple items in FIG. 3, a 500 GB IDE hard disk drive would cost $ 300, even though a 250 GB disk drive costs $ 80. Thus, as shown in FIG. 4, if two 250 GB hard disk drives are combined to form a single logical 500 GB hard disk drive (also referred to herein as a teradisk), the cost Significant savings can be achieved.

テラディスクの一実施形態が、図5の流れ図に記載のように、以下の方法により提供される。プロセス502で、起動時(すなわち電源投入、リセットなど)に、ディスク・ドライブの制御装置が、指定されたジャンパ(jumper)またはインジケータが、複数の別個のディスク・ドライブが単一のディスク・ドライブとして論理的に扱われる(図4の構成に示されるように)ことを示すように設定されているかどうか(通常はジャンパ・ブロック)を判定する。   One embodiment of a terradisk is provided by the following method, as described in the flow diagram of FIG. In process 502, at start-up (ie, power-up, reset, etc.), the disk drive controller, the specified jumper or indicator, multiple separate disk drives as a single disk drive It is determined whether it is set to indicate that it is logically handled (as shown in the configuration of FIG. 4) (usually a jumper block).

一実施形態では、ジャンパが、ディスク・ドライバ制御装置を含むプリント回路基板に置かれるはずである。複数の別個のディスク・ドライブは、それらを区別するための一意のIDを有する。   In one embodiment, a jumper should be placed on the printed circuit board that contains the disk driver controller. Multiple distinct disk drives have a unique ID to distinguish them.

プロセス504で、制御装置が複数の別個のディスク・ドライブをスキャンし、組み合わされたエンティティ(すなわち複数のディスク・ドライブ)の合計領域を計算する。一実施形態では、サイズの計算が、各ディスク・ドライブからそのサイズを検索することにより行われる(例えば、典型的には(ATAおよびATAPIデバイスに対する)IDENTIFY DRIVEコマンドを使用して)。   In process 504, the controller scans multiple separate disk drives and calculates the total area of the combined entity (ie, multiple disk drives). In one embodiment, the size calculation is performed by retrieving the size from each disk drive (eg, typically using the IDENTIFY DRIVE command (for ATA and ATAPI devices)).

一実施形態では、起動時にIDENTIFY DRIVEコマンドが、両ディスク・ドライブに発行され、識別されたサイズ・パラメータがメモリに保持されてファームウェアにより参照される。一実施形態では、ファームウェアが、合計容量を計算し、テラディスクの存在(すなわち論理的に単一のディスク・ドライブと表現された複数のディスク・ドライブの組合せ)に適合し、テラディスクの容量をホストに宣言する。   In one embodiment, at startup, an IDENTIFY DRIVE command is issued to both disk drives, and the identified size parameter is held in memory and referenced by the firmware. In one embodiment, the firmware calculates the total capacity and adapts to the presence of the teradisk (ie, a combination of multiple disk drives logically represented as a single disk drive) Declare to the host.

ホスト(このテラディスクの接続先であるシステム)に接続されると、プロセス506で、制御装置が、別個のディスクを組み合わせた容量に等しい合計容量をもつただ1つのディスク・ドライブが存在することをホストに報告する。次いで、ホストが、テラディスクを単一の大容量記憶ブロックとして扱い、テラディスクに読取り/書込み要求を発行する。   When connected to the host (the system to which this teradisk is connected), in process 506, the controller determines that there is only one disk drive with a total capacity equal to the combined capacity of the separate disks. Report to host. The host then treats the teradisk as a single mass storage block and issues read / write requests to the teradisk.

プロセス508で、制御装置が、要求がどのディスクに向けられているかを判定し、それに従って要求を経路指定する。例として、一実施形態では、2つの500GBディスク・ドライブが組み合わされて単一の1テラバイト(TB)ディスク・ドライブを形成する場合を考察する。制御装置が、0から500GBまでのアドレスをもつ要求は第1ディスク・ドライブに経路指定され、第2ディスク・ドライブに渡す前にアドレスが500GBで減じられた後、501GBから1TBまでの要求が第2ディスク・ドライブに経路指定されるように判定する。   In process 508, the controller determines to which disk the request is directed and routes the request accordingly. As an example, consider an embodiment where two 500 GB disk drives are combined to form a single 1 terabyte (TB) disk drive. Requests with addresses from 0 to 500 GB by the controller are routed to the first disk drive and after the address is decremented by 500 GB before passing to the second disk drive, requests from 501 GB to 1 TB are Determine to be routed to two disk drives.

一実施形態では、図4に示されるように、一方のデバイスをマスタとして、もう一方のデバイスをスレーブとして振舞うようにさせることにより、同一バス上に接続された複数のデバイスが異なるアドレスをもつ。一実施形態では、複数のデバイスが業界用語でいうところのパラレルATA(IDEとしても知られる)を含む。   In one embodiment, as shown in FIG. 4, multiple devices connected on the same bus have different addresses by having one device act as a master and the other as a slave. In one embodiment, the plurality of devices include parallel ATA (also known as IDE) in industry terms.

少なくとも一部の実施形態、および本明細書に記載の様々な構造および機能要素は、ハードウェア、ファームウェア、命令プログラム、あるいはハードウェアとファームウェアと命令プログラムとの組合せを用いて実装され得る。   At least some embodiments, and the various structures and functional elements described herein may be implemented using hardware, firmware, instruction programs, or a combination of hardware, firmware, and instruction programs.

一般に、諸実施形態を実装するために実行されるルーチンは、「コンピュータ・プログラム」と呼ばれる、オペレーティング・システムまたは特定のアプリケーション、構成要素、プログラム、オブジェクト、モジュール、あるいは命令シーケンスの一部として実装され得る。コンピュータ・プログラムは、典型的には、様々な時にコンピュータの様々なメモリおよび記憶デバイスに1つまたは複数の命令セットを含み、しかも1つまたは複数のプロセッサにより読み込まれ実行されると、コンピュータに動作させて様々な側面を含む要素を実行する。   Generally, the routines that are executed to implement the embodiments are implemented as part of an operating system or a specific application, component, program, object, module, or instruction sequence called a “computer program”. obtain. A computer program typically includes one or more instruction sets in various memory and storage devices of the computer at various times and operates on the computer when read and executed by one or more processors. To implement elements that include various aspects.

以上、一部の実施形態は、機能の完備したコンピュータおよびコンピュータ・システムとの関連で説明されてきたが、様々な実施形態が、様々な形態のプログラム製品として配布されることが可能であり、配布を実際に達成するのに使用される特定のタイプの機械またはコンピュータ可読媒体に関係なく適用されることが可能であることが当業者には理解されよう。   While some embodiments have been described in the context of fully functional computers and computer systems, various embodiments can be distributed as various forms of program products, One skilled in the art will appreciate that it can be applied regardless of the particular type of machine or computer readable medium used to actually achieve the distribution.

コンピュータ可読媒体の例には、それだけには限らないが、可読タイプおよび可読タイプ以外の媒体、とりわけ、例えば揮発性および不揮発性メモリ・デバイス、読取り専用メモリ(ROM)、ランダム・アクセス・メモリ(RAM)、フラッシュ・メモリ・デバイス、フロッピおよびその他のリムーバブル・ディスク、磁気ディスク記憶媒体、光記憶媒体(例えば、コンパクト・ディスク読取り専用メモリ(CD ROM)、DVDなど)を含む。命令は、電気、光、音響、またはその他の形態の伝播信号、例えば搬送波、赤外線信号、デジタル信号などのデジタルおよびアナログ通信リンクで実行可能である。   Examples of computer readable media include, but are not limited to, readable and non-readable media, such as volatile and non-volatile memory devices, read only memory (ROM), random access memory (RAM), among others. , Flash memory devices, floppy and other removable disks, magnetic disk storage media, optical storage media (eg, compact disk read only memory (CD ROM), DVD, etc.). The instructions can be executed on digital and analog communication links such as electrical, optical, acoustic, or other forms of propagated signals, eg, carrier waves, infrared signals, digital signals.

機械可読媒体は、データ処理システムにより実行されると、システムに様々な方法を実施させるソフトウェアおよびデータを記憶するのに使用され得る。実行可能なソフトウェアおよびデータは、例えばROM、揮発性RAM、不揮発性メモリおよび/またはキャッシュなどを含む様々な場所に記憶されてよい。このソフトウェアおよび/またはデータの一部が、これら記憶デバイスの何れか1つに記憶されてもよい。   A machine-readable medium may be used to store software and data that, when executed by a data processing system, causes the system to perform various methods. Executable software and data may be stored in various locations including, for example, ROM, volatile RAM, non-volatile memory and / or cache. A portion of this software and / or data may be stored on any one of these storage devices.

一般に、機械可読媒体は、機械(例えばコンピュータ、ネットワーク・デバイス、携帯情報端末(personal digital assistant)、製造ツール、1組の1つまたは複数のプロセッサを有する全てのデバイスなど)によるアクセスが可能な形態で情報を提供する(すなわち記憶かつ/または伝送する)如何なる機構をも含む。   Generally, a machine-readable medium is accessible by a machine (eg, a computer, a network device, a personal digital assistant, a manufacturing tool, any device having a set of one or more processors, etc.). Any mechanism that provides (ie, stores and / or transmits) information.

一部の態様は、少なくとも部分的には、ソフトウェアで実装され得る。すなわち、その技術は、コンピュータ・システムまたは他のデータ処理システムで、ROM、揮発性RAM、不揮発性メモリ、キャッシュ、磁気および光ディスク、あるいは遠隔記憶デバイスなどのメモリに格納された命令シーケンスを実行する、例えばマイクロプロセッサなど、そのシステムのプロセッサに応答して実行され得る。また命令は、データ・ネットワークを介してコンピューティング・デバイスに、コンパイルあるいはリンクされたバージョンという形態でダウンロードされ得る。   Some aspects may be implemented, at least in part, in software. That is, the technology executes a sequence of instructions stored in a memory such as a ROM, volatile RAM, non-volatile memory, cache, magnetic and optical disk, or remote storage device in a computer system or other data processing system. It can be executed in response to a processor of the system, such as a microprocessor. The instructions may also be downloaded in the form of a compiled or linked version to a computing device over a data network.

あるいは、上記で論じた諸プロセスを実行する論理回路が、追加のコンピュータおよび/または機械可読媒体、例えば、大規模集積回路(LSI)、特殊用途向け集積回路(ASIC)のような離散的なハードウェア構成要素、あるいは電気的に消去可能であるプログラム可能な読取り専用メモリ(EEPROM)などのファームウェアに実装され得る。   Alternatively, logic circuitry that performs the processes discussed above may comprise additional computer and / or machine readable media, such as discrete hardware such as large scale integrated circuits (LSIs), special purpose integrated circuits (ASICs). Hardware components or firmware such as programmable read only memory (EEPROM) that is electrically erasable.

様々な実施形態で、その実施形態を実装するのに、ソフトウェア命令と組み合わせて配線回路が使用され得る。したがって、その技術が、ハードウェア回路とソフトウェアとの特定のどんな組合せにも限定されないし、データ処理システムにより実行される命令について特定のどんなソースにも限定されない。   In various embodiments, wiring circuits can be used in combination with software instructions to implement the embodiments. Thus, the technology is not limited to any particular combination of hardware circuitry and software, nor is it limited to any particular source for instructions executed by the data processing system.

本明細書の説明では、説明を簡潔にするために、様々な機能および動作がソフトウェア・コードにより実施または引き起こされるように記載されている。しかし、かかる表現により意味されているのは、その機能がマイクロプロセッサなどのプロセッサによるコードの実行から生じるということであることは当業者には理解されよう。   In the description herein, various functions and operations are described as being performed or caused by software code for the sake of brevity. However, those skilled in the art will understand that what is meant by such a representation is that its function results from the execution of code by a processor, such as a microprocessor.

一部の図面では、いくつかの動作を特定の順で示しているが、順に従う必要のない動作は並べ替えられてよいし、他の動作が組み合わせられても、切り離されてもよい。一部並べ替えあるいはその他のグループ化は具体的に述べられているが、その他は当業者には明らかであろうから様々な選択肢について網羅的なリストは示していない。さらに、諸段階が、ハードウェア、ファームウェア、ソフトウェア、あるいはそれらの如何なる組合せにおいても実装され得ることを理解されたい。   In some drawings, some operations are shown in a particular order, but operations that do not need to be followed may be reordered, and other operations may be combined or separated. Some permutations or other groupings have been specifically described, but an exhaustive list is not provided for the various options as others will be apparent to those skilled in the art. Further, it should be understood that the stages can be implemented in hardware, firmware, software, or any combination thereof.

以上、本明細書において、特定の例示的な実施形態を参照しながら開示が記載された。それら実施形態に対し、以下の特許請求の範囲において述べられる本発明のより広い趣旨および範囲から逸脱することなく様々な修正がなされ得ることは明らかであろう。したがって本明細書および図面は、限定的な意味ではなく説明的な意味で理解されるべきである。   In the foregoing specification, the disclosure has been described with reference to specific exemplary embodiments. It will be apparent that various modifications can be made to these embodiments without departing from the broader spirit and scope of the invention as set forth in the claims below. The specification and drawings are, accordingly, to be understood in an illustrative rather than a restrictive sense.

典型的な外部記憶装置の構成を示す図である。It is a figure which shows the structure of a typical external storage device. 一実施形態による外部記憶装置の構成を示す図である。It is a figure which shows the structure of the external storage device by one Embodiment. 典型的なマスタおよびスレーブ型記憶装置の構成を示す図である。It is a figure which shows the structure of a typical master and slave type | mold storage device. 一実施形態による外部記憶装置の構成を示す図である。It is a figure which shows the structure of the external storage device by one Embodiment. 一実施形態による方法を記載した流れ図である。2 is a flow diagram describing a method according to one embodiment.

Claims (13)

コンピュータ・システムの周辺デバイスの制御装置を具備する装置であって、前記制御装置は前記周辺デバイスの記憶媒体にアクセスし、前記記憶媒体は前記周辺デバイスのファームウェア用に確保された記憶セクションを含む装置。   An apparatus comprising a peripheral device controller of a computer system, wherein the controller accesses a storage medium of the peripheral device, the storage medium including a storage section reserved for firmware of the peripheral device . 前記制御装置が、前記デバイスのファームウェアを記憶するための不揮発性記憶装置を含まない請求項1に記載の装置。   The apparatus according to claim 1, wherein the control apparatus does not include a non-volatile storage device for storing firmware of the device. 前記デバイスのファームウェアが、前記デバイスの製造番号、前記デバイスの製造元の識別、および前記デバイスの型番IDのうちの1つまたは複数を含む請求項2に記載の装置。   The apparatus of claim 2, wherein the device firmware includes one or more of the device serial number, the device manufacturer identification, and the device model ID. 前記周辺デバイスが、外部記憶装置ソリューションである請求項3に記載の装置。   The apparatus of claim 3, wherein the peripheral device is an external storage device solution. 前記周辺デバイスが、ユニバーサル・シリアル・バス(USB)ディスク・ドライブ、ファイヤワイヤ・ディスク・ドライブ、およびIDEディスク・ドライブのうちの1つを含む外部記憶デバイスである請求項3に記載の装置。   The apparatus of claim 3, wherein the peripheral device is an external storage device including one of a universal serial bus (USB) disk drive, a firewire disk drive, and an IDE disk drive. 前記周辺デバイスが、USBインターフェース、シリアルATAインターフェース、ファイヤワイヤ(IEEE1394インターフェース)、ATAディスク・ドライブに接続されたUSBオン・ザ・ゴー(OTG)のうちの少なくとも1つを含むホスト・インターフェースを有する請求項3に記載の装置。   The peripheral device has a host interface including at least one of a USB interface, a serial ATA interface, a firewire (IEEE 1394 interface), and a USB on the go (OTG) connected to an ATA disk drive. Item 4. The apparatus according to Item 3. 前記制御装置が前記デバイスの主記憶媒体をスキャンしてファームウェアを見つけ、前記ファームウェアを前記システムのメモリにロードする請求項5に記載の装置。   The apparatus according to claim 5, wherein the controller scans the main storage medium of the device to find firmware and loads the firmware into the memory of the system. 周辺デバイスにアクセスするための制御装置を具備する装置であって、前記制御装置はファームウェアを含まず、前記制御装置は、前記制御装置のファームウェアをエミュレートするために確保された前記周辺デバイスの記憶媒体の1セクションにアクセスする装置。   An apparatus comprising a control device for accessing a peripheral device, the control device not including firmware, wherein the control device stores memory of the peripheral device reserved for emulating the firmware of the control device A device that accesses a section of media. コンピュータ・システムの周辺記憶デバイスの制御装置を具備する装置であって、前記制御装置は、複数のハードディスク・ドライブ(HDD)の存在を識別し、前記複数のHDDのうちのどの1つの記憶容量よりも大きな記憶容量を有する単一のHDDとして前記複数のHDDに対して論理的アクセスを行う装置。   An apparatus comprising a control device for a peripheral storage device of a computer system, wherein the control device identifies the presence of a plurality of hard disk drives (HDDs), and from any one of the storage capacities of the plurality of HDDs A device that performs logical access to the plurality of HDDs as a single HDD having a large storage capacity. 前記制御装置が、前記複数のHDDの記憶容量の合計に等しい記憶容量を有する単一のHDDとして前記複数のHDDに対して論理的アクセスを行う請求項8に記載の装置。   The apparatus according to claim 8, wherein the control apparatus performs logical access to the plurality of HDDs as a single HDD having a storage capacity equal to a total storage capacity of the plurality of HDDs. 前記制御装置が、初期化に応じて、ジャンパおよびインジケータのうちの1つが、前記複数のHDDが論理的に単一のHDDとしてアクセスされるべきであることを示すように設定されるかどうかを決定する請求項8に記載の装置。   Whether the controller is responsive to initialization, one of jumpers and indicators is set to indicate that the plurality of HDDs should be logically accessed as a single HDD The apparatus of claim 8, wherein the apparatus is determined. 前記制御装置が、前記複数のHDDの個別のHDDの記憶容量を決定する請求項10に記載の装置。   The device according to claim 10, wherein the control device determines a storage capacity of individual HDDs of the plurality of HDDs. 前記複数のHDDのうちの第1HDDのアドレスの量より大きな論理アドレスをもつアクセス要求の受信に応じて、前記制御装置が、前記第1HDDのアドレスの量だけ前記論理アドレスをオフセットすることにより、前記論理アドレスに対応する第2HDDへのアドレスを、請求項10に記載の装置。   In response to receiving an access request having a logical address larger than the amount of addresses of the first HDD of the plurality of HDDs, the control device offsets the logical address by the amount of addresses of the first HDD. The apparatus according to claim 10, wherein an address to the second HDD corresponding to the logical address is used.
JP2008538929A 2005-11-02 2006-10-25 System and method for enhancing external storage Pending JP2009515254A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US73306705P 2005-11-02 2005-11-02
US11/478,895 US20070162626A1 (en) 2005-11-02 2006-06-30 System and method for enhancing external storage
PCT/US2006/041856 WO2007055925A2 (en) 2005-11-02 2006-10-25 System and method for enhancing external storage

Publications (1)

Publication Number Publication Date
JP2009515254A true JP2009515254A (en) 2009-04-09

Family

ID=40612185

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008538929A Pending JP2009515254A (en) 2005-11-02 2006-10-25 System and method for enhancing external storage

Country Status (4)

Country Link
EP (1) EP1946201A2 (en)
JP (1) JP2009515254A (en)
KR (1) KR20080067570A (en)
WO (1) WO2007055925A2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7876894B2 (en) 2006-11-14 2011-01-25 Mcm Portfolio Llc Method and system to provide security implementation for storage devices

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6930709B1 (en) * 1997-12-04 2005-08-16 Pentax Of America, Inc. Integrated internet/intranet camera
JP3494346B2 (en) * 1998-03-03 2004-02-09 シャープ株式会社 Semiconductor memory device and control method thereof
US7509420B2 (en) * 2000-02-18 2009-03-24 Emc Corporation System and method for intelligent, globally distributed network storage
US7206989B2 (en) * 2002-11-20 2007-04-17 Intel Corporation Integrated circuit having multiple modes of operation
US8578063B2 (en) * 2004-08-20 2013-11-05 Mitsubishi Kagaku Media Co., Ltd. Self-labeling digital storage unit

Also Published As

Publication number Publication date
WO2007055925A2 (en) 2007-05-18
KR20080067570A (en) 2008-07-21
EP1946201A2 (en) 2008-07-23
WO2007055925A3 (en) 2008-01-03

Similar Documents

Publication Publication Date Title
US20070162626A1 (en) System and method for enhancing external storage
KR100909119B1 (en) Apparatus and Method for High Performance Volatile Disk Drive Memory Access Using Integrated DMA Engine
US7987438B2 (en) Structure for initializing expansion adapters installed in a computer system having similar expansion adapters
US5875349A (en) Method and arrangement for allowing a computer to communicate with a data storage device
JP4510359B2 (en) Multifunctional semiconductor memory device and method for starting host computer
CN102171649B (en) Method and system for queuing transfers of multiple non-contiguous address ranges with a single command
CN111177029A (en) System and method for managing software-defined persistent memory
US7711945B2 (en) Universal computer product hardware configuration initialization handling method and system
JP6622512B2 (en) Device with virtual device and method of operation thereof
JP4308152B2 (en) Method, system, and product for reserving memory
US20080235436A1 (en) Storage access control
TW201504937A (en) Virtual storage devices formed by selected partitions of a physical storage device
CN108733479B (en) Method for unloading solid state hard disk card and device using same
JP2009515254A (en) System and method for enhancing external storage
US9760661B2 (en) Providing virtual optical disk drive
US20080281992A1 (en) Method for detecting order of attached devices and computer readable storage media storing program thereof
KR20060095133A (en) Method for operating system program stored in non-volatile memory
US8667188B2 (en) Communication between a computer and a data storage device
US8001282B2 (en) Virtualization aware hard drive
KR101143716B1 (en) Portable devide and method for accessing user command thereof
TWI390399B (en) External device having a virtual storage device
JP6801531B2 (en) Expansion device setting method, expansion device setting program and information processing device
JP3066623B2 (en) Disk cache control method
KR101147558B1 (en) Operation system and operating method
JP2009151707A (en) Information processor and operating system determination method