JPWO2006038260A1 - USB storage system and USB storage device - Google Patents

USB storage system and USB storage device Download PDF

Info

Publication number
JPWO2006038260A1
JPWO2006038260A1 JP2006539091A JP2006539091A JPWO2006038260A1 JP WO2006038260 A1 JPWO2006038260 A1 JP WO2006038260A1 JP 2006539091 A JP2006539091 A JP 2006539091A JP 2006539091 A JP2006539091 A JP 2006539091A JP WO2006038260 A1 JPWO2006038260 A1 JP WO2006038260A1
Authority
JP
Japan
Prior art keywords
usb
function
hosts
host
storage system
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
JP2006539091A
Other languages
Japanese (ja)
Inventor
鈴木 慎一
慎一 鈴木
貴之 池谷
貴之 池谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
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 Renesas Technology Corp filed Critical Renesas Technology Corp
Publication of JPWO2006038260A1 publication Critical patent/JPWO2006038260A1/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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • 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/0637Permissions
    • 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]

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)
  • Information Transfer Systems (AREA)

Abstract

例えば、USBホスト[1]10aおよびUSBホスト[2]10bからなる複数のUSBホストと、メモリカード等の外部メディア13が接続され、前記複数のUSBホストにそれぞれUSBケーブル12a,12bで接続可能なUSBリーダライタ11とを設け、USBリーダライタ11内のソフトウエア等に、一方のUSBホストから前記外部メディア13に対する書き込み処理中は他方のUSBホストからの書き込み要求を拒否する機能などを備えることによって、前記複数のUSBホストによる前記外部メディア13の共有アクセスを実現する。  For example, a plurality of USB hosts including a USB host [1] 10a and a USB host [2] 10b are connected to an external medium 13 such as a memory card, and the plurality of USB hosts can be connected by USB cables 12a and 12b, respectively. A USB reader/writer 11 is provided, and software or the like in the USB reader/writer 11 is provided with a function of rejecting a write request from the other USB host during writing processing from the one USB host to the external medium 13. The shared access of the external medium 13 by the plurality of USB hosts is realized.

Description

本発明は、USB(Universal Serial Bus)ストレージシステムおよびUSBストレージデバイスに関し、特に、複数のホストに接続して用いられるUSBストレージシステムおよびUSBストレージデバイスに適用して有効な技術に関するものである。   The present invention relates to a USB (Universal Serial Bus) storage system and a USB storage device, and more particularly to a technique effective when applied to a USB storage system and a USB storage device that are used by being connected to a plurality of hosts.

本発明者が検討したところによれば、USBストレージシステムの技術に関しては、以下のような技術が考えられる。   According to a study made by the present inventor, the following techniques can be considered as the technique of the USB storage system.

近年、プラグアンドプレイ機能などによる使用の容易さやUSB2.0規格によるデータ転送速度の向上により、メモリカード、フロッピーディスク(登録商標)などの外部メディアをリムーバブルディスクとして扱うUSBストレージデバイス(以下、USBリーダライタと呼ぶ)が数多く存在している。   In recent years, a USB storage device (hereinafter, referred to as a USB reader) that handles an external medium such as a memory card or a floppy disk (registered trademark) as a removable disk due to ease of use by a plug-and-play function or the like and improvement in data transfer rate according to the USB 2.0 standard There are many).

ところで、前記のようなUSBストレージシステムの技術について、本発明者が検討した結果、以下のようなことが明らかとなった。   By the way, as a result of the present inventor's examination of the technology of the USB storage system as described above, the following has become clear.

近年のPC(Personal Computer)の低価格化にともない、複数のPCを使用するユーザーが増えている。このような中、USBストレージシステムの構成としては、通常、図10に示すようなものが挙げられる。図10は、本発明の前提として検討した技術のUSBストレージシステムにおいて、その構成の一例を示す概略図であり、(a)〜(c)は、それぞれ異なる構成例を示すものである。   With the recent price reduction of PCs (Personal Computers), the number of users who use a plurality of PCs is increasing. Under such circumstances, as a configuration of the USB storage system, a configuration as shown in FIG. 10 is usually cited. FIG. 10 is a schematic diagram showing an example of the configuration of the USB storage system of the technique studied as the premise of the present invention, and (a) to (c) show different configuration examples.

まず、図10(a)では、USBケーブル102によってUSBホストPC100に接続されたUSBリーダライタ101aが、SD(Secure Digital)メモリカードまたはフロッピーディスクといった1個の外部メディアを挿入可能となっている。図10(b)では、図10(a)と同様に接続されたUSBリーダライタ101bが、CF(CompactFlash(登録商標))カード、SDメモリカードおよびメモリースティック(登録商標)といった種類の異なる複数個の外部メディア[1],[2],…,[N]を挿入可能となっている。図10(c)では、図10(a)と同様に接続されたUSBリーダライタ101cが、MMC(MultiMediaCard(登録商標))カード等からなる同種の複数個の外部メディア[1],[2],…,[N]を挿入可能となっている。   First, in FIG. 10A, the USB reader/writer 101a connected to the USB host PC 100 by the USB cable 102 can insert one external medium such as an SD (Secure Digital) memory card or a floppy disk. In FIG. 10B, a USB reader/writer 101b connected in the same manner as in FIG. 10A includes a plurality of different types such as a CF (CompactFlash (registered trademark)) card, an SD memory card, and a Memory Stick (registered trademark). External media [1], [2],..., [N] can be inserted. In FIG. 10C, a USB reader/writer 101c connected in the same manner as in FIG. 10A includes a plurality of external media [1] and [2] of the same type including an MMC (MultiMediaCard (registered trademark)) card or the like. ,..., [N] can be inserted.

ただし、いずれの構成においても、USBホストPCと外部メディアの対応関係は、1対1または1対多となっている。したがって、例えば、複数のPCを使用するユーザーが、ある外部メディアを複数のPC(USBホストPC)で使用する場合には、例えば、図11に示すような作業が行われる。   However, in any of the configurations, the correspondence relationship between the USB host PC and the external medium is one-to-one or one-to-many. Therefore, for example, when a user who uses a plurality of PCs uses a certain external medium with a plurality of PCs (USB host PCs), for example, the work shown in FIG. 11 is performed.

図11は、本発明の前提として検討した技術のUSBストレージシステムにおいて、特定の外部メディアを複数のUSBホストPCで使用する場合の作業内容を説明するための図である。すなわち、USBホストPC[1]110aで外部メディアを使用後、USBホストPC[1]110aに接続されているUSBケーブル112を抜き(S110)、USBホストPC[2]にUSBケーブル112を接続する(S111)という作業が行われる。   FIG. 11 is a diagram for explaining the work contents when a specific external medium is used by a plurality of USB host PCs in the USB storage system of the technique studied as the premise of the present invention. That is, after the external medium is used by the USB host PC[1] 110a, the USB cable 112 connected to the USB host PC[1] 110a is removed (S110), and the USB cable 112 is connected to the USB host PC[2]. The work of (S111) is performed.

このように、複数のPCで特定の外部メディアを使用する際には、ユーザーがUSBケーブルの再接続といった面倒な作業を行う必要がある。そして、USBケーブルを再接続する度に、プラグアンドプレイによるUSBネットワークの再構成とメモリカード等の外部メディアの初期化が必要となり、時間や電力が無駄に消費される。   As described above, when using a specific external medium with a plurality of PCs, the user needs to perform a troublesome work such as reconnecting the USB cable. Then, every time the USB cable is reconnected, it is necessary to reconfigure the USB network by plug and play and initialize the external medium such as a memory card, which wastes time and power.

そこで、本発明の目的は、複数のホストによって使用される際に、時間的な効率を向上されることが可能なUSBストレージシステムおよびUSBストレージデバイスを提供することにある。   Therefore, an object of the present invention is to provide a USB storage system and a USB storage device that can be improved in time efficiency when used by a plurality of hosts.

また、本発明の他の目的は、複数のホストによって使用される際に、省電力化を図ることが可能なUSBストレージシステムおよびUSBストレージデバイスを提供することにある。   Another object of the present invention is to provide a USB storage system and a USB storage device that can save power when used by a plurality of hosts.

本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。   The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.

本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。   The following is a brief description of the outline of the typical invention disclosed in the present application.

