(57)【特許請求の範囲】
【請求項１】
第１のクロック信号により動作する送信回路から、前記第１のクロック信号と異なる第２のクロック信号により動作する受信回路へ送信データを転送するデータ転送システムであって、
前記送信回路は、
前記送信データの送信タイミングに応じて信号レベルを論理反転したポール信号を出力する出力回路を有し、
前記受信回路は、
前記送信データを複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の受信データを生成する第１の信号生成回路と、
前記ポール信号を前記複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の同期ポール信号を生成する第２の信号生成回路と、
前記複数の同期ポール信号のレベルを互いに比較した結果に応じて前記複数の受信データのうちから選択した１つの受信データを出力するデータ選択回路と、
を有し、
前記第１の信号生成回路は、複数の第１回路を有し、
前記複数の第１回路それぞれは、互いに異なるタイミングで前記送信データを保持し、保持した送信データに対応する信号レベルのデータを前記受信データとして出力し、
前記第２の信号生成回路は、複数の第２回路を有し、
前記複数の第２回路それぞれは、互いに異なるタイミングで前記ポール信号を保持し、保持したポール信号に対応する信号レベルのデータを前記同期ポール信号として出力することを特徴とするデータ転送システム。
【請求項２】
前記第１の信号生成回路は、３つの前記第１回路を有し、前記３つの第１回路は互いに異なる３つのタイミングに対応した第１〜第３の前記受信データを出力し、
前記第２の信号生成回路は、３つの前記第２回路を有し、前記３つの第２回路は前記３つのタイミングに対応した第１〜第３の前記同期ポール信号を生成すること
を特徴とする請求項１記載のデータ転送システム。
【請求項３】
前記データ選択回路は、
前記第１〜第３の同期ポール信号の信号レベルが互いに等しい場合に前記第２の受信データを選択し、
前記第１の同期ポール信号の信号レベルが前記第２の同期ポール信号及び前記第３の同期ポール信号の信号レベルと異なる場合に前記第３の受信データを選択し、
前記第１の同期ポール信号及び前記第２の同期ポール信号の信号レベルが前記第３の同期ポール信号の信号レベルと異なる場合に前記第１の受信データを選択すること
を特徴とする請求項２記載のデータ転送システム。
【請求項４】
前記受信回路は、
直列接続され前記第２のクロック信号が供給される複数のフリップフロップ回路を含み、
初段の前記フリップフロップ回路には前記ポール信号が供給され、
前記３つの第２回路は、前記複数のフリップフロップ回路のうちの最終段の前記フリップフロップ回路から出力される同期ポール信号を互いに異なる３つのタイミングで保持して前記第１〜第３の同期ポール信号を生成すること、
を特徴とする請求項２又は３記載のデータ転送システム。
【請求項５】
所定周期で繰り返すタイミング信号に基づいて前記３つのタイミングに対応する第１〜第３の受信イネーブル信号を生成するイネーブル信号生成回路を備え、
前記３つの第２回路は、それぞれ前記第１〜第３の受信イネーブル信号に基づいて信号を生成し、
前記３つの第１回路は、それぞれ前記第１〜第３の受信イネーブル信号に基づいて信号を生成すること、
を特徴とする請求項２〜４のうちの何れか一項に記載のデータ転送システム。
【請求項６】
前記３つの第１回路は、
イネーブル端子に前記第１の受信イネーブル信号が供給され、クロック端子に前記第２のクロック信号が供給され、入力端子に前記送信データが供給され、前記第１の受信データを出力する第１のフリップフロップ回路、
イネーブル端子に前記第２の受信イネーブル信号が供給され、クロック端子に前記第２のクロック信号が供給され、入力端子に前記送信データが供給され、前記第２の受信データを出力する第２のフリップフロップ回路、及び
イネーブル端子に前記第３の受信イネーブル信号が供給され、クロック端子に前記第２のクロック信号が供給され、入力端子に前記送信データが供給され、前記第３の受信データを出力する第３のフリップフロップ回路である
ことを特徴とする請求項５記載のデータ転送システム。
【請求項７】
前記３つの第２回路は、
イネーブル端子に前記第１の受信イネーブル信号が供給され、クロック端子に前記第２のクロック信号が供給され、前記第１の同期ポール信号を出力する第１のフリップフロップ回路、
イネーブル端子に前記第２の受信イネーブル信号が供給され、クロック端子に前記第２のクロック信号が供給され、前記第２の同期ポール信号を出力する第２のフリップフロップ回路、及び
イネーブル端子に前記第３の受信イネーブル信号が供給され、クロック端子に前記第２のクロック信号が供給され、前記第３の同期ポール信号を出力する第３のフリップフロップ回路である
ことを特徴とする請求項５又は６に記載のデータ転送システム。
【請求項８】
前記送信回路は、イネーブル端子に送信イネーブル信号が供給され、前記第１のクロック信号に基づいてデータを保持し、その保持したレベルと等しい前記送信データを出力するフリップフロップ回路を含む、ことを特徴とする請求項１〜７のうちの何れか一項に記載のデータ転送システム。
【請求項９】
送信回路から出力される送信データを複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の受信データを生成する第１の信号生成回路と、
前記送信回路が前記送信データの送信タイミングに応じて信号レベルを論理反転するポール信号を前記複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の同期ポール信号を生成する第２の信号生成回路と、
前記複数の同期ポール信号のレベルを互いに比較した結果に応じて前記複数の受信データのうちから選択した１つの受信データを出力するデータ選択回路と、
を有し、
前記第１の信号生成回路は、複数の第１回路を有し、
前記複数の第１回路それぞれは、互いに異なるタイミングで前記送信データを保持し、保持した送信データに対応する信号レベルのデータを前記受信データとして出力し、
前記第２の信号生成回路は、複数の第２回路を有し、
前記複数の第２回路それぞれは、互いに異なるタイミングで前記ポール信号を保持し、保持したポール信号に対応する信号レベルのデータを前記同期ポール信号として出力することを特徴とする受信回路。
【請求項１０】
送信回路から出力される送信データを複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の受信データを生成し、
前記送信回路が前記送信データの送信タイミングに応じて信号レベルを論理反転するポール信号を前記複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の同期ポール信号を生成し、
前記複数の同期ポール信号のレベルを互いに比較した結果に応じて前記複数の受信データのうちから選択した１つの受信データを出力すること、
を特徴とする受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
データ転送システム、受信回路、及び受信方法に関する。
【背景技術】
【０００２】
従来、互いに異なる周波数のクロック信号に基づいて動作している２つの回路は、制御信号等によるハンドシェークによりデータを転送する（例えば、特許文献１，２参照）。このハンドシェークによるデータ転送は、データ要求により転送開始を制御し、受信完了を通知することで、次の送信を準備する。
【０００３】
また、別の２つの回路は、ストローブ信号を用いてデータを転送する（例えば、特許文献３参照）。送信回路は、データとともにストローブ信号を出力する。受信回路は、ストローブ信号に同期してデータを受け取り、その受け取ったデータを更に自身のクロック信号で読み出す。
【０００４】
また、別の２つの回路は、フラグと制御データとを用いてデータ転送を行う（例えば、特許文献４参照）。フラグ及び制御データを複数回受信し、複数回連続して同一のフラグを受信したとき、その間に受信し一致した制御データを処理することで、伝送誤りを少なくする。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−３０６４９１号公報
【特許文献２】特開２００２−２６９０３６号公報
【特許文献３】特開平９−６７２５号公報
【特許文献４】特開平１−２３６３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、互いに異なるクロック信号に基づいて非同期にて動作する２つの回路において、連続したデータを転送することが求められている。
【課題を解決するための手段】
【０００７】
本発明の一観点によれば、第１のクロック信号により動作する送信回路から、前記第１のクロック信号と異なる第２のクロック信号により動作する受信回路へ送信データを転送するデータ転送システムであって、前記送信回路は、前記送信データの送信タイミングに応じて信号レベルを論理反転したポール信号を出力する出力回路を有し、前記受信回路は、前記送信データを互いに異なる３つのタイミングでそれぞれ受信して第１〜第３の受信データを生成する第１の信号生成回路と、前記ポール信号を前記３つのタイミングでそれぞれ受信して第１〜第３の同期ポール信号を生成する第２の信号生成回路と、前記第１〜第３の同期ポール信号のレベルを互いに比較した結果に応じて前記第１〜第３の受信データのうちから選択した１つの受信データを出力する選択回路を有し、前記第１の信号生成回路は、複数の第１回路を有し、前記複数の第１回路それぞれは、互いに異なるタイミングで前記送信データを保持し、保持した送信データに対応する信号レベルのデータを前記受信データとして出力し、前記第２の信号生成回路は、複数の第２回路を有し、前記複数の第２回路それぞれは、互いに異なるタイミングで前記ポール信号を保持し、保持したポール信号に対応する信号レベルのデータを前記同期ポール信号として出力する。
【発明の効果】
【０００８】
本発明の一観点によれば、連続したデータの転送を可能とすることができる。
【図面の簡単な説明】
【０００９】
【図１】半導体装置のブロック回路図である。
【図２】送信回路及び受信回路の回路図である。
【図３】イネーブル信号生成回路の回路図である。
【図４】デコーダの回路図である。
【図５】デコーダの動作説明図である。
【図６】デコーダの動作説明図である。
【図７】データ転送のタイミング図である。
【図８】データ転送のタイミング図である。
【図９】データ転送のタイミング図である。
【図１０】データ転送のタイミング図である。
【図１１】データ転送のタイミング図である。
【図１２】外部データ転送のタイミング図である。
【発明を実施するための形態】
【００１０】
以下、一実施形態を添付図面に従って説明する。
図１に示すように、半導体装置１０は、入力信号ＳＩに応じたデータＳＤを、外部クロック信号ＥＣＫに基づいて出力する。入力信号ＳＩは例えばセンサから出力される電圧などのアナログ信号である。データＳＤは、例えば複数ビットのシリアルデータである。半導体装置１０は例えば、アナログの入力信号ＳＩを複数ビットのデジタル信号に変換し、変換後のデータＳＤを外部クロック信号ＥＣＫに基づいてシリアル出力する。
【００１１】
半導体装置１０の内部回路１１は、入力信号ＳＩに応じたデータと制御信号を含む信号Ｄ１を出力する。例えばアナログ−デジタル変換回路である内部回路１１は、外部クロック信号ＥＣＫと異なる内部クロック信号ＳＣＫに基づいて動作し、アナログ入力信号ＳＩをデジタル信号に変換する。そして、内部回路１１は、変換後のデータＴＤＩを出力する。データＴＤＩは、例えば８ビットのデータである。
【００１２】
また、内部回路１１は、データＴＤＩに対応する送信イネーブル信号ＴＥＮを出力する。送信イネーブル信号ＴＥＮは、内部回路１１が有効なデータＴＤＩを出力することを示す信号である。内部回路１１は、所定期間（例えば内部クロック信号ＳＣＫの１周期と等しい期間）、所定レベル（例えばＨレベル）の送信イネーブル信号ＴＥＮを出力する。そして、内部回路１１は、所定レベルの送信イネーブル信号ＴＥＮを出力している期間内に、データＴＤＩを出力する。
【００１３】
送信回路１２は、内部クロック信号ＳＣＫを受け取る。送信回路１２は、内部回路１１から出力される送信イネーブル信号ＴＥＮに応答して、有効なデータＴＤＩを内部クロック信号ＳＣＫに同期して保持する。そして、送信回路１２は、保持したデータと等しいデータＴＤＯを出力する。また、送信回路１２は、データＴＤＯを出力する毎に、レベルを反転したポール信号ＰＬを出力する。
【００１４】
受信回路１３は、外部インタフェース１４から出力されるリードリクエスト信号ＲＥＱに応答して、送信回路１２から出力されるデータＴＤＯを、互いに異なる複数のタイミングで受け取る。また、受信回路１３は、送信回路１２から出力されるポール信号ＰＬを、リードリクエスト信号ＲＥＱに応じた複数のタイミングで受け取る。そして、受信回路１３は、タイミングが互いに異なる複数のポール信号に基づいて、受け取った複数のデータのうちの１つと等しい受信データＲＤＯを出力する。リードリクエスト信号ＲＥＱはタイミング信号の一例である。
【００１５】
外部インタフェース１４は、所定の方式にて図示しない半導体装置とシリアル通信する。通信方式は、外部クロック信号ＥＣＫに同期したシリアル通信（例えば、SPI(Serial Peripheral Interface)方式）である。外部インタフェース１４は、受信回路１３から出力される受信データＲＤＯを並列−直列変換（パラレル−シリアル変換）して出力する。
【００１６】
なお、内部回路１１は、所定間隔毎に、送信イネーブル信号ＴＥＮ及びデータＴＤＩを出力するように設定されている。データＴＤＩを出力する周期は、例えば、外部インタフェース１４は、半導体装置１０が接続された他の半導体装置に対して、所定の周期でデータＳＤを出力する。このため、外部インタフェース１４が出力するデータＳＤの周期に応じて設定されている。
【００１７】
しかし、内部回路１１と外部インタフェース１４は、連携して動作していない。上記したように、内部回路１１は、内部クロック信号ＳＣＫに基づいて動作し、データＴＤＩ及び送信イネーブル信号ＴＥＮを出力する。一方、外部インタフェース１４は、シリアル通信のための外部クロック信号ＥＣＫに同期して動作し、リードリクエスト信号ＲＥＱを出力する。つまり、内部回路１１がデータＴＤＩを出力するタイミングと、外部インタフェース１４がリードリクエスト信号ＲＥＱを出力するタイミングは、非同期である。
【００１８】
上記したように、送信回路１２は、データＴＤＯを出力する毎に、ポール信号ＰＬのレベルを反転する。受信回路１３は、リードリクエスト信号ＲＥＱに応答してポール信号を複数のタイミングで受け取るとともに、送信データＴＤＯを複数のタイミングで受け取る。そして、受信回路１３は、タイミングが異なる複数のポール信号に基づいて、受け取った複数のデータのうちの１つと等しい受信データＲＤＯを出力する。これにより、送信回路１２と受信回路１３は、互いにハンドシェークを行うことなく、非同期にてデータの送受信を行う。
【００１９】
次に、送信回路１２の構成を説明する。
図２に示すように、データＴＤＩは、送信回路１２のフリップフロップ回路２１の入力端子ＩＮに供給される。上記したように、データＴＤＩは複数ビット（例えば８ビット）の信号である。フリップフロップ回路２１は、データＴＤＩのビット数に応じた複数のフリップフロップ回路を含み、各フリップフロップ回路にはデータＴＤＩの対応するビットが供給される。
【００２０】
フリップフロップ回路２１は例えばＤ型フリップフロップ回路である。フリップフロップ回路２１のイネーブル端子ＥＮには送信イネーブル信号ＴＥＮが供給され、クロック端子には内部クロック信号ＳＣＫが供給される。送信イネーブル信号ＴＥＮは、レベルによりデータＴＤＩが有効か無効かを示す信号であり、例えば、Ｈレベルの送信イネーブル信号ＴＥＮはデータＴＤＩが有効であることを示し、Ｌレベルの送信イネーブル信号ＴＥＮはデータＴＤＩが無効であることを示す。
【００２１】
図１に示す内部回路１１は、データＴＤＩを出力するタイミングに応じて送信イネーブル信号ＴＥＮを出力する。例えば、内部回路１１は、内部クロック信号ＳＣＫに基づいて、この内部クロック信号ＳＣＫの１周期毎に、Ｈレベルの送信イネーブル信号ＴＥＮとＬレベルの送信イネーブル信号ＴＥＮを交互に出力する。そして、内部回路１１は、Ｈレベルの送信イネーブル信号ＴＥＮを出力する期間内、例えばＨレベルの送信イネーブル信号ＴＥＮを出力して内部クロック信号ＳＣＫの半周期後に、データＴＤＩを出力する。
【００２２】
フリップフロップ回路２１は、送信イネーブル信号ＴＥＮに基づいて、有効なデータＴＤＩを内部クロック信号ＳＣＫに同期して保持し、出力端子ＯＵＴからデータＴＤＯを出力する。詳述すると、フリップフロップ回路２１は、Ｈレベルの送信イネーブル信号ＴＥＮに基づいて、内部クロック信号ＳＣＫの立ち上がりエッジのタイミングでデータＴＤＩを保持する。そして、フリップフロップ回路２１は、保持した信号レベルと等しいレベルのデータＴＤＯを出力する。この出力データＴＤＯのビット数は、入力データＴＤＩのビット数と等しい。
【００２３】
内部クロック信号ＳＣＫはインバータ回路２２の入力端子に供給される。インバータ回路２２は、内部クロック信号ＳＣＫを論理反転したレベルの信号を出力する。このインバータ回路２２の出力信号は、フリップフロップ回路２３のクロック端子に供給される。フリップフロップ回路２３は例えばＤ型フリップフロップ回路である。フリップフロップ回路２３のイネーブル端子ＥＮには、送信イネーブル信号ＴＥＮが供給される。フリップフロップ回路２３の出力端子ＯＵＴはインバータ回路２４の入力端子に接続され、このインバータ回路２４の出力端子はフリップフロップ回路２３の入力端子ＩＮに接続されている。フリップフロップ回路２３は出力回路の一例である。
【００２４】
フリップフロップ回路２３は、送信イネーブル信号ＴＥＮに基づいて、インバータ回路２４の出力信号を内部クロック信号ＳＣＫに同期して保持し、出力端子ＯＵＴからポール信号ＰＬを出力する。詳述すると、フリップフロップ回路２３は、Ｈレベルの送信イネーブル信号ＴＥＮに基づいて、インバータ回路２２から出力される信号の立ち上がりエッジ、即ち内部クロック信号ＳＣＫの立ち下がりエッジのタイミングで、インバータ回路２４の出力信号を保持する。そして、フリップフロップ回路２３は、保持した信号レベルと等しいレベルのポール信号ＰＬを出力する。このポール信号ＰＬはインバータ回路２４に供給され、このインバータ回路２４はポール信号ＰＬのレベルを論理反転して出力する。また、フリップフロップ回路２３は、Ｈレベルの送信イネーブル信号ＴＥＮに応答して動作する。従って、フリップフロップ回路２３は、Ｈレベルの送信イネーブル信号ＴＥＮ毎、つまりデータＴＤＯを出力する毎に、論理反転したポール信号ＰＬを出力する。
【００２５】
次に、受信回路１３の構成を説明する。
ポール信号ＰＬは、受信回路１３のフリップフロップ回路３１の入力端子ＩＮに供給される。フリップフロップ回路３１の出力端子ＯＵＴはフリップフロップ回路３２の入力端子ＩＮに接続されている。フリップフロップ回路３１，３２のクロック端子には外部クロック信号ＥＣＫが供給される。
【００２６】
フリップフロップ回路３１，３２は、例えばＤ型フリップフロップ回路である。フリップフロップ回路３１は、外部クロック信号ＥＣＫの立ち上がりエッジに同期してポール信号ＰＬを保持し、保持した信号レベルと等しい信号を出力する。フリップフロップ回路３２は、外部クロック信号ＥＣＫの立ち上がりエッジに同期してフリップフロップ回路３１の出力信号を保持し、保持した信号レベルと等しい信号ＰＬＥを出力する。即ち、フリップフロップ回路３１，３２は、外部クロック信号ＥＣＫに同期した信号（受信ポール信号）ＰＬＥを生成する。
【００２７】
受信ポール信号ＰＬＥは、３つのフリップフロップ回路３３ａ，３３ｂ，３３ｃの入力端子ＩＮに供給される。各フリップフロップ回路３３ａ〜３３ｃは、例えばＤ型フリップフロップ回路である。各フリップフロップ回路３３ａ〜３３ｃのクロック端子には外部クロック信号ＥＣＫが供給される。
【００２８】
フリップフロップ回路３３ａのイネーブル端子ＥＮには、イネーブル信号生成回路３４から出力される第１の受信イネーブル信号ＥＮ１が供給される。フリップフロップ回路３３ａは、Ｈレベルの受信イネーブル信号ＥＮ１に応答して、外部クロック信号ＥＣＫの立ち上がりエッジのタイミングで受信ポール信号ＰＬＥを保持する。そして、フリップフロップ回路３３ａは、保持した信号レベルと等しい同期ポール信号ＰＬ１を出力する。
【００２９】
フリップフロップ回路３３ｂのイネーブル端子ＥＮには、イネーブル信号生成回路３４から出力される第２の受信イネーブル信号ＥＮ２が供給される。フリップフロップ回路３３ｂは、Ｈレベルの受信イネーブル信号ＥＮ２に応答して、外部クロック信号ＥＣＫの立ち上がりエッジのタイミングで受信ポール信号ＰＬＥを保持する。そして、フリップフロップ回路３３ｂは、保持した信号レベルと等しい同期ポール信号ＰＬ２を出力する。
【００３０】
フリップフロップ回路３３ｃのイネーブル端子ＥＮには、イネーブル信号生成回路３４から出力される第３の受信イネーブル信号ＥＮ３が供給される。フリップフロップ回路３３ｃは、Ｈレベルの受信イネーブル信号ＥＮ３に応答して、外部クロック信号ＥＣＫの立ち上がりエッジのタイミングで受信ポール信号ＰＬＥを保持する。そして、フリップフロップ回路３３ｃは、保持した信号レベルと等しい同期ポール信号ＰＬ３を出力する。
【００３１】
イネーブル信号生成回路３４には、図１に示す外部インタフェース１４から出力されるリードリクエスト信号ＲＥＱが供給される。また、イネーブル信号生成回路３４には、外部クロック信号ＥＣＫが供給される。イネーブル信号生成回路３４は、外部クロック信号ＥＣＫとリードリクエスト信号ＲＥＱに基づいて、互いにタイミングが異なる３つの受信イネーブル信号ＥＮ１〜ＥＮ３を生成する。
【００３２】
図３に示すように、イネーブル信号生成回路３４は、２つのフリップフロップ回路４１，４２を有している。フリップフロップ回路４１，４２は例えばＤ型フリップフロップ回路である。フリップフロップ回路４１のデータ入力端子ＩＮにはリードリクエスト信号ＲＥＱが供給される。このリードリクエスト信号ＲＥＱは第１の受信イネーブル信号ＥＮ１として出力される。
【００３３】
フリップフロップ回路４１のクロック端子には外部クロック信号ＥＣＫが供給される。フリップフロップ回路４１は、外部クロック信号ＥＣＫの立ち上がりエッジのタイミングでリードリクエスト信号ＲＥＱを保持し、その保持したレベルと等しい受信イネーブル信号ＥＮ２を出力する。リードリクエスト信号ＲＥＱは、外部クロック信号ＥＣＫの１周期分のパルス幅を持ち、外部クロック信号ＥＣＫの立ち上がりエッジに同期した信号である。そして、第１の受信イネーブル信号ＥＮ１の波形及びタイミングは、リードリクエスト信号ＲＥＱの波形及びタイミングと等しい。従って、第２の受信イネーブル信号ＥＮ２は、第１の受信イネーブル信号ＥＮ１に対して、外部クロック信号ＥＣＫの１周期分遅れた信号となる。
【００３４】
フリップフロップ回路４１の出力端子ＯＵＴはフリップフロップ回路４２の入力端子ＩＮに接続されている。フリップフロップ回路４２のクロック端子には外部クロック信号ＥＣＫが供給される。フリップフロップ回路４２は、外部クロック信号ＥＣＫの立ち上がりエッジのタイミングで第２の受信イネーブル信号ＥＮ２を保持し、その保持したレベルと等しい受信イネーブル信号ＥＮ３を出力する。従って、第３の受信イネーブル信号ＥＮ３は、第２の受信イネーブル信号ＥＮ２に対して、外部クロック信号ＥＣＫの１周期分遅れた信号となる。
【００３５】
以上説明したように、イネーブル信号生成回路３４は、リードリクエスト信号ＲＥＱと等しいタイミングで第１の受信イネーブル信号ＥＮ１を出力する。また、イネーブル信号生成回路３４は、リードリクエスト信号ＲＥＱに対して、外部クロック信号ＥＣＫの１周期分遅い第２の受信イネーブル信号ＥＮ２を生成する。そして、イネーブル信号生成回路３４は、リードリクエスト信号ＲＥＱに対して、外部クロック信号ＥＣＫの２周期分遅い第３の受信イネーブル信号ＥＮ３を生成する。
【００３６】
図１に示す外部インタフェース１４は、外部クロック信号ＥＣＫに同期して、リードリクエスト信号ＲＥＱを出力する。このリードリクエスト信号ＲＥＱは、外部クロック信号ＥＣＫの周期に応じた、例えば外部クロック信号ＥＣＫの１周期分のパルス幅を持つパルス信号である。
【００３７】
従って、図２に示す各フリップフロップ回路３３ａ〜３３ｃは、受信イネーブル信号ＥＮ１〜ＥＮ３に基づいて互いに異なる期間動作し、１つの受信ポール信号ＰＬＥを互いに異なるタイミングで保持する。そして、各フリップフロップ回路３３ａ〜３３ｃは、保持した信号レベルと等しい同期ポール信号ＰＬ１〜ＰＬ３をそれぞれ出力する。フリップフロップ回路３３ａ〜３３ｃは、第２の信号生成回路の一例である。
【００３８】
イネーブル信号生成回路３４から出力される受信イネーブル信号ＥＮ１〜ＥＮ３は、３つのフリップフロップ回路３５ａ，３５ｂ，３５ｃのイネーブル端子ＥＮにそれぞれ供給される。各フリップフロップ回路３５ａ〜３５ｃのクロック端子には外部クロック信号ＥＣＫが供給される。
【００３９】
各フリップフロップ回路３５ａ〜３５ｃの入力端子ＩＮには、送信データＴＤＯが供給される。上記したように、送信データＴＤＯは、複数ビット（例えば８ビット）の信号である。従って、各フリップフロップ回路３５ａ〜３５ｃは、送信回路１２のフリップフロップ回路２１と同様に、送信データＴＤＯのビット数に対応する数のフリップフロップ回路を含み、各フリップフロップ回路には送信データＴＤＯの対応するビットが供給される。
【００４０】
各フリップフロップ回路３５ａ〜３５ｃは、例えばＤ型フリップフロップ回路である。各フリップフロップ回路３５ａ〜３５ｃは、Ｈレベルの受信イネーブル信号ＥＮ１〜ＥＮ３に応答して、外部クロック信号ＥＣＫに同期して送信データＴＤＯを保持する。そして、各フリップフロップ回路３５ａ〜３５ｃは、保持した信号レベルと等しいレベルの受信データＲＤ１〜ＲＤ３を出力する。フリップフロップ回路３５ａ〜３５ｃは、第１の信号生成回路の一例である。
【００４１】
上記したように、受信イネーブル信号ＥＮ１〜ＥＮ３は、外部クロック信号ＥＣＫの１周期づつずれたパルス信号である。従って、各フリップフロップ回路３５ａ〜３５ｃは、受信イネーブル信号ＥＮ１〜ＥＮ３に基づいて互いに異なる期間動作し、送信データＴＤＯを互いに異なるタイミングで保持する。そして、各フリップフロップ回路３５ａ〜３５ｃは、保持した信号レベルと等しい受信データＲＤ１〜ＲＤ３を出力する。
【００４２】
受信データＲＤ１〜ＲＤ３は、デコーダ３６に供給される。このデコーダ３６には、フリップフロップ回路３３ａ〜３３ｃが出力する同期ポール信号ＰＬ１〜ＰＬ３が供給される。デコーダ３６は、同期ポール信号ＰＬ１〜ＰＬ３のレベルを互いに比較し、比較結果に応じて３つの受信データＲＤ１〜ＲＤ３のうちの１つを選択する。そして、デコーダ３６は、選択した受信データと等しい出力データＲＤＯを出力する。デコーダ３６は、データ選択回路の一例である。
【００４３】
図４に示すように、デコーダ３６のインバータ回路５１は、第１の同期ポール信号ＰＬ１を論理反転したレベルの信号を出力する。インバータ回路５２は、第２の同期ポール信号ＰＬ２を論理反転したレベルの信号を出力する。アンド回路６１は、インバータ回路５１，５２の出力信号と第３の同期ポール信号ＰＬ３を論理積演算した結果に応じたレベルの信号Ｓ１１を出力する。即ち、アンド回路６１は、第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３が「Ｌ，Ｌ，Ｈ」の時にＨレベルの信号Ｓ１１を出力し、上記組み合わせ以外の時にＬレベルの信号Ｓ１１を出力する。
【００４４】
インバータ回路５３は、第３の同期ポール信号ＰＬ３を論理反転したレベルの信号を出力する。アンド回路６２は、第１及び第２の同期ポール信号ＰＬ１．ＰＬ２とインバータ回路５３の出力信号を論理積演算した結果に応じたレベルの信号Ｓ１２を出力する。即ち、アンド回路６２は、第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３が「Ｈ，Ｈ，Ｌ」の時にＨレベルの信号Ｓ１２を出力し、上記組み合わせ以外の時にＬレベルの信号Ｓ１２を出力する。
【００４５】
インバータ回路５４〜５６は、第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３をそれぞれ論理反転したレベルの信号を出力する。アンド回路６３は、インバータ回路５４〜５６の出力信号を論理積演算した結果に応じたレベルの信号Ｓ１３を出力する。即ち、アンド回路６３は、第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３が「Ｌ，Ｌ，Ｌ」の時にＨレベルの信号Ｓ１３を出力し、上記組み合わせ以外の時にＬレベルの信号Ｓ１３を出力する。
【００４６】
アンド回路６４は、第１〜第２の同期ポール信号ＰＬ１〜ＰＬ３を論理積演算した結果に応じたレベルの信号Ｓ１４を出力する。即ち、アンド回路６２は、第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３が「Ｈ，Ｈ，Ｈ」の時にＨレベルの信号Ｓ１４を出力し、上記組み合わせ以外の時にＬレベルの信号Ｓ１４を出力する。
【００４７】
オア回路６５は、第１のアンド回路６１の出力信号Ｓ１１と第２のアンド回路６２の出力信号Ｓ１２を論理和演算した結果に応じた信号Ｓ１５を出力する。この信号Ｓ１５は、選択回路６７の入力端子Ａに供給される。オア回路６６は、第３のアンド回路６３の出力信号Ｓ１３と第４のアンド回路６４の出力信号Ｓ１４を論理和演算した結果に応じた信号Ｓ１６を出力する。この信号Ｓ１６は、選択回路６７の入力端子Ｂに供給される。
【００４８】
選択回路６７は４つの入力端子ＩＮ１〜ＩＮ４を有している。第１の入力端子ＩＮ１及び第４の入力端子ＩＮ４には第３の受信データＲＤ３が供給される。第２の入力端子ＩＮ２には第２の受信データＲＤ２が供給され、第３の入力端子ＩＮ３には第１の受信データＲＤ１が供給される。選択回路６７は、図５に示すように、２つの制御入力端子Ａ，Ｂに供給される信号レベルに応じて、選択入力端子ＩＮ１〜ＩＮ４に供給される信号のうちの１つを選択し、その選択した信号と等しいレベルの出力データＲＤＯを出力する。
【００４９】
選択回路６７は制御信号ＤＥに応答して、信号Ｓ１５、Ｓ１６に応じた受信データを選択し、その選択した受信データと等しい出力データＲＤＯを出力する。この制御信号ＤＥは、
ポール信号ＰＬ（同期ポール信号ＰＬ）と送信データＴＤＯをそれぞれ３回受け取ってから、次のリードリクエスト信号ＲＥＱを受け取るまでの期間内に信号の選択が可能であればよい。なお、リードリクエスト信号ＲＥＱから受信データが確定するまでに要する期間が短い方がよいため、３回目の受け取りの直後であることが好ましい。例えば、制御信号ＤＥには、第３の受信イネーブル信号ＥＮ３が用いられる。選択回路６７は、第３の受信イネーブル信号ＥＮ３の立ち下がりエッジのタイミングに基づいて、上記の選択と信号出力を行う。
【００５０】
同期ポール信号ＰＬ１〜ＰＬ３は、この順序で受信ポール信号ＰＬＥを保持したレベルと等しい信号である。従って、同期ポール信号ＰＬ１〜ＰＬ３のうち、タイミング的に連続する少なくとも２つの信号のレベルは互いに等しい。例えば、第１の同期ポール信号ＰＬ１のレベルと第２の同期ポール信号ＰＬ２のレベルは互いに等しく、第３の同期ポール信号ＰＬ３のレベルは第１及び第２の同期ポール信号ＰＬ１，ＰＬ２のレベルと異なる。また、第１の同期ポール信号ＰＬ１のレベルは、第２及び第３の同期ポール信号ＰＬ２，ＰＬ３のレベルと異なる。また、第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３のレベルは互いに等しい。
【００５１】
図２に示すフリップフロップ回路３３ａ〜３３ｃは、リードリクエスト信号ＲＥＱに応答するイネーブル信号生成回路３４が生成した複数の受信イネーブル信号ＥＮ１〜ＥＮ３に基づいて、受信ポール信号ＰＬＥを保持して同期ポール信号ＰＬ１〜ＰＬ３を生成する。従って、レベルが互いに等しい第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３は、この第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３を保持する期間、受信ポール信号ＰＬＥのレベルが変化しない、即ちエッジが存在しないことを示す。一方、１つの信号レベルが他と異なる第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３は、この第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３を保持する期間、受信ポール信号ＰＬＥのレベルが変化する、即ちエッジが存在することを示す。
【００５２】
図２に示すように、受信ポール信号ＰＬＥは、送信回路１２から出力されるポール信号ＰＬを、外部クロック信号ＥＣＫに同期して取り込んだ信号である。
その送信回路１２は、送信イネーブル信号ＴＥＮに基づいて、内部クロック信号ＳＣＫの立ち下がりエッジに同期してポール信号ＰＬのレベルを反転し、次の内部クロック信号ＳＣＫの立ち上がりエッジに同期して送信データＴＤＯを出力する。つまり、送信回路１２は、ポール信号ＰＬを反転してから内部クロック信号ＳＣＫの半周期後に送信データＴＤＯを出力する。
【００５３】
そして、送信回路１２のフリップフロップ回路２１は、内部クロック信号ＳＣＫにより次の入力データＴＤＩをラッチするまで、送信データＴＤＯを保持する。受信回路１３は、直列接続された２つのフリップフロップ回路３１，３２により、外部クロック信号ＥＣＫに同期して、ポール信号ＰＬに対応する受信ポール信号ＰＬＥを生成する。本実施形態において、この外部クロック信号ＥＣＫの周波数は、内部クロック信号ＳＣＫの周波数の整数倍（例えば４倍）である。従って、受信ポール信号ＰＬＥのレベルが変化するタイミングは、送信回路１２が送信データＴＤＯの値を変更するタイミングとほぼ等しい。
【００５４】
クロック信号によって入力信号を保持するフリップフロップ回路において、信号を保持するタイミングと、入力信号の遷移タイミングとにより、保持するレベルが異なる場合がある。例えば、ＬレベルからＨレベルへと遷移する入力信号において、Ｌレベルの信号を保持する場合と、Ｈレベルの信号を保持する場合がある。つまり、入力信号の遷移タイミングとフリップフロップ回路の動作タイミングが等しい又は近い場合、保持する信号レベルは確定されない、つまり不定となる。
【００５５】
上記の同期ポール信号ＰＬ１〜ＰＬ３のレベルが互いに等しい場合、この同期ポール信号ＰＬ１〜ＰＬ３に対応する期間において、同期ポール信号ＰＬ１のレベルは変化しない。従って、送信データＴＤＯも変化しない。しかし、同期ポール信号ＰＬ１〜ＰＬ３に対応する期間の直前又は直後に、受信ポール信号ＰＬＥのレベルが変化するかもしれない。このため、３つの連続的なタイミングのうち、中央のタイミングにてデータＴＤＯを保持した受信データＲＤ２は最もレベルが安定している。従って、デコーダ３６は、図６に示すように、３つの同期ポール信号ＰＬ１〜ＰＬ３のレベルが互いに等しいとき、中央の受信データＲＤ２を選択する。そして、デコーダ３６は、選択した受信データＲＤ２と等しい受信データＲＤＯを出力する。
【００５６】
また、上記の同期ポール信号ＰＬ１〜ＰＬ３のうちの２つの信号レベルが他の１つの信号レベルと異なる場合、デコーダ３６は、信号レベルが互いに等しい２つのＳ１５，Ｓ１６信号のうち、受信ポール信号ＰＬＥの変化タイミングから時間的に離れたタイミングの信号に対応する受信データを選択する。例えば、図６に示すように、同期ポール信号ＰＬ１〜ＰＬ３の信号レベルが「Ｌ，Ｌ，Ｈ」のとき、受信ポール信号ＰＬＥのエッジ（立ち上がりエッジ）は、第２の同期ポール信号ＰＬ２を保持するタイミングと、第３の同期ポール信号ＰＬ３を保持するタイミングの間にある。従って、デコーダ３６は、受信ポール信号ＰＬＥのエッジから時間的に最も離れた第１の同期ポール信号ＰＬ１に対応する受信データＲＤ１を選択する。そして、デコーダ３６は、選択した受信データＲＤ１と等しい受信データＲＤＯを出力する。
【００５７】
また、同期ポール信号ＰＬ１〜ＰＬ３の信号レベルが「Ｈ，Ｌ，Ｌ」のとき、受信ポール信号ＰＬＥのエッジ（立ち下がりエッジ）は、第１の同期ポール信号ＰＬ１を保持するタイミングと、第２の同期ポール信号ＰＬ２を保持するタイミングの間にある。従って、デコーダ３６は、受信ポール信号ＰＬＥのエッジから時間的に最も離れた第３の同期ポール信号ＰＬ３に対応する受信データＲＤ３を選択する。そして、デコーダ３６は、選択した受信データＲＤ３と等しい受信データＲＤＯを出力する。
【００５８】
なお、ＬレベルとＨレベルの組み合わせの場合、第２の同期ポール信号ＰＬ２の信号レベルが、第１及び第３の同期ポール信号ＰＬ１，ＰＬ３の信号レベルと異なる組み合わせが存在する。しかし、受信ポール信号ＰＬＥ、つまり図２に示す送信回路１２から出力されるポール信号ＰＬは、送信データＴＤＯ毎にレベルが変化する。従って、このような組み合わせは、発生しない。
【００５９】
次に、上記の送信回路１２と受信回路１３の動作を、図７〜図１１に従って説明する。
なお、送信回路１２の動作と受信回路１３の動作は非同期であるため、各信号のタイミングが時間的に前後する。従って、信号の発生タイミングを判りやすくするため、図７〜図１１において、各信号の発生タイミングについて同じ符号を用いて説明する。このため、タイミングを示す符号は、必ずしも時間経過とともに増加するものではない。
【００６０】
先ず、送信データＴＤＯとリードリクエスト信号ＲＥＱが衝突しない、即ち、送信データＴＤＯが変更されるタイミングがリードリクエスト信号ＲＥＱに基づいて各種信号を生成する期間と重ならない場合について説明する。
【００６１】
図７に示すように、送信回路１２のフリップフロップ回路２３は、Ｈレベルの送信イネーブル信号ＴＥＮに基づいて、クロック端子に供給される信号の立ち上がりエッジ（内部クロック信号ＳＣＫの立ち下がりエッジ）に同期してＬレベルのポール信号ＰＬを出力する（時刻Ｔ１１）。次いで、送信回路１２のフリップフロップ回路２１は、内部クロック信号ＳＣＫの立ち上がりエッジに同期してデータＴＤＩを保持し、保持したデータと等しい送信データＴＤＯを出力する（時刻Ｔ１２）。
【００６２】
図１に示す内部回路１１は、データＴＤＩを順次出力する。このように、順次出力されるデータＴＤＩの時間的な変化を区別するために、必要に応じて「Ｄ（０），Ｄ（１），・・・」を用いる。
【００６３】
従って、図７に示すように、データＴＤＩは、時刻Ｔ１１からデータＤ（０）となる。そして、送信回路１２は、時刻Ｔ１２においてデータＤ（０）を出力する。
受信回路１３のフリップフロップ回路３２は、上記のポール信号ＰＬに基づいて、Ｌレベルの受信ポール信号ＰＬＥを出力する（時刻Ｔ２１）。次いで、受信回路１３のイネーブル信号生成回路３４は、リードリクエスト信号ＲＥＱを受け取り（時刻Ｔ２２）、第１の受信イネーブル信号ＥＮ１を生成する（時刻Ｔ２２）。次いで、イネーブル信号生成回路３４は、外部クロック信号ＥＣＫに同期して第２の受信イネーブル信号ＥＮ２を生成し（時刻Ｔ２３）、続いて第３の受信イネーブル信号ＥＮ３を生成する（時刻Ｔ２４）。
【００６４】
フリップフロップ回路３３ａは、第１の受信イネーブル信号ＥＮ１に応答して、外部クロック信号ＥＣＫに同期してＬレベルの同期ポール信号ＰＬ１を出力する（時刻Ｔ２３）。同様に、フリップフロップ回路３３ｂは、第２の受信イネーブル信号ＥＮ２に応答して、外部クロック信号ＥＣＫに同期してＬレベルの同期ポール信号ＰＬ２を出力し（時刻Ｔ２４）、フリップフロップ回路３３ｃは、第３の受信イネーブル信号ＥＮ３に応答して、外部クロック信号ＥＣＫに同期してＬレベルの同期ポール信号ＰＬ３を出力する（時刻Ｔ２５）。
【００６５】
フリップフロップ回路３５ａは、第１の受信イネーブル信号ＥＮ１に応答して、外部クロック信号ＥＣＫに同期して受信データＲＤ１（Ｄ（０））を出力する（時刻Ｔ２３）。同様に、フリップフロップ回路３５ｂは、第２の受信イネーブル信号ＥＮ２に応答して、外部クロック信号ＥＣＫに同期して受信データＲＤ２（Ｄ（０））を出力し（時刻Ｔ２４）、フリップフロップ回路３５ｃは、第３の受信イネーブル信号ＥＮ３に応答して、外部クロック信号ＥＣＫに同期して受信データＲＤ３（Ｄ（０））を出力する（時刻Ｔ２５）。
【００６６】
デコーダ３６は、Ｌレベルの第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３に基づいて第２の受信データＲＤ２を選択し、その受信データＲＤ２と等しい出力データＲＤＯ（Ｄ（０））を出力する。このように、図１に示す外部インタフェース１４がリードリクエスト信号ＲＥＱを送信した後、外部クロック信号ＥＣＫの３サイクル後のタイミング（時刻Ｔ２６）において、受信回路１３の出力データＲＤＯのレベルが確定している。従って、外部インタフェース１４は、確定した出力データＲＤＯをこのタイミングで受け取ることができる。
【００６７】
次いで、送信回路１２は、Ｈレベルの送信イネーブル信号ＴＥＮに基づいて、内部クロック信号ＳＣＫの下がりエッジに同期してＨレベルのポール信号ＰＬを出力する（時刻Ｔ３１）。次いで、送信回路１２は、内部クロック信号ＳＣＫの立ち上がりエッジに同期して送信データＤ（１）出力する（時刻Ｔ３２）。
【００６８】
受信回路１３のフリップフロップ回路３２は、上記のポール信号ＰＬに基づいて、Ｈレベルの受信ポール信号ＰＬＥを出力する（時刻Ｔ４１）。次いで、受信回路１３のイネーブル信号生成回路３４は、リードリクエスト信号ＲＥＱを受け取り（時刻Ｔ４２）、第１の受信イネーブル信号ＥＮ１を生成する（時刻Ｔ４２）。次いで、イネーブル信号生成回路３４は、外部クロック信号ＥＣＫに同期して第２の受信イネーブル信号ＥＮ２を生成し（時刻Ｔ４３）、続いて第３の受信イネーブル信号ＥＮ３を生成する（時刻Ｔ４４）。
【００６９】
フリップフロップ回路３３ａは、第１の受信イネーブル信号ＥＮ１に応答して、外部クロック信号ＥＣＫに同期してＨレベルの同期ポール信号ＰＬ１を出力する（時刻Ｔ４３）。同様に、フリップフロップ回路３３ｂは、第２の受信イネーブル信号ＥＮ２に応答して、外部クロック信号ＥＣＫに同期してＨレベルの同期ポール信号ＰＬ２を出力し（時刻Ｔ４４）、フリップフロップ回路３３ｃは、第３の受信イネーブル信号ＥＮ３に応答して、外部クロック信号ＥＣＫに同期してＨレベルの同期ポール信号ＰＬ３を出力する（時刻Ｔ４５）。
【００７０】
フリップフロップ回路３５ａは、第１の受信イネーブル信号ＥＮ１に応答して、外部クロック信号ＥＣＫに同期して受信データＲＤ１（Ｄ（１））を出力する（時刻Ｔ４３）。同様に、フリップフロップ回路３５ｂは、第２の受信イネーブル信号ＥＮ２に応答して、外部クロック信号ＥＣＫに同期して受信データＲＤ２（Ｄ（１））を出力し（時刻Ｔ４４）、フリップフロップ回路３５ｃは、第３の受信イネーブル信号ＥＮ３に応答して、外部クロック信号ＥＣＫに同期して受信データＲＤ３（Ｄ（１））を出力する（時刻Ｔ４５）。
【００７１】
デコーダ３６は、Ｈレベルの第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３に基づいて第２の受信データＲＤ２を選択し、その受信データＲＤ２と等しい出力データＲＤＯ（Ｄ（１））を出力する。このように、図１に示す外部インタフェース１４がリードリクエスト信号ＲＥＱを送信した後、外部クロック信号ＥＣＫの３サイクル後のタイミング（時刻Ｔ４６）において、受信回路１３の出力データＲＤＯのレベルが確定している。従って、外部インタフェース１４は、確定した出力データＲＤＯをこのタイミングで受け取ることができる。
【００７２】
従って、受信回路１３は、リードリクエスト信号ＲＥＱに応答して、時刻Ｔ２５に受信データＤ（０）を出力し、時刻Ｔ４５に受信データＤ（１）を出力する。つまり、受信回路１３は、リードリクエスト信号ＲＥＱに対応する周期で、データＤ（０），Ｄ（１）を連続的に出力する。
【００７３】
次に、送信データＴＤＯとリードリクエスト信号ＲＥＱが衝突しない、即ち、送信データＴＤＯが変更されるタイミングがリードリクエスト信号ＲＥＱに基づいて各種信号を生成する期間と重なる４つの場合について説明する。
【００７４】
［ケース１］
図８に示すように、送信回路１２は、送信データＤ（０）を出力している。
送信回路１２は、Ｈレベルの送信イネーブル信号ＴＥＮに基づいて、内部クロック信号ＳＣＫの立ち下がりエッジに同期してＬレベルのポール信号ＰＬを出力する（時刻Ｔ１１）。次いで、送信回路１２は、内部クロック信号ＳＣＫの立ち上がりエッジに同期して送信データＤ（１）出力する（時刻Ｔ１２）。
【００７５】
受信回路１３のイネーブル信号生成回路３４は、リードリクエスト信号ＲＥＱを受け取り（時刻Ｔ２２）、第１の受信イネーブル信号ＥＮ１を生成する（時刻Ｔ２２）。次いで、イネーブル信号生成回路３４は、外部クロック信号ＥＣＫに同期して第２の受信イネーブル信号ＥＮ２を生成し（時刻Ｔ２３）、続いて第３の受信イネーブル信号ＥＮ３を生成する（時刻Ｔ２４）。
【００７６】
受信回路１３のフリップフロップ回路３２は、リードリクエスト信号ＲＥＱの受信（時刻Ｔ２２）より後の時刻Ｔ２１において、上記のポール信号ＰＬに基づいて、Ｌレベルの受信ポール信号ＰＬＥを出力する。なお、図８において、この時刻Ｔ２１は、上記第２の受信イネーブル信号ＥＮ２が生成される時刻Ｔ２３と等しい。
【００７７】
フリップフロップ回路３３ａは、第１の受信イネーブル信号ＥＮ１に応答してＨレベルの同期ポール信号ＰＬ１を出力する（時刻Ｔ２３）。次に、フリップフロップ回路３３ｂは、第２の受信イネーブル信号ＥＮ２に応答してＬレベルの同期ポール信号ＰＬ２を出力し（時刻Ｔ２４）、フリップフロップ回路３３ｃは、第３の受信イネーブル信号ＥＮ３に応答してＬレベルの同期ポール信号ＰＬ３を出力する（時刻Ｔ２５）。
【００７８】
フリップフロップ回路３５ａは、第１の受信イネーブル信号ＥＮ１に応答して、外部クロック信号ＥＣＫに同期して送信データＤ（０）を保持し、受信データＲＤ１（Ｄ（０））を出力する（時刻Ｔ２３）。次に、フリップフロップ回路３５ｂは、第２の受信イネーブル信号ＥＮ２に応答して、外部クロック信号ＥＣＫに同期して受信データＲＤ２（Ｄ（１））を出力する（時刻Ｔ２４）。同様に、フリップフロップ回路３５ｃは、第３の受信イネーブル信号ＥＮ３に応答して、外部クロック信号ＥＣＫに同期して受信データＲＤ３（Ｄ（１））を出力する（時刻Ｔ２５）。
【００７９】
デコーダ３６は、Ｈレベルの第１の同期ポール信号ＰＬ１と、Ｌレベルの第２及び第３の同期ポール信号ＰＬ２，ＰＬ３に基づいて第３の受信データＲＤ３を選択し、その受信データＲＤ３と等しい出力データＲＤＯ（Ｄ（１））を出力する。
【００８０】
次いで、送信回路１２は、内部クロック信号ＳＣＫの立ち下がりエッジに同期してＨレベルのポール信号ＰＬを出力し（時刻Ｔ３１）、内部クロック信号ＳＣＫの立ち上がりエッジに同期して送信データＤ（２）出力する（時刻Ｔ３２）。
【００８１】
受信回路１３のフリップフロップ回路３２は、第２の受信イネーブル信号ＥＮ２を生成するタイミング（時刻Ｔ４３）と等しいタイミングで、Ｈレベルの受信ポール信号ＰＬＥを出力する（時刻Ｔ４１）。従って、フリップフロップ回路３３ａはＬレベルの同期ポール信号ＰＬ１を出力する（時刻Ｔ４３）。フリップフロップ回路３３ｂはＨレベルの同期ポール信号ＰＬ２を出力し（時刻Ｔ４４）、フリップフロップ回路３３ｃは、Ｈレベルの同期ポール信号ＰＬ３を出力する（時刻Ｔ４５）。
【００８２】
フリップフロップ回路３５ａは、受信データＲＤ１（Ｄ（１））を出力する（時刻Ｔ４３）。フリップフロップ回路３５ｂは、受信データＲＤ２（Ｄ（２））を出力する（時刻Ｔ４４）。フリップフロップ回路３５ｃは、受信データＲＤ３（Ｄ（２））を出力する（時刻Ｔ４５）。
【００８３】
デコーダ３６は、Ｌレベルの第１の同期ポール信号ＰＬ１と、Ｈレベルの第２及び第３の同期ポール信号ＰＬ２，ＰＬ３に基づいて第３の受信データＲＤ３を選択し、その受信データＲＤ３と等しい出力データＲＤＯ（Ｄ（２））を出力する。
【００８４】
従って、このケース１において、受信回路１３は、リードリクエスト信号ＲＥＱに応答して、時刻Ｔ２５に受信データＤ（１）を出力し、時刻Ｔ４５に受信データＤ（２）を出力する。つまり、受信回路１３は、リードリクエスト信号ＲＥＱに対応する周期で、データＤ（１），Ｄ（２）を連続的に出力する。
【００８５】
［ケース２］
図９に示すように、送信回路１２は、送信データＤ（０）を出力している。
送信回路１２は、Ｌレベルのポール信号ＰＬを出力し（時刻Ｔ１１）、送信データＤ（１）出力する（時刻Ｔ１２）。
【００８６】
受信回路１３のイネーブル信号生成回路３４は、リードリクエスト信号ＲＥＱを受け取り（時刻Ｔ２２）、第１の受信イネーブル信号ＥＮ１を生成する（時刻Ｔ２２）。次いで、イネーブル信号生成回路３４は、外部クロック信号ＥＣＫに同期して第２の受信イネーブル信号ＥＮ２を生成し（時刻Ｔ２３）、続いて第３の受信イネーブル信号ＥＮ３を生成する（時刻Ｔ２４）。
【００８７】
受信回路１３のフリップフロップ回路３２は、リードリクエスト信号ＲＥＱの受信（時刻Ｔ２２）より後の時刻Ｔ２１において、上記のポール信号ＰＬに基づいて、Ｌレベルの受信ポール信号ＰＬＥを出力する。なお、図９において、この時刻Ｔ２１は、上記第３の受信イネーブル信号ＥＮ３が生成される時刻Ｔ２４と等しい。
【００８８】
フリップフロップ回路３３ａは、第１の受信イネーブル信号ＥＮ１に応答してＨレベルの同期ポール信号ＰＬ１を出力する（時刻Ｔ２３）。次に、フリップフロップ回路３３ｂは、第２の受信イネーブル信号ＥＮ２に応答してＨレベルの同期ポール信号ＰＬ２を出力する（時刻Ｔ２４）。次に、フリップフロップ回路３３ｃは、第３の受信イネーブル信号ＥＮ３に応答してＬレベルの同期ポール信号ＰＬ３を出力する（時刻Ｔ２５）。
【００８９】
フリップフロップ回路３５ａは、第１の受信イネーブル信号ＥＮ１に応答して、外部クロック信号ＥＣＫに同期して送信データＤ（０）を保持し、受信データＲＤ１（Ｄ（０））を出力する（時刻Ｔ２３）。同様に、フリップフロップ回路３５ｂは、第２の受信イネーブル信号ＥＮ２に応答して、外部クロック信号ＥＣＫに同期して受信データＲＤ２（Ｄ（０））を出力する（時刻Ｔ２４）。次に、フリップフロップ回路３５ｃは、第３の受信イネーブル信号ＥＮ３に応答して、外部クロック信号ＥＣＫに同期して受信データＲＤ３（Ｄ（１））を出力する（時刻Ｔ２５）。
【００９０】
デコーダ３６は、Ｈレベルの第１及び第２の同期ポール信号ＰＬ１，ＰＬ２と、Ｌレベルの第３の同期ポール信号ＰＬ３に基づいて第１の受信データＲＤ１を選択し、その受信データＲＤ１と等しい出力データＲＤＯ（Ｄ（０））を出力する。
【００９１】
次いで、送信回路１２は、Ｈレベルのポール信号ＰＬを出力し（時刻Ｔ３１）、送信データＤ（２）出力する（時刻Ｔ３２）。
受信回路１３のフリップフロップ回路３２は、第３の受信イネーブル信号ＥＮ３を生成するタイミング（時刻Ｔ４４）と等しいタイミングで、Ｈレベルの受信ポール信号ＰＬＥを出力する（時刻Ｔ４１）。従って、フリップフロップ回路３３ａはＬレベルの同期ポール信号ＰＬ１を出力する（時刻Ｔ４３）。フリップフロップ回路３３ｂはＬレベルの同期ポール信号ＰＬ２を出力し（時刻Ｔ４４）、フリップフロップ回路３３ｃは、Ｈレベルの同期ポール信号ＰＬ３を出力する（時刻Ｔ４５）。
【００９２】
フリップフロップ回路３５ａは、受信データＲＤ１（Ｄ（１））を出力する（時刻Ｔ４３）。フリップフロップ回路３５ｂは、受信データＲＤ２（Ｄ（１））を出力する（時刻Ｔ４４）。フリップフロップ回路３５ｃは、受信データＲＤ３（Ｄ（２））を出力する（時刻Ｔ４５）。
【００９３】
デコーダ３６は、Ｌレベルの第１及び第２の同期ポール信号ＰＬ１，ＰＬ２と、Ｈレベルの第３の同期ポール信号ＰＬ３に基づいて第１の受信データＲＤ１を選択し、その受信データＲＤ１と等しい出力データＲＤＯ（Ｄ（１））を出力する。
【００９４】
従って、このケース２において、受信回路１３は、リードリクエスト信号ＲＥＱに応答して、時刻Ｔ２５に受信データＤ（０）を出力し、時刻Ｔ４５に受信データＤ（１）を出力する。つまり、受信回路１３は、リードリクエスト信号ＲＥＱに対応する周期で、データＤ（０），Ｄ（１）を連続的に出力する。
【００９５】
［ケース３］
図１０に示すように、送信回路１２は、送信データＤ（０）を出力している。
送信回路１２は、Ｌレベルのポール信号ＰＬを出力し（時刻Ｔ１１）、送信データＤ（１）出力する（時刻Ｔ１２）。
【００９６】
受信回路１３のイネーブル信号生成回路３４は、リードリクエスト信号ＲＥＱを受け取り（時刻Ｔ２２）、第１の受信イネーブル信号ＥＮ１を生成する（時刻Ｔ２２）。次いで、イネーブル信号生成回路３４は、外部クロック信号ＥＣＫに同期して第２の受信イネーブル信号ＥＮ２を生成し（時刻Ｔ２３）、続いて第３の受信イネーブル信号ＥＮ３を生成する（時刻Ｔ２４）。
【００９７】
受信回路１３のフリップフロップ回路３２は、リードリクエスト信号ＲＥＱの受信（時刻Ｔ２２）より後の時刻Ｔ２１において、上記のポール信号ＰＬに基づいて、Ｌレベルの受信ポール信号ＰＬＥを出力する。なお、図１０において、この時刻Ｔ２１は、上記第３の受信イネーブル信号ＥＮ３の生成後の時刻Ｔ２５と等しい。
【００９８】
フリップフロップ回路３３ａは、第１の受信イネーブル信号ＥＮ１に応答してＨレベルの同期ポール信号ＰＬ１を出力する（時刻Ｔ２３）。次に、フリップフロップ回路３３ｂは、第２の受信イネーブル信号ＥＮ２に応答してＨレベルの同期ポール信号ＰＬ２を出力する（時刻Ｔ２４）。次に、フリップフロップ回路３３ｃは、第３の受信イネーブル信号ＥＮ３に応答してＨレベルの同期ポール信号ＰＬ３を出力する（時刻Ｔ２５）。
【００９９】
フリップフロップ回路３５ａは、第１の受信イネーブル信号ＥＮ１に応答して、外部クロック信号ＥＣＫに同期して送信データＤ（０）を保持し、受信データＲＤ１（Ｄ（０））を出力する（時刻Ｔ２３）。同様に、フリップフロップ回路３５ｂは、第２の受信イネーブル信号ＥＮ２に応答して、外部クロック信号ＥＣＫに同期して受信データＲＤ２（Ｄ（０））を出力する（時刻Ｔ２４）。次に、フリップフロップ回路３５ｃは、第３の受信イネーブル信号ＥＮ３に応答して、外部クロック信号ＥＣＫに同期して受信データＲＤ３（Ｄ（０））を出力する（時刻Ｔ２５）。
【０１００】
デコーダ３６は、Ｈレベルの第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３に基づいて第２の受信データＲＤ２を選択し、その受信データＲＤ２と等しい出力データＲＤＯ（Ｄ（０））を出力する。
【０１０１】
次いで、送信回路１２は、Ｈレベルのポール信号ＰＬを出力し（時刻Ｔ３１）、送信データＤ（２）出力する（時刻Ｔ３２）。
受信回路１３のフリップフロップ回路３２は、第３の受信イネーブル信号ＥＮ３生成後のタイミング（時刻Ｔ４５）と等しいタイミングで、Ｌレベルの受信ポール信号ＰＬＥを出力する（時刻Ｔ４１）。従って、フリップフロップ回路３３ａはＬレベルの同期ポール信号ＰＬ１を出力する（時刻Ｔ４３）。フリップフロップ回路３３ｂはＬレベルの同期ポール信号ＰＬ２を出力し（時刻Ｔ４４）、フリップフロップ回路３３ｃは、Ｌレベルの同期ポール信号ＰＬ３を出力する（時刻Ｔ４５）。
【０１０２】
フリップフロップ回路３５ａは、受信データＲＤ１（Ｄ（１））を出力する（時刻Ｔ４３）。フリップフロップ回路３５ｂは、受信データＲＤ２（Ｄ（１））を出力する（時刻Ｔ４４）。フリップフロップ回路３５ｃは、受信データＲＤ３（Ｄ（１））を出力する（時刻Ｔ４５）。
【０１０３】
デコーダ３６は、Ｌレベルの第１〜第３の同期ポール信号ＰＬ１〜ＰＬ３に基づいて第２の受信データＲＤ２を選択し、その受信データＲＤ２と等しい出力データＲＤＯ（Ｄ（１））を出力する。
【０１０４】
従って、このケース３において、受信回路１３は、リードリクエスト信号ＲＥＱに応答して、時刻Ｔ２５に受信データＤ（０）を出力し、時刻Ｔ４５に受信データＤ（１）を出力する。つまり、受信回路１３は、リードリクエスト信号ＲＥＱに対応する周期で、データＤ（０），Ｄ（１）を連続的に出力する。
【０１０５】
［ケース４］
図２に示すフリップフロップ回路３５ａ〜３５ｃは、例えば８ビットの送信データＴＤＯをそれぞれ保持可能に構成されている。つまり、各フリップフロップ回路３５ａ〜３５ｃは、それぞれ送信データＴＤＯのビット数に対応する８個のフリップフロップ回路を含む。そして、送信データＴＤＯの各ビットは、互いに異なる配線を介してそれぞれ対応するフリップフロップ回路に供給される。このため、送信データＴＤＯを構成する８ビットの信号の遅延時間、つまり対応するフリップフロップ回路の入力端子レベルが変化するタイミングが異なる場合がある。このような場合、フリップフロップ回路において保持されるデータが異なる。
【０１０６】
例えば、図１１に示すように、データＴＤＩの上位４ビットに対応する送信データＴＤＯａと、データＴＤＩの下位４ビットに対応する送信データＴＤＯｂのタイミングが異なる。なお、この送信データＴＤＯａ，ＴＤＯｂのタイミングは、図２に示す受信回路１３の各フリップフロップ回路３５ａ〜３５ｃの入力端子ＩＮにおいて信号レベルが変化するタイミングを示す。
【０１０７】
フリップフロップ回路３５ｂは、第２の受信データＲＤ２を出力する。この受信データＲＤ２は、上位４ビットに対応する受信データＲＤ２ａと、下位４ビットに対応する受信データＲＤ２ｂを含む。フリップフロップ回路３５ｂにおいて、上位４ビットに対応するフリップフロップ回路は、第２の受信イネーブル信号ＥＮ２に応答して、外部クロック信号ＥＣＫに同期して送信データＴＤＯａ（Ｄ（１））を保持し、受信データＲＤ２ａ（Ｄ（１））を出力する（時刻Ｔ２３）。一方、フリップフロップ回路３５ｂにおいて、下位４ビットに対応するフリップフロップ回路は、第２の受信イネーブル信号ＥＮ２に応答して、外部クロック信号ＥＣＫに同期して送信データＴＤＯｂ（Ｄ（０））を保持し、受信データＲＤ２ｂ（Ｄ（０））を出力する（時刻Ｔ２３）。
【０１０８】
なお、フリップフロップ回路３５ａは、第１の受信イネーブル信号ＥＮ１に応答して、外部クロック信号ＥＣＫに同期して送信データＤ（０）を保持し、受信データＲＤ１（Ｄ（０））を出力する（時刻Ｔ２３）。フリップフロップ回路３５ｃは、第３の受信イネーブル信号ＥＮ３に応答して、外部クロック信号ＥＣＫに同期して送信データＤ（１）を保持し、受信データＲＤ３（Ｄ（１））を出力する（時刻Ｔ２５）。
【０１０９】
このケース４において、受信回路１３のフリップフロップ回路３２は、第３の受信イネーブル信号ＥＮ３を生成するタイミング（時刻Ｔ２４）と等しいタイミングで、Ｈレベルの受信ポール信号ＰＬＥを出力する（時刻Ｔ２１）。従って、フリップフロップ回路３３ａはＨレベルの同期ポール信号ＰＬ１を出力する（時刻Ｔ２３）。フリップフロップ回路３３ｂはＨレベルの同期ポール信号ＰＬ２を出力し（時刻Ｔ２４）、フリップフロップ回路３３ｃは、Ｌレベルの同期ポール信号ＰＬ３を出力する（時刻Ｔ２５）。
【０１１０】
従って、デコーダ３６は、Ｈレベルの第１及び第２の同期ポール信号ＰＬ１，ＰＬ２と、Ｌレベルの第３の同期ポール信号ＰＬ３に基づいて第１の受信データＲＤ１を選択し、その受信データＲＤ１と等しい出力データＲＤＯ（Ｄ（０））を出力する。
【０１１１】
次いで、送信回路１２は、Ｈレベルのポール信号ＰＬを出力し（時刻Ｔ３１）、送信データＤ（２）出力する（時刻Ｔ３２）。
上記と同様に、フリップフロップ回路３５ｂにおいて、上位４ビットに対応するフリップフロップ回路は、外部クロック信号ＥＣＫに同期して送信データＴＤＯａ（Ｄ（２））を保持し、受信データＲＤ２ａ（Ｄ（２））を出力する（時刻Ｔ２３）。一方、フリップフロップ回路３５ｂにおいて、下位４ビットに対応するフリップフロップ回路は、外部クロック信号ＥＣＫに同期して送信データＴＤＯｂ（Ｄ（１））を保持し、受信データＲＤ２ｂ（Ｄ（１））を出力する（時刻Ｔ２３）。
【０１１２】
フリップフロップ回路３５ａは、外部クロック信号ＥＣＫに同期して受信データＲＤ１（Ｄ（１））を出力する（時刻Ｔ２３）。フリップフロップ回路３５ｃは、外部クロック信号ＥＣＫに同期して受信データＲＤ３（Ｄ（２））を出力する（時刻Ｔ２５）。
【０１１３】
受信回路１３のフリップフロップ回路３２は、第３の受信イネーブル信号ＥＮ３を生成するタイミング（時刻Ｔ４４）と等しいタイミングで、Ｈレベルの受信ポール信号ＰＬＥを出力する（時刻Ｔ４１）。従って、フリップフロップ回路３３ａはＬレベルの同期ポール信号ＰＬ１を出力する（時刻Ｔ４３）。フリップフロップ回路３３ｂはＬレベルの同期ポール信号ＰＬ２を出力し（時刻Ｔ４４）、フリップフロップ回路３３ｃは、Ｈレベルの同期ポール信号ＰＬ３を出力する（時刻Ｔ４５）。
【０１１４】
デコーダ３６は、Ｌレベルの第１及び第２の同期ポール信号ＰＬ１，ＰＬ２と、Ｈレベルの第３の同期ポール信号ＰＬ３に基づいて第１の受信データＲＤ１を選択し、その受信データＲＤ１と等しい出力データＲＤＯ（Ｄ（１））を出力する。
【０１１５】
従って、このケース４において、受信回路１３は、リードリクエスト信号ＲＥＱに応答して、時刻Ｔ２５に受信データＤ（０）を出力し、時刻Ｔ４５に受信データＤ（１）を出力する。つまり、受信回路１３は、リードリクエスト信号ＲＥＱに対応する周期で、データＤ（０），Ｄ（１）を連続的に出力する。
【０１１６】
なお、上記の説明に用いた図７〜図１１では、内部クロック信号ＳＣＫのエッジと外部クロック信号ＥＣＫのエッジが時間的に揃っている、つまり、同期しているかのように描いている。しかし、
なお、上記の説明に用いた図７〜図１１では、内部クロック信号ＳＣＫのエッジと外部クロック信号ＥＣＫのエッジがあたかも時間的に揃っているように、各波形を描いている。しかし、内部クロック信号ＳＣＫのエッジと外部クロック信号ＥＣＫのエッジが時間的に揃っていない場合であっても、上記の各説明と同様に受信回路が動作し、データを連続的に転送することができる。
【０１１７】
上記したように、受信回路１３は、図１に示す外部インタフェース１４から出力されるリードリクエスト信号ＲＥＱに応答して受信データＲＤＯを出力する。
外部インタフェース１４は、図１２に示すように、外部クロック信号ＥＣＫに同期したシリアル通信により、受信データＲＤＯを外部の装置に送信する。
【０１１８】
外部インタフェース１４は、選択信号ＣＳＢがＬレベルになると、シリアル通信により互いに送受信する全てのデバイスによって使用される同期クロック信号（本実施形態では外部クロック信号ＥＣＫ）に同期してマスタにより駆動されるデータ線ＭＯＳＩにより選択されると、受信データＲＤＯに応じてデータ線ＭＩＳＯを駆動する。
【０１１９】
上記したように、リードリクエスト信号ＲＥＱから外部クロック信号ＥＣＫの３サイクル後には、受信回路１３からデータＲＤＯが出力される。従って、外部インタフェース１４は、通信開始から４サイクル後にリードリクエスト信号ＲＥＱを発行しても、データＲＤＯに基づくシリアルデータＳＤの転送が可能となる。
【０１２０】
そして、リードリクエスト信号ＲＥＱの発行後に内部回路１１によるデータＴＤＩが更新されても、そのデータＴＤＩに基づく送信データＴＤＯを受信回路１３が受け取るため、最新のデータを外部に対して送信することができる。
【０１２１】
以上記述したように、本実施形態によれば、以下の効果を奏する。
（１）送信回路１２は、データＴＤＯを出力する毎に、ポール信号ＰＬのレベルを反転する。受信回路１３は、リードリクエスト信号ＲＥＱに応答してポール信号を複数のタイミングで受け取るとともに、送信データＴＤＯを複数のタイミングで受け取る。そして、受信回路１３は、タイミングが異なる複数のポール信号に基づいて、受け取った複数のデータのうちの１つと等しい受信データＲＤＯを出力する。これにより、送信回路１２と受信回路１３は、互いにハンドシェークを行うことなく、非同期にてデータ転送を行うことができる。
【０１２２】
（２）受信回路１３は、送信回路１２から出力される送信データＴＤＯを確実に受け取るため、内部クロック信号ＳＣＫに同期して次のデータＴＤＩをフリップフロップ回路２１に保持する。従って、図１に示す内部回路１１に対して送信データＴＤＩの出力を中断することなく、連続的なデータの転送を行うことができる。
【０１２３】
（３）受信回路１３は、送信回路１２から出力される送信データＴＤＯを確実に受け取るため、送信回路１２にデータを保持するためのレジスタ等を設ける必要がなく、回路規模の増加を抑制することができる。
【０１２４】
（４）デコーダ３６は、同期ポール信号ＰＬ１〜ＰＬ３のレベルが互いに等しい場合、第２の受信データＲＤ２を選択する。３つの連続的なタイミングのうち、中央のタイミングにてデータＴＤＯを保持した受信データＲＤ２は最もレベルが安定している。また、デコーダ３６は、同期ポール信号ＰＬ１〜ＰＬ３のうちの２つの信号レベルが他の１つの信号レベルと異なる場合、受信ポール信号ＰＬＥの変化タイミングから時間的に離れたタイミングの信号に対応する受信データを選択する。このことは、送信回路１２による送信データＴＤＯがレベル変化するタイミングから最も離れたタイミングで保持した受信データを選択することであり、この受信データのレベルは安定している。このように受信データＲＤ２を選択することにより、データを確実に転送することができる。
【０１２５】
（５）受信回路１３のフリップフロップ回路３１は、送信回路１２から出力されるポール信号ＰＬを、外部クロック信号ＥＣＫに同期して受け取る。フリップフロップ回路３１に直列接続されたフリップフロップ回路３２は、フリップフロップ回路３１の出力信号を、外部クロック信号ＥＣＫに同期して受け取り、受信ポール信号ＰＬＥを出力する。
【０１２６】
クロック信号により信号を保持するフリップフロップ回路は、セットアップタイムとホールドタイムのタイミングが満足されないときにメタステーブルが発生する場合がある。このため、同じクロック信号により動作する２つのフリップフロップ回路を直列に接続することにより、メタステーブルの影響を低減し、ポール信号ＰＬを受け取ることができる。
【０１２７】
（６）受信回路１３は、送信回路１２の送信データＴＤＩを、タイミングが互いに異なる第１〜第３の受信イネーブル信号ＥＮ１〜ＥＮ３を受けるフリップフロップ回路３５ａ〜３５ｃにより保持して第１〜第３の受信データＲＤ１〜ＲＤ３を生成する。メタステーブルは、例えば非同期回路のように、ホールドタイム等のタイミングが満足されないフリップフロップ回路の出力信号に発生する。従って、送信回路１２による送信データＴＤＯがレベル変化するタイミングから最も離れたタイミングで保持した受信データを選択することで、メタステーブルの発生を考慮することなく、レベルが安定した受信データを得ることができる。そして、メタステーブルに対応する装置と比して、チップ面積の増加を抑制することができる。
【０１２８】
尚、上記各実施形態は、以下の態様で実施してもよい。
・図１に示す半導体装置１０は、送信回路１２と受信回路１３を含む装置の一例であり、この半導体装置１０に限定されるものではない。例えば、上記実施形態は、周期的にデータＳＤを出力する半導体装置１０であるが、データを不定期に出力する半導体装置に、上記の送信回路１２及び受信回路１３を適用してもよい。
【０１２９】
・上記実施形態の受信回路１３は、リードリクエスト信号ＲＥＱに応答して受信イネーブル信号ＥＮ１〜ＥＮ３を生成するようにしたが、他の信号に基づいて各受信イネーブル信号ＥＮ１〜ＥＮ３を生成するようにしてもよい。例えば、受信回路のイネーブル信号生成回路は、例えばタイマ回路やカウンタ回路のように周期的に信号を出力する回路の出力信号に基づいて各受信イネーブル信号ＥＮ１〜ＥＮ３を順次生成する。このようにしても、送信回路１２と非同期で動作する受信回路１３において、送信回路１２の出力データＴＤＯを確実に受信することが可能となる。
【０１３０】
・上記実施形態に対し、ポール信号ＰＬを受信して受信ポール信号ＰＬＥを生成するフリップフロップ回路３１，３２の数を適宜変更してもよい。
・上記実施形態において、図３に示すイネーブル信号生成回路３４の構成を適宜変更してもよい。例えば、リードリクエスト信号ＲＥＱが外部クロック信号ＥＣＫに同期していない場合、３つのフリップフロップ回路を直列的に接続する。初段のフリップフロップ回路にてリードリクエスト信号ＲＥＱを保持して第１の受信イネーブル信号ＥＮ１を生成し、２段目のフリップフロップ回路にて第１の受信イネーブル信号ＥＮ１を保持して第２の受信イネーブル信号ＥＮ２を生成し、最終段のフリップフロップ回路にて第２の受信イネーブル信号ＥＮ２を保持して第３の受信イネーブル信号ＥＮ３を生成する。
【０１３１】
・上記実施形態において、受信回路が送信データを受信するタイミングは、３つのタイミングに限られず、適宜、タイミングの数を変更してもよい。
・上記実施形態において、外部クロック信号ＥＣＫの周波数を、内部クロック信号ＳＣＫの周波数の整数倍としたが、周波数を適宜設定してもよい。
【０１３２】
上記各実施形態に関し、以下の付記を開示する。
（付記１）
第１のクロック信号により動作する送信回路から、前記第１のクロック信号と異なる第２のクロック信号により動作する受信回路へ送信データを転送するデータ転送システムであって、
前記送信回路は、
前記送信データの送信タイミングに応じて信号レベルを論理反転したポール信号を出力する出力回路を有し、
前記受信回路は、
前記送信データを複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の受信データを生成する第１の信号生成回路と、
前記ポール信号を前記複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の同期ポール信号を生成する第２の信号生成回路と、
前記複数の同期ポール信号のレベルを互いに比較した結果に応じて前記複数の受信データのうちから選択した１つの受信データを出力するデータ選択回路と、
を有することを特徴とするデータ転送システム。
（付記２）
前記第１の信号生成回路は、互いに異なる３つのタイミングに対応した第１〜第３の受信データを生成し、
前記第２の信号生成回路は、前記３つのタイミングに対応した第１〜第３の同期ポール信号を生成すること
を特徴とする付記１記載のデータ転送システム。
（付記３）
前記データ選択回路は、
前記第１〜第３の同期ポール信号の信号レベルが互いに等しい場合に前記第２の受信データを選択し、
前記第１の同期ポール信号の信号レベルが前記第２の同期ポール信号及び前記第３の同期ポール信号の信号レベルと異なる場合に前記第３の受信データを選択し、
前記第１の同期ポール信号及び前記第２の同期ポール信号の信号レベルが前記第３の同期ポール信号の信号レベルと異なる場合に前記第１の受信データを選択すること
を特徴とする付記２記載のデータ転送システム。
（付記４）
前記受信回路は、
直列接続され前記第２のクロック信号が供給される複数のフリップフロップ回路を含み、
初段の前記フリップフロップ回路には前記ポール信号が供給され、
前記第２の信号生成回路は、前記複数のフリップフロップ回路のうちの最終段の前記フリップフロップ回路から出力される同期ポール信号を前記３つのタイミングで保持して前記第１〜第３の同期ポール信号を生成すること、
を特徴とする付記２又は３記載のデータ転送システム。
（付記５）
所定周期で繰り返すタイミング信号に基づいて前記３つのタイミングに対応する第１〜第３の受信イネーブル信号を生成するイネーブル信号生成回路を備え、
前記第２の信号生成回路と前記第１の信号生成回路は、それぞれ前記第１〜第３の受信イネーブル信号に基づいて信号を生成すること、
を特徴とする付記２〜４のうちの何れか一項に記載のデータ転送システム。
（付記６）
前記第１の信号生成回路は、
イネーブル端子に前記第１の受信イネーブル信号が供給され、クロック端子に前記第２のクロック信号が供給され、入力端子に前記送信データが供給され、前記第１の受信データを出力する第１のフリップフロップ回路と、
イネーブル端子に前記第２の受信イネーブル信号が供給され、クロック端子に前記第２のクロック信号が供給され、入力端子に前記送信データが供給され、前記第２の受信データを出力する第２のフリップフロップ回路と、
イネーブル端子に前記第３の受信イネーブル信号が供給され、クロック端子に前記第２のクロック信号が供給され、入力端子に前記送信データが供給され、前記第３の受信データを出力する第３のフリップフロップ回路と、
を含むことを特徴とする付記５記載のデータ転送システム。
（付記７）
前記第２の信号生成回路は、
イネーブル端子に前記第１の受信イネーブル信号が供給され、クロック端子に前記第２のクロック信号が供給され、前記第１の同期ポール信号を出力する第１のフリップフロップ回路と、
イネーブル端子に前記第２の受信イネーブル信号が供給され、クロック端子に前記第２のクロック信号が供給され、前記第２の同期ポール信号を出力する第２のフリップフロップ回路と、
イネーブル端子に前記第３の受信イネーブル信号が供給され、クロック端子に前記第２のクロック信号が供給され、前記第３の同期ポール信号を出力する第３のフリップフロップ回路と、
を含むことを特徴とする付記５又は６に記載のデータ転送システム。
（付記８）
前記送信回路は、イネーブル端子に送信イネーブル信号が供給され、前記第１のクロック信号に基づいてデータを保持し、その保持したレベルと等しい前記送信データを出力するフリップフロップ回路を含む、ことを特徴とする付記１〜７のうちの何れか一項に記載のデータ転送システム。
（付記９）
第１のクロック信号により動作する送信回路から、前記第１のクロック信号と異なる第２のクロック信号により動作する受信回路へ送信データを転送するデータ転送方法であって、
前記送信回路は、
前記送信データの送信タイミングに応じて信号レベルを論理反転したポール信号を出力し、
前記受信回路は、
前記送信データを複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の受信データを生成し、
前記ポール信号を前記複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の同期ポール信号を生成し、
前記複数の同期ポール信号のレベルを互いに比較した結果に応じて前記複数の受信データのうちから選択した１つの受信データを出力すること、
を特徴とするデータ転送方法。
（付記１０）
送信回路から出力される送信データを複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の受信データを生成する第１の信号生成回路と、
前記送信回路が前記送信データの送信タイミングに応じて信号レベルを論理反転するポール信号を前記複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の同期ポール信号を生成する第２の信号生成回路と、
前記複数の同期ポール信号のレベルを互いに比較した結果に応じて前記複数の受信データのうちから選択した１つの受信データを出力するデータ選択回路と、
を有することを特徴とする受信回路。
（付記１１）
送信回路から出力される送信データを複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の受信データを生成し、
前記送信回路が前記送信データの送信タイミングに応じて信号レベルを論理反転するポール信号を前記複数のタイミングでそれぞれ受信して、各々のタイミングに対応した複数の同期ポール信号を生成し、
前記複数の同期ポール信号のレベルを互いに比較した結果に応じて前記複数の受信データのうちから選択した１つの受信データを出力すること、
を特徴とする受信方法。
【符号の説明】
【０１３３】
１２  送信回路
１３  受信回路
３１，３２  フリップフロップ回路
３３ａ〜３３ｃ  フリップフロップ回路
３４  イネーブル信号生成回路
３５ａ〜３５ｃ  フリップフロップ回路
３６  デコーダ
ＰＬ  ポール信号
ＰＬＥ  受信ポール信号
ＰＬ１〜ＰＬ３  同期ポール信号
ＴＤＯ  出力データ
ＥＮ１〜ＥＮ３  受信イネーブル信号
ＲＤ１〜ＲＤ３  受信データ
ＲＤＯ  受信データ
【図１】
0005915105.tif 000002
【図２】
0005915105.tif 000003
【図３】
0005915105.tif 000004
【図４】
0005915105.tif 000005
【図５】
0005915105.tif 000006
【図６】
0005915105.tif 000007
【図７】
0005915105.tif 000008
【図８】
0005915105.tif 000009
【図９】
0005915105.tif 000010
【図１０】
0005915105.tif 000011
【図１１】
0005915105.tif 000012
【図１２】
0005915105.tif 000013