JP2018116648A - 情報処理装置、その制御方法、及びプログラム - Google Patents

情報処理装置、その制御方法、及びプログラム Download PDF

Info

Publication number
JP2018116648A
JP2018116648A JP2017008785A JP2017008785A JP2018116648A JP 2018116648 A JP2018116648 A JP 2018116648A JP 2017008785 A JP2017008785 A JP 2017008785A JP 2017008785 A JP2017008785 A JP 2017008785A JP 2018116648 A JP2018116648 A JP 2018116648A
Authority
JP
Japan
Prior art keywords
usb device
usb
signal line
information processing
host interface
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.)
Withdrawn
Application number
JP2017008785A
Other languages
English (en)
Inventor
奈音 笹原
Naoto Sasahara
奈音 笹原
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 JP2017008785A priority Critical patent/JP2018116648A/ja
Publication of JP2018116648A publication Critical patent/JP2018116648A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/266Arrangements to supply power to external peripherals either directly from the computer or under computer control, e.g. supply of power through the communication port, computer controlled power-strips
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4405Initialisation of multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0016Inter-integrated circuit (I2C)
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]

Abstract

【課題】USBデバイスの接続時に認識不良が発生した場合であっても、当該USBデバイスを物理的に接続した状態で自動的に再接続を行う仕組みを提供する。
【解決手段】情報処理装置は、USBホストI/F108を備え、USBホストI/F108に新たなUSBデバイスが接続されると、当該USBデバイスを使用可能にする初期化処理(エニュメレーション処理)を実行する。また、本情報処理装置は、初期化処理の中でエラーが発生すると、USBホストI/F108を介したUSBデバイスのVbus信号線202への電力供給を停止し、一定時間が経過した後にVbus信号線202への電力供給を再開する。
【選択図】 図3

Description

