図面 (/)

技術 情報処理装置、情報処理方法及びプログラム

出願人 キヤノン株式会社
発明者 平野安彦
出願日 2014年9月26日 (4年9ヶ月経過) 出願番号 2014-197339
公開日 2016年5月9日 (3年2ヶ月経過) 公開番号 2016-071448
状態 特許登録済
技術分野 情報転送方式 通信制御
主要キーワード 代替設定 クラス仕様 切り換え要求 物理層回路 内部タイマー 上位機器 応答動作 データ消失
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2016年5月9日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (6)

課題

バッファの設定の切り替えが指示された場合にも、データの消失を防止することを目的とする。

解決手段

バッファのデータを転送する転送手段と、外部装置からバッファの設定を切り替える切り換え要求を受信した場合、転送手段によるデータの転送が終了しているか否かを判定する判定手段と、判定手段によりデータの転送が終了していないと判定された場合、外部装置に対して再送要求を送信する送信手段と、を有することによって課題を解決する。

概要

背景

PC等の上位機器と、MFPやプリンタ等の周辺機器は、各種インターフェース(以下、I/Fという)を介して接続され、印刷データ等のデータ通信を行う。各種I/Fとして、例えば、USB(Universal Serial Bus)が広く使用されている。
USB規格においては、アプリケーション毎に共通のドライバを使用することを目的として、周辺機器(USB Function)の種類に対応して、USBデバイスクラス仕様が規定されている。プリンタクラス仕様においても、必要な転送モード送受信バッファであるEnd Pointの数とが規定されており、この仕様に準拠することによって、USBプリンタクラスドライバを使用することができる。
PCからの印刷データは、Bulk Outと呼ばれるUSBホストからUSB Function方向へのデータ転送により、MFPへ転送される。
MFPでは、送受信バッファであるEnd Pointに格納したデータをDMAC(Dynamic Memory Access Controller)を用いて、内部のデータ格納領域であるRAMに転送する。
USB規格も高速なUSB3.0(データ通信速度が最大5Gbps)が実用化されている。そのため、送受信バッファであるEnd Pointにデータがすべて入っている状態でそれ以上のデータを受信することができないという課題がある。
これに対して、USBホストからの指示に基づいて、送受信バッファのバッファサイズを変更するという技術が公開されている(特許文献1)。

概要

バッファの設定の切り替えが指示された場合にも、データの消失を防止することを目的とする。バッファのデータを転送する転送手段と、外部装置からバッファの設定を切り替える切り換え要求を受信した場合、転送手段によるデータの転送が終了しているか否かを判定する判定手段と、判定手段によりデータの転送が終了していないと判定された場合、外部装置に対して再送要求を送信する送信手段と、を有することによって課題を解決する。

目的

本発明は、バッファの設定の切り替えが指示された場合にも、データの消失を防止することを目的とする

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

バッファのデータを転送する転送手段と、外部装置から前記バッファの設定を切り替え切り換え要求を受信した場合、前記転送手段による前記データの転送が終了しているか否かを判定する判定手段と、前記判定手段により前記データの転送が終了していないと判定された場合、前記外部装置に対して再送要求を送信する送信手段と、を有する情報処理装置

請求項2

前記送信手段は、前記判定手段により前記データの転送が終了していると判定された場合、前記外部装置に対して肯定応答を送信する請求項1記載の情報処理装置。

請求項3

前記送信手段により前記外部装置に対して肯定応答を送信した後、前記バッファを初期化する初期化手段を更に有する請求項2記載の情報処理装置。

請求項4

前記判定手段は、前記バッファに前記データがあるか否かに基づいて、前記データの転送が終了しているか否かを判定する請求項1乃至3何れか1項記載の情報処理装置。

請求項5

前記転送手段は、前記外部装置から受信され、前記バッファに一時的に記憶されているデータを内部メモリに転送する請求項1乃至4何れか1項記載の情報処理装置。

