JP5195075B2 - 双方向バス制御回路 - Google Patents

双方向バス制御回路 Download PDF

Info

Publication number
JP5195075B2
JP5195075B2 JP2008167528A JP2008167528A JP5195075B2 JP 5195075 B2 JP5195075 B2 JP 5195075B2 JP 2008167528 A JP2008167528 A JP 2008167528A JP 2008167528 A JP2008167528 A JP 2008167528A JP 5195075 B2 JP5195075 B2 JP 5195075B2
Authority
JP
Japan
Prior art keywords
signal
input
data
output
switching
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
JP2008167528A
Other languages
English (en)
Other versions
JP2010011041A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008167528A priority Critical patent/JP5195075B2/ja
Priority to US12/382,867 priority patent/US7882279B2/en
Publication of JP2010011041A publication Critical patent/JP2010011041A/ja
Application granted granted Critical
Publication of JP5195075B2 publication Critical patent/JP5195075B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/0175Coupling arrangements; Interface arrangements
    • H03K19/01759Coupling arrangements; Interface arrangements with a bidirectional operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Systems (AREA)
  • Logic Circuits (AREA)

Description

本発明は、半導体集積回路に関し、特に、双方向バス制御回路に関する。
近年、Application Specific Integrated Circuit(ASIC)等の半導体集積回路は、複雑化及び小型化されているため、半導体集積回路(以下、「IC」と言う)間ではクロック種類の異なる信号が送受信されている。また、IC間信号の送受信に採用される双方向バスは、信号の送信時又は受信時にバスの向きを出力又は入力方向に切り替えるため、送信側及び受信側の両ICは、バスの向きを常に認識する必要がある。
図5を用いて、従来の双方向バスの構成を説明する。バスの方向を指示するマスタ側のICが、入力方向又は出力方向を指示する方向信号をスレーブ側のICに送信することで、双方向バスの方向が両IC間で認識される。
また、方向信号を伝送するためのバスは、方向信号がクリップされた場合等に両IC間でバスの向きの認識に誤り生じること(バスファイト)を回避するため二重化されている。
図6を用いて、従来の双方向バス間を伝送される信号のフローチャートを説明する。従来、バスの方向を指示するマスタICと接続され、マスタICから送信される方向信号を受信するスレーブICでは、クロック信号用及びデータ信号用のバスの方向が出力方向から入力方向に切り替わった後の所定時間は、入力クロック及び入力データ無しでデータの確認が行われるため、データの誤認識とそれに伴う異常データが発生する。
そのため、従来のスレーブICは、図5に示すように、自ICのバスの方向が出力方向から入力方向に切り替わるときに発生する異常データに対するエラーチェックを抑止するための信号抑止回路や、一定期間後にエラーチェックを開始するための時間監視回路等を備えていた。
なお、送信側及び受信側装置の各々の双方向バッファの向きが互いに正対しないように制御する回路が提案されている(下記特許文献1及び2)。この文献では、送信側及び受信側装置の各々の双方向バッファの向きが互いに正対しないように、双方向バッファの向きを切り替える制御回路を用いて、データ信号の送信時において、送信側双方向バッファより先に受信側双方向バッファを送信側双方向バッファに対して背を向ける方向に切り替える技術が提案されている。
特開昭63−093220号 特開昭57−071034号
しかし、上記文献で提案される制御回路は、バスの方向誤認識を回避することはできても、バス方向切り替え時に生じるデータの誤認識を回避することはできない。
本発明は、双方向バスの方向切り替え時のデータ確認の無効期間を認識することによって、誤動作を防止することを目的とする。
上記課題を解決するために、バスの方向を指示する第1及び第2の方向信号が入力され、且つクロック信号及びデータ信号が入出力される双方向バス制御回路であって、第2の方向信号によって指示される信号方向にしたがって、クロック信号の入力又は出力方向を切り替える第1の双方向バッファと、第2の方向信号によって指示される信号方向にしたがって、データ信号の入力又は出力方向を切り替える第2の双方向バッファと、第2の双方向バッファに入力されたデータ信号の確認を行い、且つ第1の方向信号によって指示される入力方向から出力方向への信号方向の切り替えにしたがってデータ信号の確認を無効にするデータ確認部と、を有する双方向バス制御回路が提供される。第1の方向信号によって指示される入力方向から出力方向への信号方向の切り替えは、第2の方向信号によって指示される入力方向から出力方向への信号方向の切り替えより先に生じ得る。
上記の双方向バス制御回路によれば、第1の方向信号によって指示される入力方向から出力方向への信号方向の切り替え後に、データ信号の確認動作を無効にするように動作させ、確認動作無効後に第2方向信号の切り替えに同期したクロック信号が無効になるので、データの誤認識を回避できる。
以下、図面を参照して、本発明の実施の形態を説明する。
図1を用いて、本実施形態によるシステムIC1の構成の一例を説明する。システムIC1は、マスタIC2及びスレーブIC3を有する。マスタIC2とスレーブIC3とは、バスを介して接続される。
マスタIC2は、双方向バスの方向を指示する方向信号をスレーブIC3に対して出力するマスタICである。本実施形態では、マスタIC2は方向信号Aと方向信号Bとの二種類の方向信号を、スレーブIC3に対して出力する。マスタIC2は、双方向バス制御回路として機能するI/O切り替え部10、及び、制御回路30を有する。
I/O切り替え部10は、方向信号Aを出力する第1出力バッファ11、方向信号Bを出力する第2出力バッファ12、クロック信号が入力又は出力するクロック用双方向バッファ13、及び、データ信号が入力又は出力するデータ用双方向バッファ14を備える。
クロック用双方向バッファ13は、クロック出力用バッファ17a及びクロック入力用バッファ17bを有する。クロック出力用バッファ17aは、クロック生成部32が生成したクロック信号を受信し、バスを介してスレーブIC3にクロック信号を出力する。また、クロック入力用バッファ17bは、スレーブIC3から送出されたクロック信号を受信し、クロック受信部33に出力する。クロック出力用バッファ17aのイネーブル端子15a及びクロック入力用バッファ17bのイネーブル端子15bには、それらのバッファを有効又は無効にしてバッファ信号の入出力制御を行うため、バッファ19を介して方向信号Bが入力する。
同様に、データ用双方向バッファ14は、データ出力用バッファ18a及びデータ入力用バッファ18bを有する。データ出力用バッファ18aは、データ出力部34が出力したデータを受信し、受信データをスレーブIC3に向けて出力する。また、データ入力用バッファ18bは、スレーブIC3が送出したデータを受信し、受信データをデータ確認部35に向けて出力する。データ出力用バッファ18aのイネーブル端子16a及びデータ入力用バッファ18bのイネーブル端子16bには、それらのバッファを有効又は無効にしてバッファ信号の入出力制御を行うため、バッファ19を介して方向信号Bが入力する。
制御回路30は、方向信号生成部31、クロック生成部32、クロック受信部33、データ出力部34、データ確認部35を有する。方向信号生成部31は、方向信号A及び方向信号Bを生成し、方向信号Aを第1出力バッファ11に、方向信号Bを第2出力バッファ12にそれぞれ出力する。クロック生成部32はクロック信号を生成し、クロック用出力バッファ17aに出力する。クロック受信部33は、クロック用入力バッファ17bに入力したクロック信号を受信する。データ出力部34は、データ出力用バッファ18aにデータを出力する。データ確認部35は、データ用入力バッファ18bに入力したデータを受信して、受信したデータに対する確認処理を行う。
なお、データ確認部35は、データ用入力バッファ18bに入力したスレーブIC3からの入力データに対するパリティチェック及び/又はECC(Error-Correcting Code)を用いたエラーチェックを含むデータ確認処理を行う。
スレーブIC3は、マスタIC2によって送信された方向信号を受信するスレーブICである。スレーブIC3は、双方向バス制御回路として機能するI/O切り替え部20、及び、制御回路40を有する。
I/O切り替え部20は、マスタIC2から受信した方向信号Aが入力する第1入力バッファ21、マスタIC2から受信した方向信号Bが入力する第2入力バッファ22、クロック信号が入力又は出力するクロック用双方向バッファ23、データ信号が入力又は出力するデータ用双方向バッファ24、を備える。
クロック用双方向バッファ23は、クロック出力用バッファ27a及びクロック入力用バッファ27bを有する。クロック出力用バッファ27aは、クロック生成部43が生成したクロック信号を受信し、マスタIC2に対して出力する。クロック入力用バッファ27bは、マスタIC2が出力したクロック信号を受信し、クロック受信部44に向けて出力する。クロック出力用バッファ27aのイネーブル端子25a及びクロック入力用バッファ27bのイネーブル端子25bには、それらのバッファを有効又は無効にしてバッファ信号の入出力制御を行うため、第2入力バッファ22及びバッファ29を介して、方向信号Bが入力される。
同様に、データ用双方向バッファ24は、データ出力用バッファ28a及びデータ入力用バッファ28bを有する。データ出力用バッファ28aは、データ出力部45が出力したデータを受信し、マスタIC2に向けて出力する。データ入力用バッファ28bは、マスタIC2が送出したデータを受信し、データ確認部46に向けて出力する。データ出力用バッファ28aのイネーブル端子26a及びデータ入力用バッファ28bのイネーブル端子26bには、それらのバッファを有効又は無効にしてバッファ信号の入出力制御を行うため第2入力バッファ22及びバッファ29を介して方向信号Bが入力される。
制御回路40は、方向信号A受信部41、方向信号B受信部42、クロック生成部43、クロック受信部44、データ出力部45、データ確認部46を有する。方向信号A受信部41は、第1入力バッファ21を介してマスタIC2から受信した方向信号Aを受信する。方向信号B受信部42は、第2入力バッファ22を介してマスタIC2から受信した方向信号Bを受信する。クロック生成部43はクロック信号を生成し、クロック用出力バッファ27aに出力する。クロック受信部44は、クロック用入力バッファ27bに入力された、マスタIC2が送出したクロック信号を受信する。データ出力部45は、データ出力用バッファ28aにデータを出力する。データ確認部46は、データ用入力バッファ28bに入力した、マスタIC2からのデータに対する確認処理を行う。
第1入力バッファ21で受信した方向信号Aは、データ確認部46に伝送され、データ確認部46で利用される(後述)。なお、データ確認部46は、マスタIC2からの入力データに対するパリティチェック及び/又はECCを用いたエラーチェックを含むデータ確認を行う。
ここで、マスタIC2のI/O切り替え部10内の各バッファは、スレーブIC3のI/O切り替え部20内の各バッファとバス接続される。
なお、図示しないが、マスタIC2及びスレーブIC3は、上記した双方向バス制御機能に加えて、特定の様々な機能を果たすために、基板、及び基板上に半導体から構成されるトランジスタ、ダイオード、抵抗等の素子、それらの結線を有することができる。
図2を用いて、マスタICから送信され且つスレーブICが受信する信号及び入力データ処理のタイムチャートの一例を示す。
タイムチャート101及び102では、方向信号A及びBを用いて、マスタICから出力されるクロック信号(以下、「マスタクロック信号」と称す)及びデータ信号の信号方向がスレーブICに対して入力又は出力かが示される。つまり、「入力モード」の方向信号は、マスタICから送信されるマスタクロック信号及びデータ信号をスレーブICが入力する状態を示す。「出力モード」の方向信号は、クロック信号及びデータ信号をスレーブICがマスタICに出力する状態を示す。
タイムチャート103では、マスタクロック信号の状態を示す。つまり、方向信号Bが「入力モード」の場合は、スレーブICはマスタICから出力されるデータ信号を確認するため、クロック生成部32により生成されマスタICより出力されるマスタクロック信号を検出する。また、方向信号Bが「出力モード」の場合は、マスタICからスレーブICに出力されるデータは無く、マスタクロック信号は不要であるため、入力されるマスタクロック信号を無効にする。
タイムチャート104では、方向信号Aに従ってスレーブICが確認するデータ信号の状態を示す。つまり、方向信号Aが「入力モード」の場合は、スレーブICは、マスタICから出力されるデータ信号の確認は有効である。また、方向信号Aが「出力モード」の場合は、マスタICからスレーブICに出力されるデータは無く、スレーブICがマスタICにデータ信号を出力するため、入力されるデータ信号を無効にする。
マスタIC2は、方向信号AによってスレーブIC3に(指示先の明示が必要なので付加しました)指示される入力方向から出力方向への信号方向の切り替えが、方向信号BによってスレーブIC3に指示される入力方向から出力方向への信号方向の切り替えより先に生じるように、方向信号A及び方向信号Bを生成する。
切り替え時間110は、方向信号Aの入力モードから出力モードへの切り替え開始時と、方向信号Bの入力モードから出力モードへの切り替え終了時との時間間隔を示す。切り替え時間110は、入力データの確認処理を「有効」から「無効」に切り替えるために必要な時間間隔とするのが好ましい。
切り替え時間110を設定するために、マスタIC2の方向信号生成部31は、方向信号Aによって指示される信号方向を「入力モード」から「出力モード」へ切り替えた後に、所定の時間間隔を置いて、方向信号Bによって指示される信号方向を「入力モード」から「出力モード」へ切り替えるように方向信号A及びBを生成する。
このように、本実施形態においては、モード変更をスレーブICに指示する2つの方向信号を同じタイミングでスレーブICに送信するのではなく、異なるモード変更タイミングを有する2つの方向信号A及び方向信号BがスレーブICに送信される。
切り替え時間110では、スレーブIC3は、方向信号Aを、「データ信号及びクロック信号の切り替え」を予告する予告信号として利用し、方向信号Bを、データ信号及びクロック信号の双方向バッファを実際に切り替える信号として利用することができる。
矢印105及びタイムチャート104に示されるように、スレーブIC3のデータ確認部46は、マスタIC2から受信した方向信号Aの入力モードから出力モードへの変更をトリガイベントにして、入力データの確認処理を有効から無効にする。
また、マスタIC2は、データ確認部46による確認処理の停止後に、方向信号Bのモードを入力モードから出力モードに変更する。
なお、方向信号Aの伝送遅延並びにデータ確認部46の停止処理に必要となる時間とによって、方向信号Aの切り替えと、データ確認部46による入力データの確認処理の停止との時間にタイムラグが生じる。したがって、このタイムラグを考慮して、確認処理の停止が確実に終了した後に方向信号Bによる方向切り替えが行われるように、方向信号Bを生成することが好ましい。
方向信号Bは、クロック用双方向バッファ23のイネーブル端子25a、25bに直接接続されている。方向信号Bを入力モード(例えば、「LOW」レベル)から出力モード(例えば、「HIGH」レベル)に切り替えることで、バスの向きを入力方向から出力方向に反転する。この場合、クロック出力用バッファ27aは有効、クロック入力用バッファ27bは無効になる。さらに、タイムチャート103に示されるように、方向信号Bの「入力モード」から「出力モード」への切り替えによりマスタクロック信号を無効にする。このように、スレーブICが受信するマスタクロック信号は、方向信号Bの切り替えと同期して無効になる。
なお、図2のチャートには示されていないが、方向信号Bは、データ用双方向バッファ24のイネーブル端子26a、26bに直接接続されているので、バスの向きは入力方向から出力方向に反転し、スレーブIC3によるデータ信号入力も無効になる。
以上のように、本実施形態のスレーブICによれば、方向信号Aが入力から出力へ切り替えられた後に、データ確認部46による入力データ信号の確認動作を終了するように動作させ、さらに確認動作終了後に、方向信号Bの入力から出力への方向切り替えによってマスタクロック信号を無効にする。そのため、本実施形態では、クロック不定等による確認データの誤認識を回避でき、それに伴う異常データの発生も防ぐことができる。
そのため、スレーブICは、バス方向切り替え時のデータに対する信号抑止回路やエラーチェックの時間監視回路を不要にすることができ、マスタICは、スレーブIC側の信号抑止/時間監視回路の設定を考慮することなくバス方向の切り替えを行うことができる。
図2に示す、スレーブIC3における出力から入力への切り替え時間120では、マスタIC2から出力される方向信号が出力モードから入力モードに変更され、それに伴い、スレーブIC3のデータ確認処理が無効から有効に変わる状態が示される。
マスタIC2は、方向信号Aによって指示される出力方向から入力方向への信号方向の切り替えが、方向信号Bによって指示される出力方向から入力方向への信号方向の切り替え後に生じるように、方向信号A及びBを生成する。そのため、切り替え時間120では、方向信号Bによって指示される信号方向が、出力方向から入力方向への信号方向の切り替え後に、方向信号Aによって指示される信号方向が出力方向から入力方向へ切り替わる。
切り替え時間120は、方向信号Bの出力モードから入力モードへの切り替え開始時と、方向信号Aの出力モードから入力モードへの切り替え終了時との時間間隔を示す。切り替え時間120は、入力データの確認処理を「無効」から「有効」に切り替えて、十分な安定期間を確保した時間間隔とするのが好ましい。
切り替え時間120を設定するために、マスタIC2の方向信号生成部31は、方向信号Bによって指示される信号方向を「出力モード」から「入力モード」へ切り替えた後に、所定の時間間隔を置いて、方向信号Aによって指示される信号方向を「出力モード」から「入力モード」へ切り替えるように方向信号A及びBを生成する。
切り替え時間120では、スレーブIC3は、方向信号Bを、データ信号及びクロック信号の双方向バッファを実際に切り替える信号として利用し、方向信号Aを、データ確認を開始するためのトリガ信号として利用することができる。
タイムチャート102及び103に示されるように、方向信号Bはイネーブル端子25a、25bに直接接続されているので、方向信号Bは出力モード(例えば、「HIGH」レベル)から入力モード(例えば、「LOW」レベル)に切り替わると、クロック出力用バッファ27aは無効、クロック入力用バッファ27bは有効になる。そのため、タイムチャート103に示されるように、マスタクロック信号の入力は、方向信号Bと同期して有効になる。
なお、図2には示していないが、方向信号Bは、イネーブル端子26a、26bに直接接続されているので、方向信号Bは出力モードから入力モードに切り替わることで、データ信号の入力も有効になる。
方向信号Aは、マスタIC2の方向信号生成部31によって、方向信号Bのモード変更後、クロック及びバスデータが十分に安定する期間後に、出力モードから入力モードに変更される。そのため、方向信号Bの出力から入力へのモード変更タイミングと、方向信号Aの出力から入力へのモード変更タイミングは、クロック信号の種類等に応じて、マスタIC側で設定可能であることが好ましい。
データ確認部27は、方向信号Aの出力モードから入力モードへの変更をトリガイベントにして、入力データの確認処理を開始する。
このように、スレーブIC3は、入力モード変更後、一定期間経過後に確認処理を開始することで、入力後に生じるクロック信号及びデータ信号の不安定状態中の確認処理を回避することができる。そして、データの確認処理は、安定した波形を有するクロック信号及びデータ信号を用いて行うことができるため、方向信号の変更後の不安定波形によるデータ確認による誤認識を回避できる。
そのため、スレーブICは、入力方向から出力方向への信号方向の変化時においても、バス方向切り替え時のデータに対する信号抑止回路やエラーチェックの時間監視回路を不要にすることができ、マスタICは、スレーブIC側の信号抑止/時間監視回路の設定を考慮することなくバス方向の切り替えを行うことができる。
図3を用いて、方向信号生成部の一例を説明する。この例では、方向信号生成部による方向信号A及びBの生成方法について説明する。
方向信号生成部31は、基準信号生成回路31a、立上り検出回路31b、立下り検出回路31c、遅延生成カウンタ31c、31d、及び方向信号B生成部31eを有する。
基準信号生成回路31aは、基準信号S1を生成する。基準信号S1は、マスタIC2がバスを切替えるときに変化するバス切替えの基準信号である。例えば、本実施形態では、基準信号S1がLOWレベルである時は、マスタICのバスは出力方向であるか、又は、これから出力方向になることを意味する。また、基準信号S1がHIGHレベルである時は、マスタ側のバスは入力方向であるか、又は、これから入力方向になることを示す。
立上り検出回路31bは、基準信号S1の立上りを検出して、遅延生成カウンタ31d、31eに立上り検出信号を送信する。また、立下り検出回路31cは、基準信号S1の立下りを検出して、遅延生成カウンタ31d、31eに立下り検出信号を送信する。
遅延生成カウンタ31dは、立上り検出回路31bからの立上り検出信号の受信をトリガにして、クロック生成部32から出力されるクロックパルスのカウントアップを始め、カウントスタート7τ後にHIGHを出力し、立下り検出信号の受信と同時にLOWへ落ちるUP7τ遅延信号S2を生成する。
さらに、遅延生成カウンタ31dは立上り検出回路31bからの立上り検出信号の受信をトリガにして、クロック生成部32から出力されるクロックパルスのカウントアップを始め、カウントスタート12τ後にHIGHを出力し、立下り検出信号の受信と同時にLOWへ落ちるUP12τ遅延信号S6を生成する。
遅延生成カウンタ31eは、立下り検出回路31bからの立下り検出信号の受信をトリガにして、クロック生成部32から出力されるクロックパルスのカウントアップを始め、カウントスタート6τ後にLOWを出力し、立上り検出信号の受信と同時にHIGHになるDN6τ遅延信号S3を生成する。
また、遅延生成カウンタ31eは、立下り検出回路31bからの立下り検出信号の受信をトリガにして、クロック生成部32から出力されるクロックパルスのカウントアップを始め、カウントスタート9τ後にLOWを出力し、立上り検出信号の受信と同時にHIGHになるDN9τ遅延信号S4を生成する。
また、方向信号B生成部31fは、UP7τ遅延信号S2及びDN6τ遅延信号S3を受信して、含意演算を実行することで、S2の立上りにより、つまり立上り検出信号による始点生成カウンタ31dのカウントスタートから7τ後にHIGHになり、S3の立下りにより、つまり立下り検出信号による遅延生成カウンタ31eのカウントスタートから6τ後にLOWになるUP7τ遅延信号DN6τ遅延信号S5を出力する。
遅延生成カウンタ31eが生成したDN9τ遅延信号S4は、方向信号Aとして、スレーブIC3へ出力される。また、方向信号B生成部31fが生成したUP7τ遅延信号DN6τ遅延信号S5は、方向信号Bとして、スレーブIC3へ出力される。
図4を用いて、方向信号生成部が生成する信号チャートの一例を説明する。
スレーブIC3は、マスタIC2から受信した受信信号S4a、つまり方向信号Aの立上りにより、タイミングT1において、これからバスが入力から出力に切替わることを認識し、図2を用いて説明したように、入力データの確認を無効にすることができる。
次に、スレーブIC3は、マスタIC2から受信した受信信号S5a、つまり方向信号Bの立上りにより、タイミングT2で、クロック用双方向バス23及びデータ用双方向バス24の向きを入力方向から出力方向に反転する。
このタイミングT1及びT2の間の時間中に、スレーブIC3のデータ確認部46の確認処理が無効に切り替わることが好ましい。図3および図4の例では、S5はS4の立上りから7τ遅延した後に立ち上がっているが、スレーブICでの確認処理の無効切替に7τ以上の時間を要する場合、あるいは無効切替が7τ未満で完了する場合には、S5の立上りタイミングを図4に示したものと替えることが好ましい。したがって、S4の立上りからの遅延信号S5立上りの遅延カウント数を、クロックの種類等に応じて7τ以外の他のカウント数に再設定可能にすることで、クロックの仕様が異なる場合でも、タイミングT1−T2間に確認処理を無効にすることを確実にすることができる。
マスタIC2は、方向信号B、つまり遅延信号S5の立上りあるいは立下りによってクロック及びデータ用双方向バス13、14の向きを逆に切替える。そして、タイミングT2から、スレーブIC3がデータを出力するモードに切り替えられるため、スレーブIC3からからマスタIC2にデータ信号及びクロック信号が送信される。
スレーブIC3からマスタIC2に入力するクロック及びデータ信号は、バスの切り替え直後は不安定となり得る。そのため、マスタIC2は、遅延信号S6を用いて、スレーブIC3より送信されるデータ及びクロック信号が安定状態となった後にデータ監視部35によりデータ監視を行うことができる。
例えば、タイミングT2により、スレーブIC3からマスタIC2へのデータ送信が開始されるが、マスタIC2は、遅延信号S6がLOW状態のときは、データ確認部35による確認処理を開始せず、遅延信号S6がHIGH状態となった後にデータ確認部35による確認処理を開始する。そして、遅延信号S6のS5立上りからの遅延カウント数は、遅延生成カウンタ31dにクロックの種類等に応じて他のカウント数に再設定可能にすることで、クロックの仕様が異なる場合でも、受信信号が安定状態後に適切な遅延信号S6を生成することができる。
このように、マスタIC2は、入力モード変更後、一定期間経過後にデータ確認部による確認処理を開始することで、マスタ入力後に生じるクロック信号及びデータ信号の不安定状態中の確認処理を回避することができる。そして、データの確認処理は、安定した波形を有するクロック信号及びデータ信号を用いて行うことができるため、方向信号の変更後の不安定波形によるデータ確認による誤認識を回避できる。
スレーブIC3は、マスタIC2から遅延信号S4と遅延信号S5を受信して、受信信号S5aにより、S5aが立ち下がるタイミングT3でクロック用双方向バス23及びデータ用双方向バス24の向きを出力方向から入力方向に反転する。これによりバスを介して、マスタIc2からクロック信号及びデータ信号が入力する。
さらに、スレーブIC3では、タイミングT4では、受信信号S4aの信号の立下りを検出後にデータの確認処理を開始することで、バス切り替え後に生じるクロック信号及びデータ信号の不安定状態中の確認処理を回避することができる。
そして、遅延信号S4のカウント数9及び/又は遅延信号S5のカウント数6を、遅延生成カウンタ31eに変更可能に設定することで、タイミングT3とT4との時間も変更が可能となる。そのため、データ信号の安定状態後に方向信号Aの出力から入力への変更タイミングが来るように、クロック信号の種類等に応じて、マスタIC側でカウント数を設定可能である。
システムIC1の一例を説明する図である。 スレーブICが受信する信号及び入力データ処理の一例を示すタイムチャートである。 方向信号を生成する回路ブロックの一例を説明する図である。 方向信号のタイムチャートの一例を説明する図である。 従来のマスタIC及びスレーブICのI/O切り替え部の概略を説明する図である。 従来のスレーブICが受信する信号及び入力データ処理の一例を示すタイムチャートである。
符号の説明
1 システムIC
2 マスタIC
3 スレーブIC
10、20 I/O切り替え部
11、12 出力バッファ
13、23 クロック用双方向バッファ
14、24 データ用双方向バッファ
30、40 制御回路
35、46 データ確認部

