[go: up one dir, main page]

JP7348721B2 - コントローラ、制御方法、制御プログラム - Google Patents

コントローラ、制御方法、制御プログラム Download PDF

Info

Publication number
JP7348721B2
JP7348721B2 JP2018223029A JP2018223029A JP7348721B2 JP 7348721 B2 JP7348721 B2 JP 7348721B2 JP 2018223029 A JP2018223029 A JP 2018223029A JP 2018223029 A JP2018223029 A JP 2018223029A JP 7348721 B2 JP7348721 B2 JP 7348721B2
Authority
JP
Japan
Prior art keywords
power
role
src
snk
state
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.)
Active
Application number
JP2018223029A
Other languages
English (en)
Other versions
JP2020087149A (ja
Inventor
暖 青木
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2018223029A priority Critical patent/JP7348721B2/ja
Priority to US16/596,033 priority patent/US11281271B2/en
Priority to CN201911157764.0A priority patent/CN111240453B/zh
Publication of JP2020087149A publication Critical patent/JP2020087149A/ja
Application granted granted Critical
Publication of JP7348721B2 publication Critical patent/JP7348721B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR 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 OR 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 OR 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/263Arrangements for using multiple switchable power supplies, e.g. battery and AC
    • GPHYSICS
    • G06COMPUTING OR 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]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Power Sources (AREA)
  • Information Transfer Systems (AREA)

Description

