(57)【要約】  【課題】  互いに異なる周波数で動作する同期式回路を内蔵した半導体集積回路間でデータを送受信する際に必要となる非同期通信回路において、ラッチ回路におけるメタステーブル状態の発生を回避して通信パフォーマンスの向上を図る。  【解決手段】  互いに同期していない送信側と受信側のクロック３，４を位相比較器５で監視し、両者の位相差が一定の値未満となった場合には、いずれか一方のクロックの位相をシフトして位相差を確保するか、又はデータ転送を一時停止する構成とした。  【選択図】  図１
2005109955.tif 000002
【特許請求の範囲】
【請求項１】
第１のクロック信号を生成する第１のクロック生成手段と、
第２のクロック信号を生成する第２のクロック生成手段と、
前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、
前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、
前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、前記位相差が所定の値以上となるよう前記第１のクロック信号の位相をシフトする旨の制御信号を前記第１のクロック生成手段に出力する位相比較手段と、を備えた、
ことを特徴とする非同期通信回路。
【請求項２】
第１のクロック信号を生成する第１のクロック生成手段と、
第２のクロック信号を生成する第２のクロック生成手段と、
前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、
前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、
前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、前記位相差が所定の値以上となるよう前記第２のクロック信号の位相をシフトする旨の制御信号を前記第２のクロック生成手段に出力する位相比較手段と、を備えた、
ことを特徴とする非同期通信回路。
【請求項３】
第１のクロック信号を生成する第１のクロック生成手段と、
第２のクロック信号を生成する第２のクロック生成手段と、
前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、
前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、
前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、データの送信を一時的に中断する旨の制御信号を前記データ送信手段に出力する位相比較手段と、を備えた、
ことを特徴とする非同期通信回路。
【請求項４】
第１のクロック信号を生成する第１のクロック生成手段と、
第２のクロック信号を生成する第２のクロック生成手段と、
前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、
前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、
前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、前記第１のクロック信号または前記第２のクロック信号を一時的に止める旨の制御信号を前記第１のクロック生成手段または前記第２のクロック生成手段に出力する位相比較手段と、を備えた、
ことを特徴とする非同期通信回路。
【請求項５】
第１のクロック信号を生成する第１のクロック生成手段と、
第２のクロック信号を生成する第２のクロック生成手段と、
前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、
前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、
前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、同一の送信データを２サイクル続けて出力する旨の制御信号を前記データ送信手段に出力する位相比較手段と、を備えた、
ことを特徴とする非同期通信回路。
【請求項６】
第１のクロック信号を生成する第１のクロック生成手段と、
第２のクロック信号、及び該第２のクロック信号を遅延させたクロック信号を生成する第２のクロック生成手段と、
前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、
前記第２のクロック信号、及び前記第２のクロック信号を遅延させたクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、
前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、該位相差が所定の値以上のときは、前記第２のクロック信号に同期して受信されるデータを受信データとして選択する旨の制御信号を前記データ受信手段に出力し、該位相差が所定の値未満のときは、前記第２のクロック信号を遅延させたクロック信号に同期して受信されるデータを受信データとして選択する旨の制御信号を前記データ受信手段に出力する位相比較手段と、を備えた
ことを特徴とする非同期通信回路。
【請求項７】
請求項１又は請求項２に記載の非同期通信回路において、
前記第１、又は第２のクロック生成手段は、
クロック信号を遅延させる遅延回路と、
前記制御信号に応じて前記クロック信号あるいは前記遅延回路により遅延されたクロック信号のいずれかを選択するセレクタと、を備えた
ことを特徴とする非同期通信回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、互いに異なる周波数で動作する回路間でデータを送受信する際に必要となる非同期通信回路に関し、特に、ラッチ回路におけるメタステーブル状態の発生を回避して通信パフォーマンスの向上を図った非同期通信回路に関する。
【背景技術】
【０００２】
同期式回路の問題の１つに、メタステーブルと呼ばれる非同期の外部入力信号で発生するラッチ回路の準安定状態がある（特許文献１の段落(0002)〜(0003)参照）。この準安定状態は、ラッチ回路において規定されているクロックの立上り（もしくは立下り）を基準にしたセットアップ時間とホールド時間で囲まれた危険ゾーンである。このメタステーブル状態は、非同期の入力データが変化したときに発生するラッチ回路の異常動作によるものであり、ラントパルスという短いパルスが発生したり、スルーレートがなくなって急峻な出力波形が得られなくなったり、発振が発生したり、出力の応答が遅くなるなどシステムを中断させるような誤動作を引き起こす。
【０００３】
かかる準安定状態による回路の誤動作を避けるため、通常ラッチ回路のクロック入力に対してデータ入力のセットアップ時間、ホールド時間が規定されている。これらの制約は、ラッチに代えてフリップフロップ（即ちダブルラッチ構成）を用いることにより格段に緩和されるが、セットアップ時間、ホールド時間の制約は依然として存在する。
【０００４】
そのため、クロック周波数の異なる２つの系でこのラッチ回路を用いてデータの受け渡しを行う場合、メタステーブルとなる時間を考慮した待ち時間が必要である。例えばメタステーブルとなる期間を減らすために１つの送信データを連続して複数サイクルずつ送るなどの方法が採られる。
【０００５】
特に２つのクロック間で位相関係が全く保障されていない場合では、受信側のデータサンプリングレートに対して送信側のデータ転送レートは1/2〜1/4程度に低く設定する必要がある。なお、２つの独立したＰＬＬ回路によって生成された２種類のクロック等は、一般にその位相関係を保障する事は困難であるため、２つのクロック間で位相関係が全く保障されていないことが多い。
【０００６】
以下、従来例の非同期通信回路について、図２の構成図を用いて説明する。
図２において、１はデータ送信用のクロック信号３を発生するクロック生成回路、２はデータ受信用のクロック信号４を発生するクロック生成回路、７はその最終段のフリップフロップ７ａよりクロック信号３に同期して、同期信号等を含むデータを送信データ信号６として出力するデータ送信手段、８はその初段のフリップフロップ８ａによりクロック信号４に同期して、送信データ信号６から同期信号等を含むデータを受信するデータ受信手段、１０は受信データ信号である。
【０００７】
以上のような回路構成では、クロック信号３と４とが互いに周波数が異なる組み合わせの場合、クロック信号３と４の位相差がサイクル毎に変化し、クロック信号３と４の位相差が所定の値以上に保たれるとは限らないため、受信回路側でメタステーブルな状態が発生し得る。そのためクロック信号３と４のうち周波数の低い側は一定サイクルの割合でデータの受け渡しはできず、データ送受信のスループットはその分低下する。
【０００８】
次に、上記のような構成を有する従来の非同期回路の動作について、図４を参照しながら説明する。
【０００９】
図４は上記従来の非同期回路の動作を説明するタイミングチャートである。図４において、３はデータ送信側の動作クロック信号、４はデータ受信側の動作クロック信号、６は送信データ信号、１０は受信データ信号を示す。
【００１０】
図４に示すように、期間４０４において、クロック信号３とクロック信号４との位相差が無いため、両者間のデータの受け渡しではメタステーブルな状態が発生し得る。そこでこの問題を回避するために、例えば３個のデータ（ｄ１、ｄ２、ｄ３）からなるシーケンスを送信するに当たって、１つのデータを送信するのに常に２サイクル（４０１〜４０２、４０３〜４０４、４０５〜４０６）の期間を取っている。
【００１１】
その結果、受信側のクロック信号４の計５サイクルの間に３個のデータ（ｄ１〜ｄ３）しか受信できていない。即ち、この例では受信効率は約６０％となってしまう。
【特許文献１】特開２０００−２６１３１０号公報（第２頁、図６）
【発明の開示】
【発明が解決しようとする課題】
【００１２】
上述の様に、クロック周波数の異なる２つの系でラッチ回路を用いてデータの受け渡しを行う場合、特に２つのクロック間で位相関係が全く保障されていない場合では、受信側のデータサンプリングレートに対して送信側のデータ転送レートは1/2〜1/4程度に低く設定する必要がある。すなわちデータ転送の上限への制約が大きい。そのため、単一クロックによる同期通信の場合と同等のバンド幅を確保するためにはバスの幅を広げるか、又はさらに高速なクロックが必要となる。
【００１３】
しかしながら、そのような方法はＬＳＩのピン数が増加してコスト高になったり、クロック設計が困難になるという欠点がある。
【００１４】
本発明は、上記のような問題点を解決するためになされたもので、非同期の回路間でデータの送受信を行う場合、異なるクロック間の位相差から生ずるメタステーブルな状態を常に回避し、高い通信パフォーマンスを得ることのできる非同期通信回路を提供することを目的とする。
【課題を解決するための手段】
【００１５】
前記課題を解決するために、本発明の請求項１に記載の非同期通信回路は、第１のクロック信号を生成する第１のクロック生成手段と、第２のクロック信号を生成する第２のクロック生成手段と、前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、前記位相差が所定の値以上となるよう前記第１のクロック信号の位相をシフトする旨の制御信号を前記第１のクロック生成手段に出力する位相比較手段とを備えたものである。
【００１６】
また、本発明の請求項２に記載の非同期通信回路は、第１のクロック信号を生成する第１のクロック生成手段と、第２のクロック信号を生成する第２のクロック生成手段と、前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、前記位相差が所定の値以上となるよう前記第２のクロック信号の位相をシフトする旨の制御信号を前記第２のクロック生成手段に出力する位相比較手段とを備えたものである。
【００１７】
また、本発明の請求項３に記載の非同期通信回路は、第１のクロック信号を生成する第１のクロック生成手段と、第２のクロック信号を生成する第２のクロック生成手段と、前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、データの送信を一時的に中断する旨の制御信号を前記データ送信手段に出力する位相比較手段とを備えたものである。
【００１８】
また、本発明の請求項４に記載の非同期通信回路は、第１のクロック信号を生成する第１のクロック生成手段と、第２のクロック信号を生成する第２のクロック生成手段と、前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、前記第１のクロック信号または前記第２のクロック信号を一時的に止める旨の制御信号を前記第１のクロック生成手段または前記第２のクロック生成手段に出力する位相比較手段とを備えたものである。
【００１９】
また、本発明の請求項５に記載の非同期通信回路は、第１のクロック信号を生成する第１のクロック生成手段と、第２のクロック信号を生成する第２のクロック生成手段と、前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、同一の送信データを２サイクル続けて出力する旨の制御信号を前記データ送信手段に出力する位相比較手段とを備えたものである。
【００２０】
また、本発明の請求項６に記載の非同期通信回路は、第１のクロック信号を生成する第１のクロック生成手段と、第２のクロック信号、及び該第２のクロック信号を遅延させたクロック信号を生成する第２のクロック生成手段と、前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、前記第２のクロック信号、及び前記第２のクロック信号を遅延させたクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、該位相差が所定の値以上のときは、前記第２のクロック信号に同期して受信されるデータを受信データとして選択する旨の制御信号を前記データ受信手段に出力し、該位相差が所定の値未満のときは、前記第２のクロック信号を遅延させたクロック信号に同期して受信されるデータを受信データとして選択する旨の制御信号を前記データ受信手段に出力する位相比較手段とを備えたものである。
【００２１】
また、本発明の請求項７に記載の非同期通信回路は、請求項１又は請求項２に記載の非同期通信回路において、前記第１、又は第２のクロック生成手段は、クロック信号を遅延させる遅延回路と、前記制御信号に応じて前記クロック信号あるいは前記遅延回路により遅延されたクロック信号のいずれかを選択するセレクタとを備えたものである。
【発明の効果】
【００２２】
本発明の請求項１にかかる非同期通信回路によれば、第１のクロック信号を生成する第１のクロック生成手段と、第２のクロック信号を生成する第２のクロック生成手段と、前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、前記位相差が所定の値以上となるよう前記第１のクロック信号の位相をシフトする旨の制御信号を前記第１のクロック生成手段に出力する位相比較手段とを備えるようにしたので、両クロック間の位相が一定の値以下に接近する事が常に無いため受信側はメタステーブルな状態を回避することが可能となり、両クロックのうち周波数の低い方のクロックのサイクル毎にデータを転送することができる。
【００２３】
本発明の請求項２にかかる非同期通信回路によれば、第１のクロック信号を生成する第１のクロック生成手段と、第２のクロック信号を生成する第２のクロック生成手段と、前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、前記位相差が所定の値以上となるよう前記第２のクロック信号の位相をシフトする旨の制御信号を前記第２のクロック生成手段に出力する位相比較手段とを備えるようにしたので、両クロック間の位相が一定の値以下に接近する事が常に無いため受信側はメタステーブルな状態を回避することが可能となり、両クロックのうち周波数の低い方のクロックのサイクル毎にデータを転送することができる。
【００２４】
本発明の請求項３にかかる非同期通信回路によれば、第１のクロック信号を生成する第１のクロック生成手段と、第２のクロック信号を生成する第２のクロック生成手段と、前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、データの送信を一時的に中断する旨の制御信号を前記データ送信手段に出力する位相比較手段とを備えるようにしたので、受信側のメタステーブルな状態となる可能性のあるサイクルだけ常にデータ送信を中止することが可能となり、両クロックのうち周波数の低い方のクロックのほぼ毎サイクルでデータを転送することができる。
【００２５】
本発明の請求項４にかかる非同期通信回路によれば、第１のクロック信号を生成する第１のクロック生成手段と、第２のクロック信号を生成する第２のクロック生成手段と、前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、前記第１のクロック信号または前記第２のクロック信号を一時的に止める旨の制御信号を前記第１のクロック生成手段または前記第２のクロック生成手段に出力する位相比較手段とを備えるようにしたので、受信側のメタステーブルな状態となる可能性のあるサイクルだけデータ送受信を一時的に中止することが常に可能となり、両クロックのうち周波数の低い方のクロックのほぼ毎サイクルでデータを転送することができる。
【００２６】
本発明の請求項５にかかる非同期通信回路によれば、第１のクロック信号を生成する第１のクロック生成手段と、第２のクロック信号を生成する第２のクロック生成手段と、前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、前記第２のクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、その位相差が所定の値未満のとき、同一の送信データを２サイクル続けて出力する旨の制御信号を前記データ送信手段に出力する位相比較手段とを備えるようにしたので、受信側のメタステーブルな状態となる可能性のあるサイクルでは送信データの変化を起こさないようにすることによりメタステーブルの可能性を伴うデータ送受信を常に回避することが可能となり、両クロックのうち周波数の低い方のクロックのほぼ毎サイクルでデータを転送することができる。
【００２７】
本発明の請求項６にかかる非同期通信回路によれば、第１のクロック信号を生成する第１のクロック生成手段と、第２のクロック信号、及び該第２のクロック信号を遅延させたクロック信号を生成する第２のクロック生成手段と、前記第１のクロック信号に同期して送信データを出力するデータ送信手段と、前記第２のクロック信号、及び前記第２のクロック信号を遅延させたクロック信号に同期して、前記データ送信手段により出力された送信データを受信するデータ受信手段と、前記第１のクロック信号の位相と前記第２のクロック信号の位相とを比較し、該位相差が所定の値以上のときは、前記第２のクロック信号に同期して受信されるデータを受信データとして選択する旨の制御信号を前記データ受信手段に出力し、該位相差が所定の値未満のときは、前記第２のクロック信号を遅延させたクロック信号に同期して受信されるデータを受信データとして選択する旨の制御信号を前記データ受信手段に出力する位相比較手段とを備えるようにしたので、受信側のメタステーブルな状態となる可能性の無いデータを常に選択することが可能となり、両クロックのうち周波数の低い方のクロックのほぼ毎サイクルでデータを転送することができる。
【００２８】
本発明の請求項７にかかる非同期通信回路によれば、請求項１又は請求項２に記載の非同期通信回路において、前記第１、又は第２のクロック生成手段は、クロック信号を遅延させる遅延回路と、前記制御信号に応じて前記クロック信号あるいは前記遅延回路により遅延されたクロック信号のいずれかを選択するセレクタとを備えるようにしたので、メタステーブルな状態となる可能性のあるクロック位相関係を排除するための必要なクロック位相のシフト手段を提供することができる。
【発明を実施するための最良の形態】
【００２９】
（実施の形態１）
以下、本発明の実施の形態１による非同期通信回路について、図１を参照しながら説明する。
図１は本実施の形態１による非同期通信回路の構成を示す図である。
【００３０】
図１において、クロック生成回路（第１のクロック生成手段）１は、第１のクロック信号であるデータ送信用のクロック信号３を発生するものであり、位相比較器５の制御信号９に基づいて基準となるクロック信号３１（図３参照）と該クロック信号３１の位相をシフトしたクロック信号３２（図３参照）とを選択的に出力する機能を有する。クロック生成回路（第２のクロック生成手段）２は、第２のクロック信号であるデータ受信用のクロック信号４を発生する。
【００３１】
データ送信手段７はその最終段のフリップフロップ７ａによりデータ（同期信号等を含む）をクロック信号３に同期させて送信データ信号６として出力する。
【００３２】
データ受信手段８はその初段のフリップフロップ８ａによりクロック信号４に同期して送信データ信号６からデータ（同期信号等を含む）を受信し、受信データ信号１０を得る。
【００３３】
位相比較器（位相比較手段）５は、送信側および受信側の同期クロック信号３（＝クロック信号３１）と動作クロック信号４との位相差を検出する機能を有し、その位相差が所定の値未満の時には、クロック信号３１の位相をシフトするように制御信号９を出力してクロック生成回路１を制御する。なお、前記所定の値とは、ラッチ回路の準安定状態（メタステーブル状態）を回避するために、実験的に決定する値であり、マージンを含めて決定してもよい。
【００３４】
次に、本実施の形態１による非同期通信回路の、データ送信用のクロック信号３を発生するクロック生成回路１について、図５を用いて説明する。
図５は、上記クロック生成回路１の一構成例を示す図である。
【００３５】
図５に示すように、発振回路５４で生成されたクロック信号３１は、セレクタ５５の一方の入力に接続されると共に、遅延回路５１に入力され、この遅延回路５１により遅延されたクロック信号３２がセレクタ５５のもう一つの入力に接続されている。制御信号９はセレクタ５５を制御してクロック信号３１とクロック信号３２とのいずれか一方を選択してクロック端子３に出力する。
【００３６】
以上の構成により、制御信号９に基づいて、発振回路５４により生成されたオリジナルのクロック信号３１と、このクロック信号３１を遅延させた遅延クロック３２とを選択的に出力することが可能となり、メタステーブルな状態となる可能性のあるクロック位相関係を排除するために必要なクロック位相のシフトを行うことができる。
【００３７】
次に本実施の形態１による非同期通信回路の動作について、図３を用いて説明する。
図３は、本実施の形態１による非同期通信回路の動作を説明するタイミングチャートである。図３において、３はデータ送信側の動作クロック信号、４はデータ受信側の動作クロック信号、６は送信データ信号、９は位相比較結果に基づく制御信号、１０は受信データ信号、３１は送信側の基準となるクロック信号、３２はクロック信号３１を遅延させたクロック信号である。なお、期間３０１〜３０３はクロック信号４とクロック信号３１の立ち上がりエッジの位相差が所定の値以上である場合を、期間３０４はクロック信号４とクロック信号３１の立ち上がりエッジの位相差が所定の値未満である場合を示すものである。
【００３８】
図３に示すように、期間３０１〜３０３において、送信側のクロック信号３１の立ち上がりエッジと、受信側の動作クロック信号４の立ち上がりエッジとの位相差が、所定の値以上である場合には、位相比較器５がクロック信号３１をそのまま送信用クロック３として用いる旨の制御信号を出力し、送信用クロックを遅延させることなく、データの送受信を行う。
【００３９】
一方で、期間３０４において、送信側のクロック信号３１の立ち上がりエッジと、受信側の動作クロック信号４の立ち上がりエッジとの位相差が、所定の値未満である場合には、位相比較器５がクロック信号３１を遅延させたクロック信号３２を用いる旨の制御信号を出力し、期間３０４においては、クロック信号３はクロック信号４と位相差が所定の値以上となるように制御信号９によって位相がシフトされることとなる。
【００４０】
結果として、クロック生成回路１からは、送信側の動作クロック信号としてクロック信号３に示すクロック信号が出力されることとなる。
【００４１】
そして、このように生成されたクロック信号３、及びクロック信号４を用いてデータの送受信を行なった場合には、周波数の低い受信側クロックのサイクル毎にデータ送受信を行うことができ、図３に示すように、受信側のクロック信号４の計５サイクルの期間に５個のデータｄ１〜ｄ５を受信することができる。従って、この図３に示す例では、受信効率が１００％となる。
【００４２】
このように、本実施の形態１による非同期通信回路では、送信クロック信号の位相と受信クロック信号の位相とを比較し、その位相差が所定の値未満のとき、送信クロック生成手段に制御信号を出力する位相比較手段と、送信クロック信号を生成するとともに、前記位相比較手段の制御信号に基づいて前記位相差が所定の値以上となるように、前記送信クロック信号の位相をシフトする前記送信クロック生成手段とを備えるようにしたので、データ送受信するとき、送信側クロックと受信側クロックとの位相差は、常に所定の値以上を保つことができる。その結果、同期回路のメタステーブルな状態を回避することができ、両クロックのうち周波数の低いクロックのサイクル毎でデータ送受信を行うことができるため、データ送受信のスループットを上げ、通信回路のパフォーマンスを向上させることができる。
【００４３】
なお、本発明の実施の形態１では、図３に示したように、位相比較器５がクロック３１とクロック４とを比較し、クロック信号３１とクロック信号４との位相差が一定の値未満のサイクルに対してのみクロック信号３をクロック信号３１からクロック信号３２に切換えて出力しているが、両者の位相差が一定の値未満となるサイクルが複数回連続して起こるような組み合わせの場合には、位相の比較制御が困難となる。そのため、この様な場合には、クロック信号３１とクロック信号４との位相差が一定の値未満となった後は、クロック信号３として位相シフト後のクロック信号３２を連続して出力するようにしても良く、クロック信号３２に切換えた後は、位相比較器５においてクロック信号３２とクロック４とを比較する構成とすれば良い。但し、位相シフト後のクロック３２の位相がクロック３１の位相と一致するように調整することが必要である。
【００４４】
また、本実施の形態１では、クロック生成回路１が図５に示すような構成を有し、送信側のクロックの位相をシフトさせるものについて説明したが、クロック生成回路２が図５に示すような構成を有するものとし、図６に示すように、位相比較器５からの制御信号９をこのクロック生成回路２に入力することで、受信側のクロックの位相をシフトさせるようにしてもよく、図１の構成と同様の効果が得られる。
【００４５】
また、本実施の形態１では、クロック発振回路５４をクロック生成回路１に内蔵しているが、当然ながら発振回路５４の出力の代わりに、外部からクロック信号を入力する場合でも同様の効果が得られる。
【００４６】
また、クロックの位相シフトの方法としてオリジナルのクロック信号３１とそれを遅延させたクロック信号３２とを制御信号９に基づいてセレクタ５５を用いて選択するとしているが、オリジナルのクロック入力端子と出力端子の間にセレクタの代わりにＡＮＤゲートを介在させ、制御信号９に基づいて必要な期間このＡＮＤゲートを制御してクロックの立ち上がりエッジをＬｏに固定することでクロックの立ち上がりエッジをシフトさせる構成としても良い。
【００４７】
また、クロック３とクロック４の位相差が一定の値未満であることを位相比較器５で検出した場合に、制御信号９で送信側のクロック信号または受信側のクロック信号の位相をシフトさせる代わりに、図９に示すように、位相比較器５が制御信号９２により送信側或いは受信側のクロック信号を一時的に止めることにより、メタステーブル状態が発生し得るサイクルでのデータ送信を回避する構成としても良い。
【００４８】
また、上記実施の形態１と同様に、制御信号９で送信側のクロック信号または受信側のクロック信号の位相をシフトさせる代わりに、図７，図８に示すように、位相比較器５が制御信号９０，９１によりデータの送受信の一時的停止をデータ送信手段７，データ受信手段８にそれぞれ指示する構成としても、同様にメタステーブル状態が発生し得るサイクルでのデータ送受信を回避でき、両クロックのうち周波数の低いクロックのほぼ毎サイクルでデータ送受信を行うことができるため、データ送受信のスループットを上げ、通信回路のパフォーマンスを向上させることができる。
【００４９】
また同様に、制御信号９で送信側のクロック信号または受信側のクロック信号の位相をシフトさせる代わりに、図１０に示すように、位相比較器５が制御信号９３によりデータ信号を送信側のクロック信号の２サイクル分続けて出力することをデータ送信手段７に指示する構成としても、クロック４の立ち上がり近傍でのデータの変化を防止できるため、メタステーブル状態の発生を回避でき、両クロックのうち周波数の低いクロックのほぼ毎サイクルでデータ送受信を行うことができるため、データ送受信のスループットを上げ、通信回路のパフォーマンスを向上させることができる。
【００５０】
また同様に、制御信号９で送信側のクロック信号または受信側のクロック信号の位相をシフトさせる代わりに、図１１に示すように、受信側はあらかじめクロック４及びクロック４を遅延させたクロック４ａのそれぞれのタイミングでフリップフロップ８ａおよび８ｂにより一旦送信データ６をそれぞれラッチしておき、制御信号９４で切り替わるセレクタ８ｃによりそのラッチした信号のいずれかを選択する構成とすることでメタステーブル状態が発生していないデータを選択しても良い。
【００５１】
即ち、クロック生成回路２においてクロック信号及び該クロック信号を遅延させたクロック信号を生成し、データ受信手段８が、前記クロック信号及び前記クロック信号を遅延させたクロック信号に同期して送信データを受信する機能を有し、位相比較器５が、データ受信手段８を制御して、前記第１のクロック信号の位相と前記第２のクロック信号の位相との位相差が所定の値以上のときは、前記第２のクロック信号に同期して受信されるデータを受信データとして選択し、位相差が所定の値未満のときは、前記第２のクロック信号を遅延させたクロック信号に同期して受信されるデータを受信データとして選択することでメタステーブル状態が発生していないデータを選択しても良く、これにより両クロックのうち周波数の低いクロックのほぼ毎サイクルでデータ送受信を行うことができるため、データ送受信のスループットを上げ、通信回路のパフォーマンスを向上させることができる。
【産業上の利用可能性】
【００５２】
以上のように、本発明に係る非同期通信回路は、互いにクロック周波数の異なる回路間でデータの送受信を行う場合、両クロック間の位相差から生ずるメタステーブルな状態を回避し、データ転送の高いスループットを得ることができるという効果を有するものであり、通信パフォーマンスを向上する必要のある非同期通信回路として有用である。
【図面の簡単な説明】
【００５３】
【図１】本発明の実施の形態１による非同期通信回路の一構成例を示す図である。
【図２】従来の非同期通信回路の構成を示す図である。
【図３】本発明の実施の形態１による非同期通信回路の動作を説明するタイミングチャートを示す図である。
【図４】従来の非同期通信回路の動作を説明するタイミングチャートを示す図である。
【図５】本発明の実施の形態１による非同期通信回路における、クロック生成回路の一構成例を示す図である。
【図６】本発明の実施の形態１による非同期通信回路の他の構成例を示す図である。
【図７】本発明の実施の形態１による非同期通信回路のさらに他の構成例を示す図である。
【図８】本発明の実施の形態１による非同期通信回路のさらに他の構成例を示す図である。
【図９】本発明の実施の形態１による非同期通信回路のさらに他の構成例を示す図である。
【図１０】本発明の実施の形態１による非同期通信回路のさらに他の構成例を示す図である。
【図１１】本発明の実施の形態１による非同期通信回路のさらに他の構成例を示す図である。
【符号の説明】
【００５４】
１  データ送信用のクロック生成回路
２  データ受信用のクロック生成回路
３  データ送信側の動作クロック信号
４  データ受信側の動作クロック信号
５  位相比較器
６  送信データ信号
７  データ送信手段
８  データ受信手段
９，９０〜９４  位相比較結果に基づく制御信号
１０  受信データ信号
ｄ１〜ｄ５  送信、受信されたデータ
３１  送信用クロック３の元となるクロック信号
３２  クロック信号３１を遅延させた信号
５４  発振回路
５１  遅延回路
５５  セレクタ
【図１】
2005109955.tif 000003
【図２】
2005109955.tif 000004
【図３】
2005109955.tif 000005
【図４】
2005109955.tif 000006
【図５】
2005109955.tif 000007
【図６】
2005109955.tif 000008
【図７】
2005109955.tif 000009
【図８】
2005109955.tif 000010
【図９】
2005109955.tif 000011
【図１０】
2005109955.tif 000012
【図１１】
2005109955.tif 000013