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

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

▶ シャープ福山セミコンダクター株式会社の特許一覧

<>
  • 特開-電子機器 図1
  • 特開-電子機器 図2
  • 特開-電子機器 図3
  • 特開-電子機器 図4
  • 特開-電子機器 図5A
  • 特開-電子機器 図5B
  • 特開-電子機器 図5C
  • 特開-電子機器 図5D
  • 特開-電子機器 図6
  • 特開-電子機器 図7A
  • 特開-電子機器 図7B
  • 特開-電子機器 図7C
  • 特開-電子機器 図8
  • 特開-電子機器 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024118727
(43)【公開日】2024-09-02
(54)【発明の名称】電子機器
(51)【国際特許分類】
   G06F 13/24 20060101AFI20240826BHJP
   G06F 13/12 20060101ALI20240826BHJP
【FI】
G06F13/24 310G
G06F13/24 310B
G06F13/12 340F
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023025167
(22)【出願日】2023-02-21
(71)【出願人】
【識別番号】319006047
【氏名又は名称】シャープセミコンダクターイノベーション株式会社
(74)【代理人】
【識別番号】110002848
【氏名又は名称】弁理士法人NIP&SBPJ国際特許事務所
(72)【発明者】
【氏名】アハマド シャヒール ビン アハマド ノール
(72)【発明者】
【氏名】井上 高広
(72)【発明者】
【氏名】池田 徹朗
(72)【発明者】
【氏名】河辺 勇
(57)【要約】
【課題】割り込みが発生しているスレーブを短時間で特定することができる電子機器を提供する。
【解決手段】電子機器は、マスタと、互いに異なる複数の識別子がそれぞれ付与される複数のスレーブと、を備え、前記複数のスレーブに含まれる各スレーブは、前記各スレーブにおいて割り込みが発生しているか否かを示すビットを含むビット列を示す第1の信号を前記マスタへ送信し、前記各スレーブに付与された識別子に基づいて前記ビットの位置を変更する。
【選択図】図6
【特許請求の範囲】
【請求項1】
マスタと、
互いに異なる複数の識別子がそれぞれ付与される複数のスレーブと、
を備え、
前記複数のスレーブに含まれる各スレーブは、前記各スレーブにおいて割り込みが発生しているか否かを示すビットを含むビット列を示す第1の信号を前記マスタへ送信し、前記各スレーブに付与された識別子に基づいて前記ビットの位置を変更する
電子機器。
【請求項2】
前記マスタは、第1のデータ端子を備え、
前記複数のスレーブは、複数の第2のデータ端子をそれぞれ備え、
前記複数の第2のデータ端子を互いにワイヤードOR接続し前記複数の第2のデータ端子を前記第1のデータ端子に電気的に接続するデータバスを備え、
前記各スレーブは、前記各スレーブが備える第2のデータ端子から前記第1の信号を送信し、
前記複数のスレーブは、前記複数のスレーブによりそれぞれ送信される複数の第1の信号を同時に送信し、
前記データバスは、前記複数の第1の信号を重ね合わせて第2の信号を生成し、前記第1のデータ端子まで前記第2の信号を伝送し、
前記マスタは、前記第1のデータ端子で前記第2の信号を受信する
請求項1に記載の電子機器。
【請求項3】
前記識別子は、複数のビットを含み、
前記各スレーブは、前記複数のビットの一部に基づいて前記位置を変更する
請求項1又は2に記載の電子機器。
【請求項4】
前記複数のスレーブに含まれる、前記割り込みが発生している割り込みスレーブは、第3の信号を前記マスタへ送信し、
前記マスタは、前記第3の信号を受信するのに応答して第4の信号を前記複数のスレーブへ送信し、
前記各スレーブは、前記第4の信号を受信するのに応答して前記第1の信号を送信する
請求項1に記載の電子機器。
【請求項5】
前記複数のスレーブは、共通アドレスを有し、
前記第4の信号は、前記共通アドレスを示す
請求項4に記載の電子機器。
【請求項6】
前記マスタは、第1のデータ端子と、第1の割り込み端子と、を備え、
前記複数のスレーブは、複数の第2のデータ端子をそれぞれ備え、複数の第2の割り込み端子をそれぞれ備え、
前記複数の第2のデータ端子を互いにワイヤードOR接続し前記複数の第2のデータ端子を前記第1のデータ端子に電気的に接続するデータバスと、
前記複数の第2の割り込み端子を互いにワイヤードOR接続し前記複数の第2の割り込み端子を前記第1の割り込み端子に電気的に接続する割り込みバスと、
を備え、
前記割り込みスレーブは、前記割り込みスレーブが備える第2の割り込み端子から前記第3の信号を送信し、
前記割り込みバスは、前記割り込みスレーブが備える第2の割り込み端子から前記第1の割り込み端子まで前記第3の信号を伝送し、
前記マスタは、前記第1の割り込み端子で前記第3の信号を受信し、前記第3の信号を受信するのに応答して前記第1のデータ端子から前記第4の信号を送信し、
前記データバスは、前記第1のデータ端子から前記複数の第2のデータ端子まで前記第4の信号を伝送し、
前記複数のスレーブは、前記複数の第2のデータ端子で前記第4の信号をそれぞれ受信し、
前記各スレーブは、前記第4の信号を受信するのに応答して前記各スレーブが備える第2のデータ端子から前記第1の信号を送信する
請求項4又は5に記載の電子機器。
【請求項7】
前記マスタは、前記複数のスレーブによりそれぞれ送信される複数の第1の信号を重ね合わせて生成された第2の信号に基づいて、前記複数のスレーブに含まれる、前記割り込みが発生している割り込みスレーブを特定し、第5の信号を前記複数のスレーブへ送信し、
前記割り込みスレーブは、前記第5の信号を受信するのに応答して第6の信号を前記マスタへ送信し、
前記マスタは、前記第6の信号を受信する
請求項1に記載の電子機器。
【請求項8】
前記第5の信号は、前記割り込みスレーブに付与された識別子を示し、
前記各スレーブは、前記第5の信号により示される識別子が前記各スレーブに付与された識別子と一致する場合に前記第6の信号を前記マスタへ送信し、前記第5の信号により示される識別子が前記各スレーブに付与された識別子と一致しない場合に前記第6の信号を前記マスタへ送信しない
請求項7に記載の電子機器。
【請求項9】
前記マスタは、第1のデータ端子を備え、
前記複数のスレーブは、複数の第2のデータ端子をそれぞれ備え、
前記複数の第2のデータ端子を互いにワイヤードOR接続し前記複数の第2のデータ端子を前記第1のデータ端子に電気的に接続するデータバスを備え、
前記マスタは、前記第1のデータ端子から前記第5の信号を送信し、
前記データバスは、前記第1のデータ端子から前記複数の第2のデータ端子まで前記第5の信号を伝送し、
前記割り込みスレーブは、前記割り込みスレーブが備える第2のデータ端子で前記第5の信号を受信し、前記第5の信号を受信するのに応答して前記割り込みスレーブが備える第2のデータ端子から前記第6の信号を送信し、
前記データバスは、前記割り込みスレーブが備える第2のデータ端子から前記第1のデータ端子まで前記第6の信号を伝送し、
前記マスタは、前記第1のデータ端子で前記第6の信号を受信する
請求項8に記載の電子機器。
【請求項10】
前記各スレーブは、シリアル通信で動作し動作完了の割り込み信号を出力する装置である
請求項7から9までのいずれかに記載の電子機器。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、電子機器に関する。
【背景技術】
【0002】
特許文献1は、デバイスを開示する。当該デバイスにおいては、IRQバスが、複数のスレーブデバイス及びマスタデバイスに結合される。各スレーブデバイスは、各スレーブデバイスの識別情報に対応する長さを有する期間にわたってIRQバスをドライブすることによって、割込み要求をアサートする。各スレーブデバイスは、各スレーブデバイスが属するグループに対して規定された幅を有するパルスを生成する。優先順位が高いスレーブデバイスには、長いパルス幅が割り当てられる。優先順位が低いスレーブデバイスには、短いパルス幅が割り当てられる。マスタデバイスは、IRQバスのアサーションの持続時間を用いて、アサート中スレーブデバイスを含む最も優先順位が高いグループを識別する。マスタデバイスは、IRQバス上で観察されたパルス幅が割り当てられたスレーブデバイス上のIRQステータスレジスタをスキャンする(段落0034,0035及び0036)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特表2016-532967号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に開示されたデバイスにおいては、IRQバスのアサーションの持続時間以下のパルス幅が割り当てられたグループに属するスレーブデバイスが割込み要求をアサートしていることを特定することができる。しかし、各スレーブデバイスが割込み要求をアサートしているか否かを特定するために、当該グループに属するスレーブデバイスをスキャンしなければならない。このため、割込み要求をアサートしたスレーブデバイスを特定するのに長時間を要する。
【0005】
本開示の一態様は、この問題に鑑みてなされた。本開示の一態様は、例えば、割り込みが発生しているスレーブを短時間で特定することができる電子機器を提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示の一態様の電子機器は、マスタと、互いに異なる複数の識別子がそれぞれ付与される複数のスレーブと、を備え、前記複数のスレーブに含まれる各スレーブは、前記各スレーブにおいて割り込みが発生しているか否かを示すビットを含むビット列を示す第1の信号を前記マスタへ送信し、前記各スレーブに付与された識別子に基づいて前記ビットの位置を変更する。
【図面の簡単な説明】
【0007】
図1】第1実施形態の電子機器のブロック図である。
図2】第1実施形態の電子機器の、当該電子機器に備えられるマスタの付近のブロック図である。
図3】第1実施形態の電子機器の、当該電子機器に備えられる各スレーブの付近のブロック図である。
図4】第1実施形態の電子機器に備えられる各スレーブに備えられる割り込み要求回路及びコントローラのブロック図である。
図5A】第1実施形態の電子機器に備えられるエンコーダにより得られる割り込みステータスを示す図である。
図5B】第1実施形態の電子機器に備えられるエンコーダにより得られる割り込みステータスを示す図である。
図5C】第1実施形態の電子機器に備えられるエンコーダにより得られる割り込みステータスを示す図である。
図5D】第1実施形態の電子機器に備えられるエンコーダにより得られる割り込みステータスを示す図である。
図6】第1実施形態の電子機器に備えられるスレーブに付与されたマルチスレーブアドレス(MSA)、当該スレーブにおいて割り込みが発生していない場合の割り込みステータスの値、及び当該スレーブにおいて割り込みが発生している場合の割り込みステータスの値の関係を示すテーブルである。
図7A】第1実施形態の電子機器に備えられるマスタと複数のスレーブとの間で行われる通信の流れを示すシーケンス図である。
図7B】第1実施形態の電子機器に備えられるマスタと複数のスレーブとの間で行われる通信の流れを示すシーケンス図である。
図7C】第1実施形態の電子機器に備えられるマスタと複数のスレーブとの間で行われる通信の流れを示すシーケンス図である。
図8】第1実施形態の電子機器に備えられるクロックバス、データバス、第1のデータ端子及び第2のデータ端子に与えられる電位の波形を示すタイミングチャートである。
図9】デイジーチェーン方式によりマルチスレーブアドレスが付与される場合の第1実施形態の電子機器のブロック図である。
【発明を実施するための形態】
【0008】
以下、本開示の実施形態について、図面を参照しつつ説明する。なお、図面については、同一又は同等の要素には同一の符号を付し、重複する説明は省略する。
【0009】
1 第1実施形態
1.1 割り込みが発生しているスレーブの特定
マスタが複数の割り込み端子を備え、複数の配線が複数のスレーブをマスタの複数の割り込み端子にそれぞれ接続する場合は、マスタは、割り込み信号が入力されたときに、割り込み信号が入力された割り込み端子に接続されたスレーブにおいて割り込みが発生していることを特定することができる。しかし、この場合は、スレーブの数が増えるにつれて配線の数が増える。このため、スレーブの数が増えるにつれて配線が占める面積が大きくなる。
【0010】
マスタが複数のスレーブに共通の割り込み端子を備え、配線が複数のスレーブをマスタの割り込み端子に接続する場合は、マスタは、割り込み信号が入力されたときに、割り込みが発生しているスレーブを特定することができない。このため、マスタは、各スレーブにおいて割り込みが発生しているか否かをひとつづつ確認する。この方式は、ポーリング方式とも呼ばれる。しかし、この場合は、スレーブの数が増えるにつれて割り込みが発生しているか否かを確認するのに要する時間が長くなる。
【0011】
第1実施形態は、これらの問題に鑑みて、スレーブの数が増えた場合でも、配線が占める面積が大きくならず、割り込みが発生しているか否かを確認するのに要する時間が長くならない電子機器を提供する。
【0012】
1.2 電子機器
図1は、第1実施形態の電子機器のブロック図である。
【0013】
図1に図示される第1実施形態の電子機器1は、ロボット掃除機である。電子機器1は、周辺の状況を検知し、検知した周辺の状況に基づいて掃除を行う。電子機器1が、ロボット掃除機以外の電子機器であってもよい。
【0014】
図1に図示されるように、電子機器1は、マスタ11、複数のスレーブ21,22及び23、クロックバス31、データバス32、割り込みバス33、プルアップ抵抗41、プルアップ抵抗42、プルアップ抵抗43並びに電源線51を備える。マスタ11は、第1のクロック(SCL)端子11a、第1のデータ(SDA)端子11b及び第1の割り込み端子(INT)11cを備える。複数のスレーブ21,22及び23は、複数の第2のクロック(SCL)端子21a,22a及び23aをそれぞれ備え、複数の第2のデータ(SDA)端子21b,22b及び23bをそれぞれ備え、複数の第2の割り込み(INT)端子21c,22c及び23cをそれぞれ備える。第1実施形態においては、複数のスレーブ21,22及び23は、3つのスレーブである。電子機器が備えるスレーブの数が増減されてもよい。電子機器が備えるスレーブの数は、クロックバス31及びデータバス32の性能の範囲内において、増やすことができる。
【0015】
マスタ11並びに複数のスレーブ21,22及び23は、電子回路である。電子回路は、集積回路、ディスクリート回路等を含む。クロックバス31、データバス32及び割り込みバス33は、配線である。配線は、プリント基板に備えられるパターン、電線等を含む。
【0016】
第1のクロック端子11a並びに第2のクロック端子21a,22a及び23aは、共通のクロックバス31に電気的に接続される。これにより、クロックバス31は、第2のクロック端子21a,22a及び23aを第1のクロック端子11aに電気的に接続する。
【0017】
第1のデータ端子11b並びに第2のデータ端子21b,22b及び23bは、共通のデータバス32に電気的に接続される。これにより、データバス32は、第2のデータ端子21b,22b及び23bを第1のデータ端子11bに電気的に接続する。
【0018】
第1の割り込み端子11c並びに第2の割り込み端子21c,22c及び23cは、共通の割り込みバス33に電気的に接続される。これにより、割り込みバス33は、第2の割り込み端子21c,22c及び23cを第1の割り込み端子11cに電気的に接続する。
【0019】
プルアップ抵抗41の一端は、クロックバス31に接続される。プルアップ抵抗41の他端は、電源線51に接続される。プルアップ抵抗42の一端は、データバス32に接続される。プルアップ抵抗42の他端は、電源線51に接続される。プルアップ抵抗43の一端は、割り込みバス33に接続される。プルアップ抵抗43の他端は、電源線51に接続される。これにより、クロックバス31、データバス32及び割り込みバス33は、電源線51にプルアップされる。電源線51には、電源電位VIOが与えられる。これにより、クロックバス31、データバス32及び割り込みバス33には、電源電位VIOに相当する電位High(H)が与えられる。
【0020】
マスタ11は、第1のクロック端子11aから、クロック信号を送信する。クロックバス31は、第1のクロック端子11aから第2のクロック端子21a,22a及び23aまで、送信されたクロック信号を伝送する。スレーブ21,22及び23は、第2のクロック端子21a,22a及び23aで、伝送されてきたクロック信号をそれぞれ受信する。これにより、マスタ11は、クロック信号をスレーブ21,22及び23へ送信する。
【0021】
マスタ11は、第1のデータ端子11bから、データ信号を送信する。データバス32は、第1のデータ端子11bから第2のデータ端子21b,22b及び23bまで、送信されたデータ信号を伝送する。スレーブ21,22及び23は、第2のデータ端子21b,22b及び23bで、伝送されてきたデータ信号をそれぞれ受信する。これにより、マスタ11は、データ信号をスレーブ21,22及び23へ送信する。マスタ11は、第1のクロック端子11aから送信するクロック信号に同期してデータ信号を送信する。スレーブ21,22及び23は、第2のクロック端子21a,22a及び23aで受信したクロック信号に同期してデータ信号をそれぞれ受信する。
【0022】
スレーブ21,22及び23に含まれる各スレーブ20は、各スレーブ20が備える第2のデータ端子20bから、データ信号を送信する。データバス32は、第2のデータ端子20bから第1のデータ端子11bまで、送信されたデータ信号を伝送する。マスタ11は、第1のデータ端子11bで、伝送されてきたデータ信号を受信する。これにより、各スレーブ20は、データ信号をマスタ11へ送信する。各スレーブ20は、各スレーブ20が備える第2のクロック端子20aで受信したクロック信号に同期してデータ信号を送信する。マスタ11は、第1のクロック端子11aから送信するクロック信号に同期してデータ信号を受信する。
【0023】
各スレーブ20は、各スレーブ20が備える第2の割り込み端子20cから割り込み信号を送信する。割り込みバス33は、第2の割り込み端子20cから第1の割り込み端子11cまで、送信された割り込み信号を伝送する。マスタ11は、第1の割り込み端子11cで、伝送されてきた割り込み信号を受信する。これにより、各スレーブ20は、割り込み信号をマスタ11へ送信する。
【0024】
クロックバス31及びデータバス32は、シリアルバスである。このため、クロックバス31は、シリアルクロックバスである。データバス32は、シリアルデータバスである。第1のクロック端子11a並びに第2のクロック端子21a,22a及び23aは、シリアルクロック端子である。第1のデータ端子11b並びに第2のデータ端子21b,22b及び23bは、シリアルデータ端子である。シリアルバスは、アイ・スクエアド・シー(IC)バスである。
【0025】
各スレーブ20は、シリアル通信で動作し動作完了の割り込み信号を出力する装置である。第1実施形態においては、各スレーブ20は、測定を行って測定値を取得するセンサである。各スレーブ20が、センサ以外の装置であってもよい。
【0026】
スレーブ21,22及び23に含まれる、マスタ11へ送信する測定値を取得したスレーブ(以下では、「割り込みスレーブ」という)は、割り込み信号をマスタ11へ送信する。マスタ11は、送信された割り込み信号を受信した場合に、測定値の読み出しの要求を示す信号を割り込みスレーブへ送信する。割り込みスレーブは、送信された測定値の読み出しの要求を示す信号を受信するのに応答して、測定値を示す信号をマスタ11へ送信する。マスタ11は、送信された測定値を示す信号を受信する。マスタ11又はマスタ11と通信可能に接続されたコントローラは、受信された信号により示される測定値を電子機器1の制御に用いる。例えば、各スレーブ20は、距離の測定を行って距離の測定値を取得するタイムオブフライト(TOF)センサである。また、マスタ11又はコントローラは、距離の測定値をロボット掃除の自動走行の制御に用いる。
【0027】
マスタ11は、受信した割り込み信号そのものから割り込み信号を送信した割り込みスレーブを特定することができない。このため、電子機器1には、マスタ11が割り込み信号を受信した後にマスタ11が割り込みスレーブを特定するための機能が実装される。
【0028】
スレーブ21,22及び23は、共通アドレスを有する。共通アドレスは、グローバルアドレス(GA)とも呼ばれる。複数のスレーブ21,22及び23は、互いに異なる複数の固有アドレスをそれぞれ有する。複数の固有アドレスは、マルチスレーブアドレス(MSA)とも呼ばれる。複数のMSAは、複数のスレーブ21,22及び23を互いに識別するための識別子である。第1実施形態においては、複数のMSAは、マスタ11により付与される。マスタ11が複数のスレーブ21,22及び23にMSAを付与しない場合もある。例えば、複数のスレーブ21,22及び23が既に識別することができるデバイスである場合は、マスタ11は複数のスレーブ21,22及び23にMSAを付与しない。
【0029】
マスタ11は、アドレス及びリード要求を示すデータ信号を送信することにより、当該アドレスを有するスレーブに、ビット列を示すデータ信号を送信させることができる。また、マスタ11は、送信された、ビット列を示すデータ信号を受信することができる。マスタ11は、アドレスをGAとすることにより、スレーブ21,22及び23に、ビット列を示すデータ信号を送信させることができる。マスタ11は、アドレスをMSAとすることにより、スレーブ21,22及び23に含まれる、当該MSAと一致するMSAが付与されたスレーブに、ビット列を示すデータ信号を送信させることができる。
【0030】
マスタ11は、アドレス及びライト要求を示すデータ信号を送信し、ビット列を示すデータ信号を続いて送信することにより、当該アドレスを有するスレーブに、ビット列を示すデータ信号を受信させることができる。マスタ11は、アドレスをGAとすることにより、スレーブ21,22及び23に、ビット列を示すデータ信号を受信させることができる。マスタ11は、アドレスをMSAとすることにより、スレーブ21,22及び23に含まれる、当該MSAと一致するMSAを有するスレーブに、ビット列を示すデータ信号を受信させることができる。
【0031】
1.3 マスタ
図2は、第1実施形態の電子機器の、当該電子機器に備えられるマスタの付近のブロック図である。
【0032】
図2に図示されるように、マスタ11は、コントローラ71、バッファ72、バッファ73、バッファ74、バッファ75、プルダウントランジスタ76及びプルダウントランジスタ77を備える。
【0033】
第1のクロック端子11aは、バッファ72の入力端子に電気的に接続される。バッファ72の出力端子は、コントローラ71に電気的に接続される。これにより、コントローラ71には、第1のクロック端子11aから送信されるクロック信号がバッファ72を経由して入力される。
【0034】
第1のデータ端子11bは、バッファ73の入力端子に電気的に接続される。バッファ73の出力端子は、コントローラ71に電気的に接続される。これにより、コントローラ71には、第1のデータ端子11bから送信されるデータ信号又は第1のデータ端子11bで受信されたデータ信号がバッファ73を経由して入力される。
【0035】
コントローラ71は、バッファ74の入力端子に電気的に接続される。バッファ74の出力端子は、プルダウントランジスタ76のゲートに電気的に接続される。プルダウントランジスタ76のドレインは、第1のクロック端子11aに電気的に接続される。プルダウントランジスタ76のソースは、グランド91に電気的に接続される。グランド91には、グランド電位が与えられる。プルダウントランジスタ76は、プルダウントランジスタ76のゲートにオン電位Hが与えられた場合は、プルダウントランジスタ76のドレインをプルダウントランジスタ76のソースと導通させ、第1のクロック端子11aをグランド91にプルダウンし、第1のクロック端子11aにグランド電位に相当する電位Low(L)を与える。プルダウントランジスタ76は、プルダウントランジスタ76のゲートにオフ電位Lが与えられた場合は、プルダウントランジスタ76のドレインをプルダウントランジスタ76のソースと導通させず、第1のクロック端子11aに電位Hを与える。コントローラ71は、バッファ74を経由してプルダウントランジスタ76のゲートにオン電位H又はオフ電位Lを与える。これにより、コントローラ71は、マスタ11に、第1のクロック端子11aからクロック信号を送信させる。
【0036】
コントローラ71は、バッファ75の入力端子に電気的に接続される。バッファ75の出力端子は、プルダウントランジスタ77のゲートに電気的に接続される。プルダウントランジスタ77のドレインは、第1のデータ端子11bに電気的に接続される。プルダウントランジスタ77のソースは、グランド91に電気的に接続される。プルダウントランジスタ77は、プルダウントランジスタ77のゲートにオン電位Hが与えられた場合は、プルダウントランジスタ77のドレインをプルダウントランジスタ77のソースと導通させ、第1のデータ端子11bをグランド91にプルダウンし、第1のデータ端子11bに電位Lを与える。プルダウントランジスタ77は、プルダウントランジスタ77のゲートにオフ電位Lが与えられた場合は、プルダウントランジスタ77のドレインをプルダウントランジスタ77のソースと導通させず、第1のデータ端子11bに電位Hを与える。コントローラ71は、バッファ75を経由してプルダウントランジスタ77のゲートにオン電位H又はオフ電位Lを与える。これにより、コントローラ71は、マスタ11に、第1のデータ端子11bからデータ信号を送信させる。
【0037】
1.4 スレーブ
図3は、第1実施形態の電子機器の、当該電子機器に備えられる各スレーブの付近のブロック図である。
【0038】
図3に図示されるように、各スレーブ20は、割り込み要求回路111、コントローラ112、バッファ113、バッファ114、バッファ115、バッファ116、バッファ117、プルダウントランジスタ118、プルダウントランジスタ119及びプルダウントランジスタ120を備える。
【0039】
割り込み要求回路111は、マスタ11に送信する測定値が取得された場合に、割り込みを要求する。割り込み要求回路111は、割り込みを要求するか否かを示す電位141をコントローラ112に与える。割り込み要求回路111は、割り込みを要求する場合に、電位141を電位Hとする。割り込み要求回路111は、割り込みを要求しない場合に、電位141を電位Lとする。
【0040】
各スレーブ20が備える第2のクロック端子20aは、バッファ113の入力端子に電気的に接続される。バッファ113の出力端子は、コントローラ112に電気的に接続される。これにより、コントローラ112には、第2のクロック端子20aで受信されたクロック信号がバッファ113を経由して入力される。
【0041】
各スレーブ20が備える第2のデータ端子20bは、バッファ114の入力端子に電気的に接続される。バッファ114の出力端子は、コントローラ112に電気的に接続される。これにより、コントローラ112には、第2のデータ端子20bから送信されるデータ信号又は第2のデータ端子20bで受信されたデータ信号がバッファ114を経由して入力される。
【0042】
コントローラ112は、バッファ115の入力端子に電気的に接続される。バッファ115の出力端子は、プルダウントランジスタ118のゲートに電気的に接続される。プルダウントランジスタ118のドレインは、第2のクロック端子20aに電気的に接続される。プルダウントランジスタ118のソースは、グランド91に電気的に接続される。プルダウントランジスタ118は、プルダウントランジスタ118のゲートにオン電位Hが与えられた場合は、プルダウントランジスタ118のドレインをプルダウントランジスタ118のソースと導通させ、第2のクロック端子20aをグランド91にプルダウンし、第2のクロック端子20aに電位Lを与える。プルダウントランジスタ118は、プルダウントランジスタ118のゲートにオフ電位Lが与えられた場合は、プルダウントランジスタ118のドレインをプルダウントランジスタ118のソースと導通させず、第2のクロック端子20aに電位Hを与える。コントローラ112は、バッファ115を経由してプルダウントランジスタ118のゲートにオン電位H又はオフ電位Lを与える。
【0043】
コントローラ112は、バッファ116の入力端子に電気的に接続される。バッファ116の出力端子は、プルダウントランジスタ119のゲートに電気的に接続される。プルダウントランジスタ119のドレインは、第2のデータ端子20bに電気的に接続される。プルダウントランジスタ119のソースは、グランド91に電気的に接続される。プルダウントランジスタ119は、プルダウントランジスタ119のゲートにオン電位Hが与えられた場合は、プルダウントランジスタ119のドレインをプルダウントランジスタ119のソースと導通させ、第2のデータ端子20bをグランド91にプルダウンし、第2のデータ端子20bに電位Lを与える。プルダウントランジスタ119は、プルダウントランジスタ119のゲートにオフ電位Lが与えられた場合は、プルダウントランジスタ119のドレインをプルダウントランジスタ119のソースと導通させず、第2のデータ端子20bに電位Hを与える。コントローラ112は、バッファ116を経由してプルダウントランジスタ119のゲートにオン電位H又はオフ電位Lを与える。これにより、コントローラ112は、各スレーブ20に、第2のデータ端子20bからデータ信号を送信させる。
【0044】
コントローラ112は、バッファ117の入力端子に電気的に接続される。バッファ117の出力端子は、プルダウントランジスタ120のゲートに電気的に接続される。プルダウントランジスタ120のドレインは、各スレーブ20が備える第2の割り込み端子20cに電気的に接続される。プルダウントランジスタ120のソースは、グランド91に電気的に接続される。プルダウントランジスタ120は、プルダウントランジスタ120のゲートにオン電位Hが与えられた場合は、プルダウントランジスタ120のドレインをプルダウントランジスタ120のソースと導通させ、第2の割り込み端子20cをグランド91にプルダウンし、第2の割り込み端子20cに電位Lを与える。プルダウントランジスタ120は、プルダウントランジスタ120のゲートにオフ電位Lが与えられた場合は、プルダウントランジスタ120のドレインをプルダウントランジスタ120のソースと導通させず、第2の割り込み端子20cに電位Hを与える。コントローラ112は、バッファ117を経由してプルダウントランジスタ120のゲートにオン電位H又はオフ電位Lを与える。これにより、コントローラ112は、各スレーブ20に、第2の割り込み端子20cから割り込み信号を送信させる。コントローラ112は、割り込み要求回路111により与えられた電位をプルダウントランジスタ120のゲートに与える。このため、第2の割り込み端子20cには、割り込みが発生している場合に、電位Lが与えられる。第2の割り込み端子20cには、割り込みが発生していない場合に、電位Hが与えられる。電位L及び電位Hは、論理値1及び論理値0を示す。論理値1及び論理値0は、互いに反転している。したがって、第2の割り込み端子20cに与えられる電位により示される論理値は、割り込み要求回路111により与えられる電位に示される論理値から反転している。
【0045】
これらにより、第2のクロック端子20aは、入力及び出力の両方に用いることができる。また、第2のデータ端子20bは,入力及び出力の両方に用いることができる。また、第2の割り込み端子20cは、出力に用いることができる。
【0046】
第2のデータ端子21b,22b及び23bは、オープンドレイン出力である。第2のデータ端子21b,22b及び23bは、共通のデータバス32に接続される。このため、データバス32は、第2のデータ端子21b,22b及び23bを互いにワイヤードOR接続する。このため、第2のデータ端子21b,22b及び23bのいずれかに電位Lが与えられた場合は、第1のデータ端子11b並びに第2のデータ端子21b,22b及び23bの全部に電位Lが与えられる。この点は、第2のデータ端子21b,22b及び23bがオープンコレクタ出力であっても同様である。
【0047】
第2の割り込み端子21c,22c及び23cは、オープンドレイン出力である。第2の割り込み端子21c,22c及び23cは、共通の割り込みバス33に接続される。このため、割り込みバス33は、第2の割り込み端子21c,22c及び23cを互いにワイヤードOR接続する。このため、第2の割り込み端子21c,22c及び23cのいずれかに電位Lが与えられた場合は、第1の割り込み端子11c並びに第2の割り込み端子21c,22c及び23cの全部に電位Lが与えられる。この点は、第2の割り込み端子21c,22c及び23cがオープンコレクタ出力であっても同様である。
【0048】
1.5 スレーブのコントローラ
図4は、第1実施形態の電子機器に備えられる各スレーブに備えられる割り込み要求回路及びコントローラのブロック図である。
【0049】
図4に図示されるように、各スレーブ20に備えられるコントローラ112は、MSA出力部161、エンコーダ162及びインターフェース163を備える。インターフェース163は、レジスタ181を備える。
【0050】
MSA出力部161は、各スレーブ20が有するMSA201を出力する。各スレーブ20が有するMSA201は、他のスレーブが有するMSAと異なる、各スレーブ20に固有の識別子である。出力されるMSA201は、複数のビットを含むビット列である。第1実施形態においては、複数のビットは、8つのビットである。MSA201を出力するMSA出力部161は、各スレーブ20に固有の識別子を出力する識別子出力部の例である。このため、コントローラ112が、MSA出力部161に代えて、MSA201以外の識別子を出力する識別子出力部を備えてもよい。MSA201以外の識別子は、各スレーブ20に備えられるワンタイムプログラマブル(OTP)メモリに記憶させられた値、各スレーブ20に備えられる端子に与えられる電位を示す値等である。ただし、MSA201は、MSA201以外の識別子と比較して、効率的に設定することができ、電子機器1を構成する回路を簡単にすることができる。
【0051】
エンコーダ162は、出力されたMSA201に応じて、与えられた電位141を、割り込みステータス202にエンコードする。エンコードにより得られる割り込みステータス202は、複数のビットを含むビット列である。第1実施形態においては、複数のビットは、8つのビットである。割り込みステータス202は、各スレーブ20において割り込みが発生しているか否かを示すビットを含む。当該ビットの値は、割り込み要求回路111により与えられた電位141を示す値から反転している。このため、当該ビットの値が0であることは、割り込みが発生していることを示す。当該ビットの値が1であることは、割り込みが発生していないことを示す。エンコーダ162は、MSA201に基づいて、割り込みが発生しているか否かを示すビットの位置を変更する。これにより、当該位置により、割り込みが発生している割り込みスレーブを特定することができる。エンコーダ162は、MSA201に含まれる複数のビットの一部に基づいて、当該位置を変更する。例えば、エンコーダ162は、複数のビットに含まれる下位の3ビットに基づいて、当該位置を変更する。これにより、電位141を効率的にエンコードすることができ、電子機器1を構成する回路を簡単にすることができる。エンコーダ162は、割り込みステータス202をレジスタ181に設定する。
【0052】
インターフェース163は、バッファ113,114,115及び116に電気的に接続される。インターフェース163は、各スレーブ20が有するGA及びリード要求を示すデータ信号が第2のデータ端子20bで受信されるのに応答して、各スレーブ20に、レジスタ181に設定された割り込みステータス202を示すデータ信号を第2のデータ端子20bから送信させる。インターフェース163は、ICインターフェースである。
【0053】
1.6 割り込みステータス
図5Aから図5Dまでは、第1実施形態の電子機器に備えられるエンコーダにより得られる割り込みステータスを示す図である。
【0054】
図5Aから図5Dまでに示されるように、割り込みステータス202は、第1のビット221、第2のビット222、第3のビット223、第4のビット224、第5のビット225、第6のビット226、第7のビット227及び第8のビット228を含む。第1のビット221、第2のビット222、第3のビット223、第4のビット224、第5のビット225、第6のビット226、第7のビット227及び第8のビット228は、記載された順に上位から下位へ配列される。エンコーダ162は、各スレーブ20が有するMSA201の下位の3ビットの値と一致する回数だけ、各スレーブ20において割り込みが発生しているか否かを示すビットを、最下位の第8のビット228から上位へシフトする。これにより、エンコーダ162は、当該値に基づいて当該位置を変更する。他の方法により、当該値に基づいて当該位置が変更されてもよい。
【0055】
各スレーブ20は、マスタ11によりMSA201が付与されていない場合は、MSA[00h]を有する。このため、マスタ11により各スレーブ20にMSA201が付与されていない場合でもエンコーダ162がMSA201に応じて電位141を割り込みステータス202にエンコードするときは、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23により得られる割り込みステータス202においては、MSA[00h]の下位の3ビットの値「0x0」に対応する第8のビット228が、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23において割り込みが発生しているか否かを示す。例えば、図5Aに示されるように、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23がGA200(GA「0x29」)を有するが、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23にMSA201が付与されていない場合は、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23により得られる割り込みステータス202においては、共通の第8のビット228が、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23において割り込みが発生しているか否かを示す。一方、マスタ11により各スレーブ20にMSA201が付与されていない場合はエンコーダ162が電位141を割り込みステータス202にエンコードしないときは、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23により得られる割り込みステータス202は、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23において割り込みが発生しているか否かを示すビットを含まない。
【0056】
図5Bに示されるように、第1のスレーブ21にMSA201(MSA「0x40」)が付与された場合は、第1のスレーブ21に備えられるエンコーダ162は、第1のスレーブ21に付与されたMSA「0x40」の下位の3ビットの値「0x0」と一致する回数である0回だけ、第1のスレーブ21において割り込みが発生しているか否かを示すビットを、最下位の第8のビット228から上位へシフトする。すなわち、当該ビットを、最下位の第8のビット228からシフトしない。このため、第1のスレーブ21により得られる割り込みステータス202においては、最下位の第8のビット228が、第1のスレーブ21において割り込みが発生しているか否かを示す。
【0057】
図5Cに示されるように、第2のスレーブ22にMSA201(MSA「0x41」)がさらに付与された場合は、第2のスレーブ22に備えられるエンコーダ162は、第2のスレーブ22に付与されたMSA「0x41」の下位の3ビットの値「0x1」と一致する回数である1回だけ、第2のスレーブ22において割り込みが発生しているか否かを示すビットを、最下位の第8のビット228から上位へシフトする。このため、第2のスレーブ22により得られる割り込みステータス202においては、最下位の第8のビット228より1桁上位の第7のビット227が、第2のスレーブ22において割り込みが発生しているか否かを示す。
【0058】
図5Dに示されるように、第3のスレーブ23にMSA201(MSA「0x42」)がさらに付与された場合は、第3のスレーブ23に備えられるエンコーダ162は、第3のスレーブ23に付与されたMSA「0x42」の下位の3ビットの値「0x2」と一致する回数である2回だけ、第3のスレーブ23において割り込みが発生しているか否かを示すビットを、最下位の第8のビット228から上位へシフトする。このため、第3のスレーブ23により得られる割り込みステータス202においては、最下位の第8のビット228より2桁上位の第6のビット226が、第3のスレーブ23において割り込みが発生しているか否かを示す。
【0059】
図5Bから図5Dまでに示されるように、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23において割り込みが発生しているか否かをそれぞれ示す第8のビット228、第7のビット227及び第6のビット226の位置は、互いに異なる。このため、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23により得られる割り込みステータス202からは、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23において割り込みが発生しているか否かをそれぞれ特定することができる。このことは、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23により得られた割り込みステータス202が論理和により重ねられても、同様である。マスタ11は、このことを利用して、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23において割り込みが発生しているか否かを特定する。
【0060】
マスタ11が1回のリード要求により割り込みが発生しているか否かを特定することができるスレーブの数は、マスタ11と各スレーブ20との間で行われる通信のビット数に依存する。例えば、マスタ11と各スレーブ20との間で行われる通信のビット数が8ビットである場合は、マスタ11が割り込みが発生しているか否かを特定することができるスレーブの数は、8つである。
【0061】
1.7 割り込みステータスの値
図6は、第1実施形態の電子機器に備えられるスレーブに付与されたMSA、当該スレーブにおいて割り込みが発生していない場合の割り込みステータスの値、及び当該スレーブにおいて割り込みが発生している場合の割り込みステータスの値の関係を示すテーブルである。
【0062】
上述したように、各スレーブ20により得られた割り込みステータス202に含まれる、割り込みが発生しているか否かを示すビットは、各スレーブ20に付与されたMSA201の下位の3ビットの値と一致する回数だけ、最下位の第8のビット228から上位へシフトされる。このため、図6に示されるように、各スレーブ20に付与されたMSA201が「0x40」、「0x41」、「0x42」、「0x43」、「0x44」、「0x45」、「0x46」及び「0x47」である場合は、各スレーブ20において割り込みが発生しているか否かを示すビットは、それぞれ、第8のビット228、第7のビット227、第6のビット226、第5のビット225、第4のビット224、第3のビット223、第2のビット222及び第1のビット221となる。これにより、第8のビット228、第7のビット227、第6のビット226、第5のビット225、第4のビット224、第3のビット223、第2のビット222及び第1のビット221が、MSA「0x40」、「0x41」、「0x42」、「0x43」、「0x44」、「0x45」、「0x46」、「0x47」及び「0x48」にそれぞれ対応づけられる。
【0063】
各スレーブ20により得られた割り込みステータス202に含まれる、割り込みが発生しているか否かを示すビットは、各スレーブ20において割り込みが発生している場合は、値「0」を有する。当該ビットは、各スレーブ20において割り込みが発生していない場合は、値「1」を有する。各スレーブ20により得られた割り込みステータス202に含まれる、当該ビット以外のビットは、値「1」を有する。
【0064】
このため、各スレーブ20において割り込みが発生していない場合は、各スレーブ20により得られた割り込みステータス202に含まれる8つのビットの全部が、値「1」を有する。各スレーブ20において割り込みが発生している場合は、当該8つのビットのうちの1つのビットが、値「0」を有し、当該8つのビットのうちの7つのビットが、値「1」を有する。このため、値「0」を有するビットの有無から割り込みが発生しているか否かを特定することができる。また、値「0」を有するビットの位置から割り込みが発生している割り込みスレーブを特定することができる。
【0065】
1.8 マスタ及び複数のスレーブの間で行われる通信
図7Aから図7Cまでは、第1実施形態の電子機器に備えられるマスタと複数のスレーブとの間で行われる通信の流れを示すシーケンス図である。
【0066】
図7Aに図示されるように、ステップS1においては、マスタ11が、第1のデータ端子11bから、第7の信号371を送信する。送信される第7の信号371は、第1のスレーブ21に付与されるMSA201(MSA「0x40」)を示す。データバス32は、第1のデータ端子11bから第2のデータ端子21bまで、送信された第7の信号371を伝送する。第1のスレーブ21は、第2のデータ端子21bで、伝送されてきた第7の信号371を受信する。これにより、マスタ11は、第1のスレーブ21に付与されるMSA「0x40」を示す第7の信号371を第1のスレーブ21へ送信する。第1のスレーブ21は、受信した第7の信号371により示されるMSA「0x40」を第1のスレーブ21のMSAに設定する。
【0067】
続くステップS2においては、マスタ11が、第1のデータ端子11bから、第7の信号372を送信する。送信される第7の信号372は、第2のスレーブ22に付与されるMSA201(MSA「0x41」)を示す。データバス32は、第1のデータ端子11bから第2のデータ端子22bまで、送信された第7の信号372を伝送する。第2のスレーブ22は、第2のデータ端子22bで、伝送されてきた第7の信号372を受信する。これにより、マスタ11は、第2のスレーブ22に付与されるMSA「0x41」を示す第7の信号372を第2のスレーブ22へ送信する。第2のスレーブ22は、受信した第7の信号372により示されるMSA「0x41」を第2のスレーブ22のMSAに設定する。
【0068】
続くステップS3においては、マスタ11が、第1のデータ端子11bから、第7の信号373を送信する。送信される第7の信号373は、第3のスレーブ23に付与されるMSA201(MSA「0x42」)を示す。データバス32は、第1のデータ端子11bから第2のデータ端子23bまで、送信された第7の信号373を伝送する。第3のスレーブ23は、第2のデータ端子23bで、伝送されてきた第7の信号373を受信する。これにより、マスタ11は、第3のスレーブ23に付与されるMSA「0x42」を示す第7の信号373を第3のスレーブ23へ送信する。第3のスレーブ23は、受信した第7の信号373により示されるMSA「0x42」を第3のスレーブ23のMSAに設定する。
【0069】
ステップS1からS3までにおけるMSAの設定は、任意の方法により行うことができる。例えば、MSAの設定は、デイジーチェーン方式(Daisy-Chain方式)、イネーブル(En)方式、ヒューズトリム(Fuse_trim)方式等により行うことができる。これらのうち、デイジーチェーン方式によるMSAの設定の例については、後述する。
【0070】
図7Bに示されるように、続くステップS4においては、スレーブ21,22及び23に含まれる、割り込みが発生している割り込みスレーブである第2のスレーブ22及び第3のスレーブ23が、第2の割り込み端子22c及び23cから、第3の信号332及び333をそれぞれ送信する。送信される第3の信号332及び333は、それぞれ、第2のスレーブ22及び第3のスレーブ23において割り込みが発生していることを示す割り込み信号である。割り込みバス33は、第2の割り込み端子22c及び23cから第1の割り込み端子11cまで、送信された第3の信号332及び333をそれぞれ伝送する。マスタ11は、第1の割り込み端子11cで、伝送されてきた第3の信号332及び333を受信する。これにより、第2のスレーブ22及び第3のスレーブ23は、第3の信号332及び333をマスタ11へそれぞれ送信する。第2の割り込み端子21c,22c及び23cは、割り込みバス33によりワイヤードOR接続されている。このため、スレーブ21,22及び23のいずれかにおいて割り込みが発生している場合は、どのスレーブにおいて割り込みが発生しているかにかかわらず、第1の割り込み端子11c、第2の割り込み端子21c,22c及び23c並びに割り込みバス33に電位Lが与えられる。このため、マスタ11は、割り込み信号を受信した場合に、スレーブ21,22及び23のいずれかにおいて割り込みが発生していることを特定することができるが、どのスレーブにおいて割り込みが発生しているのかを特定することはできない。
【0071】
続くステップS5においては、マスタ11が、第3の信号332及び333を受信するのに応答して、第1のデータ端子11bから、第4の信号340を送信する。送信される第4の信号340は、GA200(GA「0x29」)及びリード要求250を示す。データバス32は、第1のデータ端子11bから第2のデータ端子21b,22b及び23bまで、第4の信号340を伝送する。これにより、マスタ11は、第3の信号332及び333を受信するのに応答して、第4の信号340をスレーブ21,22及び23へ送信する。
【0072】
続くステップS6においては、スレーブ21,22及び23が、第4の信号340を受信するのに応答して、第2のデータ端子21b,22b及び23bから第1の信号311,312及び313をそれぞれ送信する。送信される第1の信号311,312及び313は、スレーブ21,22及び23により得られた割り込みステータス202(割り込みステータス「11111111」、「11111101」及び「11111011」)をそれぞれ示す。
【0073】
スレーブ21,22及び23は、第1の信号311,312及び313を同時に送信する。データバス32は、第2のデータ端子21b,22b及び23bをワイヤードOR接続する。このため、データバス32は、同時に送信された複数の第1の信号311,312及び313を重ね合わせて第2の信号320を生成し、第1のデータ端子11bまで、生成した第2の信号320を伝送する。マスタ11は、第1のデータ端子11bで、伝送されてきた第2の信号320を受信する。第2の信号320により示される、重ねあわされた割り込みステータス251(重ねあわされた割り込みステータス「11111001」)に含まれる第iのビットの値は、第1の信号311,312及び313によりそれぞれ示される割り込みステータス202(割り込みステータス「11111111」、「11111101」及び「11111011」)に含まれる第iのビットの値の論理和となる。例えば、重ねあわされた割り込みステータス「11111001」に含まれる第7のビット227の値「0」は、第1の信号311,312及び313によりそれぞれ示される割り込みステータス「11111111」、「11111101」及び「11111011」に含まれる第7のビットの値「1」、「0」及び「1」の論理和となる。
【0074】
マスタ11は、重ねあわされた割り込みステータス251(重ねあわされた割り込みステータス「11111001」)に含まれる、割り込みが発生していることを示す値「0」を有する第7のビット227及び第6のビット226が対応づけられたMSA「0x41」及びMSA「0x42」が付与された第2のスレーブ22及び第3のスレーブ23が、割り込みが発生している割り込みスレーブであると判定する。これにより、マスタ11は、第2の信号320に基づいて、割り込みが発生している割り込みスレーブを特定する。マスタ11は、第2の信号320を1回受信するだけで、割り込みスレーブを特定することができる。これにより、割り込みスレーブを短時間で特定することができる。
【0075】
図7Cに示されるように、続くステップS7においては、マスタ11が、第1のデータ端子11bから、第5の信号352を送信する。送信される第5の信号352は、割り込みが発生している割り込みスレーブであると判定された第2のスレーブ22に付与されたMSA201(MSA「0x41」)及び測定値の読み出しの要求252を示す。データバス32は、第1のデータ端子11bから第2のデータ端子21b,22b及び23bまで、送信された第5の信号352を伝送する。これにより、マスタ11は、第5の信号352をスレーブ21,22及び23へ送信する。
【0076】
続くステップS8においては、各スレーブ20が、第2のデータ端子20bで、伝送されてきた第5の信号352を受信し、受信した第5の信号352により示されるMSA201(MSA「0x41」)が各スレーブ20に付与されたMSAと一致する場合に、第2のデータ端子20bから、第6の信号362を送信する。各スレーブ20は、受信した第5の信号352により示されるMSA「0x41」が各スレーブ20が有するMSAと一致しない場合に、第6の信号362を送信しない。これにより、第5の信号352により示されるMSA「0x41」と一致するMSA「0x41」を有し、割り込みが発生している割り込みスレーブであると判定された第2のスレーブ22は、第2のデータ端子22bで、第5の信号352を受信する。第2のスレーブ22は、第5の信号352を受信するのに応答して、第2のデータ端子22bから、第6の信号362を送信する。送信される第6の信号362は、第2のスレーブ22により測定された測定値262を示す。データバス32は、第2のデータ端子22bから第1のデータ端子11bまで、送信された第6の信号362を伝送する。マスタ11は、第1のデータ端子11bで、伝送されてきた第6の信号362を受信する。これにより、第2のスレーブ22は、送信された第5の信号352を受信するのに応答して、第6の信号362をマスタ11へ送信する。マスタ11は、第1のデータ端子11bで、送信された第6の信号362を受信する。これより、マスタ11は、第2のスレーブ22により取得された測定値262を取得することができる。
【0077】
続くステップS9においては、マスタ11が、第1のデータ端子11bから、第5の信号353を送信する。送信される第5の信号353は、割り込みが発生している割り込みスレーブであると判定された第3のスレーブ23に付与されたMSA201(MSA「0x42」)及び測定値の読み出しの要求252を示す。データバス32は、第1のデータ端子11bから第2のデータ端子21b,22b及び23bまで、送信された第5の信号353を伝送する。これにより、マスタ11は、第5の信号353をスレーブ21,22及び23へ送信する。
【0078】
続くステップS10においては、各スレーブ20が、第2のデータ端子20bで、伝送されてきた第5の信号353を受信し、受信した第5の信号353により示されるMSA201(MSA「0x42」)が各スレーブ20に付与されたMSAと一致する場合に、第2のデータ端子20bから、第6の信号363を送信する。各スレーブ20は、受信した第5の信号353により示されるMSA「0x42」が各スレーブ20が有するMSAと一致しない場合に、第6の信号363を送信しない。これにより、第5の信号353により示されるMSA「0x42」と一致するMSA「0x42」を有し、割り込みが発生している割り込みスレーブであると判定された第3のスレーブ23は、第2のデータ端子23bで、第5の信号353を受信し、第5の信号353を受信するのに応答して、第2のデータ端子23bから、第6の信号363を送信する。送信される第6の信号363は、第3のスレーブ23により測定された測定値263を示す。データバス32は、第2のデータ端子23bから第1のデータ端子11bまで、送信された第6の信号363を伝送する。マスタ11は、第1のデータ端子11bで、伝送されてきた第6の信号363を受信する。これにより、第3のスレーブ23は、送信された第5の信号353を受信するのに応答して、第6の信号363をマスタ11へ送信する。マスタ11は、第1のデータ端子11bで、送信された第6の信号363を受信する。これより、マスタ11は、第3のスレーブ23により取得された測定値263を取得することができる。
【0079】
1.9 クロックバス、データバス、第1のデータ端子及び第2のデータ端子に与えられる電位の波形
図8は、第1実施形態の電子機器に備えられるクロックバス、データバス、第1のデータ端子及び第2のデータ端子に与えられる電位の波形を示すタイミングチャートである。当該タイミングチャートは、図7Bに示されるステップS5及びS6における電位の波形を示す。
【0080】
図8に示されるように、マスタ11は、スタート401において、第1のクロック端子11a及びクロックバス31に電位Hを与える。マスタ11は、第1のクロック端子11a及びクロックバス31に電位Hを与えている間に、第1のデータ端子11b及びデータバス32に電位Lを与える。これにより、マスタ11は、スタートコンディションをスレーブ21,22及び23に発行する。これにより、マスタ11とスレーブ21,22及び23との間の通信が開始される。
【0081】
続いて、マスタ11は、第1のクロック端子11a及びクロックバス31に電位L及び電位Hを交互に繰り返し与える。これにより、マスタ11は、クロック信号421を送信する。送信されるクロック信号421は、第1のクロックパルス501から第18のクロックパルス518までを含む。
【0082】
続いて、マスタ11は、ストップ402において、第1のクロック端子11a及びクロックバス31に電位Hを与える。マスタ11は、第1のクロック端子11a及びクロックバス31に電位Hを与えている間に、第1のデータ端子11b及びデータバス32に電位Hを与える。これにより、マスタ11は、ストップコンディションをスレーブ21,22及び23に発行する。これにより、マスタ11とスレーブ21,22及び23との間の通信が停止される。
【0083】
マスタ11は、第1のクロックパルス501から第7のクロックパルス507までに同期して、第1のデータ端子11b及びデータバス32に、GA200に含まれる第1のビットから第7のビットまでの値を示す電位をそれぞれ与える。また、マスタ11は、第8のクロックパルス508に同期して、第1のデータ端子11b及びデータバス32にリード要求250(R)を示す電位Hを与える。これにより、マスタ11は、GA200及びリード要求250を示す第4の信号340をスレーブ21,22及び23へ送信する。
【0084】
スレーブ21,22及び23は、送信された第4の信号340を正常に受信することができた場合は、第9のクロックパルス509に同期して、第2のデータ端子21b,22b及び23bにアクノリッジ(ACK)を示す電位Lをそれぞれ与える。これにより、スレーブ21,22及び23は、第9のクロックパルス509に同期して、データバス32にアクノリッジを示す電位Lを与える。スレーブ21,22及び23は、送信された第4の信号340を正常に受信することができなかった場合は、第9のクロックパルス509に同期して、第2のデータ端子21b,22b及び23bにノットアクノリッジ(NACK)を示す電位Hをそれぞれ与える。これにより、スレーブ21,22及び23は、第9のクロックパルス509に同期して、データバス32にノットアクノリッジを示す電位Hを与える。ここでは、スレーブ21,22及び23が、第4の信号340を正常に受信することができたとする。
【0085】
第1のスレーブ21は、第10のクロックパルス510から第17のクロックパルス517までに同期して、第2のデータ端子21b及びデータバス32に、割り込みステータス202(割り込みステータス「11111111」)に含まれる第1のビット221から第8のビット228までの値を示す電位をそれぞれ与える。第2のスレーブ22は、第10のクロックパルス510から第17のクロックパルス517までに同期して、第2のデータ端子22b及びデータバス32に、割り込みステータス202(割り込みステータス「11111101」)に含まれる第1のビット221から第8のビット228までの値を示す電位をそれぞれ与える。第3のスレーブ23は、第10のクロックパルス510から第17のクロックパルス517までに同期して、第2のデータ端子23b及びデータバス32に、割り込みステータス202(割り込みステータス「11111011」)に含まれる第1のビット221から第8のビット228までの値を示す電位をそれぞれ与える。これにより、スレーブ21,22及び23は、割り込みステータス「11111111」、「11111101」及び「11111011」を示す第1の信号311,312及び313をマスタ11へそれぞれ送信する。割り込みステータス「11111111」、「11111101」及び「11111011」は、リード要求250に対して返されるリードデータである。第1のスレーブ21は、第17のクロックパルス517に同期して、第2のデータ端子21bに、割り込みが発生していないことを示す電位Hを与える。第2のスレーブ22は、第16のクロックパルス516に同期して、第2のデータ端子22bに、割り込みが発生していることを示す電位Lを与える。第3のスレーブ23は、第15のクロックパルス515に同期して、第2のデータ端子23bに、割り込みが発生していることを示す電位Lを与える。これにより、スレーブ22及び23は、第15のクロックパルス515及び第16のクロックパルス516に同期して、クロックバス31に、割り込みが発生していることを示す電位Lを与え、スレーブ21は、第17のクロックパルス517に同期して、クロックバス31に、割り込みが発生していないことを示す電位Hを与える。
【0086】
マスタ11は、伝送されてきた第2の信号320を正常に受信することができた場合は、第18のクロックパルス518に同期して、第1のデータ端子11b及びデータバス32にノットアクノリッジ(NACK)を示す電位Hを与える。これにより、マスタ11は、各スレーブ20にデータバス32を制御する権限を与えず、各スレーブ20がさらに信号を送信することを抑止する。
【0087】
1.10 デイジーチェーン方式によるマルチスレーブアドレスの付与
図9は、デイジーチェーン方式によりマルチスレーブアドレスが付与される場合の第1実施形態の電子機器のブロック図である。
【0088】
図9に図示されるように、デイジーチェーン方式によりマルチスレーブアドレスが付与される場合は、電子機器1は、イネーブル配線531、第1のデイジーチェーン配線532、第2のデイジーチェーン配線533及び第3のデイジーチェーン配線534を備える。マスタ11は、第1のイネーブル(EN)端子11d及び汎用入出力(GPIO)端子11fを備える。複数のスレーブ21,22及び23は、複数の汎用入出力(GPIO)レジスタ551,552及び553をそれぞれ備え、複数の第2のイネーブル(EN)端子21d,22d及び23dをそれぞれ備え、複数の汎用入出力(GPIO0)端子21e,22e及び23eをそれぞれ備え、複数の汎用入出力(GPIO1)端子21f,22f及び23fをそれぞれ備える。
【0089】
第1のイネーブル端子11d並びに第2のイネーブル端子21d,22d及び23dは、共通のイネーブル配線531に電気的に接続される。これにより、イネーブル配線531は、第2のイネーブル端子21d,22d及び23dを第1のイネーブル端子11dに電気的に接続する。
【0090】
第1のデイジーチェーン配線532は、汎用入出力端子21eを汎用入出力端子11fに電気的に接続する。第2のデイジーチェーン配線533は、汎用入出力端子22eを汎用入出力端子21fに電気的に接続する。第3のデイジーチェーン配線534は、汎用入出力端子23eを汎用入出力端子22fに電気的に接続する。これらにより、第1のデイジーチェーン配線532、第2のデイジーチェーン配線533及び第3のデイジーチェーン配線534は、マスタ11、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23をデイジーチェーン接続する。
【0091】
第2のイネーブル端子21d,22d及び23dは、入力に用いることができる。汎用入出力端子21e,22e及び23eは、入力に用いることができる。汎用入出力端子21f,22f及び23fは、出力に用いることができる。
【0092】
各スレーブ20が備える第2のイネーブル端子20dに電位Lが与えられた場合は、各スレーブ20は、各スレーブ20が備える第2のクロック端子20a及び第2のデータ端子20bを用いてデータ信号を送受信することができない。第2のイネーブル端子20dに電位Hが与えられた場合は、各スレーブ20は、第2のクロック端子20a及び第2のデータ端子20bを用いてデータ信号を送受信することができる。
【0093】
各スレーブ20が備える汎用入出力端子20eに電位Lが与えられた場合は、各スレーブ20のデイジーチェーンモードが無効になる。このため、各スレーブ20は、第2のクロック端子20a及び第2のデータ端子20bを用いてMSA201の付与を受け付けることができなくなる。汎用入出力端子20eに電位Hが与えられた場合は、各スレーブ20のデイジーチェーンモードが有効になる。このため、各スレーブ20は、第2のクロック端子20a及び第2のデータ端子20bを用いてMSA201の付与を受け付けることができるようになる。
【0094】
各スレーブ20は、各スレーブ20が備える汎用入出力レジスタ550に設定された値を示す電位を汎用入出力端子20fに与える。
【0095】
デイジーチェーン方式によりMSA201が付与される場合の初期状態においては、マスタ11が、第1のイネーブル端子11d及び汎用入出力端子11fに電位Lを与えている。また、汎用入出力レジスタ550には、値「0」が設定されている。このため、各スレーブ20は、汎用入出力端子20fに、値「0」を示す電位Lを与えている。このため、第2のイネーブル端子20d及び汎用入出力端子20eに電位Lが与えられている。このため、各スレーブ20は、第2のクロック端子20a及び第2のデータ端子20bを用いてデータ信号を送受信することができない。また、各スレーブ20のデイジーチェーンモードは、無効になっている。このため、各スレーブ20は、第2のクロック端子20a及び第2のデータ端子20bを用いてMSA201の付与を受け付けることができない。
【0096】
続いて、マスタ11は、第1のイネーブル端子11d及び汎用入出力端子11fに与える電位を電位Lから電位Hへ上げる。これにより、イネーブル配線531及び第2のイネーブル端子20dに電位Hが与えられる。また、第1のデイジーチェーン配線532及び汎用入出力端子21eに電位Hが与えられる。これにより、第1のスレーブ21は、第2のクロック端子21a及び第2のデータ端子21bを用いてデータ信号を送受信することができるようになる。また、第1のスレーブ21のデイジーチェーンモードが有効になる。このため、第1のスレーブ21は、第2のクロック端子21a及び第2のデータ端子21bを用いてMSA201の付与を受け付けることができるようになる。
【0097】
続いて、マスタ11は、GA200(GA「0x29」)及び第1のスレーブ21に付与されるMSA201(MSA「0x40」)を示す第7の信号371を第1のスレーブ21へ送信する。
【0098】
続いて、第1のスレーブ21は、データ信号を送受信するのに用いることができるようになった第2のデータ端子21bで、送信されたMSA201(MSA「0x40」)を示す第7の信号371を受信する。第1のスレーブ21は、受信した第7の信号371により示されるMSA「0x40」を第1のスレーブ21のMSAに設定する。
【0099】
続いて、マスタ11は、汎用入出力端子11fに与える電位を電位Hから電位Lへ下げる。これにより、第1のデイジーチェーン配線532及び汎用入出力端子21eに電位Lが与えられる。これにより、第1のスレーブ21のデイジーチェーンモードが無効になる。このため、第1のスレーブ21は、第2のクロック端子21a及び第2のデータ端子21bを用いてMSA201の付与を受け付けることができなくなる。
【0100】
続いて、第1のスレーブ21は、汎用入出力レジスタ551に値「1」を設定する。これにより、第1のスレーブ21は、汎用入出力レジスタ551に設定された値「1」を示す電位Hを汎用入出力端子21fに与える。これにより、第2のデイジーチェーン配線533及び汎用入出力端子22eに電位Hが与えられる。これにより、第2のスレーブ22のデイジーチェーンモードが有効になる。このため、第2のスレーブ22は、第2のクロック端子22a及び第2のデータ端子22bを用いてMSA201の付与を受け付けることができるようになる。
【0101】
続いて、マスタ11は、GA200(GA「0x29」)及び第2のスレーブ22に付与されるMSA201(MSA「0x41」)を示す第7の信号372を第2のスレーブ22へ送信する。
【0102】
続いて、第2のスレーブ22は、データ信号を送受信するのに用いることができるようになった第2のデータ端子22bで、送信されたMSA201(MSA「0x41」)を示す第7の信号372を受信する。第2のスレーブ22は、受信した第7の信号372により示されるMSA「0x41」を第2のスレーブ22のMSAに設定する。
【0103】
続いて、第2のスレーブ22は、汎用入出力レジスタ552に値「1」を設定する。これにより、第2のスレーブ22は、汎用入出力レジスタ552に設定された値「1」を示す電位Hを汎用入出力端子22fに与える。これにより、第3のデイジーチェーン配線534及び汎用入出力端子23eに電位Hが与えられる。これにより、第3のスレーブ23のデイジーチェーンモードが有効になる。このため、第3のスレーブ23は、第2のクロック端子23a及び第2のデータ端子23bを用いてMSA201の付与を受け付けることができるようになる。
【0104】
続いて、マスタ11は、GA200(GA「0x29」)及び第3のスレーブ23に付与されるMSA201(MSA「0x42」)を示す第7の信号373を第3のスレーブ23へ送信する。
【0105】
続いて、第3のスレーブ23は、データ信号を送受信するのに用いることができるようになった第2のデータ端子23bで、送信されたMSA201(MSA「0x42」)を示す第7の信号373を受信する。第3のスレーブ23は、受信した第7の信号373により示されるMSA「0x42」を第3のスレーブ23のMSAに設定する。
【0106】
これにより、第1のスレーブ21、第2のスレーブ22及び第3のスレーブ23へのMSA201(MSA「0x40」、MSA「0x41」及びMSA「0x42」)の付与が完了する。
【0107】
本開示は、実施の形態に限定されるものではなく、上記実施の形態で示した構成と実質的に同一の構成、同一の作用効果を奏する構成又は同一の目的を達成することができる構成で置き換えてもよい。
【符号の説明】
【0108】
1 電子機器、11 マスタ、11a 第1のクロック端子、11b 第1のデータ端子、11c 第1の割り込み端子、11d 第1のイネーブル端子、11f 汎用入出力端子、20,21,22,23 スレーブ、20a,21a,22a,23a 第2のクロック端子、20b,21b,22b,23b 第2のデータ端子、20c,21c,22c,23c 第2の割り込み端子、20d,21d,22d,23d 第2のイネーブル端子、20e,21e,22e,23e 汎用入出力端子、20f,21f,22f,23f 汎用入出力端子、31 クロックバス、32 データバス、33 割り込みバス、41,42,43 プルアップ抵抗、51 電源線、71 コントローラ、72,73,74,75 バッファ、76,77 プルダウントランジスタ、91 グランド、111 割り込み要求回路、112 コントローラ、113,114,115,116,117 バッファ、プルダウントランジスタ118,119,120、141 電位、161 マルチスレーブアドレス(MSA)出力部、162 エンコーダ、163 インターフェース、181 レジスタ、200 グローバルアドレス(GA)、201 MSA、202 割り込みステータス、221 第1のビット、222 第2のビット、223 第3のビット、224 第4のビット、225 第5のビット、226 第6のビット、227 第7のビット、228 第8のビット、250 リード要求、251 重ねあわされた割り込みステータス、252 測定値の読み出しの要求、262 測定値、311,312,313 第1の信号、320 第2の信号、332 第3の信号、333 第3の信号、340 第4の信号、352,353 第5の信号、362,363 第6の信号、371,372,373 第7の信号、401 スタート、402 ストップ、421 クロック信号、501 第1のクロックパルス、502 第2のクロックパルス、503 第3のクロックパルス、504 第4のクロックパルス、505 第5のクロックパルス、506 第6のクロックパルス、507 第7のクロックパルス、508 第8のクロックパルス、509 第9のクロックパルス、510 第10のクロックパルス、511 第11のクロックパルス、512 第12のクロックパルス、513 第13のクロックパルス、514 第14のクロックパルス、515 第15のクロックパルス、516 第16のクロックパルス、517 第17のクロックパルス、518 第18のクロックパルス、531 イネーブル配線、532 第1のデイジーチェーン配線、533 第2のデイジーチェーン配線、534 第3のデイジーチェーン配線、550,551,552,553 汎用入出力レジスタ
図1
図2
図3
図4
図5A
図5B
図5C
図5D
図6
図7A
図7B
図7C
図8
図9