JP3900327B2 - シリアルデータ転送装置 - Google Patents

シリアルデータ転送装置 Download PDF

Info

Publication number
JP3900327B2
JP3900327B2 JP08852599A JP8852599A JP3900327B2 JP 3900327 B2 JP3900327 B2 JP 3900327B2 JP 08852599 A JP08852599 A JP 08852599A JP 8852599 A JP8852599 A JP 8852599A JP 3900327 B2 JP3900327 B2 JP 3900327B2
Authority
JP
Japan
Prior art keywords
signal
serial data
data
output
serial
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.)
Expired - Fee Related
Application number
JP08852599A
Other languages
English (en)
Other versions
JP2000285070A5 (ja
JP2000285070A (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.)
Kawasaki Microelectronics Inc
Original Assignee
Kawasaki Microelectronics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawasaki Microelectronics Inc filed Critical Kawasaki Microelectronics Inc
Priority to JP08852599A priority Critical patent/JP3900327B2/ja
Priority to US09/536,040 priority patent/US6779046B1/en
Publication of JP2000285070A publication Critical patent/JP2000285070A/ja
Publication of JP2000285070A5 publication Critical patent/JP2000285070A5/ja
Application granted granted Critical
Publication of JP3900327B2 publication Critical patent/JP3900327B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)
  • Small-Scale Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、マスタデバイスとスレーブデバイスとの間でシリアルにデータの転送を行うシリアルデータ転送装置に関するものである。