請求項6

前記外部装置とは、USBケーブルを介して接続され、前記切り替え要求は、Alternate切り替え要求である請求項1乃至5何れか1項記載の情報処理装置。

請求項7

前記送信手段は、前記再送要求としてNACK応答を送信する請求項1乃至6何れか1項記載の情報処理装置。

請求項8

前記送信手段は、前記肯定応答としてACK応答を送信する請求項2又は3記載の情報処理装置。

請求項9

前記送信手段は、前記再送要求としてNRDY応答を送信する請求項1乃至6何れか1項記載の情報処理装置。

請求項10

情報処理装置が実行する情報処理方法であって、バッファのデータを転送する転送ステップと、外部装置から前記バッファの設定を切り替える切り換え要求を受信した場合、前記転送ステップによる前記データの転送が終了しているか否かを判定する判定ステップと、前記判定ステップにより前記データの転送が終了していないと判定された場合、前記外部装置に対して再送要求を送信する送信ステップと、を含む情報処理方法。

請求項11

コンピュータを、請求項1乃至9何れか1項記載の情報処理装置の各手段として機能させるためのプログラム

技術分野

0001

本発明は、USBホストからの受信データの消失を防止する情報処理装置情報処理方法及びプログラムに関する。

背景技術

0002

PC等の上位機器と、MFPやプリンタ等の周辺機器は、各種インターフェース(以下、I/Fという)を介して接続され、印刷データ等のデータ通信を行う。各種I/Fとして、例えば、USB(Universal Serial Bus)が広く使用されている。
USB規格においては、アプリケーション毎に共通のドライバを使用することを目的として、周辺機器(USB Function)の種類に対応して、USBデバイスクラス仕様が規定されている。プリンタクラス仕様においても、必要な転送モード送受信バッファであるEnd Pointの数とが規定されており、この仕様に準拠することによって、USBプリンタクラスドライバを使用することができる。
PCからの印刷データは、Bulk Outと呼ばれるUSBホストからUSB Function方向へのデータ転送により、MFPへ転送される。
MFPでは、送受信バッファであるEnd Pointに格納したデータをDMAC(Dynamic Memory Access Controller)を用いて、内部のデータ格納領域であるRAMに転送する。
USB規格も高速なUSB3.0(データ通信速度が最大5Gbps)が実用化されている。そのため、送受信バッファであるEnd Pointにデータがすべて入っている状態でそれ以上のデータを受信することができないという課題がある。
これに対して、USBホストからの指示に基づいて、送受信バッファのバッファサイズを変更するという技術が公開されている(特許文献1)。

先行技術

0003

特開2008−15823号公報

発明が解決しようとする課題

0004

USB Functionには、Alternate Settingと呼ばれる代替設定が規定されており、送受信バッファであるEnd Pointの設定を複数持つことができる。
特許文献1に記載の通信装置では、送受信バッファにデータが残っている場合に、PC等からバッファの設定の切り替えが指示された場合、送受信バッファの初期化によってデータが消失する可能性があった。
本発明は、バッファの設定の切り替えが指示された場合にも、データの消失を防止することを目的とする。

課題を解決するための手段

0005

そこで、本発明の情報処理装置は、バッファのデータを転送する転送手段と、外部装置から前記バッファの設定を切り替える切り換え要求を受信した場合、前記転送手段による前記データの転送が終了しているか否かを判定する判定手段と、前記判定手段により前記データの転送が終了していないと判定された場合、前記外部装置に対して再送要求を送信する送信手段と、を有する。

発明の効果

0006

本発明によれば、バッファの設定の切り替えが指示された場合にも、データの消失を防止することができる。

図面の簡単な説明

0007

MFPのハードウェア構成等の一例を示す図である。
USB I/Fの内部のハードウェア構成の一例を示す図である。
PCからの印刷データの転送動作時間軸に沿って説明するための図である。
PCとMFPとの情報処理の一例を示したシーケンス図である。
MFPのAlternate切り替え要求への応答動作を示すフローチャートである。