本開示は、コントローラに関し、例えば、USB(Universal Serial Bus)規格に従うシーケンスを実行して接続先との間で受給電動作を実行するために用いられる。
USB規格として、USB Type-C規格が規定され、USB Type-C規格に従うUSB Type-C型インターフェースが普及しつつある(例えば、非特許文献1など参照)。USB Type-C型インターフェースでは、給電および受電は同一形状のポートが用いられることになる。そのため、単一のポートで給電および受電の両方に対応することになる。
USB Type-C規格においては、電力を供給するデバイス(給電側)を「Source」あるいは「SRC」と称し、電力を受電するデバイス(受電側)を「Sink」あるいは「SNK」と称する。さらに、給電および受電の両方に対応するデバイスを「DRP(Dual Role Power)」と称する。DRPを採用することで、従来では別々に2つ必要だったポートが一つで済み、コストおよびスペースを削減できる。
このような利点により、モバイルバッテリなどのPower Bankをはじめとして、スマートフォン、タブレット、ラップトップパソコンなどのモバイルデバイスにおいて、USB Type-C型インターフェースが採用される場合には、1つのポートで給電および受電の両方に対応できるように、Port Power RoleとしてDRPが採用されることが予想される。
Port Power RoleとしてDRPを有するデバイス同士を接続した場合、Power Role(すなわち、どちらのデバイスがSRC/SNKになるか)は一意には決まらない。そこで、非特許文献1に示されるUSB Type-C規格においては、Port Power Roleとして、「Try.SRC」(SRCを志向するDRP)および「Try.SNK」(SNKを志向するDRP)が規定されている。
例えば、Try.SRC(SRCを志向するDRP)とDRP(純粋なDRP)と接続した場合、Try.SRC側のデバイスがSRCとなる。同様に、Try.SNK(SNKを志向するDRP)とDRP(純粋なDRP)とを接続した場合、Try.SNK側のデバイスがSNKとなる。
本願発明者は、このようなTry.SRCまたはTry.SNKを採用した場合に、新たな課題が生じる得ることを見出した。
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
ある実施の形態に従うコントローラは、USB Type-C規格に従う、給電側および受電側のいずれにもなり得るDRPに対応したデバイスを実現するために用いられる。コントローラは、接続先のデバイスである対向デバイスとのシーケンスに従って、自デバイスのPower Roleが受電側を意味するSinkに決定されると、対向デバイスのPort Power RoleがTry.SRCであるか否かを判断する第1の処理と、対向デバイスのPort Power RoleがTry.SRCであれば、自デバイスのPort Power RoleをSRC onlyに切り替えて、対向デバイスとのシーケンスを継続する第2の処理とを実行可能に構成される。
ある実施の形態によれば、Try.SRCまたはTry.SNKを採用した場合に生じ得る新たな課題を解決できる。
USB Type-C規格に従うPower Roleを決定する一例を説明するための図である。 USB Type-C規格に従うデバイス接続に係るPower Roleの決定例を示す図である。 本発明の各実施の形態に従うPower Bankのハードウェア構成例を示す模式図である。 図3に示すコントローラ110の回路構成の一例を示す模式図である。 実施の形態1に従うデバイスにおけるPower Roleの決定例を示す図である。 実施の形態1に従うデバイスのステートマシンの一例を示す図である。 実施の形態1に従うデバイスがPort Power RoleがTry.SRCである対向デバイスと接続された場合のシーケンス(Port Power Roleの切り替えなし)の一例を示す図である。 実施の形態1に従うデバイスがPort Power RoleがTry.SRCである対向デバイスと接続された場合のシーケンス(Port Power Roleの切り替えあり)の一例を示す図である。 実施の形態1に従うデバイスがPort Power RoleがSRC onlyである対向デバイスと接続された場合のシーケンスの一例を示す図である。 図7~図9に示す各シーケンスに対応するステートマシンを示す図である。 実施の形態1に従うデバイス同士が接続された場合のシーケンスの一例を示す図である。 実施の形態2に従うデバイスのステートマシンの一例を示す図である。 実施の形態2に従うデバイスと実施の形態1に従うデバイスとが接続された場合のシーケンスの一例を示す図である。 実施の形態3に従うデバイスにおいて採用される切替条件SRを説明するための図である。 実施の形態4に従うデバイスにおいて採用される切替条件SRを説明するための図である。 実施の形態4の変形例に従うデバイスにおいて採用される切替条件SRを説明するための図である。 実施の形態5に従うデバイスにおけるPower Roleの決定例を示す図である。 実施の形態5に従うデバイスのステートマシンの一例を示す図である。 実施の形態5に従うデバイスのステートマシンの要部を示す図である。 実施の形態5に従うデバイスにおいて採用される切替条件SNを説明するための図である。
いくつかの実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一の参照符号を付してその説明は繰り返さない。
[A.背景技術]
まず、USB Type-C規格におけるPower Roleについて説明する。
USB Type-C規格においては、電力を供給するデバイス(給電側)である「Source」あるいは「SRC」、ならびに、電力を受電するデバイス(受電側)である「Sink」あるいは「SNK」に加えて、給電および受電の両方に対応するデバイスである「DRP」が規定されている。
DRPとして構成されたデバイス同士を接続した場合、Power Role(すなわち、どちらのデバイスがSRC/SNKになるか)は一意には決まらない。そこで、USB Type-C規格においては、「Try.SRC」(SRCを志向するDRP)および「Try.SNK」(SNKを志向するDRP)が規定されている。
図1は、USB Type-C規格に従うPower Roleを決定する一例を説明するための図である。図1には、Power Bank100と、スマートフォン200と、ラップトップパソコン300とを示す。これらのデバイスは、いずれもDRPとして構成されているとする。
図1(a)に示すように、Power Bank100とスマートフォン200とを接続した場合には、通常、Power Bank100からスマートフォン200へ電力が供給されることが予定される。すなわち、Power Bank100がSRCとなり、スマートフォン200がSNKとなることが好ましい。
また、図1(b)に示すように、ラップトップパソコン300とスマートフォン200とを接続した場合には、ラップトップパソコン300がより大きなバッテリを搭載していることを考えると、ラップトップパソコン300スマートフォン200へ電力が供給されることが予定される。すなわち、ラップトップパソコン300がSRCとなり、スマートフォン200がSNKとなることが好ましい。
図1(a)および図1(b)に示すような使用形態を想定すると、Power Bank100およびラップトップパソコン300は、いずれもTry.SRCとして構成し、スマートフォン200は、Try.SNKとして構成することが好ましい。
ここで、図1(c)に示すように、Power Bank100とラップトップパソコン300とを接続した場合を想定する。この場合、通常、Power Bank100からラップトップパソコン300へ電力が供給されることが期待される。そのため、Power Bank100はSRCとなり、ラップトップパソコン300はSNKとなることが好ましい。
しかしながら、図1(a)および図1(b)に示されるような使用形態を想定して、Power Bank100およびラップトップパソコン300をTry.SRCとして構成した場合には、Power Bank100およびラップトップパソコン300の間のPower Roleは一意には決まらない、という新たな課題を見出した。
すなわち、Try.SRC同士を接続した場合には、Power Role(すなわち、どちらのデバイスがSRC/SNKになるか)は一意には決まらない。同様に、Try.SNK同士を接続した場合にも、Power Role(すなわち、どちらのデバイスがSRC/SNKになるか)は一意には決まらない。
図2は、USB Type-C規格に従うデバイス接続に係るPower Roleの決定例を示す図である。図2に示すように、デバイスに設定される役割を示すPort Power Roleとしては、「SRC only」、「Try.SRC」、「DRP」、「Try.SNK」、「SNK only」の5種類が存在する。また、接続状態におけるデバイスの各ポートの役割を示すPower Roleとしては、「SNK」および「SRC」の2種類が存在する。
なお、Port Power RoleおよびPower Roleは、デバイスが有しているポート毎にそれぞれ独立して設定されることになる。説明の便宜上、以下では、各デバイスの単一のポートに注目して説明する。
図2を参照して、自デバイスのPort Power RoleがTry.SRCである場合には、接続先のデバイスである対向デバイスのPort Power RoleがTry.SRCであるときには、接続後の自デバイスのPower Roleは一意には決まらない。
同様に、自デバイスのPort Power RoleがTry.SNKである場合には、対向デバイスのPort Power RoleがTry.SNKであるときには、接続後の自デバイスのPower Roleは一意には決まらない。
本発明の各実施の形態によれば、このようなPower Roleが一意には決まらないという新たな課題に対して解決手段が提供される。
[B.ハードウェア構成例]
まず、本発明の各実施の形態に従うコントローラのハードウェア構成例について説明する。後述する各実施の形態は、以下に示すようなコントローラを用いて実現できる。説明の便宜上、Power Bank100のハードウェア構成例について説明するが、他のデバイスについても同様のハードウェア構成を採用できる。
図3は、本発明の各実施の形態に従うPower Bank100のハードウェア構成例を示す模式図である。図3を参照して、Power Bank100は、主たる構成要素として、コネクタ102と、電源管理部(Power Manager)104と、バッテリ106と、コントローラ(Controller)110とを含む。コネクタ102は、USB Type-C型インターフェースのポートを含む。
電源管理部104は、コントローラ110からの指示に従って、バッテリ106の充放電を制御する。具体的には、電源管理部104は、外部電源から供給される電力をバッテリ106に蓄える第1充電動作、外部デバイスから供給される電力をバッテリ106に蓄える第2充電動作、および、バッテリ106に蓄えられた電力を外部デバイスへ供給する放電動作を選択的に実行可能になっている。
バッテリ106は、充放電可能に構成された蓄電池であり、例えば、リチウムイオン二次電池、リチウムイオンポリマー二次電池、ニッケル・水素充電池などが用いられる。
コントローラ110は、USB Type-C規格に従う、給電側(SRC)および受電側(SNK)のいずれにもなり得るDRPに対応したデバイスを実現する。コントローラ110は、DRPとして機能するポートを提供し、後述するような制御方法を実行することで、USBケーブル2を介した対向デバイスとの通信および受給電動作を管理する。より具体的には、コントローラ110は、プロセッサ112と、CC1/CC2制御・接続検出モジュール(PHY&LGC)116とを含む。プロセッサ112は、CC1/CC2制御・接続検出モジュール116および電源管理部104に接続されている。
プロセッサ112は、USB Type-C規格に従うシーケンスを実行する。プロセッサ112は、制御プログラムの一例であるファームウェア114を実行することで、以下に示すような制御方法の実行および機能の提供を実現する。すなわち、USB Type-C規格に従うステート管理に係るシーケンス(制御手順)は、プロセッサ112が制御プログラムの一例であるファームウェア114を実行することで実現されてもよい。プロセッサ112およびファームウェア114を用いて実装することで、シーケンスの修正やバージョンアップなどをより容易に実現できる。なお、プロセッサ112を用いたソフトウェア実装ではなく、後述するようなハードウェア実装を採用してもよい。
CC1/CC2制御・接続検出モジュール116は、プロセッサ112からの指示に従って、USBケーブル2内の通信ライン(第1通信ライン(CC1)21および第2通信ライン(CC2)22)を制御して、対向デバイスと接続を検出する。なお、第1通信ライン21および第2通信ライン22を、まとめて「通信ライン」と総称することもある。CC1/CC2制御・接続検出モジュール116の詳細な構成については、後述する。
プロセッサ112は、バッテリ106の充放電を制御するための電源管理部104に結合されている。プロセッサ112と電源管理部104との間には、任意の制御インターフェースを設けてもよい。このような制御インターフェースは、プロセッサ112から指示に従って、電源管理部104による充放電を制御するための制御指令の送信を仲介する。例えば、プロセッサ112と電源管理部104との間では、I2Cインターフェースに従って制御信号を遣り取りするようにしてもよい。
バッテリ106と外部デバイスとの間の電力の遣り取りは、USBケーブル2内の電力ライン(VBUS)23を介して行われる。なお、USBケーブル2は、図示していないシールド線を含んでいてもよい。
図4は、図3に示すコントローラ110の回路構成の一例を示す模式図である。図4を参照して、コントローラ110のCC1/CC2制御・接続検出モジュール116は、第1通信ライン21(CC1)および第2通信ライン22(CC2)を制御して、対向デバイスとの接続を検出する。
より具体的には、CC1/CC2制御・接続検出モジュール116は、第1接続検出ブロック1161および第2接続検出ブロック1162を有している。
第1接続検出ブロック1161は、第1通信ライン21の電位によって対向デバイスの接続状態を検出し、その検出結果をプロセッサ112へ出力する。同様に、第2接続検出ブロック1162は、第2通信ライン22の電位によって対向デバイスの接続状態を検出し、その検出結果をプロセッサ112へ出力する。
CC1/CC2制御・接続検出モジュール116は、対向デバイスの接続を検出するために、通信ライン(第1通信ライン21および第2通信ライン22)と電源電位Vsおよびグランド電位GNDとの間にそれぞれ接続された抵抗を有している。
具体的には、第1通信ライン21には、電源電位Vsとの間に抵抗値Rpをもつプルアップ抵抗1165が接続されており、また、グランド電位GNDとの間に抵抗値Rdをもつプルダウン抵抗1166が接続されている。同様に、第2通信ライン22には、電源電位Vsとの間に抵抗値Rpをもつプルアップ抵抗1167が接続されており、また、グランド電位GNDとの間に抵抗値Rdをもつプルダウン抵抗1168が接続されている。
スイッチ1163,1164は、通信ライン(第1通信ライン21および第2通信ライン22)から電源電位Vsおよびグランド電位GNDへ繋がる経路を電気的に接続/遮断する。より具体的には、スイッチ1163は、プロセッサ112からの制御信号に従って、プルアップ抵抗1165またはプルダウン抵抗1166と第1通信ライン21とを電気的に接続/遮断する。同様に、スイッチ1164は、プロセッサ112からの制御信号に従って、プルアップ抵抗1167またはプルダウン抵抗1168と第2通信ライン22とを電気的に接続/遮断する。
第1通信ライン21および第2通信ライン22に生じる抵抗値Rp,Rdに応じた電圧をそれぞれ検出することで、Power Bank100と対向デバイスとの接続が確立される。
[C.実施の形態1]
次に、実施の形態1として、図1(c)に示すような状況において、Power Bank100のPower Roleを一意にSRCと決めることができるシーケンスを例示する。
より具体的には、実施の形態1に従うデバイスは、初期状態のPort Power RoleとしてTry.SRCが設定されており、接続後のPower RoleをSRCに固定しなければならない状況である場合(所定の切替条件SRが成立した場合)になると、Port Power Roleを動的にSRC onlyに切り替える。このようなPort Power Roleの動的な切り替えによって、Port Power RoleがTry.SRCであるデバイス同士を接続した場合であっても、予め定められたデバイスをSRCに固定できる。
(c1:Power Roleの決定例)
図5は、実施の形態1に従うデバイスにおけるPower Roleの決定例を示す図である。図5を参照して、初期状態において、自デバイスのPort Power RoleはTry.SRCであるとする。対向デバイスのPort Power RoleがTry.SRCである場合には、自デバイスのPort Power RoleをTry.SRCからSRC onlyに切り替える。これによって、自デバイスのPower RoleはSRCに一意に定まる。
上述したような、Port Power RoleをTry.SRCからSRC onlyに切り替えるための切替条件SRとして、実施の形態1においては、対向デバイスと接続する際のステート遷移パスを利用する。より具体的には、自デバイスがPower RoleをSNKとして接続した場合に、対向デバイスのPort Power RoleがTry.SRCであると判断されると、自デバイスのPort Power RoleをSRC onlyに切り替えて再接続する。なお、対向デバイスとの接続が切断されたことを検出すると、Port Power Roleを再度Try.SRCに戻す。
このように、実施の形態1に従うデバイスは、接続先のデバイスである対向デバイスとのシーケンスに従って、自デバイスのPower Roleが受電側を意味するSNKに決定されると、対向デバイスのPort Power RoleがTry.SRCであるか否かを判断する処理を実行する。そして、実施の形態1に従うデバイスは、対向デバイスのPort Power RoleがTry.SRCであれば、自デバイスのPort Power RoleをSRC onlyに切り替えて、対向デバイスとのシーケンスを継続する処理を実行する。
Port Power Roleを動的に切り替えることで、対向デバイスのPort Power RoleがTry.SRCであったとしても、接続後の自デバイスのPower RoleをSRCに固定できる。
(c2:ステートマシン)
図6は、実施の形態1に従うデバイスのステートマシンの一例を示す図である。図6を参照して、実施の形態1に従うデバイスは、Try.SRCおよびSRC onlyの両方のステートマシンを有することになる。
初期状態において、Port Power RoleはTry.SRCであるので、Try.SRCのステートマシンで動作を開始する。ステートマシンの遷移によって、切替条件SRが成立すると、SRC onlyのステートマシンでの動作に遷移する。
そして、SRC onlyでの動作において、対向デバイスとの接続が切断されたことを検出すると(Sink Removed)、Unattached.SRCステート(ST31)へ遷移するのではなく、Try.SRCのステートマシンに戻る。すなわち、デバイスは、Port Power RoleをTry.SRCに戻して、初期状態に復帰する。
なお、図6に示すステートマシンにおいては、SRC onlyからTry.SRCに復帰するにあたって、Attached.SRCステート(ST33)からUnattached.SNKステート(ST11)へ直接遷移する例を示すが、Attached.SRCステート(ST33)からUnattachedWait.SRCステート(ST34)を経てUnattached.SNKステート(ST11)へ遷移するようにしてもよい。
(c3:切替条件SR)
次に、Port Power RoleをTry.SRCからSRC onlyに切り替えるための切替条件SRについて説明する。切替条件SRとしては、Attached.SNKステート(ST13)に至るステート遷移パスを用いる。すなわち、対向デバイスのPort Power Roleを判断する処理は、自デバイスのPower RoleがSinkに決定されるまでのステート遷移パスに基づいて、対向デバイスのPort Power RoleがTry.SRCであるか否かを判断する処理を含む。
Attached.SNKステート(ST13)は、デバイスのPower RoleがSNKとなった状態に相当するが、ここで、対向デバイスがSRC onlyであれば図5の規定に沿った動作となるが、対向デバイスがSRC onlyではなくTry.SRCであれば、図5の規定に沿った動作ではなく、デバイスのPower RoleをSRCに切り替える必要がある。
すなわち、実施の形態1に従うデバイスのコントローラ110は、対向デバイスのPort Power RoleがSRC onlyではない場合に、Port Power RoleをSRC onlyに切り替える。
より具体的には、自デバイスがAttached.SNKステート(ST13)へ遷移した場合には、対向デバイスのPort Power Roleは、SRC onlyまたはTry.SRCである。そこで、自デバイスがAttached.SNKステート(ST13)へ遷移した後に、対向デバイスのPort Power RoleがSRC onlyおよびTry.SRCのいずれであるかを判断する。
図6に示すように、対向デバイスのPort Power RoleがSRC onlyである場合には、Try.SRCステート(ST14)、TryWait.SNKステート(ST15)およびAttached.SNKステート(ST13)というステート遷移パスをとる。一方、対向デバイスのPort Power RoleがTry.SRCである場合には、Attached.SRCステート(ST23)、TryWait.SNKステート(ST15)およびAttached.SNKステート(ST13)というステート遷移パスをとる。
このようなAttached.SNKステート(ST13)に至るステート遷移パスの相違に基づいて、自デバイスのPort Power RoleをSRC onlyに切り替えるべきか否かを示す切替条件SRを定めることができる。すなわち、Attached.SRCステート(ST23)、TryWait.SNKステート(ST15)およびAttached.SNKステート(ST13)というステート遷移パスが生じた場合に、Port Power RoleをTry.SRCからSRC onlyへ切り替える。
つまり、対向デバイスのPort Power RoleがTry.SRCであるか否かを判断する処理は、自デバイスのPower RoleがSinkに決定されるまでのステート遷移パスが、Attached.SRCステート、TryWait.SNKステートおよびAttached.SNKステートの順序であるか否かを判断する処理を含む。
(c4:シーケンス)
次に、実施の形態1に従うデバイスのシーケンスの一例について説明する。
図7は、実施の形態1に従うデバイスがPort Power RoleがTry.SRCである対向デバイスと接続された場合のシーケンス(Port Power Roleの切り替えなし)の一例を示す図である。図8は、実施の形態1に従うデバイスがPort Power RoleがTry.SRCである対向デバイスと接続された場合のシーケンス(Port Power Roleの切り替えあり)の一例を示す図である。
図9は、実施の形態1に従うデバイスがPort Power RoleがSRC onlyである対向デバイスと接続された場合のシーケンスの一例を示す図である。
図10は、図7~図9に示す各シーケンスに対応するステートマシンを示す図である。
図7~図9に示すシーケンスにおいて、自デバイスのPort Power RoleはTry.SRCである。また、図7~図9に示す「CC制御」は、第1通信ライン21(CC1)および第2通信ライン22(CC2)(図3および図4参照)に現れる抵抗値を示す。
まず、図7に示すシーケンスの例は、Port Power Roleを動的にSRC onlyに切り替えることなく、Power RoleがSRCに設定される例を示す。図7を参照して、初期状態において、自デバイスは、Unattached.SNKステート(ST11)であり、対向デバイスは、Unattached.SRCステート(ST21)であるとする。なお、自デバイスおよび対向デバイスとも、未接続状態においては、Unattached.SNKステート(ST11)とUnattached.SRCステート(ST21)との間を交互に遷移するトグル動作を行う。
自デバイスは、シーケンスに従って、AttachWait.SNKステート(ST12)へ遷移する(シーケンスSQ11)。一方、対向デバイスは、シーケンスに従って、AttachWait.SRCステート(ST22)へ遷移し(シーケンスSQ21)、さらに、対向デバイスは、Attached.SRCステート(ST23)へ遷移する(シーケンスSQ22)。Attached.SRCステート(ST23)への遷移に伴って、対向デバイスは、電力ライン(VBUS)23に所定電圧を印加する(VBUS ON)。
対向デバイスによるVBUS ONを検出することで、自デバイスは、Try.SRCステート(ST14)へ遷移し(シーケンスSQ12)、さらに、Attached.SRCステート(ST23)へ遷移する(シーケンスSQ13)。そして、自デバイスは、電力ライン(VBUS)23に所定電圧を印加する(VBUS ON)。
一方、対向デバイスは、VBUS ONに対してSNKを検出できないので、TryWait.SNKステート(ST15)へ遷移し(シーケンスSQ23)、ここで、自デバイスによるVBUS ONを検出することで、対向デバイスは、Attached.SNKステート(ST13)へ遷移する(シーケンスSQ24)。
以上のシーケンスによって、自デバイスと対向デバイスとの接続後においては、自デバイスのPower RoleはSRCとなり、対向デバイスのPower RoleはSNKとなる。
次に、図8に示すシーケンスの例は、Port Power Roleを動的にSRC onlyに切り替えることで、Power RoleがSRCに設定される例を示す。図8を参照して、初期状態において、自デバイスは、Unattached.SRCステート(ST21)であり、対向デバイスは、Unattached.SNKステート(ST11)であるとする。
自デバイスは、シーケンスに従って、AttachWait.SRCステート(ST22)へ遷移する(シーケンスSQ21)。さらに、自デバイスは、Attached.SRCステート(ST23)へ遷移する(シーケンスSQ22)。Attached.SRCステート(ST23)への遷移に伴って、自デバイスは、電力ライン(VBUS)23に所定電圧を印加する(VBUS ON)。自デバイスは、VBUS ONに対してSNKを検出できないので、TryWait.SNKステート(ST15)へ遷移し(シーケンスSQ23)、ここで、対向デバイスによるVBUS ONを検出することで、自デバイスは、Attached.SNKステート(ST13)へ遷移する(シーケンスSQ24)。
一方、対向デバイスは、シーケンスに従って、AttachWait.SNKステート(ST12)へ遷移する(シーケンスSQ11)。ここで、自デバイスによるVBUS ONを検出することで、対向デバイスは、Try.SRCステート(ST14)へ遷移し(シーケンスSQ12)、さらに、Attached.SRCステート(ST23)へ遷移する(シーケンスSQ13)。そして、対向デバイスは、電力ライン(VBUS)23に所定電圧を印加する(VBUS ON)。
自デバイスは、Attached.SNKステート(ST13)において、切替条件SRが成立したか否かを判断する。上述したように、切替条件SRは、Attached.SRCステート(ST23)、TryWait.SNKステート(ST15)およびAttached.SNKステート(ST13)というステート遷移パスが生じたか否かである。図8に示す例では、切替条件SRが成立したと判断されて、自デバイスは、Port Power RoleをTry.SRCからSRC onlyへ切り替える。そして、自デバイスは、Unattached.SRCステート(ST31)へ遷移する(シーケンスSQ25)。ここで、対向デバイスは、VBUS ONに対してSNKを検出できなくなるので、TryWait.SNKステート(ST15)へ遷移する(シーケンスSQ14)。
また、自デバイスは、シーケンスに従って、AttachWait.SRCステート(ST32)へ遷移し(シーケンスSQ26)、さらに、Attached.SRCステート(ST33)へ遷移する(シーケンスSQ27)。
Attached.SRCステート(ST33)への遷移に伴って、自デバイスは、電力ライン(VBUS)23に所定電圧を印加する(VBUS ON)。すると、対向デバイスは、自デバイスによるVBUS ONを検出することで、TryWait.SNKステート(ST15)からAttached.SNKステート(ST13)へ遷移する(シーケンスSQ15)。
以上のシーケンスによって、自デバイスと対向デバイスとの接続後においては、自デバイスのPower RoleはSRCとなり、対向デバイスのPower RoleはSNKとなる。
次に、図9に示すシーケンスの例は、実施の形態1に従うデバイスがPort Power RoleがSRC onlyのデバイスと接続された場合であっても、USB Type-C規格に沿ったシーケンスが実行される例を示す。
図9を参照して、初期状態において、自デバイスは、Unattached.SNKステート(ST11)であり、対向デバイスは、Unattached.SRCステート(ST31)(SRC onlyステートマシン)であるとする。
自デバイスは、シーケンスに従って、AttachWait.SNKステート(ST12)へ遷移する(シーケンスSQ11)。そして、対向デバイスによるVBUS ONを検出することで、自デバイスは、Try.SRCステート(ST14)へ遷移し(シーケンスSQ12)、さらに、自デバイスは、TryWait.SNKステート(ST15)へ遷移する(シーケンスSQ16)。ここで、対向デバイスによるVBUS ONを検出することで、自デバイスは、Attached.SNKステート(ST13)へ遷移する(シーケンスSQ15)。
自デバイスは、Attached.SNKステート(ST13)において、切替条件SRが成立したか否かを判断する。上述したように、切替条件SRは、Attached.SRCステート(ST23)、TryWait.SNKステート(ST15)およびAttached.SNKステート(ST13)というステート遷移パスが生じたか否かである。図9に示す例では、切替条件SRが成立していないと判断されて、Attached.SNKステート(ST13)が維持される。
一方、対向デバイスは、シーケンスに従って、AttachWait.SRCステート(ST32)へ遷移し(シーケンスSQ26)、さらに、Attached.SRCステート(ST33)へ遷移する(シーケンスSQ27)。
Attached.SRCステート(ST33)への遷移に伴って、対向デバイスは、電力ライン(VBUS)23に所定電圧を印加する(VBUS ON)。この時点において、対向デバイスは、VBUS ONに対してSNKを検出できないので、Unattached.SRCステート(ST31)へ戻る(シーケンスSQ29)。
そして、対向デバイスは、先に実行したシーケンスと同様に、AttachWait.SRCステート(ST32)へ遷移し(シーケンスSQ26)、さらに、Attached.SRCステート(ST33)へ遷移する(シーケンスSQ27)。Attached.SRCステート(ST33)への遷移に伴って、対向デバイスは、電力ライン(VBUS)23に所定電圧を印加する(VBUS ON)。この時点において、自デバイスのPower RoleはSNKに決定されているので、対向デバイスが接続先のSNKを検出することで、最終的に、自デバイスと対向デバイスとの接続後においては、自デバイスのPower RoleはSNKとなり、対向デバイスのPower RoleはSRCとなる。
(c5:小括)
実施の形態1に従うデバイスによれば、自デバイスおよび接続先の対向デバイスのPort Power RoleがいずれもDRPの一種であるTry.SRCであっても、自デバイスのPower RoleをSRCに確実に決定できる。これによって、Power Roleに関連付けて実行される各種処理についても確実な実行を保証できる。
[D.実施の形態2]
上述の実施の形態1においては、実施の形態1に従うデバイスとUSB Type-C規格に従うデバイスとを接続した場合の処理について説明した。実施の形態2においては、実施の形態1に従うデバイス同士を接続した場合の改良について説明する。
図11は、実施の形態1に従うデバイス同士が接続された場合のシーケンスの一例を示す図である。図11には、実施の形態1に従うデバイス同士を接続して所定のシーケンスが実行された後の状態を示す。
図11を参照して、例えば、対向デバイスは、Attached.SRCステート(ST23)であるとする。一方、自デバイスは、シーケンスに従って、Attached.SNKステート(ST13)遷移したとする。すると、自デバイスは、Attached.SNKステート(ST13)において、切替条件SRが成立したか否かを判断する。
図11に示す例では、切替条件SRが成立したと判断されて、自デバイスは、Port Power RoleをTry.SRCからSRC onlyへ切り替える。そして、自デバイスは、Unattached.SRCステート(ST31)へ遷移する。そして、自デバイスは、シーケンスに従って、AttachWait.SRCステート(ST32)へ遷移し、さらに、Attached.SRCステート(ST33)へ遷移する。
Attached.SRCステート(ST33)への遷移に伴って、自デバイスは、電力ライン(VBUS)23に所定電圧を印加する(VBUS ON)。
一方、対向デバイスは、VBUS ONに対してSNKを検出できないので、TryWait.SNKステート(ST15)へ遷移し、さらに、Attached.SNKステート(ST13)へ遷移する。すると、対向デバイスは、Attached.SNKステート(ST13)において、切替条件SRが成立したか否かを判断する。
図11に示す例では、切替条件SRが成立したと判断されて、対向デバイスは、Port Power RoleをTry.SRCからSRC onlyへ切り替える。そして、対向デバイスは、Unattached.SRCステート(ST31)へ遷移する。すると、自デバイスは、VBUS ONに対してSNKを検出できなくなるので、対向デバイスとの接続が切断されたと検出し(Sink Removed)、Port Power RoleをSRC onlyからTry.SRCへ切り替え、Unattached.SRCステート(ST21)へ遷移する。
このように、実施の形態1に従うデバイス同士を接続した場合には、両デバイスにおいて、切替条件SRが成立したと判断されるので、Port Power Roleの切り替えが両デバイスでそれぞれ生じることになり、特定のステートに落ち着くことがない。すなわち、実施の形態1に従うデバイス同士を接続した場合には、対向デバイスのPort Power RoleがTry.SRCであると互いのデバイスがそれぞれ判断し、自デバイスのPort Power RoleをSRC onlyに切り替える。すると、デバイス同士がいずれもSRCとなり、各デバイスは対向デバイスとの接続が切断されたと検出し(Sink Removed)、Port Power RoleをTry.SRCに戻して、再接続のシーケンスを実行するという処理のループに陥る可能性もある。
実施の形態2においては、上述したような課題が生じないデバイスについて説明する。
図12は、実施の形態2に従うデバイスのステートマシンの一例を示す図である。図12を参照して、実施の形態2に従うデバイスのステートマシンは、図10に示す実施の形態1に従うデバイスのステートマシンと比較して、新たに、CC.Openステート(ST35)が追加されている。
CC.Openステート(ST35)は、第1通信ライン(CC1)21および第2通信ライン(CC2)22をオープンにするステートを意味する。すなわち、デバイスがCC.Openステート(ST35)へ遷移すると、第1通信ライン(CC1)21および第2通信ライン(CC2)22に接続され得る抵抗値Rpおよび抵抗値Rdの両方を電気的に切断する。これによって、対向デバイスからは、対象のデバイスとの接続が切断されたように見える。
このように、自デバイスのPort Power RoleをSRC onlyに切り替える際に、CC.Openステート(ST35)を経由することで、対向デバイスは、自デバイスのPort Power RoleがSRC onlyであると判断する。すなわち、Port Power RoleをTry.SRCからSRC onlyへ切り替える処理は、対向デバイスと電気的に接続された通信ライン(第1通信ライン(CC1)21および第2通信ライン(CC2)22)をオープンする処理を含む。
これによって、互いのデバイスが対向デバイスのPort Power RoleをTry.SRCであるとそれぞれ判断することを回避できる。すなわち、実施の形態1に従うデバイス同士がPort Power Roleの切り替えを繰り返すことを防止できる。
図13は、実施の形態2に従うデバイスと実施の形態1に従うデバイスとが接続された場合のシーケンスの一例を示す図である。
図12および図13を参照して、例えば、実施の形態1に従うデバイスである対向デバイスは、Attached.SRCステート(ST23)であるとする。一方、実施の形態2に従うデバイスである自デバイスは、シーケンスに従って、Attached.SNKステート(ST13)遷移したとする。すると、自デバイスは、Attached.SNKステート(ST13)において、切替条件SRが成立したか否かを判断する。
図13に示す例では、切替条件SRが成立したと判断されて、自デバイスは、Port Power RoleをTry.SRCからSRC onlyへ切り替える。そして、自デバイスは、CC.Openステート(ST35)へ遷移する(シーケンスSQ25A)。その後、エラー復帰時間tErrorRecoveryの経過後に、自デバイスは、Unattached.SRCステート(ST31)へ遷移する(シーケンスSQ25B)。
そして、自デバイスは、シーケンスに従って、AttachWait.SRCステート(ST32)へ遷移し、さらに、Attached.SRCステート(ST33)へ遷移する。
Attached.SRCステート(ST33)への遷移に伴って、自デバイスは、電力ライン(VBUS)23に所定電圧を印加する(VBUS ON)。
一方、対向デバイスは、VBUS ONに対してSNKを検出できないので、TryWait.SNKステート(ST15)へ遷移する(シーケンスSQ23)。TryWait.SNKステート(ST15)において、対向デバイスは、SRCを検出できない(Source not Detected)ので、Unattached.SNKステート(ST11)へ遷移する(シーケンスSQ17)。
そして、対向デバイスは、シーケンスに従って、Unattached.SNKステート(ST11)からAttachWait.SNKステート(ST12)へ遷移する(シーケンスSQ11)。続いて、自デバイスによるVBUS ONを検出することで、対向デバイスは、Try.SRCステート(ST14)へ遷移し(シーケンスSQ12)、さらに、TryWait.SNKステート(ST15)およびAttached.SNKステート(ST13)へ順次遷移する(シーケンスSQ16およびSQ15)。
対向デバイスは、Attached.SNKステート(ST13)において、切替条件SRが成立したか否かを判断する。上述したように、切替条件SRは、Attached.SRCステート(ST23)、TryWait.SNKステート(ST15)およびAttached.SNKステート(ST13)というステート遷移パスが生じたか否かである。図13に示す例では、切替条件SRが成立していないと判断されて、Attached.SNKステート(ST13)が維持される。
最終的に、自デバイスと対向デバイスとの接続後においては、自デバイスのPower RoleはSRCとなり、対向デバイスのPower RoleはSNKとなる。
上述した処理および構成を除いた点は、いずれも上述の実施の形態1と同様であるので、詳細な説明は繰り返さない。
実施の形態2によれば、実施の形態1に従うデバイス同士が接続された場合であっても、Power Roleを決定できず処理が繰り返されるといった事態を回避できる。
[E.実施の形態3]
上述の実施の形態1および2においては、切替条件SRとして、Attached.SNKステート(ST13)に至るステート遷移パスが予め定められたステート遷移パスと一致するか否かという条件を用いた。
ところで、上述の非特許文献2などに規定されるUSB Type-C規格に適合するか否かのテスト(Type-C Compliance Test)においては、テスト対象機器(自デバイスのポート)がUSB Type-C規格で定義されたステートに正しく遷移するか否かが判断される。
実施の形態1および2に従うデバイスは、Attached.SNKステート(ST13)において切替条件SRが成立したと判断されると、Port Power Roleを動的にSRC onlyに切り替えるため、Attached.SNKステート(ST13)に留まらず、別のステートへ遷移することになる。その結果、「Test Fail」と判定される可能性がある。
上述の実施の形態1および2に従うデバイスがType-C Compliance Testにおいて「Test Pass」との判定結果を得るために、切替条件SRに「予め定められた時間だけ待機する」という条件を追加してもよい。
図14は、実施の形態3に従うデバイスにおいて採用される切替条件SRを説明するための図である。図14を参照して、切替条件SRとしては、まず、予め定められたステート遷移パスでAttached.SNKステート(ST13)へ到達したか否かが判断される(ステップS2)。ここで、予め定められたステート遷移パスは、Attached.SRCステート(ST23)、TryWait.SNKステート(ST15)およびAttached.SNKステート(ST13)の順でのステート遷移である。
予め定められたステート遷移パスでAttached.SNKステート(ST13)へ到達していなければ(ステップS2においてNO)、切替条件SRは不成立と決定される。
これに対して、予め定められたステート遷移パスでAttached.SNKステート(ST13)へ到達していれば(ステップS2においてYES)、予め定められた時間だけ待機(ステップS4)した後に、切替条件SRは成立と決定される。
このように、対向デバイスのPort Power RoleがTry.SRCであるか否かを判断する処理は、対向デバイスのPort Power RoleがTry.SRCであると判断された後、予め定められた時間だけ待機する処理を含む。
実施の形態3に従うデバイスによれば、図14に示すような切替条件SRを採用することで、実施の形態1および2に示すような機能を実装したデバイスであっても、Type-C Compliance Testにおいて「Test Pass」との判定結果を得ることができる。
なお、非特許文献3などに規定されるUSB Power Delivery(以下、単に「PD」とも称す。)を対象のデバイスがサポートするか否かによらず、上述の実施の形態3に従う切替条件SRを適用できる。
上述した処理および構成を除いた点は、いずれも上述の実施の形態1と同様であるので、詳細な説明は繰り返さない。
[F.実施の形態4]
非特許文献3などに規定されるUSB Power Delivery(PD)においては、デバイス間のPower Roleを切り替えるために、Power Role Swap命令が用意されている。接続される両デバイスがいずれもPDをサポートしている場合には、通常動作として、Power Role Swap命令を用いたPower Roleの決定あるいは切り替え処理が実行される。
すなわち、PDをサポートしているデバイス間では、上述の実施の形態1および2に従うUSB Type-C規格のレベルで実行されるPower Roleの決定処理ではなく、PDのレベルで実行されるPower Role Swap命令を用いたPower Roleの決定処理が優先されることが好ましい。
このようなPDをサポートするデバイス間でのPower Role Swap命令の遣り取りを阻害しないようにするために、Attached.SNKステート(ST13)において判断される切替条件SRに「対向デバイスがPDをサポートしていない」という条件を追加してもよい。
図15は、実施の形態4に従うデバイスにおいて採用される切替条件SRを説明するための図である。図15を参照して、切替条件SRとしては、まず、予め定められたステート遷移パスでAttached.SNKステート(ST13)へ到達したか否かが判断される(ステップS2)。ここで、予め定められたステート遷移パスは、Attached.SRCステート(ST23)、TryWait.SNKステート(ST15)およびAttached.SNKステート(ST13)の順でのステート遷移である。
予め定められたステート遷移パスでAttached.SNKステート(ST13)へ到達していなければ(ステップS2においてNO)、切替条件SRは不成立と決定される。
これに対して、予め定められたステート遷移パスでAttached.SNKステート(ST13)へ到達していれば(ステップS2においてYES)、自デバイスがPDをサポートしているか否かが判断される(ステップS6)。自デバイスがPDをサポートしていなければ(ステップS6においてNO)、切替条件SRは成立と決定される。すなわち、自デバイスはPower Role Swap命令の遣り取りができないので、実施の形態1および2に示すようなPort Power Roleの動的な切り替えを実行しても問題は生じないと判断できる。
自デバイスがPDをサポートしていれば(ステップS6においてYES)、自デバイスは、対向デバイスに対してPDメッセージを送信する(ステップS8)。送信されるPDメッセージは、PD規格において規定されるPolicy Engineのステートの問い合わせメッセージを用いることができる。そして、自デバイスは、送信したPDメッセージに対する応答を対向デバイスから受信したか否かを判断する(ステップS10)。
PDメッセージに対する応答を受信しなければ(ステップS10においてNO)、切替条件SRは成立と決定される。すなわち、対向デバイスがPDをサポートしていないと判断できるので、実施の形態1および2に示すようなPort Power Roleの動的な切り替えを実行しても問題は生じないと判断できる。
これに対して、PDメッセージに対する応答を受信すれば(ステップS10においてYES)、切替条件SRは不成立と決定される。すなわち、対向デバイスもPDをサポートしていると判断できるので、実施の形態1および2に示すようなPort Power Roleの動的な切り替えは実行されない。
このように、対向デバイスのPort Power RoleがTry.SRCであるか否かを判断する処理は、対向デバイスがUSB Power Deliveryをサポートしているか否かを判断する処理を含む。そして、実施の形態4に従うデバイスのコントローラ110は、対向デバイスがUSB Power Deliveryをサポートしていない場合に、自デバイスのPort Power RoleをSRC onlyに切り替える処理を実行する。
実施の形態4に従うデバイスによれば、図15に示すような切替条件SRを採用することで、実施の形態1および2に示すような機能を実装したデバイスがPDをサポートする場合であっても、Type-C Compliance Testにおいて「Test Pass」との判定結果を得ることができる。
上述した処理および構成を除いた点は、いずれも上述の実施の形態1と同様であるので、詳細な説明は繰り返さない。
[G.実施の形態4の変形例]
上述の実施の形態4においては、PDにおいて規定されているPower Role Swap命令を用いるPort Power Roleの動的な切り替えについて説明した。しかしながら、対向デバイスのPower Role Swapポリシーに依存して、Power Role Swap命令を用いることができない場合がある。
すなわち、Power Roleの動的な切り替えを指示する、Power Role Swap Requestに対して、対向デバイスがAcceptを応答する場合には、Power Roleを切り替えることができるので、動作に問題は生じない。これに対して、Power Role Swap Requestに対して、対向デバイスがRejectを応答する場合には、自デバイスは、Power Role Swap命令によるPower Roleの切り替えができない。
なお、PDにおいては、Power Role Swap Request(PR_Swap Message)を受信したデバイスは、当該デバイスのポリシーに従って、AcceptまたはRejectを応答する。例えば、現在のPower Roleが所望するRoleではない場合にPR_Swap Messageを受信すると、当該デバイスはAcceptを応答する。これに対して、現在のPower Roleが所望するRoleである場合にPR_Swap Messageを受信すると、当該デバイスはRejectを応答する。
このような対向デバイスのPower Role Swapポリシーに依存せず、予定されたPower Roleを一意に決定できるように、対向デバイスからの応答に基づいて、切替条件SRの成立または不成立を判断するようにしてもよい。より具体的には、Power Role Swap Requestに対して、対向デバイスからRejectが応答された場合には、切替条件SRが成立したと判断し、実施の形態1および2に従って、USB Type-C規格レベルで、Port Power RoleをSRC onlyに切り替えるようにしてもよい。
図16は、実施の形態4の変形例に従うデバイスにおいて採用される切替条件SRを説明するための図である。図16に示す切替条件SRは、図15に示す切替条件SRに対してさらに処理を追加したものである。そのため、図15に示す切替条件SRと同一のステップについては詳細な説明は繰り返さない。
図16を参照して、PDメッセージに対する応答を受信すれば(ステップS10においてYES)、自デバイスは、対向デバイスに対して、Power RoleをSNKに切り替えることを指示するPower Role Swap Requestを送信する(ステップS12)。
そして、自デバイスは、送信したPower Role Swap Requestに対して、対向デバイスがRejectを応答したか否かを判断する(ステップS14)。対向デバイスがAcceptを応答すれば(ステップS14においてNO)、切替条件SRは不成立と決定される。
これに対して、対向デバイスがRejectを応答すれば(ステップS14においてYES)、切替条件SRは成立と決定される。すなわち、Power Role Swap命令ではなく、USB Type-C規格レベルでのPort Power Roleの切り替え処理が実行されることになる。
このように、対向デバイスのPort Power RoleがTry.SRCであるか否かを判断する処理は、対向デバイスに対してPower Role Swap Requestを送信する処理と、対向デバイスからRejectを受信するか否かを判断する処理とを含む。そして、実施の形態4の変形例に従うデバイスのコントローラ110は、対向デバイスからRejectを受信すると、自デバイスのPort Power RoleをSRC onlyに切り替える処理を実行する。
上述したように、接続される両デバイスがいずれもPDをサポートしている場合には、Power Role Swap命令を用いてPower Roleを切り替えることができる。しかしながら、対向デバイスのポリシーに依存して、Power Role Swap Requestに対して、対向デバイスがRejectを応答することがあり、このような場合には所望のPower Roleを設定できないことになる。実施の形態4の変形例においては、このような場合でも、USB Type-C規格レベルで、Port Power Roleを切り替えることで、強制的に所望のPower Roleに設定できる。
上述した処理および構成を除いた点は、いずれも上述の実施の形態1および4と同様であるので、詳細な説明は繰り返さない。
[H.実施の形態5]
次に、実施の形態5として、Port Power RoleがTry.SNKであるデバイスのPower Roleを一意にSNKと決めることができるシーケンスを例示する。
より具体的には、実施の形態5に従うデバイスは、初期状態のPort Power RoleとしてTry.SNKが設定されており、接続後のPower RoleをSNKに固定しなければならない状況である場合(所定の切替条件SNが成立した場合)になると、Port Power Roleを動的にSNK onlyに切り替える。このようなPort Power Roleの動的な切り替えによって、Port Power RoleがTry.SNKであるデバイス同士を接続した場合であっても、予め定められたデバイスをSNKに固定できる。
(h1:Power Roleの決定例)
図17は、実施の形態5に従うデバイスにおけるPower Roleの決定例を示す図である。図17を参照して、初期状態において、自デバイスのPort Power RoleはTry.SNKであるとする。対向デバイスのPort Power RoleがTry.SNKである場合には、自デバイスのPort Power RoleをTry.SNKからSNK onlyに切り替える。これによって、自デバイスのPower RoleはSNKに一意に定まる。
上述したような、Port Power RoleをTry.SNKからSNK onlyに切り替えるための切替条件SNとして、実施の形態5においては、対向デバイスと接続する際のステート遷移パスを利用する。より具体的には、自デバイスがPower RoleをSRCとして接続した場合に、対向デバイスのPort Power RoleがTry.SNKであると判断されると、自デバイスのPort Power RoleをSNK onlyに切り替えて再接続する。なお、対向デバイスとの接続が切断されたことを検出すると、Port Power Roleを再度Try.SNKに戻す。
このように、実施の形態5に従うデバイスは、接続先のデバイスである対向デバイスとのシーケンスに従って、自デバイスのPower Roleが給電側を意味するSRCに決定されると、対向デバイスのPort Power RoleがTry.SNKであるか否かを判断する処理を実行する。そして、実施の形態5に従うデバイスは、対向デバイスのPort Power RoleがTry.SNKであれば、自デバイスのPort Power RoleをSNK onlyに切り替えて、対向デバイスとのシーケンスを継続する処理を実行する。
このようなPort Power Roleを動的に切り替えることで、対向デバイスのPort Power RoleがTry.SNKであったとしても、接続後の自デバイスのPower RoleをSNKに固定できる。
(h2:ステートマシン)
図18は、実施の形態5に従うデバイスのステートマシンの一例を示す図である。図18を参照して、実施の形態5に従うデバイスは、Try.SNKおよびSNK onlyの両方のステートマシンを有することになる。
初期状態において、Port Power RoleはTry.SRCであるので、Try.SRCのステートマシンで動作を開始する。ステートマシンの遷移によって、切替条件SNが成立すると、SNK onlyのステートマシンでの動作に遷移する。
そして、SNK onlyでの動作において、対向デバイスとの接続が切断されたことを検出すると(VBUS Removed)、Unattached.SNKステート(ST51)へ遷移するのではなく、Try.SNKのステートマシンに戻る。すなわち、デバイスは、Port Power RoleをTry.SNKに戻して、初期状態に復帰する。
(h3:切替条件SN)
次に、Port Power RoleをTry.SNKからSNK onlyに切り替えるための切替条件SNについて説明する。切替条件SNとしては、Attached.SRCステート(ST48)に至るステート遷移パスを用いる。
Attached.SRCステート(ST48)は、デバイスのPower RoleがSRCとなった状態に相当するが、ここで、対向デバイスがSNK onlyであれば図17の規定に沿った動作となるが、対向デバイスがSNK onlyではなくTry.SNKであれば、図17の規定に沿った動作ではなく、デバイスのPower RoleをSNKに切り替える必要がある。
すなわち、自デバイスがAttached.SRCステート(ST48)へ遷移した場合には、対向デバイスのPort Power Roleは、SNK onlyまたはTry.SNKである。そこで、自デバイスがAttached.SRCステート(ST48)へ遷移した後に、対向デバイスのPort Power RoleがSNK onlyおよびTry.SNKのいずれであるかを判断する。
図17に示すステートマシンにおいては、自デバイスがAttached.SRCステート(ST48)へのステート遷移パスは、対向デバイスのPort Power RoleがSNK onlyおよびTry.SNKのいずれであっても同一である。より具体的には、Attached.SRCステート(ST48)へのステート遷移パスは、いずれも、AttachWait.SRCステート(ST47)、Try.SNKステート(ST44)、TryWaitSRCステート(ST45)およびAttached.SRCステート(ST48)となる。
そのため、USB Type-C規格に従うTry.SNKのステートマシンでは、対向デバイスをSNK onlyおよびTry.SNKのいずれであるかを判断することはできない。そこで、実施の形態5に従うデバイスは、USB Type-C規格に従うTry.SNKのステートマシンを少し変更したTry.SNKのステートマシンを採用する。
図19は、実施の形態5に従うデバイスのステートマシンの要部を示す図である。図19を参照して、実施の形態5において採用されるTry.SNKのステートマシンは、USB Type-C規格に従うTry.SNKのステートマシンにおけるTry.SNKステート(ST44)に代えて、2つのステート(Try.SNK.1ステート(ST44A)およびTry.SNK.2ステート(ST44B))を有している。
Try.SNK.1ステート(ST44A)は、対向デバイスのPower RoleがSRCになることを待つ(Source検出待ち)ステートである。一方、Try.SNK.2ステート(ST44B)は、対向デバイスによるVBUS ONを待つ(VBUS検出待ち)ステートである。
このように、USB Type-C規格に従うTry.SNKのステートマシンにおけるTry.SNKステート(ST44)を2つのステートに分解することで、対向デバイスのPort Power RoleがSNK onlyおよびTry.SNKのいずれかに応じて、ステート遷移パスが異なることになる。切替条件SNとしては、このようなステート遷移パスの相違に基づいて、対向デバイスのPort Power Roleを判断する。
図19を参照して、より具体的には、対向デバイスのPort Power RoleがSNK onlyである場合には、AttachWait.SRCステート(ST47)からTry.SNK.1ステート(ST44A)へ遷移(シーケンスSQ41)した後、TryWaitSRCステート(ST45)へ直接遷移し(シーケンスSQ42)、最終的にAttached.SRCステート(ST48)へ到達する(シーケンスSQ43)。
これに対して、対向デバイスのPort Power RoleがTry.SNKである場合には、AttachWait.SRCステート(ST47)からTry.SNK.1ステート(ST44A)へ遷移(シーケンスSQ41)した後、Sourceを検出できるので、Try.SNK.2ステート(ST44B)へ遷移する(シーケンスSQ44)。そして、TryWaitSRCステート(ST45)へ直接遷移し(シーケンスSQ45)、最終的にAttached.SRCステート(ST48)へ到達する(シーケンスSQ46)。
このように、対向デバイスのPort Power RoleがSNK onlyである場合には、AttachWait.SRCステート(ST47)、Try.SNK.1ステート(ST44A)、TryWaitSRCステート(ST45)、およびAttached.SRCステート(ST48)というステート遷移パスをとる。一方、対向デバイスのPort Power RoleがTry.SNKである場合には、AttachWait.SRCステート(ST47)、Try.SNK.1ステート(ST44A)、Try.SNK.2ステート(ST44B)、TryWaitSRCステート(ST45)、およびAttached.SRCステート(ST48)というステート遷移パスをとる。
このようなAttached.SRCステート(ST48)に至るステート遷移パスの相違に基づいて、自デバイスのPort Power RoleをSNK onlyに切り替えるべきか否かを示す切替条件SNを定めることができる。
図20は、実施の形態5に従うデバイスにおいて採用される切替条件SNを説明するための図である。図20を参照して、切替条件SNとしては、まず、予め定められたステート遷移パスでAttached.SRCステート(ST48)へ到達したか否かが判断される。予め定められたステート遷移パスは、Try.SNK.1ステート(ST44A)、Try.SNK.2ステート(ST44B)、TryWaitSRCステート(ST45)、およびAttached.SRCステート(ST48)というステート遷移パスである。
予め定められたステート遷移パスでAttached.SRCステート(ST48)へ到達していれば、切替条件SNは成立と決定される。切替条件SNが成立と決定されると、自デバイスのPort Power RoleはSNK onlyへ切り替えられる。
(h4:小括)
実施の形態5に従うデバイスによれば、自デバイスおよび接続先の対向デバイスのPort Power RoleがいずれもDRPの一種であるTry.SRCであっても、自デバイスのPower RoleをSRCに確実に決定できる。これによって、Power Roleに関連付けて実行される各種処理についても確実な実行を保証できる。
上述した処理および構成を除いた点は、いずれも上述の実施の形態1と同様であるので、詳細な説明は繰り返さない。
[I.実施の形態6]
上述の実施の形態2において説明したような構成を実施の形態5に対しても適用可能である。すなわち、実施の形態5に従うデバイス同士を接続した場合に、最終的なPower Roleが決定しない可能性があり、この場合には、Port Power RoleをSNK onlyへ切り替える際に、CC.Openステートを経由するようにしてもよい。これにより、対向デバイスは、自デバイスのPort Power RoleがSNK onlyであると判断する。これによって、互いのデバイスが対向デバイスのPort Power RoleをTry.SNKであるとそれぞれ判断することを回避できる。すなわち、実施の形態5に従うデバイス同士がPort Power Roleの切り替えを繰り返すことを防止できる。
上述した処理および構成を除いた点は、いずれも上述の実施の形態1および5と同様であるので、詳細な説明は繰り返さない。
[J.実施の形態7]
上述の実施の形態3において説明したような構成を実施の形態5に対しても適用可能である。すなわち、上述の非特許文献2などに規定されるUSB Type-C規格に適合するか否かのテスト(Type-C Compliance Test)において「Test Pass」との判定結果を確実に得ることができるように、切替条件SNに「予め定められた時間だけ待機する」という条件を追加してもよい。
より具体的には、図20に示すように、予め定められたステート遷移パスでAttached.SRCステート(ST48)へ到達していれば、予め定められた時間だけ待機した後に、切替条件SNは成立と決定されるようにしてもよい。
上述した処理および構成を除いた点は、いずれも上述の実施の形態1および5と同様であるので、詳細な説明は繰り返さない。
[K.実施の形態8]
上述の実施の形態4において説明したような構成を実施の形態5に対しても適用可能である。すなわち、上述の非特許文献3などに規定されるUSB Power Delivery(PD)において用意されているPower Role Swap命令の決定処理が優先するために、Attached.SRCステート(ST48)において判断される切替条件SNに「対向デバイスがPDをサポートしていない」という条件を追加してもよい。切替条件SNの具体的な処理手順は、図15に示す切替条件SRと同様であるので、詳細な説明は繰り返さない。
実施の形態8に従う切替条件SRを採用することで、実施の形態5および6に示すような機能を実装したデバイスがPDをサポートする場合であっても、Type-C Compliance Testにおいて「Test Pass」との判定結果を得ることができる。
上述した処理および構成を除いた点は、いずれも上述の実施の形態1および5と同様であるので、詳細な説明は繰り返さない。
[L.実施の形態8の変形例]
上述した実施の形態8に従うデバイスにおいて、対向デバイスのPower Role Swapポリシーに依存せず、予定されたPower Roleを一意に決定できるように、対向デバイスからの応答に基づいて、切替条件SNの成立または不成立を判断するようにしてもよい。切替条件SNの具体的な処理手順は、図16に示す切替条件SNと同様であるので、詳細な説明は繰り返さない。
実施の形態8の変形例に従う切替条件SRを採用することで、実施の形態5および6に示すような機能を実装したデバイスがPDをサポートする場合において、対向デバイスのPower Role Swapポリシーに依存せず、予定されたPower Roleを一意に決定できる。
上述した処理および構成を除いた点は、いずれも上述の実施の形態1および5と同様であるので、詳細な説明は繰り返さない。
[M.実施の形態9]
上述の実施の形態1~4および変形例については、互いに適宜組合せることもできるし、任意の変形を加えることもできる。同様に、上述の実施の形態5~8および変形例については、互いに適宜組合せることもできるし、任意の変形を加えることもできる。
[N.実施の形態10]
上述の実施の形態1~8および変形例においては、プロセッサ112がファームウェア114を実行することで、上述したようなコントローラ110に係る処理の実行および機能の提供を実現する。
プロセッサ112が実行するファームウェア114は、制御プログラムであり、外部からインストールまたは更新が可能になっている。ファームウェア114は、例えば、非一時的(non-transitory)な記録媒体に格納された状態で流通し、コントローラ110内の記憶領域にインストールまたは更新(アップデート)されてもよい。非一時的な記録媒体としては、光学ディスクなどの光学記録媒体、フラッシュメモリなどの半導体記録媒体、ハードディスクまたはストレージテープなどの磁気記録媒体、MO(Magneto-Optical disk)などの光磁気記録媒体を用いてもよい。すなわち、本実施の形態は、上述したような処理および機能を実現するためのコンピュータ読取可能な制御プログラム、および、当該制御プログラムを格納した記録媒体も含み得る。
別の形態として、インターネットまたはイントラネットを介してサーバ装置からファームウェア114をダウンロードするようにしてもよい。
当業者であれば、本実施の形態が実装される時代に応じた技術を適宜用いて、本実施の形態に従うコントローラおよびコントローラを含むデバイスを設計するであろう。
[O.実施の形態11]
上述の実施の形態1~8および変形例においては、プロセッサ112がファームウェア114を実行することで、上述したようなコントローラ110に係る処理の実行および機能の提供を実現する。但し、このようなソフトウェア実装ではなく、一部または全部をハードウェア実装としてもよい。ハードウェア実装とする場合には、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)といったハードワイヤードなデバイスを採用してもよい。
当業者であれば、本実施の形態が実装される時代に応じた技術を適宜用いて、本実施の形態に従うコントローラおよびコントローラを含むデバイスを設計するであろう。
[P.まとめ]
本実施の形態によれば、USB Type-C規格に従うTry.SRCであるデバイスまたはUSB Type-C規格に従うTry.SNKであるデバイス同士を接続した場合に、SRCまたはSNKのいずれか一方にPower Roleが決定しないという新たな課題を解決できる。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は上記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
2 USBケーブル、21 第1通信ライン、22 第2通信ライン、100 Power Bank、102 コネクタ、104 電源管理部、106 バッテリ、110 コントローラ、112 プロセッサ、114 ファームウェア、116 CC1/CC2制御・接続検出モジュール、200 スマートフォン、300 ラップトップパソコン、1161 第1接続検出ブロック、1162 第2接続検出ブロック、1163,1164 スイッチ、1165,1167 プルアップ抵抗、1166,1168 プルダウン抵抗、GND グランド電位、Rd,Rp 抵抗値、Vs 電源電位、tErrorRecovery エラー復帰時間。