本発明によるUSBストレージシステムは、複数のUSBホストと、外部記憶媒体としての機能を含んだUSBファンクションとを有し、USBファンクションと複数のUSBホストとの間でUSBプロトコルに基づくデータ転送を行うものである。そして、前記USBファンクションは、複数のUSBホストがUSBファンクションに接続された状態で、複数のUSBホストがUSBファンクションの外部記憶媒体に対して共有アクセスを行うことを可能にする機能を有するものとなっている。   A USB storage system according to the present invention has a plurality of USB hosts and a USB function including a function as an external storage medium, and performs data transfer based on the USB protocol between the USB function and the plurality of USB hosts. Is. The USB function has a function of enabling a plurality of USB hosts to share access to an external storage medium of the USB function in a state where the plurality of USB hosts are connected to the USB function. ing.

これによって、外部記憶媒体としてのUSBファンクションを複数のUSBホストで使用する際に、USBケーブルの再接続やそれに伴う初期化といった作業および処理が不要となり、時間的な効率が向上し、また、省電力化を図ることも可能となる。   As a result, when the USB function as an external storage medium is used by a plurality of USB hosts, the work and processing such as reconnecting the USB cable and the initialization associated therewith are not required, which improves time efficiency and saves time. It is also possible to make electricity.

ここで、前記共有アクセスを行うことを可能にする機能は、例えば、複数のUSBホストの中の一つのUSBホストがUSBファンクションの外部記憶媒体に対して書き込みの処理を実行している間は、複数のUSBホストの中の他のUSBホストから発生した書き込み要求を拒否する機能を含むものとなっている。   Here, the function that enables the shared access is, for example, while one USB host of the plurality of USB hosts is executing the writing process to the external storage medium of the USB function, It includes a function of rejecting a write request generated from another USB host of the plurality of USB hosts.

これによって、外部記憶媒体としてのUSBファンクションに記憶されたデータが、複数のUSBホストからの書き込みによって破壊することなどを防止することが可能になる。   This makes it possible to prevent the data stored in the USB function as the external storage medium from being destroyed by writing from a plurality of USB hosts.

また、前記複数のUSBホストは、第1のUSBホストと第2のUSBホストを含み、前記共有アクセスを行うことを可能にする機能は、第1のUSBホストが発生したUSBファンクションの外部記憶媒体に対する第1の書き込み要求の対応処理中に、第2のUSBホストから当該外部記憶媒体に対する第2の書き込み要求が発生した場合に、第2のUSBホストに対して第2の書き込み要求の拒否を通知し、第1の書き込み要求の対応処理を継続する機能を含むものとなっている。   In addition, the plurality of USB hosts include a first USB host and a second USB host, and a function that enables the shared access is an external storage medium of a USB function generated by the first USB host. When the second USB host issues a second write request to the external storage medium during the process of handling the first write request to the second USB host, the second USB host rejects the second write request. It includes a function of notifying and continuing the processing corresponding to the first write request.

なお、USBファンクションの外部記憶媒体としての機能は、例えばメモリカードなどによって実現されるものである。これによって、従来、USBケーブルを再接続する毎に必要となっていたメモリカードの初期化処理などが削減でき、時間的な効率が向上し、省電力化を図ることが可能になる。   The function of the USB function as an external storage medium is realized by, for example, a memory card. As a result, it is possible to reduce the initialization processing of the memory card and the like that are conventionally required every time the USB cable is reconnected, improve time efficiency, and save power.

また、本発明によるUSBストレージシステムは、複数のUSBホストと、外部記憶媒体としての機能を含んだUSBファンクションとを有し、前記USBファンクションは、複数のUSBホストが接続される複数のUSBコネクタ端子と、複数のUSBホストとの間でUSBプロトコルに基づくデータ転送を行う機能と、USBファンクションの外部記憶媒体との間で所定のプロトコルに基づくデータ転送を行う機能と、USBプロトコルと前記所定のプロトコルとを相互に変換する機能とを備え、さらに、複数のUSBホストの中の一つのUSBホストがUSBファンクションの外部記憶媒体に対して書き込みの処理を実行しいている間は、他のUSBホストから発生した書き込み要求を拒否する機能を備えるものとなっている。   Also, the USB storage system according to the present invention has a plurality of USB hosts and a USB function including a function as an external storage medium, and the USB function is a plurality of USB connector terminals to which the plurality of USB hosts are connected. And a function of performing data transfer based on the USB protocol with a plurality of USB hosts, a function of performing data transfer based on a predetermined protocol between the USB function and an external storage medium, a USB protocol and the predetermined protocol. And a function for mutually converting and, while one USB host of the plurality of USB hosts is executing the writing process to the external storage medium of the USB function, the other USB hosts are It has a function of rejecting a write request that has occurred.

ここで、前記書き込み要求を拒否する機能は、USBファンクションが備えたコンピュータによるプログラム処理によって実現され、このプログラム処理は、前記一つのUSBホストからの前記外部記憶媒体に対する書き込み要求を受け付けた際にオペレーションフラグを設定するステップと、この受け付けた書き込み要求の処理を終了した際にオペレーションフラグを解除するステップと、オペレーションフラグが設定されている間に前記他のUSBホストからの書き込み要求が発生した際に、この発生した書き込み要求の拒否を前記他のUSBホストに対して通知するステップとを含むものとなっている。すなわち、ソフトウエアに前記書き込み要求を拒否する機能を追加することで、複数のUSBホストによる外部記憶媒体の共有を容易に実現することが可能になる。なお、前記書き込み要求の拒否を通知するステップは、例えば、リクエストセンスコマンドのデータを用いて行うことができる。   Here, the function of rejecting the write request is realized by a program process by a computer provided with a USB function, and this program process is performed when a write request to the external storage medium from the one USB host is accepted. A step of setting a flag, a step of releasing the operation flag when the processing of the received write request is completed, and a step of writing a request from the other USB host while the operation flag is set. And a step of notifying the other USB host of the refusal of the generated write request. That is, by adding the function of rejecting the write request to the software, it becomes possible to easily realize the sharing of the external storage medium by the plurality of USB hosts. The step of notifying the refusal of the write request can be performed using the data of the request sense command, for example.

また、本発明のUSBストレージデバイスは、複数のUSBホストに接続される複数のUSBコネクタ端子と、外部記憶メディアに接続されるメディアコネクタ端子とを備え、USBプロトコルに基づいて前記複数のUSBホストとの間のデータ転送が可能なものであり、そして、前記複数のUSBコネクタ端子に複数のUSBホストが接続され、なおかつ前記メディアコネクタ端子に外部記憶メディアが接続された状態で、複数のUSBホストが外部記憶メディアに対して共有アクセスを行うことを可能にする機能を有するものとなっている。   The USB storage device of the present invention includes a plurality of USB connector terminals connected to a plurality of USB hosts and a media connector terminal connected to an external storage medium, and the plurality of USB hosts based on the USB protocol. Between the plurality of USB hosts are connected to the plurality of USB connector terminals, and the plurality of USB hosts are connected to the media connector terminal with an external storage medium. It has a function that enables shared access to an external storage medium.

なお、前記外部記憶メディアとしては、例えばメモリカードが挙げられる。また、前記USBストレージデバイスは、前記メディアコネクタ端子を複数備え、この複数のメディアコネクタ端子に対して、同種類または異種類の複数のメモリカードが接続される構成にしてもよい。また、前記USBストレージデバイスに、前記複数のUSBコネクタ端子と前記複数のメディアコネクタ端子との間の接続を任意に設定可能にするブリッジ機能を備えることも可能である。   A memory card is an example of the external storage medium. The USB storage device may include a plurality of the media connector terminals, and a plurality of memory cards of the same type or different types may be connected to the plurality of media connector terminals. Further, the USB storage device can also be provided with a bridge function that can arbitrarily set a connection between the plurality of USB connector terminals and the plurality of media connector terminals.

本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。   The effects obtained by the typical ones of the inventions disclosed in the present application will be briefly described as follows.

外部記憶媒体としての機能を備えたUSBファンクション内に、複数のUSBホストによる前記外部記憶媒体の共有アクセスを可能にする機能を設けることで、複数のUSBホストによって前記外部記憶媒体を使用する際の時間的な効率を向上されることが可能になり、また、省電力化を図ることが可能になる。   By providing a function that enables shared access of the external storage medium by a plurality of USB hosts in a USB function having a function as an external storage medium, it is possible to use the external storage medium by a plurality of USB hosts. The time efficiency can be improved, and the power consumption can be saved.