【0002】
【従来の技術】
例えば、マイクロコントローラとその周辺デバイスとの間では、8ビット(1バイト)のデータを1つの単位としてデータのやり取りが行われている。シリアルデータ転送装置は、例えばIIC(I2 C)−bus(Inter-IC Controlバス)(以下、単にIICバスという)に代表されるように、8ビットのデータを単位としてデータのやり取りを行うマスタデバイスと複数のスレーブデバイスとの間でシリアルにデータの転送を行うものである。
【0003】
前述のIICバスを適用するシリアルデータ転送装置では、例えばマイクロコントローラ等の制御する側のマスタデバイスと、周辺機器等の制御される側の複数のスレーブデバイスとの間は、データを転送するためのシリアルデータライン(SDA)と、データを保持するクロック信号を転送するためのシリアルクロックライン(SCL)という、プルアップ抵抗により電源に接続された2つの双方向のシリアルラインで相互に接続されている。
【0004】
ここで、シリアルデータラインは、基本的に、シリアルクロックラインがローレベルの期間に変化する。シリアルクロックラインがハイレベルの間に、シリアルデータラインがハイレベルからローレベルに変化すると、データの転送開始を指示するスタート信号(START)であることを意味し、ローレベルからハイレベルに変化すると、データの転送終了を指示するストップ信号(STOP)であることを意味する。
【0005】
マスタデバイスは、まず、1ビットのスタート信号をシリアルデータライン上に出力する。続いて、各々のスレーブデバイスにあらかじめ独自に割り当てられている7ビットの固有アドレスと、これに続くスレーブデバイスへのデータライトまたはスレーブデバイスからのデータリードを指示する1ビットのデータ制御信号とからなる8ビットのパラレルデータを、シリアルデータライン上にMSB(Most Significant Bit)側から順次シリアルに出力する。
【0006】
各々のスレーブデバイスでは、マスタデバイスからシリアルデータライン上に出力される8ビットのパラレルデータを、シリアルクロックラインから供給されるクロック信号に同期して順次シリアルに受信し、これを自分自身にあらかじめ割り当てられている固有アドレスと比較する。そして、自分自身の固有アドレスに一致するスレーブデバイスが、シリアルデータライン上に1ビットのアクノリッジ信号(肯定応答信号)を出力する。
【0007】
マスタデバイスは、スレーブデバイスからシリアルデータライン上に出力されたアクノリッジ信号を確認した後、スレーブデバイスへのデータライトの場合、転送すべき8ビットのパラレルデータをシリアルデータライン上に順次シリアルに出力する。アクノリッジ信号を出力したスレーブデバイスは、シリアルデータライン上にマスタデバイスから出力される8ビットのパラレルデータを順次シリアルに受信し、その後、同じく1ビットのアクノリッジ信号を出力する。
【0008】
マスタデバイスからスレーブデバイスに対しては、必要に応じて所定バイト数のデータが転送される。その後、マスタデバイスは、1ビットのストップ信号をシリアルデータライン上に出力し、スレーブデバイスは、このストップ信号を受け取ってデータの送信終了を確認する。以後同じようにして、マスタデバイスは、所望の固有アドレスを出力して、次にデータを転送すべきスレーブデバイスを順次指定してデータを転送することを繰り返し行う。
【0009】
IICバスを適用するシリアルデータ転送装置では、データを転送すべき複数のスレーブデバイスを順次アクセスする必要がある。したがって、複数の同じスレーブデバイスに対して、例えばスタート、ストップ、アボート等のスレーブデバイスに接続される複数の同じ装置を制御するための同じ制御信号等を含むデータを転送する場合であっても、複数のスレーブデバイスを同時にアクセスすることができないという問題がある。
【0010】
これを解決するために、従来のシリアルデータ転送装置では、マスタデバイスから、複数のスレーブデバイスに各々接続されている装置に制御信号を直接接続して同時に制御したり、あるいは、同時に制御することが無理な場合は、シリアルクロックラインから供給されるクロック信号の周波数を高くして、複数のスレーブデバイスにデータを転送したり、制御する時間差を小さくするなどの手法がとられている。
【0011】
しかし、制御信号をスレーブデバイスに接続されている装置に対してマスタデバイスから直接接続すると、シリアルデータラインやシリアルクロックラインの他にライン数が増大して、シリアルデータ転送のメリットが減少するし、クロック信号の周波数を高くしたとしても、同じデータを各々のスレーブデバイスに繰り返し転送するため、スレーブデバイスの数が多くなるほど長時間が必要になり、無駄が多くなるという問題点がある。
【0012】
【発明が解決しようとする課題】
本発明の目的は、前記従来技術に基づく問題点をかえりみて、マスタデバイスから任意の個数のスレーブデバイスに対して同じデータを同時に転送することができるシリアルデータ転送装置を提供することにある。
【0013】
【課題を解決するための手段】
上記目的を達成するために、本発明は、データを転送するためのシリアルデータラインおよび前記データを保持するクロック信号を転送するためのシリアルクロックラインを介して接続される少なくとも1つのマスタデバイスと複数のスレーブデバイスと、論理手段とを有し、
ノーマルモードにおいて、前記マスタデバイスの1つから前記シリアルデータラインを介して前記スレーブデバイスの1つを指定する固有アドレスが転送され、当該固有アドレスを有するスレーブデバイスが第1の端子より前記シリアルデータラインにアクノリッジ信号を出力し、
ローカルモードにおいて、前記マスタデバイスの1つから前記シリアルデータラインを介して指定しようとする任意個数の前記スレーブデバイスの固有アドレスを順次転送し、当該指定された固有アドレスを有する任意個数のスレーブデバイスが前記第1の端子よりアクノリッジ信号を順次前記シリアルデータラインに出力し、前記指定された固有アドレスを有する任意個数のスレーブデバイスが前記マスタデバイスから同じデータを同時に受信したときには、前記第1の端子とは異なる第2の端子よりアクノリッジ信号を前記論理手段に各々出力し、当該論理手段は、前記指定された固有アドレスを有する任意個数のスレーブデバイスから各々出力される前記アクノリッジ信号の論理をとって前記シリアルデータラインに出力することを特徴とするシリアルデータ転送装置を提供するものである。
ここで、前記論理手段は、前記複数のスレーブデバイスの前記第2の端子に入力端子が接続されたORゲートであるのが好ましい。
また、本発明は、データを転送するためのシリアルデータラインおよび前記データを保持するクロック信号を転送するためのシリアルクロックラインを介して少なくとも1つのマスタデバイスと接続されるスレーブデバイスであって、
前記マスタデバイスとの間で前記シリアルデータラインを介してデータを送受信する手段と、
前記マスタデバイスから前記シリアルデータラインを介して転送されるアドレス情報と当該スレーブデバイスに独自の固有アドレスとを比較する手段と、
前記データの転送モードが前記マスタデバイスとの間で1対1にデータの送受信を行うノーマルモードなのか、前記マスタデバイスから任意個数のスレーブデバイスに対して同じデータを同時に送信するローカルモードなのかを検出する手段と、
前記ノーマルモードが指定された場合、前記マスタデバイスからデータを受信したときに、第1の端子からアクノリッジ信号を出力する手段と、
前記ローカルモードが指定された場合、前記マスタデバイスからデータを受信したときに、前記第1の端子とは異なる第2の端子からアクノリッジ信号を出力する手段とを有することを特徴とするスレーブデバイスを提供する。
【0014】
【発明の実施の形態】
以下に、添付の図面に示す好適実施例に基づいて、本発明のシリアルデータ転送装置を詳細に説明する。
【0015】
図1は、本発明のシリアルデータ転送装置の一実施例のシステム構成図である。同図に示すシリアルデータ転送装置10は、マスタデバイス(MASTER)12と、本発明を適用するスレーブデバイス(Slave1〜3)14およびORゲート16と、従来構成のスレーブデバイス(Slave)18と、プルアップ抵抗19,20と、シリアルデータラインSDAおよびシリアルクロックラインSCLとを有する。
【0016】
ここで、シリアルデータラインSDAはデータ(制御信号を含む)を転送するためのライン、シリアルクロックラインSCLは、データを保持するクロック信号を供給するためのラインであって、それぞれプルアップ抵抗19および20を介して電源VDDに接続されている。マスタデバイス12はスレーブデバイス14を制御する側のデバイスで、そのSCL端子およびSDA端子は、各々シリアルクロックラインSCLおよびシリアルデータラインに接続されている。
【0017】
続いて、スレーブデバイス14は、マスタデバイス12により制御される側のデバイスであって、そのSCL端子およびSDA1端子は、各々シリアルクロックラインSCLおよびシリアルデータラインSDAに接続され、そのSDA2端子はいずれもORゲート16に入力されている。また、ORゲート16の出力は、オープンドレインまたはオープンコレクタの出力であって、シリアルデータラインSDAに接続されている。
【0018】
同じく、スレーブデバイス18は、マスタデバイス12により制御される側のデバイスで、そのSCL端子およびSDA端子は、各々シリアルクロックラインSCLおよびシリアルデータラインに接続されている。なお、スレーブデバイス14およびORゲート16を除く、マスタデバイス12、スレーブデバイス18、プルアップ抵抗19,20、シリアルデータラインSDAおよびシリアルクロックラインSCLは従来公知の構成のものである。
【0019】
本発明のシリアルデータ転送装置10では、シリアルデータラインSDAおよびシリアルクロックラインSCLを介して、マスタデバイス12と複数のスレーブデバイス14,18との間でシリアルにデータの転送が行われる。詳細は後述するが、IICバス規格に準拠してマスタデバイス12とスレーブデバイス14,18との間で1対1にデータを転送する他、マスタデバイス12から任意の個数のスレーブデバイス14に対して同じデータを同時に送信することもできる。
【0020】
続いて、図2に、マスタデバイスの一実施例の構成概略図を示す。
同図に概念的に示すように、マスタデバイス12は、マイクロコントローラ(CPU)22と、シリアルクロックラインSCLを駆動するオープンドレインタイプのN型MOSトランジスタ(以下、NMOSという)からなる出力バッファ24、および、シリアルデータラインSDAを駆動するオープンドレインタイプのNMOSからなる入出力バッファ26とを有する。
【0021】
マスタデバイス12では、マイクロコントローラ22が、あらかじめ設計されているプログラムに応じて全体の動作を制御する。そして、出力バッファ24により、シリアルクロックラインSCL上にクロック信号を出力したり、入出力バッファ26により、転送すべきデータをシリアルデータラインSDA上に出力する、あるいは、シリアルデータラインSDA上に出力されている受信すべきデータを、入力バッファ28を介して取り込む。
【0022】
続いて、図3に、スレーブデバイスの一実施例のブロック構成図を示す。
スレーブデバイス14は本発明に特有の回路構成を有するもので、同図に示すように、フィルタ30と、バスコントロール回路32と、S/P(シリアル/パラレル)変換回路34と、P/S(パラレル/シリアル)変換回路36と、出力レジスタ40(OUTREG)と、I/O(入力/出力)ポート42と、入出力(の出力部)バッファ44とを有する。
【0023】
スレーブデバイス14において、まず、フィルタ30には、シリアルクロックライン上に出力されるシリアルクロック信号SCL、および、シリアルデータライン上に出力されるシリアルデータ信号SDA1が入力される。これらの信号SCLおよびSDA1はフィルタ30によってノイズを除去され、それぞれシリアルクロック入力信号SCLINおよびシリアルデータ入力信号SDAINとしてフィルタ30から出力される。
【0024】
フィルタ30から出力されるシリアルクロック入力信号SCLINおよびシリアルデータ入力信号SDAINは、バスコントロール回路32に入力される。この他、バスコントロール回路32には、リセット信号RSTL、固有アドレス信号A0〜2、S/P変換回路34から出力されるパラレルデータ、および、P/S変換回路36から出力されるシリアルデータが入力される。
【0025】
ここで、リセット信号RSTLは、このスレーブデバイス14をリセットして初期化するもので、例えばローレベルの時に、スレーブデバイス14はリセットされる。本発明のシリアルデータ転送装置10では、マスタデバイス12からスレーブデバイス14,18に対して、所望のスレーブデバイス14,18を指定するために、例えば7ビットの固有アドレスが送信される。固有アドレス信号A0〜2は、各々のスレーブデバイス14に独自の固有アドレスを設定するための信号である。
【0026】
バスコントロール回路32は、このスレーブデバイス14全体の動作を制御する。バスコントロール回路32からは、フィルタ30から入力されるシリアルデータ入力信号SDAINをシリアルクロック入力信号SCLINで順次保持して得られるシリアルデータの他、ライトクロック信号WCLK、I/Oコントロール信号I/OCONT、シリアルデータ出力SDAOUT、および、シリアルデータ出力SDA2が出力される。
【0027】
ここで、ライトクロック信号WCLKは、S/P変換回路34から出力されるS/P変換後のパラレルデータを出力レジスタ40に保持するためのクロック信号である。
【0028】
本発明のシリアルデータ転送装置10では、固有アドレスに続き、スレーブデバイスへのデータライト、または、スレーブデバイスからのデータリードを指示する1ビットのデータ制御信号が送信される。I/Oコントロール信号I/OCONTは、このデータ制御信号の状態に応じて、スレーブデバイス14と、このスレーブデバイス14に接続される装置(以下、接続装置という)との間で、パラレルデータの入出力方向を切り替えるための信号である。
【0029】
データ制御信号がローレベルの時には、マスタデバイス12からスレーブデバイス14,18へのデータライトを意味し、マスタデバイス12からスレーブデバイス14,18を介して接続装置にデータが送信される。一方、データ制御信号がハイレベルの時には、スレーブデバイス14,18からマスタデバイス12へのデータリードを意味し、接続装置側からスレーブデバイス14,18を介してマスタデバイス12にデータが受信される。
【0030】
続いて、図4に、バスコントロール回路の一実施例のブロック構成図を示す。バスコントロール回路32は、デバイスアドレス検出回路50と、WCLK生成回路54と、スタート信号/ストップ信号/モード検出回路56と、データ制御信号検出回路58と、SCLカウンタ60と、SDA1およびSDA2コントローラ62および64と、シリアルデータ保持回路66と、コントローラ68とを有する。
【0031】
まず、コントローラ68は、このバスコントロール回路32全体の動作を制御するものである。コントローラ68から出力される各種の制御信号は、スタート信号/ストップ信号/モード検出回路56を除く、他のデバイスアドレス検出回路50、WCLK生成回路54、データ制御信号検出回路58、SCLカウンタ60、SDA1およびSDA2コントローラ62および64、ならびに、シリアルデータ保持回路66に供給される。
【0032】
続いて、スタート信号/ストップ信号/モード検出回路56には、シリアルクロック入力信号SCLINおよびシリアルデータ入力信号SDAINが入力される。スタート信号/ストップ信号/モード検出回路56は、データの転送開始を指示するスタート信号(START)、データの転送終了を指示するストップ信号(STOP)の他、後述する転送モードを検出する。スタート信号/ストップ信号/モード検出回路56による検出結果はコントローラ68に入力される。
【0033】
本発明のシリアルデータ転送装置10では、基本的に、シリアルデータ入力信号SDAINは、シリアルクロック入力信号SCLINがローレベルの間に変化する。スタート信号/ストップ信号/モード検出回路56は、シリアルクロック入力信号SCLINがハイレベルの間に、シリアルデータ入力信号SDAINのハイレベルからローレベルへの変化を見てスタート信号を検出し、ローレベルからハイレベルへの変化を見てストップ信号を検出する。
【0034】
また、スタート信号/ストップ信号/モード検出回路56は、シリアルクロック入力信号SCLINがハイレベルの間に、シリアルデータ入力信号SDAINがハイレベルからローレベルに何回変化するかを検出して、転送モードが、IICバス規格との互換性のあるノーマルモードなのか、それとも、本発明の提案するローカルモードなのかを検出する。ローカルモードでは、まず、任意の個数のスレーブデバイス14を指定し、その後、指定した任意の個数のスレーブデバイス14に対して同じデータを同時に送信することが可能である。
【0035】
ここで、図5に、スタート信号検出回路の一実施例の構成回路図を示す。
同図に示すように、スタート信号検出回路70は、フリップフロップ72,74と、ANDゲート76,78とを有する。ANDゲート76,78の一方の端子にはともにリセット信号RSTLが入力され、その出力は、それぞれフリップフロップ72,74のCLR端子に入力されている。
【0036】
フリップフロップ72の1D端子にはシリアルクロック信号SCLが入力され、その反転クロック端子にはシリアルデータ信号SDAが入力されている。また、フリップフロップ72の1Q端子からの出力信号はANDゲート78の他方の端子に入力され、その1Q端子からはスタート検出信号STARTLが出力されている。同じように、フリップフロップ74の反転2D端子にはシリアルデータ信号SDAが入力され、その反転クロック端子にはシリアルクロック信号SCLが入力されている。また、フリップフロップ74の2Q ̄端子からの出力信号はANDゲート76の他方の端子に入力されている。
【0037】
スタート信号検出回路70では、リセット信号RSTLがローレベルとされると、フリップフロップ72,74はともにクリアされ、フリップフロップ72の1Q端子からの出力信号はローレベル、1Q ̄端子からの出力信号すなわちスタート検出信号STARTLはハイレベルとなり、フリップフロップ74の2Q ̄端子からの出力信号もハイレベルとなる。本実施例では、スタート検出信号STARTLは、ローレベルの時にスタート信号を検出したことを意味する。
【0038】
リセット信号RSTLがハイレベルとされた後、図6のタイミングチャートに示すように、シリアルクロック信号SCLがハイレベルの期間に、シリアルデータ信号SDAがハイレベルからローレベルに変化すると、シリアルクロック信号SCLのハイレベルが、シリアルデータ信号SDAの立ち下りに同期してフリップフロップ72に保持される。この時、フリップフロップ72の1Q端子からの出力信号はハイレベル、スタート検出信号STARTLはローレベルとなる。
【0039】
フリップフロップ72の1Q端子からの出力信号がハイレベルになると、フリップフロップ74のクリアが解除される。その後、シリアルクロック信号SCLの立ち下りで、シリアルデータ信号SDAの反転信号であるハイレベルがフリップフロップ74に保持され、フリップフロップ74の2Q ̄端子からの出力信号はローレベルとなる。続いて、ANDゲート76を介してフリップフロップ72がクリアされ、その1Q端子からの出力信号はローレベル、スタート検出信号STARTLはハイレベルとなる。さらに、ANDゲート78を介してフリップフロップ74はクリアされ、リセット後の初期状態となる。
【0040】
図示例のスタート信号検出回路70では、シリアルクロック信号SCLがハイレベルの期間に、シリアルデータ信号SDAがハイレベルからローレベルに変化したことを検出して、スタート検出信号STARTLが、シリアルデータ信号SDAの立ち下りからシリアルクロック信号SCLの立ち下りまでの間ローレベルとなる。
【0041】
続いて、図7に、ストップ信号検出回路の一実施例の構成回路図を示す。
同図に示すストップ信号検出回路80は、フリップフロップ82,84と、ANDゲート86,88とを有する。ANDゲート86,88の一方の端子にはともにリセット信号RSTLが入力され、その出力は、それぞれフリップフロップ82,84のCLR端子に入力されている。
【0042】
フリップフロップ82の1D端子にはシリアルクロック信号SCLが入力され、そのクロック端子にはシリアルデータ信号SDAが入力されている。また、フリップフロップ82の1Q端子からの出力信号はANDゲート78の他方の端子に入力され、その1Q ̄端子からはストップ検出信号STOPLが出力されている。フリップフロップ84の2D端子にはシリアルクロック信号SCLが入力され、その反転クロック端子にはシリアルデータ信号SDAが入力されている。また、フリップフロップ84の2Q ̄端子からの出力信号はANDゲート76の他方の端子に入力されている。そして、フリップフロップ82,84のイネーブル端子Eにはともにスタート検出信号STARTLが入力されている。
【0043】
ストップ検出回路80では、リセット信号RSTLがローレベルとされると、フリップフロップ82,84がともにクリアされ、フリップフロップ82の1Q端子からの出力信号はローレベル、1Q ̄端子からの出力信号すなわちストップ検出信号STOPLはハイレベルとなり、フリップフロップ84の2Q ̄端子からの出力信号もハイレベルとなる。本実施例では、ストップ検出信号STOPLは、ローレベルの時にストップ信号を検出したことを意味する。
【0044】
リセット信号RSTLがハイレベルとされた後、図8のタイミングチャートに示すように、シリアルクロック信号SCLがハイレベルの期間に、シリアルデータ信号SDAがローレベルからハイレベルに変化すると、シリアルクロック信号SCLのハイレベルが、シリアルデータ信号SDAの立ち上がりに同期してフリップフロップ82に保持される。この時、フリップフロップ82の1Q端子からの出力信号はハイレベル、ストップ検出信号STOPLはローレベルとなる。
【0045】
フリップフロップ82の1Q端子からの出力信号がハイレベルになると、フリップフロップ84のクリアが解除される。その後、シリアルデータ信号SDAの立ち下りで、シリアルクロック信号SCLのハイレベルがフリップフロップ84に保持され、フリップフロップ84の2Q ̄端子からの出力信号はローレベルとなる。続いて、ANDゲート86を介してフリップフロップ82はクリアされ、その1Q端子からの出力信号はローレベル、ストップ検出信号STOPはハイレベルとなる。さらに、ANDゲート88を介してフリップフロップ84はクリアされ、リセット後の初期状態となる。
【0046】
なお、シリアルデータ信号SDAの立ち下りにより、先に述べたスタート検出信号STARTLがローレベルとなり、これ以後、シリアルクロック信号SCLが立ち下り、スタート検出信号STARTLがハイレベルとなるまで、フリップフロップ82,84の状態、すなわち、ストップ検出信号STOPLの状態も変化しない。
【0047】
図示例のストップ信号検出回路80では、シリアルクロック信号SCLがハイレベルの期間に、シリアルデータ信号SDAがローレベルからハイレベルに変化したことを検出して、ストップ検出信号STOPLが、シリアルデータ信号SDAの立ち下りから、その次の立ち下りまでの間ローレベルとなる。
【0048】
続いて、図9に、モード検出回路の一実施例の構成回路図を示す。
同図に示すモード検出回路90は、フリップフロップ92と、フリップフロップ94,96,98と、ANDゲート100と、NANDゲート102,104,106と、ORゲート108と、フリップフロップ110とを有する。
【0049】
フリップフロップ92のD端子にはスタート検出信号STARTLが入力され、その反転クロック端子にはシリアルクロック信号SCLが入力され、そのPR端子にはリセット信号RSTLが入力されている。また、フリップフロップ92のQ端子からの出力信号はANDゲート100の一方の端子に入力されている。ANDゲート100の他方の端子にはリセット信号RSTLが入力され、その出力はフリップフロップ94,96,98のCLR端子に入力されている。
【0050】
フリップフロップ94,96,98のD端子には、それぞれ電源、フリップフロップ94,96のQ1端子およびQ2端子からの出力信号Q1およびQ2が入力されている。また、フリップフロップ94,96,98の反転クロック端子にはともにシリアルデータ信号SDAが入力され、そのイネーブル端子Eにはともにシリアルクロック信号SCLが入力されている。また、フリップフロップ94,96,98のQ1端子、Q2端子、Q3端子からの出力信号Q1,Q2,Q3はNANDゲート102,104,106に各々入力されている。
【0051】
NANDゲート102,104,106の出力は各々フリップフロップ110に入力され、フリップフロップ110からは、これらに各々対応してノーマル信号NormalL、モード1信号Mode1Lおよびモード2信号Mode2Lが出力されている。また、ORゲート108には、シリアルクロック信号SCLおよびスタート検出信号STARTLが入力され、その出力はフリップフロップ110の反転クロック端子に入力されている。
【0052】
図示例のモード検出回路90では、図10のタイミングチャートに示すように、リセット信号RSTLがローレベルとされると、フリップフロップ92はプリセットされて、そのQ端子からの出力信号はハイレベルとなり、フリップフロップ94,96,98はともにクリアされて、そのQ1,Q2,Q3端子からの出力信号Q1,Q2,Q3は全てローレベルとなる。
【0053】
リセット信号RSTLがハイレベルとされると、フリップフロップ94,96,98のクリアは解除される。その後、シリアルクロック信号SCLがハイレベルの期間に、シリアルデータ信号SDAがハイレベルからローレベルに変化すると、前述のスタート信号検出回路70によりスタート信号が検出されて、スタート検出信号STARTLがローレベルとなるとともに、フリップフロップ94のQ1端子からの出力信号Q1がハイレベルとなる。
【0054】
その後、図10のタイミングチャートに示すように、シリアルクロック信号SCLがハイレベルの期間に、例えばシリアルデータ信号SDAが連続して2回立ち下ると、フリップフロップ94,96からの出力信号Q1,Q2がハイレベルとなる。また、シリアルデータ信号SDAが連続して3回立ち下ると、フリップフロップ94,96,98からの出力信号Q1,Q2,Q3が全てハイレベルとなる。
【0055】
これらの出力信号Q1,Q2,Q3はNANDゲート102,104,106にそれぞれ入力される。そして、出力信号Q1がハイレベルで、かつ、出力信号Q2およおびQ3がローレベルである時、すなわち、シリアルクロック信号SCLがハイレベルの間に、シリアルデータ信号SDAが1回だけ立ち下った場合に、NANDゲート102からローレベルが出力され、NANDゲート104,106からはハイレベルが出力される。
【0056】
同じく、出力信号Q1およびQ2がハイレベルで、かつ、出力信号Q3がローレベルである時には、すなわち、シリアルデータ信号SDAが2回立ち下った場合には、NANDゲート104からローレベルが出力され、NANDゲート102,106からはハイレベルが出力される。また、出力信号Q1,Q2およびQ3の全てがハイレベルの時には、すなわち、シリアルデータ端子SDAが3回立ち下った場合には、NANDゲート106の出力信号がローレベルとなり、NANDゲート102,104の出力信号はハイレベルとなる。
【0057】
その後、スタート信号STARTLがローレベルの期間に、シリアルクロック信号SCLの立ち下りでNANDゲート102,104,106からの出力信号がフリップフロップ110に保持され、各々ノーマル信号NormalL、モード1信号Mode1Lおよびモード2信号Mode2Lとして出力される。
【0058】
本実施例では、ノーマル信号NormalLがローレベルとなった場合がノーマルモードであり、モード1信号Mode1Lまたはモード2信号Mode2Lがローレベルとなった場合がローカルモードであることを意味する。また、モード1信号Mode1Lがローレベルの場合が、任意の個数のスレーブデバイス14を指定するモード1であり、モード2信号Mode2Lがローレベルの場合が、マスタデバイス12から、指定した複数個のスレーブデバイス14に対して同じデータを送信するモード2である。
【0059】
前述のシリアルクロック信号SCLの立ち下りで、フリップフロップ92にスタート検出信号STARTLのローレベルが保持され、フリップフロップ94,96,98の出力信号Q1,Q2,Q3が初期化されて全てローレベルとなる。その後、スタート信号検出回路70の制御によってスタート検出信号STARTLがハイレベルとなり、これが次のシリアルクロック信号SCLの立ち下りでフリップフロップ92に保持されて、モード検出回路90は初期状態に戻る。
【0060】
図示例のモード信号検出回路90では、シリアルクロック信号SCLがハイレベルの期間に、シリアルデータ信号SDAが何回ハイレベルからローレベルに変化したのかを検出して、ノーマル信号NormalL、モード1信号Mode1Lおよびモード2信号Mode2Lのいずれかがローレベルとなる。
【0061】
続いて、デバイスアドレス検出回路50には、シリアルクロック信号SCL、固有アドレス信号A0〜2、および、S/P変換回路34から供給されるパラレルデータ(S/P変換出力)が入力される。デバイスアドレス検出回路50は、S/P変換出力(固有アドレス)と各々のスレーブデバイス14にあらかじめ設定されている固有アドレス信号A0〜2とを比較する。デバイスアドレス検出回路50の比較結果はコントローラ68に入力される。
【0062】
WCLK生成回路54は、コントローラ68の制御により、データ制御信号によってマスタデバイス12からスレーブデバイス14へのデータライトが指定されている場合、前述のライトクロック信号WCLKを生成する。
【0063】
続いて、データ制御信号検出回路58には、シリアルデータ入力信号SDAINが入力される。データ制御信号検出回路58はデータ制御信号を検出し、マスタデバイス12からスレーブデバイス14,18へのデータライトであるのか、スレーブデバイス14,18からマスタデバイス12へのデータリードであるのかを判断して、I/Oコントロール信号I/OCONTを発生する。データのライト/リードの識別結果はコントローラ68にも入力される。
【0064】
SCLカウンタ60には、シリアルクロック入力信号SCLINおよびシリアルデータ入力信号SDAINが入力される。データの送受信は、例えば8ビット(1バイト)を1つの単位として転送される。このため、SCLカウンタ60は、スタート信号を基準として、シリアルクロック入力信号SCLINをカウントすることにより、データの送信および受信のタイミングを調整する。SCLカウンタ60によるカウント結果はコントローラ68に入力される。
【0065】
同じく、シリアルデータ保持回路66にも、シリアルクロック入力信号SCLINおよびシリアルデータ入力信号SDAINが入力される。シリアルデータ保持回路66は、シリアルクロック入力信号SCLINに同期して、シリアルデータ入力信号SDAINを順次保持する。シリアルデータ保持回路66に保持されたシリアルデータは、図3に示すように、S/P変換回路34に対して順次出力される。
【0066】
SDA1コントローラ62には、P/S変換回路36から供給されるシリアルデータ(P/S変換出力)が入力される。SDA1コントローラ62は、P/S変換回路36からP/S変換出力を受け取り、これをシリアルデータ出力信号SDAOUTとして入出力バッファ44に対して出力する。また、SDA2コントローラ64は、ローカルモードである場合に、コントローラ68の制御により適時アクノリッジ信号を出力する。
【0067】
データライト時には、バスコントロール回路32からシリアルデータが出力され、S/P変換回路34に入力される。S/P変換回路34は、バスコントロール回路32から供給されるシリアルデータを、例えば8ビットのパラレルデータに変換する。S/P変換後のパラレルデータは、出力レジスタ40の他、固有アドレス信号A0〜2との比較のために、バスコントロール回路32にもフィードバックされる。
【0068】
続いて、出力レジスタ40は、バスコントロール回路32から入力される前述のライトクロック信号WCLKにより、S/P変換回路34から出力される、例えば8ビットのパラレルデータを保持する。出力レジスタ40から出力されるパラレルデータはI/Oポート42に入力される。
【0069】
I/Oポート42には、上記パラレルデータの他、リセット信号RSTLや、バスコントロール回路32からのI/Oコントロール信号I/OCONTが入力される。I/Oポート42は、I/Oコントロール信号I/OCONTの状態に応じて、出力レジスタ40から供給されるパラレルデータを接続装置に対して出力するか、あるいは、接続装置から供給されるパラレルデータを、次に述べるP/S変換回路36に対して出力するのかを制御する。
【0070】
I/Oポート42と接続装置との間は、8ビットのパラレルバスで双方向に接続されている。データリード時に接続装置から供給されるパラレルデータは、I/Oポート42からP/S変換回路36に対して出力される。
P/S変換回路36は、I/Oポート42から供給される8ビットのパラレルデータをシリアルデータに変換する。P/S変換回路36から出力されるシリアルデータは、前出のバスコントロール回路32に入力される。
【0071】
バスコントロール回路32は、P/S変換回路36から供給されるシリアルデータをシリアルデータ出力SDAOUTとして順次出力する。このシリアルデータ出力SDAOUTは、入出力バッファ44のインバータ46を介してNMOS48のゲートに入力される。入出力バッファ44のNMOS48のソースはグランドに接続され、そのドレインは、シリアルデータ信号SDA1としてシリアルデータライン上に出力される。
【0072】
入出力バッファ44からは、シリアルデータ信号SDA1として、バスコントロール回路32から供給されるシリアルデータ出力SDAOUTが順次出力される。なお、アクノリッジ信号は、ノーマルモードの場合には、固有アドレスによって指定される1つのスレーブデバイス14のSDA1端子またはスレーブデバイス18のSDA端子からのみ出力され、ローカルモードの場合には、全てのスレーブデバイス14のSDA2端子から同時に出力される。
【0073】
次に、図11に示すフローチャートを参照しながら、本発明のシリアルデータ転送装置の動作について説明する。
【0074】
同図フローチャートのステップS1に示すように、まず、リセット信号RSTLがローレベルとされ、シリアルデータ転送装置10が初期化される。初期化の後、ステップS2へ進み、スレーブデバイス14,18は、マスタデバイス12からスタート信号(START)が出力されるのを検出する。なお、スレーブデバイス14,18は、スタート信号が検出されない場合(N)、スタート信号が検出される(Y)まで繰り返し検出を行う。スタート信号が検出されると、スタート信号検出回路70の制御により、スタート検出信号STARTLがローレベルとなる。
【0075】
続いて、ステップS3として、モード検出回路90により、転送モードが、ノーマルモードなのかローカルモードなのかが検出される。
その結果、ノーマルモードである場合(N)にはステップS4に進み、IICバスの規格に準拠して通常処理が行われ、マスタデバイス12とスレーブデバイス14または18との間で1対1にデータのやり取りが行われる。
【0076】
一方、ローカルモードである場合(Y)にはステップS5に進み、モード1であるかどうかが検出される。なお、この場合、指定されるスレーブデバイスは、言うまでもなく本発明を適用するスレーブデバイス14のみである。
ここで、モード1ではない場合(N)には、イリガル動作であるためステップS2に戻る。モード1であることが検出されると(Y)、モード検出回路90の制御により、モード1信号Mode1Lがローレベルとなる。
【0077】
その後、マスタデバイス12から全てのスレーブデバイス14に対して、固有アドレスおよびデータ制御信号(この場合、ライトのみ)からなる1バイト目のデータが送信される。ステップS6に示すように、各々のスレーブデバイス14は、図4に示すSCLカウンタ60のタイミング制御により、受信した固有アドレスと自分自身に設定されている固有アドレス信号とを比較して、自分自身が指定されているのかどうかを検出する。
【0078】
そして、固有アドレスとの一致が検出された場合(Y)、スレーブデバイス14は、ステップS7に示すように、SDA1端子から、図1に示すシリアルデータラインSDA上にローレベルのアクノリッジ信号を出力する。これを受信して、マスタデバイス12は、指定しようとするスレーブデバイス14に対応する固有アドレスおよびデータ制御信号からなる1バイトのデータを必要に応じて順次送信し、固有アドレスによって指定されるスレーブデバイス14からアクノリッジ信号が出力される。
【0079】
以上の動作を繰り返し行うことにより、任意の個数のスレーブデバイス14を指定することができる。なお、ローカルモードの場合に1つのスレーブデバイス14のみを指定しても構わないが、その場合には、ノーマルモードを使用する方が好ましい。
一方、スレーブデバイス14において、最終的に、固有アドレスとの一致が検出されなかった場合(N)、後述するステップS14に進む。
【0080】
続いて、ステップS8に進み、全てのスレーブデバイス14において、図4に示すSCLカウンタ60のタイミング制御により、データ制御信号(R/W)が検出される。ローカルモードの場合には、任意の個数のスレーブデバイス14が同時にアクセスされるが、マスタデバイス12は全てのスレーブデバイス14から同時にデータを受信(リード)することはできないため、データライト(W)ではない場合(N)にはイリガル動作であるとしてステップS2へ戻る。
【0081】
一方、データライト(W)である場合(Y)、次のステップS9へ進む。ステップS9では、モード2であるかどうかの検出が行われる。
そして、モード2ではない場合(N)、すなわち、ノーマルモードやローカルモードのモード1が検出された場合には、リスタートであるものと認識され、ステップS2に戻る。
【0082】
これに対して、モード2が検出された場合(Y)、シリアルデータを順次取り込み、ステップS10において、図4に示すSCLカウンタ60の制御により、8ビット(1バイト)のデータを受信したかどうかが検出される。この時、8ビットのデータ入力がない場合(N)には続くデータは存在せず、送信は終了であるからステップS13に進む。8ビットのデータ入力がある場合(Y)には次のステップS11へ進む。
【0083】
ステップS11において、指定されている全てのスレーブデバイス14のSDA2端子から、ローレベルのアクノリッジ信号が出力され、後述するステップS16において出力される指定されていないスレーブデバイス14からのアクノリッジ信号と共に、図1に示すORゲート16により、シリアルデータラインSDA上にローレベルのアクノリッジ信号が出力される。マスタデバイス12は、シリアルデータラインSDA上のアクノリッジ信号を検出して、全てのスレーブデバイス14がデータを受信したことを確認し、次のデータを送信する。
【0084】
一方、指定された任意の個数のスレーブデバイス14では、ステップS12に示すように、図3に示すバスコントロール回路32によって発生されるライトクロックWCLKにより、P/S変換回路34によるP/S変換後のパラレルデータが出力レジスタ40に保持される。
【0085】
そして、ステップS13において、スレーブデバイス14はストップ信号を検出する。スレーブデバイス14によりストップ信号が検出された場合(Y)、ストップ信号検出回路80の制御により、ストップ検出信号STOPLがローレベルとされ、マスタデバイス12からスレーブデバイス14へのデータの送信は終了となる。一方、ストップ信号が検出されない場合(N)、マスタデバイス12からスレーブデバイス14へ送信されるデータは複数バイトであるから、ステップS10へ戻って次の8ビットのデータを繰り返し受信する。
【0086】
一方、ステップS6において、最終的に、固有アドレスとの一致が検出されなかったスレーブデバイス14においては、ステップS14でモード2が検出される。モード2が検出されない場合(N)、すなわち、ノーマルモードやローカルモードのモード1が検出された場合(N)、リスタートであると認識され、ステップS3に戻る。モード2が検出された場合(Y)、SCLカウンタ60の値が8になっているかどうかをステップS15で検出する。すなわち、ステップS6において、固有アドレスによって指定された任意の個数のスレーブデバイス14が8ビットのデータを受信したかどうかを検出する。なお、指定されていないスレーブデバイス14には、マスタデバイス12から出力されるデータは受信(保持)されない。
【0087】
ここで、SCLカウンタ60の値が8である場合(Y)には、ステップS16において固有アドレスによって指定されなかったスレーブデバイス14からも、固有アドレスによって指定されたスレーブデバイス14と同じタイミングで、すなわち、ステップS11で指定されたスレーブデバイス14がアクノリッジ信号を返すのと同じタイミングでSDA2端子からアクノリッジ信号が出力され、図1に示すORゲート16を介して、シリアルデータラインSDA上にローレベルのアクノリッジ信号が出力される。マスタデバイス12は、このアクノリッジ信号を受信する。
【0088】
また、SCLカウンタ60の値が8ではない場合(N)には、固有アドレスによって指定されたスレーブデバイス14に続けて送信されるデータは存在せず、送信は終了であるからステップS17に進む。ステップS17は、ステップS13の場合と同じであるから、ここでは、その繰り返しの説明は省略する。
【0089】
次に、図12および図13に示すタイミングチャートを参照して、本発明のシリアルデータ転送装置の動作を具体例を挙げて説明する。ここで、図12は、ローカルモードのモード1に入る場合の動作の一例を表すもので、続く、図13は、図12のタイミングチャートに続く本発明のシリアルデータ転送装置の動作を表すもので、モード1からモード2に入り、その後、ノーマルモードに入る場合の動作の一例を表している。
【0090】
まず、図12に示すように、リセット信号RSTLがローレベルとされ、装置全体が初期化される。リセット信号がハイレベルとされた後、シリアルクロック信号SCLがハイレベルの期間に、シリアルデータ信号SDAを2回立ち下げる。これにより、スタート検出信号STARTLが、1回目のシリアルデータ信号SDAの立ち下りからシリアルクロック信号SCLの立ち下りまでの間ローレベルとなるとともに、モード1信号Mode1Lが、シリアルクロック信号SCLの立ち下りでローレベルとなり、ローカルモードのモード1に入る。
【0091】
続いて、マスタデバイス12から、固有アドレス(‘0100000’)およびデータ制御信号(W)からなる1バイトのデータが送信される。既に述べたように、データは、シリアルクロック信号SCLがローレベルの間に変化する。図12のタイミングチャートに示すように、SCLカウンタ60の値が1〜7の間は、固有アドレスのビット6〜0が順次シリアルに送信され、SCLカウンタ60の値が8の時にはデータ制御信号が送信される。
【0092】
そして、各々のスレーブデバイス14は、固有アドレスおよびデータ制御信号からなる1バイトのデータを受信して、マスタデバイス12から送信されてきた固有アドレスと自分自身にあらかじめ設定されている固有アドレス信号とを比較し、自分自身の固有アドレス(‘0100000’)と一致したスレーブデバイス14(図示せず)のSDA1端子から、シリアルデータラインSDA上にローレベルのアクノリッジ信号が出力され、これをマスタデバイス12は受信して確認する。
【0093】
図12のタイミングチャートでは、続いて、固有アドレス(‘0100001’)およびデータ制御信号(W)からなる1バイトのデータが送信される。同じく、図12のタイミングチャートにSDAOUT(SDA1)で示すように、自分自身にあらかじめ設定されている固有アドレス(‘0100001’)と一致したスレーブデバイス14からアクノリッジ信号が出力され、これをマスタデバイス12は受信して確認する。
【0094】
続いて、図13のタイミングチャートに示すように、シリアルクロック信号SCLがハイレベルの期間に、シリアルデータ信号SDAを3回立ち下げる。これにより、スタート検出信号STARTLが、1回目のシリアルデータ信号SDAの立ち下りからシリアルクロック信号SCLの立ち下りまでの間ローレベルとなるとともに、モード2信号Mode2Lのみがローレベルとなり、ローカルモードのモード2に入る。
【0095】
続いて、マスタデバイス12から1バイトのデータが送信される。図13のタイミングチャートに示すように、SCLカウンタ60の値が1〜8の間は、データ(FFh)(16進数)のビット7〜0が順次シリアルに送信される。
そして、全てののスレーブデバイス14のSDA2端子からアクノリッジ信号が出力され、図1に示すORゲート16を介してシリアルデータラインSDA上にローレベルのアクノリッジ信号が出力される。これをマスタデバイス12は受信して確認する。なお、アクノリッジ信号は、指定されているいないに係わらず、全てのスレーブデバイス14のSDA2端子から出力される。
【0096】
これは、指定されていないスレーブデバイス14のSDA2端子からアクノリッジ信号を出力しないと、図1に示すORゲート16からローレベルのアクノリッジ信号を出力することができないからである。したがって、指定されていないスレーブデバイス14のSDA2端子からも、指定されているスレーブデバイス14と同じタイミングでアクノリッジ信号を出力する必要がある。
以下同じようにして、マスタデバイス12から、指定されているスレーブデバイス14に対して同じデータが同時に送信され、スレーブデバイス14からは、データを受信した後、アクノリッジ信号が出力される。
【0097】
そして最後に、シリアルクロック信号SCLがハイレベルの期間に、シリアルデータ信号SDAを立ち上げる。これにより、ストップ検出信号STOPLが、シリアルデータ信号SDAの立ち上がりから、その次の立ち下りまでの間ローレベルとなるとともに、このシリアルデータ信号SDAの立ち下りによってノーマルモードに入り、スタート検出信号STARTLがローレベルとなる。
【0098】
本発明のシリアルデータ転送装置は、基本的に以上のようなものである。
なお、マスタデバイス12は1つ以上何個あってもよいし、スレーブデバイス14は2つ以上の複数個であれば何個であってもよい。また、本発明のシリアルデータ転送装置は、ノーマルモードではIICバス規格に準拠しているため、上記実施例にも示すように、本発明を適用するスレーブデバイスと従来構成のスレーブデバイスとを共存させて使用するこができる。
【0099】
上記実施例では、IICバス規格との互換性を考慮して、各信号の極性や転送するデータのビット数、具体的な回路構成等を例示しているが、IICバス規格との互換性が不要であれば、本発明は上記具体例には何ら限定されない。
以上、本発明のシリアルデータ転送装置について詳細に説明したが、本発明は上記実施例に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのはもちろんである。
【0100】
【発明の効果】
以上詳細に説明した様に、本発明のシリアルデータ転送装置は、ノーマルモードでは、マスタデバイスからスレーブデバイスに対して固有アドレスに対応するアドレス情報を送信して、マスタデバイスとアドレス情報に一致する固有アドレスを有するスレーブデバイスとの間で1対1にデータの送受信を行い、ローカルモードでは、マスタデバイスから、指定しようとするスレーブデバイスに対応する任意の個数のアドレス情報を順次送信して、このアドレス情報に対応する任意の個数のスレーブデバイスを指定し、指定された任意の個数のスレーブデバイスに対して同じデータを同時に送信するものである。
したがって、本発明のシリアルデータ転送装置によれば、マスタデバイスと任意の複数個のスレーブデバイスとの間で同じデータを転送したい場合に、これを一度のデータ転送で実現することができる。例えば、従来は3個のスレーブデバイスに同じデータを順次送信していたものが、本発明では1回の送信で済み、2回分の送信時間を削減することができる。
本発明は、例えば複数のRAM(ランダムアクセスメモリ)に同時に00h(16進数)を書き込んで、その内容をクリアする時などのように、データ量が多い場合に特に有効である。
【図面の簡単な説明】
【図1】 本発明のシリアルデータ転送装置の一実施例のブロック構成図である。
【図2】 マスタデバイスの一実施例の構成概略図である。
【図3】 スレーブデバイスの一実施例のブロック構成図である。
【図4】 バスコントロール回路の一実施例のブロック構成図である。
【図5】 スタート信号検出回路の一実施例の構成回路図である。
【図6】 図5に示すスタート信号検出回路の動作を表す一実施例のタイミングチャートである。
【図7】 ストップ信号検出回路の一実施例の構成回路図である。
【図8】 図7に示すストップ信号検出回路の動作を表す一実施例のタイミングチャートである。
【図9】 モード検出回路の一実施例の構成回路図である。
【図10】 図9に示すモード検出回路の動作を表す一実施例のタイミングチャートである。
【図11】 本発明のシリアルデータ転送装置の動作を表す一実施例のフローチャートである。
【図12】 本発明のシリアルデータ転送装置の動作を表す一実施例のタイミングチャートである。
【図13】 図12に示す本発明のシリアルデータ転送装置の動作の続きを表す一実施例のタイミングチャートである。
【符号の説明】
10 シリアルデータ転送装置
12 マスタデバイス
14,18 スレーブデバイス
16,108 ORゲート
19,20 プルアップ抵抗
22 マイクロコントローラ
24 出力バッファ
26,44 入出力バッファ
28 入力バッファ
30 フィルタ
32 バスコントロール回路
34 S/P変換回路
36 P/S変換回路
40 出力レジスタ
42 I/Oポート
50 デバイスアドレス検出回路
54 WCLK生成回路
56 スタート信号/ストップ信号/モード検出回路
58 データ制御信号検出回路
60 SCLカウンタ
62 SDA1コントローラ
64 SDA2コントローラ
66 シリアルデータ保持回路
68 コントローラ
70 スタート信号検出回路
72,74,82,84,92,94,96,98,110 フリップフロップ
76,78,86,88,100 ANDゲート
ストップ信号検出回路80
モード検出回路90
102,104,106 NANDゲート
SDA シリアルデータライン
SCL シリアルクロックライン

Claims (3)

  1. データを転送するためのシリアルデータラインおよび前記データを保持するクロック信号を転送するためのシリアルクロックラインを介して接続される少なくとも1つのマスタデバイスと複数のスレーブデバイスと、論理手段とを有し、
    ノーマルモードにおいて、前記マスタデバイスの1つから前記シリアルデータラインを介して前記スレーブデバイスの1つを指定する固有アドレスが転送され、当該固有アドレスを有するスレーブデバイスが第1の端子より前記シリアルデータラインにアクノリッジ信号を出力し、
    ローカルモードにおいて、前記マスタデバイスの1つから前記シリアルデータラインを介して指定しようとする任意個数の前記スレーブデバイスの固有アドレスを順次転送し、当該指定された固有アドレスを有する任意個数のスレーブデバイスが前記第1の端子よりアクノリッジ信号を順次前記シリアルデータラインに出力し、前記指定された固有アドレスを有する任意個数のスレーブデバイスが前記マスタデバイスから同じデータを同時に受信したときには、前記第1の端子とは異なる第2の端子よりアクノリッジ信号を前記論理手段に各々出力し、当該論理手段は、前記指定された固有アドレスを有する任意個数のスレーブデバイスから各々出力される前記アクノリッジ信号の論理をとって前記シリアルデータラインに出力することを特徴とするシリアルデータ転送装置。
  2. 前記論理手段は、前記複数のスレーブデバイスの前記第2の端子に入力端子が接続されたORゲートであることを特徴とする請求項1に記載のシリアルデータ転送装置。
  3. データを転送するためのシリアルデータラインおよび前記データを保持するクロック信号を転送するためのシリアルクロックラインを介して少なくとも1つのマスタデバイスと接続されるスレーブデバイスであって、
    前記マスタデバイスとの間で前記シリアルデータラインを介してデータを送受信する手段と、
    前記マスタデバイスから前記シリアルデータラインを介して転送されるアドレス情報と当該スレーブデバイスに独自の固有アドレスとを比較する手段と、
    前記データの転送モードが前記マスタデバイスとの間で1対1にデータの送受信を行うノーマルモードなのか、前記マスタデバイスから任意個数のスレーブデバイスに対して同じデータを同時に送信するローカルモードなのかを検出する手段と、
    前記ノーマルモードが指定された場合、前記マスタデバイスからデータを受信したときに、第1の端子からアクノリッジ信号を出力する手段と、
    前記ローカルモードが指定された場合、前記マスタデバイスからデータを受信したときに、前記第1の端子とは異なる第2の端子からアクノリッジ信号を出力する手段とを有することを特徴とするスレーブデバイス。
JP08852599A 1999-03-30 1999-03-30 シリアルデータ転送装置 Expired - Fee Related JP3900327B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP08852599A JP3900327B2 (ja) 1999-03-30 1999-03-30 シリアルデータ転送装置
US09/536,040 US6779046B1 (en) 1999-03-30 2000-03-27 Serial-data transfer system which has a normal mode and a local mode and devices for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP08852599A JP3900327B2 (ja) 1999-03-30 1999-03-30 シリアルデータ転送装置

Publications (3)

Publication Number Publication Date
JP2000285070A JP2000285070A (ja) 2000-10-13
JP2000285070A5 JP2000285070A5 (ja) 2005-05-19
JP3900327B2 true JP3900327B2 (ja) 2007-04-04

Family

ID=13945266

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08852599A Expired - Fee Related JP3900327B2 (ja) 1999-03-30 1999-03-30 シリアルデータ転送装置

Country Status (1)

Country Link
JP (1) JP3900327B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5104222B2 (ja) * 2007-02-06 2012-12-19 セイコーエプソン株式会社 シリアル通信システム
JP2011250967A (ja) * 2010-06-01 2011-12-15 Takasago Electric Ind Co Ltd 遊技機
DE112020006082T5 (de) 2019-12-12 2022-10-27 Sony Semiconductor Solutions Corporation Kommunikationsvorrichtung und kommunikationssystem

