JP2004094493A - 記憶媒体処理装置およびその制御方法 - Google Patents

記憶媒体処理装置およびその制御方法 Download PDF

Info

Publication number
JP2004094493A
JP2004094493A JP2002253369A JP2002253369A JP2004094493A JP 2004094493 A JP2004094493 A JP 2004094493A JP 2002253369 A JP2002253369 A JP 2002253369A JP 2002253369 A JP2002253369 A JP 2002253369A JP 2004094493 A JP2004094493 A JP 2004094493A
Authority
JP
Japan
Prior art keywords
storage medium
processing device
control unit
external information
writing
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
JP2002253369A
Other languages
English (en)
Inventor
Reiji Hasegawa
長谷川 玲治
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2002253369A priority Critical patent/JP2004094493A/ja
Publication of JP2004094493A publication Critical patent/JP2004094493A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】デジカメ等でメモリカードに記録した画像を出力する場合、メモリカードリーダを具備する装置に備わっているメモリカードリーダにメモリカードを挿入し、プリンタ内の制御部で画像を読み出し、印字する場合、PCからメモリカードの編集を行うことができ、しかも、その操作が容易であるようにする。
【解決手段】画像情報を制御する制御部と、外部情報処理装置と上記制御部とを接続する第1インタフェース手段と、所定の記憶媒体を読み書きする記憶媒体読み書き手段と、上記制御部と上記記憶媒体読み書き手段とを接続する第2インタフェース手段と、上記外部情報処理装置と上記制御部とのうちの一方に、第1のセマフォを設定し、上記第1のセマフォが設定されている方だけに、上記所定の記憶媒体へのアクセスを許可するアクセス制御手段とを有する。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明は、記憶媒体処理装置およびその制御方法に関する。
【0002】
【従来の技術】
近年、デジタルカメラ等の記憶媒体として、半導体メモリカードが注目を浴び、また、PC(パーソナルコンピュータ)で、上記メモリカードを読み書きすることが求められている。そこで、各社は、メモリカードをPCで読み書きするためのメモリカードリーダ・ライタを開発している。
【0003】
また、プリンタ、コピー、ファクシミリ等のプリンタを備えた機器にも、デジカメの画像を出力する要求があり、メモリカードリーダを持つプリンタ、コピー、ファクシミリ等が増えている。
【0004】
デジカメ等でメモリカードに記録した画像を出力する場合、上記のように、プリンタに備わったメモリカードリーダにメモリカードを挿入し、プリンタ内の制御部で画像を読み出し、印字する。
【0005】
また、このような印刷機能を持つ機器は、PCのプリンタとして用いられるので、PCとのインタフェースを持つものも多い。このような状況で、メモリカードPCからメモリカードを読み書きしたいという要望が生まれる。
【0006】
この場合、メモリカードは、プリンタ内蔵の制御部と、外部に接続されるPCとの両方からアクセスされることがある。
【0007】
【発明が解決しようとする課題】
プリンタ内の制御部と、外部のPCとの両方からアクセスされると、さまざまな問題が生じる。
【0008】
たとえば、画像をプリンタで印刷中に、その画像ファイルを、PCから削除されるような場合が考えられる。
【0009】
そこで、従来のプリンタは、PCからの書き込みを、そもそも禁止している。しかし、このようにすると、PCからメモリカードの編集を行うことができず、不便であるという問題がある。
【0010】
また、別な解決策として、画像を出力するモードと、PCから読み書きするモードとを切り替える従来例が存在している。
【0011】
ところが、この従来例では、操作が煩雑であるという問題がある。
【0012】
本発明は、デジカメ等でメモリカードに記録した画像を出力する場合、メモリカードリーダを具備する装置に備わっているメモリカードリーダにメモリカードを挿入し、プリンタ内の制御部で画像を読み出し、印字する場合、PCからメモリカードの編集を行うことができ、しかも、その操作が容易である記憶媒体処理装置およびその制御方法を提供することを目的とするものである。
【0013】
【課題を解決するための手段】
本発明は、画像情報を制御する制御部と、外部情報処理装置と上記制御部とを接続する第1インタフェース手段と、所定の記憶媒体を読み書きする記憶媒体読み書き手段と、上記制御部と上記記憶媒体読み書き手段とを接続する第2インタフェース手段と、上記外部情報処理装置と上記制御部とのうちの一方に、第1のセマフォを設定し、上記第1のセマフォが設定されている方だけに、上記所定の記憶媒体へのアクセスを許可するアクセス制御手段とを有する記憶媒体処理装置である。
【0014】
【発明の実施の形態および実施例】
図1は、本発明の一実施例である記憶媒体処理装置10の概略構成を示すブロック図である。
【0015】
記憶媒体処理装置10は、CPU11と、ROM12と、RAM13と、表示部14と、USBホスト制御部15と、USBファンクション制御部16と、CPUバス17と、記録部18と、カードリーダ部19とを有する。
【0016】
CPU11は、システム制御部であり、記憶媒体処理装置10の全体を制御する。
【0017】
ROM12は、CPU11が実行する制御プログラムや組み込みオペレーティングシステム(OS)プログラム等を格納する。上記実施例では、ROM12に格納されている各制御プログラムは、ROM12に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ等のソフトウェア制御を行う。
【0018】
RAM13は、DRAM(dynamic RAM)等で構成され、プログラム制御変数等を格納し、また、設定値や記憶媒体処理装置10の管理データ等を格納し、各種ワーク用バッファ領域が設けられている。
【0019】
表示部14は、LED(発光ダイオード)とLCD(液晶ディスプレイ)等によって構成され、記憶媒体処理装置10の動作状況、ステータス状況の表示、カードリーダの状態の表示を行う表示部である。
【0020】
USBホスト制御部15は、USB(ユニバーサルシリアルバス)通信規格で定められたプロトコルで通信を行うための制御部である。USB通信規格は、双方向のデータ通信を高速に行うことができる規格であり、1台のホスト(マスター)に対し、複数のハブまたはファンクション(スレーブ)を接続することができる。USBホスト制御部15は、USB通信におけるホストの機能を有する。
【0021】
USBファンクション制御部16は、USBインタフェースの通信制御を行うものであり、USB通信規格に従って、プロトコル制御を行い、CPU11が実行するUSB制御タスクからのデータを、パケットに変換し、外部の情報処理端末に、USBパケット送信を行い、逆に、外部の情報処理端末からのUSBパケットを、データに変換し、CPU11に送信する。
【0022】
記録部18は、レーザビームプリンタやインクジェットプリンタ等からなる印刷装置であり、カラー画像データ、またはモノクロ画像データを印刷部材に印刷する。また、USBホスト制御部15との間で、USB通信規格で定められたプロトコルで通信を行い、そのためUSBファンクションの機能を有する。
【0023】
カードリーダ部19は、各種メモリカードのインタフェースを有し、メモリカードを読み書きする。また、USBホスト制御部15との間で、USB通信規格で定められたプロトコルで通信を行い、そのためUSBファンクションの機能を有する。
【0024】
上記構成要素11〜16は、CPU11が管理するCPUバス17を介して、相互に接続されている。
【0025】
つまり、CPU11は、画像情報を制御する制御部の例であり、カードリーダ部19は、所定の記憶媒体を読み書きする記憶媒体読み書き手段の例である。USBインタフェース21は、外部情報処理装置と上記制御部とを接続する第1インタフェース手段の例である。USBインタフェース22は、上記制御部と上記記憶媒体読み書き手段とを接続する第2インタフェース手段の例である。
【0026】
CPU11は、上記外部情報処理装置と上記制御部とのうちの一方に、第1のセマフォを設定し、上記第1のセマフォが設定されている方だけに、上記所定の記憶媒体へのアクセスを許可するアクセス制御手段の例である。
【0027】
図2は、記憶媒体書込システムを構成する外部情報処理装置30の概略構成を示すブロック図である。
【0028】
外部情報処理装置30は、CPU31と、ROM32と、RAM33と、内部記憶装置34と、外部記憶装置35と、外部記憶ディスク36と、操作部37と、表示部38と、通信部39と、USBホスト制御部40と、CPUバス41とを有する。
【0029】
CPU31は、ROM32、RAM33、または、内部記憶装置34、外部記憶装置35に記憶されているプログラムから読み出されたプログラムに従って、CPUバス41を介して、外部情報処理装置30の全体の動作を制御する。
【0030】
ROM32は、CPU31の制御プログラム等を格納している。
【0031】
RAM33は、一時的にプログラムや画像データを記憶し、外部情報処理装置30の処理を高速に動作させるものである。
【0032】
内部記憶装置34は、オペレーティングシステム、各種アプリケーションプログラムや画像データ等が格納されている。内部記憶装置34には、本実施例における文字データ処理工程を含む、記憶媒体処理装置10に対する各種制御命令やデータの送受信を行うためのアプリケーションソフト、プリンタドライバソフト、スキャナドライバソフト、ファクシミリドライバソフト、各機能毎のUSBクラスドライバソフトおよびUSBバスドライバソフト等がインストールされている。
【0033】
通常、これらのアプリケーションソフトおよびドライバソフトは、これらが記憶されている他のコンピュータ可読媒体から外部記憶ディスク36(フロッピー(登録商標)ディスク、CD−ROMメディア等)によってデータを受け取り、外部記憶装置35を制御することによって、インストールする。また、通信回線L1によって通信部39(ネットワークやモデム)で、アプリケーションソフトおよびドライバソフトを受け取り、内部記憶装置34にインストールすることも可能である。
【0034】
操作部37は、オペレータからの指示入力手段としてのキーボードやマウス(不図示)を制御するものである。印刷の実行を起動する場合、通常、操作部37のキーボードやマウスが使用される。
【0035】
表示部38は、オペレータに各種表示を行うものである。外部情報処理装置30で印刷の実行起動をかける場合は、確認ダイヤログ等を表示部38に表示し、オペレータに入力を促す。また、印刷動作の実行中は、印刷状況を示す情報をオペレータに提供する。
【0036】
通信部39は、図示しないネットワークに接続し、通信回線L1を介して、インターネットプロバイダへの接続や、相手通信装置との間でのデータや画像情報等の通信を行う。
【0037】
ネットワークや通信回線L1への接続に関しては、公知の方法を使用し、詳述しない。
【0038】
USBホスト制御部40は、USBインタフェースの通信制御を行うものであり、USB通信規格に従って、CPU31からのデータを、パケットに変換し、記憶媒体処理装置10に、USBパケットを送信し、逆に、記憶媒体処理装置10からのUSBパケットを、データに変換し、CPU31に送信する。通信制御方法に関しては、公知の方法を使用し、詳述しない。
【0039】
次に、記憶媒体処理装置10によって、メモリカード内の画像を出力する手順について説明する。
【0040】
この手順に対応するプログラムは、ROM12に記録され、このプログラムをCPU11が実行する。
【0041】
まず、カードリーダ部19にメモリカードが接続され、カードリーダ部19がメモリカードから画像を読み取る。カードリーダ部19とUSBホスト制御部15とは、USBインタフェース22で接続されている。カードリーダ部19は、マス・ストレージクラス バルクオンリー準拠としている。
【0042】
本実施例において、カードリーダ部19は、USBホスト制御部15を介して、CPU11と接続されているが、メモリカードをCPUバス17に直接接続してもよく、メモリカードコントローラICをCPUバス17に接続し、メモリカードを接続してもよい。また、カードリーダ部19をアクセスする際の排他処理については、後述する。
【0043】
メモリカードから読み取った画像は、RAM13に保存され、CPU11がJPEG方式等から非圧縮画像データにデコードし、プリンタに出力される。
【0044】
次に、外部情報処理装置30を用いて、記憶媒体処理装置10で、メモリカードをアクセスする手順について説明する。
【0045】
外部情報処理装置30から、USBホスト制御部40を介して、メモリカードをアクセスするコマンドを発行する。これは、内部記憶装置34に記憶され、RAM33に読み込まれたOSに組み込まれたマス・ストレージクラス対応のストレージドライバと、USBホスト制御部40を制御するドライバ、スケジューラとを用いる。これらのドライバによって、USBパケットになったドライバは、記憶媒体処理装置10へ送られる。
【0046】
記憶媒体処理装置10では、USBファンクション制御部16で、上記USBパケットを受信し、CPU11内蔵のDMAコントローラによって、RAM13へパケットが書き込まれる。
【0047】
このコマンドを、CPU11で解析し、メモリカード書き込みコマンドであれば、USBホスト制御部15を介して、カードリーダ部19へコマンドを先に送り、その間とその後とに受信したメモリカードに書き込むデータを、受信し、それもカードリーダ部19へ送る。
【0048】
上記解析したコマンドがステータス応答コマンドやメモリカード読み込みコマンドであれば、コマンドをそのままカードリーダ部19へ送る。ここでのカードリーダ部19の排他処理については、後述する。
【0049】
送られたコマンドを、カードリーダ部19のコントローラが解析し、ステータス応答コマンドであれば、ステータスとCSW命令という受信確認データを読み出し、メモリカード読み出しコマンドであれば、メモリカードから指定されたブロックのデータを読み出し、CSWと一緒に、USBホスト制御部15へ送る。
【0050】
上記解析したコマンドが書き込みコマンドであれば、メモリカードにデータを書き込んだ後に、CSWをUSBホスト制御部15へ送る。この部分は、一般に、PC周辺機器として販売されているUSBカードリーダをそのまま用いられる構成にしてあるので、詳細な動作は省略する。
【0051】
カードリーダ部19から受信した読み出しデータと、CSWとを、USBホスト制御部15が受信し、CPU11のDMAコントローラで、RAM13へ転送し、さらに、CPU11のDMAコントローラで、USBファンクション制御部16へ転送する。USBファンクション制御部16で、USBパケットに分割され、外部情報処理装置30へ転送される。
【0052】
上記手順において、外部情報処理装置30からは、あたかもUSB接続のメモリカードリーダに直接接続されているように利用することができる。
【0053】
続いて、上記実施例における排他処理について説明する。
【0054】
排他処理についても、記憶媒体処理装置10内のROM12に書き込まれているプログラムを、CPU11が実行することによって実現する。
【0055】
外部情報処理装置30からメモリカードをアクセスする場合と、記憶媒体処理装置10内の記録部18が出力するためにメモリカードをアクセスする場合とについて、書き込みセマフォを設定する。
【0056】
外部情報処理装置30からカードリーダ部19にデータを書き込む場合、書き込みセマフォの取得を試みる。この試みによってセマフォの取得に成功するか、または、書き込み後一定期間内にセマフォを既に取得した状態であれば、上記書き込み手順に従って、カードリーダ部19に書き込みを行う。
【0057】
上記書き込みが終了し、しかも一定期間が過ぎたら、セマフォを開放する。書き込み以外は、セマフォに関係なく、カードリーダ部19にアクセスできる。上記セマフォを取得できなければ、CSWのエラービットを1にし、書き込み不可のエラーを外部情報処理装置30に返す。
【0058】
記憶媒体処理装置10内でカードリーダ部19を用いる場合、ユーザーからメモリカードの画像を記録部へ出力する指示が出たら、まず、書き込みセマフォの取得を試みる。上記セマフォを取得できなければ、外部情報処理装置30が、メモリカードの利用中であることを、表示部14に表示し、処理を終了する。または、セマフォが取得できるまで、そのまま待機するようにしてもよい。
【0059】
セマフォを取得できたら、上記手順に従って、メモリカード内の画像を記録部18に出力する。出力が終了したら、書き込みセマフォを開放する。
【0060】
上記のようにすれば、記憶媒体処理装置10内で記録部18へ出力中に、外部情報処理装置30から読み出しが発生し、USBホスト制御部15の制御は、別タスクとし、一方のCBWを受信したら、DATAの送受信、CSWの受信が終了するまで、他方のCBWは、受け付けたまま保持する。
【0061】
つまり、上記実施例は、画像情報等の制御をする制御部と、PCと制御部を接続する第1のインタフェースと、カードリーダと、制御部とカードリーダとを接続する第2のインタフェースをもち、PCと制御部とからカードリーダへのアクセスについて、書き込みセマフォと、コマンドセマフォとを設定する。
【0062】
PCからカードリーダを用いる場合、制御部は、書き込みを行う恐れが無いので、読み込みを自由に実行することができる。PCからの書き込み中は、メモリカードの内容が保証できないので、PCが書き込みセマフォを取得する。このセマフォを取得できれば、メモリカードへ書き込みすることができる。上記セマフォを取得できなければ、内蔵プリンタに出力する等のデータに変化があってはいけないので、書き込み不可のエラーをPCに返す。
【0063】
このときに、PCからの書き込みは、データを書き込んでからFAT(ファイル・アロケーション・テーブル)を書き込む等、複数回に分かれることが多い。この書き込みの途中で、制御部にセマフォを取得されると、正常に書き込みが終了できないので、書き込みが終了してから一定期間保持した後に、セマフォを開放する。
【0064】
制御部からの場合、制御部は、主に画像の出力に用いるので、書き込むことはないが、画像出力中に画像を書き換えられると、正常な画像が出力できなくなるので、画像出力モード中は、制御部が書き込みセマフォを取得する。セマフォを取得できなければ、メモリカードがビジーであることを、装置のオペレーションパネル等に表示し、PCの書き込みが終了するのを待つ。上記のように、書き込み処理に関して排他処理を実現する。
【0065】
また、メモリカードへアクセスするためのコマンドは、マス・ストレージクラス準拠のカードリーダであれば、CBWと呼ばれるコマンド、DATA、CSWと呼ばれるレスポンスの3つで1組になる。
【0066】
たとえば、PCからの1組のコマンドが終わるまでは、書き込みセマフォに関係なく、制御部のコマンドを受け付けることができない。したがって、コマンドを発行する前に、コマンドセマフォを取得する。
【0067】
または、片方の1組の処理が終わるまで、他方の処理を受け取り、順番に処理するスケジュール機能を持ったタスクを、他の処理と別に走らせるようにしてもよい。
【0068】
上記のように、書込禁止権とコマンド発行権との2つの制御によって、1つのカードリーダを、制御部による内部の利用と、PCからの外部からの利用との両方に使うことができる。
【0069】
上記実施例では、PCからの書き込みも安全に行うことができ、PCで利用する場合と、機器単体で制御部から利用する場合とのモード切り替えを実行する必要がない。
【0070】
上記実施例によれば、1台のメモリカードリーダを、装置内部の制御部と、外部のPCとの両方から、同時に使うことができ、制御部、PCのそれぞれから用いる場合に、面倒なモード切り替えを行う必要がない。
【0071】
また、上記実施例によれば、PCからは、あたかも独立し、一般に市販されているUSBカードリーダが接続されているように使うことができる。
【0072】
さらに、PCからメモリカードへの書き込みも、同時に接続されている制御部を、ユーザが気にかけることなく、安全に行うことができる。
【0073】
そして、PCから一般的なカードリーダに見えること、書き込みの排他制御が装置内で行われているので、特別なコマンドや排他制御を実現するようなデバイスドライバを新たに開発せずに、OS付属のデバイスドライバを利用することができる。
【0074】
ところで、従来は、書込禁止状態を実現するために、独自のコマンド体系でPCに書込禁止状態を通知する方法がある。しかし、この従来方法では、PCのOSに内蔵している一般的なデバイスドライバでは動作しないという問題がある。
【0075】
本発明は、メモリカード内の画像の出力中等、メモリカードが書き換えられてはならない場合、書込禁止として処理するだけで、メモリカードは使用禁止にはしないので、PCに常にメモリカードが接続されている状態にすることができ、したがって、面倒なモード切り替えを必要としない記憶媒体処理装置およびその制御方法を提供することを目的とするものである。
【0076】
図3は、本発明の第2の実施例である記憶媒体処理装置60の概略構成を示すブロック図である。
【0077】
記憶媒体処理装置60は、CPU61と、ROM62と、RAM63と、表示部64と、操作パネル65と、USBホスト制御部66と、記録部67と、カードリーダ部68と、USBファンクション制御部69と、CPUバス71とを有する。
【0078】
CPU61は、システム制御部であり、記憶媒体処理装置60の全体を制御する。ROM62は、CPU61が実行する制御プログラム、組み込みオペレーティングシステム(OS)プログラム等を格納する。第2の実施例では、ROM62に格納されている各制御プログラムは、ROM62に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ等のソフトウェア制御を行う。
【0079】
RAM63は、DRAM(dynamic RAM)等で構成され、プログラム制御変数等を格納し、また、設定値や記憶媒体処理装置60の管理データ等を格納し、各種ワーク用バッファ領域が設けられている。
【0080】
表示部64は、LED(発光ダイオード)とLCD(液晶ディスプレイ)等によって構成され、記憶媒体処理装置60の動作状況、ステータス状況の表示、そしてカードリーダの状態の表示を行う表示部である。
【0081】
操作パネル65は、記憶媒体処理装置60にユーザから各種指示を入力するもので、CPU61に、バスかCPU61のポートに接続され、方向キー、決定、解除、各機能キー等によって構成されている。
【0082】
USBホスト制御部66は、USB通信規格で定められたプロトコルで通信を行う制御部である。USB通信規格は、双方向のデータ通信を高速に行うことができる規格であり、1台のホストに対し、複数のハブまたはファンクションを接続することができる。USBホスト制御部66は、USB通信におけるホストの機能を有する。
【0083】
USBファンクション制御部69は、USBインタフェースの通信制御を行うものであり、USB通信規格に従って、プロトコル制御を行い、CPU61が実行するUSB制御タスクからのデータを、パケットに変換し、外部の情報処理端末に、USBパケット送信を行い、逆に、外部の情報処理端末からのUSBパケットを、データに変換し、CPU61に送信する。
【0084】
記録部67は、レーザビームプリンタやインクジェットプリンタ等からなる印刷装置であり、カラー画像データ、またはモノクロ画像データを印刷部材に印刷する。また、USBホスト制御部66との間で、USB通信規格で定められたプロトコルで通信を行い、そのためUSBファンクションの機能を有する。
【0085】
カードリーダ部68は、各種メモリカードのインタフェースを有し、メモリカードを読み書きし、USBホスト制御部66との間で、USB通信規格で定められたプロトコルで通信を行い、そのために、USBファンクションの機能を有する。
【0086】
上記構成要素61〜66、69は、CPU61が管理するCPUバス71を介して、相互に接続されている。
【0087】
つまり、CPU61は、画像情報を制御する制御部の例であり、USBインタフェース73は、外部情報処理装置と上記制御部とを接続する第1インタフェース手段の例である。カードリーダ部68は、所定の記憶媒体の読み書きを行う記憶媒体読み書き手段の例である。
【0088】
USBインタフェース72は、上記制御部と上記記憶媒体読み書き手段とを接続する第2インタフェース手段の例である。CPU61は、上記制御部から上記所定の記憶媒体へアクセス中は、上記外部情報処理装置から上記所定の記憶媒体への書き込みができない旨を、上記外部情報処理装置へ通知する通知手段の例である。
【0089】
次に、記憶媒体書込システムを構成する外部情報処理装置80の概略を詳細に説明する。
【0090】
図4は、外部情報処理装置80の概略構成を示すブロック図である。
【0091】
外部情報処理装置80は、CPU81と、ROM82と、RAM83と、内部記憶装置84と、外部記憶装置85と、外部記憶ディスク86と、操作部87と、表示部88と、通信部89と、USBホスト制御部90とを有する。
【0092】
CPU81は、ROM82、RAM83、または、内部記憶装置84、外部記憶装置85に記憶されているプログラムから読み出されたプログラムに従って、CPUバス91を介して、外部情報処理装置80全体の動作を制御する。
【0093】
ROM82は、CPU81の制御プログラム等を格納している。
【0094】
RAM83は、プログラム、画像データを一時的に記憶し、外部情報処理装置80の処理を高速に動作させるためのものである。
【0095】
内部記憶装置84は、オペレーティングシステム、各種アプリケーションプログラムや画像データ等が格納されている。内部記憶装置84には、第2の実施例における文字データ処理工程を含む記憶媒体処理装置60に対する各種制御命令、データの送受信を行うためのアプリケーションソフト、プリンタドライバソフト、スキャナドライバソフト、ファクシミリドライバソフト、機能ごとのUSBクラスドライバソフト、USBバスドライバソフト等がインストールされている。通常、これらのアプリケーションソフトとドライバソフトとは、これらが記憶された他のコンピュータ可読媒体から外部記憶ディスク86(フロッピー(登録商標)ディスク、CD−ROMメディア等)によって、データを受け取り、外部記憶装置85を制御することによって、インストールする。また、通信回線L2によって、通信部89(ネットワークやモデム)が、アプリケーションソフトとドライバソフトとを受け取り、内部記憶装置84にインストールするようにしてもよい。
【0096】
操作部87は、オペレータからの指示入力手段としてのキーボードやマウス(不図示)を制御するものである。印刷の実行を起動する場合、通常、操作部87のキーボードやマウスが使用される。
【0097】
表示部88は、オペレータに各種表示を行うものである。外部情報処理装置80で印刷の実行起動をかける場合は、確認ダイヤログ等を表示部88に表示し、オペレータに入力を促す。また、印刷動作の実行中は、印刷状況を示す情報をオペレータに提供する。
【0098】
通信部89は、図示しないネットワークに接続し、通信回線L2を通してインターネットプロバイダへの接続や、相手通信装置との間でのデータや画像情報等の通信を行う。
【0099】
ネットワークや通信回線L2への接続は、公知の方法を使用するので、詳述はしない。
【0100】
USBホスト制御部90は、USBインタフェースの通信制御を行うものであり、USB通信規格に従って、CPU81からのデータを、パケットに変換し、記憶媒体処理装置60に、USBパケットを送信し、逆に、記憶媒体処理装置60からのUSBパケットを、データに変換し、CPU81に送信する。通信制御方法として、公知の方法を使用するので、詳述はしない。
【0101】
次に、記憶媒体処理装置60でメモリカード内の画像を出力する動作について説明する。
【0102】
この動作は、ROM62に記録され、CPU61が実行する。
【0103】
まず、カードリーダ部68に接続されたメモリカードから画像を読み取る。カードリーダ部68とUSBホスト制御部66とは、USBインタフェースで接続され、カードリーダは、マスストレージクラス バルクオンリー準拠としている。第2の実施例では、カードリーダ部68は、USBホスト制御部66を介して、CPU61と接続されているが、メモリカードを、バスに直接接続するようにしてもよく、メモリカードコントローラICをバスに接続し、メモリカードを接続してもよい。
【0104】
メモリカードから読み取った画像は、RAM63に保存され、CPU61によって、JPEG方式等から非圧縮画像データにデコードされ、プリンタに出力される。
【0105】
次に、外部情報処理装置80を用いて、記憶媒体処理装置60で、メモリカードをアクセスする動作について説明する。
【0106】
外部情報処理装置80から、USBホスト制御部90を介して、メモリカードをアクセスするコマンドを発行する。これは、内部記憶装置84に記憶され、RAM83に読み込まれたOSに組み込まれたマスストレージクラス対応のストレージドライバと、USBホスト制御部90を制御するドライバと、スケジューラとを用いる。これらのドライバによって、USBパケットとなったドライバは、記憶媒体処理装置60へ送られる。
【0107】
記憶媒体処理装置60では、USBファンクション制御部66で上記USBパケットを受信し、CPU61内蔵のDMAコントローラによって、RAM63へパケットが書き込まれる。
【0108】
このコマンドを、CPU61で解析し、メモリカード書き込みコマンドであれば、USBホスト制御部66を介して、カードリーダ部68へコマンドを先に送り、その間とその後とに受信したメモリカードに書き込むデータを受信し、それもカードリーダ部68へ送る。上記コマンドがステータス応答コマンドやメモリカード読み込みコマンドであれば、コマンドをそのままカードリーダ部68へ送る。
【0109】
送られてきたコマンドを、カードリーダ部68のコントローラで解析し、ステータス応答コマンドであれば、ステータスとCSWという受信確認データを読み出し、上記コマンドがメモリカード読み出しコマンドであれば、メモリカードから指定されたブロックのデータを読み出し、CSWと一緒に、USBホスト制御部66へ送る。上記コマンドが書き込みコマンドであれば、メモリカードにデータを書き込んだ後に、CSW命令をUSBホスト制御部へ送る。この部分は、一般に、PC周辺機器として販売されているUSBカードリーダを、そのまま用いられる構成にしてあるので、詳細な動作の説明を省略する。
【0110】
カードリーダ部68から受信した読み出しデータと、CSW命令とを、USBホスト制御部66で受信し、CPU61のDMAコントローラでRAM63へ転送し、さらに、CPU61のDMAコントローラで、USBファンクション制御部69へ転送する。USBファンクション制御部69で、USBパケットに分割され、外部情報処理装置80へ転送される。
【0111】
上記操作によって、PCからは、あたかもUSB接続のメモリカードリーダに直接接続されているように利用することができる。
【0112】
次に、第2の実施例における書込禁止制御について説明する。
【0113】
外部情報処理装置80から、記憶媒体処理装置60に、USB接続でメモリカードをアクセスする際は、マスストレージクラスのコマンドを用いる。このコマンドの中で、MODE SENSE(6)/MODE SENSE(6)コマンドで、メモリカードの書き込み許可状態を、外部情報処理装置80から記憶媒体処理装置60に尋ねることができる。メモリカードの状態によらず、記憶媒体処理装置60として書込禁止状態にする必要があれば、カードリーダ部68からの返り値に、書込禁止ビットを1にして、メモリカードが書込禁止状態であるとして、PCに通知する。
【0114】
しかし、外部情報処理装置80側のOSによっては、接続時に書込許可状態であれば、途中から書込禁止に状態が変化してないと仮定し、現在の書込禁止状態を調査せずに、書き込みコマンドWRITE(6)/WRITE(6)を発行するものもある。
【0115】
USBの場合、コマンドに応答しないと、OSによってはPCがフリーズする場合がある。そこで、コマンド(CBW)と書込データとを全て受信した上で、レスポンス(CSW)を返す必要がある。
【0116】
しかし、そのままカードリーダ部68に送信すると、メモリカードにデータが書き込まれ、何もならない。
【0117】
そこで、記憶媒体処理装置60内のUSBファンクション制御部69でコマンドを受信し、上記のように、一旦、RAM63に転送した後に解析し、書込コマンドの場合、現在の書込許可状態を調査する。書込許可状態であれば、上記動作通りに、カードリーダ部68へコマンドを送る。
【0118】
図5は、第2の実施例において、擬似的にCSW命令を作成する際のデータを示す図である。
【0119】
書込禁止状態であれば、CBW命令とデータとを受信した後に、そのデータを破棄し、図5に示す値で、擬似的にCSWを作成し、外部情報処理装置80へ送る。
【0120】
つまり、上記第2の実施例は、画像情報等の制御をする制御部と、PCと制御部を接続する第1のインタフェースと、カードリーダと、制御部とカードリーダとを接続する第2のインタフェースを有する。
【0121】
メモリカード内の画像の出力中等、メモリカードが書き換えられてはならない場合は、装置の設定を、メモリカード書込禁止状態にする。この実現方法として、次の2つを組み合わせる。
【0122】
1つ目の組み合わせは、PCから問い合わせがあった場合、現在の書込許可状態を通知する。2つ目の組み合わせは、書込禁止中に、実際に書込コマンドが来た場合、コマンドとデータとを受信し、その内容を、カードリーダ部に送信せずに、擬似的な返答を、PCに返す。
【0123】
このようにして、1台のメモリカードリーダを、装置内部の制御部と、外部のPCとの両方から同時に使うことができる。
【0124】
上記第2の実施例によれば、メモリカード内の画像の出力中等、メモリカードが書き換えられてはならない場合、書込禁止として処理するだけで、メモリカードは使用禁止にはしないので、PCに常にメモリカードが接続されている状態にすることができ、したがって、面倒なモード切り替えを必要としない。
【0125】
また、第2の実施例によれば、書込禁止状態のときに、書込コマンドが来ても正常にレスポンスを返すので、PCを不安定にすることがなく、また、誤ってメモリカードに書き込むことがない。
【0126】
さらに、第2の実施例によれば、書き込み禁止処理を、ストレージクラスで定義されたコマンドの枠内で行い、特別なコマンドや書込禁止処理を実現するようなデバイスドライバを新たに開発せずに、OS付属のデバイスドライバを利用することができる。
【0127】
そして、第2の実施例によれば、1台のメモリカードリーダを、装置内部の制御部と、外部のPCとの両方から同時に使うことができる。
【0128】
【発明の効果】
請求項1〜10記載の発明によれば、1台のメモリカードリーダを、装置内部の制御部と、外部のPCとの両方から、同時に使うことができ、制御部、PCのそれぞれから用いる場合に、面倒なモード切り替えを行う必要がないという効果を奏する。
【0129】
請求項11〜18によれば、メモリカード内の画像の出力中等、メモリカードが書き換えられてはならない場合、書込禁止として処理するだけで、メモリカードは使用禁止にはしないので、PCに常にメモリカードが接続されている状態にすることができ、したがって、面倒なモード切り替えを必要としないという効果を奏する。
【図面の簡単な説明】
【図1】本発明の一実施例である記憶媒体処理装置10の概略構成を示すブロック図である。
【図2】記憶媒体書込システムを構成する外部情報処理装置30の概略構成を示すブロック図である。
【図3】本発明の第2の実施例である記憶媒体処理装置60の概略構成を示すブロック図である。
【図4】外部情報処理装置80の概略構成を示すブロック図である。
【図5】第2の実施例において、擬似的にCSW命令を作成する際のデータを示す図である。
【符号の説明】
10、60…記憶媒体処理装置、
11、61…CPU、
12、62…ROM、
13、63…RAM、
14、64…表示部、
15、66…USBホスト制御部、
16、69…USBファンクション制御部、
17、71…CPUバス、
18、67…記録部、
19…カードリーダ部、
21、22…USBインタフェース、
65…操作パネル、
30、80…外部情報処理装置、
37、87…操作部、
39、89…通信部、
40、90…USBホスト制御部。