本発明の一実施の形態によるUSBストレージシステムにおいて、そのシステム構成の一例を示す概略図である。1 is a schematic diagram showing an example of a system configuration of a USB storage system according to an embodiment of the present invention. 図1のUSBストレージシステムにおいて、USBホストの論理構成の一例を示す図である。FIG. 2 is a diagram showing an example of a logical configuration of a USB host in the USB storage system of FIG. 1. 図1のUSBストレージシステムにおいて、USBリーダライタの論理構成の一例を示す図である。FIG. 3 is a diagram showing an example of a logical configuration of a USB reader/writer in the USB storage system of FIG. 1. 図1のUSBストレージシステムにおいて、USBリーダライタの外形の一例を示す斜視図である。FIG. 2 is a perspective view showing an example of an outer shape of a USB reader/writer in the USB storage system of FIG. 1. 図3のUSBリーダライタにおいて、その動作概要の一例を示す説明図である。It is explanatory drawing which shows an example of the operation|movement outline|summary in the USB reader/writer of FIG. 図3のUSBリーダライタにおいて、インタフェースソフトの処理の一例を示す処理フロー図である。FIG. 4 is a processing flow chart showing an example of processing of interface software in the USB reader/writer of FIG. 3. 図1のシステム構成において、その動作の一例を説明する処理フロー図である。FIG. 3 is a process flow diagram illustrating an example of the operation in the system configuration of FIG. 1. 本発明の一実施の形態によるUSBストレージシステムにおいて、図1を拡張したシステム構成の一例を示す概略図である。FIG. 2 is a schematic diagram showing an example of a system configuration obtained by expanding FIG. 1 in the USB storage system according to the embodiment of the present invention. 本発明の一実施の形態によるUSBストレージシステムにおいて、複数の外部メディアを複数のUSBホストで共有可能にする構成の一例を示す概略図である。1 is a schematic diagram showing an example of a configuration in which a plurality of external media can be shared by a plurality of USB hosts in a USB storage system according to an embodiment of the present invention. 本発明の前提として検討した技術のUSBストレージシステムにおいて、その構成の一例を示す概略図であり、(a)〜(c)は、それぞれ異なる構成例を示すものである。FIG. 1 is a schematic diagram showing an example of the configuration of a USB storage system of the technique studied as the premise of the present invention, and FIGS. 本発明の前提として検討した技術のUSBストレージシステムにおいて、特定の外部メディアを複数のUSBホストPCで使用する場合の作業内容を説明するための図である。FIG. 6 is a diagram for explaining the work contents when a specific external medium is used by a plurality of USB host PCs in the USB storage system of the technique studied as the premise of the present invention.

以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In all the drawings for explaining the embodiments, the same members are denoted by the same reference symbols in principle and their repeated description is omitted.

図1は、本発明の一実施の形態によるUSBストレージシステムにおいて、そのシステム構成の一例を示す概略図である。図1に示すUSBストレージシステムは、例えばUSBホスト[1]10aおよびUSBホスト[2]10bからなる複数のUSBホストと、複数のUSBホストにそれぞれUSBケーブル12a,12bで接続され、USBファンクションとなるUSBリーダライタ11から構成される。USBホストは、その代表的なものにパーソナルコンピュータなどが挙げられる。   FIG. 1 is a schematic diagram showing an example of the system configuration of a USB storage system according to an embodiment of the present invention. The USB storage system shown in FIG. 1 is, for example, a plurality of USB hosts including a USB host [1] 10a and a USB host [2] 10b, and is connected to the plurality of USB hosts by USB cables 12a and 12b, respectively, and becomes a USB function. It is composed of a USB reader/writer 11. A typical example of the USB host is a personal computer.

USBリーダライタ11は、外部記憶媒体としての機能を備えたUSBストレージデバイスであり、例えば、メモリカードやフロッピーディスクなどの外部メディア(外部記憶メディア)13を接続することが可能となっている。なお、図1において、USBホストは3台以上でも適用可能であるが、簡略化のため以降では、USBホストは2台であるとして説明する。   The USB reader/writer 11 is a USB storage device having a function as an external storage medium, and can be connected to an external medium (external storage medium) 13 such as a memory card or a floppy disk. In FIG. 1, three or more USB hosts are also applicable, but in the following description, there are two USB hosts for simplification.

USBホスト[1]10aとUSBホスト[2]10bは、それぞれ、図2に示すような構成となっている。図2は、図1のUSBストレージシステムにおいて、USBホストの論理構成の一例を示す図である。図2に示すUSBホストは、上位階層から下位階層に向けてアプリケーション層と、システムソフトウエア層と、ハードウエア層が設けられている。   Each of the USB host [1] 10a and the USB host [2] 10b has a configuration shown in FIG. FIG. 2 is a diagram showing an example of a logical configuration of a USB host in the USB storage system of FIG. The USB host shown in FIG. 2 is provided with an application layer, a system software layer, and a hardware layer from the upper layer to the lower layer.

アプリケーション層は、アプリケーションソフトウエア20を含んでいる。アプリケーションソフトウエア20の一般的な例としては、例えばフォルダやファイルの操作を行う機能を備えたエクスプローラや、音楽データの再生機能等を備えたオーディオプレーヤーなどが挙げられる。USB転送を行う際、アプリケーション層は、システムソフトウエア層との間でデータの送受信を行う。   The application layer includes application software 20. Typical examples of the application software 20 include, for example, an explorer having a function of operating folders and files, an audio player having a music data reproducing function, and the like. When performing USB transfer, the application layer transmits/receives data to/from the system software layer.

システムソフトウエア層は、ハードウエア層を管理し、アプリケーション層又はハードウエア層との間の送受信データに対して、USBプロトコルに基づく変換などを行う。そして、このような処理を行うソフトウエアとして、システムソフトウエア層は、USBマスストレージクラスドライバ21aと、USBバスドライバ21bとを含んでいる。   The system software layer manages the hardware layer and performs conversion and the like based on the USB protocol with respect to transmission/reception data with the application layer or the hardware layer. Then, as software for performing such processing, the system software layer includes a USB mass storage class driver 21a and a USB bus driver 21b.

USBマスストレージクラスドライバ21aは、USBマスストレージクラスという規格で定義されたコマンドトランスポート、データトランスポート、ステータストランスポートの管理などを行う。USBバスドライバ21bは、トランザクションの管理などUSBの各クラスに共通な処理を行う。   The USB mass storage class driver 21a manages a command transport, a data transport, a status transport defined by the standard called the USB mass storage class. The USB bus driver 21b performs processing common to each USB class, such as transaction management.

ハードウエア層は、USBホストコントローラ22を含んでいる。USBホストコントローラ22は、USBケーブル23を介してUSBリーダライタと電気的に接続され、USBリーダライタの接続検出やUSBリーダライタとの間のパケット送受信といったUSBホストの電気的信号の処理を行うハードウエアである。   The hardware layer includes the USB host controller 22. The USB host controller 22 is electrically connected to the USB reader/writer through the USB cable 23, and is a hardware that processes electrical signals of the USB host such as connection detection of the USB reader/writer and packet transmission/reception with the USB reader/writer. It is wear.

一方、USBリーダライタ11は、図3および図4に示すような構成となっている。図3は、図1のUSBストレージシステムにおいて、USBリーダライタの論理構成の一例を示す図である。図4は、図1のUSBストレージシステムにおいて、USBリーダライタの外形の一例を示す斜視図である。   On the other hand, the USB reader/writer 11 has a configuration as shown in FIGS. 3 and 4. FIG. 3 is a diagram showing an example of a logical configuration of a USB reader/writer in the USB storage system of FIG. FIG. 4 is a perspective view showing an example of the outer shape of a USB reader/writer in the USB storage system of FIG.

図3に示すUSBリーダライタは、例えば、USBファンクションモジュール[1](以下、USBモジュール[1])30およびUSBファンクションモジュール[2](以下、USBモジュール[2])31からなる2個のUSBファンクションモジュールと、外部メディアモジュール32と、インタフェースソフトウエア(以下、インタフェースソフト)33などを含んでいる。   The USB reader/writer shown in FIG. 3 is, for example, two USBs including a USB function module [1] (hereinafter, USB module [1]) 30 and a USB function module [2] (hereinafter, USB module [2]) 31. It includes a function module, an external media module 32, interface software (hereinafter, interface software) 33, and the like.

