JP4242798B2 - Usbストレージデバイス及びその制御装置 - Google Patents

Usbストレージデバイス及びその制御装置 Download PDF

Info

Publication number
JP4242798B2
JP4242798B2 JP2004084862A JP2004084862A JP4242798B2 JP 4242798 B2 JP4242798 B2 JP 4242798B2 JP 2004084862 A JP2004084862 A JP 2004084862A JP 2004084862 A JP2004084862 A JP 2004084862A JP 4242798 B2 JP4242798 B2 JP 4242798B2
Authority
JP
Japan
Prior art keywords
usb
information
logical unit
storage
external 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.)
Expired - Lifetime
Application number
JP2004084862A
Other languages
English (en)
Other versions
JP2004234685A (ja
Inventor
雄司 大石
公利 仲村
恵美 徳永
薫 宮崎
海平 伊藤
直樹 藤田
Original Assignee
株式会社ハギワラシスコム
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社ハギワラシスコム filed Critical 株式会社ハギワラシスコム
Priority to JP2004084862A priority Critical patent/JP4242798B2/ja
Publication of JP2004234685A publication Critical patent/JP2004234685A/ja
Application granted granted Critical
Publication of JP4242798B2 publication Critical patent/JP4242798B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

本発明は、半導体メモリ(具体的には例えばフラッシュメモリ)を用いて情報を記憶するUSBストレージデバイス及びその制御装置に関する。
近年、フラッシュメモリ等を内蔵し、USB(Universal Serial Bus)規格に基づいたインターフェースを備え、USBコネクタ部分を本体に一体化することによってコンパクトな形状を実現した着脱式のUSBストレージデバイスが広く知られている(例えば特許文献1)。このようなUSBストレージデバイスはコンパクトな形状であるため安価に製造でき、内部にコマーシャル等のソフトウェアを書き込んで企業の販促品として利用されている。
このようなUSBストレージデバイスの多くは、ソフトウェアが誤って消去されないようにするため、ライトプロテクトスイッチのような物理的なスイッチを設け、そのスイッチを切り替えることにより、読み込み、書き込み及び消去が可能な状態と読み込みのみが可能な状態とを切り替えられるようにしている
しかし上述したライトプロテクトスイッチを用いる場合は、使用者が意識しない物理的要因によってライトプロテクトスイッチが解除されてしまい、意図しない書き込みや消去が実行される場合もあり得た。
特開2000−259275号公報 特開平10−289159号公報
本発明は、このような問題に鑑みなされたものであり、記憶済みのソフトウェアが誤って消去されることを防止するという機能ができるだけ単純な構成で実現されたUSBストレージデバイス及びその制御装置を提供することを目的とする。
上記課題を解決するためになされた請求項1に記載のUSBストレージデバイスは、所定のオペレーションシステムによって制御されると共に少なくともディスクドライブドライバ、USBマスストレージドライバ及びUSBホストコントローラを具備する外部装置への着脱が可能なUSBストレージデバイスであって、フラッシュメモリからなり、ユーザーが使用可能な一の記憶領域が定義された記憶手段と、外部装置とUSBプロトコルに基づいた通信を行う通信手段と、通信手段を介して外部装置から受け取った指令を実行する制御手段と、を備える。そして、制御手段は、外部装置が有するUSBマスストレージクラスドライバのSCSIコマンドセットに定義された論理ユニット番号に対応し、前記一の記憶領域を情報の読み出しのみを実行可能なCD−ROM論理ユニットとして、USBマスストレージクラスドライバに認識させるための当該領域のフォーマット情報を記憶し、ディスクドライブドライバからの指令に従って、フォーマット情報をUSBマスストレージクラスドライバに供給して、当該USBマスストレージクラスドライバに、本USBストレージデバイスをCD−ROM論理ユニットを有するSCSIデバイスとして認識させるとともに、論理ユニットに対する外部装置から受け取った指令に対して、情報の読み出し、書き込み、削除のうち、読み出しのみを実行する。
上記構成によれば、外部装置のオペレーションシステムは、本USBストレージデバイスが外部装置に接続された際、そのUSBストレージデバイスから、フラッシュメモリに定義された記憶領域についての論理ユニット番号とフォーマット情報とが通知されるため、本USBストレージデバイスを、少なくともCD−ROM論理ユニットを有するSCSIデバイスとして認識する。そしてこのオペレーションシステムは、アプリケーションからこのCD−ROM論理ユニットに対し、たとえ情報の書き込みや削除の指令があってもこれを受け付けない。また本USBストレージデバイスは、何らかの理由により外部装置から情報の書き込みや削除の指令があっても、その領域のフォーマット情報(情報の読み出しのみが許容される領域であるという情報)に基づき、USBストレージデバイス内の制御手段がこれを受け付けない。また、本USBストレージデバイスは、何らかの理由により外部装置から情報の書き込みや削除の指令があっても、USBストレージデバイス内の制御手段がこれを受け付けない。したがって、記憶手段に記憶されている情報が誤って消去されることを有効に防止することができる。
ところで、USBストレージデバイスの記憶手段のアドレス体系と、外部装置のオペレーションシステムが管理しているアドレス体系とが一致していればよいが、種々の事情により一致させることが難しい場合も考えられる。そのような場合は、請求項2に記載のように、制御手段は、前記領域の論理ブロック番号と記憶手段の物理ブロック番号との対応関係を管理すると共に、当該対応関係をフォーマット情報と共に記憶し、この記憶している対応関係に基づき、CD−ROM論理ユニットに対して情報の読み出しを実行するようになっているとよい。なお、ここで言うブロック番号は、上述したアドレスと同意である。
このようになっていれば、外部装置のソフトウェアは、論理アドレス体系を利用してUSBストレージデバイスから情報を取得することができる。
また、CD−ROM論理ユニットにはどのようなプログラムやデータが記憶されていてもよいが、請求項3に記載のように、論理ユニットにはアプリケーションプログラムが予め記憶されており、本USBストレージデバイスが外部装置に装着された際に、そのアプリケーションプログラムが自動実行されるように構成されているとよい。具体的には例えば、外部装置のオペレーションシステムがWindows(登録商標)であるときは、CD−ROM論理ユニットに何らかのアプリケーションプログラムを記憶させておき、更にそのルートディレクトリに記憶されたautorun.infという名称のファイルに当該アプリケーションソフトウェアを指定しておけばよい。
このようになっていれば、USBストレージデバイスが外部装置に装着された際に外部装置がCD−ROM論理ユニットに予め記憶しているアプリケーションプログラムを自動実行するため、外部装置の利用者の使い勝手が向上する。
また、上記課題解決のため、本発明のUSBストレージデバイスに搭載する制御装置は、情報を記憶可能なフラッシュメモリによって構成され、そのフラッシュメモリに対してユーザーが使用可能な一の記憶領域が定義された記憶装置を有するUSBストレージデバイスに搭載される制御装置であって、USBストレージデバイスが装着される外部装置が有するUSBマスストレージクラスドライバのSCSIコマンドセットに定義された論理ユニット番号に対応し、前記一の記憶領域を情報の読み出しのみを実行可能なCD−ROM論理ユニットとして、前記USBマスストレージクラスドライバに認識させるための当該領域を管理するフォーマット情報を記憶し、外部装置のディスクドライブドライバによるコマンドの発行に応答して、前記外部装置のUSBマスストレージクラスドライバへ前記フォーマット情報を供給して、前記USBマスストレージクラスドライバに、当該制御装置が搭載されたUSBストレージデバイスを前記CD−ROM論理ユニットを有するSCSIデバイスとして認識させるとともに、前記論理ユニットに対する前記外部装置からの指令に対して、情報の読み出し、書き込み、削除のうち、読み出しのみを実行するものとして構成される(請求項4)。
このような制御装置によれば、当該制御装置が搭載されたUSBストレージデバイスが外部装置に接続された際、制御装置がその外部装置に対して論理ユニット番号とフォーマット情報とを通知するため、外部装置のオペレーションシステムは、当該制御装置が搭載されたUSBストレージデバイスを、少なくともCD−ROM論理ユニットを有するSCSIデバイスとして認識する。そしてこのオペレーションシステムは、アプリケーションからこのCD−ROM論理ユニットに対し、たとえ情報の書き込みや削除の指令があってもこれを受け付けない。また制御装置は、何らかの理由により外部装置から情報の書き込みや削除の指令があっても、USBストレージデバイス内の制御手段がこれを受け付けない。したがって、記憶装置に記憶されている情報が誤って消去されることを有効に防止することができる。
そして、この制御装置は、請求項5に記載のように、前記領域の論理ブロック番号と記憶手段の物理ブロック番号との対応関係を管理すると共に、当該対応関係をフォーマット情報と共に記憶し、この記憶している対応関係に基づき、CD−ROM論理ユニットに対する情報の読み出しを実行するようになっているとよい。
このような制御装置によれば、外部装置は、当該制御装置が搭載されたUSBストレージデバイスから論理アドレス体系を利用して情報を取得することができる。
ところで、請求項6に記載のようにUSBストレージデバイスを構成しても、上述した課題を解決することができる。すなわち、このUSBストレージデバイスは、所定のオペレーションシステムによって制御されると共に少なくともディスクドライブドライバ、USBマスストレージドライバ及びUSBホストコントローラを具備する外部装置への着脱が可能なUSBストレージデバイスであって、情報を記憶可能な不揮発性メモリによって構成され、その不揮発性メモリに対してユーザーが使用可能な一の記憶領域が定義された記憶手段と、外部装置とUSBプロトコルに基づいた通信を行う通信手段と、通信手段を介して外部装置から受け取った指令を実行する制御手段と、を備える。そして、制御手段は、外部装置が有するUSBマスストレージクラスドライバのSCSIコマンドセットに定義された論理ユニット番号に対応し、前記一の記憶領域を情報の読み出しのみを実行可能な論理ユニットとして、USBマスストレージクラスドライバに認識させるための当該領域のフォーマット情報を記憶し、ディスクドライブドライバからの指令に従って、前記フォーマット情報をUSBマスストレージクラスドライバに供給して、当該USBマスストレージクラスドライバに、本USBストレージデバイスを読み出しのみ可能な論理ユニットを有するSCSIデバイスとして認識させるとともに、前記論理ユニットに対する外部装置からの指令に対して、情報の読み出し、書き込み、削除のうち、読み出しのみを実行する。
上記構成によれば、外部装置のオペレーションシステムは、本USBストレージデバイスが外部装置に接続された際、そのUSBストレージデバイスから、不揮発性メモリに定義された一の記憶領域についての論理ユニット番号とフォーマット情報とが通知されるため、本USBストレージデバイスを、読み出しのみ実行可能な論理ユニットを有するSCSIデバイスとして認識する。そしてこのオペレーションシステムは、アプリケーションからこの読み出しのみ実行可能な論理ユニットに対し、たとえ情報の書き込みや削除の指令があってもこれを受け付けない。また本USBストレージデバイスは、何らかの理由により外部装置から情報の書き込みや削除の指令があっても、USBストレージデバイス内の制御手段がこれを受け付けない。また、本USBストレージデバイスは、何らかの理由により外部装置から情報の書き込みや削除の指令があっても、USBストレージデバイス内の制御手段がこれを受け付けない。したがって、記憶手段に記憶されている情報が誤って消去されることを有効に防止することができる。
以下、本発明が適用された実施例について図面を用いて説明する。以下では、フラッシュメモリの記憶領域を、CD−ROM領域とディスク領域に分けて各領域をユーザーが使い分ける例について述べるが、本発明の実施の形態は、下記の実施例に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態、すなわち本発明のように、CD−ROM領域のみを設けてユーザーが使用するように構成することもできる。
[実施例1]
図1は、実施例1のUSBストレージデバイス17(特許請求の範囲に記載のUSBストレージデバイスに相当する)とホスト11(特許請求の範囲に記載の外部装置に相当する)の概略構成を示すブロック図である。
(1)ホスト11
ホスト11は、一般に広く知られたパーソナルコンピュータであり、ソフトウェアとして、オペレーションシステム12、ディスクドライブドライバ13及びUSBマスストレージクラスドライバ14を備え、ハードウェアとしてUSBホストコントローラ15を少なくとも備える。
オペレーションシステム12は、ホスト11を統括的に制御するソフトウェアであり、例えばWindows(登録商標)やMac OS X(登録商標)等ある。ディスクドライブドライバ13は、オペレーションシステム12から受け取った記憶装置へのアクセス指令等をSCSIコマンド変換してUSBマスストレージクラスドライバ14に渡すとともに、USBマスストレージクラスドライバ14から指令等を受け取りオペレーションシステム12に渡す。USBマスストレージクラスドライバ14は、USBホストコントローラ15を制御する。USBホストコントローラ15は、図示しないUSBコネクタを備え、他の装置のUSBコネクタとケーブルによって接続されることによって、USB規格に基づいた通信を行うことができるようになっている。なお、ホスト11は、USB規格に基づいた通信を行うことができる機器であれば、パーソナルコンピュータに限らずPDAや携帯電話等であってもよい。
(2)USBストレージデバイス17
USBストレージデバイス17は、USBインターフェース19とコントローラ21とLED23とフラッシュメモリ25とを備える。
(2−1)USBインターフェース19
USBインターフェース19は、特許請求の範囲に記載の通信手段に相当し、USBバス16を介してホスト11と通信を行う機能を担う。USBインターフェース19は、パケット送受信部19aとシリアルパラレル変換部19bとパケット生成分解部19cとUSBバスパワー制御部19dとを備える。パケット送受信部19aは、図示しないUSBコネクタと接続され、USB規格に基づいたパケットを送受信する。シリアルパラレル変換部19bは、シリアルデータとパラレルデータとを相互に変換する。パケット生成分解
部19cは、ホスト11と通信を行うためのパケットの生成及びパケットを分解してデータの取り出しを行う。USBバスパワー制御部19dは、ホスト11から供給される電力の管理及びUSBストレージデバイス17の各部位への電力の配分を行う。
(2−2)コントローラ21
コントローラ21は、特許請求の範囲に記載の制御手段及び制御装置に相当し、メモリ制御部21aとUSBインターフェース制御部21bとメモリ情報記憶部21cとLED制御部21dとを備える。メモリ制御部21aは、フラッシュメモリ25に対してデータの読み出し、書き込み及び削除を実行する。USBインターフェース制御部21bは、前述したUSBインターフェース19の各部を制御する。メモリ情報記憶部21cは、フラッシュメモリ25の領域に関する情報を記憶する。この情報は、特許請求の範囲に記載のフォーマット情報に相当する。図2のデータ例を用いてこの情報について説明する。
図2に示すように、メモリ情報記憶部21cは、論理ユニット番号31とフォーマット33と書き込み削除可否フラグ35と論理ブロック番号37と物理ブロック番号39とを備える。論理ユニット番号31は論理ユニットを識別するための番号であり、「0」と「1」とが存在する。フォーマット33は、論理ユニット番号31に対応し、その論理ユニットのフォーマットを表す。データ例では、論理ユニット番号「0」は「FAT」フォーマットであり、論理ユニット番号「1」は「ISO9660」フォーマットである。書き込み削除可否フラグ35は、論理ユニット番号31に対応し、その論理ユニットに対して情報の書き込み及び削除の実行可否を表すフラグである。データ例では、論理ユニット番号「0」は「可」であり、論理ユニット番号「1」は「不可」である。論理ブロック番号37は、ホスト11によって指定されるブロック番号であり、論理ユニット毎に定義されている。
このように、フラッシュメモリ25の実ブロック番号である物理ブロック番号39と論理ブロック番号37との対応づけは、メモリ制御部21aによって管理されている。このため、物理ブロック番号39と論理ブロック番号37とは自由に対応付けを行うことができる。また、論理ユニット番号「0」のフォーマットをISO9660にし、論理ユニット番号「1」のフォーマットをFATにしてもよい。また、更に論理ユニットを増やし、ユーザーやアプリケーションによって使い分けられるようになっていてもよい。
(2−3)LED23
図1に戻り、LED23は、フラッシュメモリ25に対して情報の読み出し、書き込み及び削除が実行されている際に点灯する発光体である。フラッシュメモリ25に対して情報の読み出し、書き込み及び削除が実行中であることを利用者に示し、これらの実行中にホスト11からUSBストレージデバイス17が抜かれないようにするためのものである。
(2−4)フラッシュメモリ25
フラッシュメモリ25は、記憶保持動作が不要な半導体メモリであり、データを記憶することができる。記憶したデータは、メモリ制御部21aによって読み出すことが可能である。また、メモリ制御部21aによって書き込み及び削除をすることもできる。フラッシュメモリ25は、特許請求の範囲に記載の記憶手段及び記憶装置に相当する。
(a)起動処理
USBストレージデバイス17がホスト11に接続された際に、USBストレージデバイス17のコントローラ21でプログラムに基づいて実行される起動処理について図3のフローチャートを用いて説明する。この起動処理は、USBストレージデバイス17がホスト11に接続されることにより、USBバスパワー制御部19dに電力が供給され、さらにホスト11側でエニュメレーション処理が実行されると開始される。
起動処理を開始すると、ホスト11からの指令に応じて、ディスクリプタと呼ばれるデバイス情報(デフォルトパイプの最大パケットサイズ等)をホスト11に送信する(S110)。
次に、ホスト11から指令に応じて、USBストレージデバイス17のアドレスを設定する(S115)。以降、このアドレス宛のフレームのみを当該USBストレージデバイス17は取得する。
次に、より詳細なデバイス情報をホスト11に送信する(S120)。このデバイス情報としては、エンドポイントに関する情報、クラス、サブクラス、プロトコル等である。
その結果、ホスト11ではUSBマスストレージクラスドライバ14が起動され、図示しないアプリケーションソフトウェアからディスクドライブドライバ13とUSBマスストレージクラスドライバ14とを介してUSBホストコントローラ15を制御するアクセスパスができる。なお、このディスクドライブドライバ13は、MS−DOS(登録商標)時代から、受け継がれているドライバであるため永年の技術が積み重ねられており、安定的な動作が得られるドライバである。
続いて、USBマスストレージクラスドライバ14が、Get Max Logical Unit Numberコマンドによって論理ユニット番号数を要求するため、USBストレージデバイス17は、メモリ情報記憶部21cから論理ユニット番号数が2であるという情報を読み出して、ホスト11に送信する。そしてさらに、ディスクドライブドライバ13がINQUIRYコマンドを発行するため、USBストレージデバイス17は、メモリ情報記憶部21cから論理ユニットのフォーマットに関する情報を読み出して、ホスト11に送信する。これらの結果ホスト11は、USBストレージデバイス17を、FATフォーマットから構成される論理ユニット番号「0」の領域とISO9660フォーマットから構成される論理ユニット番号「1」の領域とを有するデバイスと認識する。
ホスト11との通信が確立されると、フラッシュメモリ25を動作可能にし(S125)、起動処理を終了する。
なお、Windows(登録商標)には、記憶媒体挿入時や記憶媒体接続時にその記憶媒体のルートディレクトリに記憶されたautorun.infという名称のファイル内で指定されたアプリケーションソフトウェアを実行する機能を有しているため、フラッシュメモリ25の論理ユニット番号「1」の領域にそのファイルを記憶させておけば、本USBストレージデバイス17がホスト11に装着された際に特定のソフトウェアを自動実行させることができる。
このようになっていれば、利用者がホスト11の操作に不慣れであっても本USBストレージデバイス17を装着するだけで特定のアプリケーションソフトウェアが自動実行されるため、例えば販促品として広く一般に配布した場合に販促を担うアプリケーションソフトウェアを確実に実行させることができ、販促効果が高まる。
(b)アクセス処理
ホスト11において動作する種々のソフトウェアが、USBストレージデバイス17に対してデータの書き込み、読み出し、削除の実行指令を送ったときに、USBストレージデバイスのコントローラ21でプログラムに基づいて実行されるアクセス処理について図4のフローチャートを用いて説明する。
まず、S210では、ホスト11から受信した指令の種類によって分岐する。書き込み又は削除の指令であった場合はS215に進み、そうでない場合、すなわち読み出しの指令であった場合はS250に進む。
S215では、書き込み又は削除の指令が論理ユニット番号「1」に対する指令であるか否かによって分岐する。つまり、書き込み及び削除が実行可能な論理ユニットに対するものであるか否かによって分岐する。論理ユニット番号「1」に対するものであればS245に進み、そうでない場合すなわち論理ユニット番号「0」に対する指令であればS220に進む。
S220では、LED23を点灯させる。続くS225では、ホスト11から指定されたフラッシュメモリ25のブロックにデータを書き込む。またはホスト11から指定されたフラッシュメモリ25のブロックのデータを削除する。なお書き込み又は削除を実行する際は、メモリ情報記憶部21cに記憶されているフラッシュメモリ25の領域に関する情報(図2参照)を用い、ホスト11から指定されたブロック番号を論理ブロック番号37としてその論理ブロック番号37に該当する物理ブロック番号39によって特定されたフラッシュメモリ25のブロックに対してデータの書き込み及び削除を実行する。
続くS230では、LED23を消灯させる。そして、S235ではS225の処理が正常に完了したか否かによって分岐する。正常に完了していればアクセス処理を終了し、正常に完了していなかったらS240に進む。
S240では、S225の処理が正常に完了しなかった旨をホスト11に通知してアクセス処理を終了する。
一方、S215で、書き込み又は削除の指令が論理ユニット番号「1」に対する指令であると判定された際に進むS245では、許可されていない指令としてホスト11にエラー発生の旨を通知する。
また、S210で読み込みの指令であったと判定されて進むS250では、LED23を点灯させ、続くS255ではホスト11から指定されたフラッシュメモリ25のブロックのデータを読み込み、読み込んだデータをホスト11に送る。なお、データを読み込む際は、メモリ情報記憶部21cに記憶されているフラッシュメモリ25の領域に関する情報(図2参照)を用い、ホスト11から指定されたブロック番号を論理ブロック番号37としてその論理ブロック番号37に該当する物理ブロック番号39によって特定されたフラッシュメモリ25のブロックからデータを読み込む。
続くS260では、LED23を消灯させる。そして、S265ではS255の処理が正常に完了したか否かによって分岐する。正常に完了していればアクセス処理を終了し、正常に完了していなかったらS270に進む。
S270では、S255の処理が正常に完了しなかった旨をホスト11に通知して通知してアクセス処理を終了する。
このようにアクセス処理が実行されるため、例えば販促品としてUSBストレージデバイス17を利用した場合、誤って消去されると問題のあるソフトウェアを論理ユニット番号「1」の領域に記憶させておけば、そのソフトウェアが消去されることを防止できる。
また、USBストレージデバイス17は、USBマスストレージクラスドライバ14のSCSIコマンドセットに定義された論理ユニット番号に対応する領域として論理ユニッ
ト番号「0」の領域と論理ユニット番号「1」の領域とをUSBマスストレージクラスドライバに認識させるための情報をメモリ情報記憶部21cに保持している。このため、USBマスストレージクラスドライバ14は、USBストレージデバイス17を2つの論理ユニットを有する一つのSCSIデバイスとして認識する。
したがって、このような領域の管理を、USB規格におけるエンドポイントの数を増やすことによって実現する場合と比べてコントローラ21を単純化することができる。なぜならエンドポイントの数分だけコントローラ21はFIFOバッファを備えることが必要だからである。また、USBストレージデバイス17に、2種類のUSBストレージデバイスとそれらを接続したハブとを内蔵させて実現させる方法と比べても、USBストレージデバイス17は構成が単純である。また、USBストレージデバイス17であれば、ホスト11が行うUSBマスストレージクラスドライバ14のイニシャライズ処理も1度で済むため、ホスト11がUSBストレージデバイス17を認識するまでの時間も短い。また、ホスト11のオペレーションシステムは、2領域を有する1つのSCSIデバイスとしてUSBストレージデバイス17を管理できるため、複数のデバイスを管理する場合と比べて様々な処理を単純化して実行でき、動作も安定する。
(c)初期化処理
初期化処理は、USBストレージデバイス17の製造者や販売者等(以下「特定ユーザー」と言う)が初期化を行うことを目的として、ホスト11上で初期化ソフトウェアを実行して後述する書き込みボタン66を押下した際に、USBストレージデバイス17のコントローラ21でプログラムに基づいて実行される。
初期化処理を説明する前に、ホスト11で実行される初期化ソフトウェアについて図5の操作画面51を用いて説明する。操作画面51では、特定ユーザーがUSBストレージデバイス17に関する様々なパラメータを設定することができる。
テキストボックス53は、論理ユニット番号「0」に対応するものであり、情報の読み出し、書き込み及び削除を実行することができる領域(ディスク領域)の容量を入力するためのテキストボックスである。テキストボックス55は、論理ユニット番号「1」に対応するものであり、情報の読み出しのみを実行することができる領域(CD−ROM領域)の容量を入力するためのテキストボックスである。このテキストボックス53とテキストボックス55とに入力した値の合計が全容量である16以下になるよう特定ユーザーは入力しなければならない。
テキストボックス57は、USB規格で定義されたシリアル番号を入力するためのテキストボックスである。ホスト11はこのシリアル番号によってデバイスを見分けることができる。
テキストボックス59は、固有IDを入力するためのテキストボックスである。固有IDというのは、USB規格で定義されたものではなく、本実施例のUSBストレージデバイス17に独自のものであり、この固有IDをライセンスキーとすることで、不正コピーなどによるコンテンツの不正起動を防止に用いたり、固有IDを認証キーや会員向けサービスに利用したりすることもできる。固有IDは、16バイト以上612バイト以下の16進データである。なお、テキストボックス59の右端の上下ボタンが押下されることにより、表示しきれないデータを順次表示するように操作画面51は構成されている。
テキストボックス61は、CD−ROM領域に書き込むファイル名を入力するためのテキストボックスである。複数ファイルのファイル名を入力できるようになっていてもよい。
参照ボタン63は、テキストボックス61へのファイル名入力を支援するダイアログボックスを表示させるためのボタンである。表示されたダイアログボックスの中から特定ユーザーがファイル名を選択すると、その選択したファイルがテキストボックス61に表示されるようになっている。
フォーマット選択ボタン64は、CDイメージデータのフォーマットを選択するためのダイアログボックスを表示させるためのボタンである。表示されたダイアログボックスの中からISO9660又はHFSの何れかの形式が選択できるようになっている。
書き込みボタン66は、特定ユーザーが操作画面51で設定した設定情報をUSBストレージデバイス17に書き込む処理を開始させるためのボタンである。
キャンセルボタン67は、特定ユーザーが操作画面51で設定した設定情報をUSBストレージデバイス17に書き込むことをせずに操作画面51を閉じるためのボタンである。
次に、USBストレージデバイス17のコントローラ21で実行される初期化処理について図6のフローチャートを用いて説明する。実行が開始されるとまず、ホスト11から送られる設定情報を受信する(S310)。この設定情報は、上述した操作画面51で設定された設定情報である。そして次に、受信した設定情報に基づいてメモリ情報記憶部21cのデータを更新する(S315)。
続いて、受信した設定情報に基づいてフラッシュメモリ25の論理ユニット番号「1」の領域にデータを書き込み(S320)、初期化処理は終了する。本来は、論理ユニット番号「1」の領域にはデータを書き込むことはできないが、初期化処理の際のみ、書き込むことができるように構成されている。なお、書き込むデータは、上述したテキストボックス61で設定したファイルである(図5参照)。
このような初期化処理によって特定ユーザーの事情に合わせて、領域の容量の変更や、シリアル番号の設定や、固有IDの設定や、CD−ROM領域に予めファイルを記憶させておくことが実行できる。
[実施例2]
図7は、実施例2のインクジェットプリンタ71(特許請求の範囲に記載のUSBストレージデバイスに相当する)とホスト11(特許請求の範囲に記載の外部装置に相当する)との概略構成を示すブロック図である。なお、実施例1と同様の部分は、実施例1を説明する際に使用した符号と同一の符号を付すことにより説明を省略する。
インクジェットプリンタ71は、USBインターフェース19とコントローラ21とフラッシュメモリ25とMPU73と印字ヘッド75とアクチュエータ77とを備える。このうちUSBインターフェース19が特許請求の範囲に記載の通信手段に相当し、コントローラ21が制御手段に相当し、フラッシュメモリ25が記憶手段に相当する。また、MPU73と印字ヘッド75とアクチュエータ77とが特許請求の範囲に記載の印刷手段に相当する。
MPU73は、USBインターフェース19及びコントローラ21を介してホスト11と通信を行うと共に、図示しない各種センサからの情報に基づいて印字ヘッド75及びアクチュエータ77の動作を制御する。なお、実施例2では、コントローラ21とMPU73とは別構成としているが、それらの機能の一部及び全部をMPU73に移行させてもよい。
印字ヘッド75は、インクノズルを有し、インクノズルから所定の色のインクを吐出させ、印刷用紙にインクを定着させることができる。
アクチュエータ77は、図示しないフィードローラモータ、紙送りローラモータ、印字ヘッド駆動モータ等から構成され、これらを適切に動作させることにより、印刷用紙の位置及び印字ヘッド75の位置関係を調整して所望の印刷結果が得られるようにする。
フラッシュメモリ25の論理ユニット番号「1」の領域(CD−ROM領域)には、印刷するデータをホスト11で扱うためのアプリケーションソフトウェアが予め格納されており、ホスト11はそのようなアプリケーションソフトウェアを有していなくても、フラッシュメモリ25のCD−ROM領域から読み込むことにより使用することができる。
これに対して、従来は、印刷機能を提供するドライバプログラム、印刷管理ソフトウェアなどをホスト11が有していない場合には、別途CD−ROMやフレキシブルディスクなどの媒体から取り込むか、インターネット等からダウンロードしてインストールする必要があった。そのため、CD−ROMやフレキシブルディスクのドライブを通常有していないPDAなどは、それらの媒体から取り込むことは困難であった。このような点で、実施例2のインクジェットプリンタ71は、従来と比べて優位な効果を有する。
また、アプリケーションソフトウェアはフラッシュメモリ25のCD−ROM領域に格納されるため、エンドユーザーによって誤って消去されてしまうおそれがない。また、ディスク領域(論理ユニット番号「0」の領域)には、印刷するための印刷データを格納することにより、ディスク領域を介して複数のホスト11で印刷データを共有することも可能になる。このような点でも、実施例2のインクジェットプリンタ71は、従来と比べて優位な効果を有する。
また、実施例1で述べたような固有IDを実装してその固有IDを認証キーとして用いるようにすれば、特定のユーザーのみがインクジェットプリンタ71を使用できるようにしたり、特定のユーザーのみがCD−ROM領域に格納されたアプリケーションソフトウェア利用できるようにしたりすることができる。
[実施例3]
図8は、実施例3のスキャナ81(特許請求の範囲に記載のUSBストレージデバイスに相当する)とホスト11(特許請求の範囲に記載の外部装置に相当する)との概略構成を示すブロック図である。なお、実施例1と同様の部分は、実施例1を説明する際に使用した符号と同一の符号を付すことにより説明を省略する。
スキャナ81は、USBインターフェース19とコントローラ21とフラッシュメモリ25とMPU83とCCD85とアクチュエータ97とを備える。このうちUSBインターフェース19が特許請求の範囲に記載の通信手段に相当し、コントローラ21が制御手段に相当し、フラッシュメモリ25が記憶手段に相当する
MPU83は、USBインターフェース19及びコントローラ21を介してホスト11と通信を行うと共に、CCD85及びアクチュエータ87の動作を制御する。なお、実施例3では、コントローラ21とMPU83とは別構成としているが、それらの機能の一部及び全部をMPU83に分担させてもよい。
CCD85は、光情報を電気信号に変換する半導体素子であり、任意の対象物を画像データとして読み取って出力することができる。
アクチュエータ87は、図示しない光源駆動モータやCCD駆動モータ等から構成され、これらが適切に動作することにより、任意の対象物の所望の範囲の画像データを得ることができる。
フラッシュメモリ25の論理ユニット番号「1」の領域(CD−ROM領域)には、するデータをホスト11で扱うためのアプリケーションソフトウェアが予め格納されており、ホスト11はそのようなアプリケーションソフトウェアを有していなくても、フラッシュメモリ25のCD−ROM領域から読み込むことにより使用することができる。
これに対して、従来は、スキャナ81の制御機能を提供するドライバプログラム、画像データの加工ソフトウェアなどをホスト11が有していない場合には、別途CD−ROMやフレキシブルディスクなどの媒体から取り込むか、インターネット等からダウンロードしてインストールする必要があった。そのため、CD−ROMやフレキシブルディスクのドライブを通常有していないPDAなどにおいては、それらの媒体から取り込むのは困難であった。このような点で、実施例3のスキャナ81は、従来と比べて優位な効果を有する。
また、アプリケーションソフトウェアはフラッシュメモリ25のCD−ROM領域に格納されるため、エンドユーザーによって誤って消去されてしまうおそれがないとともに、ディスク領域(論理ユニット番号「0」の領域)には、画像データを格納することにより、ディスク領域を介して複数のホスト11で画像データを共有することも可能になる。このような点でも、実施例3のスキャナ81は、従来と比べて優位な効果を有する。
以上、実施例を3つ説明したが、他の実施例について説明する。
実施例2のインクジェットプリンタ71や実施例3のスキャナ81の技術思想をUSBインターフェースを有する他の装置に適用してもよい。具体的には、デジタルカメラ、携帯端末、スピーカー、キーボード、マウス、モデム装置、ハンドセット、カードアダプタ等に適用してもよい。これらに適用しても上記実施例と同様の効果が得られる。
また、実施例1の操作画面51(図5参照)は、CDイメージデータのフォーマットとしてISO9660又はHFSの何れかの形式が選択できるようになっていたが、さらに、Audio CD、CD TEXT、Mixed CD、Enhanced CD、ビデオCD、ブータブルCD等フォーマットが選択できるようになっていてもよい。また、記録方式も、ディスクアットワンス、トラックアットワンス、セッションアットワンス、パケットライトなどの方式が指定できるようになっていてもよい。
実施例のUSBストレージデバイスの構成を示すブロック図である。 メモリ情報記憶部に記憶されているデータ例である。 起動処理を説明するためのフローチャートである。 アクセス処理を説明するためのフローチャートである。 初期化ソフトウェアの操作画面を説明するための画面例である。 初期化処理を説明するためのフローチャートである。 実施例のインクジェットプリンタの構成を示すブロック図である。 実施例のスキャナの構成を示すブロック図である。
符号の説明
11…ホスト、12…オペレーションシステム、13…ディスクドライブドライバ、14…USBマスストレージクラスドライバ、15…USBホストコントローラ、16…USBバス、17…USBストレージデバイス、19a…USBインターフェース、19b
…シリアルパラレル変換部、19c…パケット生成分解部、19d…USBバスパワー制御部、21…コントローラ、21a…メモリ制御部、21b…USBインターフェース制御部、21c…メモリ情報記憶部、21d…LED制御部、23…LED、25…フラッシュメモリ、71…インクジェットプリンタ、73…MPU、75…印字ヘッド、77…アクチュエータ、81…スキャナ、83…MPU、85…CCD、87…アクチュエータ。

Claims (6)

  1. 所定のオペレーションシステムによって制御されると共に少なくともディスクドライブドライバ、USBマスストレージドライバ及びUSBホストコントローラを具備する外部装置への着脱が可能なUSBストレージデバイスであって、
    フラッシュメモリからなり、ユーザーが使用可能な一の記憶領域が定義された記憶手段と、
    前記外部装置とUSBプロトコルに基づいた通信を行う通信手段と、
    前記通信手段を介して前記外部装置から受け取った指令を実行する制御手段と、
    を備え、
    前記制御手段は、
    前記外部装置が有するUSBマスストレージクラスドライバのSCSIコマンドセットに定義された論理ユニット番号に対応し、前記一の記憶領域を情報の読み出しのみを実行可能なCD−ROM論理ユニットとして、前記USBマスストレージクラスドライバに認識させるための当該領域のフォーマット情報を記憶し、
    前記ディスクドライブドライバからの指令に従って、前記フォーマット情報を前記USBマスストレージクラスドライバに供給して、当該USBマスストレージクラスドライバに、本USBストレージデバイスを前記CD−ROM論理ユニットを有するSCSIデバイスとして認識させるとともに、
    前記論理ユニットに対する前記外部装置からの指令に対して、情報の読み出し、書き込み、削除のうち、読み出しのみを実行することを特徴とするUSBストレージデバイス。
  2. 請求項1に記載のUSBストレージデバイスにおいて、
    前記制御手段は、前記領域の論理ブロック番号と前記記憶手段の物理ブロック番号との対応関係を管理すると共に、当該対応関係を前記フォーマット情報と共に記憶し、この記憶している対応関係に基づき、前記論理ユニットに対して情報の読み出しを実行することを特徴とするUSBストレージデバイス。
  3. 請求項1又は請求項2に記載のUSBストレージデバイスにおいて、
    前記論理ユニットにはアプリケーションプログラムが予め記憶されており、本USBストレージデバイスが外部装置に装着された際に、前記アプリケーションプログラムが自動実行されるように構成されていることを特徴とするUSBストレージデバイス。
  4. 情報を記憶可能なフラッシュメモリによって構成され、そのフラッシュメモリに対してユーザーが使用可能な一の記憶領域が定義された記憶装置を有するUSBストレージデバイスに搭載される制御装置であって、
    USBストレージデバイスが装着される外部装置が有するUSBマスストレージクラスドライバのSCSIコマンドセットに定義された論理ユニット番号に対応し、前記一の記憶領域を情報の読み出しのみを実行可能なCD−ROM論理ユニットとして、前記USBマスストレージクラスドライバに認識させるための当該領域を管理するフォーマット情報を記憶し、
    外部装置のディスクドライブドライバによるコマンドの発行に応答して、前記外部装置のUSBマスストレージクラスドライバへ前記フォーマット情報を供給して、前記USBマスストレージクラスドライバに、当該制御装置が搭載されたUSBストレージデバイスを前記CD−ROM論理ユニットを有するSCSIデバイスとして認識させるとともに、
    前記論理ユニットに対する前記外部装置からの指令に対して、情報の読み出し、書き込み、削除のうち、読み出しのみを実行することを特徴とする制御装置。
  5. 請求項4に記載の制御装置は、
    前記領域の論理ブロック番号と前記記憶手段の物理ブロック番号との対応関係を管理すると共に、当該対応関係を前記フォーマット情報と共に記憶し、この記憶している対応関係に基づき、前記論理ユニットに対する情報の読み出しを実行することを特徴とする制御装置。
  6. 所定のオペレーションシステムによって制御されると共に少なくともディスクドライブドライバ、USBマスストレージドライバ及びUSBホストコントローラを具備する外部装置への着脱が可能なUSBストレージデバイスであって、
    情報を記憶可能な不揮発性メモリによって構成され、その不揮発性メモリに対してユーザーが使用可能な一の記憶領域が定義された記憶手段と、
    前記外部装置とUSBプロトコルに基づいた通信を行う通信手段と、
    前記通信手段を介して前記外部装置から受け取った指令を実行する制御手段と、
    を備え、
    前記制御手段は、
    前記外部装置が有するUSBマスストレージクラスドライバのSCSIコマンドセットに定義された論理ユニット番号に対応し、前記一の記憶領域を情報の読み出しのみを実行可能な論理ユニットとして、前記USBマスストレージクラスドライバに認識させるための当該領域のフォーマット情報を記憶し、
    前記ディスクドライブドライバからの指令に従って、前記フォーマット情報を前記USBマスストレージクラスドライバに供給して、当該USBマスストレージクラスドライバに、本USBストレージデバイスを読み出しのみ可能な論理ユニットを有するSCSIデバイスとして認識させるとともに、
    前記論理ユニットに対する前記外部装置からの指令に対して、情報の読み出し、書き込み、削除のうち、読み出しのみを実行することを特徴とするUSBストレージデバイス。
JP2004084862A 2002-05-29 2004-03-23 Usbストレージデバイス及びその制御装置 Expired - Lifetime JP4242798B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004084862A JP4242798B2 (ja) 2002-05-29 2004-03-23 Usbストレージデバイス及びその制御装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002155684 2002-05-29
JP2004084862A JP4242798B2 (ja) 2002-05-29 2004-03-23 Usbストレージデバイス及びその制御装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2003365044A Division JP3699717B2 (ja) 2002-05-29 2003-10-24 Usbストレージデバイス及びその制御装置

Publications (2)

Publication Number Publication Date
JP2004234685A JP2004234685A (ja) 2004-08-19
JP4242798B2 true JP4242798B2 (ja) 2009-03-25

Family

ID=32964343

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004084862A Expired - Lifetime JP4242798B2 (ja) 2002-05-29 2004-03-23 Usbストレージデバイス及びその制御装置

Country Status (1)

Country Link
JP (1) JP4242798B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006235994A (ja) 2005-02-24 2006-09-07 Nec Electronics Corp ブリッジシステム、ブリッジシステム制御方法、情報処理機器、周辺機器及びプログラム

Also Published As

Publication number Publication date
JP2004234685A (ja) 2004-08-19

Similar Documents

Publication Publication Date Title
JP3513147B2 (ja) Usbストレージデバイス及びその制御装置
KR100954933B1 (ko) 유니버설 시리얼 버스 스토리지장치 및 그 제어장치
US7068386B2 (en) Image processing system, image data processing method, and storage medium
US8037211B2 (en) Method and apparatus for enabling enhanced USB interaction
JP3914949B2 (ja) Usbストレージデバイス、その制御装置及びその制御装置に実行させるためのプログラム
JP2010044579A (ja) 周辺装置、プログラム、およびドライバインストールシステム
JP2006079634A5 (ja)
US7711863B2 (en) Method and apparatus for variably enabling USB interaction
JP2005141721A (ja) アプリケーションプログラムの自動インストールシステム、及びその方法
JP2008139916A (ja) 情報処理装置、情報処理装置の制御方法、および情報処理装置の制御プログラム
JP3699717B2 (ja) Usbストレージデバイス及びその制御装置
JP2004171536A5 (ja)
JP2005266934A (ja) Usbストレージデバイス及びその制御装置
EP1205845A2 (en) Microcomputer and method of controlling the same
JP4551643B2 (ja) Usbプリンタ及びusbスキャナ
JP2008500617A (ja) カードリーダに対するメモリカードのプラグイン又は取り外しを管理する方法及び当該方法を使用する装置
JP4242798B2 (ja) Usbストレージデバイス及びその制御装置
JP2007086905A (ja) 通信システム、情報処理装置、周辺装置、及び通信方法
JP4087788B2 (ja) 情報処理装置及びその制御方法、プログラム
JP2006293638A (ja) 情報処理装置及び周辺装置
JP2005243046A5 (ja)
JP2005243046A (ja) Usbストレージデバイス及びプログラム
JP4276219B2 (ja) Usbストレージデバイスの内部状態設定方法
JP2008201001A (ja) 印刷装置及び制御方法
JP2005122224A (ja) 仮想的情報処理装置機能及び仮想的プリンター装置機能を有する外付け電子記憶媒体。

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060221

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081202

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081225

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

Free format text: PAYMENT UNTIL: 20120109

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4242798

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120109

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20120109

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20130109

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130109

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140109

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term