本発明は、情報処理装置、その制御方法、及びプログラムに関するものである。
USB(Universal Serial Bus)のI/Fを搭載するホストコンピュータ等の情報処理装置では、USBストレージ、USBカードリーダ及びUSBキーボード等を接続し、情報処理装置の1つのデバイスとして使用することができる。これは、USBホストコントローラが装備されているためである。
USB2.0までのデバイスでは、図5に図示されるようにコネクタ部分に物理的に4本の信号線を備え、それぞれVbus、GND、D+、D−となっている。VbusとGNDの信号線はホストからデバイスに電源を供給するための信号線であり、物理的に長めになっている。D+とD−の信号線はホストとデバイスの間でコマンド等の通信を行うために利用される信号線であり、物理的に短めになっている。Vbus、GNDの信号線とD+,D−の信号線は物理的な長さの違いにより、デバイスとホストを接続した際は先にVbusとGNDの信号線が接続され、その後D+とD−の信号線が接続される。D+とD−の信号線が接続されると、ホストが接続を検知して初期化処理(以下、エニュメレーション処理と称する。)が開始される。
エニュメレーション処理では、ホストがデバイスにいくつかのコマンドを送信することでデバイスの特性を調べ、デバイスとの通信を確立する。エニュメレーション処理の最中にデバイスは4つの状態を経過し、各状態はPowered、Default、Address、Configuredとなっている。
特許文献1には、エニュメレーション処理を確実に成功させるために、ホストとデバイスが接続されてから一定の待機時間を経過後にホストからデバイスへリセット信号を送信する技術が提案されている。
特開2009−151415号公報
しかしながら、上記従来技術には以下に記載する課題がある。例えば、USBデバイスは、様々な種類のものが出回っており、個々のデバイスの作りはベンダーに依存している。そのため、同じ用途のデバイスでもベンダーによっては電気的動作が異なる振る舞いとなることがある。中には、ホストと接続する際に、Vbus信号線の接続からD+、D−信号線の接続までに一定時間が経過すると、D+、D−が共にHighにプルアップされ、認識不良を起こし、USBデバイスとして正しく動作しなくなるものも存在する。このような状態に陥るデバイスは、ホストから送られてくるコマンドを正しく処理できないため、上記従来技術ではエニュメレーション処理を成功させることはできない。したがって、正常に接続するためにはUSBデバイスを接続し直す必要があり、ユーザはそのような知識を有する必要がある。
本発明は、上述の問題に鑑みて成されたものであり、USBデバイスの接続時に認識不良が発生した場合であっても、当該USBデバイスを物理的に接続した状態で自動的に再接続を行う仕組みを提供することを目的とする。
本発明は、情報処理装置であって、USBホストインタフェースと、前記USBホストインタフェースに新たなUSBデバイスが接続されると、該USBデバイスを使用可能にする初期化処理を実行する初期化手段と、前記初期化処理の中でエラーが発生すると、前記USBホストインタフェースを介した前記USBデバイスのVbus信号線への電力供給を停止し、一定時間が経過した後に該Vbus信号線への電力供給を再開する制御手段とを備えること特徴とする。
本発明によれば、USBデバイスの接続時に認識不良が発生した場合であっても、当該USBデバイスを物理的に接続した状態で自動的に再接続を行うことができる。
一実施形態に係る画像形成装置100のハード構成図。 一実施形態に係るUSBホスト2.0I/FのVbus信号OFF/ONを実現する回路構成図。 一実施形態に係るデバイスの再接続処理を示すフローチャート。 一実施形態に係るエニュメレーション処理を示すフローチャート。 USBホストとUSBデバイスのコネクタ部を示す図。
以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念及び下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確立されるのであって、以下の個別の実施形態によって限定されるわけではない。
<第1の実施形態>
<情報処理装置の構成>
以下では、本発明の第1の実施形態について説明する。まず、図1を参照して、本実施形態に係る情報処理装置である画像形成装置100のハードウェア構成について説明する。
画像形成装置100は、CPU101、HDD103、RAM104、ネットワークコントローラ105、ネットワークコントローラインタフェース(I/F)106、USBホストコントローラ107及びUSBホストインタフェース(I/F)108を備える。また、画像形成装置100は、CPLD109、ディスプレイコントローラ110、ディスプレイ111、入力部コントローラ112、入力部113、RTC114、及び不揮発メモリ115を備える。さらに、画像形成装置101は、スキャナインタフェース(I/F)116、スキャナ117、プリンタインタフェース(I/F)118、及びプリンタ119を備える。各負荷はシステムバス102を介して接続され、相互にデータを送受することができる。
CPU(中央演算処理装置)101は、画像形成装置100を稼働させるためのソフトウェアを動作させ、各負荷を統括的に制御する。CPU101は、システムバス102を介して、他のユニットにアクセスする。なお、システムバス102は、CPUと各負荷との間の通路だけではなく、他のユニット同士をアクセスする通路にもなる。HDD(ハードディスクドライブ)103には、本画像形成装置100のソフトウェア、本画像形成装置100が動作するために必要なデータベース、及び一時保存ファイルが格納される。図1では、HDDとの記載をしているが、Solid State Drive(以下、SSD)等の大容量不揮発メモリでも構わない。RAM(Random Access Memory)104には、画像形成装置100のプログラムが展開され、プログラム動作時の変数や、各ユニットからDynamic Memory Access(以下、DMA)で転送されるデータの格納領域となる。
ネットワークコントローラ105及びネットワークコントローラI/F106は、本画像形成装置100とネットワーク上の他の機器との通信を制御する。USBホストコントローラ107及びUSBホストI/F108は、本画像形成装置100とUSBデバイスとの通信を制御するUSBハブである。図1では、USBホストI/F108は1つのみの記載であるが、実際には複数存在する。このUSBホストI/F108は、USBケーブルを使用してUSBデバイスと接続される。USBデバイスの形態によっては、USBケーブルは使用せず直接接続される形態であってもよい。
ディスプレイ110は、画像形成装置100の動作状況をユーザ等が確認できる画面を表示する。ディスプレイコントローラ111は、ディスプレイ110の表示を制御する。入力部113は、本画像形成装置100へのユーザからの指示を受け付けるユーザインタフェースである。入力部コントローラ112は、入力部113を制御する。入力部113は具体的にはキーボードやマウス、数字キー、カーソルキー、タッチパネルや、操作部キーボードといった入力システムである。入力部113がタッチパネルである場合は、物理的にはディスプレイ111の表面に装着された実装形態になる。
RTC(リアルタイムクロック)114、本画像形成装置100の時計機能、アラーム機能、及びタイマー機能等を有する。不揮発メモリ115は、HDD103ほど大容量ではないが、書き換え可能なメモリである。不揮発メモリ115は、Static Random Access Memory(以下SRAM)や、Electrically Erasable Programmable Read Only Memory(以下EEPROM)等であってもよい。
CPLD109は、CPU101を介して、基盤回路上の信号線のLow/Highの状況を読み取る。或いは、CPLD109は、CPU101がLow/Highの状況の設定を変更可能にするユニットである。CPLD(Complex Programmable Logic Device)109は、プログラマブルなロジックデバイスであり、画像形成装置100上で電力関係のOFF/ONを制御可能にするユニットである。CPLD109の内部には、General Purpose Input Output(以下、GPIO)が存在する。CPU101は、そのGPIOレジスタの設定値を変更することで、電力関係のOFF/ONを可能としている。
また、画像形成装置100には、システムバス102とスキャナI/F116を介してスキャナ117が接続される。さらに、画像形成装置100には、システムバス102とプリンタI/F118を介してプリンタ119が接続される。
<制御構成>
次に、図2を参照して、CPU101の指示によりVbus202のOFF/ONを制御可能にする制御構成について説明する。USBデバイス206には、図5を用いて前述したように、4本の信号線が接続されるのがUSB規格の仕様である。Vbus202は、USBデバイス206への電力を供給する電力線である。D−信号線203とD+信号線204は、USBデバイス206とUSBホストコントローラ107との間を通信するデータを流す差動信号線である。GND205はグランド信号線である。コネクタ部207は図5に示されるようなUSBホストIF108とUSBデバイス206のコネクタ部である。
AND回路201は、CPU101の指示で制御されるCPLD109内部のGPIOからの出力値と、USBホストI/F108から出力されるVbusの出力値の論理積を演算し、演算結果をVbus202へ出力する。これにより、USBデバイス206に電力を与えるVbus202のOFF/ONを制御する。図2では、AND回路201を用いて簡易的にVbusのOFF/ONを制御するように表記しているが、ハイサイドスイッチとOR回路を用いてVbusのOFF/ONを制御することも可能である。
<処理手順>
次に、図3を参照して、本実施形態に係る画像形成装置100の処理手順について説明する。以下で説明する処理は、例えばCPU101がHDD103に格納された制御プログラムをRAM104に読み出して実行することにより実現される。
まず、S301で、CPU101は、USBデバイスが画像形成装置100へ挿入(接続)されたか否かを判定する。USBデバイス206がUSBホストI/F108に接続されると、D−信号線203とD+信号線204のどちらかの電圧がHighになり、USBホストI/F108はデバイスが接続されたことを検出することができる。接続を検出すると、USBホストI/F108はUSBホストコントローラ107を通じてCPU101に接続検知の割り込み信号を送信する。したがって、CPU101は当該割り込み信号を受信するとUSBデバイスが画像形成装置100へ接続されたと判定する。USBデバイスが画像形成装置100へ接続されるとS302に進み、接続を検知できなければS301の判定を繰り返し行う。
S302で、CPU101は、エニュメレーション処理を開始する。エニュメレーション処理は、デバイスのスピード検知、リセット(SET_PORT_FEATURE)、デバイス情報取得(GET_DESCRIPTOR)、及びアドレスの割り当て(SET_ADDRESS)の処理を含む。さらに、エニュメレーション処理は、デバイスドライバのロード、及びコンフィギュレーション(SET_CONFIGURATION)等の処理を含む。これらの処理の詳細は、第2の実施形態の図4を用いて後述する。本実施形態では、エニュメレーション処理の内容までは特に説明する必要がないため省略する。
次に、S303で、CPU101は、エニュメレーション処理が成功したか否かを判定する。例えば、ここでは、D−信号線203と、D+信号線204とが共にHighにプルアップされると通常のUSBデバイスの動作ではないため、エラーが発生したと判定する。成功すれば処理を終了し、成功しなかった場合はS304に進む。上記エニュメレーション処理のいずれかで失敗を検知した場合、S304で、CPU101は、CPLD109に含まれるGPIOのレジスタを操作して、AND回路201にゼロの信号を出力する。このとき、USBホストコントローラ107が動作中であってもVbus202の出力がゼロになる。Vbus202の信号レベルがゼロになると物理的に接続された状態であっても、電気的に切断された状態となり、USBデバイス206のVbusはOFFされることになる。即ち、S304の制御により、USBデバイスを画像形成装置100から物理的に外す動作と同様の効果を得ることができる。
VbusがOFFされてから、USBデバイスの電気回路の動作上、充分な時間(例えば、2秒)が経過した後、S305で、CPU101は、再度CPLD109に含まれるGPIOのレジスタを操作することでAND回路201に1の信号を出力する。これにより、Vbus202をONの状態にすることができる。この処理によりVbus202は電気的に接続された状態となり、USBデバイス206に電力の供給が再開される。即ち、S305の制御により、USBデバイスを画像形成装置100に物理的に接続する動作と同様の効果を得ることができる。
Vbus202が再接続されると、S306で、CPU101は、再度S302と同様のエニュメレーション処理を実行する。続いて、S307で、CPU101は、エニュメレーション処理が成功したか否かを判定する。S306のエニュメレーション処理が失敗した場合はS308に進み、CPU101は、ディスプレイコントローラ110を通してディスプレイ111にUSBデバイス206の認識に失敗したことを通知する画面を表示する。一方、エニュメレーション処理に成功した場合は、S309で、CPU101は、ディスプレイコントローラ110を通してディスプレイ111にUSBデバイス206の認識に成功したことを通知する画面を表示し、処理を終了する。
以上説明したように、本実施形態に係る情報処理装置は、USBホストI/F108を備え、USBホストI/F108に新たなUSBデバイスが接続されると、当該USBデバイスを使用可能にする初期化処理(エニュメレーション処理)を実行する。また、本情報処理装置は、初期化処理の中でエラーが発生すると、USBホストI/F108を介したUSBデバイスのVbus信号線202への電力供給を停止し、一定時間が経過した後にVbus信号線202への電力供給を再開する。これにより、ソフトウェア制御により、Vbus信号線、即ちUSBデバイスへの電力供給を一旦遮断し、一定時間が経過すると再開することができ、物理的にUSBデバイスを外して、再接続させた場合と同様の効果を得ることができる。つまり、Vbus信号線の接続からD+信号線、D−信号線の接続までに一定時間が経過すると正しく動作せずホストが認識できなくなるUSBデバイスであっても、手動でデバイスを挿し直す必要無く確実にエニュメレーション処理を再度実行することができる。
<第2の実施形態>
以下では、本発明の第2の実施形態について説明する。上記第1の実施形態ではエニュメレーション処理中のいずれかで失敗を検知した場合にUSBデバイス206のVbus電力をOFF/ONすることで再度エニュメレーション処理を行う構成について説明した。しかし、エニュメレーション処理中の何れのタイミングにおいても失敗を検知できるようにするためには、専用の回路やソフトウェアの作り込みが必要になってくる。そこで、本実施形態では、簡易な処理でエニュメレーション処理の何れのタイミングであっても処理の失敗を検知するための仕組みを説明する。本実施形態でのハード構成は上記第1の実施形態と同様であるため説明を省略する。また、USBデバイスが接続されたときの処理についても上記第1の実施形態と同様に、図3のフローチャートで行われるため説明を省略する。本実施形態では、図3のS302やS306の処理に特徴があるため、その制御を主に説明する。
図4を参照して、本実施形態に係るS302及びS307のエニュメレーション処理の詳細について説明する。以下で説明する処理は、例えばCPU101がHDD103に格納された制御プログラムをRAM104に読み出して実行することにより実現される。
まずS401で、CPU101は、USBホストI/F108を介してD−信号線203、及びD+信号線204の電圧を調べる。これにより、CPU101は、USBデバイス206がLow SpeedのデバイスなのかFull Speedのデバイスなのかを検出することができる。つまり、ここでは、USBデバイス206の通信速度を検出している。
次に、S402で、CPU101は、USBホストコントローラ107を通してUSBホストI/F108にSET_PORT_FEATUREと呼ばれるリクエストを送信し、デバイスのリセットを要求する。このリセットの要求は、D−信号線203とD+信号線204の電圧を共に10ミリ秒間Low状態にすることで行われる。このリセット中に、USBホストI/F108はChirp JとChirp Kと呼ばれる特殊な信号を送信することで、USBデバイス206がHigh Speedをサポートしているかを調べる。
USBデバイス206がリセット状態から抜け出すと、S403で、CPU101は、GET_DESCRIPTORリクエストを送信し、USBデバイス206に関する情報を取得する。ここで取得する情報は、USBデバイス206がサポートする最大パケット長の情報のみである。
次に、S404で、CPU101は、USBデバイス206にSET_ADDRESSリクエストを送信する。SET_ADDRESSリクエストを受け取ったUSBデバイス206は、USBホストI/F108に対して肯定応答を行う。S405で、CPU101は、この肯定応答が返信されたか否かでSET_ADDRESSの成功を判定する。成功した場合はS406に進む。一方、USBデバイス206から肯定応答が送られて来なかった場合は、エニュメレーション処理が失敗したと判定し、エニュメレーション処理を終了する。S405でエニュメレーション処理が失敗したと判定されると、図3のS303とS307でエニュメレーション処理が失敗したと判定される。
肯定応答を受信すると、S406で、CPU101は、USBデバイス206にドライバを割り当てる。最後に、S407で、CPU101は、SET_CONFIGURATIONリクエストを送信し、デバイスを使用するためのコンフィギュレーション処理を実行し、処理を終了する。
以上説明したように、本実施形態に係る情報処理装置は、SET_ADDRESSに対してデバイスが肯定応答を返したか否かでエニュメレーション処理の失敗を簡易に検知することができる。エニュメレーション処理の失敗を検知した後は、上記第1の実施形態と同様に、CPU101がCPLD109に含まれるGPIOのレジスタを操作することで、自動的にVbusの電力をOFF/ONして再度エニュメレーション処理を行う。これにより、確実にデバイスを認識させることができる。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100:画像形成装置、101:CPU、102:システムバス、103:HDD、104:RAM、105:ネットワークコントローラ、106:ネットワークコントローラI/F、107:USBホストコントローラ、108:USBホストI/F、109:CPLD、110:ディスプレイコントローラ、111:ディスプレイ、112:入力部コントローラ、113:入力部、114:RTC、115:不揮発メモリ、116:スキャナI/F、117:スキャナ、118:プリンタI/F、119:プリンタ、201:AND回路、202:Vbus、203:D−、204:D+、206:USBデバイス、207:USBコネクタ部

Claims (8)

  1. 情報処理装置であって、
    USBホストインタフェースと、
    前記USBホストインタフェースに新たなUSBデバイスが接続されると、該USBデバイスを使用可能にする初期化処理を実行する初期化手段と、
    前記初期化処理の中でエラーが発生すると、前記USBホストインタフェースを介した前記USBデバイスのVbus信号線への電力供給を停止し、一定時間が経過した後に該Vbus信号線への電力供給を再開する制御手段と
    を備えること特徴とする情報処理装置。
  2. 前記制御手段は、前記USBデバイスのD+信号線及びD−信号線がともにプルアップされると、前記初期化処理の中でエラーが発生したと判定することを特徴とする請求項1に記載の情報処理装置。
  3. 前記初期化手段は、
    前記USBデバイスの通信速度を検出する手段と、
    前記USBデバイスをリセットさせて当該USBデバイスに関する情報を取得する手段と、
    前記USBデバイスにアドレスを割り当てる手段と、
    前記USBデバイスにドライバを割り当てる手段と、
    前記USBデバイスを使用するためのコンフィギュレーション処理を実行する手段と
    を備えることを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記制御手段は、前記USBデバイスにアドレスを割り当てる際に、該USBデバイスから肯定応答を受信しなければ、前記初期化処理の中でエラーが発生したと判定することを特徴とする請求項3に記載の情報処理装置。
  5. CPLD(Complex Programmable Logic Device)と、
    前記CPLDの出力と、前記USBホストインタフェースの出力との論理積を演算して、前記Vbus信号線に演算結果を出力するAND回路と
    をさらに備えることを特徴とする請求項1乃至4の何れか1項に記載の情報処理装置。
  6. 前記制御手段は、
    前記CPLDを制御して前記AND回路へゼロの信号を出力させて前記Vbus信号線への電力供給を停止し、前記一定時間が経過した後に、前記CPLDを制御して前記AND回路へ1の信号を出力させることによって、前記Vbus信号線への電力供給を再開することを特徴とする請求項5に記載の情報処理装置。
  7. USBホストインタフェースを有する情報処理装置の制御方法であって、
    初期化手段が、前記USBホストインタフェースに新たなUSBデバイスが接続されると、該USBデバイスを使用可能にする初期化処理を実行する初期化工程と、
    制御手段が、前記初期化処理の中でエラーが発生すると、前記USBホストインタフェースを介した前記USBデバイスのVbus信号線への電力供給を停止し、一定時間が経過した後に該Vbus信号線への電力供給を再開する制御工程と
    を実行すること特徴とする情報処理装置の制御方法。
  8. USBホストインタフェースを有する情報処理装置の制御方法における各工程をコンピュータに実行させるためのプログラムであって、前記制御方法は、
    初期化手段が、前記USBホストインタフェースに新たなUSBデバイスが接続されると、該USBデバイスを使用可能にする初期化処理を実行する初期化工程と、
    制御手段が、前記初期化処理の中でエラーが発生すると、前記USBホストインタフェースを介した前記USBデバイスのVbus信号線への電力供給を停止し、一定時間が経過した後に該Vbus信号線への電力供給を再開する制御工程と
    を実行することを特徴とするプログラム。
JP2017008785A 2017-01-20 2017-01-20 情報処理装置、その制御方法、及びプログラム Withdrawn JP2018116648A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017008785A JP2018116648A (ja) 2017-01-20 2017-01-20 情報処理装置、その制御方法、及びプログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2017008785A JP2018116648A (ja) 2017-01-20 2017-01-20 情報処理装置、その制御方法、及びプログラム
KR1020180003624A KR20180086129A (ko) 2017-01-20 2018-01-11 정보 처리장치, 그 제어방법, 및 기억매체
US15/872,044 US20180210783A1 (en) 2017-01-20 2018-01-16 Information processing apparatus, control method of the same, and storage medium
CN201810052889.6A CN108334461A (zh) 2017-01-20 2018-01-19 信息处理装置及其控制方法和存储介质

Publications (1)

Publication Number Publication Date
JP2018116648A true JP2018116648A (ja) 2018-07-26

Family

ID=62906209

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017008785A Withdrawn JP2018116648A (ja) 2017-01-20 2017-01-20 情報処理装置、その制御方法、及びプログラム

Country Status (4)

Country Link
US (1) US20180210783A1 (ja)
JP (1) JP2018116648A (ja)
KR (1) KR20180086129A (ja)
CN (1) CN108334461A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109977044A (zh) * 2019-03-27 2019-07-05 歌尔科技有限公司 Usb设备枚举检测方法和系统及固件升级方法和系统

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019109413A (ja) * 2017-12-20 2019-07-04 セイコーエプソン株式会社 画像表示装置及びその制御方法
US11119557B2 (en) * 2019-01-29 2021-09-14 Texas Instruments Incorporated Host hardware reset based on adapter removal pattern
CN112437335A (zh) * 2020-11-11 2021-03-02 海信视像科技股份有限公司 显示设备及其外接设备连接处理方法
CN113064651A (zh) * 2021-03-30 2021-07-02 重庆中科云从科技有限公司 应用于多级接口串联设备的初始化控制装置、方法和设备

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030158990A1 (en) * 2001-12-11 2003-08-21 Allen Gregory M. Method and apparatus of disabling the pull-up on a USB type of data line
JP2003263373A (ja) * 2002-03-07 2003-09-19 Fuji Xerox Co Ltd Usb装置
CA2556446C (en) * 2004-02-17 2011-02-08 Research In Motion Limited Method and apparatus for handling a charging state in a mobile electronic device
JP2009151415A (ja) * 2007-12-19 2009-07-09 Seiko Epson Corp 印刷装置およびusbデバイスの認識方法
JP5340803B2 (ja) * 2009-05-18 2013-11-13 株式会社ソニー・コンピュータエンタテインメント 情報処理装置
CN101674366B (zh) * 2009-09-19 2012-03-28 惠州Tcl移动通信有限公司 一种移动终端usb或充电器插入识别方法及识别装置
JP2012137918A (ja) * 2010-12-27 2012-07-19 Alpine Electronics Inc ホスト装置
CN102202117B (zh) * 2011-04-22 2015-01-28 中兴通讯股份有限公司 一种具有usb接口的电子设备及其usb通信启动方法
JP5901241B2 (ja) * 2011-11-18 2016-04-06 キヤノン株式会社 Usbハブ装置及びそれを用いたシステム
CN202949204U (zh) * 2012-11-27 2013-05-22 江苏联固电气有限公司 断路器的智能故障检测排除系统
CN103611631B (zh) * 2013-11-18 2016-03-30 江苏科技大学 高频高压静电除尘电源控制系统及方法
CN105278650B (zh) * 2014-05-28 2018-10-12 精工爱普生株式会社 电子设备
US10002101B2 (en) * 2015-03-06 2018-06-19 Apple Inc. Methods and apparatus for equalization of a high speed serial bus
US9940295B2 (en) * 2015-08-14 2018-04-10 Keyssa, Inc. Extremely high frequency systems and methods of operating the same to establish USB data transport protocols
JP2018033244A (ja) * 2016-08-24 2018-03-01 キヤノン株式会社 電子機器およびその制御方法
JP2018057246A (ja) * 2016-09-30 2018-04-05 キヤノン株式会社 電子機器

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109977044A (zh) * 2019-03-27 2019-07-05 歌尔科技有限公司 Usb设备枚举检测方法和系统及固件升级方法和系统