USBモジュール[1]30は、ソフトウエアであるUSBマスストレージクラスファームウエア[1]30aと、ハードウエアであるUSBファンクションコントローラ[1]30bを含み、USBケーブル12aによってUSBホスト[1]などに接続される。USBモジュール[2]31も同様に、USBマスストレージクラスファームウエア[2]31aとUSBファンクションコントローラ[2]31bを含み、USBケーブル12bによってUSBホスト[2]などに接続される。外部メディアモジュール32は、ソフトウエアである外部メディアファームウエア32aと、ハードウエアである外部メディアホストコントローラ32bを含み、外部メディア13に接続される。   The USB module [1] 30 includes a USB mass storage class firmware [1] 30a which is software and a USB function controller [1] 30b which is hardware, and is connected to a USB host [1] or the like by a USB cable 12a. To be done. Similarly, the USB module [2] 31 includes the USB mass storage class firmware [2] 31a and the USB function controller [2] 31b, and is connected to the USB host [2] or the like by the USB cable 12b. The external media module 32 includes an external media firmware 32a, which is software, and an external media host controller 32b, which is hardware, and is connected to the external media 13.

また、これらの構成は、USBホストの論理構成と同様に、アプリケーション層と、システムソフトウエア層と、ハードウエア層に分けることができる。このような論理構成で分類すると、アプリケーション層には、インタフェースソフト33が含まれる。インタフェースソフト33は、USBモジュール[1]30,[2]31と外部メディアモジュール32との間のデータ転送の制御などを担うソフトウエアである。   Further, these configurations can be divided into an application layer, a system software layer, and a hardware layer, like the logical configuration of the USB host. When classified by such a logical configuration, the interface layer 33 is included in the application layer. The interface software 33 is software responsible for controlling data transfer between the USB modules [1] 30, [2] 31 and the external media module 32.

そして、インタフェースソフト33は、更に、一方のUSBモジュールから外部メディア13への書き込み要求の対応処理中に、他方のUSBモジュールから書き込み要求が発生した場合の対応処理などを行う機能を備えている。なお、インタフェースソフト33は、例えば、USBリーダライタが備えたROM等に格納され、インタフェースソフト33の実行は、例えば、USBリーダライタが備えたマイクロコンピュータおよびRAM等によって行われる。また、後述するシステムソフトウエア層の各種ソフトウエアもこれと同様である。   Then, the interface software 33 is further provided with a function of performing a corresponding process when a write request is issued from the other USB module during the response process of the write request from the one USB module to the external medium 13. The interface software 33 is stored in, for example, a ROM or the like included in the USB reader/writer, and the interface software 33 is executed by, for example, a microcomputer and a RAM included in the USB reader/writer. Also, various kinds of software of the system software layer described later are the same.

システムソフトウエア層には、USBマスストレージクラスファームウエア[1]30a,[2]31aと、外部メディアファームウエア32aとが含まれる。USBマスストレージクラスファームウエア[1]30a(または[2]31a)は、USBファンクションコントローラ[1]30b(または[2]31b)の制御や、USBマスストレージクラスに固有の処理などを行う。外部メディアファームウエア32aは、外部メディア13のトランザクション管理や外部メディアホストコントローラ32bの制御などを行う。   The system software layer includes USB mass storage class firmware [1] 30a, [2] 31a and external media firmware 32a. The USB mass storage class firmware [1] 30a (or [2] 31a) controls the USB function controller [1] 30b (or [2] 31b) and performs processing unique to the USB mass storage class. The external media firmware 32a manages transactions of the external media 13 and controls the external media host controller 32b.

ハードウエア層には、USBファンクションコントローラ[1]30b,[2]31bと、外部メディアホストコントローラ32bとが含まれる。USBファンクションコントローラ[1]30b,[2]31bは、パケット送受信などUSBファンクションの電気的信号の処理を行う。外部メディアホストコントローラ32bは、外部メディア13へのコマンド送信、外部メディア13からのレスポンス受信、外部メディア13とのデータ送受信などといった電気的信号の処理を行う。   The hardware layer includes USB function controllers [1] 30b and [2] 31b and an external media host controller 32b. The USB function controllers [1] 30b and [2] 31b perform processing of USB function electrical signals such as packet transmission and reception. The external media host controller 32b performs processing of electrical signals such as command transmission to the external medium 13, response reception from the external medium 13, and data transmission/reception with the external medium 13.

そして、このようなUSBリーダライタは、例えば図4に示すような外形を備えている。図4に示すUSBリーダライタは、例えば、筐体40に、2つのUSBコネクタ[1]41a,[2]41bと、外部メディアコネクタ(外部メディアスロット)42が設けられている。USBコネクタ[1]41a,[2]41bは、USBファンクション用のコネクタ形状であり、それぞれ、USBケーブル12a,12bによってUSBホスト[1],[2]に接続される。また、外部メディアコネクタ42には、メモリカードまたはフロッピーディスクといった外部メディアが挿入および接続される。   Then, such a USB reader/writer has an outer shape as shown in FIG. 4, for example. In the USB reader/writer shown in FIG. 4, for example, a housing 40 is provided with two USB connectors [1] 41a and [2] 41b and an external media connector (external media slot) 42. The USB connectors [1] 41a and [2] 41b are connector shapes for USB functions, and are connected to the USB hosts [1] and [2] by USB cables 12a and 12b, respectively. An external medium such as a memory card or a floppy disk is inserted and connected to the external medium connector 42.

以上のようなシステム構成において、本発明の特徴は、USBホスト[1]とUSBホスト[2]による外部メディアの共有アクセスを実現することである。そして、この実現のために、図3で述べたように、USBリーダライタに複数のUSBモジュールを設け、更に、インタフェースソフトを用いて、複数のUSBモジュールから同時に処理要求が発生した場合の調停機能を実現させている。以下、このインタフェースソフトの調停機能の詳細について説明する。   In the system configuration as described above, a feature of the present invention is to realize shared access of external media by the USB host [1] and the USB host [2]. In order to realize this, as described with reference to FIG. 3, a plurality of USB modules are provided in the USB reader/writer, and the arbitration function when the processing requests are simultaneously issued from the plurality of USB modules by using the interface software. Has been realized. The details of the arbitration function of this interface software will be described below.

USBホストからUSBリーダライタに向けた要求には、外部メディアのメモリにデータを書き込む要求(以下、書き込み要求)、外部メディアのメモリからデータを読み出す要求(以下、読み出し要求)、及びUSBリーダライタの状態や情報を取得する要求(以下、状態取得要求)がある。   The request from the USB host to the USB reader/writer includes a request to write data in the memory of the external medium (hereinafter, write request), a request to read data from the memory of the external medium (hereinafter, read request), and a request of the USB reader/writer. There is a request for acquiring the status and information (hereinafter, status acquisition request).

USBホストが2台になっても、USBホストの要求、及び要求に対するUSBリーダライタの対応処理が時間的に重ならない場合や、重なっても外部メディアのメモリ内容を変更しない場合は特に問題は発生しない。つまり、読み出し要求と状態取得要求では、USBリーダライタのインタフェースソフトで互いの要求や外部メディアから読み出したデータが重ならないような排他制御をすればよく、外部メディアの記憶データが破壊されるなどの重大な問題は発生しない。USBホストが2台となり問題が発生するのは、USBリーダライタが、あるUSBホストからの書き込み要求処理中に、他のUSBホストから書き込み要求が発生した場合である。そこで、例えば、次のような動作によりこの問題を回避する。   Even if there are two USB hosts, there will be a particular problem if the requests from the USB host and the response processing by the USB reader/writer for the requests do not overlap in time, or if the contents of the external media memory are not changed even if they overlap. do not do. In other words, for the read request and the status acquisition request, the interface software of the USB reader/writer may perform exclusive control so that mutual requests and data read from the external medium do not overlap, and the stored data in the external medium may be destroyed. No serious problems occur. The problem arises when there are two USB hosts, and the USB reader/writer issues a write request from another USB host during a write request process from a certain USB host. Therefore, for example, the following operation avoids this problem.