Also Published As

Publication number Publication date
JP2000285070A (ja) 2000-10-13

Similar Documents

Publication Publication Date Title
US10289582B2 (en) Enhanced serial peripheral interface
US5974475A (en) Method for flexible multiple access on a serial bus by a plurality of boards
EP0258873B1 (en) Serial bus interface system for data communication using two-wire line as clock bus and data bus
US7689756B2 (en) Apparatus and system for an address translation device
US8667204B2 (en) Method to differentiate identical devices on a two-wire interface
US5581747A (en) Communication system for programmable devices employing a circuit shift register
US20080270654A1 (en) Bus System for Selectively Controlling a Plurality of Identical Slave Circuits Connected to the Bus and Method Therefore
US20070136512A1 (en) Voltage Negotiation in a Single Host Multiple Cards System
EP2226729B1 (en) Card Identification System
CN101911000A (zh) 用于连接电子装置的控制总线
JP2008539498A (ja) 単一のi2cデータストリームからの並列i2cスレーブデバイスのプログラミング
US20040225812A1 (en) Method and apparatus for interconnecting wired-AND buses
JPH09503610A (ja) データストリームモード切換機能を備えたメモリ装置
US20070250652A1 (en) High speed dual-wire communications device requiring no passive pullup components
US6779046B1 (en) Serial-data transfer system which has a normal mode and a local mode and devices for the same
US7099970B1 (en) Apparatus and method to enhance a one-wire bus
CN108694140B (zh) 用于寻址i2c总线上的非易失性存储器的方法和对应的存储器设备
KR20010053365A (ko) 디바이스간 직렬 버스 프로토콜
JP3900327B2 (ja) シリアルデータ転送装置
JP3838809B2 (ja) シリアルデータ転送装置
US7032080B2 (en) Plural station memory data sharing system
US6917994B2 (en) Device and method for automatically generating an appropriate number of wait cycles while reading a nonvolatile memory
EP0945807A1 (en) Adress remapping for a bus
JP2001290764A (ja) データ転送システム装置及びそのデータ転送方法
US5805843A (en) Microprocessor bus interface unit for interfacing an N-bit microprocessor bus to an M-bit memory device

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040716

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040716

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061130

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061220

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110112

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110112

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120112

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120112

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130112

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees