IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社PFUの特許一覧

<>
  • 特開-コンピュータ装置及び接続判定方法 図1
  • 特開-コンピュータ装置及び接続判定方法 図2
  • 特開-コンピュータ装置及び接続判定方法 図3A
  • 特開-コンピュータ装置及び接続判定方法 図3B
  • 特開-コンピュータ装置及び接続判定方法 図4
  • 特開-コンピュータ装置及び接続判定方法 図5
  • 特開-コンピュータ装置及び接続判定方法 図6
  • 特開-コンピュータ装置及び接続判定方法 図7
  • 特開-コンピュータ装置及び接続判定方法 図8
  • 特開-コンピュータ装置及び接続判定方法 図9
  • 特開-コンピュータ装置及び接続判定方法 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022162235
(43)【公開日】2022-10-24
(54)【発明の名称】コンピュータ装置及び接続判定方法
(51)【国際特許分類】
   G06F 11/07 20060101AFI20221017BHJP
   G06F 11/32 20060101ALI20221017BHJP
   G06F 11/30 20060101ALI20221017BHJP
   G06F 13/10 20060101ALI20221017BHJP
   G06F 13/14 20060101ALI20221017BHJP
   G06F 3/00 20060101ALI20221017BHJP
   G06F 13/38 20060101ALI20221017BHJP
【FI】
G06F11/07 151
G06F11/32 170
G06F11/30 140T
G06F13/10 310C
G06F13/10 310E
G06F13/14 330B
G06F3/00 A
G06F13/38 320Z
G06F13/38 350
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2021066945
(22)【出願日】2021-04-12
(71)【出願人】
【識別番号】000136136
【氏名又は名称】株式会社PFU
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】古川 崚大
【テーマコード(参考)】
5B042
5B077
【Fターム(参考)】
5B042GA35
5B042KK13
5B042KK14
5B042KK15
5B042MA05
5B042MC06
5B042MC16
5B042MC17
5B042MC18
5B042MC40
5B077NN02
5B077NN08
(57)【要約】
【課題】USBデバイスが期待どおりの通信速度で動作していないことを検出すること。
【解決手段】コンピュータ装置1において、USBコネクタC1~C4にはUSBデバイスを接続可能であり、ポートP1~P7は互いに異なる通信速度を有し、メモリは、USBコネクタC1~C4とポートP1~P7との対応付けを示すポートマッピング情報52を記憶し、CPU10は、ポートP1~P7のうちUSBデバイスの所定の通信速度未満の通信速度を有するポートである低速ポートにUSBデバイスが接続されているときに、ポートマッピング情報を用いて、低速ポートと接続されているUSBコネクタが、USBデバイスの所定の通信速度以上の通信速度を有するポートである高速ポートと接続されているか否かを判定する。
【選択図】図1
【特許請求の範囲】
【請求項1】
所定の通信速度で通信可能なUSBデバイスを接続可能なUSBコネクタと、
互いに異なる通信速度を有する複数のポートと、
前記USBコネクタと前記複数のポートとの対応付けを示す情報を記憶するメモリと、
前記複数のポートのうち前記所定の通信速度未満の通信速度を有するポートである低速ポートに前記USBデバイスが接続されているときに、前記情報を用いて、前記低速ポートと接続されている前記USBコネクタである接続コネクタが、前記所定の通信速度以上の通信速度を有するポートである高速ポートと接続されているか否かを判定するCPUと、
を具備するコンピュータ装置。
【請求項2】
前記CPUは、前記情報において前記接続コネクタと前記高速ポートとが対応付けられているときに、前記接続コネクタが前記高速ポートと接続されていると判定する、
請求項1に記載のコンピュータ装置。
【請求項3】
前記接続コネクタが前記高速ポートと接続されていると判定した前記CPUは、
通知モードが有効に設定されているときは、オペレーションシステムを起動させずに、前記接続コネクタが前記高速ポートと接続されているにもかかわらず前記USBデバイスが前記低速ポートに接続されている状態にあることの通知を行い、
前記通知モードが無効に設定されているときは、前記接続コネクタが前記高速ポートと接続されているにもかかわらず前記USBデバイスが前記低速ポートに接続されている状態にある場合でも前記通知を行わずに前記オペレーションシステムを起動させる、
請求項1に記載のコンピュータ装置。
【請求項4】
前記CPUは、BIOSのセットアップ画面を用いて前記通知を行う、
請求項3に記載のコンピュータ装置。
【請求項5】
所定の通信速度で通信可能なUSBデバイスを接続可能なUSBコネクタと、
互いに異なる通信速度を有する複数のポートと、
CPUと、
を具備するコンピュータ装置における接続判定方法であって、
前記CPUが、
前記複数のポートのうち前記所定の通信速度未満の通信速度を有するポートである低速ポートに前記USBデバイスが接続されているときに、前記USBコネクタと前記複数のポートとの対応付けを示す情報を用いて、前記低速ポートと接続されている前記USBコネクタが、前記所定の通信速度以上の通信速度を有するポートである高速ポートと接続されているか否かを判定する、
接続判定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、コンピュータ装置及び接続判定方法に関する。
【背景技術】
【0002】
昨今、USB(Universal Serial Bus)の技術が飛躍的に進歩し、USB規格に準拠した様々なデバイスが存在する。USB規格に準拠したデバイス(以下では「USBデバイス」ということがある)の一例として、USBキーボード、USBマウス、USBフラッシュメモリ等が挙げられる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007-156921号公報
【特許文献2】特開2007-249761号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、コンピュータ装置に接続されたUSBデバイスが期待どおりの通信速度で動作しないことがある一方で、USBデバイスが期待どおりの通信速度で動作していないことをコンピュータ装置が検出することは困難であった。
【0005】
そこで、本開示では、USBデバイスが期待どおりの通信速度で動作していないことを検出できる技術を提案する。
【課題を解決するための手段】
【0006】
本開示のコンピュータ装置は、USBコネクタと、複数のポートと、メモリと、CPUとを有する。前記USBコネクタには、所定の通信速度で通信可能なUSBデバイスを接続可能である。前記複数のポートは、互いに異なる通信速度を有する。前記メモリは、前記USBコネクタと前記複数のポートとの対応付けを示す情報を記憶する。前記CPUは、前記複数のポートのうち前記所定の通信速度未満の通信速度を有するポートである低速ポートに前記USBデバイスが接続されているときに、前記情報を用いて、前記低速ポートと接続されている前記USBコネクタである接続コネクタが、前記所定の通信速度以上の通信速度を有するポートである高速ポートと接続されているか否かを判定する。
【発明の効果】
【0007】
開示の技術によれば、USBデバイスが期待どおりの通信速度で動作していないことを検出できる。
【図面の簡単な説明】
【0008】
図1図1は、本開示の実施例のコンピュータ装置の構成例を示す図である。
図2図2は、本開示の実施例のポートマッピング情報の一例を示す図である。
図3A図3Aは、実施例のコンピュータ装置における処理手順の一例を示すフローチャートである。
図3B図3Bは、実施例のコンピュータ装置における処理手順の一例を示すフローチャートである。
図4図4は、本開示の実施例のログ情報の一例を示す図である。
図5図5は、本開示の実施例の通知メッセージの一例を示す図である。
図6図6は、本開示の実施例のBIOSセットアップ画面の一例を示す図である。
図7図7は、本開示の実施例のBIOSセットアップ画面の一例を示す図である。
図8図8は、本開示の実施例のBIOSセットアップ画面の一例を示す図である。
図9図9は、本開示の実施例のBIOSセットアップ画面の一例を示す図である。
図10図10は、本開示の実施例のBIOSセットアップ画面の一例を示す図である。
【発明を実施するための形態】
【0009】
以下、本開示の実施例を図面に基づいて説明する。実施例において同一の構成には同一の符号を付す。
【0010】
[実施例]
<コンピュータ装置の構成>
図1は、本開示の実施例のコンピュータ装置の構成例を示す図である。図1において、コンピュータ装置1は、CPU(Central Processing Unit)10と、チップセット20と、メモリ30と、USBコネクタC1,C2,C3,C4とを有する。チップセット20は、USBコントローラ40を有する。以下では、USBコネクタC1~C4を「USBコネクタC」と総称することがある。
【0011】
メモリ30には、BIOS(Basic Input Output System)50が記憶されている。BIOS50には、BIOSコード51と、ポートマッピング情報52とがBIOSデータとして含まれる。
【0012】
USBコントローラ40は、ポートP1~P7を有する。ポートP1,P4,P6,P7はHS(High Speed)ポートであり、ポートP2,P5はSS(Super Speed)ポートであり、ポートP3はNS(Next Speed)ポートである。ポートP1,P2,P3はUSBコネクタC1に接続され、ポートP4,P5はUSBコネクタC2に接続され、ポートP6はUSBコネクタC3に接続され、ポートP7はUSBコネクタC4に接続されている。USBコネクタC1,C2,C3,C4の各々には、所定の通信速度で通信可能なUSBデバイスを接続可能である。以下では、ポートP1~P7を「ポートP」と総称することがある。“HS”はUSB2.0規格に規定されているスピードであり、“SS”はUSB3.0規格に規定されているスピードであり、“NS”は次世代の規格であるUSB4.0規格において検討中のスピードである。SSポートの通信速度はHSポートの通信速度より大きく、NSポートの通信速度はSSポートの通信速度より大きい。
【0013】
例えば、SSで通信可能なUSBデバイス(以下では「SS対応デバイス」と呼ぶことがある)がUSBコネクタC1またはUSBコネクタC2に接続された場合は、USBコネクタC1,C2はSSポートを有しているため、コンピュータ装置1とSS対応デバイスとはSSの通信速度で通信することが可能である。一方で、SS対応デバイスがUSBコネクタC3またはUSBコネクタC4に接続された場合は、USBコネクタC3,C4はHSポートを有しているがSSポートを有していないため、コンピュータ装置1とSS対応デバイスとはSSの通信速度で通信することはできず、HSの通信速度で通信することになる。
【0014】
また、USBコネクタCに接続されたUSBデバイス(以下では「接続デバイス」と呼ぶことがある)が接続されるポートP(以下では「接続ポート」と呼ぶことがある)の決定は、接続デバイスのディスクリプタが参照されずに行われる。よって、例えば、SS対応デバイスがUSBコネクタC1に接続された場合は、SSポートであるポートP2ではなくて、HSポートであるポートP1が接続ポートになってしまうことがある。SS対応デバイスの接続ポートがHSポートであると、本来SSの通信速度で通信可能なSS対応デバイスの通信速度はHSの通信速度に制限されてしまう。このように、所定の通信速度で通信可能なUSBデバイスが接続されたUSBコネクタCが、USBデバイスの所定の通信速度以上の通信速度を有するポートPと接続されているにもかかわらず、USBデバイスが、USBデバイスの所定の通信速度未満の通信速度を有するポートPに接続されている状態を、以下では「デグレード状態」と呼ぶことがある。また以下では、USBデバイスの所定の通信速度を「USBデバイス速度」と呼ぶことがある。
【0015】
<ポートマッピング情報>
図2は、本開示の実施例のポートマッピング情報の一例を示す図である。図2に示すように、ポートマッピング情報52には、図1に示す構成例に従って、USBコネクタC1~C4の各々と、ポートP1~P7の各々との対応付けが示されている。また、ポートマッピング情報52には、ポートP1~P7の各々がHSポート、SSポートまたはNSポートの何れであるかが示されている。
【0016】
<コンピュータ装置における処理手順>
図3A及び図3Bは、実施例のコンピュータ装置における処理手順の一例を示すフローチャートである。図3A及び図3Bに示すフローチャートは、コンピュータ装置1の電源が投入されたときに開始される。また、図3A及び図3Bにおいて、ステップS100~S200の処理は、CPU10がBIOSコード51に従ってBIOS50を実行することにより行われる。コンピュータ装置1の電源が投入されたときに、CPU10は、メモリ30からBIOS50をチップセット20を介して取得する。
【0017】
ステップS100では、CPU10は、USBコントローラ40、及び、USBコネクタCに接続されているUSBデバイスを初期化する。
【0018】
次いで、ステップS105では、CPU10は、nを“1”に初期化し、異常フラグを“0”に初期化する。
【0019】
次いで、ステップS110では、CPU10は、ポートPn(n=1,2,…)のポート状態をチェックする。ポートPnの各ポートPはポートステータスレジスタを有する。ポートステータスレジスタには、ポートPnにUSBデバイスが接続されているか否か(以下では「デバイス接続有無」と呼ぶことがある)を示す情報、ポートPnに過電流が発生しているか否か(以下では「過電流発生有無」と呼ぶことがある)を示す情報、及び、ポートPnにUSBデバイスが接続されている場合に、接続されているUSBデバイスをポートPnが認識できているか否か(以下では「デバイス認識有無」と呼ぶことがある)を示す情報が格納されている。CPU10は、ポートPnのポートステータスレジスタを参照し、デバイス接続有無、過電流発生有無、及び、デバイス認識有無を判定することによりポートPnのポート状態をチェックする。
【0020】
次いで、ステップS115では、CPU10は、ステップS110で行ったポート状態チェックに基づいて、ポートPnにUSBデバイスが接続されているか否かを判定する。ポートPnにUSBデバイスが接続されているときは(ステップS115:Yes)、処理はステップS120へ進み、ポートPnにUSBデバイスが接続されていないときは(ステップS115:No)、処理はステップS170へ進む。
【0021】
ステップS120では、CPU10は、ステップS110で行ったポート状態チェックに基づいて、ポートPnのポート状態が正常か否かを判定する。例えば、CPU10は、ポートPnに過電流が発生しておらず、かつ、ポートPnに接続されているUSBデバイスをポートPnが認識できているときは、ポートPnのポート状態が正常であると判定する。一方で、ポートPnに過電流が発生しているか、または、ポートPnに接続されているUSBデバイスをポートPnが認識できていないときは、CPU10は、ポートPnのポート状態が異常であると判定する。ポートPnのポート状態が正常であるときは(ステップS120:Yes)、処理はステップS125へ進み、ポートPnのポート状態が異常であるときは(ステップS120:No)、処理はステップS185へ進む。
【0022】
ステップS125では、CPU10は、ポートPnに接続されているUSBデバイスのディスクリプタを参照し、ポートPnに接続されているUSBデバイスからUSBデバイス速度を取得する。
【0023】
次いで、ステップS130では、CPU10は、ポートPnが通信可能な通信速度(以下では「ポート速度」と呼ぶことがある)を取得する。各ポートPのポート速度はUSBコントローラ40によって認識されているため、CPU10は、USBコントローラ40からポート速度を取得する。HSポートのポート速度はHSであり、SSポートのポート速度はSSであり、NSポートのポート速度はNSである。
【0024】
次いで、ステップS135では、CPU10は、ポートPnが通信可能なリンク幅(以下では「ポート幅」と呼ぶことがある) を取得する。各ポートPのポート幅はUSBコントローラ40によって認識されているため、CPU10は、USBコントローラ40からポート幅を取得する。
【0025】
次いで、ステップS140では、CPU10は、ポートPnのポート速度が、ステップS125で取得したUSBデバイス速度以上であるか否かを判定する。ポートPnのポート速度がUSBデバイス速度以上であるときは(ステップS140:Yes)、ステップS145~S165の処理が行われることなく、処理はステップS170へ進み、ポートPnのポート速度がUSBデバイス速度未満であるときは(ステップS140:No)、処理はステップS145へ進む。
【0026】
ステップS170では、CPU10は、nが所定値Nに達したか否かを判定する。図1に示すようにコンピュータ装置1がポートP1~P7の7個のポートPを有する場合、所定値Nは“7”に設定される。nがNに達していないときは(ステップS170:No)、処理はステップS175へ進み、nがNに達しているときは(ステップS170:Yes)、処理はステップS190へ進む。
【0027】
ステップS175では、CPU10は、nをインクリメントする。ステップS175の処理後、処理はステップS110に戻る。
【0028】
一方で、ステップS145では、CPU10は、ポートマッピング情報52(図2)を参照する。
【0029】
次いで、ステップS150では、CPU10は、ポートマッピング情報52に基づいて、ポートPnが接続されているUSBコネクタC(以下では「接続コネクタ」と呼ぶことがある)を判定する。CPU10は、ポートマッピング情報52に基づいて、例えば、ポートPnがポートP1、ポートP2またはポートP3である場合(nが1、2または3である場合)は、USBコネクタC1を接続コネクタとして判定し、ポートPnがポートP4またはポートP5である場合(nが4または5である場合)は、USBコネクタC2を接続コネクタとして判定し、ポートPnがポートP6である場合(nが6である場合)は、USBコネクタC3を接続コネクタとして判定し、ポートPnがポートP7である場合(nが7である場合)は、USBコネクタC4を接続コネクタとして判定する。
【0030】
次いで、ステップS155では、CPU10は、接続コネクタが通信可能な最大の通信速度(以下では「接続コネクタ最大速度」と呼ぶことがある)をポートマッピング情報52に基づいて判定する。またステップS155では、CPU10は、接続コネクタ速度がUSBデバイス速度以上であるか否かを判定する。
【0031】
例えば、接続コネクタがUSBコネクタC1である場合は、CPU10は、ポートマッピング情報52に基づいて、USBコネクタC1はHSポート、SSポート及びNSポートに接続されていると判定し、USBコネクタC1の通信速度として選択可能なHS、SS及びNSのうちの最大速度であるNSを接続コネクタ最大速度として判定する。また例えば、接続コネクタがUSBコネクタC2である場合は、CPU10は、ポートマッピング情報52に基づいて、USBコネクタC2はHSポート及びSSポートに接続されていると判定し、USBコネクタC2の通信速度として選択可能なHS及びSSのうちの最大速度であるSSを接続コネクタ最大速度として判定する。また例えば、接続コネクタがUSBコネクタC3である場合は、CPU10は、ポートマッピング情報52に基づいて、USBコネクタC3はHSポートに接続されていると判定し、USBコネクタC3の通信速度として選択可能なHSを接続コネクタ最大速度として判定する。また例えば、接続コネクタがUSBコネクタC4である場合は、CPU10は、ポートマッピング情報52に基づいて、USBコネクタC4はHSポートに接続されていると判定し、USBコネクタC4の通信速度として選択可能なHSを接続コネクタ最大速度として判定する。
【0032】
接続コネクタ最大速度がUSBデバイス速度以上であるときは(ステップS155:Yes)、処理はステップS160へ進み、接続コネクタ最大速度がUSBデバイス速度未満であるときは(ステップS155:No)、処理はステップS170へ進む。
【0033】
ステップS160では、CPU10は、デグレード状態が発生していることをログに記録する。
【0034】
次いで、ステップS165では、CPU10は、異常フラグを“0”から“1”に更新する。ステップS165の処理後、処理はステップS170へ進む。
【0035】
また、ステップS185では、CPU10は、ポートPnのポート状態が異常であることをログに記録する。ステップS185の処理後、処理はステップS170へ進む。
【0036】
一方で、ステップS190では、CPU10は、異常フラグが“1”であるか否かを判定する。異常フラグが“1”であるときは(ステップS190:Yes)、処理はステップS195へ進み、異常フラグが“0”であるときは(ステップS190:No)、ステップS195の処理が行われることなく、処理はステップS205へ進む。
【0037】
ステップS195では、CPU10は、USB異常通知モードが“有効”であるか否かを判定する。USB異常通知モードを有効にするか否かはBIOSセットアップを用いてユーザによって予め設定されている。USB異常通知モードが“有効”であるときは(ステップS195:Yes)、処理はステップS200へ進み、USB異常通知モードが“無効”であるときは(ステップS195:No)、処理はステップS205へ進む。
【0038】
ステップS200では、CPU10は、BIOSセットアップを起動させる。
【0039】
一方で、ステップS205では、OS(Operating System)を起動させる。
【0040】
ステップS200またはステップS205の処理により、コンピュータ装置1における処理手順は終了する。
【0041】
<コンピュータ装置の動作>
以下、コンピュータ装置1の動作例について、動作例1~3の3つの動作例を挙げて説明する。なお、動作例1~3の何れの場合でも、ポート状態は正常であるものとする(ステップS120:Yes)。
【0042】
<動作例1>
動作例1では、USBコネクタC1(図1)に接続されたSS対応デバイスがポートP2(図1)に接続されている場合について説明する。接続デバイスがSS対応デバイスであるため、USBデバイス速度はSSである。また、ポートP2はSSポートである。
【0043】
よって、n=2のときに、CPU10は、ポート速度がUSBデバイス速度以上であると判定する(ステップS140:Yes)。つまり、動作例1では、CPU10は、デグレード状態が発生していないと判定する。
【0044】
<動作例2>
動作例2では、USBコネクタC1(図1)に接続されたSS対応デバイスがポートP1(図1)に接続されている場合について説明する。接続デバイスがSS対応デバイスであるため、USBデバイス速度はSSである。また、ポートP1はHSポートである。
【0045】
よって、n=1のときに、CPU10は、ポート速度がUSBデバイス速度未満であると判定する(ステップS140:No)。
【0046】
次いで、CPU10は、ポートマッピング情報52(図2)を参照し(ステップS145)、ポートマッピング情報52に基づいて、ポートP1の接続コネクタがUSBコネクタC1であると判定する(ステップS150)。
【0047】
次いで、CPU10は、接続コネクタがUSBコネクタC1であるため、ポートマッピング情報52に基づいて、接続コネクタ最大速度がポートP3のNSであると判定する(ステップS155)。また、CPU10は、接続コネクタ最大速度がNSである一方で、USBデバイス速度がSSであるため、接続コネクタ最大速度がUSBデバイス速度以上であると判定する(ステップS155:Yes)。つまり、CPU10は、USBコネクタC1が、USBデバイス速度以上のポート速度を有するポートPと接続されていると判定する。よって、動作例2では、CPU10は、デグレード状態が発生していると判定する。
【0048】
<動作例3>
動作例3では、USBコネクタC4(図1)に接続されたSS対応デバイスがポートP7(図1)に接続されている場合について説明する。接続デバイスがSS対応デバイスであるため、USBデバイス速度はSSである。また、ポートP7はHSポートである。
【0049】
よって、n=7のときに、CPU10は、ポート速度がUSBデバイス速度未満であると判定する(ステップS140:No)。
【0050】
次いで、CPU10は、ポートマッピング情報52(図2)を参照し(ステップS145)、ポートマッピング情報52に基づいて、ポートP7の接続コネクタがUSBコネクタC4であると判定する(ステップS150)。
【0051】
次いで、CPU10は、接続コネクタがUSBコネクタC4であるため、ポートマッピング情報52に基づいて、接続コネクタ最大速度がポートP7のHSであると判定する(ステップS155)。また、CPU10は、接続コネクタ最大速度がHSである一方で、USBデバイス速度がSSであるため、接続コネクタ最大速度がUSBデバイス速度未満であると判定する(ステップS155:No)。つまり、CPU10は、USBコネクタC4が、USBデバイス速度以上のポート速度を有するポートPと接続されていないと判定する。よって、動作例3では、CPU10は、デグレード状態が発生していないと判定する。
【0052】
<ログ情報>
図4は、本開示の実施例のログ情報の一例を示す図である。図1に示すように、ログ情報LIには、ログ番号と、ログカテゴリと、ログサブカテゴリと、異常コネクタ番号と、異常ポート番号と、ポート種類と、異常ポート状態とが含まれる。
【0053】
ログ番号は、各ログに付されるユニークな番号である。
【0054】
ログカテゴリは、「ポート異常」と「デグレード」とに分類され、ポートPnのポート状態が異常である場合にはログカテゴリとして“0x00”が記録され、デグレード状態が発生している場合にはログカテゴリとして“0x01”が記録される。
【0055】
ログサブカテゴリは、「リンク状態異常」と「過電流発生」とに分類され、ポートPnのリンク状態が異常である場合にはログサブカテゴリとして“0x00”が記録され、ポートPnに過電流が発生している場合にはログサブカテゴリとして“0x01”が記録される。
【0056】
異常コネクタ番号には、異常なコネクタの番号が記録される。
【0057】
異常ポート番号には、異常なポートの番号が記録される。
【0058】
ポート種類は、HSとSSとNSとに分類され、ポートPnがHSポートである場合にはポート種類として“0x00”が記録され、ポートPnがSSポートである場合にはポート種類として“0x01”が記録され、ポートPnがNSポートである場合にはポート種類として“0x02”が記録される。
【0059】
異常ポート状態には、異常が検出されたポートPnの状態が記録される。
【0060】
以上のようなログ情報が、図3Aに示すステップS160またはS185の処理で記録される。
【0061】
<通知メッセージ>
図5は、本開示の実施例の通知メッセージの一例を示す図である。
【0062】
図5に示すように、ログ情報LIにおいてログカテゴリが“0x00”で、ログサブカテゴリが“0x00”である場合には、CPU10は、「接続状態が異常です。」という通知メッセージを生成する。
【0063】
また、ログ情報LIにおいてログカテゴリが“0x00”で、ログサブカテゴリが“0x01”である場合には、CPU10は、「過電流が発生しています。」という通知メッセージを生成する。
【0064】
また、ログ情報LIにおいてログカテゴリが“0x01”で、ログサブカテゴリが“0x00”である場合には、CPU10は、「デグレードが起きています。」という通知メッセージを生成する。
【0065】
CPU10は、このようにして生成した通知メッセージをBIOSのセットアップ画面(以下では「BIOSセットアップ画面」と呼ぶことがある)に表示させる。BIOSセットアップは、ステップS200(図3B)の処理で起動される。
【0066】
<BIOSセットアップ画面>
図6図10は、本開示の実施例のBIOSセットアップ画面の一例を示す図である。図6には、BIOSセットアップ画面のメインフォームMFを示し、図7図10には、BIOSセットアップ画面のサブフォームSF1~SF4を示す。メインフォームMFには各USBコネクタCの状態の概要が示され、サブフォームSF1にはUSBコネクタC1の状態の詳細が示され、サブフォームSF2にはUSBコネクタC2の状態の詳細が示され、サブフォームSF3にはUSBコネクタC3の状態の詳細が示され、サブフォームSF4にはUSBコネクタC4の状態の詳細が示される。CPU10は、図3Aに示すステップS160またはS185の処理で記録されるログ情報に基づいて、メインフォームMF及びサブフォームSF1~SF4を生成する。
【0067】
CPU10は、ステップS200(図3B)の処理を実行すると、まず、図6に示すメインフォームMFを画面表示する。図6の例では、USBコネクタC2においてデグレード状態が発生していることが示されている。
【0068】
メインフォームMFにおいて、「エラーログ機能」及び「USB異常通知モード」はユーザによって“有効”または“無効”に設定可能である。 「エラーログ機能」が“有効”に設定された場合は、ポートPの異常検出時にポートPの情報とUSBデバイスの情報とがログ情報として記録され、「エラーログ機能」が“無効”に設定された場合は、ポートPの異常検出時にログ情報が記録されない。
【0069】
「USB異常通知モード」が“有効”に設定された場合は、ポートPの異常検出時にBIOSセットアップが起動されてBIOSセットアップ画面が表示され、「USB異常通知モード」が“無効”に設定された場合は、ポートPの異常検出時にOSが起動される。
【0070】
メインフォームMFにおいてUSBコネクタC1の項目が選択されるとBIOSセットアップ画面はサブフォームSF1(図7)に遷移し、USBコネクタC2の項目が選択されるとBIOSセットアップ画面はサブフォームSF2(図8)に遷移し、USBコネクタC3の項目が選択されるとBIOSセットアップ画面はサブフォームSF3(図9)に遷移し、USBコネクタC4の項目が選択されるとBIOSセットアップ画面はサブフォームSF4(図10)に遷移する。
【0071】
サブフォームSF1~SF4に表示される各種情報は、各ポートPのポートステータスレジスタから取得される。
【0072】
サブフォームSF1~SF4において、「ポートマッピング情報」には、HSポート、SSポート及びNSポートの各ポートPの番号が表示される。
【0073】
「ポート状態」には、ポートPの現在の接続状態と、接続ポートの使用可否と、オーバカレント(過電流)の発生有無と、接続ポートのリンク状態と、接続ポートの速度と、接続ポートのリンク幅とが表示される。
【0074】
「デバイス情報」には、接続デバイスの速度状態と、接続デバイスのベンダー名及びデバイス名と、接続デバイスのサポート速度とが表示される。
【0075】
以上、実施例について説明した。
【0076】
以上のように、本開示のコンピュータ装置(実施例のコンピュータ装置1)は、USBコネクタ(実施例のUSBコネクタC)と、複数のポート(実施例のポートP)と、メモリ(実施例のメモリ30)と、CPU(実施例のCPU10)とを有する。USBコネクタには、所定の通信速度(実施例のHS,SS,NS)で通信可能なUSBデバイスを接続可能である。複数のポートは、互いに異なる通信速度(実施例のHS,SS,NS)を有する。メモリは、USBコネクタと複数のポートとの対応付けを示す情報(実施例のポートマッピング情報52)を記憶する。CPUは、複数のポートのうち所定の通信速度未満の通信速度を有するポートである低速ポート(動作例2のポートP1)にUSBデバイスが接続されているときに(ステップS140:No)、メモリに記憶された対応付けの情報を用いて(ステップS145)、低速ポートと接続されているUSBコネクタである接続コネクタ(動作例2のUSBコネクタC1)が、所定の通信速度以上の通信速度を有するポートである高速ポート(動作例2のポートP3)と接続されているか否かを判定する(ステップS150,S155)。
【0077】
こうすることで、USBデバイスが期待どおりの通信速度で動作していないことを検出できる。
【0078】
また、CPUは、メモリに記憶された対応付けの情報において接続コネクタと高速ポートとが対応付けられているときに、接続コネクタが高速ポートと接続されていると判定する。
【0079】
こうすることで、接続コネクタが高速ポートと接続されていることの判定を容易に行うことができる。
【0080】
また、接続コネクタが高速ポートと接続されていると判定したCPUは、通知モード(実施例のUSB異常通知モード)が有効に設定されているときは(ステップS195:Yes)、オペレーションシステムを起動させずに、接続コネクタが高速ポートと接続されているにもかかわらずUSBデバイスが低速ポートに接続されている状態(実施例のデグレード状態)にあることの通知を行う(ステップS200)。一方で、CPUは、通知モードが無効に設定されているときは(ステップS195:No)、接続コネクタが高速ポートと接続されているにもかかわらずUSBデバイスが低速ポートに接続されている状態にある場合でも通知を行わずにオペレーションシステムを起動させる(ステップS205)。
【0081】
こうすることで、コンピュータ装置のユーザは、接続コネクタが高速ポートと接続されているにもかかわらずUSBデバイスが低速ポートに接続されている状態にあることを容易に確認することができる。また、通知の有無をユーザが選択することが可能になる。
【0082】
また、CPUは、BIOSのセットアップ画面(実施例のメインフォームMF,サブフォームSF1~SF4)を用いて通知を行う。
【0083】
こうすることで、コンピュータ装置が搭載するOSの種類によらずに通知を行うことができる。
【符号の説明】
【0084】
1 コンピュータ装置
10 CPU
20 チップセット
30 メモリ
40 USBコントローラ
50 BIOS
51 BIOSコード
52 ポートマッピング情報
P1~P7 ポート
C1~C4 USBコネクタ
図1
図2
図3A
図3B
図4
図5
図6
図7
図8
図9
図10