USBリーダライタは、あるUSBホスト(USBホスト[2]とする)からの書き込み要求の対応処理中に、他のUSBホスト(USBホスト[1]とする)から書き込み要求が送られてきた場合は、USBホスト[1]の要求を拒否し、USBホスト[2]からの書き込み要求の対応処理を継続する。つまり、図5に示すような動作概要となる。   When the USB reader/writer receives a write request from another USB host (referred to as USB host [1]) during the process of responding to the write request from a certain USB host (referred to as USB host [2]). , Rejects the request from the USB host [1], and continues the processing for handling the write request from the USB host [2]. That is, the operation outline is as shown in FIG.

図5は、図3のUSBリーダライタにおいて、その動作概要の一例を示す説明図である。図5において、USBリーダライタ内のインタフェースソフト33は、USBモジュール[2]31から書き込み要求[2]を受信すると、受付応答をUSBモジュール[2]31に返すとともに、外部メディアモジュール32に書き込み要求[2]に対応するデータを送る。そして、このUSBモジュール[2]31からの書き込み要求対応処理中に、USBモジュール[1]30から書き込み要求を受信すると、インタフェースソフト33は、USBモジュール[1]30に対し、仮想的に外部メディア13がオペレーション状態であることを伝達し、USBホスト[1]からの要求を拒否する。   FIG. 5 is an explanatory diagram showing an example of an operation outline of the USB reader/writer of FIG. In FIG. 5, when the interface software 33 in the USB reader/writer receives the write request [2] from the USB module [2] 31, it returns an acceptance response to the USB module [2] 31 and requests the external media module 32 to write. Send data corresponding to [2]. Then, when a write request is received from the USB module [1] 30 during the write request handling process from the USB module [2] 31, the interface software 33 virtually sends an external medium to the USB module [1] 30. 13 communicates that it is in the operating state, and rejects the request from the USB host [1].

この動作概要は、より具体的には、例えば図6に示すような処理フローによって実現される。図6は、図3のUSBリーダライタにおいて、インタフェースソフトの処理の一例を示す処理フロー図である。まず、インタフェースソフト33は、外部メディア13の接続後、あるいはUSBケーブル12a(または12b)の接続後に起動し(S601)、イベント待ち状態となる。インタフェースソフト33が受信するイベントには、USBモジュール(USBモジュール[1]30またはUSBモジュール[2]31)からのリード要求とライト要求、及び外部メディアモジュール32からのリード完了通知(インタフェースソフト33のリード要求に対応したリード完了通知)とライト完了通知(インタフェースソフト33のライト要求に対応したライト完了通知)がある。   More specifically, this operation outline is realized by a processing flow as shown in FIG. 6, for example. FIG. 6 is a process flow chart showing an example of the process of the interface software in the USB reader/writer of FIG. First, the interface software 33 is activated after connecting the external medium 13 or after connecting the USB cable 12a (or 12b) (S601), and enters an event waiting state. The events received by the interface software 33 include a read request and a write request from the USB module (USB module [1] 30 or USB module [2] 31) and a read completion notification from the external media module 32 (of the interface software 33). There are a read completion notification corresponding to the read request) and a write completion notification (write completion notification corresponding to the write request of the interface software 33).

イベント待ち状態で、USBモジュール[1]30(または[2]31)からリード要求があると(S602)、そのリード要求の内容を解析しリード識別情報を作成する(S603)。リード識別情報は、複数のリード要求が重なったとき、それらのリード要求を識別するのに使用する。リード識別情報は、リード要求ID、要求先のUSBモジュールを識別するUSBモジュール番号、リードアドレス、リードサイズから構成される。リード識別情報作成後、外部メディアモジュール32にリード要求を行う(S604)。次いで、イベント待ち状態に移行する。   When there is a read request from the USB module [1] 30 (or [2] 31) in the event waiting state (S602), the content of the read request is analyzed and read identification information is created (S603). The read identification information is used to identify the read requests when a plurality of read requests overlap. The read identification information includes a read request ID, a USB module number for identifying the USB module of the request destination, a read address, and a read size. After creating the read identification information, a read request is issued to the external media module 32 (S604). Then, it shifts to the event waiting state.

イベント待ち状態で、USBモジュール[1]30(または[2]31)からライト要求があると(S605)、オペレーション状態フラグがONであるか否かを判定する(S606)。オペレーション状態フラグは、外部メディア13への書き込み処理中であることを示すフラグで、外部メディア13への書き込み処理が重ならないように排他制御するのに使用し、初期値はOFFである。   When a write request is issued from the USB module [1] 30 (or [2] 31) in the event waiting state (S605), it is determined whether the operation state flag is ON (S606). The operation state flag is a flag indicating that the writing process to the external medium 13 is being performed, and is used for exclusive control so that the writing processes to the external medium 13 do not overlap, and the initial value is OFF.

オペレーション状態フラグがONであると、オペレーション状態通知を作成し、対応するUSBモジュール[1]30(または[2]31)に送信することで、書き込み要求を拒否する(S607)。一方、オペレーション状態フラグがOFFであると、オペレーション状態フラグをONにする(S608)。その後、外部メディアモジュール32にライト要求を行う(S609)。次いで、イベント待ち状態に移行する。   If the operation status flag is ON, an operation status notification is created and sent to the corresponding USB module [1] 30 (or [2] 31) to reject the write request (S607). On the other hand, if the operation state flag is OFF, the operation state flag is turned ON (S608). Then, a write request is made to the external media module 32 (S609). Then, it shifts to the event waiting state.

イベント待ち状態で、外部メディアモジュール32からリード完了通知があると(S610)、そのIDとリード識別情報を解析し(S611)、対応するUSBモジュール[1]30(または[2]31)に、対応するリードデータを送信する(S612)。次いで、イベント待ち状態に移行する。   When a read completion notification is given from the external media module 32 in the event waiting state (S610), the ID and read identification information are analyzed (S611), and the corresponding USB module [1] 30 (or [2] 31) The corresponding read data is transmitted (S612). Then, it shifts to the event waiting state.

イベント待ち状態で、外部メディアモジュール32からライト完了通知があると(S613)、オペレーション状態フラグをOFFにし、書き込み処理中であることを解除する(S614)。次いで、イベント待ち状態に移行する。   When the external media module 32 gives a write completion notification in the event waiting state (S613), the operation state flag is turned off to cancel the writing process (S614). Then, it shifts to the event waiting state.

イベント待ち状態で、外部メディア13の状態をチェックし(S615)、外部メディア13が取り外されていれば処理を終了する。また、取り外されていなければ、イベント待ち状態を継続する。   In the event waiting state, the state of the external medium 13 is checked (S615), and if the external medium 13 is removed, the process ends. If not removed, the event waiting state is continued.

以上、これまでに述べたようなシステム構成およびその動作等によって、複数のUSBホストで外部メディアを共有して使用することが可能となる。そして、これによって、例えば下記(1),(2)のような効果を得ることができる。   As described above, with the system configuration and the operation thereof described above, a plurality of USB hosts can share and use the external medium. As a result, the following effects (1) and (2) can be obtained.

(1)特定の外部メディアを複数のUSBホストで使用する際に、ユーザーがUSBケーブルを逐次接続するといった面倒な作業をする必要がなくなる。また、複数のUSBホストを接続しても、USBやメモリカードなどのプラグアンドプレイという特徴に対応したUSBリーダライタを実現できる。   (1) When a specific external medium is used by a plurality of USB hosts, the user does not have to perform the troublesome work of successively connecting the USB cables. Further, even if a plurality of USB hosts are connected, a USB reader/writer corresponding to the feature of plug and play such as USB and memory card can be realized.

(2)USBケーブルを逐次接続する必要がなくなり、USBのネットワークの再構成とSDメモリカードなどの外部メディアの再度の初期化が省略できる。その結果、時間的な効率が向上し、また、省電力化を図ることも可能となる。   (2) Since it is not necessary to successively connect the USB cable, reconfiguration of the USB network and reinitialization of an external medium such as an SD memory card can be omitted. As a result, it is possible to improve time efficiency and save power.