Claims (10)

  1. バスの方向を指示する第1及び第2の方向信号が入力され、且つクロック信号及びデータ信号を入出力する双方向バス制御回路であって、
    前記第2の方向信号によって指示される信号方向にしたがって、前記クロック信号の入力又は出力方向を切り替える第1の双方向バッファと、
    前記第2の方向信号によって指示される信号方向にしたがって、前記データ信号の入力又は出力方向を切り替える第2の双方向バッファと、
    前記第2の双方向バッファに入力したデータ信号の確認を行い、且つ前記第1の方向信号によって指示される入力方向から出力方向への信号方向の切り替えにしたがって前記データ信号の確認を無効にするデータ確認部と、を有し、
    前記第1の方向信号によって指示される入力方向から出力方向への信号方向の切り替えは、前記第2の方向信号によって指示される入力方向から出力方向への信号方向の切り替えより先に生じることを特徴とする双方向バス制御回路。
  2. 前記第1の方向信号によって指示される出力方向から入力方向への信号方向の切り替えは、前記第2の方向信号によって指示される出力方向から入力方向への信号方向の切り替え後に生じ、且つ、
    前記データ確認部は、前記第1の方向信号によって指示される出力方向から入力方向への信号方向の切り替えにしたがって前記データ信号の確認を有効にする請求項1に記載の双方向バス制御回路。
  3. 前記データ確認部による確認は、パリティチェック及び/又はECC(Error-Correcting Code)を用いたエラーチェックを含む請求項1又は2に記載の双方向バス制御回路。
  4. バスの方向を指示する第1及び第2の方向信号が入力され、且つクロック信号及びデータ信号を入出力する双方向バス制御回路であって、
    前記第2の方向信号によって指示される信号方向にしたがって、前記クロック信号の入力又は出力方向を切り替える第1の双方向バッファと、
    前記第2の方向信号によって指示される信号方向にしたがって、前記データ信号の入力又は出力方向を切り替える第2の双方向バッファと、
    前記第1の方向信号によって指示される出力方向から入力方向への信号方向の切り替えにしたがって前記データ信号の確認を有効にするデータ確認部と、を有し、
    前記第1の方向信号によって指示される出力方向から入力方向への信号方向の切り替えは、前記第2の方向信号によって指示される出力方向から入力方向への信号方向の切り替えより先に生じることを特徴とする双方向バス制御回路。
  5. バスの方向を指示する第1及び第2の方向信号を出力し、且つクロック信号及び前記データ信号を入出力する第1の双方向バス制御回路、及び、前記第1及び第2の方向信号が入力され、且つクロック信号及びデータ信号を入出力する第2の双方向バス制御回路を含むシステム双方向バス制御回路であって、
    前記第1の双方向バス制御回路は、前記第1の方向信号によって指示される入力方向から出力方向への信号方向の切り替えが、前記第2の方向信号によって指示される入力方向から出力方向への信号方向の切り替えより先に生じるように前記第1及び第2の方向信号を生成する方向信号生成部を有し、
    前記第2の双方向バス制御回路は、
    前記第2の方向信号によって指示される信号方向にしたがって、前記クロック信号の入力又は出力方向を切り替える第1の双方向バッファと、
    前記第2の方向信号によって指示される信号方向にしたがって、前記データ信号の入力又は出力方向を切り替える第2の双方向バッファと、
    前記第2の双方向バッファに入力された前記データ信号の確認を行い、且つ前記第1の方向信号によって指示される入力方向から出力方向への信号方向の切り替えにしたがって前記データ信号の確認を無効にするデータ確認部と、を有する、
    ことを特徴とするシステム双方向バス制御回路。
  6. 前記方向信号生成部は、前記第1の方向信号によって指示される出力方向から入力方向への信号方向の切り替えが前記第2の方向信号によって指示される出力方向から入力方向への信号方向の切り替え後に生じるように、前記第1及び第2の方向信号を生成し、且つ、
    前記データ確認部は、前記第1の方向信号によって指示される出力方向から入力方向への信号方向の切り替えにしたがって前記データ信号の確認を有効にする請求項5に記載のシステム双方向バス制御回路。
  7. 前記第2の双方向バス制御回路は、クロック信号を生成するクロック生成部をさらに有し、
    前記方向信号生成部は、前記クロック信号をカウントすることで得た遅延信号を、前記第1及び第2の方向信号として生成する請求項5又は6に記載のシステム双方向バス制御回路。
  8. 前記第2の双方向バス制御回路は、前記データを監視するデータ監視部をさらに有し、
    前記方向信号生成部は、前記クロック信号をカウントすることで得た遅延信号にしたがって、前記第2の双方向バス制御回路のデータ確認部の確認を有効にする請求項7に記載のシステム双方向バス制御回路。
  9. バスの方向を指示する第1及び第2の方向信号が入力し、且つクロック信号及びデータ信号を入出力する半導体集積回路であって、
    前記第2の方向信号によって指示される信号方向にしたがって、前記クロック信号の入力又は出力方向を切り替える第1の双方向バッファと、
    前記第2の方向信号によって指示される信号方向にしたがって、前記データ信号の入力又は出力方向を切り替える第2の双方向バッファと、
    前記第2の双方向バッファに入力された前記データ信号の確認を行い、且つ前記第1の方向信号によって指示される入力方向から出力方向への信号方向の切り替えにしたがって前記データ信号の確認を無効にするデータ確認部と、を有し、
    前記第1の方向信号によって指示される入力方向から出力方向への信号方向の切り替えは、前記第2の方向信号によって指示される入力方向から出力方向への信号方向の切り替えより先に生じることを特徴とする半導体集積回路。
  10. バスの方向を指示する第1及び第2の方向信号を出力し、且つ双方向バスを用いてクロック信号及び前記データ信号を入出力する第1の装置、及び、前記第1及び第2の方向信号が入力し、且つ双方向バスを用いてクロック信号及びデータ信号を入出力する第2の装置を含む処理装置であって、
    前記第1の装置は、前記第1の方向信号によって指示される入力方向から出力方向への信号方向の切り替えが、前記第2の方向信号によって指示される入力方向から出力方向への信号方向の切り替えより先に生じるように前記第1及び第2の方向信号を生成する方向信号生成部、前記第2の方向信号によって指示される信号方向にしたがって、前記クロック信号の入力又は出力方向を切り替える第1の双方向バッファ、及び、前記第2の方向信号によって指示される信号方向にしたがって、前記データ信号の入力又は出力方向を切り替える第2の双方向バッファを有し、
    前記第2の装置は、前記第2の方向信号によって指示される信号方向にしたがって、前記クロック信号の入力又は出力方向を切り替える第3の双方向バッファ、前記第2の方向信号によって指示される信号方向にしたがって、前記データ信号の入力又は出力方向を切り替える第4の双方向バッファ、前記第4の双方向バッファに入力された前記データ信号の確認を行い、且つ前記第1の方向信号によって指示される入力方向から出力方向への信号方向の切り替えにしたがって前記データ信号の確認を無効にするデータ確認部を有することを特徴とする処理装置。