Claims (11)

  1. USB(Universal Serial Bus) Type-C規格に従う、給電側および受電側のいずれにもなり得るDRP(Dual Role Power)に対応したデバイスを実現するためのコントローラであって、
    接続先のデバイスである対向デバイスとのシーケンスに従って、自デバイスのPower Roleが受電側を意味するSinkに決定されると、自デバイスのPower RoleがSinkに決定されるまでの自デバイスのステート遷移パスに基づいて、前記対向デバイスのPort Power RoleがTry.SRCであるか否かを判断する第1の処理と、
    前記対向デバイスのPort Power RoleがTry.SRCであれば、自デバイスのPort Power RoleをSRC onlyに切り替えて、前記対向デバイスとのシーケンスを継続する第2の処理とを実行可能に構成される、コントローラ。
  2. 前記第2の処理は、前記対向デバイスと電気的に接続された通信ラインをオープンする処理を含み、
    前記通信ラインをオープンする処理は、前記自デバイスのPort Power Roleが初期状態のTry.SrcをSRC onlyに切り替えると判断されると、Attached.SNKステートからUnattached.SRCステートへ遷移する間に行われる、請求項1に記載のコントローラ。
  3. 前記自デバイスのステート遷移パスに基づいて判断する処理は、自デバイスのPower RoleがSinkに決定されるまでのステート遷移パスが、Attached.SRCステート、TryWait.SNKステートおよびAttached.SNKステートの順序であるか否かを判断する処理を含む、請求項1に記載のコントローラ。
  4. 前記第1の処理は、前記対向デバイスのPort Power RoleがTry.SRCであると判断された後、予め定められた時間だけ待機する処理を含む、請求項1に記載のコントローラ。
  5. 前記第1の処理は、前記対向デバイスがUSB Power Deliveryをサポートしているか否かを判断する処理を含み、
    前記コントローラは、前記対向デバイスがUSB Power Deliveryをサポートしていない場合に、前記第2の処理を実行する、請求項1に記載のコントローラ。
  6. 前記第1の処理は、
    前記対向デバイスに対してPower Role Swap Requestを送信する処理と、
    前記対向デバイスからRejectを受信するか否かを判断する処理とを含み、
    前記コントローラは、前記対向デバイスからRejectを受信すると、前記第2の処理を実行する、請求項5に記載のコントローラ。
  7. USB(Universal Serial Bus) Type-C規格に従う、給電側および受電側のいずれにもなり得るDRP(Dual Role Power)に対応したデバイスを実現するためのコントローラであって、
    接続先のデバイスである対向デバイスとのシーケンスに従って、自デバイスのPower Roleが給電側を意味するSourceに決定されると、自デバイスのPower RoleがSourceに決定されるまでの自デバイスのステート遷移パスに基づいて、前記対向デバイスのPort Power RoleがTry.SNKであるか否かを判断する第1の処理と、
    前記対向デバイスのPort Power RoleがTry.SNKであれば、自デバイスのPort Power RoleをSNK onlyに切り替えて、前記対向デバイスとのシーケンスを継続する第2の処理とを実行可能に構成される、コントローラ。
  8. USB(Universal Serial Bus) Type-C規格に従う、給電側および受電側のいずれにもなり得るDRP(Dual Role Power)に対応したデバイスで実行される制御方法であって、
    接続先のデバイスである対向デバイスとのシーケンスに従って、自デバイスのPower Roleが受電側を意味するSinkに決定されると、自デバイスのPower RoleがSinkに決定されるまでの自デバイスのステート遷移パスに基づいて、前記対向デバイスのPort Power RoleがTry.SRCであるか否かを判断するステップと、
    前記対向デバイスのPort Power RoleがTry.SRCであれば、自デバイスのPort Power RoleをSRC onlyに切り替えて、前記対向デバイスとのシーケンスを継続するステップとを備える、制御方法。
  9. USB(Universal Serial Bus) Type-C規格に従う、給電側および受電側のいずれにもなり得るDRP(Dual Role Power)に対応したデバイスで実行される制御方法であって、
    接続先のデバイスである対向デバイスとのシーケンスに従って、自デバイスのPower Roleが給電側を意味するSourceに決定されると、自デバイスのPower RoleがSourceに決定されるまでの自デバイスのステート遷移パスに基づいて、前記対向デバイスのPort Power RoleがTry.SNKであるか否かを判断するステップと、
    前記対向デバイスのPort Power RoleがTry.SNKであれば、自デバイスのPort Power RoleをSNK onlyに切り替えて、前記対向デバイスとのシーケンスを継続するステップとを備える、制御方法。
  10. USB(Universal Serial Bus) Type-C規格に従う、給電側および受電側のいずれにもなり得るDRP(Dual Role Power)に対応したデバイスを実現するためのコントローラのプロセッサで実行される制御プログラムであって、前記制御プログラムは、前記プロセッサに、
    接続先のデバイスである対向デバイスとのシーケンスに従って、自デバイスのPower Roleが受電側を意味するSinkに決定されると、自デバイスのPower RoleがSinkに決定されるまでの自デバイスのステート遷移パスに基づいて、前記対向デバイスのPort Power RoleがTry.SRCであるか否かを判断するステップと、
    前記対向デバイスのPort Power RoleがTry.SRCであれば、自デバイスのPort Power RoleをSRC onlyに切り替えて、前記対向デバイスとのシーケンスを継続するステップとを実行させる、制御プログラム。
  11. USB(Universal Serial Bus) Type-C規格に従う、給電側および受電側のいずれにもなり得るDRP(Dual Role Power)に対応したデバイスを実現するためのコントローラのプロセッサで実行される制御プログラムであって、前記制御プログラムは、前記プロセッサに、
    接続先のデバイスである対向デバイスとのシーケンスに従って、自デバイスのPower Roleが給電側を意味するSourceに決定されると、自デバイスのPower RoleがSourceに決定されるまでの自デバイスのステート遷移パスに基づいて、前記対向デバイスのPort Power RoleがTry.SNKであるか否かを判断するステップと、
    前記対向デバイスのPort Power RoleがTry.SNKであれば、自デバイスのPort Power RoleをSNK onlyに切り替えて、前記対向デバイスとのシーケンスを継続するステップとを実行させる、制御プログラム。