次に、図1のシステム全体としての動作の一例を図7を用いて説明する。図7は、図1のシステム構成において、その動作の一例を説明する処理フロー図である。図7においては、図1のUSBホスト[2]10bがデータ書き込み中に、USBホスト[1]10aがデータ書き込み要求をUSBリーダライタ11に送信した場合の処理を例として説明する。また、ここでは、一般的に知られているUSBマスストレージ規格に準じたデータ転送を行うものとする。なお、以下においては、図7内の処理番号に対応させて説明を行う。   Next, an example of the operation of the entire system of FIG. 1 will be described with reference to FIG. FIG. 7 is a process flow diagram for explaining an example of the operation in the system configuration of FIG. In FIG. 7, a process when the USB host [1] 10a transmits a data write request to the USB reader/writer 11 while the USB host [2] 10b of FIG. 1 is writing data will be described as an example. In addition, it is assumed here that data transfer is performed according to the generally known USB mass storage standard. In the following, description will be made in correspondence with the process numbers in FIG. 7.

(1)USBホスト[2]10bは、USBマスストレージクラスで定義されたライト[2]要求CBW(Command Block Wrapper)をUSBリーダライタ11に発行する。なお、CBWとは、USBマスストレージクラスで定義され、USBホストがUSBファンクションに要求するコマンドやそれに関連した内容を格納するパケットである。   (1) The USB host [2] 10b issues a write [2] request CBW (Command Block Wrapper) defined in the USB mass storage class to the USB reader/writer 11. The CBW is a packet that is defined by the USB mass storage class and stores a command requested by the USB host to the USB function and the contents related thereto.

(2)USBリーダライタ11は、ライト[2]要求CBWを受信すると、ライトアドレスやデータ数を解析する。また、ライト[2]要求CBWを外部メディア13固有の命令形式に変換する。すなわち、プロトコル変換を行う。   (2) Upon receiving the write [2] request CBW, the USB reader/writer 11 analyzes the write address and the number of data. Also, the write [2] request CBW is converted into a command format unique to the external medium 13. That is, protocol conversion is performed.

(3)変換完了後、USBリーダライタ11は、外部メディア13に、前記固有の命令形式に変換されたライト[2]コマンドを発行する。   (3) After the conversion is completed, the USB reader/writer 11 issues the write [2] command converted to the unique command format to the external medium 13.

(4)外部メディア13は、ライト[2]コマンドを受信すると、ライトアドレスやデータ数を解析する。   (4) Upon receiving the write [2] command, the external medium 13 analyzes the write address and the number of data.

(5)USBホスト[2]10bは、USBマスストレージクラスで定義された形式でライト[2]データを、USBリーダライタ11に送信する。   (5) The USB host [2] 10b transmits the write [2] data to the USB reader/writer 11 in the format defined by the USB mass storage class.

(6)USBリーダライタ11は、ライト[2]データを受信すると、ライト[2]データを外部メディア13固有のデータ形式に変換する。すなわち、プロトコル変換を行う。   (6) Upon receiving the write [2] data, the USB reader/writer 11 converts the write [2] data into a data format specific to the external medium 13. That is, protocol conversion is performed.

(7)変換完了後、USBリーダライタ11は、外部メディア13に対し、変換されたライト[2]データを送信する。   (7) After the conversion is completed, the USB reader/writer 11 transmits the converted write [2] data to the external medium 13.

(8)外部メディア13は、変換されたライト[2]データを受信するとそれを自身のメモリに書き込む。   (8) When the external medium 13 receives the converted write [2] data, it writes it in its own memory.

