(57)【要約】【課題】データを同期化させるクロック信号の許容される周波数の範囲を広げる。【解決手段】実施形態によれば、データ同期化回路ＳＹＮＣ０は、データホールド回路ＢＬＣ０と、受信タイミング生成回路ＢＬＢ０と、更新タイミング調整回路ＢＬＥ０とを備えている。データホールド回路ＢＬＣ０は、クロック信号ＣＬＫ＿Ａ０に同期したデータＤＯＵＴ０を受信して、当該データＤＯＵＴ０がクロック信号ＣＬＫ＿Ｂに同期化されたデータＳＹＮＣ＿ＤＡＴＡ０を出力する。更新タイミング調整回路ＢＬＥ０は、受信タイミング生成回路ＢＬＢ０内のＤフリップフロップ２３０＿０，２３０＿１及び２３０＿２の値の更新のタイミングを、クロック信号ＣＬＫ＿Ｂに同期した更新イネーブル信号ＵＥ０に基づいて制限する。【選択図】      図２
2011233152.tif 000002
【特許請求の範囲】
【請求項１】
第１のクロック信号に同期した第１のデータを第２のタイミング信号に基づいて受信して、当該受信された第１のデータが前記第１のクロック信号とは異なる周波数の第２のクロック信号に同期化された第２のデータを出力するデータホールド手段と、
前記第１のデータに対応し、前記第１のクロック信号に同期した第１のタイミング信号から、前記第２のクロック信号に同期したタイミング信号を前記第２のタイミング信号として生成するための複数段のフリップフロップを備えた受信タイミング生成手段と、
前記複数段のフリップフロップの値の更新のタイミングを、前記第２のクロック信号に同期した更新イネーブル信号に基づいて制限する更新タイミング調整手段と
を具備するデータ同期回路。
【請求項２】
前記更新イネーブル信号は、前記第２のクロック信号の複数サイクルに１回の割合で周期的にアサートされ、
前記更新タイミング調整手段は、前記更新イネーブル信号がアサートされる前記第２のクロック信号のサイクルにおいて、前記複数段のフリップフロップの値の更新を許可する
請求項１記載のデータ同期回路。
【請求項３】
前記受信タイミング生成手段は、
前記複数段のフリップフロップのうちの最終段のフリップフロップ及び前記最終段の前段のフリップフロップの両出力の値が前記第１のタイミング信号の示すタイミングの後で最初に異なる状態を検出する第１の論理ゲートと、
前記更新イネーブル信号がアサートされている期間、前記第１の論理ゲートの出力信号を前記第２のタイミング信号として出力する第２の論理ゲートと
を更に備えている請求項２記載のデータ同期化回路。
【請求項４】
前記更新タイミング調整手段は前記複数段のフリップフロップにそれぞれ対応する複数のセレクタから構成されており、
前記複数のセレクタの各々は、前記更新イネーブル信号がアサートされている期間、前記複数段のフリップフロップのうちの対応するフリップフロップの値の更新に用いられる信号を選択して当該対応するフリップフロップに出力する
請求項３記載のデータ同期化回路。
【請求項５】
第１のクロック信号に同期した第１のデータを当該第１のクロック信号とは異なる周波数の第２のクロック信号に同期化させる第１のデータ同期化回路と、
第３のクロック信号に同期した第３のデータを、当該第３のクロック信号とは異なり前記第２のクロック信号とは一致する周波数及び位相の第４のクロック信号に同期化させる第２のデータ同期化回路とを具備し、
前記第１のデータ同期化回路は、
前記第１のデータを第２のタイミング信号に基づいて受信して、当該受信された第１のデータが前記第２のクロック信号に同期化された第２のデータを出力する第１のデータホールド手段と、
前記第１のデータに対応し、前記第１のクロック信号に同期した第１のタイミング信号から、前記第２のクロック信号に同期したタイミング信号を前記第２のタイミング信号として生成するための複数段の第１のフリップフロップを備えた第１の受信タイミング生成手段と、
前記複数段の第１のフリップフロップの値の更新のタイミングを、前記第２のクロック信号に同期した第１の更新イネーブル信号に基づいて制限する第１の更新タイミング調整手段とを備え、
前記第２のデータ同期化回路は、
前記第３のデータを第４のタイミング信号に基づいて受信して、当該受信された第３のデータが前記第４のクロック信号に同期化された第４のデータを出力する第２のデータホールド手段と、
前記第３のデータに対応し、前記第３のクロック信号に同期した第３のタイミング信号から、前記第４のクロック信号に同期したタイミング信号を前記第４のタイミング信号として生成するための複数段の第２のフリップフロップを備えた第２の受信タイミング生成手段と、
前記複数段の第２のフリップフロップの値の更新のタイミングを、前記第４のクロック信号に同期した第２の更新イネーブル信号に基づいて制限する第２の更新タイミング調整手段とを備えている
通信インタフェース回路。
【請求項６】
前記第２のクロック信号及び前記第４のクロック信号を独立に生成するクロック生成器を更に具備する請求項５記載の通信インタフェース回路。
【請求項７】
前記第２のクロック信号が前記第４のクロック信号として用いられる請求項５記載の通信インタフェース回路。
【請求項８】
ホストとの間でデータを送受信するコントローラを具備する通信装置であって、
前記コントローラは、
第１のクロック信号に同期した第１のデータを第２のタイミング信号に基づいて受信して、当該受信された第１のデータが前記第１のクロック信号とは異なる周波数の第２のクロック信号に同期化された第２のデータを出力するデータホールド手段と、
前記第１のデータに対応し、前記第１のクロック信号に同期した第１のタイミング信号から、前記第２のクロック信号に同期したタイミング信号を前記第２のタイミング信号として生成するための複数段のフリップフロップを備えた受信タイミング生成手段と、
前記複数段のフリップフロップの値の更新のタイミングを、前記第２のクロック信号に同期した更新イネーブル信号に基づいて制限する更新タイミング調整手段と
を具備する通信装置。
【請求項９】
前記更新イネーブル信号は、前記第２のクロック信号の複数サイクルに１回の割合で周期的にアサートされ、
前記更新タイミング調整手段は、前記更新イネーブル信号がアサートされる前記第２のクロック信号のサイクルにおいて、前記複数段のフリップフロップの値の更新を許可する
請求項８記載の通信装置。
【請求項１０】
第１のクロック信号に同期した第１のデータを受信する受信手段と、
前記第１のクロック信号に同期した第１のタイミング信号と、前記第１のクロック信号とは異なる周波数の第２のクロック信号に同期し、且つ前記第１のクロック信号に対応するイネーブル信号とに基づいて、前記第２のクロック信号に同期した第２のタイミング信号を生成する生成手段と、
前記受信した第１のデータから、前記第２のクロック信号及び前記生成された第２のタイミング信号に同期した第２のデータを出力する出力手段と
を具備するデータ同期回路。
【請求項１１】
ホストとの間でデータを送受信するコントローラを具備する通信装置であって、
前記コントローラは、
第１のクロック信号に同期した第１のデータを受信する受信手段と、
前記第１のクロック信号に同期した第１のタイミング信号と、前記第１のクロック信号とは異なる周波数の第２のクロック信号に同期し、且つ前記第１のクロック信号に対応するイネーブル信号とに基づいて、前記第２のクロック信号に同期した第２のタイミング信号を生成する生成手段と、
前記受信した第１のデータから、前記第２のクロック信号及び前記生成された第２のタイミング信号に同期した第２のデータを出力する出力手段と
を具備する通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、データ同期化回路、通信インタフェース回路及び通信装置に関する。
【背景技術】
【０００２】
ホストの周辺デバイスは、一般に当該ホストと接続して用いられる。周辺デバイスは、ホストとの間でデータを送受信する通信インタフェース回路を備えている。通信インタフェース回路は、第１のクロック信号に同期したデータを当該第１のクロック信号とは異なる第２のクロック信号に同期化させるデータ同期化回路を備えている。
【０００３】
もし、周辺デバイスが、複数のホストと接続して用いられる場合、当該周辺デバイスの通信インタフェース回路として、マルチポートインタフェース回路を用いる必要がある。ここで、マルチポートインタフェース回路が第１のポート及び第２のポートを備えており、当該第１のポート及び第２のポートを介して、それぞれ第１のホスト及び第２のホストと接続されているものとする。このようなマルチポートインタフェース回路は、第１のポートの後述する第１のリンク層で適用される第１のデータ同期化回路と第２のポートの後述する第２のリンク層で適用される第２のデータ同期化回路とを備えている。
【０００４】
第１のポートは、第１のリンク層及び第１のトランスポート層から構成され、第２のポートは、第２のリンク層及び第２のトランスポート層から構成される。またアプリケーション層は、マルチポートインタフェース回路に１つだけ存在する。その理由は、各ポート（第１及び第２のポートの各々）で受信されたコマンドを１つのアプリケーション層で一括して管理するためである。したがって、アプリケーション層に入力されるクロック信号は、１系統であることが好ましい。さもないとアプリケーション層内で、上述の第１及び第２のデータ同期化回路に相当する同期化回路が必要となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３７９８２９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
第１のリンク層には第１のクロック信号ＣＬＫ＿Ａ０及び第２のクロック信号ＣＬＫ＿Ｂ０が入力され、第２のリンク層には第１のクロック信号ＣＬＫ＿Ａ１及び第２のクロック信号ＣＬＫ＿Ｂ１が入力されるものとする。ここで、第１のクロック信号ＣＬＫ＿Ａ０及びＣＬＫ＿Ａ１の周波数が同一であるとは限らない。同様に、第２のクロック信号ＣＬＫ＿Ｂ０及びＣＬＫ＿Ｂ１の周波数も同一であるとは限らない。
【０００７】
そのため、第１及び第２のポートに共通の１つのアプリケーション層には、第２のクロック信号ＣＬＫ＿Ｂ０及びＣＬＫ＿Ｂ１のいずれとも周波数を異にする第３のクロック信号ＣＬＫ＿Ｃが入力される。この場合、アプリケーション層には、第２のクロック信号ＣＬＫ＿Ｂ０と第３のクロック信号ＣＬＫ＿Ｃとを同期化するための同期化回路と、第２のクロック信号ＣＬＫ＿Ｂ１と第３のクロック信号ＣＬＫ＿Ｃとを同期化するための同期化回路とが必要となる。
【０００８】
もし、第２のクロック信号ＣＬＫ＿Ｂ０及びＣＬＫ＿Ｂ１の許容される周波数範囲を広げることができるならば、第１及び第２のリンク層（第１及び第２のデータ同期回路）において、第２のクロック信号ＣＬＫ＿Ｂ０及びＣＬＫ＿Ｂ１に代えて、単一の第２のクロック信号ＣＬＫ＿Ｂを共通に使用することが可能となる。この場合、第１及び第２のポートに共通の１つのアプリケーション層に、第２のクロック信号ＣＬＫ＿Ｂを使用することが可能となり、新たに同期化回路を必要とする第３のクロック信号ＣＬＫ＿Ｃを適用しなくて済む。
【０００９】
このため、データ同期化回路、通信インタフェース回路及び通信装置において、データを同期化させるクロック信号の許容される周波数範囲を広げることが望まれている。
【課題を解決するための手段】
【００１０】
実施形態によれば、データ同期化回路は、データホールド手段と、受信タイミング生成手段と、更新タイミング調整手段とを具備する。前記データホールド手段は、第１のクロック信号に同期した第１のデータを第２のタイミング信号に基づいて受信して、当該受信された第１のデータが前記第１のクロック信号とは異なる周波数の第２のクロック信号に同期化された第２のデータを出力する。前記受信タイミング生成手段は、前記第１のデータに対応し、前記第１のクロック信号に同期した第１のタイミング信号から、前記第２のクロック信号に同期したタイミング信号を前記第２のタイミング信号として生成するための複数段のフリップフロップを備えている。前記更新タイミング調整手段は、前記複数段のフリップフロップの値の更新のタイミングを、前記第２のクロック信号に同期した更新イネーブル信号に基づいて制限する。
【図面の簡単な説明】
【００１１】
【図１】実施形態に係るマルチポートインタフェース回路を備えたシステムの構成を示す図。
【図２】同実施形態で適用されるデータ同期化回路の構成を示すブロック図。
【図３】図２に示されるデータ同期化回路の動作を説明するためのタイミングチャート。
【図４】図１に示されるマルチポートインタフェース回路の構成を示すブロック図。
【図５】図１に示されるマルチポートインタフェース回路が有する２つの通信ポートの通信プロトコル階層構造とアプリケーション層との関係の一例を、各階層で適用されるクロック信号と対応付けて示す図。
【図６】同実施形態で適用される更新イネーブル信号生成器の構成を示すブロック図。
【図７】図６に示される更新イネーブル信号生成器の動作を説明するためのタイミングチャート。
【図８】同実施形態の変形例で適用されるマルチポートインタフェース回路が有する２つの通信ポートの通信プロトコル階層構造とアプリケーション層との関係の一例を、各階層で適用されるクロック信号と対応付けて示す図。
【図９】同変形例で適用されるクロック生成器の構成を示すブロック図。
【発明を実施するための形態】
【００１２】
以下、実施の形態につき図面を参照して説明する。  
図１は一つの実施形態に係るマルチポートインタフェース回路を備えたシステムの構成を示す。  
図１において、ホストＨ０及びＨ１は、それぞれ通信回線ＣＬ０及びＣＬ１を介して、当該ホストＨ０及びＨ１の周辺デバイスとしての、例えばストレージデバイス１０と接続されている。ストレージデバイス１０は、例えば磁気ディスク（ハードディスク）ドライブ（ＨＤＤ）、或いはソリッドステートドライブ（ＳＳＤ）である。
【００１３】
本実施形態において、ホストＨ０は１．５Ｇｂｐｓ（ギガビット／秒）のインタフェース速度をサポートし、ホストＨ１は６Ｇｂｐｓのインタフェース速度をサポートしているものとする。ホストＨ０及びＨ１はそれぞれストレージデバイス１０に対してコマンドを発行し、当該ストレージデバイス１０との間で当該コマンドの指定するデータを送受信する。
【００１４】
ストレージデバイス１０は、当該ストレージデバイス１０内の各部を制御するコントローラ１１を備えている。コントローラ１１は、複数の通信ポートを有する通信インタフェース回路（以下、マルチポートインタフェース回路と称する）１１０を備えている。本実施形態において、マルチポートインタフェース回路１１０は、ＳＡＳ（Serial Attached SCSI）インタフェースをサポートしており、ホストＨ０及びＨ１とマルチポートインタフェース回路１１０との間では、シリアルデータが転送されるものとする。マルチポートインタフェース回路１１０は、ホストＨ０及びＨ１から転送されるシリアルデータを、それぞれ、クロック信号ＣＬＫ＿Ａ０及びＣＬＫ＿Ａ１に同期したｎ＋１（ｎは自然数）ビットのバスデータ［ｎ：０］に変換するシリアル／パラレル変換器（図示せず）を備えている。なお、ホストＨ０及びＨ１とマルチポートインタフェース回路１１０との間で、例えばｐ＋１（ｐは自然数）ビットのパラレルデータ［ｐ：０］が転送されても構わない。もし、ｐ＋１がｎ＋１に等しくないならば、マルチポートインタフェース回路１１０に、ｐ＋１ビットのパラレルデータ［ｐ：０］をｎ＋１ビットのバスデータ［ｎ：０］に変換するデータ幅変換器を備えればよい。なお、以下の説明では、バスデータを単にデータと称する場合もある。
【００１５】
マルチポートインタフェース回路１１０は、第１の通信ポート及び第２の通信ポートを有している。図５を参照して後述するように、第１の通信ポートはリンク層５００（Ｌｉｎｋ０）及びトランスポート層５１０（Ｔｒｓ０）から構成され、第２の通信ポートはリンク層５０１（Ｌｉｎｋ１）及びトランスポート層５１１（Ｔｒｓ１）から構成されている。
【００１６】
マルチポートインタフェース回路１１０は、第１の通信ポートの一部をなすデータ同期化回路ＳＹＮＣ０と、第２の通信ポートの一部をなすデータ同期化回路ＳＹＮＣ１を備えている。データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１は、それぞれ、リンク層Ｌｉｎｋ０及びＬｉｎｋ１に存在する。なお、マルチポートインタフェース回路１１０が２つを超える通信ポートを有していてもよい。つまりマルチポートインタフェース回路１１０が、２つを超えるホストと接続可能な構成であってもよい。
【００１７】
データ同期化回路（第１のデータ同期化回路）ＳＹＮＣ０は、クロック信号（第１のクロック信号）ＣＬＫ＿Ａ０に同期したｎ＋１ビットのデータ（第１のデータ）ＤＡＴＡ０［ｎ：０］をクロック信号（第２のクロック信号）ＣＬＫ＿Ｂに同期化させるように構成されている。データ同期化回路（第２のデータ同期化回路）ＳＹＮＣ１は、クロック信号（第３のクロック信号）ＣＬＫ＿Ａ１に同期したｎ＋１ビットのデータ（第３のデータ）ＤＡＴＡ１［ｎ：０］をクロック信号（第４のクロック信号＝第２のクロック信号）ＣＬＫ＿Ｂに同期化させるように構成されている。
【００１８】
図２は、図１に示されるデータ同期化回路ＳＹＮＣ０の構成の一例を示すブロック図である。データ同期化回路ＳＹＮＣ０は、ラッチタイミング生成回路ＢＬＡ０、受信タイミング生成回路ＢＬＢ０、データホールド回路ＢＬＣ０、データホールド回路ＢＬＤ０及び更新タイミング調整回路ＢＬＥ０から構成される。ラッチタイミング生成回路ＢＬＡ０及びデータホールド回路ＢＬＤ０は、データ同期化回路ＳＹＮＣ０（リンク層Ｌｉｎｋ０）内でのデータ送受信に関して送信側を構成しており、クロック信号ＣＬＫ＿Ａ０に同期して動作する。受信タイミング生成回路ＢＬＢ０及びデータホールド回路ＢＬＣ０は、データ同期化回路ＳＹＮＣ０（リンク層Ｌｉｎｋ０）内でのデータ送受信に関して受信側を構成しており、クロック信号ＣＬＫ＿Ｂに同期して動作する。送信側及び受信側が、データ同期化回路ＳＹＮＣ０（リンク層Ｌｉｎｋ０）と外部との間のデータ送受信の関係を示すものでないことに注意されたい。
【００１９】
ラッチタイミング生成回路ＢＬＡ０は、クロック信号ＣＬＫ＿Ａ０に同期し、且つデータＤＡＴＡ０［ｎ：０］の入力タイミングに対応した、第１のタイミング信号としてのラッチトリガ信号（ラッチタイミング信号）ＬＴ０を生成する。ラッチタイミング生成回路ＢＬＡ０は、Ｄフリップフロップ（以下、ＤＦＦと称する）２１０及び排他的論理和ゲート（以下、ＥＸＯＲと称する）２２０とから構成される。ＥＸＯＲ２２０は、データＤＡＴＡ０［ｎ：０］の入力タイミングに対応したラッチ信号ＬＡＴＣＨ０とＤＦＦ２１０の出力との排他的論理和を演算する。ＤＦＦ２１０は、ＥＸＯＲ２２０の出力をクロック信号ＣＬＫ＿Ａ０に応じてラッチする。ＤＦＦ２１０の出力はラッチトリガ信号ＬＴ０として用いられる。
【００２０】
受信タイミング生成回路ＢＬＢ０は、ラッチタイミング生成回路ＢＬＡ０（ＤＦＦ２１０）から出力されるラッチトリガ信号ＬＴ０に基づいて、クロック信号ＣＬＫ＿Ｂに同期した第２のタイミング信号としての受信タイミング信号ＤＧ０を生成する。受信タイミング信号ＤＧ０は、クロック信号ＣＬＫ＿Ａ０とクロック信号ＣＬＫ＿Ｂとの周波数の違い（速度差）を吸収して、データホールド回路ＢＬＣ０がデータホールド回路ＢＬＤ０から送信されたデータＤＯＵＴ０［ｎ：０］を受信する（取り込む）ためのタイミング信号として用いられる。
【００２１】
受信タイミング生成回路ＢＬＢ０は、複数段のＤＦＦ、例えば３段のＤＦＦ２３０＿０，２３０＿１及び２３０＿２と、ＥＸＯＲ２４０と、アンドゲート（以下、ＡＮＤと称する）２５０とから構成される。ＤＦＦ２３０＿０，２３０＿１及び２３０＿２の各々は、入力信号をクロック信号ＣＬＫ＿Ｂに応じてラッチする。本実施形態では、ラッチタイミング生成回路ＢＬＡ０（ＤＦＦ２１０）の出力と１段目（先頭段）のＤＦＦ２３０＿０の入力との間、１段目のＤＦＦ２３０＿０の出力と２段目のＤＦＦ２３０＿１の入力との間、及び２段目のＤＦＦ２３０＿１の出力と３段目（最終段）のＤＦＦ２３０＿２の入力との間には、それぞれ、後述するセレクタ３１０＿０，３１０＿１及び３１０＿２が設けられている。つまり、セレクタ３１０＿０，３１０＿１及び３１０＿２からの出力信号が、それぞれＤＦＦ３１０＿０，３１０＿１及び３１０＿２の入力信号として用いられる。
【００２２】
データホールド回路ＢＬＣ０は、データホールド回路ＢＬＤ０から出力（送信）される、データＤＡＴＡ０［ｎ：０］に対応したデータＤＯＵＴ０［ｎ：０］を取り込んでホールドする。データホールド回路ＢＬＣ０は、データＤＡＴＡ０［ｎ：０］の各ビットに対応した、ＤＦＦ２６０及びセレクタ２７０とを備えている。つまり図２には、作図の都合で１対のＤＦＦ２６０及びセレクタ２７０のみが示されているが、データホールド回路ＢＬＣ０は、データＤＡＴＡ０［ｎ：０］のビット数ｎ＋１に一致する数の、ＤＦＦ２６０及びセレクタ２７０の対を備えている。以下の説明では便宜的に、ＤＦＦ２６０及びセレクタ２７０が、データＤＡＴＡ０［ｎ：０］に対応しているものとして説明する。
【００２３】
セレクタ２７０は、データホールド回路ＢＬＤ０に入力されるデータＤＡＴＡ０［ｎ：０］またはＤＦＦ２６０の出力のいずれか一方を、受信タイミング生成回路ＢＬＢ０から出力される受信タイミング信号ＤＧ０に応じて選択する。ＤＦＦ２６０は、セレクタ２７０の出力をクロック信号ＣＬＫ＿Ｂに応じてラッチする。つまりＤＦＦ２６０は、データホールド回路ＢＬＤ０から出力されるデータＤＯＵＴ０［ｎ：０］を受信タイミング信号ＤＧ０に応じて取り込み（受信し）、クロック信号ＣＬＫ＿Ｂの次のタイミング（クロック）でデータＳＹＮＣ＿ＤＡＴＡ０［ｎ：０］として出力する。
【００２４】
データホールド回路ＢＬＣ０はまた、受信タイミング信号ＤＧ０をクロック信号ＣＬＫ＿Ｂに応じてラッチするＤＦＦ２８０を備えている。ＤＦＦ２８０の出力信号は、データＳＹＮＣ＿ＤＡＴＡ０が有効となったことを示すタイミング信号ＶＡＬＩＤ０として用いられる。
【００２５】
データホールド回路ＢＬＤ０は、ラッチ信号ＬＡＴＣＨ０の示すタイミングで当該データホールド回路ＢＬＤ０に入力されるデータＤＡＴＡ０［ｎ：０］を取り込んでホールドする。データホールド回路ＢＬＤ０は、データＤＡＴＡ０［ｎ：０］の各ビットに対応した、ＤＦＦ２９０及びセレクタ３００とを備えている。つまり図２には、作図の都合で１対のＤＦＦ２９０及びセレクタ３００のみが示されているが、データホールド回路ＢＬＤ０は、データＤＡＴＡ０［ｎ：０］のビット数ｎ＋１に一致する数の、ＤＦＦ２９０及びセレクタ３００の対を備えている。以下の説明では便宜的に、ＤＦＦ２９０及びセレクタ３００が、データＤＡＴＡ０［ｎ：０］に対応しているものとして説明する。
【００２６】
セレクタ３００は、データホールド回路ＢＬＤ０に入力されるデータＤＡＴＡ０［ｎ：０］またはＤＦＦ２９０の出力のいずれか一方を、データ選択信号ＤＡＴＡ＿ＳＥＬ０に応じて選択する。本実施形態において、セレクタ３００は、データ選択信号ＤＡＴＡ＿ＳＥＬ０が高レベル（“１”）の場合に、データＤＡＴＡ０［ｎ：０］を選択する。データ選択信号ＤＡＴＡ＿ＳＥＬ０はクロック信号ＣＬＫ＿Ａ０に同期しており、ラッチ信号ＬＡＴＣＨ０よりもクロック信号ＣＬＫ＿Ａ０の１サイクル後のタイミングを示す。ＤＦＦ２９０は、セレクタ３００の出力をクロック信号ＣＬＫ＿Ａ０に応じてラッチする。つまりＤＦＦ２９０は、データＤＡＴＡ０［ｎ：０］をデータ選択信号ＤＡＴＡ＿ＳＥＬ０に応じて取り込み、クロック信号ＣＬＫ＿Ａ０の次のタイミング（クロック）でデータＤＯＵＴとして出力する。
【００２７】
更新タイミング調整回路ＢＬＥ０は、受信タイミング生成回路ＢＬＢ０内のＤＦＦ２３０＿０，２３０＿１及び２３０＿２が保持する値を更新するタイミングを、更新イネーブル信号ＵＥ０に応じてクロック信号ＣＬＫ＿ＢのＮ（Ｎは自然数）サイクルに１回に調整する。本実施形態において、Ｎは４である。更新タイミング調整回路ＢＬＥ０は、セレクタ３１０＿０，３１０＿１及び３１０＿２から構成される。
【００２８】
セレクタ３１０＿０は、ラッチタイミング生成回路ＢＬＡ０（ＤＦＦ２１０）から受信タイミング生成回路ＢＬＢ０に出力されるラッチタイミングを示すラッチトリガ信号ＬＴ０またはＤＦＦ２３０＿０の出力ＧＱ０＿０のいずれか一方を、更新イネーブル信号ＵＥ０に応じて選択する。本実施形態において、セレクタセレクタ３１０＿０は、更新イネーブル信号ＵＥ０が高レベル（“１”）の場合に、ラッチトリガ信号ＬＴ０を選択する。ＤＦＦ２３０＿０は、セレクタ３１０＿０の出力をクロック信号ＣＬＫ＿Ｂに応じてラッチする。
【００２９】
セレクタ３１０＿１は、ＤＦＦ２３０＿０の出力ＧＱ０＿０またはＤＦＦ２３０＿１の出力ＧＱ０＿１のいずれか一方を、更新イネーブル信号ＵＥ０に応じて選択する。ＤＦＦ２３０＿１は、セレクタ３１０＿１の出力をクロック信号ＣＬＫ＿Ｂに応じてラッチする。セレクタ３１０＿２は、ＤＦＦ２３０＿１の出力ＧＱ０＿１またはＤＦＦ２３０＿２の出力ＧＱ０＿２のいずれか一方を、更新イネーブル信号ＵＥ０に応じて選択する。ＤＦＦ２３０＿２は、セレクタ３１０＿２の出力をクロック信号ＣＬＫ＿Ｂに応じてラッチする。本実施形態において、セレクタセレクタ３１０＿１及び３１０＿２は、それぞれ、更新イネーブル信号ＵＥ０が高レベルである（アサートされている）場合に、ＤＦＦ２３０＿１及び２３０＿２の出力を選択する。
【００３０】
このように、ＤＦＦ２３０＿０，２３０＿１及び２３０＿２の値が更新されるタイミングは、クロック信号ＣＬＫ＿Ｂの示すタイミングのうち、更新イネーブル信号ＵＥ０が高レベルの期間のタイミングに制限される。つまり、ＤＦＦ２３０＿０，２３０＿１及び２３０＿２の値が更新されるタイミングが、更新タイミング調整回路ＢＬＥ０によって制限（調整）される。
【００３１】
データ同期化回路ＳＹＮＣ１も、図２に示したデータ同期化回路ＳＹＮＣ０と同様の構成を有している（図４参照）。必要ならば、上述のデータ同期化回路ＳＹＮＣ０の構成についての説明において、ＳＹＮＣ０をＳＹＮＣ１に、ＢＬＡ０，ＢＬＢ０，ＢＬＣ０，ＢＬＤ０及びＢＬＥ０を、それぞれＢＬＡ１，ＢＬＢ１，ＢＬＣ１，ＢＬＤ１及びＢＬＥ１に読み替えられたい。同様に、ＤＦＦ２１０，２３０＿０，２３０＿１，２３０＿２，２６０，２８０及び２９０を、それぞれＤＦＦ２１１，２３１＿０，２３１＿１，２３１＿２，２６１，２８１及び２９１に、ＥＸＯＲ２２０及び２４０を、それぞれＥＸＯＲ２２１及び２４１に、ＡＮＤ２５０をＡＮＤ２５１に、そしてセレクタ２７０，３００，３１０＿０，３１０＿１及び３１０＿２を、それぞれセレクタ２７１，３０１，３１１＿０，３１１＿１及び３１１＿２に読み替えられたい。同様に、ＬＡＴＣＨ０，ＣＬＫ＿Ａ０，ＤＡＴＡ０，ＤＡＴＡ＿ＳＥＬ０，ＬＴ０，ＧＱ０＿０，ＧＱ０＿１，ＧＱ０＿２，ＤＧ０，ＵＥ０，ＤＯＵＴ０，ＳＹＮＣ＿ＤＡＴＡ０及びＶＡＬＩＤ０を、それぞれ、ＬＡＴＣＨ１，ＣＬＫ＿Ａ１，ＤＡＴＡ１，ＤＡＴＡ＿ＳＥＬ１，ＬＴ１，ＧＱ１＿０，ＧＱ１＿１，ＧＱ１＿２，ＤＧ１，ＵＥ１，ＤＯＵＴ１，ＳＹＮＣ＿ＤＡＴＡ１及びＶＡＬＩＤ１に読み替えられたい。
【００３２】
次に、図２に示されるデータ同期化回路ＳＹＮＣ０の動作について、図３のタイミングチャートを参照して説明する。  
まず、クロック信号ＣＬＫ＿Ａ０で動作するデータホールド回路ＢＬＤ０に、例えばクロック信号ＣＬＫ＿Ａ０のサイクル（タイミング）Ｔ０２で、データＤＡＴＡ０［ｎ：０］としてのデータＤａｔａ＿Ａが入力されたものとする。するとデータＤａｔａ＿Ａは、データ選択信号ＤＡＴＡ＿ＳＥＬ０に応じて、データホールド回路ＢＬＤ０内のＤＦＦ２９０に取り込まれる。ＤＦＦ２９０に取り込まれたデータＤａｔａ＿Ａは、次のサイクルＴ０３で、ＤＯＵＴ０［ｎ：０］としてＤＦＦ２１０から出力される。
【００３３】
また、データホールド回路ＢＬＤ０と同様にクロック信号ＣＬＫ＿Ａ０で動作するラッチタイミング生成回路ＢＬＡ０には、ラッチ信号ＬＡＴＣＨ０が入力される。ラッチ信号ＬＡＴＣＨ０は、クロック信号ＣＬＫ＿Ａ０に同期しており、データ選択信号ＤＡＴＡ＿ＳＥＬ０よりもクロック信号ＣＬＫ＿Ａ０の１サイクル（周期）前に高レベル（有効）となる。ここでは、ラッチ信号ＬＡＴＣＨ０が、サイクルＴ０２よりも１サイクル前のサイクルＴ０１で高レベルとなったものとする。つまり、有効なラッチ信号ＬＡＴＣＨ０が、サイクルＴ０１でラッチタイミング生成回路ＢＬＡ０に入力されたものとする。
【００３４】
するとＤＦＦ２１０は、ラッチ信号ＬＡＴＣＨ０をクロック信号ＣＬＫ＿Ａ０に応じてラッチし、当該ラッチした信号を次のサイクルＴ０２でラッチトリガ信号ＬＴ０として出力する。このラッチトリガ信号ＬＴ０は、次にラッチ信号ＬＡＴＣＨ０が有効となるまでクロック信号ＣＬＫ＿Ａ０に応じてＤＦＦ２１０にラッチされる。本実施形態において、データＤＡＴＡ０［ｎ：０］は８ビット（ｎ＝７）であり、４つのデータＤＡＴＡ０［ｎ：０］を組み合わせて３２ビットデータが構成される。このためデータホールド回路ＢＬＤ０には、クロック信号ＣＬＫ＿Ａ０の４サイクル毎にデータＤＡＴＡ０［ｎ：０］が入力され、ラッチ信号ＬＡＴＣＨ０もその入力タイミングに同期して、クロック信号ＣＬＫ＿Ａ０の４サイクルに１回の割合で有効となる（つまりアサートされる）。この場合、ＤＦＦ２１０の出力、つまりラッチトリガ信号ＬＴ０は、クロック信号ＣＬＫ＿Ａ０の４サイクルの期間毎に、高レベルと低レベルとを繰り返す。
【００３５】
一方、クロック信号ＣＬＫ＿Ｂで動作する受信タイミング生成回路ＢＬＢ０において、ＤＦＦ２３０＿０は、有効なラッチタイミング信号ＬＴ０が当該受信タイミング生成回路ＢＬＢ０に入力されるサイクルＴ０２の開始時から最初に到来するクロック信号ＣＬＫ＿ＢのサイクルＴ１２で、信号ＧＱ０＿０を出力する。クロック信号ＣＬＫ＿Ｂの周波数は、後述するように３６０ＭＨｚ≦ＣＬＫ＿Ｂ≦１２００ＭＨｚの範囲にあるものとする。
【００３６】
ここで、更新タイミング調整回路ＢＬＥ０が存在せず、受信タイミング生成回路ＢＬＢ０内のＤＦＦ２３０＿０，２３０＿１及び２３０＿２の値の更新タイミングが調整（制限）されない場合を想定する。つまり、受信タイミング生成回路ＢＬＢ０内のＤＦＦ２３０＿０，２３０＿１，２３０＿２の入力側に、それぞれ、セレクタ３１０＿０，３１０＿１及び３１０＿２が設けられていない従来技術を想定する。この場合、ＤＦＦ２３０＿１は、図３のタイミングチャートと異なり、サイクルＴ１２の次のクロック信号ＣＬＫ＿ＢのサイクルＴ１３で、信号ＧＱ０＿１を出力する。同様にＤＦＦ２３０＿２は、図３のタイミングチャートと異なり、サイクルＴ１３の次のクロック信号ＣＬＫ＿ＢのサイクルＴ１４で、信号ＧＱ０＿２を出力する。ＥＸＯＲ２４０は、ＤＦＦ２３０＿１の出力とＤＦＦ２３０＿２の出力との排他的論理和を演算する。更新タイミング調整回路ＢＬＥ０が存在しない場合、このＥＸＯＲ２４０の排他的論理和演算結果が、受信タイミング信号ＤＧ０としてデータホールド回路ＢＬＣ０で用いられることになる。
【００３７】
（ａ）次に更新タイミング調整回路ＢＬＥ０が存在しない状態で、クロック信号ＣＬＫ＿Ａ０よりクロック信号ＣＬＫ＿Ｂの周波数が低いものとする。この場合、データホールド回路ＢＬＤ０でデータＤＡＴＡ０［ｎ：０］としてのデータＤａｔａ＿Ａ、Ｄａｔａ＿Ｂ、…をホールドしている期間（ホールド期間Ｈ）に、受信タイミング信号ＤＧ０により、データホールド回路ＢＬＣ０（つまり、クロック信号ＣＬＫ＿Ｂで動作するデータホールド回路ＢＬＣ０）にデータを取り込む必要がある。ホールド期間Ｈとは、データＤＡＴＡ０［ｎ：０］がデータホールド回路ＢＬＣ０に入力されてから、当該データホールド回路ＢＬＣ０から出力し終えるまでの期間である。
【００３８】
受信タイミング信号ＤＧ０を生成するためには、受信タイミング生成回路ＢＬＢ０内のＤＦＦの個数（段数）がｍの場合、クロック信号ＣＬＫ＿Ｂのｍクロック（サイクル）の期間を必要とする。したがって、クロック信号ＣＬＫ＿Ｂの周波数は、クロック信号ＣＬＫ＿Ａ０の周波数に対して、
ＣＬＫ＿Ｂ≧ＣＬＫ＿Ａ０×ｍ／Ｈ              （１）
を満たす必要がある。
【００３９】
（ｂ）これに対し、更新タイミング調整回路ＢＬＥ０が存在しない状態で、クロック信号ＣＬＫ＿Ａ０よりクロック信号ＣＬＫ＿Ｂの周波数が高いものとする。このような場合、受信タイミング信号ＤＧ０は、データがデータホールド回路ＢＬＣ０に入力されたタイミングから、クロック信号ＣＬＫ＿Ａ０の１サイクル経過後に出力される必要がある。受信タイミング信号ＤＧ０は、受信タイミング生成回路ＢＬＢ０おける複数（ｍ）段のＤＦＦにおける（ｍ−１）段目のＤＦＦからの出力信号の出力タイミング、すなわち、データがデータホールド回路ＢＬＣ０に入力されたタイミングから、クロック信号ＣＬＫ＿Ｂの（ｍ−１）サイクル経過後に出力される。したがって、クロック信号ＣＬＫ＿Ｂの周波数は、クロック信号ＣＬＫ＿Ａ０の周波数に対して、
ＣＬＫ＿Ｂ≦ＣＬＫ＿Ａ０×（ｍ−１）          （２）
を満たす必要がある。
【００４０】
つまり更新タイミング調整回路ＢＬＥ０が存在しない場合、クロック信号ＣＬＫ＿Ｂの周波数は、クロック信号ＣＬＫ＿Ａ０の周波数に対して
ＣＬＫ＿Ａ０×ｍ／Ｈ≦ＣＬＫ＿Ｂ≦ＣＬＫ＿Ａ０×（ｍ−１）  （３）
を満たす必要がある。
【００４１】
このことは、クロック信号ＣＬＫ＿Ｂ及びクロック信号ＣＬＫ＿Ａ１の周波数についても同様である。つまり、更新タイミング調整回路ＢＬＥ１が存在しない場合、クロック信号ＣＬＫ＿Ｂの周波数は、クロック信号ＣＬＫ＿Ａ１の周波数に対して
ＣＬＫ＿Ａ１×ｍ／Ｈ≦ＣＬＫ＿Ｂ≦ＣＬＫ＿Ａ１×（ｍ−１）  （４）
を満たす必要がある。
【００４２】
ここで、ｍ＝３、Ｈ＝５、ＣＬＫ＿Ａ０＝１５０ＭＨｚ、Ａ１＝６００ＭＨｚであるとする。  
更新タイミング調整回路ＢＬＥ０が存在しない場合に、データ同期化回路ＳＹＮＣ０で必要なクロック信号ＣＬＫ＿Ｂの周波数条件は、
９０ＭＨｚ≦ＣＬＫ＿Ｂ≦３００ＭＨｚ
ｆｏｒ  ＣＬＫ＿Ａ０＝１５０ＭＨｚ         （５）
である。
【００４３】
一方、更新タイミング調整回路ＢＬＥ１が存在しない場合に、データ同期化回路ＳＹＮＣ１で必要なクロック信号ＣＬＫ＿Ｂの周波数条件は、
３６０ＭＨｚ≦ＣＬＫ＿Ｂ≦１２００ＭＨｚ
ｆｏｒ  ＣＬＫ＿Ａ０＝６００ＭＨｚ         （６）
である。
【００４４】
以上のクロック信号ＣＬＫ＿Ｂの周波数条件から明らかなように、データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１に、それぞれ、更新タイミング調整回路ＢＬＥ０及びＢＬＥ１が存在しないならば、ｍ＝３、Ｈ＝５、ＣＬＫ＿Ａ０＝１５０ＭＨｚ、Ａ１＝６００ＭＨｚの場合、データ同期化回路ＳＹＮＣ０とデータ同期化回路ＳＹＮＣ１とで、クロック信号ＣＬＫ＿Ｂの周波数範囲が全く異なる。このため、データ同期化回路ＳＹＮＣ０に適合する周波数のクロック信号ＣＬＫ＿Ｂ０と、データ同期化回路ＳＹＮＣ１に適合する周波数のクロック信号ＣＬＫ＿Ｂ１とが必要となる。したがって、データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１に共通のアプリケーション層では、クロック信号ＣＬＫ＿Ｂ０及びＣＬＫ＿Ｂ１のいずれとも周波数を異にするクロック信号ＣＬＫ＿Ｃを必要とする。この場合、アプリケーション層には、クロック信号ＣＬＫ＿Ｂ０とクロック信号ＣＬＫ＿Ｃとを同期化するための同期化回路と、クロック信号ＣＬＫ＿Ｂ１とクロック信号ＣＬＫ＿Ｃとを同期化するための同期化回路とが必要となる。
【００４５】
これに対して、更新タイミング調整回路ＢＬＥ０及びＢＬＥ１が、それぞれ、データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１に備えられている本実施形態では、以下に詳述するように、データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１において共通のクロック信号ＣＬＫ＿Ｂを適用できる。
【００４６】
本実施形態において、ラッチタイミング生成回路ＢＬＡ０内のＤＦＦ２１０から出力されるラッチトリガ信号ＬＴ０は、更新イネーブル信号ＵＥ０がアサートされている期間だけ、更新タイミング調整回路ＢＬＥ０内のセレクタ３１０＿０によって、受信タイミング生成回路ＢＬＢ０内の１段目のＤＦＦ２３０＿０に出力される。更新イネーブル信号ＵＥ０は、クロック信号ＣＬＫ＿Ｂの４サイクルに１回アサートされる。即ち更新イネーブル信号ＵＥ０は、図３に示すように、例えばサイクルＴ１１，Ｔ１５及びＴ１９などにおいてアサートされる。
【００４７】
ＤＦＦ２３０＿０は、更新イネーブル信号ＵＥ０がアサートされている期間のクロック信号ＣＬＫ＿Ｂに応じて、ラッチトリガ信号ＬＴ０（より詳細には、ラッチトリガ信号ＬＴ０の２値レベル）をラッチする。即ちＤＦＦ２３０＿０は、更新イネーブル信号ＵＥ０がアサートされている期間のクロック信号ＣＬＫ＿Ｂ、例えばサイクルＴ１１の期間のクロック信号ＣＬＫ＿Ｂに応じて、自身がラッチしている値を、その時点のラッチトリガ信号ＬＴ０の２値レベルに更新する。ＤＦＦ２３０＿０は、サイクルＴ１１の次のクロック信号ＣＬＫ＿ＢのサイクルＴ１２で、自身がラッチしている値を、図３に示すように信号ＧＱ０＿０として出力する。
【００４８】
更新イネーブル信号ＵＥ０がアサートされていない期間、つまりクロック信号ＣＬＫ＿Ｂの４サイクルのうちの３サイクルの期間、例えばサイクルＴ１２〜Ｔ１４の期間は、セレクタ３１０＿０は、ＤＦＦ２３０＿０から出力される信号ＧＱ０＿０を、当該ＤＦＦ２３０＿０に出力する。ＤＦＦ２３０＿０は、当該ＤＦＦ２３０＿０自身が出力する信号ＧＱ０＿０を、サイクルＴ１２〜Ｔ１４におけるクロック信号ＣＬＫ＿Ｂに応じてラッチする。このため、ＤＦＦ２３０＿０にラッチされている値は、サイクルＴ１１に後続するサイクルＴ１２〜Ｔ１４の期間更新されない。つまり、ＤＦＦ２３０＿０は、サイクルＴ１１〜Ｔ１４の４サイクルの期間、同一の値を保持する。
【００４９】
一方、ラッチタイミング生成回路ＢＬＡ０内のＤＦＦ２１０は、前述したように、クロック信号ＣＬＫ＿Ａ０の４サイクルの期間毎に状態遷移する。換言するならば、ＤＦＦ２１０の出力であるラッチトリガ信号ＬＴ０は、クロック信号ＣＬＫ＿Ａ０の４サイクルの期間、同一の状態を示す。このため、クロック信号ＣＬＫ＿Ａ０のサイクルＴ０２〜Ｔ０５の期間において、サイクルＴ１１以外に、更新イネーブル信号ＵＥ０がアサートされるクロック信号ＣＬＫ＿Ｂのサイクル、つまりサイクルＴ１５，Ｔ１９及びＴ１１３で、ＤＦＦ２３０＿０にラッチされている値が更新されても、その値自体は変化しない。このＤＦＦ２３０＿０の状態は、クロック信号ＣＬＫ＿Ｂの１６サイクルの期間保持される。
【００５０】
ＤＦＦ２３０＿０から出力される信号ＧＱ０＿０は、更新イネーブル信号ＵＥ０がアサートされている期間だけ、更新タイミング調整回路ＢＬＥ０内のセレクタ３１０＿１によって、受信タイミング生成回路ＢＬＢ０内の２段目のＤＦＦ２３０＿１に出力される。ＤＦＦ２３０＿１は、更新イネーブル信号ＵＥ０がアサートされている期間のクロック信号ＣＬＫ＿Ｂに応じて、信号ＧＱ０＿０をラッチする。即ちＤＦＦ２３０＿１は、更新イネーブル信号ＵＥ０がアサートされている期間のクロック信号ＣＬＫ＿Ｂ、例えばサイクルＴ１５の期間のクロック信号ＣＬＫ＿Ｂに応じて、自身がラッチしている値を、その時点の信号ＧＱ０＿０の２値レベルに更新する。ＤＦＦ２３０＿１は、サイクルＴ１５の次のクロック信号ＣＬＫ＿ＢのサイクルＴ１６で、自身がラッチしている値を、図３に示すように信号ＧＱ０＿１として出力する。
【００５１】
ＤＦＦ２３０＿１から出力される信号ＧＱ０＿１は、更新イネーブル信号ＵＥ０がアサートされている期間だけ、更新タイミング調整回路ＢＬＥ０内のセレクタ３１０＿２によって、受信タイミング生成回路ＢＬＢ０内の３段目のＤＦＦ２３０＿２に出力される。ＤＦＦ２３０＿２は、更新イネーブル信号ＵＥ０がアサートされている期間のクロック信号ＣＬＫ＿Ｂに応じて、信号ＧＱ０＿１をラッチする。即ちＤＦＦ２３０＿２は、更新イネーブル信号ＵＥ０がアサートされている期間のクロック信号ＣＬＫ＿Ｂ、例えばサイクルＴ１９の期間のクロック信号ＣＬＫ＿Ｂに応じて、自身がラッチしている値を、その時点の信号ＧＱ０＿１の２値レベルに更新する。ＤＦＦ２３０＿２は、サイクルＴ１９の次のクロック信号ＣＬＫ＿ＢのサイクルＴ１１０で、自身がラッチしている値を、図３に示すように信号ＧＱ０＿２として出力する。
【００５２】
ＥＸＯＲ２４０（第１の論理ゲート）は、ＤＦＦ２３０＿１から出力される信号ＧＱ０＿１とＤＦＦ２３０＿２から出力される信号ＧＱ０＿２との排他的論理和を演算する。ＥＸＯＲ２４０は、排他的論理和演算により、信号ＧＱ０＿１（ＤＦＦ２３０＿１の出力）及び信号ＧＱ０＿２（ＤＦＦ２３０＿２の出力）の値が異なる状態（ここでは、上記両出力の値がラッチタイミング信号ＬＴ０の示すタイミングの後で最初に異なる状態）を検出する。なお、このような状態を検出する論理ゲートであれば、ＥＸＯＲ以外の論理ゲートを用いてもよい。
【００５３】
ＡＮＤ２５０（第２の論理ゲート）は、ＥＸＯＲ２４０の出力信号（排他的論理和演算結果）を、更新イネーブル信号ＵＥ０がアサートされている期間だけ、受信タイミング信号ＤＧ０として出力する。これにより、更新イネーブル信号ＵＥ０がクロック信号ＣＬＫ＿Ｂの４サイクルに１回の割合でアサートされるにも拘わらず、受信タイミング信号ＤＧ０を、クロック信号ＣＬＫ＿Ｂの１６サイクルに１回の割合でアサートさせることができる。しかも、受信タイミング信号ＤＧ０は、ラッチトリガ信号ＬＴ０がアサートされた後で、且つデータＤＯＵＴ０が切り替えられた後のタイミングでアサートされる。
【００５４】
ここで、図３に示されるように、無効なデータＸＸＸから一連のデータＤａｔａ＿Ａ，Ｄａｔａ＿Ｂ，…のうちの先頭のデータＤａｔａ＿Ａに切り替えられるものとする。この場合、受信タイミング信号ＤＧ０は、ラッチトリガ信号ＬＴ０がアサートされた後で、且つデータＤＯＵＴ０が無効なデータＸＸＸからデータＤａｔａ＿Ａに切り替えられた後のタイミング（具体的には、ラッチトリガ信号ＬＴ０がアサートされたクロック信号ＣＬＫ＿Ａ０のサイクルＴ０１からクロック信号ＣＬＫ＿Ｂの７サイクルが経過したタイミング）でアサートされる。このため、クロック信号ＣＬＫ＿Ｂの周波数がクロック信号ＣＬＫ＿Ａ０の周波数（ＣＬＫ＿Ａ０＝１５０ＭＨｚ）よりも高くても（３６０ＭＨｚ≦ＣＬＫ＿Ｂ≦１２００ＭＨｚ）、データホールド回路ＢＬＣ０において、無効なデータＸＸＸがＤＦＦ２６０からデータＳＹＮＣ＿ＤＡＴＡ０［ｎ：０］として出力されおそれはない。
【００５５】
これに対して従来技術では、受信タイミング生成回路ＢＬＢ０内のＤＦＦの段数が本実施形態と同様に３（ｍ＝３）の場合、ラッチトリガ信号ＬＴ０がアサートされたクロック信号ＣＬＫ＿Ａ０のサイクルＴ０１からクロック信号ＣＬＫ＿Ｂの２サイクルが経過した後に、受信タイミング信号ＤＧ０がアサートされる。このため、クロック信号ＣＬＫ＿Ｂの周波数が上述のようにクロック信号ＣＬＫ＿Ａ０の周波数の２倍を超えている場合、データＤＯＵＴ０が無効なデータＸＸＸからデータＤａｔａ＿Ａに切り替えられる前に、受信タイミング信号ＤＧ０がアサートされる。すると、データホールド回路ＢＬＣ０において、無効なデータＸＸＸがデータＳＹＮＣ＿ＤＡＴＡ０［ｎ：０］として出力されてしまう。なお、本実施形態においては、仮にＡＮＤ２５０を用いず、ＥＸＯＲ２４０の出力を受信タイミング信号ＤＧ０として用いたとしても、受信タイミング信号ＤＧ０がアサートされるタイミングを、従来技術よりもクロック信号ＣＬＫ＿Ｂの３サイクルの期間遅らせることができる。
【００５６】
さて、データホールド回路ＢＬＣ０内のＤＦＦ２８０は、受信タイミング信号ＤＧ０をクロック信号ＣＬＫ＿Ｂに応じてラッチして、当該クロック信号ＣＬＫ＿Ｂの次のサイクルでタイミング信号ＶＡＬＩＤ０として出力する。つまり、ＤＦＦ２８０は図３に示すように、受信タイミング信号ＤＧ０がアサートされたクロック信号ＣＬＫ＿Ｂのサイクル（例えばＴ１９）の次のサイクル（例えばＴ２０）で、タイミング信号ＶＡＬＩＤ０をアサートする。このようにタイミング信号ＶＡＬＩＤ０がアサートされることにより、データホールド回路ＢＬＣ０（ＤＦＦ２６０）から出力されるデータＳＹＮＣ＿ＤＡＴＡ０が有効となったことが示される。よって、データ同期化回路ＳＹＮＣ０（データホールド回路ＢＬＣ０）の後段のモジュールは、タイミング信号ＶＡＬＩＤ０がアサートされるタイミングのみで、データＳＹＮＣ＿ＤＡＴＡ０を認識すればよい。
【００５７】
上述したように、本実施形態では、データ同期化回路ＳＹＮＣ０内の更新タイミング調整回路ＢＬＥ０で用いられる更新イネーブル信号ＵＥ０が、クロック信号ＣＬＫ＿Ｂの４サイクルに１回アサートされる。したがって、受信タイミング生成回路ＢＬＢ０内のＤＦＦ２３０＿０，２３０＿１及び２３０＿２の実質的なラッチ（値更新）のためのクロック信号ＣＬＫ＿Ｂ’は、クロック信号ＣＬＫ＿Ｂではなくて、当該クロック信号ＣＬＫ＿Ｂが４分周されたのと等価となる。
【００５８】
このため、データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１に共通に用いられるクロック信号ＣＬＫ＿Ｂの周波数条件が３６０ＭＨｚ≦ＣＬＫ＿Ｂ≦１２００ＭＨｚであるものとすると、クロック信号ＣＬＫ＿Ｂ’の周波数条件は、９０ＭＨｚ≦ＣＬＫ＿Ｂ’≦３００ＭＨｚであるとみなすことができる。このことはデータ同期化回路ＳＹＮＣ０において、データホールド回路ＢＬＤ０からデータホールド回路ＢＬＣ０に送信される、周波数が１５０ＭＨｚのクロック信号ＣＬＫ＿Ａ０に同期したデータＤＯＵＴ０を、受信タイミング生成回路ＢＬＢ０から出力される受信タイミング信号ＤＧ０に応じて、当該データホールド回路ＢＬＣ０において、３６０ＭＨｚ≦ＣＬＫ＿Ｂ≦１２００ＭＨｚの範囲の周波数のクロック信号ＣＬＫ＿Ｂに同期化できることを示す。
【００５９】
図４は、図１に示すマルチポートインタフェース回路１１０の詳細な構成を示すブロック図である。図４には、マルチポートインタフェース回路１１０が、図２に示される構成のデータ同期化回路ＳＹＮＣ０と、当該データ同期化回路ＳＹＮＣ０と同様の構成のデータ同期化回路ＳＹＮＣ１とを備えている様子が示されている。
【００６０】
本実施形態において、データ同期化回路ＳＹＮＣ０で適用されるクロック信号ＣＬＫ＿Ａ０の周波数は１５０ＭＨｚ（ＣＬＫ＿Ａ０＝１５０ＭＨｚ）であり、データ同期化回路ＳＹＮＣ１で適用されるクロック信号ＣＬＫ＿Ａ１の周波数は６００ＭＨｚ（ＣＬＫ＿Ａ１＝６００ＭＨｚ）であるものとする。また、データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１で共通に適用されるクロック信号ＣＬＫ＿Ｂの周波数は、前述したように３６０ＭＨｚ以上で且つ１２００ＭＨｚ以下の範囲（３６０ＭＨｚ≦ＣＬＫ＿Ｂ≦１２００ＭＨｚ）にあるものとする。図４では、煩雑さを避けるために、データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１のそれぞれに、クロック信号ＣＬＫ＿Ｂが表記されている。しかし本実施形態では、１つのクロック信号ＣＬＫ＿Ｂが、データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１の双方に入力される。
【００６１】
本実施形態において、データ同期化回路ＳＹＮＣ０（つまりリンク層Ｌｉｎｋ０側）で適用される更新イネーブル信号（第１の更新イネーブル信号）ＵＥ０は、前述したように、クロック信号ＣＬＫ＿Ｂの４サイクルに１回アサートされる。これに対し、データ同期化回路ＳＹＮＣ１（つまりリンク層Ｌｉｎｋ１側）で適用される更新イネーブル信号（第２の更新イネーブル信号）ＵＥ１は、クロック信号ＣＬＫ＿Ｂの全サイクルでアサートされる。
【００６２】
このため、データ同期化回路ＳＹＮＣ０では、受信タイミング生成回路ＢＬＢ０内のＤＦＦ２３０＿０，２３０＿１及び２３０＿２のそれぞれが自身の保持している値を更新するタイミングを、前述したように、クロック信号ＣＬＫ＿Ｂの４サイクルに１回に調整（制限）することができる。これに対し、データ同期化回路ＳＹＮＣ１では、受信タイミング生成回路ＢＬＢ１内のＤＦＦ２３１＿０，２３１＿１及び２３１＿２のそれぞれは、クロック信号ＣＬＫ＿Ｂのサイクル毎に自身の保持している値を更新する。
【００６３】
これにより、データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１では、それぞれ、クロック信号ＣＬＫ＿Ａ０及びＣＬＫ＿Ａ１の周波数がＣＬＫ＿Ａ０＝１５０ＭＨｚ，ＣＬＫ＿Ａ１＝６００ＭＨｚのように異なっているにも拘わらずに、データＤＯＵＴ０及びＤＯＵＴ１を、３６０ＭＨｚ≦ＣＬＫ＿Ｂ≦１２００ＭＨｚの範囲の周波数のクロック信号ＣＬＫ＿Ｂに同期化できる。
【００６４】
図５は、図１に示されるマルチポートインタフェース回路１１０が有する第１及び第２の通信ポートの通信プロトコル階層構造とアプリケーション層との関係を、各階層で適用されるクロック信号と対応付けて示す。
【００６５】
第１の通信ポートは、リンク層５００（Ｌｉｎｋ０）及びトランスポート層５１０（Ｔｒｓ０）から構成され、第２の通信ポートはリンク層５０１（Ｌｉｎｋ１）及びトランスポート層５１１（Ｔｒｓ１）から構成されている。データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１は、それぞれ、リンク層Ｌｉｎｋ０及びＬｉｎｋ１に存在する。
【００６６】
リンク層Ｌｉｎｋ０及びＬｉｎｋ１の送信側、つまり図３に示すデータＤＯＵＴ０及びＤＯＵＴ１を送信する側（データホールド回路ＢＬＤ０及びＢＬＤ１）では、それぞれ、周波数が異なるクロック信号ＣＬＫ＿Ａ０及びＣＬＫ＿Ａ１が用いられる。ここでは、ＣＬＫ＿Ａ０＝１５０ＭＨｚ、ＣＬＫ＿Ａ１＝６００ＭＨｚである。これに対して、リンク層Ｌｉｎｋ０及びＬｉｎｋ１の受信側、つまりクロック信号ＣＬＫ＿Ａ０及びＣＬＫ＿Ａ１に同期したデータＤＯＵＴ０及びＤＯＵＴ１を受信する側（データホールド回路ＢＬＣ０及びＢＬＣ１）では、いずれもクロック信号ＣＬＫ＿Ｂが共通に用いられる。クロック信号ＣＬＫ＿Ｂの周波数は、３６０ＭＨｚ≦ＣＬＫ＿Ｂ≦１２００ＭＨｚの範囲にある。また、トランスポート層Ｔｒｓ０及びＴｒｓ１と、アプリケーション層Ａｐｐｌｉにおいても、クロック信号ＣＬＫ＿Ｂが共通に用いられる。
【００６７】
リンク層Ｌｉｎｋ０及びＬｉｎｋ１の受信側で受信された、それぞれ、クロック信号ＣＬＫ＿Ａ０及びＣＬＫ＿Ａ１に同期したデータＤＯＵＴ０（第１のデータ）及びＤＯＵＴ１（第３のデータ）は、図３を参照しての前述したデータ同期化回路ＳＹＮＣ０の動作から明らかなように、当該受信側でいずれもクロック信号ＣＬＫ＿Ｂに同期化される。クロック信号ＣＬＫ＿Ｂに同期化されたデータＤＯＵＴ０及びＤＯＵＴ１は、データＳＹＮＣ＿ＤＡＴＡ０（第２のデータ）及びＳＹＮＣ＿ＤＡＴＡ１（第４のデータ）として出力される。
【００６８】
クロック信号ＣＬＫ＿Ｂに同期化されたデータＳＹＮＣ＿ＤＡＴＡ０及びＳＹＮＣ＿ＤＡＴＡ１は、それぞれ、クロック信号ＣＬＫ＿Ｂで動作するトランスポート層Ｔｒｓ０及びＴｒｓ１を介して、クロック信号ＣＬＫ＿Ｂで動作するアプリケーション層Ａｐｐｌｉに集められる。これにより、データＳＹＮＣ＿ＤＡＴＡ０及びＳＹＮＣ＿ＤＡＴＡ１は、アプリケーション層Ａｐｐｌｉで処理される。
【００６９】
本実施形態においては、リンク層Ｌｉｎｋ０及びＬｉｎｋ１の送信側から送られた、クロック信号ＣＬＫ＿Ａ０及びＣＬＫ＿Ａ１（ＣＬＫ＿Ａ０＝１５０ＭＨｚ、ＣＬＫ＿Ａ１＝６００ＭＨｚ）に同期したデータＤＯＵＴ０及びＤＯＵＴ１を、当該リンク層Ｌｉｎｋ０及びＬｉｎｋ１の受信側でクロック信号ＣＬＫ＿Ｂに３６０ＭＨｚ≦ＣＬＫ＿Ｂ≦１２００ＭＨｚの範囲で同期化できる。つまり、クロック信号ＣＬＫ＿Ａ０からクロック信号ＣＬＫ＿Ｂへの同期化、及びクロック信号ＣＬＫ＿Ａ１からクロック信号ＣＬＫ＿Ｂへの同期化が可能である。
【００７０】
このため、トランスポート層Ｔｒｓ０及びＴｒｓ１、並びに各通信ポートに共通のアプリケーション層Ａｐｐｌｉにおいても、クロック信号ＣＬＫ＿Ｂを共通に用いることができる。これにより従来技術とは異なり、アプリケーション層Ａｐｐｌｉ内に、データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１にそれぞれ相当する同期化回路を用意する必要がなくなる。
【００７１】
図６は、本実施形態で適用される、更新イネーブル信号を生成する更新イネーブル信号生成器の構成を示すブロック図である。図６に示すように、更新イネーブル信号生成器６００は、カウンタ６１０及びデコーダ６２０から構成される。カウンタ６１０は例えば２ビットカウンタであり、クロック信号ＣＬＫ＿Ｂのクロック数をカウントする。デコーダ６２０は、カウンタ６１０のカウント値ＣＮＴをデコードする。デコーダ６２０は、カウント値ＣＮＴのデコード結果に基づいて、更新イネーブル信号ＵＥｉ＿１，ＵＥｉ＿２またはＵＥｉ＿４をアサートする。
【００７２】
次、図６に示される更新イネーブル信号生成器６００の動作について、図７のタイミングチャートを参照して説明する。  
カウンタ６１０は、クロック信号ＣＬＫ＿Ｂに同期してカウント動作を行う。カウンタ６１０が２ビットのカウンタである本実施形態では、当該カウンタ６１０のカウント値ＣＮＴはクロック信号ＣＬＫ＿Ｂに同期して、「０」、「１」、「２」、「３」を繰り返す。
【００７３】
デコーダ６２０は、カウンタ６１０のカウント値ＣＮＴが「０」である期間（サイクル）、有効な更新イネーブル信号ＵＥｉ＿４を出力する。つまり、デコーダ６２０（更新イネーブル信号生成器６００）から出力される更新イネーブル信号ＵＥｉ＿４は、クロック信号ＣＬＫ＿Ｂの４サイクルに１回アサートされる。したがって、更新イネーブル信号ＵＥｉ＿４を前記更新イネーブル信号ＵＥ０として、データ同期化回路ＳＹＮＣ０（リンク層Ｌｉｎｋ０側）で用いればよい。
【００７４】
デコーダ６２０は、カウンタ６１０のカウント値ＣＮＴに無関係に常時有効な更新イネーブル信号ＵＥｉ＿１を出力する。つまり、デコーダ６２０から出力される更新イネーブル信号ＵＥｉ＿１は、クロック信号ＣＬＫ＿Ｂの全サイクルに亘ってアサートされる。したがって、更新イネーブル信号ＵＥｉ＿１を前記更新イネーブル信号ＵＥ１として、データ同期化回路ＳＹＮＣ１（リンク層Ｌｉｎｋ１側）で用いればよい。
【００７５】
デコーダ６２０は、カウンタ６１０のカウント値ＣＮＴが「０」である期間と「２」である期間、即ちカウント値ＣＮＴの最下位ビットが「０」である期間、有効な更新イネーブル信号ＵＥｉ＿２を出力する。つまり、デコーダ６２０から出力される更新イネーブル信号ＵＥｉ＿２は、クロック信号ＣＬＫ＿Ｂの２サイクルに１回アサートされる。もし、この更新イネーブル信号ＵＥｉ＿２を、更新イネーブル信号ＵＥ０に代えてデータ同期化回路ＳＹＮＣ０で適用した場合、クロック信号ＣＬＫ＿Ｂの２サイクルに１回、ＤＦＦ２３０＿０，２３０＿１及び２３０＿２の各々が保持する値が更新される。このため、例えばクロック信号ＣＬＫ＿Ａ０の周波数が、上記実施形態とは異なって３００ＭＨｚであり、この３００ＭＨｚのクロック信号ＣＬＫ＿Ａ０に同期化したデータを、上述した３６０ＭＨｚ≦ＣＬＫ＿Ｂ≦１２００ＭＨｚの範囲のクロック信号ＣＬＫ＿Ｂに同期化するには、更新イネーブル信号ＵＥ０に代えて更新イネーブル信号ＵＥｉ＿２を用いればよい。
【００７６】
なお、更新イネーブル信号生成器６００は、データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１に共通に設けられても、データ同期化回路ＳＹＮＣ０及びＳＹＮＣ１の各々に設けられても構わない。後者の場合、更新イネーブル信号生成器６００が、対応するデータ同期化回路で用いられる更新イネーブル信号のみを生成可能な構成であっても構わない。
【００７７】
［変形例］
次に上記実施形態の変形例について図面を参照して説明する。  
図８は、上記実施形態の変形例で適用されるマルチポートインタフェース回路が有する第１及び第２の通信ポートの通信プロトコル階層構造とアプリケーション層との関係を、各階層で適用されるクロック信号と対応付けて示す。
【００７８】
第１の通信ポートは、リンク層８００（Ｌｉｎｋ０）及びトランスポート層８１０（Ｔｒｓ０）から構成され、第２の通信ポートはリンク層８０１（Ｌｉｎｋ１）及びトランスポート層８１１（Ｔｒｓ１）から構成されている。マルチポートインタフェース回路には、１つのアプリケーション層８２０（Ａｐｐｌｉ）が存在する。リンク層８００及びトランスポート層８１０は、図５に示すリンク層５００及びトランスポート層５１０に相当し、リンク層８０１及びトランスポート層８１１は、図５に示すリンク層５０１及びトランスポート層５１１に相当する。アプリケーション層８２０は、図５に示すアプリケーション層５２０に相当する。
【００７９】
本変形例の第１の特徴は、リンク層８００及びトランスポート層８１０において、前記クロック信号ＣＬＫ＿Ｂに代えてクロック信号（第２のクロック信号）ＣＬＫ＿Ｂ０が用いられる点にある。本変形例の第２の特徴は、リンク層８０１及びトランスポート層８１１において、クロック信号ＣＬＫ＿Ｂに代えてクロック信号（第４のクロック信号）ＣＬＫ＿Ｂ１が用いられる点にある。本変形例の第３の特徴は、アプリケーション層８２０において、クロック信号ＣＬＫ＿Ｂに代えてクロック信号ＣＬＫ＿Ｂ２が用いられる点にある。本変形例の第４の特徴は、クロック信号ＣＬＫ＿Ｂ０，ＣＬＫ＿Ｂ１及びＣＬＫ＿Ｂ２が、前記クロック信号ＣＬＫ＿Ｂと同一周波数で且つ同一位相であり、それぞれ独立にディセーブル可能な点にある。
【００８０】
このように、クロック信号ＣＬＫ＿Ｂ０，ＣＬＫ＿Ｂ１及びＣＬＫ＿Ｂ２は、前記クロック信号ＣＬＫ＿Ｂと同一周波数で且つ同一位相である。このため、クロック信号ＣＬＫ＿Ｂ０，ＣＬＫ＿Ｂ１及びＣＬＫ＿Ｂ２に基づく動作は、クロック信号ＣＬＫ＿Ｂに基づく上記実施形態の動作と同様である。
【００８１】
本変形例が上記実施形態と相違する点は、クロック信号ＣＬＫ＿Ｂ０，ＣＬＫ＿Ｂ１及びＣＬＫ＿Ｂ２が独立にディセーブル可能であることから、例えば、リンク層８００（Ｌｉｎｋ０）が使用されていない状態において、クロック信号ＣＬＫ＿Ａ０だけでなく、クロック信号ＣＬＫ＿Ｂ０を選択的にディセーブル（停止）することができることにある。これにより、他の使用状態にあるリンク層８０１（Ｌｉｎｋ１）及びトランスポート層８１１（Ｔｒｓ１）等に影響を及ぼすことなく、マルチポートインタフェース回路（を含むデバイス）全体の消費電力を低減できる。本実施形態において、リンク層８００（Ｌｉｎｋ０）が使用されていない状態とは、例えば、Ｌｉｎｋ０側がホストＨ０と接続されていない状態、或いは、接続されていても、Ｌｉｎｋ０側がパワーセーブモードに設定されている状態である。
【００８２】
図９は、本変形例で適用される、図８に示されるクロック信号ＣＬＫ＿Ｂ０，ＣＬＫ＿Ｂ１及びＣＬＫ＿Ｂ２を独立に生成するためのクロック生成器の構成を示すブロック図である。図９に示すように、クロック生成器９００は、セレクタ９１０及びプログラマブル分周器９２０と、ＡＮＤ９３０，９３１及び９３２とから構成される。
【００８３】
セレクタ９１０は、例えば２つのソースクロック信号ＳＣＬＫ０及びＳＣＬＫ１のいずれか一方を、ソース選択信号ＳＳＥＬに応じてソースクロック信号ＳＣＬＫとして選択する。プログラマブル分周器９２０は、セレクタ９１０によって選択されたソースクロック信号ＳＣＬＫを分周することにより、上記実施形態で適用されたようなクロック信号ＣＬＫ＿Ｂを生成する。上記実施形態では、このクロック信号ＣＬＫ＿Ｂ、即ちプログラマブル分周器９２０から出力されたクロック信号ＣＬＫ＿Ｂを、図５に示すように、リンク層５００及び５０１と、トランスポート層５１０及び５１１と、アプリケーション層５２０とで、共通に使用すればよい。
【００８４】
これに対して本変形例では、プログラマブル分周器９２０から出力されたクロック信号ＣＬＫ＿Ｂは、ＡＮＤ９３０，９３１及び９３２にそれぞれ入力される。ＡＮＤ９３０，９３１及び９３２は、クロック信号ＣＬＫ＿Ｂを、それぞれ有効なクロック信号ＣＬＫ＿Ｂ０，ＣＬＫ＿Ｂ１及びＣＬＫ＿Ｂ２として出力するかを、ディセーブル信号ＤＩＳ＿０，ＤＩＳ＿０及びＤＩＳ＿２に応じて互いに独立して決定する。これにより本変形例においては、クロック信号ＣＬＫ＿Ｂと同一周波数で且つ同一位相のクロック信号ＣＬＫ＿Ｂ０，ＣＬＫ＿Ｂ１及びＣＬＫ＿Ｂ２を、それぞれ独立して停止させることができる。
【００８５】
上記実施形態及びその変形例においては、第１のクロック信号に同期したデータを当該第１のクロック信号とは異なる周波数の第２のクロック信号に同期化させるデータ同期化回路において、第２のクロック信号の許容される周波数範囲を広げることができる。
【００８６】
なお、本発明は、上記実施形態またはその変形例そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態またはその変形例に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態またはその変形例に示される全構成要素から幾つかの構成要素を削除してもよい。
【符号の説明】
【００８７】
Ｈ０，Ｈ１…ホスト、ＳＹＮＣ０…データ同期化回路（第１のデータ同期化回路）、ＳＹＮＣ１…データ同期化回路（第２のデータ同期化回路）、ＢＬＡ０，ＢＬＡ１…ラッチタイミング生成回路、ＢＬＢ０…受信タイミング生成回路（第１の受信タイミング生成手段）、ＢＬＢ１…受信タイミング生成回路（第２の受信タイミング生成手段）、ＢＬＣ０…データホールド回路（第１のデータホールド手段）、ＢＬＣ１…データホールド回路（第２のデータホールド手段）、ＢＬＤ０，ＢＬＤ１…データホールド回路、ＢＬＥ０…更新タイミング調整回路（第１の更新タイミング調整手段）、ＢＬＥ１…更新タイミング調整回路（第２の更新タイミング調整手段）、１０…ストレージデバイス、１１…コントローラ、１１０…マルチポートインタフェース回路（通信インタフェース回路）、２３０＿０〜２３０＿２……ＤＦＦ（Ｄフリップフロップ、第１のフリップフロップ）、２３１＿０〜２３１＿２…ＤＦＦ（Ｄフリップフロップ、第２のフリップフロップ）、３１０＿０〜３１０＿２，３１１＿０〜３１１＿２…セレクタ、２４０，２４１…ＥＸＯＲ（排他的論理和ゲート、第１の論理ゲート）、２５０，２５１…ＡＮＤ（アンドゲート、第２の論理ゲート），５００，５０１，８００，８０１…リンク層、５１０，５１１，８１０，８１１…トランスポート層、５２０，８２０…アプリケーション層、６００…更新イネーブル信号生成器、９００…クロック生成器、９３０〜９３２…ＡＮＤ（アンドゲート、出力ゲート）。
【図１】
2011233152.tif 000003
【図２】
2011233152.tif 000004
【図３】
2011233152.tif 000005
【図４】
2011233152.tif 000006
【図５】
2011233152.tif 000007
【図６】
2011233152.tif 000008
【図７】
2011233152.tif 000009
【図８】
2011233152.tif 000010
【図９】
2011233152.tif 000011