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

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

▶ 株式会社村田製作所の特許一覧

<>
  • 特許-データ通信装置 図1
  • 特許-データ通信装置 図2
  • 特許-データ通信装置 図3
  • 特許-データ通信装置 図4
  • 特許-データ通信装置 図5
  • 特許-データ通信装置 図6
  • 特許-データ通信装置 図7
  • 特許-データ通信装置 図8
  • 特許-データ通信装置 図9
  • 特許-データ通信装置 図10
  • 特許-データ通信装置 図11
  • 特許-データ通信装置 図12
  • 特許-データ通信装置 図13
  • 特許-データ通信装置 図14
  • 特許-データ通信装置 図15
  • 特許-データ通信装置 図16
  • 特許-データ通信装置 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-05-31
(45)【発行日】2022-06-08
(54)【発明の名称】データ通信装置
(51)【国際特許分類】
   G06F 1/3237 20190101AFI20220601BHJP
   G06F 1/3209 20190101ALI20220601BHJP
   G06F 13/36 20060101ALI20220601BHJP
【FI】
G06F1/3237
G06F1/3209
G06F13/36 310D
【請求項の数】 13
(21)【出願番号】P 2017215646
(22)【出願日】2017-11-08
(65)【公開番号】P2019087097
(43)【公開日】2019-06-06
【審査請求日】2020-08-24
(73)【特許権者】
【識別番号】000006231
【氏名又は名称】株式会社村田製作所
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100126480
【弁理士】
【氏名又は名称】佐藤 睦
(72)【発明者】
【氏名】中牟田 和周
(72)【発明者】
【氏名】飯島 正統
【審査官】征矢 崇
(56)【参考文献】
【文献】特開2008-293230(JP,A)
【文献】特開平06-324985(JP,A)
【文献】国際公開第2017/056917(WO,A1)
【文献】特開2016-063359(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F1/04;1/32-1/3296
G06F13/36-13/42
(57)【特許請求の範囲】
【請求項1】
マスターデバイスとの間でバスを経由してデータの通信を行うデータ通信装置であって、
前記バス上のクロック信号及び前記データに基づいて通信の開始及び終了を検出する通信開始終了検出回路と、
前記データ通信装置のリセット状態が開始された後、前記通信開始終了検出回路から通信の開始を示す開始検出信号が供給されるまでの間、状態信号を出力するリセット検出回路と、
前記状態信号と、前記通信開始終了検出回路で通信の終了が検出されたことを示す終了検出信号と、の少なくともいずれかが検出された状態に応じたクロック制御信号を出力するクロック制御信号生成回路と、
前記バス上のクロック信号に基づいて、内部クロック信号を生成するクロック生成回路と、
前記内部クロック信号が供給され、前記マスターデバイスとの前記データの通信処理を制御するデータ処理制御回路と、
を備え、
前記クロック生成回路は、前記クロック制御信号に基づいて、前記データ通信装置が前記リセット状態の場合、及び、前記リセット状態の解除後、前記通信の開始までの間、前記内部クロック信号の生成を停止する、
データ通信装置。
【請求項2】
前記データ通信装置は、電源電圧が所定レベル未満の場合に前記リセット状態を維持するためのリセット信号を出力するリセット回路をさらに備える、
請求項1に記載のデータ通信装置。
【請求項3】
前記データ処理制御回路は、前記データが前記内部クロック信号を停止させる停止条件に該当する場合に停止信号を生成し、前記クロック制御信号生成回路に供給する、
請求項1又は2に記載のデータ通信装置。
【請求項4】
前記停止条件は、前記データに含まれるスレーブアドレスが所定のエラーパターンに該当することを含む、
請求項3に記載のデータ通信装置。
【請求項5】
前記停止条件は、前記データに含まれる読み出し又は書き込みデータが所定のエラーパターンに該当することを含む、
請求項3に記載のデータ通信装置。
【請求項6】
前記停止条件は、前記データのデータ量が所定の量を超えたことを含む、
請求項3に記載のデータ通信装置。
【請求項7】
前記停止条件は、前記データに含まれるコマンドが所定のエラーパターンに該当することを含む、
請求項3に記載のデータ通信装置。
【請求項8】
前記停止条件は、前記データ通信装置のアドレスが動的に割り当てられる場合に、当該データ通信装置が前記バスに接続された他のデータ通信装置との調停に負けたことを含む、
請求項3に記載のデータ通信装置。
【請求項9】
前記停止条件は、前記データ通信装置のアドレスが動的に割り当てられる場合に、当該データ通信装置に割り当てられたアドレスが所定のエラーパターンに該当することを含む、
請求項3に記載のデータ通信装置。
【請求項10】
前記停止条件は、前記データ通信装置のアドレスが動的に割り当てられる場合に、当該データ通信装置の割り当てが終了したことを含む、
請求項3に記載のデータ通信装置。
【請求項11】
前記停止条件は、前記マスターデバイスからクロック信号が供給されている状態において前記データ通信装置が割り込み要求をした場合に、当該データ通信装置が前記バスに接続された他のデータ通信装置との調停に負けたことを含む、
請求項3に記載のデータ通信装置。
【請求項12】
前記停止条件は、前記マスターデバイスからクロック信号が供給されている状態において前記データ通信装置が割り込み要求をした場合に、前記マスターデバイスから前記割り込み要求を拒否されたことを含む、
請求項3に記載のデータ通信装置。
【請求項13】
前記停止条件は、前記データ通信装置が対応しない動作モードによって前記データが通信されることを含む、
請求項3に記載のデータ通信装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ通信装置に関する。
【背景技術】
【0002】
複数のデバイス間でのデータ通信において、例えばI2C(Inter Integrated Circuit)方式に見られるように、クロック供給ラインとデータ通信ラインの2線式バスによって双方向のデータ通信が行われる方式が知られている。具体的には、例えば、バスに接続された複数のデバイスのうち、データ通信状態を制御するデバイス(マスターデバイス)が、バスを経由して他のデバイス(スレーブデバイス)にクロックを供給する。すると、各スレーブデバイスは、当該バス上のクロックに基づいて自デバイス内で内部クロックを生成し、当該内部クロックとバス上のデータとの組み合わせによってデータ通信が実現する。
【0003】
しかしながら、各スレーブデバイスにおける内部クロックの生成は電力の消費を伴う。従って、消費電力の低減のためには、内部クロックが不要な場合は内部クロックの生成を停止させることが好ましい。例えば特許文献1には、デバイスごとにクロックの要否を判断し、クロックが不要であると判断されたデバイスの内部クロックを停止させることにより消費電力を低減させるデータ転送装置が開示されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2008-293230号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ここで、特許文献1に開示される装置では、例えば新たなスレーブデバイスが通信中のバスに接続されると、接続と同時に当該バス上のクロックの受信が始まり、内部クロックが生成される。しかしながら、当該スレーブデバイスでは、実際には通信開始の信号(スタートコンディション)を受信するまで通信が開始されない。従って、当該スレーブデバイスがバスに接続されてから通信開始までの内部クロックの生成は不要であるが、内部クロックの生成により不要な電力が消費されてしまうという問題がある。
【0006】
本発明は、かかる事情に鑑みてなされたものであり、不要なタイミングにおける内部クロックの生成を停止し、消費電力を低減することができるデータ通信装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
かかる目的を達成するため、本発明の一側面に係るデータ通信装置は、マスターデバイスとの間でバスを経由してデータの通信を行うデータ通信装置であって、データ通信装置のリセット状態及び通信の状態に応じたクロック制御信号を出力するクロック制御信号生成回路と、バス上のクロック信号及びデータに基づいて通信の開始を検出する通信開始検出回路と、バス上のクロック信号に基づいて、内部クロック信号を生成するクロック生成回路と、内部クロック信号が供給され、マスターデバイスとのデータの通信処理を制御するデータ処理制御回路と、を備え、クロック生成回路は、クロック制御信号に基づいて、データ通信装置がリセット状態の場合、及び、リセット状態の解除後、通信の開始までの間、内部クロック信号の生成を停止する。
【発明の効果】
【0008】
本発明によれば、不要なタイミングにおける内部クロックの生成を停止し、消費電力を低減することができるデータ通信装置を提供することができる。
【図面の簡単な説明】
【0009】
図1】本発明の一実施形態に係るデータ通信装置が含まれる通信システムの構成例を示す図である。
図2】比較例に係る通信システムにおける通信開始から通信終了までのタイミングチャートを示す図である。
図3】本発明の一実施形態に係るデータ通信装置の構成例を示すブロック図である。
図4】クロック生成回路110が、バス上のクロック信号SCLとクロック制御信号clk-enとに基づいて、内部クロック信号sl-clk-a,sl-clk-bを生成する場合の論理式の一例を示す図である。
図5】クロック制御信号生成回路120が、状態信号initial-state、終了検出信号det-P及び停止信号clk-stopに基づいて、クロック制御信号clk-enを生成する場合の論理式の一例を示す図である。
図6】本発明の一実施形態に係るデータ通信装置におけるタイミングチャートを示す図である。
図7】本発明の一実施形態に係るデータ通信装置において通信されるデータ構造の一例を示す図である。
図8】本発明の一実施形態に係るデータ通信装置がスレーブアドレスを受信する場合のフローチャートを示す図である。
図9】本発明の一実施形態に係るデータ通信装置におけるタイミングチャートを示す図である。
図10】本発明の一実施形態に係るデータ通信装置がデータを受信する場合のフローチャートを示す図である
図11】本発明の一実施形態に係るデータ通信装置において通信されるデータ構造の一例を示す図である。
図12】本発明の一実施形態に係るデータ通信装置においてコマンドCを含むデータが通信される場合のフローチャートを示す図である。
図13】本発明の一実施形態に係るデータ通信装置において通信されるデータ構造の一例を示す図である。
図14】本発明の一実施形態に係るデータ通信装置のアドレスが動的に割り当てられる場合のフローチャートを示す図である。
図15】本発明の一実施形態に係るデータ通信装置において通信されるデータ構造の一例を示す図である。
図16】本発明の一実施形態に係るデータ通信装置が割り込み要求を行う場合のフローチャートを示す図である。
図17】本発明の一実施形態に係るデータ通信装置が対応しない動作モードにおいて通信を行う場合のフローチャートを示す図である。
【発明を実施するための形態】
【0010】
以下、本発明の実施の形態について、図面を参照しつつ詳細に説明する。なお、同一の要素には同一の符号を付し、重複する説明を省略する。
【0011】
図1は、本発明の一実施形態に係るデータ通信装置が含まれる通信システムの構成例を示す図である。図1に示される通信システム1は、例えば、I2C方式のように2線式バスによって双方向の通信が可能である通信システムである。なお、通信システム1はI2C方式に従っていてもよく、あるいは他のいずれの通信方式に従っていてもよい。
【0012】
通信システム1は、例えば、マスターデバイス10と、N個(Nは1以上の整数)のスレーブデバイス20(1)~20(N)と、マスターデバイス10及びN個のスレーブデバイス20(1)~20(N)を接続するバス30を備える。
【0013】
マスターデバイス10は、通信システム1におけるデータ通信の制御権限を有するマスター状態にあるデバイスである。マスターデバイス10は、後述するバス30を経由して、N個のスレーブデバイス20(1)~20(N)の各々とのデータ通信を制御する。
【0014】
スレーブデバイス20(1)~20(N)は、それぞれ、マスターデバイス10の制御に従って動作するスレーブ状態にあるデバイスである。スレーブデバイス20(1)~20(N)には、それぞれ、固有のスレーブアドレスが割り当てられる。当該固有のスレーブアドレスによって、マスターデバイス10と複数のスレーブデバイス20(1)~20(N)とのデータ通信が実現する。
【0015】
バス30は、シリアルクロック(SCL:serial clock)ライン31と、シリアルデータ(SDA:serial data)ライン32を含む、双方向の2線式バスによって構成される。マスターデバイス10は、SCLライン31及びSDAライン32を経由して、スレーブデバイス20(1)~20(N)にクロック及びデータを供給することにより、通信システム1全体のデータ通信状態を制御する。例えば、マスターデバイス10は、データを送受信したいスレーブデバイスのスレーブアドレスと、データの書き込み又は読み出しを示す情報とを、SDAライン32を経由して送信する。そして、マスターデバイス10は、当該スレーブアドレスによって指定されたスレーブデバイスとの間で、書き込みデータ又は読み出しデータを、SDAライン32を経由して送受信する。これにより、スレーブアドレスによって指定されたスレーブデバイスと、マスターデバイス10との間でデータ通信が実行される。このデータ通信の方法について、以下にさらに詳しく説明する。
【0016】
図2は、比較例に係る通信システムにおける通信開始から通信終了までのタイミングチャートを示す図である。具体的に、図2に示されるタイミングチャートは、比較例に係る通信システムおける(1)バス上のクロック信号SCL、(2)バス上のデータ信号SDA、(3)所定のスレーブデバイスの電源電圧sl-VDD、及び(4)所定のスレーブデバイスの内部クロック信号sl-clkを示す。ここで、比較例とは、例えばI2C規格において採用されている一般的なデータ通信方式に従った通信システムである。なお、図2は各信号のイメージを示しており、実際のビット数は反映されていない。
【0017】
図2(1)のクロック信号SCL及び(2)のデータ信号SDAに示されるように、バス上のクロック信号SCL及びバス上のデータ信号SDAは、それぞれ、HighとLowの状態を繰り返す。そして、クロック信号SCLがHighの時にデータ信号SDAがHighからLowに変化する状態を開始条件(スタートコンディションS)として、データ通信が開始される。続いてデータ通信の対象となるスレーブデバイスに割り当てられたスレーブアドレスSAが転送され、その後に転送すべきデータDが続く。データ転送の後、クロック信号SCLがHighの時にデータ信号SDAがLowからHighに変化する状態を停止条件(ストップコンディションP)として、データ通信が終了する。
【0018】
この時、図2(3)の電源電圧sl-VDD及び(4)の内部クロック信号sl-clkに示されるように、スレーブデバイスにおいては、電源電圧sl-VDDの上昇以降、クロック信号SCLと同期して内部クロック信号sl-clkが生成される。当該内部クロック信号sl-clkと受信したデータ信号SDAとの組み合わせにより、種々のデータ通信が実行される。
【0019】
ここで、バス上のクロック信号SCLに基づいて内部クロック信号sl-clkを生成する際には、電力の消費を伴う。また、内部クロック信号sl-clkは比較的ノイズを発生させやすく、不要輻射の発生の原因となり得る。一方で、このような内部クロック信号sl-clkは、必ずしもバス上のクロック信号SCLと常に同期して生成される必要はない。従って、データ通信の状況に応じて、内部クロック信号sl-clkの生成を適宜停止させることにより、消費電力を低減させ、不要輻射の発生を抑制することができる。そこで、内部クロック信号sl-clkの生成を停止させることができる様々な条件について以下に説明する。
【0020】
<停止条件1>
図3は、本発明の一実施形態に係るデータ通信装置の構成例を示すブロック図である。図3に示されるデータ通信装置100は、図1に示される通信システム1に含まれる所定のスレーブデバイスに相当する。具体的に、データ通信装置100は、クロック生成回路110、クロック制御信号生成回路120、通信開始/終了検出回路130、リセット回路140、リセット検出回路150及びデータ処理制御回路160を備える。
【0021】
クロック生成回路110は、バス上のクロック信号SCLと、クロック制御信号生成回路120から供給されるクロック制御信号clk-enとに基づいて、内部クロック信号sl-clkを生成し、データ処理制御回路160に出力する。内部クロック信号sl-clkは、バス上のクロック信号SCLと同一の内部クロック信号sl-clk-aと、バス上のクロック信号SCLを反転させた内部クロック信号sl-clk-bを含む。なお、以下の説明においては、内部クロック信号sl-clk-aと内部クロック信号sl-clk-bを特に区別する必要のない場合には、これらの信号を併せて「内部クロック信号sl-clk」とも呼ぶ。
【0022】
クロック制御信号生成回路120は、クロック生成回路110が内部クロック信号sl-clkを生成するか否かを制御するクロック制御信号clk-enを生成し、クロック生成回路110に出力する。クロック制御信号clk-enは、スタートコンディション及びストップコンディションの他、後述する様々な内部クロック信号の停止条件に応じて切り替えられる。
【0023】
図4は、クロック生成回路110が、バス上のクロック信号SCLとクロック制御信号clk-enとに基づいて、内部クロック信号sl-clk-a,sl-clk-bを生成する場合の論理式の一例を示す図である。図4に示されるように、クロック制御信号clk-enがHighの場合、バス上のクロック信号SCLのHigh及びLowと同じ内部クロック信号sl-clk-aと、当該内部クロック信号sl-clk-aを反転させた内部クロック信号sl-clk-bとが生成される。他方、クロック制御信号clk-enがLowの場合、内部クロック信号sl-clk-aはHighを維持し、内部クロック信号sl-clk-bはLowを維持する。すなわち、クロック制御信号clk-enのHigh及びLowの切り替えによって、内部クロック信号sl-clk-a,sl-clk-bの動作を停止させることができる。
【0024】
図3に戻り、通信開始/終了検出回路130は、バス上のクロック信号SCLとデータ信号SDAの組み合わせに基づいて、これらの両信号がスタートコンディション又はストップコンディションに該当するか否かを判定し、通信の開始及び終了を検出する。そして、通信の開始を示す開始検出信号det-Sをリセット検出回路150に出力し、通信の終了を示す終了検出信号det-Pをクロック制御信号生成回路120に出力する。また、通信の開始及び終了を示す信号は、データ処理制御回路160にも供給される。
【0025】
リセット回路140は、例えばデータ通信装置100の外部から供給される電源電圧sl-Vddに応じたリセット信号resを生成するパワーオン・リセット回路である。リセット信号resは、電源電圧sl-VDDが所定レベル未満の場合(例えば、データ通信装置100に電源電圧が投入されてから、データ通信装置100が正常に動作するレベルを超えるまでの間)、データ通信装置100のリセット状態を維持するための信号である。当該リセット状態の間に、例えば後述するステートマシン161が、データ通信装置100の初期化を行う(パワーオン・リセット)。なお、当該リセット状態の間は、データ通信が行われないため、内部クロック信号sl-clkを生成する必要がない。
【0026】
リセット検出回路150は、リセット回路140から供給されるリセット信号resに基づいて、少なくともデータ通信装置100のリセット状態の開始を示す状態信号initial-stateを生成し、クロック制御信号生成回路120に出力する。これにより、データ通信装置100がリセット状態の場合に、状態信号initial-stateを経由して、クロック生成回路110における内部クロック信号sl-clkの生成が停止される。また、リセット検出回路150には、通信の開始を示す開始検出信号det-Sが通信開始/終了検出回路130から供給される。そして、状態信号initial-stateは、開始検出信号det-Sに基づいて、通信の開始時にHighからLowに切り替えられる。すなわち、状態信号initial-stateは、データ通信装置100のリセット状態、及びリセット状態の解除後からスタートコンディションまでの期間を示す。これにより、リセット検出回路150は、リセット状態に加えて、リセット状態の解除後、次のスタートコンディションが検出されるまで、内部クロック信号sl-clkの生成を停止させることができる。
【0027】
データ処理制御回路160は、内部クロック信号sl-clk-a,sl-clk-bが供給され、マスターデバイスとのデータの通信処理を制御する。具体的に、データ処理制御回路160は、ステートマシン161、クロック停止条件判定回路162及びデータ処理回路163を備える。
【0028】
ステートマシン161は、データ通信において、通信状態、リセット状態又は待機状態等の様々な状態を制御する。
【0029】
クロック停止条件判定回路162は、ステートマシン161が制御する通信状態や、バスから受信するデータに応じて、当該データが内部クロック信号sl-clkを停止させる停止条件に該当するか否かを判定する。そして、内部クロック信号sl-clkを停止させるための停止信号clk-stopを生成し、クロック制御信号生成回路120に出力する。なお、内部クロック信号sl-clkの具体的な停止条件については、後に詳細に述べる。
【0030】
データ処理回路163は、送信又は受信されたデータの処置を行う。
【0031】
図5は、クロック制御信号生成回路120が、状態信号initial-state、終了検出信号det-P及び停止信号clk-stopに基づいて、クロック制御信号clk-enを生成する場合の論理式の一例を示す図である。図5に示されるように、データ通信装置100のリセット状態、及びリセット状態の解除後からスタートコンディションまでの間の場合(すなわち、状態信号initial-stateがHigh)、通信の終了が検出された場合(すなわち、終了検出信号det-PがHigh)、及び内部クロック信号sl-clkの停止条件に該当した場合(すなわち、停止信号clk-stopがHigh)の少なくともいずれか1つが該当すると、クロック制御信号clk-enがLowとなる。これにより、内部クロック信号sl-clkの生成が停止される。
【0032】
図6は、本発明の一実施形態に係るデータ通信装置におけるタイミングチャートを示す図である。具体的には、図6は、マスターデバイスと他のスレーブデバイスとのデータ通信中に、新たなスレーブデバイス(図3に示されるデータ通信装置100に相当)の電源電圧が投入された場合のタイミングチャートが示されている。なお、同図は、(1)バス上のクロック信号SCL、(2)バス上のデータ信号SDA、(3)電源電圧sl-VDD、(4)状態信号initial-state、(5)開始検出信号det-S、(6)終了検出信号det-P、(7)クロック制御信号clk-en、及び(8)内部クロック信号sl-clkを示す。また、図3に示されるリセット信号res及び停止信号clk-stopは図示が省略されている。
【0033】
図6(3)の電源電圧sl-VDD及び(4)の状態信号initial-stateに示されるように、マスターデバイスが既に他のスレーブデバイスとデータ通信中である場合に、新たなスレーブデバイスの電源電圧sl-VDDが投入されると、当該新たなスレーブデバイスはリセット状態となるため、状態信号initial-stateがLowからHighに変わる。これにより、クロック制御信号clk-enはLowが維持される。従って、バス上のクロック信号SCLと同期して直ちに内部クロック信号sl-clkが生成されることが回避される。また、状態信号initial-stateは、リセット状態が解除されてもHighが維持される。そして、通信開始/終了検出回路130によって次のスタートコンディションSが検出されると、開始検出信号det-SがLowからHighに変わる。すると、当該開始検出信号det-Sが供給されるリセット検出回路150は、状態信号initial-stateをHighからLowに変える。従って、クロック制御信号clk-enがここで初めてLowからHighに変わり、内部クロック信号sl-clkが生成され始める。
【0034】
このように、本実施形態によると、リセット状態の継続中に内部クロック信号sl-clkを停止するだけでなく、リセット状態の解除後も、次に通信の開始が検出されるまで内部クロック信号sl-clkを停止し続けることができる。
【0035】
本実施形態の動作を、図2に示される比較例の動作と比較する。比較例では、電源電圧の投入に伴って、内部クロック信号がバス上のクロック信号と同期して動作してしまう(図6(8)破線参照)。他方、本実施形態では、次のスタートコンディションSまで内部クロック信号を停止させることができる。従って、データ通信装置100によると、比較例に比べて消費電力を低減させ、不要輻射の発生を抑制することができる。
【0036】
なお、リセット信号resがリセット検出回路150に供給されるのは、電源電圧sl-VDDの投入時に限られない。例えば、データ通信中であっても、何らかの理由によりデータ通信装置100にリセットがかけられた場合に、リセット回路140が当該リセットを受け付けてもよい。この場合も、電源電圧の投入時と同様に、リセット検出回路150に供給されるリセット信号resがLowからHighとなることにより、状態信号initial-stateがLowからHighとなり、内部クロック信号sl-clkの生成が停止される。
【0037】
次に、クロック停止条件判定回路162において判定される、内部クロック信号の停止条件(停止条件2~停止条件7)について説明する。
【0038】
<停止条件2>
図7は、本発明の一実施形態に係るデータ通信装置において通信されるデータ構造の一例を示す図である。具体的に、図7において(1)及び(2)は、バス上にスレーブアドレスが一致するスレーブデバイスがある場合のデータ構造を示し、(3)及び(4)は、バス上にスレーブアドレスが一致するスレーブデバイスがない場合のデータ構造を示す。また、(1)及び(3)は、書き込みの場合のデータ構造を示し、(2)及び(4)は、読み出しの場合のデータ構造を示す。なお、図7における符号は、S:スタートコンディション、P:ストップコンディション、A:ACK、N:NACK、W:書き込み要求、R:読み出し要求、T:トランジションビット、SA:スレーブアドレス、Dwr:書き込みデータ、Drd:読み出しデータ、を意味する。以下の図においても同様である。
【0039】
図7に示されるように、スタートコンディションSの後に、スレーブアドレスSA及び書き込み要求W又は読み出し要求Rが続く。バス上にスレーブアドレスSAが一致するスレーブデバイスがある場合、当該スレーブデバイスがACKを出力し、書き込みデータDwrの書き込み、又は読み出しデータDrdの読み出しを行い、ストップコンディションPとなる。他方、バス上にスレーブアドレスSAが一致するスレーブデバイスがない場合、各スレーブデバイスがNACKを出力し、ストップコンディションPとなる。なお、書き込みデータは、例えば、当該データがエラーを含むか否かを判定するためのエラーチェックビット(読み出し時におけるトランジションビットT)を含む。エラーチェックビットは、例えばパリティビット等であってもよい。
【0040】
図8は、本発明の一実施形態に係るデータ通信装置がスレーブアドレスを受信する場合のフローチャートを示す図である。なお、図8に示されるフローチャートは、処理における種々の条件を示したものであり、時系列は必ずしもこれに限られない。以下に示されるフローチャートにおいても同様である。
【0041】
まず、スレーブデバイスには電源電圧が投入され、当該スレーブデバイスはリセット状態にある。この時、上述した通り、内部クロック信号sl-clkは停止している。そして、通信開始/終了検出回路130が通信の開始を検出すると、内部クロック信号sl-clkの生成が開始される(S1)。次に、スレーブデバイスがスレーブアドレスSAを受信し、クロック停止条件判定回路162が、スレーブアドレスSAが所定のエラーパターンに該当するか否かを判定する(S2)。なお、本明細書において「所定のエラーパターンに該当する」とは、データが予め定められたエラーを示すパターンに該当することに限られず、パリティチェック等によりエラーを識別することを含む。
【0042】
スレーブアドレスSAが所定のエラーパターンに該当する場合(S2:Yes)、スレーブデバイスはNACKを出力する(S5)。この後、当該スレーブデバイスにおける内部クロック信号sl-clkは不要となるため、クロック停止条件判定回路162は、停止信号clk-stopをクロック制御信号生成回路120に出力し、内部クロック信号sl-clkの生成が停止される(S6)。そして、当該スレーブデバイスは待機状態に移行する。
【0043】
他方、スレーブアドレスSAが所定のエラーパターンに該当しない場合(S2:No)、当該スレーブアドレスSAが自デバイスに割り当てられたスレーブアドレスと一致するか否かを判定する(S3)。スレーブアドレスSAが自デバイスに割り当てられたスレーブアドレスと一致する場合(S3:Yes)、当該スレーブデバイスはACKを出力し、通信状態を継続する。他方、スレーブアドレスSAが自デバイスに割り当てられたスレーブアドレスと一致しない場合(S3:No)、当該スレーブデバイスはNACKを出力する(S5)。クロック停止条件判定回路162は、停止信号clk-stopをクロック制御信号生成回路120に出力し、内部クロック信号sl-clkの生成が停止される(S6)。そして、当該スレーブデバイスは待機状態に移行する。
【0044】
図9は、本発明の一実施形態に係るデータ通信装置におけるタイミングチャートを示す図である。具体的には、当該タイミングチャートは、データが停止条件に該当することにより、通信中に内部クロック信号を停止させる場合が示されている。なお、同図は、(1)バス上のクロック信号SCL、(2)バス上のデータ信号SDA、(3)終了検出信号det-P、(4)停止信号clk-stop、(5)クロック制御信号clk-en、及び(6)内部クロック信号sl-clkを示す。
【0045】
図9に示されるように、通信の開始が検出される(スタートコンディションS)と、クロック制御信号clk-enがLowからHighに変わり、クロック生成回路110によって内部クロック信号sl-clkが生成される。また、この時、停止信号clk-stopはHighからLowに変わる。そして、スタートコンディションSからストップコンディションPの間(すなわち、データ通信中)において、例えば上述のようにスレーブアドレスSAがエラーパターンに該当する等、内部クロック信号の停止条件に該当した場合、クロック停止条件判定回路162は停止信号clk-stopをLowからHighに変える。これにより、クロック制御信号clk-enがHighからLowに変わるため、内部クロック信号sl-clkの生成が停止される。
【0046】
このように、本実施形態によると、次のストップコンディションPを検出する前に、内部クロック信号sl-clkが不要であると判断された時点で、内部クロック信号sl-clkの生成を停止させることができる。
【0047】
本実施形態の動作を、特許文献1に開示される構成の動作と比較する。特許文献1に開示される構成では、仮にスレーブアドレスSAがエラーパターンに該当しても、次のストップコンディションPを検出するまで内部クロック信号が生成され続ける(図9(6)破線参照)。他方、本実施形態では、次のストップコンディションPに該当する前に内部クロック信号sl-clkを停止させることができる。従って、本実施形態によると、特許文献1に開示される構成に比べて消費電力を低減させ、不要輻射の発生を抑制することができる。
【0048】
<停止条件3>
図10は、本発明の一実施形態に係るデータ通信装置がデータを受信する場合のフローチャートを示す図である。当該スレーブデバイスは、図8に示されるステップS3において、スレーブアドレスSAが自デバイスに割り当てられたスレーブアドレスと一致すると判定され、通信状態が継続しているものとする。また、以下の説明では、データのエラーチェックにおいてパリティチェックが用いられる場合が例として示されているが、エラーチェックの方法は特に限定されない。また、内部クロック信号sl-clkの停止の手順については、上述の実施形態と同様であるため、詳細な説明を省略する。
【0049】
スレーブデバイスは、バス上のデータを受信し(S10)、データにエラーが含まれるか否かをパリティチェックにより判定する(S11)。パリティチェックの結果がエラーである場合(S11:Yes)、内部クロック信号sl-clkの生成が停止される(S13)。
【0050】
他方、パリティチェックの結果がエラーでない場合(S11:No)、全データの受信を終了するまでデータ受信が繰り返される。ここで、全データの受信が終了する前であっても、受信したデータ量が所定の上限量を超えた場合(S12:Yes)、これ以上データを受信することが不可能であるため、内部クロック信号sl-clkの生成が停止される(S13)。
【0051】
このような停止条件によっても、本実施形態は、特許文献1に開示される構成に比べて、消費電力を低減させ、不要輻射の発生を抑制することができる。
【0052】
<停止条件4>
図11は、本発明の一実施形態に係るデータ通信装置において通信されるデータ構造の一例を示す図である。具体的に、図11における(1)~(3)は、バス上に接続された全てのスレーブデバイスを指定するブロードキャストアドレスSAbが含まれる場合のデータ構造を示す。なお、図11における符号は、SR:スタートリピートコンディション、C:コマンド、SAb:ブロードキャストアドレス、SA(i):i番目のスレーブアドレス(iは整数)、を意味する。以下の図においても同様である。
【0053】
(1)に示されるデータ構造は、例えば、マスターデバイスがブロードキャストアドレスSAbによって全スレーブデバイスを指定し、当該全スレーブデバイスに対して共通のコマンドを送信する場合のデータ構造である。
【0054】
(2)に示されるデータ構造は、例えば、マスターデバイスがブロードキャストアドレスSAbによって全スレーブデバイスを指定し、当該全スレーブデバイスに対して共通のコマンドを送信し、さらに全スレーブデバイスに対して同様の書き込みデータDwrを送信する場合のデータ構造である。
【0055】
(3)に示されるデータ構造は、例えば、マスターデバイスがブロードキャストアドレスSAbによって全スレーブデバイスを指定し、当該全スレーブデバイスに対して共通のコマンドを送信し、さらにスレーブデバイスごとに個別の書き込みデータDwrを送信する場合のデータ構造である。なお、スレーブデバイスの個数は例示であり、これに限定されない。
【0056】
図12は、本発明の一実施形態に係るデータ通信装置においてコマンドCを含むデータが通信される場合のフローチャートを示す図である。
【0057】
まず、スレーブデバイスはコマンドCを受信する(S20)。そして、コマンドCのパリティチェックの結果がエラーである場合(S21:Yes)、内部クロック信号sl-clkの生成が停止される(S26)。他方、コマンドCのパリティチェックの結果がエラーでない場合(S21:No)、スレーブデバイスは、コマンドCの判定を行い、次のデータ受信の有無の判定を行う。具体的には、例えば、当該コマンドCが終了コマンドである場合や、次のスタートリピートコンディションSRまで待機するコマンドである場合、次のデータ受信がないため(S22:No)、内部クロック信号の生成が停止される(S26)。
【0058】
他方、次のデータ受信がある場合(S22:Yes)、スレーブデバイスは、データを受信する(S23)。ここでも、上述のフローと同様に、データのパリティチェックの結果がエラーである場合(S24:Yes)、内部クロック信号の生成が停止される(S26)。当該結果がエラーでない場合(S24:No)、全データの受信が終了していなければ(S25:No)、データの受信が繰り返される。全データの受信が終了した場合(S25:Yes)、内部クロック信号sl-clkの生成が停止される(S26)。
【0059】
このような停止条件によっても、本実施形態は、特許文献1に開示される構成に比べて、消費電力を低減させ、不要輻射の発生を抑制することができる。
【0060】
<停止条件5>
図13は、本発明の一実施形態に係るデータ通信装置において通信されるデータ構造の一例を示す図である。具体的に、図13は、スレーブアドレスの割り当てを動的に行う場合(以下、「動的アドレス割り当て」とも呼ぶ。)のデータ構造を示す。なお、図13に示される符号は、SAwr:スレーブアドレスを意味する。以下の図においても同様である。
【0061】
動的アドレス割り当てとは、バスに接続された各スレーブデバイスのスレーブアドレスが事前には決まっておらず、データ通信によってマスターデバイスから各スレーブデバイスにアドレスが割り当てられる方式である。ここで、バスに複数のスレーブデバイスが接続されている場合、アドレスを割り当てられる順序について、当該複数のスレーブデバイス間で競合が発生し得る。従って、競合するスレーブデバイス間において、アドレスを割り当てられる順序を決めるための調停を行う必要がある。
【0062】
具体的には、図13に示されるように、まずブロードキャストアドレスSAbによってバスに接続された全てのスレーブデバイスを指定し、続くコマンドCによって動的アドレス割り当ての実行が指示される。次に、スタートリピートコンディションSRに続いて、再び全てのスレーブデバイスが指定される。これに応じて割り当てが必要な各スレーブデバイスがACKを出力し、アドレス割り当て要求のための読み出しデータDrd(例えば、各スレーブデバイスに固有の予め定められたデータパターン)を同時に1ビットずつ出力する。そして、読み出しデータDrdが1ビット出力されるたびに、所定の規定に基づいて各スレーブデバイスの勝敗がつけられる。具体的には、例えばマスターデバイスがHigh又はLowのいずれかの値をバス上に出力した場合、当該バス上の値と一致する値を出力したスレーブデバイスが勝ちとなり、一致しない値を出力したスレーブデバイスが負けとなる。この手順が繰り返されることにより、最後まで勝ち残るスレーブデバイスが一意に決まる。当該勝ち残ったスレーブデバイスにはスレーブアドレスSAwrが書き込まれ、当該スレーブデバイスがACKを出力する。
【0063】
バスに接続された全てのスレーブデバイスのアドレスが割り当てられるまで、上述の手順が繰り返される。なお、この間、バス上のクロック信号は全てのスレーブデバイスに供給され続けることとなる。そして、全てのスレーブデバイスの割り当てが完了すると、NACKが出力され、ストップコンディションPとなる。ここで、アドレスの割り当てが完了したスレーブデバイスは、その後の調停に参加する必要がないため、アドレス割り当て要求のための読み出しデータDrdを出力する必要がない。
【0064】
図14は、本発明の一実施形態に係るデータ通信装置のアドレスが動的に割り当てられる場合のフローチャートを示す図である。
【0065】
まず、スレーブデバイスは、動的アドレス割り当てを開始するためのデータ(ブロードキャストアドレスSAb及びコマンドC等)を受信し(S30)、アドレスが割り当て済みかどうかを判定する(S31)。アドレスが割り当て済みの場合(S31:Yes)、当該スレーブデバイスはその後の調停に参加する必要がないため、内部クロック信号sl-clkの生成を停止する(S40)。アドレスが割り当て済みでない場合(S31:No)、スレーブデバイスは、データがリザーブ値と一致するか否かを判定する(S32)。リザーブ値とは、例えば、図13に示されるブロードキャストアドレスSAb及び読み出し要求Rを含む。データがこれらのリザーブ値と一致する場合(S32:Yes)、スレーブデバイスはACKを出力する(S33)。他方、データがリザーブ値と一致しない場合(S32:No)、内部クロック信号sl-clkの生成が停止される(S40)。
【0066】
ACKの出力の後、スレーブデバイスはアドレス割り当て要求のための読み出しデータDrdを送信し(S34)、自デバイスが送信した読み出しデータDrdとバス上のデータとを比較する(S35)。当該両データが一致する場合(S35:Yes)、スレーブデバイスは、次の読み出しデータ(次の1ビット)を送信する(S34)。他方、当該両データが一致しない場合(S35:No)、調停に負けたこととなり、内部クロック信号の生成が停止される(S40)。
【0067】
全データの送信が終了していない場合(S36:No)、全データの送信が終了するまで当該手順を繰り返す。他方、全データの送信が終了した場合(S36:Yes)、当該スレーブデバイスは調停に勝ったスレーブデバイスということになり、マスターデバイスから送信されるスレーブアドレスを受信する(S37)。そして、スレーブデバイスは、当該アドレスのパリティチェックを行い、その結果がエラーである場合(S38:Yes)、内部クロック信号sl-clkの生成が停止される(S40)。当該結果がエラーでない場合(S38:No)、スレーブデバイスはACKを出力する(S39)。そして、当該スレーブデバイスはアドレスの割り当てが完了したこととなり、内部クロック信号sl-clkの生成を停止する(S40)。
【0068】
図14に示されるフローは、全スレーブデバイスのアドレスの割り当てが完了するまで繰り返される。なお、例えば調停に負けて内部クロック信号sl-clkが停止しているスレーブデバイスであっても、次の調停の開始時には、スタートリピートコンディションSRを起点として再び内部クロック信号が生成されるため、再び調停に参加することができる。
【0069】
このような停止条件によっても、本実施形態は、特許文献1に開示される構成に比べて、消費電力を低減させ、不要輻射の発生を抑制することができる。
【0070】
<停止条件6>
図15は、本発明の一実施形態に係るデータ通信装置において通信されるデータ構造の一例を示す図である。具体的に、図15における(1)及び(2)は、スレーブデバイスが割り込み要求を行う場合のデータ構造を示す。なお、(1)は割り込み要求が許可された場合のデータ構造を示し、(2)は割り込み要求が許可されなかった場合のデータ構造を示す。
【0071】
まず、割り込み要求を行うスレーブデバイスが、自デバイスのスレーブアドレスSArdを送信し、マスターデバイスが当該スレーブアドレスSArdを受信する。そして、図15(1)に示されるように、マスターデバイスが割り込み要求を許可する場合は、ACKを出力する。この場合、割り込みを許可されたスレーブデバイスが読み出しデータDrdを送信し、全データの送信が終了するとストップコンディションPとなる。他方、図15(2)に示されるように、マスターデバイスが割り込み要求を許可しない場合は、NACKを出力し、ストップコンディションPとなる。
【0072】
なお、複数のスレーブデバイスが割り込み要求を行う場合は、上述の動的アドレス割り当てと同様に、調停によって割り込みが許可されるスレーブデバイスが決定される。
【0073】
図16は、本発明の一実施形態に係るデータ通信装置が割り込み要求を行う場合のフローチャートを示す図である。
【0074】
まず、割り込み要求を行うスレーブデバイスが、自デバイスに割り当てられたスレーブアドレスSArdを送信する(S50)。ここで、上述の調停と同様に、当該スレーブデバイスは、自デバイスが送信したデータとバス上のデータが一致するかを判定する(S51)。当該両データが一致する場合(S51:Yes)、スレーブデバイスは、データの送信を継続する(S50)。他方、当該両データが一致しない場合(S51:No)、内部クロック信号sl-clkの生成が停止される(S57)。
【0075】
全データの送信が終了していない場合(S52:No)、全データの送信が終了するまで当該手順が繰り返される。他方、全データの送信が終了した場合であって(S52:Yes)、マスターデバイスからのACKが送信された場合(S53:Yes)、割り込み要求が許可されたとして、スレーブデバイスがデータを送信する(S54)。そして、スレーブデバイスは、送信終了か否かをマスターデバイスに知らせるためのトランジションビットTを送信し(S55)、全データの送信が完了するまでデータ送信を繰り返す。ここで、全データの送信が完了する前であっても、送信したデータ量が所定の上限量を超えた場合(S56:Yes)、内部クロック信号sl-clkの生成が停止される(S57)。
【0076】
他方、マスターデバイスがACKを送信しない場合(S53:No)、割り込み要求が許可されなかったとして、内部クロック信号sl-clkの生成が停止される(S57)。
【0077】
このような停止条件によっても、本実施形態は、特許文献1に開示される構成に比べて、消費電力を低減させ、不要輻射の発生を抑制することができる。
【0078】
<停止条件7>
図17は、本発明の一実施形態に係るデータ通信装置が対応しない動作モードにおいて通信を行う場合のフローチャートを示す図である。なお、データ構造については、例えば図11に示される(2)と同様であるため、図示を省略する。
【0079】
まず、スレーブデバイスはコマンドCを受信する(S60)。当該コマンドCのパリティチェックの結果がエラーである場合(S61:Yes)、内部クロック信号sl-clkの生成が停止される(S63)。
【0080】
他方、当該結果がエラーでない場合(S61:No)、スレーブデバイスは、コマンドCによって示される動作モードが、自デバイスが対応する動作モードであるか否かを判定する。自デバイスが対応しない動作モードである場合(S62:No)、内部クロック信号sl-clkは不要であるため、内部クロック信号sl-clkの生成が停止される(S63)。他方、対応する動作モードである場合(S62:Yes)、通信状態が継続される。
【0081】
このような停止条件によっても、本実施形態は、特許文献1に開示される構成に比べて、消費電力を低減させ、不要輻射の発生を抑制することができる。
【0082】
以上、本発明の例示的な実施形態について説明した。データ通信装置100は、マスターデバイス10との間でバス30を経由してデータの通信を行うデータ通信装置であって、データ通信装置100のリセット状態及び通信の状態に応じたクロック制御信号clk-enを出力するクロック制御信号生成回路120と、バス上のクロック信号SCL及びデータ信号SDAに基づいて通信の開始を検出する通信開始/終了検出回路130と、バス上のクロック信号SCLに基づいて、内部クロック信号sl-clkを生成するクロック生成回路110と、内部クロック信号sl-clkが供給され、マスターデバイス10とのデータの通信処理を制御するデータ処理制御回路160と、を備え、クロック生成回路110は、クロック制御信号clk-enに基づいて、データ通信装置100がリセット状態の場合、及び、リセット状態の解除後、通信の開始までの間、内部クロック信号sl-clkの生成を停止する。これにより、データ通信装置100によると、リセット状態の開始から、次のスタートコンディションSに該当するまで、内部クロック信号sl-clkの生成を停止し続けることができる。従って、比較例に比べて消費電力を低減させ、不要輻射の発生を抑制することができる。
【0083】
また、データ通信装置100は、電源電圧sl-VDDが所定レベル未満の場合にリセット状態を維持するためのリセット信号resを出力するリセット回路140をさらに備える。これにより、データ通信装置100のリセット状態に応じたクロック制御信号clk-enを生成することができる。
【0084】
また、データ処理制御回路160は、データが内部クロック信号sl-clkを停止させる停止条件に該当する場合に停止信号clk-stopを生成し、クロック制御信号生成回路120に供給する。これにより、様々な停止条件において内部クロック信号sl-clkの生成を停止させることができる。従って、データ通信装置100によると、比較例に比べて消費電力を低減させ、不要輻射の発生を抑制することができる。
【0085】
また、内部クロック信号sl-clkの停止条件は特に限定されないが、例えばデータに含まれるスレーブアドレスSAが所定のエラーパターンに該当することを含んでもよい。
【0086】
また、当該停止条件は、データに含まれる読み出し又は書き込みデータが所定のエラーパターンに該当することを含んでもよい。
【0087】
また、当該停止条件は、データのデータ量が所定の量を超えたことを含んでもよい。
【0088】
また、当該停止条件は、データに含まれるコマンドCが所定のエラーパターンに該当することを含んでもよい。
【0089】
また、当該停止条件は、データ通信装置100のアドレスが動的に割り当てられる場合に、当該データ通信装置100がバス30に接続された他のデータ通信装置との調停に負けたことを含んでもよい。
【0090】
また、当該停止条件は、データ通信装置100のアドレスが動的に割り当てられる場合に、当該データ通信装置100に割り当てられたアドレスが所定のエラーパターンに該当することを含んでもよい。
【0091】
また、当該停止条件は、データ通信装置100のアドレスが動的に割り当てられる場合に、当該データ通信装置100の割り当てが終了したことを含んでもよい。
【0092】
また、当該停止条件は、データ通信装置100が割り込み要求をした場合に、当該データ通信装置100がバス30に接続された他のデータ通信装置との調停に負けたことを含んでもよい。
【0093】
また、当該停止条件は、データ通信装置100が割り込み要求をした場合に、マスターデバイス10から割り込み要求を拒否されたことを含んでもよい。
【0094】
また、当該停止条件は、データ通信装置100が対応しない動作モードによってデータが通信されることを含んでもよい。
【0095】
以上説明した各実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更又は改良され得るととともに、本発明にはその等価物も含まれる。即ち、各実施形態に当業者が適宜設計変更を加えたものも、本発明の特徴を備えている限り、本発明の範囲に包含される。例えば、各実施形態が備える各要素およびその配置、材料、条件、形状、サイズなどは、例示したものに限定されるわけではなく適宜変更することができる。また、各実施形態が備える各要素は、技術的に可能な限りにおいて組み合わせることができ、これらを組み合わせたものも本発明の特徴を含む限り本発明の範囲に包含される。
【符号の説明】
【0096】
1…通信システム、10…マスターデバイス、20(1)~20(N)…スレーブデバイス、30…バス、31…シリアルクロックライン、32…シリアルデータライン、100…データ通信装置、110…クロック生成回路、120…クロック制御信号生成回路、130…通信開始/終了検出回路、140…リセット回路、150…リセット検出回路、160…データ処理制御回路、161…ステートマシン、162…クロック停止条件判定回路、163…データ処理回路、S…スタートコンディション、P…ストップコンディション、SA…スレーブアドレス、D…データ、A…ACK、N…NACK、W…書き込み要求、R…読み出し要求、T…トランジションビット、Dwr…書き込みデータ、Drd…読み出しデータ、SR…スタートリピートコンディション、C…コマンド、SAb…ブロードキャストアドレス、
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17