(1’)ここで、USBホスト[1]10aは、外部メディア13のメモリにデータを書き込むため、USBマスストレージクラスで定義されたライト[1]CBWをUSBリーダライタ11に発行する。   (1') Here, the USB host [1] 10a issues a write [1] CBW defined in the USB mass storage class to the USB reader/writer 11 in order to write data in the memory of the external medium 13.

(2’)USBリーダライタ11は、ライト[1]要求CBWを受信するが、USBホスト[2]10bのライト[2]要求の対応処理中のため、USBホスト[1]10aに対してライト[1]要求の拒否を行う。すなわち、前述したインタフェースソフト33の処理によって、外部メディア13が仮想的にオペレーション状態であることを通知するオペレーション状態通知を作成する。   (2′) The USB reader/writer 11 receives the write [1] request CBW, but since the USB host [2] 10b is in the process of responding to the write [2] request, it writes to the USB host [1] 10a. [1] Reject the request. That is, by the processing of the interface software 33 described above, an operation state notification for notifying that the external medium 13 is virtually in the operation state is created.

ここでは、オペレーション状態通知の作成方法の一例として、USBマスストレージクラスのSCSIコマンドで定義されたリクエストセンス(Request Sense)コマンドのデータの中で、ASC(Additional Sense Code)に04’hを、ASCQ(Additional Sense Code Qualifier)に07’hを設定する。なお、リクエストセンスコマンドのデータとは、USBホストがUSBリーダライタに対してリクエストセンスコマンドを発生した際に、ホストに向けて返信されるデータである。   Here, as an example of a method of creating the operation status notification, in the data of the request sense (Request Sense) command defined by the SCSI command of the USB mass storage class, 04'h is set to ASC (Additional Sense Code) and ASCQ is set. 07'h is set in (Additional Sense Code Qualifier). The request sense command data is data that is returned to the host when the USB host issues a request sense command to the USB reader/writer.

(3’)オペレーション状態通知作成完了後、USBリーダライタ11は、当該オペレーション状態通知(ここではリクエストセンスコマンドのデータ)をUSBホスト[1]10aに対して送信する。   (3') After the operation status notification is created, the USB reader/writer 11 sends the operation status notification (here, the data of the request sense command) to the USB host [1] 10a.

(4’)USBホスト[1]10aは、オペレーション状態通知を受信すると、外部メディア13のメモリにはデータを書き込めない状態であることを認識し、上位のアプリケーション等に通知する。   (4') When the USB host [1] 10a receives the operation status notification, it recognizes that data cannot be written in the memory of the external medium 13, and notifies the upper application or the like.

(9)外部メディア13は、変換されたライト[2]データの書き込みが全て完了すると、完了したことをUSBリーダライタ11に通知する。   (9) When the writing of the converted write [2] data is all completed, the external medium 13 notifies the USB reader/writer 11 of the completion.

(10)USBリーダライタ11は、完了通知を受信すると、それをライト[2]完了CSW(Command Status Wrapper)に変換する。なお、CSWとは、USBマスストレージクラスで定義され、USBホストがUSBファンクションからCBWに対する実行結果を取得する際に使用するパケットである。   (10) Upon receiving the completion notification, the USB reader/writer 11 converts the completion notification into a write [2] completion CSW (Command Status Wrapper). The CSW is a packet defined by the USB mass storage class and used when the USB host acquires the execution result for the CBW from the USB function.

(11)変換完了後、USBリーダライタ11は、USBホスト[2]10bにライト[2]完了CSWを送信する。   (11) After the conversion is completed, the USB reader/writer 11 transmits the write [2] completion CSW to the USB host [2] 10b.

(12)USBホスト[2]10bは、ライト[2]完了CSWを受信すると、ライト動作が終了したことを認識し、ライト動作が完了する。   (12) When the USB host [2] 10b receives the write [2] completion CSW, the USB host [2] 10b recognizes that the write operation is completed, and the write operation is completed.

以上のようなシステム構成および動作によって、USBマスストレージ規格に準じたデータ転送により、外部メディアを複数のホストによって共有することが可能になる。   With the system configuration and operation as described above, the external medium can be shared by a plurality of hosts by data transfer conforming to the USB mass storage standard.

ところで、これまでの説明においては、1つの外部メディアを複数のUSBホストで共有する場合を例としたが、これに限らず、図8に示すように複数の外部メディアを複数のUSBホストで共有することも可能である。   By the way, in the above description, the case where one external medium is shared by a plurality of USB hosts is taken as an example. It is also possible to do so.

図8は、本発明の一実施の形態によるUSBストレージシステムにおいて、図1を拡張したシステム構成の一例を示す概略図である。図8においては、USBリーダライタ82にN台のUSBホスト[1]80a,[2]80b,…,[N]80nが接続され、更に、USBリーダライタ82には、N個の外部メディア[1]83a,[2]83b,…,[N]83nが挿入されている。   FIG. 8 is a schematic diagram showing an example of a system configuration obtained by expanding FIG. 1 in the USB storage system according to the embodiment of the present invention. 8, N USB hosts [1] 80a, [2] 80b,..., [N] 80n are connected to the USB reader/writer 82, and the USB reader/writer 82 further includes N external media [[ 1] 83a, [2] 83b,..., [N] 83n are inserted.

通常のUBSストレージシステムにおいては、図10で述べたように1台のUSBホストから異種または同種のN個の外部メディアにアクセスすることが可能となっている。したがって、USBリーダライタ82に対してN台のUSBホストを接続すると、CFカード、SDメモリカードおよびメモリースティックといった異種のN個の外部メディアをN台のUSBホストで共有することが可能になる。また、勿論、同種のN個の外部メディアでも同様である。これによって、通常のUBSストレージシステムと比較して、接続作業および初期設定動作などの効率をN倍化することが可能になる。   In a normal UBS storage system, it is possible to access N external media of different types or the same type from one USB host as described in FIG. Therefore, when N USB hosts are connected to the USB reader/writer 82, N different types of external media such as CF cards, SD memory cards, and memory sticks can be shared by the N USB hosts. Further, of course, the same applies to N external media of the same type. This makes it possible to increase the efficiency of connection work and initial setting operation N times as compared with a normal UBS storage system.

また、図9に示すように、USBリーダライタ内にブリッジ機能を加えることによって、複数の外部メディアを複数のUSBホストで共有することも可能である。図9は、本発明の一実施の形態によるUSBストレージシステムにおいて、複数の外部メディアを複数のUSBホストで共有可能にする構成の一例を示す概略図である。図9に示すUSBリーダライタは、例えば、複数のUSBコネクタ[1]90a,[2]90b,…,[N]90nと、複数の外部メディアコネクタ[1]91a,[2]91b,…,[N]91nとを備え、更にこれら複数のUSBコネクタ[1]90a〜[N]90nと複数の外部メディアコネクタ[1]91a〜[N]91nとの間の接続を任意に設定可能にするブリッジ機能92を有するものとなっている。   Further, as shown in FIG. 9, a plurality of external media can be shared by a plurality of USB hosts by adding a bridge function in the USB reader/writer. FIG. 9 is a schematic diagram showing an example of a configuration in which a plurality of external media can be shared by a plurality of USB hosts in the USB storage system according to the embodiment of the present invention. The USB reader/writer shown in FIG. 9 includes, for example, a plurality of USB connectors [1] 90a, [2] 90b,..., [N] 90n and a plurality of external media connectors [1] 91a, [2] 91b,. [N] 91n, and further, it is possible to arbitrarily set the connection between the plurality of USB connectors [1] 90a to [N] 90n and the plurality of external media connectors [1] 91a to [N] 91n. It has a bridge function 92.

このブリッジ機能92は、例えば、複数のUSBコネクタ[1]90a〜[N]90nと複数の外部メディアコネクタ[1]91a〜[N]91nのそれぞれに対してディップスイッチを設けたり、または、USBリーダライタ上のインタフェースソフト33に選択機能を付加することなどで実現可能となる。   The bridge function 92 is provided with, for example, a DIP switch for each of the plurality of USB connectors [1] 90a to [N] 90n and each of the plurality of external media connectors [1] 91a to [N] 91n, or the USB function. This can be realized by adding a selection function to the interface software 33 on the reader/writer.

このような構成を用いることで、USBホストと外部メディアとの接続を、1対1、1対N、N対1、またはN対N等のように任意に選択することが可能になる。また、別の観点として、例えば、1つの外部メディアを複数のUSBホストで共有する際に、従来において必要であったUSBケーブルの再接続作業をディップスイッチのON/OFF作業に置換することが可能となる。   By using such a configuration, it becomes possible to arbitrarily select the connection between the USB host and the external medium, such as 1:1, 1:N, N:1, or N:N. Further, as another point of view, for example, when one external medium is shared by a plurality of USB hosts, it is possible to replace the USB cable reconnection work, which was required in the past, with a DIP switch ON/OFF work. Becomes

以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。   Although the invention made by the inventor has been specifically described based on the embodiment, the invention is not limited to the embodiment, and various modifications can be made without departing from the scope of the invention. Needless to say.

本発明のUSBストレージシステムは、USBファンクションが、SDメモリカードおよびメモリスティック等の各種メモリカードに対応したUSBリーダライタである場合のシステムに適用して特に有益なものであり、さらに、これに限らずフロッピーディスクやハードディスクに対応したUSBリーダライタを備えたシステムに広く適用可能である。   The USB storage system of the present invention is particularly useful when applied to a system in which the USB function is a USB reader/writer compatible with various memory cards such as SD memory cards and memory sticks, and is not limited to this. Instead, it can be widely applied to a system including a USB reader/writer corresponding to a floppy disk or a hard disk.

Claims (11)

複数のUSBホストと、外部記憶媒体としての機能を含んだUSBファンクションとを有し、前記複数のUSBホストと前記USBファンクションとの間でUSBプロトコルに基づくデータ転送を行うUSBストレージシステムであって、
前記USBファンクションは、前記複数のUSBホストが前記USBファンクションに接続された状態で、前記複数のUSBホストが前記USBファンクションの前記外部記憶媒体に対して共有アクセスを行うことを可能にする機能を有することを特徴とするUSBストレージシステム。
A USB storage system having a plurality of USB hosts and a USB function including a function as an external storage medium, and performing data transfer based on a USB protocol between the plurality of USB hosts and the USB function,
The USB function has a function that enables the plurality of USB hosts to perform shared access to the external storage medium of the USB function while the plurality of USB hosts are connected to the USB function. USB storage system characterized in that.
請求項1記載のUSBストレージシステムにおいて、
前記共有アクセスを行うことを可能にする機能は、前記複数のUSBホストの中の一つのUSBホストが前記外部記憶媒体に対して書き込みの処理を実行している間は、前記複数のUSBホストの中の他のUSBホストから発生した書き込み要求を拒否する機能を含むことを特徴とするUSBストレージシステム。
The USB storage system according to claim 1,
The function that enables the shared access is performed by the plurality of USB hosts while one USB host among the plurality of USB hosts is executing the writing process to the external storage medium. USB storage system characterized by including a function of rejecting a write request generated from another USB host inside.
請求項1記載のUSBストレージシステムにおいて、
前記複数のUSBホストは、第1のUSBホストと第2のUSBホストを含み、
前記共有アクセスを行うことを可能にする機能は、前記第1のUSBホストが発生した前記外部記憶媒体に対する第1の書き込み要求の対応処理中に、前記第2のUSBホストから前記外部記憶媒体に対する第2の書き込み要求が発生した場合に、前記第2のUSBホストに対して前記第2の書き込み要求の拒否を通知し、前記第1の書き込み要求の対応処理を継続する機能を含むことを特徴とするUSBストレージシステム。
The USB storage system according to claim 1,
The plurality of USB hosts includes a first USB host and a second USB host,
The function that enables the shared access is performed from the second USB host to the external storage medium during the process of responding to the first write request for the external storage medium generated by the first USB host. When a second write request is generated, a function of notifying the second USB host of the refusal of the second write request and continuing the processing corresponding to the first write request is included. USB storage system.
請求項1〜3のいずれか1項に記載のUSBストレージシステムにおいて、
前記外部記憶媒体としての機能は、メモリカードによって実現されることを特徴とするUSBストレージシステム。
The USB storage system according to any one of claims 1 to 3,
A USB storage system, wherein the function as the external storage medium is realized by a memory card.
複数のUSBホストと、外部記憶媒体としての機能を含んだUSBファンクションとを有するUSBストレージシステムであって、
前記USBファンクションは、
前記複数のUSBホストが接続される複数のUSBコネクタ端子と、
前記複数のUSBホストとの間でUSBプロトコルに基づくデータ転送を行う機能と、
前記外部記憶媒体との間で所定のプロトコルに基づくデータ転送を行う機能と、
前記USBプロトコルと前記所定のプロトコルとを相互に変換する機能とを有し、
さらに、前記複数のUSBホストの中の一つのUSBホストが前記外部記憶媒体に対して書き込みの処理を実行しいている間は、前記複数のUSBホストの中の他のUSBホストから発生した書き込み要求を拒否する機能を備えることを特徴とするUSBストレージシステム。
A USB storage system having a plurality of USB hosts and a USB function including a function as an external storage medium,
The USB function is
A plurality of USB connector terminals to which the plurality of USB hosts are connected;
A function of performing data transfer based on the USB protocol with the plurality of USB hosts;
A function for performing data transfer based on a predetermined protocol with the external storage medium,
Having a function of mutually converting the USB protocol and the predetermined protocol,
Further, while one USB host of the plurality of USB hosts is executing a writing process to the external storage medium, a write request generated from another USB host of the plurality of USB hosts. A USB storage system having a function of rejecting.
請求項5記載のUSBストレージシステムにおいて、
前記書き込み要求を拒否する機能は、前記USBファンクションが備えたコンピュータによるプログラム処理によって実現され、
前記プログラム処理は、
前記一つのUSBホストからの前記外部記憶媒体に対する書き込み要求を受け付けた際にオペレーションフラグを設定するステップと、
前記受け付けた書き込み要求の処理を終了した際に前記オペレーションフラグを解除するステップと、
前記オペレーションフラグが設定されている間に前記他のUSBホストからの書き込み要求が発生した際に、前記発生した書き込み要求の拒否を前記他のUSBホストに対して通知するステップとを含むことを特徴とするUSBストレージシステム。
The USB storage system according to claim 5,
The function of rejecting the write request is realized by program processing by a computer provided with the USB function,
The program processing is
Setting an operation flag when a write request to the external storage medium from the one USB host is accepted;
Canceling the operation flag when the processing of the received write request is completed,
When a write request from the other USB host is generated while the operation flag is set, a step of notifying the other USB host of rejection of the generated write request. USB storage system.
請求項6記載のUSBストレージシステムにおいて、
前記書き込み要求の拒否を通知するステップは、リクエストセンスコマンドのデータを用いて行われることを特徴とするUSBストレージシステム。
The USB storage system according to claim 6,
The USB storage system, wherein the step of notifying the refusal of the write request is performed using data of a request sense command.
複数のUSBホストに接続される複数のUSBコネクタ端子と、外部記憶メディアに接続されるメディアコネクタ端子とを備え、USBプロトコルに基づいて前記複数のUSBホストとの間のデータ転送が可能なUSBストレージデバイスであって、
前記複数のUSBコネクタ端子に前記複数のUSBホストが接続され、なおかつ前記メディアコネクタ端子に前記外部記憶メディアが接続された状態で、前記複数のUSBホストが前記外部記憶メディアに対して共有アクセスを行うことを可能にする機能を有することを特徴とするUSBストレージデバイス。
A USB storage having a plurality of USB connector terminals connected to a plurality of USB hosts and a media connector terminal connected to an external storage medium, and capable of transferring data to and from the plurality of USB hosts based on a USB protocol. A device,
With the plurality of USB hosts connected to the plurality of USB connector terminals and the external storage medium connected to the media connector terminal, the plurality of USB hosts share access to the external storage medium. A USB storage device having a function that enables the above.
請求項8記載のUSBストレージデバイスにおいて、
前記外部記憶メディアは、メモリカードであることを特徴とするUSBストレージデバイス。
The USB storage device according to claim 8,
The USB storage device, wherein the external storage medium is a memory card.
請求項8記載のUSBストレージデバイスにおいて、
前記メディアコネクタ端子を複数備え、
前記複数のメディアコネクタ端子には、同種類または異種類の複数のメモリカードが接続されることを特徴とするUSBストレージデバイス。
The USB storage device according to claim 8,
A plurality of the media connector terminals,
A USB storage device, wherein a plurality of memory cards of the same type or different types are connected to the plurality of media connector terminals.
請求項10記載のUSBストレージデバイスにおいて、
前記複数のUSBコネクタ端子と前記複数のメディアコネクタ端子との間の接続を任意に設定可能にするブリッジ機能を有することを特徴とするUSBストレージデバイス。
The USB storage device according to claim 10,
A USB storage device having a bridging function that allows the connection between the plurality of USB connector terminals and the plurality of media connector terminals to be arbitrarily set.
JP2006539091A 2004-09-30 2004-09-30 USB storage system and USB storage device Pending JPWO2006038260A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2004/014357 WO2006038260A1 (en) 2004-09-30 2004-09-30 Usb storage system and usb storage device

Publications (1)

Publication Number Publication Date
JPWO2006038260A1 true JPWO2006038260A1 (en) 2008-07-31

Family

ID=36142351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006539091A Pending JPWO2006038260A1 (en) 2004-09-30 2004-09-30 USB storage system and USB storage device

Country Status (2)

Country Link
JP (1) JPWO2006038260A1 (en)
WO (1) WO2006038260A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011008402A (en) * 2009-06-24 2011-01-13 Canon Inc Information processing apparatus, method for controlling the same, and program

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6063146B2 (en) * 2012-04-27 2017-01-18 株式会社バッファローメモリ External storage device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05210642A (en) * 1992-01-31 1993-08-20 Sharp Corp Data processing system for utilizing shared file
JPH086890A (en) * 1994-06-23 1996-01-12 Fujitsu Ltd Input/output control system
JPH1131099A (en) * 1997-07-10 1999-02-02 Oki Business:Kk Data management method of database
JP2000194649A (en) * 1998-12-28 2000-07-14 Toshiba Corp Method and apparatus for electronic device connection
JP2003304368A (en) * 2002-04-09 2003-10-24 Canon Inc Record control apparatus and control method in the same
JP2004295407A (en) * 2003-03-26 2004-10-21 Olympus Corp Usb hub system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05210642A (en) * 1992-01-31 1993-08-20 Sharp Corp Data processing system for utilizing shared file
JPH086890A (en) * 1994-06-23 1996-01-12 Fujitsu Ltd Input/output control system
JPH1131099A (en) * 1997-07-10 1999-02-02 Oki Business:Kk Data management method of database
JP2000194649A (en) * 1998-12-28 2000-07-14 Toshiba Corp Method and apparatus for electronic device connection
JP2003304368A (en) * 2002-04-09 2003-10-24 Canon Inc Record control apparatus and control method in the same
JP2004295407A (en) * 2003-03-26 2004-10-21 Olympus Corp Usb hub system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011008402A (en) * 2009-06-24 2011-01-13 Canon Inc Information processing apparatus, method for controlling the same, and program

Also Published As

Publication number Publication date
WO2006038260A1 (en) 2006-04-13

Similar Documents

Publication Publication Date Title
JP4898056B2 (en) Method of communication between smart card and host station
US7739449B2 (en) Memory card authentication system, capacity switching-type memory card host device, capacity switching-type memory card, storage capacity setting method, and storage capacity setting program
US6941405B2 (en) System and method capable of offloading converter/controller-specific tasks to a system microprocessor
US7568053B2 (en) USB composite device, USB communication system, and USB communication method
US20030163628A1 (en) Method and related apparatus for controlling transmission interface between an external device and a computer system
US8135871B2 (en) Computer system and control method of the same
US20070094472A1 (en) Method for persistent mapping of disk drive identifiers to server connection slots
US11055499B2 (en) Card device, host device, and communication method
JPH1153485A (en) Computer system, storage device, conversion system and storage medium
WO2006035738A1 (en) Host controller
CN106484549B (en) A kind of exchange method, NVMe equipment, HOST and physical machine system
US6779052B2 (en) Electronic apparatus, system and method for controlling communication among devices coupled through different interfaces
US20060117170A1 (en) Controller having auto-run function
CN112380152A (en) NVMe-oF heterogeneous storage access controller and access method
CN112380151A (en) NVMe-oF heterogeneous storage system and access method
JPWO2006038260A1 (en) USB storage system and USB storage device
JP4757482B2 (en) Storage device and storage device control method
TWM240645U (en) Micro flash memory card with an USB interface
US6625676B1 (en) Small computer system with interface control and method of operating same
CN100520756C (en) Method for managing the plug-in or removal of a memory card into or from a card reader and apparatus for use in said method
JP2004062347A (en) Usb device and usb system
TW200413940A (en) Method and apparatus for handling data transfers
US8307145B2 (en) Method and system for connecting multiple IDE devices to a USB apparatus using a single USB-to-IDE adapter
JP3704469B2 (en) IO port connection method
JP2004192301A (en) Storage device with multiple input/output interface, method for recognizing device, and read/write control method

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091208

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100406