実施例

0008

以下、本発明の実施形態について図面に基づいて説明する。

0009

<実施形態1>
図1は、画像形成システムシステム構成及びMFPのハードウェア構成の一例を示す図である。
画像形成システムは、システム構成として、MFP1000とPC2000とを含む。画像形成システムにおいて、MFP1000とPC2000とはUSBケーブル3000を介して接続されている。ここで、MFP1000は、USB Function、又は情報処理装置の一例である。また、PC2000は、USB Host、又は外部装置の一例である。

0010

MFP1000は、コントローラ100と、操作部110と、読取部120と、印刷部130と、を含む。
コントローラ100は、MFP1000のUSB通信及び機器全体の制御を行う。コントローラ100は、CPU101、ROM102、RAM103、画像処理部104、操作部I/F105、読取部I/F106、印刷部I/F107、USB I/F(USB Function)200を含む。
CPU101は、コントローラ100各部の制御を行う。ROM102は、コントローラ100の制御プログラムが格納される。RAM103は、コントローラ100の制御プログラムの実行領域画像処理用のワークデータ用領域、及びデータ格納用領域である。画像処理部104は、コントローラ100の画像処理を行う。操作部I/F105は、操作部110とのI/Fを制御する。読取部I/F106は、読取部120とのI/Fを制御する。印刷部I/F107は、印刷部130とのI/Fを制御する。USB I/F200は、PC2000とのUSB通信を制御する。
CPU101がROM102等に記憶されているプログラムに基づき処理を実行することによって、後述するMFP1000の機能、シーケンス図におけるMFPの処理、フローチャートの処理が実現される。RAM103は、内部メモリの一例である。

0011

PC2000は、USB I/F(USB Host)2100を含む。USB I/F2100は、MFP1000とのUSB通信を制御する。
また、PC2000は、ハードウェア構成として少なくともCPUとRAM、ROM、HD等のメモリを有する。PC2000のCPUがPC2000のメモリに記憶されているプログラムに基づき処理を実行することによって後述するPC2000の機能、シーケンス図におけるPCの処理が実現される。

0012

図2は、USB I/F200の内部のハードウェア構成の一例を示す図である。
図2に示されるように、USB I/F200は、物理層回路(以下、PHYという)210と、内部バスI/F220と、USB制御部230と、を含む。
物理層回路(以下、PHYという)210は、USBの通信を行う。
USB制御部230は、USBの通信及びRAM103へのデータ転送を制御する。
内部バスI/F220は、USB I/F200内部のデータの通路であり、End Point 0 231と、Interface234と、を含む。
End Point 0 231は、制御用データの転送を行う。
Interface234は、End Point 1 232と、End Point 2 233と、を含む。End Point 1 232や、End Point 2 233はバッファの一例である。
USB Functionには、Alternate Settingと呼ばれる代替設定が規定されており、前記送受信バッファであるEnd Pointの設定を複数持つことができる。

0013

図2(a)及び(b)では、それぞれEnd Point 1及びEnd Point 2の設定が異なる。
図2(a)では、End Point 1は、Bulk Outの設定であり、USB HostからUSB Function方向へのデータ転送を行う。
一方、図2(b)では、End Point 1は、Bulk Inの設定であり、USB FunctionからUSB Host方向へのデータ転送を行う。
同様に、図2(a)では、End Point 2は、Bulk Inの設定であり、USB FunctionからUSB Host方向へのデータ転送を行う。
一方、図2(b)では、End Point 2は、Bulk Outの設定であり、USB HostからUSB Function方向へのデータ転送を行う。

0014

次に、図3を用いて、PCからの印刷データの転送動作を時間軸に沿って説明する。
MFP1000の設定は図2(a)である。即ち、PCから転送される印刷データは、Bulk Outに設定されたEnd Point 1のバッファに格納され、更に、DMACによって、RAM103に転送される。
End Point 1 232は、Bulk Outと呼ばれるUSB HostからUSB Function方向へのデータ転送を行う。
End Point 1は、USB上の転送データを一時的に格納するバッファと、RAM103へのデータ転送を行うDMAC(Dynamic Memory Access Controller)とを備える。
End Point 2 233は、Bulk Inと呼ばれるUSB FunctionからUSB Host方向へのデータ転送を行う。

0015

図3(a)では、End Point 1のバッファすべてに印刷データが格納されており、この場合、USB Functionは、データを受け取れない旨(時間をおいての再送要求)をUSB Hostへ応答する。
図3(b)及び図3(c)では、RAM103から次の画像処理部104へのデータ転送により、End Point 1のバッファ及びRAM103のデータが減っていくことがわかる。
図3(d)では、End Point 1のバッファにはデータがなく、RAM103にデータが残っていることがわかる。

0016

次に、図4を用いて、PC(USB Host)とMFP(USB Function)とのシステム全体の動作を説明する。
図4は、PCとMFPとの情報処理の一例を時間軸に沿って示したシーケンス図である。
図4では、時間を縦軸に下方に進むとして、左側にPC2000の動作を、そして右側にMFP1000の動作を示す。
USBデータ転送は以下の手順で実行される。
S3000において、PC2000は、データを送信する。
S4000において、MFP1000は、データを受信可能な場合、即ちEnd Point 1のバッファに空きがある場合、肯定応答ACKnowledge、以下、ACKという)を返信する。ACKnowledgeは、ACK応答の一例である。
S4010において、MFP1000は、受信したデータをデータ格納用領域であるRAM103へ転送する。

0017

S3010において、PC2000は、次のデータを送信する。
S4020において、MFP1000は、データを受信可能な場合、即ちEnd Point 1のバッファにまだ空きがある場合、肯定応答を返信する。
S4030において、MFP1000は、受信したデータをデータ格納用領域であるRAM103へ転送する。
ここで、MFP1000は、PC2000からデータを受信すると、予め時間を設定された内部タイマー起動する。このタイマーは、PC2000から次のデータを受信すると、再起動される。
上記動作処理は、送信データがなくなるまで、PC2000とMFP1000とで繰り返される。

0018

次に、S3020において、PC2000は、End Pointの設定を切り替えるためのAlternate切り替え要求を送信したとする。
S4040において、MFP1000は、データ格納用領域であるRAM103へのデータ転送が終了しているか、即ち、End Point 1のバッファが空であるかを判別する。
S4050において、バッファにデータが残っている場合、MFP1000は、否定応答(NegativeACKnowledge)、即ち再送要求を返信する。Negative ACKnowledgeは、NACK応答の一例である。
S3030において、一定時間後、PC2000は、End Pointの設定を切り替えるためのAlternate切り替え要求を再送する。
S4060において、MFP1000は、データ格納用領域であるRAM103へのデータ転送が終了しているか、即ち、End Point 1のバッファが空であるかを再度判別する。
S4070において、MFP1000は、バッファにデータがなくなっている場合、肯定応答(ACKnowledge)を返信する。
S4080において、MFP1000は、End Pointを初期化して、設定を切り替える。

0019

次に、図5を用いて、MFPの動作を説明する。
図5は、MFP1000のAlternate切り替え要求への応答動作を示すフローチャートである。
S501において、CPU101は、USBデータの転送が開始された否かを判定する。CPU101は、USBデータの転送が開始されたと判定した場合(S501においてYES)、S502に進み、USBデータの転送が開始されていないと判定した場合(S501においてNO)、S501の処理を繰り返す。
S502において、CPU101は、USB HostであるPC2000からデータを受信し、End Point 1のバッファに格納する。
次に、S503において、CPU101は、End Point 1のバッファに格納したデータをデータ格納用領域であるRAM103へ転送する。

0020

次に、S504において、CPU101は、次のUSBデータを受信したか、又はタイムアウトしたか、を判定する。CPU101は、次のUSBデータを受信した場合(S504においてUSBデータ受信)、S505に進み、タイムアウトした場合(S504においてタイムアウト)、図5に示す処理を終了する。
S505において、CPU101は、受信したデータがAlternate切り替え要求を示すデータであるか否かを判定する。CPU101は、Alternate切り替え要求を示すデータであると判定した場合(S505においてYES)、S506に進み、Alternate切り替え要求を示すデータでないと判定した場合(S505においてNO)、S502に戻る。

0021

S506において、CPU101は、End Point 1のバッファからデータ格納用領域であるRAM103へのデータ転送が終了しているか、即ち、バッファにデータが残っているかを判定する。CPU101は、データ転送が終了していると判定した場合(S506においてYES)、S508に進み、データ転送が終了していないと判定した場合(S506においてNO)、S507に進む。
S507において、CPU101は、否定応答(NegativeACKnowledge)、即ち再送要求をPC2000に返信し、S505に戻る。この否定応答を受けて、PC2000は、一定時間後にEnd Pointの設定を切り替えるためのAlternate切り替え要求を再送することになる。
一方、S508において、CPU101は、肯定応答(ACKnowledge)をPC2000に返信する。
S509において、CPU101は、End Pointを初期化して、設定を切り替える。

0022

以上、本実施形態の処理によれば、上位装置であるPCからのAlternate切り替え要求を受信した際に、内部メモリへの転送が終了していない場合、以下のことができる。即ち、PCに再送要求を返信することができる。また、再送要求の返信により、USB上の応答時間内に応答することができる。また、再送要求の返信により、Alternate切り替えを遅延させることができる。また、再送要求の返信により、Alternate切り替えを遅延させ、内部メモリの転送を適切に終了することができる。また、再送要求の返信により、Alternate切り替えによるEnd Point初期化でのデータ消失を防止することができる。

0023

また、本実施形態においては、CPU101が、USB2.0規格の肯定応答(ACKnowledge)及び否定応答(Negative ACKnowledge)を送信するものとして説明を行った。
しかし、USB3.0規格のSuper Speedの場合、CPU101が、それに対応する返信(例えば、NotReaDY:NRDY)を用いることで、本実施形態と同様な制御を行うことができる。NRDYによる返信は、NRDY応答の一例である。

0024

<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。

0025

以上、上述した各実施形態によれば、バッファの設定の切り替えが指示された場合にも、データの消失を防止することができる。

0026

1000MFP、100コントローラ、101 CPU、200 USBI/F(USB Function)

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

  • マクセル株式会社の「 中継装置、受信装置、及びそれらを用いた伝送システム」が 公開されました。( 2019/05/09)

    【課題】 HDMIコネクタを持つ送信装置からUSB Type−Cコネクタを持つ受信装置へ映像データを中継できない課題があった。【解決手段】 HDMI受信機能部を持つ受信装置と、送信装置からの映像デ... 詳細

  • 富士通株式会社の「 通信装置および通信方法」が 公開されました。( 2019/05/09)

    【課題】通信断しなくてもリンクの復旧を行うこと。【解決手段】通信部111は、可変の数のレーンを使用して第2の通信装置120へのデータ送信を行う。制御部112は、第1の数のレーンを使用するデータ送信から... 詳細

  • ソニー株式会社の「 送信装置および通信システム」が 公開されました。( 2019/05/09)

    【課題】通信品質を高めることができる送信装置を得る。【解決手段】出力端子と、出力端子の電圧を複数の電圧の間で遷移させるドライバ部と、複数の電圧の間の電圧遷移のうちの一の電圧遷移における遷移開始タイミン... 詳細

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