Claims (18)

  1. 画像情報を制御する制御部と;
    外部情報処理装置と上記制御部とを接続する第1インタフェース手段と;
    所定の記憶媒体の読み書きを行う記憶媒体読み書き手段と;
    上記制御部と上記記憶媒体読み書き手段とを接続する第2インタフェース手段と;
    上記外部情報処理装置と上記制御部とのうちの一方に、第1のセマフォを設定し、上記第1のセマフォが設定されている方だけに、上記所定の記憶媒体へのアクセスを許可するアクセス制御手段と;
    を有することを特徴とする記憶媒体処理装置。
  2. 請求項1において、
    上記第1のセマフォを取得し、上記アクセスが終了し、上記第1のセマフォを開放する際に、一定期間、上記第1のセマフォを保持した後に開放する機能を、上記制御部、上記外部情報処理装置のうちの少なくとも一方が有することを特徴とする記憶媒体処理装置。
  3. 請求項1または請求項2において、
    上記所定の記憶媒体を書き換える場合だけ、上記外部情報処理装置が、上記第1のセマフォを取得し、読み込みの際には上記第1のセマフォを必要とせずに、読み込みできるように制御することを特徴とする記憶媒体処理装置。
  4. 請求項1〜請求項3のいずれか1項において、
    上記外部情報処理装置と上記制御部とから上記所定の記憶媒体へアクセスする一連の処理について、第2のセマフォを設定し、
    上記第2のセマフォを取得できた方のみが、上記一連の処理が終わるまで、上記所定の記憶媒体へ独占してアクセスできるように制御することを特徴とする記憶媒体処理装置。
  5. 請求項1〜請求項3のいずれか1項において、
    上記外部情報処理装置と上記制御部とから上記所定の記憶媒体へのアクセスに対して、一方の一連の処理手続きが終了するまで、他方の処理をはさまないようにスケジュールする手段を有することを特徴とする記憶媒体処理装置。
  6. 請求項4または請求項5において、
    上記第1、2のセマフォを持たない側が、上記所定の記憶媒体へアクセスしようとする際に、アクセスできない旨を表示する表示手段を有することを特徴とする記憶媒体処理装置。
  7. 請求項1〜請求項6のいずれか1項において、
    画像出力手段と;
    上記制御部と上記画像出力手段とを接続する第3のインタフェース手段と;
    を有し、上記所定の記憶媒体から読み出した画像を、上記画像出力手段から出力することを特徴とする記憶媒体処理装置。
  8. 請求項7において、
    上記第1、第2、第3のインタフェース手段のうちの少なくとも1つが、USBであることを特徴とする記憶媒体処理装置。
  9. 請求項1〜請求項8のいずれか1項において、
    上記第2のインタフェース手段と上記記憶媒体読み書き手段とがCPUバスに接続されているメモリカードコントローラであることを特徴とする記憶媒体処理装置。
  10. 画像情報を制御する制御段階と;
    外部情報処理装置と、画像情報を制御する制御部とを接続する第1インタフェース段階と;
    所定の記憶媒体の読み書きを行う記憶媒体読み書き段階と;
    上記制御部と、上記所定の記憶媒体を読み書きする上記記憶媒体読み書き手段とを接続する第2インタフェース段階と;
    上記外部情報処理装置と上記制御部とのうちの一方に、第1のセマフォを設定し、上記第1のセマフォが設定されている方だけに、上記所定の記憶媒体へのアクセスを許可するアクセス制御段階と;
    を有することを特徴とする記憶媒体処理装置の制御方法。
  11. 画像情報を制御する制御部と;
    外部情報処理装置と上記制御部とを接続する第1インタフェース手段と;
    所定の記憶媒体の読み書きを行う記憶媒体読み書き手段と;
    上記制御部と上記記憶媒体読み書き手段とを接続する第2インタフェース手段と;
    上記制御部から上記所定の記憶媒体へアクセス中は、上記外部情報処理装置から上記所定の記憶媒体への書き込みができない旨を、上記外部情報処理装置へ通知する通知手段と;
    を有することを特徴とする記憶媒体処理装置。
  12. 請求項11において、
    ユーザから上記所定の記憶媒体への書き込み禁止命令を受け付ける操作部を有し、
    上記通知手段は、上記操作部から書き込み禁止命令を受け付けた際に、上記外部情報処理装置からの記憶媒体への書き込みができない旨を、上記外部情報処理装置へ通知する手段であることを特徴とする記憶媒体処理装置。
  13. 請求項11または請求項12において、
    書き込みできない状態であるときに、上記外部情報処理装置から上記所定の記憶媒体への書込命令を受信した場合、一連の書込手続を上記制御部で受信し、レスポンスを返信し、そのデータを上記記憶媒体読み書き手段へは送らないことを特徴とする記憶媒体処理装置。
  14. 請求項11〜請求項13のいずれか1項において、
    上記通知手段は、装置内部における上記所定の記憶媒体への一時的な書込禁止状態を、上記外部情報処理装置へ通知しない手段であることを特徴とする記憶媒体処理装置。
  15. 請求項11〜請求項14のいずれか1項において、
    画像出力手段と;
    上記制御部と上記画像出力手段とを接続する第3のインタフェース手段と;
    を有し、上記所定の記憶媒体から読み出した画像を、上記画像出力手段から出力することを特徴とする記憶媒体処理装置。
  16. 請求項15において、
    上記第1、第2、第3のインタフェース手段のうちの少なくとも1つが、USBであることを特徴とする記憶媒体処理装置。
  17. 請求項11〜請求項15のいずれか1項において、
    上記第2のインタフェース手段と上記記憶媒体読み書き手段とがCPUバスに接続されているメモリカードコントローラであることを特徴とする記憶媒体処理装置。
  18. 画像情報を制御する制御段階と;
    外部情報処理装置と、画像情報を制御する制御部とを接続する第1インタフェース段階と;
    所定の記憶媒体の読み書きを行う記憶媒体読み書き段階と;
    上記制御部と、上記所定の記憶媒体の読み書きを行う記憶媒体読み書き手段とを接続する第2インタフェース段階と;
    上記制御部から上記所定の記憶媒体へアクセス中は、上記外部情報処理装置から上記所定の記憶媒体への書き込みができない旨を、上記外部情報処理装置へ通知する通知段階と;
    を有することを特徴とする記憶媒体処理装置の制御方法。
JP2002253369A 2002-08-30 2002-08-30 記憶媒体処理装置およびその制御方法 Pending JP2004094493A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002253369A JP2004094493A (ja) 2002-08-30 2002-08-30 記憶媒体処理装置およびその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002253369A JP2004094493A (ja) 2002-08-30 2002-08-30 記憶媒体処理装置およびその制御方法

Publications (1)

Publication Number Publication Date
JP2004094493A true JP2004094493A (ja) 2004-03-25

Family

ID=32059391

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002253369A Pending JP2004094493A (ja) 2002-08-30 2002-08-30 記憶媒体処理装置およびその制御方法

Country Status (1)

Country Link
JP (1) JP2004094493A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005316951A (ja) * 2004-03-30 2005-11-10 Seiko Epson Corp 情報端末、情報処理システム、及び、これらの制御方法
JP2007114998A (ja) * 2005-10-20 2007-05-10 Sony Corp 中継装置、記憶装置及び記憶システム
US7870304B2 (en) 2007-08-30 2011-01-11 Brother Kogyo Kabushiki Kaisha Device and file transfer system
US7904609B2 (en) 2007-08-30 2011-03-08 Brother Kogyo Kabushiki Kaisha Device and file transfer system
US7949796B2 (en) 2007-08-30 2011-05-24 Brother Kogyo Kabushiki Kaisha Device and file transfer system
JP2013142909A (ja) * 2012-01-06 2013-07-22 Canon Inc 電子機器

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005316951A (ja) * 2004-03-30 2005-11-10 Seiko Epson Corp 情報端末、情報処理システム、及び、これらの制御方法
JP2007114998A (ja) * 2005-10-20 2007-05-10 Sony Corp 中継装置、記憶装置及び記憶システム
US7870304B2 (en) 2007-08-30 2011-01-11 Brother Kogyo Kabushiki Kaisha Device and file transfer system
US7904609B2 (en) 2007-08-30 2011-03-08 Brother Kogyo Kabushiki Kaisha Device and file transfer system
US7949796B2 (en) 2007-08-30 2011-05-24 Brother Kogyo Kabushiki Kaisha Device and file transfer system
JP2013142909A (ja) * 2012-01-06 2013-07-22 Canon Inc 電子機器

Similar Documents

Publication Publication Date Title
US8112793B2 (en) Image forming apparatus and image forming system
JP2010049456A (ja) データ処理装置、データ処理方法、会議システム、記憶媒体及びプログラム
JP2007299225A (ja) 印刷制御装置及びその制御方法及びコンピュータプログラム
JP4209789B2 (ja) ファイル作成方法、サーバ、記録媒体及びプログラム追加システム
JP2004139386A (ja) 印刷システムの制御方法
JP4209790B2 (ja) 情報処理装置,画像形成装置,プログラム起動時のエラー処理方法および記録媒体
JPH0325523A (ja) コンピユータ周辺機器
CN100409167C (zh) 状态信息处理器
JP2004094493A (ja) 記憶媒体処理装置およびその制御方法
KR100720922B1 (ko) 인쇄 제어 프로그램을 격납한 전자계산기, 및 인쇄 제어용 프로그램을 기록한 전자계산기로 읽을 수 있는 저장매체
JP4209794B2 (ja) 画像形成装置及びプログラム起動方法
JP2003141501A (ja) 画像処理装置および画像処理装置の表示部制御方法およびプログラムおよび記憶媒体
JP2006293638A (ja) 情報処理装置及び周辺装置
JP2006331088A (ja) 記憶媒体処理装置
JP4592063B2 (ja) 画像処理装置、画像データ管理方法、及び画像データ管理プログラム
JP2007219576A (ja) プリンタドライバ選択プログラム及び記録媒体
JP2006256041A (ja) 画像形成装置及び画像形成方法
JP2006338232A (ja) 通信システム
JP2004272457A (ja) 画像処理装置、画像処理装置の制御方法およびプログラム
US8542387B2 (en) Printing apparatus, printing system and printer driver
JP2013003696A (ja) 印刷システム、画像形成装置とその処理方法及びプログラム
JP2004110622A (ja) 記憶媒体書込装置および記憶媒体書込装置の制御方法
US20100033747A1 (en) Image forming device, image forming system and computer readable medium for install
JP2004246571A (ja) 情報処理装置
JP2006323463A (ja) 情報処理装置及びその制御方法