JP2018223029A 2018-11-29 2018-11-29 コントローラ、制御方法、制御プログラム Active JP7348721B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018223029A JP7348721B2 (ja) 2018-11-29 2018-11-29 コントローラ、制御方法、制御プログラム
US16/596,033 US11281271B2 (en) 2018-11-29 2019-10-08 Controller, control method, and control program
CN201911157764.0A CN111240453B (zh) 2018-11-29 2019-11-22 控制器、控制方法和控制程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018223029A JP7348721B2 (ja) 2018-11-29 2018-11-29 コントローラ、制御方法、制御プログラム

Publications (2)

Publication Number Publication Date
JP2020087149A JP2020087149A (ja) 2020-06-04
JP7348721B2 true JP7348721B2 (ja) 2023-09-21

Family

ID=70849684

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018223029A Active JP7348721B2 (ja) 2018-11-29 2018-11-29 コントローラ、制御方法、制御プログラム

Country Status (3)

Country Link
US (1) US11281271B2 (ja)
JP (1) JP7348721B2 (ja)
CN (1) CN111240453B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019213325A (ja) * 2018-06-04 2019-12-12 ルネサスエレクトロニクス株式会社 コントローラ、制御方法、制御プログラム
JP7082926B2 (ja) * 2018-08-27 2022-06-09 ルネサスエレクトロニクス株式会社 コントローラ、制御方法、制御プログラム
US20220276687A1 (en) * 2019-10-15 2022-09-01 Hewlett-Packard Development Company, L.P. Port role assignments
JP2022030808A (ja) * 2020-08-07 2022-02-18 キヤノン株式会社 受電装置、その制御方法、及びプログラム
CN114583772B (zh) * 2020-12-02 2025-10-24 宏碁股份有限公司 支持Type-C连接的电子装置及其方法
JP2023154165A (ja) * 2022-04-06 2023-10-19 スター精密株式会社 Usb接続検知装置およびusb接続検知方法
JP7174315B1 (ja) 2022-04-22 2022-11-17 富士通クライアントコンピューティング株式会社 情報処理装置及び情報処理装置の制御方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106648754A (zh) 2016-11-24 2017-05-10 硅谷数模半导体(北京)有限公司 控制器运行方法及装置
WO2017152424A1 (zh) 2016-03-11 2017-09-14 华为技术有限公司 具有通用串行总线USB Type-C接口的设备之间建立连接的方法和终端设备
JP2018007451A (ja) 2016-07-04 2018-01-11 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
JP2018173886A (ja) 2017-03-31 2018-11-08 キヤノン株式会社 電子機器及びその制御方法
JP2018180793A (ja) 2017-04-07 2018-11-15 キヤノン株式会社 電子機器及びその制御方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10122576B2 (en) * 2015-03-17 2018-11-06 Microsoft Technology Licensing, Llc Intelligent role selection for dual-role devices
EP3361582B1 (en) * 2015-10-30 2021-03-10 Huawei Technologies Co., Ltd. Usb type-c plug and cable
KR102628011B1 (ko) * 2016-01-29 2024-01-22 삼성전자주식회사 Usb 전력 전송 장치와 이를 포함하는 시스템
KR102675073B1 (ko) * 2016-07-12 2024-06-14 삼성전자주식회사 Usb 인터페이스를 지원하는 전자 장치 및 usb 인터페이스 제어 방법
CN106294244B (zh) * 2016-08-11 2023-08-11 深圳慧能泰半导体科技有限公司 一种USB Type-C接口电路
US20180074564A1 (en) * 2016-09-13 2018-03-15 Qualcomm Incorporated Reverse high-voltage power transfer
US10078608B2 (en) * 2016-09-16 2018-09-18 Intel Corporation USB-C multiple connector support for host and device mode configurations
US10114782B2 (en) * 2016-09-27 2018-10-30 Nxp B.V. USB type C dual-role-port unattached duty cycle randomization
US11068041B2 (en) * 2017-06-13 2021-07-20 Intel Corporation Method to enhance device policy management (DPM) power sharing for USB Type-C (USB-C) only devices
US10990150B2 (en) * 2018-07-24 2021-04-27 Texas Instruments Incorporated VCONN in power delivery chargers

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017152424A1 (zh) 2016-03-11 2017-09-14 华为技术有限公司 具有通用串行总线USB Type-C接口的设备之间建立连接的方法和终端设备
JP2018007451A (ja) 2016-07-04 2018-01-11 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
CN106648754A (zh) 2016-11-24 2017-05-10 硅谷数模半导体(北京)有限公司 控制器运行方法及装置
JP2018173886A (ja) 2017-03-31 2018-11-08 キヤノン株式会社 電子機器及びその制御方法
JP2018180793A (ja) 2017-04-07 2018-11-15 キヤノン株式会社 電子機器及びその制御方法

Also Published As

Publication number Publication date
JP2020087149A (ja) 2020-06-04
CN111240453B (zh) 2024-11-22
US11281271B2 (en) 2022-03-22
CN111240453A (zh) 2020-06-05
US20200174538A1 (en) 2020-06-04

Similar Documents

Publication Publication Date Title
JP7348721B2 (ja) コントローラ、制御方法、制御プログラム
TWI648635B (zh) 通用串列匯流排集線器及其操作方法
KR102634505B1 (ko) 컴퓨팅 장치의 분리가능한 부분을 위한 이중 역할 가능 커넥터
JP2005339067A (ja) 電子機器及びその制御方法、情報処理装置、並びにコンピュータ・プログラム
US8332545B1 (en) USB switch which allows primary USB connection in response to USB signaling
US11764586B2 (en) USB DRP controller, control method, and control program
US6516374B1 (en) Method for docking/undocking a portable computer to/from an expansion unit
WO2018014471A1 (zh) 终端、终端外设、信号发送及接收方法、数据传输系统
TW200523725A (en) Apparatus for controlling power of processor having a plurality of cores and control method of the same
US10136223B1 (en) Control method and control system for audio device
KR19980024123A (ko) 배터리 구동 전자 기기 시스템 및 이를 위한 전원 제어 방법
CN104281542A (zh) 多功能usb终端设备的适配方法、装置及系统
JP7082926B2 (ja) コントローラ、制御方法、制御プログラム
JP2020038528A (ja) デバイス、コントロールモジュール、コントローラ
TW200809575A (en) Computer having removable input/output device
CN116707055B (zh) 充电电路、电子设备及反向充电方法
US20190041935A1 (en) Power transfer synchronization for information handling system and external device
US10515025B2 (en) Communication protocol adapter
JP5492844B2 (ja) インターフェースの接続方法およびコンピュータ
CN114583772B (zh) 支持Type-C连接的电子装置及其方法
TWI757976B (zh) 支援Type-C連接的電子裝置及其方法
CN223552097U (zh) 多usb接口的具有usb模式切换功能的系统、多usb接口装置、车辆和设备
CN219739991U (zh) 供电电路及供电装置
CN222774829U (zh) 一种用于主板烧录bios的电路、装置与系统
CN116150769B (zh) 一种军用加固计算平台双固件智能化启动系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210604

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220311

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221018

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230418

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230607

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: 20230905

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230908

R150 Certificate of patent or registration of utility model

Ref document number: 7348721

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150