JP2008167528A 2008-06-26 2008-06-26 双方向バス制御回路 Expired - Fee Related JP5195075B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008167528A JP5195075B2 (ja) 2008-06-26 2008-06-26 双方向バス制御回路
US12/382,867 US7882279B2 (en) 2008-06-26 2009-03-25 Bidirectional control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008167528A JP5195075B2 (ja) 2008-06-26 2008-06-26 双方向バス制御回路

Publications (2)

Publication Number Publication Date
JP2010011041A JP2010011041A (ja) 2010-01-14
JP5195075B2 true JP5195075B2 (ja) 2013-05-08

Family

ID=41448916

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008167528A Expired - Fee Related JP5195075B2 (ja) 2008-06-26 2008-06-26 双方向バス制御回路

Country Status (2)

Country Link
US (1) US7882279B2 (ja)
JP (1) JP5195075B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100020220A (ko) * 2008-08-12 2010-02-22 한국전자통신연구원 메모리 공유 제어장치 및 메모리 공유 제어방법, 그리고 공유 메모리 접근방법
US8018250B1 (en) * 2010-10-19 2011-09-13 Xilinx, Inc. Input/output block and operation thereof
CN106301337B (zh) * 2015-05-13 2019-12-06 恩智浦有限公司 双向通信的方法和系统

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5454540A (en) * 1977-10-11 1979-04-28 Hitachi Ltd Data buscontrol system
JPS5771034A (en) * 1980-10-20 1982-05-01 Ricoh Co Ltd Bus conflict preventing circuit
JPS5824925A (ja) * 1981-08-06 1983-02-15 Fujitsu Ltd 双方向性バスの制御方式
JPS6393220A (ja) * 1986-10-08 1988-04-23 Matsushita Electric Ind Co Ltd 論理集積回路
US5418933A (en) * 1990-02-20 1995-05-23 Sharp Kabushiki Kaisha Bidirectional tri-state data bus buffer control circuit for delaying direction switching at I/O pins of semiconductor integrated circuit
JPH0535668A (ja) * 1991-07-30 1993-02-12 Toshiba Corp 信号処理装置
US5736870A (en) * 1995-12-28 1998-04-07 Intel Corporation Method and apparatus for bi-directional bus driver
US5923186A (en) * 1997-03-21 1999-07-13 Advanced Micro Devices,Inc. Two state bi-directional bus
US6834318B2 (en) * 2001-02-16 2004-12-21 Agere Systems Inc. Bidirectional bus repeater for communications on a chip
JP3734483B2 (ja) * 2003-06-18 2006-01-11 沖電気工業株式会社 双方向バス駆動回路及び双方向バス回路
US7061274B2 (en) * 2003-09-24 2006-06-13 Stmicroelectronics, Inc. Self-programmable bidirectional buffer circuit and method
US7340541B2 (en) * 2004-08-16 2008-03-04 National Instruments Corporation Method of buffering bidirectional digital I/O lines
US7478286B2 (en) * 2005-04-08 2009-01-13 Linear Technology Corporation Circuit and method of detecting and resolving stuck I2C buses
US7417464B2 (en) * 2006-09-22 2008-08-26 Integrated Electronic Solutions Pty. Ltd Bi-directional signal transmission system
US7508723B2 (en) * 2007-05-24 2009-03-24 Entorian Technologies, Lp Buffered memory device
US7793022B2 (en) * 2007-07-25 2010-09-07 Redmere Technology Ltd. Repeater for a bidirectional serial bus