Also Published As

Publication number Publication date
US20180210783A1 (en) 2018-07-26
CN108334461A (zh) 2018-07-27
KR20180086129A (ko) 2018-07-30

Similar Documents

Publication Publication Date Title
JP2018116648A (ja) 情報処理装置、その制御方法、及びプログラム
CN107423169B (zh) 用于测试高速外围设备互连设备的方法和系统
US9680712B2 (en) Hardware management and control of computer components through physical layout diagrams
US20130138940A1 (en) Computer system and method for updating basic input/output system thereof
JP2002358210A (ja) コントローラリセットを処理する方法、及びコントローラリセットを処理するシステム及び方法を有する冗長コントローラデータ格納システム
US10075609B2 (en) Information processing apparatus and control method thereof for reducing transition time from a power-save mode
CN101373433A (zh) 更新bios的方法以及使用该方法的电脑与系统
US8880747B2 (en) Endpoint device discovery system
JP4839484B2 (ja) バス接続デバイス、バス接続方法およびバス接続用プログラム
US9806959B2 (en) Baseboard management controller (BMC) to host communication through device independent universal serial bus (USB) interface
CN107145198B (zh) 一种提升服务器对硬盘兼容能力的方法及其主板
US9749189B2 (en) Generating graphical diagram of physical layout of computer platforms
KR20180085192A (ko) 핫 플러그 모듈 및 메모리 모듈을 포함하는 시스템
US8041846B2 (en) Apparatus with reduced latency for master and slave storage devices
EP3340010B1 (en) Printing apparatus and method for controlling the same
TWI774145B (zh) 主機裝置及記憶體系統
JP2017102887A (ja) 情報処理装置、起動方法および起動プログラム
JP6415633B2 (ja) 情報処理装置及びその制御方法
JP2020166752A (ja) 情報処理装置と情報処理装置の制御方法、ならびにプログラム
TWI705334B (zh) 擴展系統與伺服器主機及其操作方法
TW202213114A (zh) 主機裝置及記憶體系統
JP2019101972A (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP2022041324A (ja) 情報処理装置
CN112445736A (zh) 信息处理系统
JP2008204005A (ja) 周辺装置の通信方法、コンピュータプログラム、及び周辺装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191216

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20201009