Also Published As

Publication number Publication date
US7882279B2 (en) 2011-02-01
US20090327570A1 (en) 2009-12-31
JP2010011041A (ja) 2010-01-14

Similar Documents

Publication Publication Date Title
JP5160100B2 (ja) データ通信誤動作防止装置、電子機器、データ通信誤動作防止装置の制御方法、データ通信誤動作防止装置の制御プログラム、及び当該プログラムを記録した記録媒体
US20150363353A1 (en) Communication system and electronic circuit
EP1237282B1 (en) Circuit for the detection of clock signal period abnormalities
JP5195075B2 (ja) 双方向バス制御回路
JPH06324977A (ja) データ転送方法
JP6696511B2 (ja) 通信装置、通信方法、プログラム、および通信システム
JP5035349B2 (ja) 回路、その制御方法
TWI581104B (zh) 主控元件以及資料傳輸方法
EP3655841B1 (en) Method to synchronize integrated circuits fulfilling functional safety requirements
JP6191530B2 (ja) バス通信システム及びマスタ通信装置
US8908782B2 (en) Method and apparatus for checking asynchronous transmission of control signals
CN112506838A (zh) 一种应用于ir46电表检定装置的spi时钟同步方法
JP2005084792A (ja) データ通信ユニット
CN112292673A (zh) I3c从机接口、具有i3c从机接口的集成电路及用于运行i3c从机接口的方法
JP2538682B2 (ja) 基準クロック源自動切替え方式
JP2007052515A (ja) シリアルデータ転送システムおよびシリアルデータ転送方法
KR20090074491A (ko) I2c 프로토콜에 기초한 선택적 인터페이싱 방법,디바이스 및 i2c 버스 시스템
CN112311519A (zh) 使用信号中的边沿定时的全双工通信
JP5560915B2 (ja) 安全制御システム
JPS6115437A (ja) シリアルデ−タ受信系のスタ−トビツト検出回路
JPH04318642A (ja) インターフェース装置
JPH06274449A (ja) バスファイト抑止回路
JP2015161184A (ja) 電子制御装置
JP2004260443A (ja) データ伝送装置およびデータ中継装置
JP2004274322A (ja) 通信装置および給湯装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110315

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121023

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121206

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130121

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

Free format text: PAYMENT UNTIL: 20160215

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5195075

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees