(57)【要約】【課題】前段の処理回路が出力する並列信号を用いることなく、後段でその並列信号に発生する位相のずれをそれが基準信号の１周期以上のずれであっても正しく調整する。【解決手段】基準信号ＣＬＫＡで同期されるブロックでは、その出力段のフリップフロップ５１の入力部に、前段データ処理回路２１が出力する並列データである通常データと、調整データ生成部３１が生成する並列データである調整データとを切り替えるマルチプレクサ４１を設け、基準信号ＣＬＫＢで同期されるブロックでは、入力された調整データの位相を調整する第１位相調整部７１と、調整データの位相のずれの検出結果及び調整データとそこから取り出した受信データとの同一性の判定結果に基づいて位相の調整を制御する第２位相調整部８１と、この調整の結果に基づいて位相が調整された通常データを処理する後段データ処理回路９１とを設ける。【選択図】図１
2013175832.tif 000002
【特許請求の範囲】
【請求項１】
第１の基準信号に従って第１の画像処理を行う第１の画像処理回路の後段に設けられ、当該第１の画像処理回路が出力した並列信号である第１の画像処理信号を、当該第１の基準信号に従って伝達する第１の伝達回路と、
前記第１の基準信号から分離された第２の基準信号に従って第２の画像処理を行う第２の画像処理回路の前段に設けられ、前記第１の伝達回路が出力した前記第１の画像処理信号から当該第２の基準信号に従って取り出した並列信号である第２の画像処理信号を、当該第２の画像処理回路に伝達する第２の伝達回路と
を備え、
前記第１の伝達回路は、
前記第１の画像処理回路が出力する前記第１の画像処理信号に代えて、当該第１の画像処理信号の位相のずれを調整するための並列信号である調整信号を、前記第１の基準信号に従って前記第２の伝達回路に送信する送信回路
を備え、
前記第２の伝達回路は、
前記送信回路により送信される前記調整信号から前記第２の基準信号に従って前記第２の画像処理信号を安定して取り出せるように、当該調整信号の位相を調整する第１の調整回路と、
前記第１の調整回路による位相の調整後の信号から取り出される前記第２の画像処理信号と、前記送信回路により送信される前記調整信号とが整合するように、当該調整信号の位相を調整する第２の調整回路と
を備えたことを特徴とする画像処理装置。
【請求項２】
第１の基準信号に従って第１の処理を行う第１の処理回路の後段に設けられ、当該第１の処理回路が出力した並列信号である出力信号を、当該第１の基準信号に従って伝達する第１の伝達回路と、
前記第１の基準信号から分離された第２の基準信号に従って第２の処理を行う第２の処理回路の前段に設けられ、前記第１の伝達回路が出力した前記出力信号から当該第２の基準信号に従って取り出した並列信号である受信信号を、当該第２の処理回路に伝達する第２の伝達回路と
を備え、
前記第１の伝達回路は、
前記第１の処理回路が出力する前記出力信号に代えて、当該出力信号の位相のずれを調整するための並列信号である調整信号を、前記第１の基準信号に従って前記第２の伝達回路に送信する送信回路
を備え、
前記第２の伝達回路は、
前記送信回路により送信される前記調整信号から前記第２の基準信号に従って前記受信信号を安定して取り出せるように、当該調整信号の位相を調整する第１の調整回路と、
前記第１の調整回路による位相の調整後の信号から取り出される前記受信信号と、前記送信回路により送信される前記調整信号とが整合するように、当該調整信号の位相を調整する第２の調整回路と
を備えたことを特徴とする信号伝達回路。
【請求項３】
前記送信回路が前記第２の伝達回路に送信する並列信号を、前記出力信号と前記調整信号との間で切り替える切替回路を更に備えたことを特徴とする請求項２に記載の信号伝達回路。
【請求項４】
前記切替回路は、電源投入後又は再起動後に、前記送信回路が前記第２の伝達回路に送信する並列信号を前記調整信号に設定し、前記第２の調整回路による前記調整信号の位相の調整が完了すると、前記送信回路が前記第２の伝達回路に送信する並列信号を前記出力信号に切り替えることを特徴とする請求項３に記載の信号伝達回路。
【請求項５】
前記切替回路は、前記送信回路が前記第２の伝達回路に送信する並列信号を前記出力信号に切り替えると、当該出力信号に切り替えた旨の情報を出力し、又は、外部より読み出し可能な記憶装置に当該情報を記憶することを特徴とする請求項４に記載の信号伝達回路。
【請求項６】
前記第２の調整回路は、前記調整信号の位相の調整が完了すると、当該調整が完了した旨の情報を外部に出力し、又は、外部より読み出し可能な記憶装置に当該情報を記憶することを特徴とする請求項２乃至５の何れかに記載の信号伝達回路。
【請求項７】
前記第１の基準信号から分離された複数相の基準信号から特定の基準信号を前記第２の基準信号として選択する選択回路を更に備え、
前記第１の調整回路は、前記送信回路により送信される前記調整信号から、前記選択回路により選択された一の基準信号に従って前記受信信号を安定して取り出せるように、当該調整信号の位相の調整を試み、当該調整が成功しなければ、前記選択回路が前記複数相の基準信号から他の基準信号を選択するように制御し、前記送信回路により送信される前記調整信号から、当該他の基準信号に従って前記受信信号を安定して取り出せるように、当該調整信号の位相の調整を再度試みることを特徴とする請求項２乃至６の何れかに記載の信号伝達回路。
【請求項８】
前記第１の基準信号から分離された基準信号を指定された遅延量だけ遅延させた特定の基準信号を前記第２の基準信号として生成する生成回路を更に備え、
前記第１の調整回路は、前記送信回路により送信された前記調整信号から、一の遅延量が指定されることで前記生成回路により生成された一の基準信号に従って前記受信信号を安定して取り出せるように、当該調整信号の位相の調整を試み、当該調整が成功しなければ、他の遅延量を指定することで前記生成回路が他の基準信号を生成するように制御し、前記送信回路により送信された前記調整信号から、当該他の基準信号に従って前記受信信号を安定して取り出せるように、当該調整信号の位相の調整を再度試みることを特徴とする請求項２乃至６の何れかに記載の信号伝達回路。
【請求項９】
複数の回路部を含み、
前記複数の回路部のそれぞれは、
第１の基準信号に従って第１の処理を行う第１の処理回路と、
前記第１の基準信号から分離された第２の基準信号に従って第２の処理を行う第２の処理回路と、
前記第１の処理回路の後段に設けられ、当該第１の処理回路が出力した並列信号である出力信号を、前記第１の基準信号に従って伝達する第１の伝達回路と、
前記第２の処理回路の前段に設けられ、前記第１の伝達回路が出力した前記出力信号から前記第２の基準信号に従って取り出した並列信号である受信信号を、当該第２の処理回路に伝達する第２の伝達回路と
を備え、
前記第１の伝達回路は、
前記第１の処理回路が出力する前記出力信号に代えて、当該出力信号の位相のずれを調整するための並列信号である調整信号を、前記第１の基準信号に従って前記第２の伝達回路に送信する送信回路
を備え、
前記第２の伝達回路は、
前記送信回路により送信される前記調整信号から前記第２の基準信号に従って前記受信信号を安定して取り出せるように、当該調整信号の位相を調整する第１の調整回路と、
前記第１の調整回路による位相の調整後の信号から取り出される前記受信信号と、前記送信回路により送信される前記調整信号とが整合するように、当該調整信号の位相を調整する第２の調整回路と
を備えたことを特徴とする半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、信号伝達回路、半導体集積回路に関する。
【背景技術】
【０００２】
受信部が、受信データ信号Ｄａを順次遅延させて１又は２以上の遅延データ信号Ｄｂ，Ｄｃを形成すると共に、受信及び遅延データ信号Ｄａ〜Ｄｃと基準のクロック信号Ｃａ間、又は受信データ信号Ｄａと基準のクロック信号Ｃａ及びこれを順次遅延させて形成した１又は２以上の遅延クロック信号Ｃｂ，Ｃｃ間での位相を比較することにより、基準のクロック信号Ｃａに位相の近い受信又は遅延データ信号Ｄａ〜Ｄｃをそれぞれ選択する複数のスキューキャンセル部を備え、送信部からテスト用データを送信して各スキューキャンセル部における選択をロックするスキューキャンセル方式は知られている（例えば、特許文献１参照）。
第１の装置が、テストデータを発生させる第１のテストデータ発生回路を備え、第２の装置が、第１の装置からケーブルを介して伝送されたテストデータを受ける入力段のレジスタのクロック信号のタイミングを複数のタイミングから１つを選択できる位相調整手段と、第１のテストデータ発生回路と同一の第２のテストデータ発生回路を含み第１のテストデータ発生回路からのテストデータと第２のテストデータ発生回路の出力するテストデータを遅延させて比較しその比較結果を保持する第１のテスト制御手段とを備える信号伝送システムも知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−１１０５５０号公報
【特許文献２】特開平１１−１３６３１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、前段の処理回路が出力する並列信号を用いることなく、後段でその並列信号に発生する位相のずれをそれが基準信号の１周期以上のずれであっても正しく調整することにある。
【課題を解決するための手段】
【０００５】
請求項１に記載の発明は、第１の基準信号に従って第１の画像処理を行う第１の画像処理回路の後段に設けられ、当該第１の画像処理回路が出力した並列信号である第１の画像処理信号を、当該第１の基準信号に従って伝達する第１の伝達回路と、前記第１の基準信号から分離された第２の基準信号に従って第２の画像処理を行う第２の画像処理回路の前段に設けられ、前記第１の伝達回路が出力した前記第１の画像処理信号から当該第２の基準信号に従って取り出した並列信号である第２の画像処理信号を、当該第２の画像処理回路に伝達する第２の伝達回路とを備え、前記第１の伝達回路は、前記第１の画像処理回路が出力する前記第１の画像処理信号に代えて、当該第１の画像処理信号の位相のずれを調整するための並列信号である調整信号を、前記第１の基準信号に従って前記第２の伝達回路に送信する送信回路を備え、前記第２の伝達回路は、前記送信回路により送信される前記調整信号から前記第２の基準信号に従って前記第２の画像処理信号を安定して取り出せるように、当該調整信号の位相を調整する第１の調整回路と、前記第１の調整回路による位相の調整後の信号から取り出される前記第２の画像処理信号と、前記送信回路により送信される前記調整信号とが整合するように、当該調整信号の位相を調整する第２の調整回路とを備えたことを特徴とする画像処理装置である。
請求項２に記載の発明は、第１の基準信号に従って第１の処理を行う第１の処理回路の後段に設けられ、当該第１の処理回路が出力した並列信号である出力信号を、当該第１の基準信号に従って伝達する第１の伝達回路と、前記第１の基準信号から分離された第２の基準信号に従って第２の処理を行う第２の処理回路の前段に設けられ、前記第１の伝達回路が出力した前記出力信号から当該第２の基準信号に従って取り出した並列信号である受信信号を、当該第２の処理回路に伝達する第２の伝達回路とを備え、前記第１の伝達回路は、前記第１の処理回路が出力する前記出力信号に代えて、当該出力信号の位相のずれを調整するための並列信号である調整信号を、前記第１の基準信号に従って前記第２の伝達回路に送信する送信回路を備え、前記第２の伝達回路は、前記送信回路により送信される前記調整信号から前記第２の基準信号に従って前記受信信号を安定して取り出せるように、当該調整信号の位相を調整する第１の調整回路と、前記第１の調整回路による位相の調整後の信号から取り出される前記受信信号と、前記送信回路により送信される前記調整信号とが整合するように、当該調整信号の位相を調整する第２の調整回路とを備えたことを特徴とする信号伝達回路である。
請求項３に記載の発明は、前記送信回路が前記第２の伝達回路に送信する並列信号を、前記出力信号と前記調整信号との間で切り替える切替回路を更に備えたことを特徴とする請求項２に記載の信号伝達回路である。
請求項４に記載の発明は、前記切替回路は、電源投入後又は再起動後に、前記送信回路が前記第２の伝達回路に送信する並列信号を前記調整信号に設定し、前記第２の調整回路による前記調整信号の位相の調整が完了すると、前記送信回路が前記第２の伝達回路に送信する並列信号を前記出力信号に切り替えることを特徴とする請求項３に記載の信号伝達回路である。
請求項５に記載の発明は、前記切替回路は、前記送信回路が前記第２の伝達回路に送信する並列信号を前記出力信号に切り替えると、当該出力信号に切り替えた旨の情報を出力し、又は、外部より読み出し可能な記憶装置に当該情報を記憶することを特徴とする請求項４に記載の信号伝達回路である。
請求項６に記載の発明は、前記第２の調整回路は、前記調整信号の位相の調整が完了すると、当該調整が完了した旨の情報を外部に出力し、又は、外部より読み出し可能な記憶装置に当該情報を記憶することを特徴とする請求項２乃至５の何れかに記載の信号伝達回路である。
請求項７に記載の発明は、前記第１の基準信号から分離された複数相の基準信号から特定の基準信号を前記第２の基準信号として選択する選択回路を更に備え、前記第１の調整回路は、前記送信回路により送信される前記調整信号から、前記選択回路により選択された一の基準信号に従って前記受信信号を安定して取り出せるように、当該調整信号の位相の調整を試み、当該調整が成功しなければ、前記選択回路が前記複数相の基準信号から他の基準信号を選択するように制御し、前記送信回路により送信される前記調整信号から、当該他の基準信号に従って前記受信信号を安定して取り出せるように、当該調整信号の位相の調整を再度試みることを特徴とする請求項２乃至６の何れかに記載の信号伝達回路である。
請求項８に記載の発明は、前記第１の基準信号から分離された基準信号を指定された遅延量だけ遅延させた特定の基準信号を前記第２の基準信号として生成する生成回路を更に備え、前記第１の調整回路は、前記送信回路により送信された前記調整信号から、一の遅延量が指定されることで前記生成回路により生成された一の基準信号に従って前記受信信号を安定して取り出せるように、当該調整信号の位相の調整を試み、当該調整が成功しなければ、他の遅延量を指定することで前記生成回路が他の基準信号を生成するように制御し、前記送信回路により送信された前記調整信号から、当該他の基準信号に従って前記受信信号を安定して取り出せるように、当該調整信号の位相の調整を再度試みることを特徴とする請求項２乃至６の何れかに記載の信号伝達回路である。
請求項９に記載の発明は、複数の回路部を含み、前記複数の回路部のそれぞれは、第１の基準信号に従って第１の処理を行う第１の処理回路と、前記第１の基準信号から分離された第２の基準信号に従って第２の処理を行う第２の処理回路と、前記第１の処理回路の後段に設けられ、当該第１の処理回路が出力した並列信号である出力信号を、前記第１の基準信号に従って伝達する第１の伝達回路と、前記第２の処理回路の前段に設けられ、前記第１の伝達回路が出力した前記出力信号から前記第２の基準信号に従って取り出した並列信号である受信信号を、当該第２の処理回路に伝達する第２の伝達回路とを備え、前記第１の伝達回路は、前記第１の処理回路が出力する前記出力信号に代えて、当該出力信号の位相のずれを調整するための並列信号である調整信号を、前記第１の基準信号に従って前記第２の伝達回路に送信する送信回路を備え、前記第２の伝達回路は、前記送信回路により送信される前記調整信号から前記第２の基準信号に従って前記受信信号を安定して取り出せるように、当該調整信号の位相を調整する第１の調整回路と、前記第１の調整回路による位相の調整後の信号から取り出される前記受信信号と、前記送信回路により送信される前記調整信号とが整合するように、当該調整信号の位相を調整する第２の調整回路とを備えたことを特徴とする半導体集積回路である。
【発明の効果】
【０００６】
請求項１の発明によれば、前段の処理回路が出力する並列信号を用いることなく、後段でその並列信号に発生する位相のずれを、それが基準信号の１周期以上のずれであっても、本構成を有していない場合に比較して正しく調整することができる。
請求項２の発明によれば、前段の処理回路が出力する並列信号を用いることなく、後段でその並列信号に発生する位相のずれを、それが基準信号の１周期以上のずれであっても、本構成を有していない場合に比較して正しく調整することができる。
請求項３の発明によれば、本構成を有していない場合に比較して、前段の処理回路が出力する並列信号が伝達される経路に調整信号を通して位相のずれを正しく調整することができる。
請求項４の発明によれば、調整信号の位相の調整が完了すると、これに続けて、前段の処理回路が出力する並列信号を後段に送信することができる。
請求項５の発明によれば、前段の処理回路が出力する並列信号を後段に送信できるようになったことを外部に知らせることができる。
請求項６の発明によれば、調整信号の位相の調整が完了すると、調整が完了したことを外部に知らせることができる。
請求項７の発明によれば、本構成を有していない場合に比較して、前段の処理回路が出力する並列信号に後段で発生する位相のずれを、小さな位相のずれまで高精度に調整することができる。
請求項８の発明によれば、前段の処理回路が出力する並列信号に後段で発生する位相のずれを、小さな位相のずれまで高精度に調整することができる。
請求項９の発明によれば、前段の処理回路が出力する並列信号を用いることなく、後段でその並列信号に発生する位相のずれを、それが基準信号の１周期以上のずれであっても、本構成を有していない場合に比較して正しく調整することができる。
【図面の簡単な説明】
【０００７】
【図１】第１の実施の形態におけるデータ処理回路の構成例を示したブロック図である。
【図２】第１位相調整部内部の構成例を示したブロック図である。
【図３】第１の実施の形態における第１位相調整部での位相調整の具体例を示した図である。
【図４】第２位相調整部内部の構成例を示したブロック図である。
【図５】調整データの例を示した図である。
【図６】位相検出部における位相検出の具体例を示した図である。
【図７】位相検出部における位相検出の具体例を示した図である。
【図８】位相判定部の動作例を示したフローチャートである。
【図９−１】並列データ判定部の動作例を示したフローチャートである。
【図９−２】並列データ判定部の動作例を示したフローチャートである。
【図１０】第２の実施の形態におけるデータ処理回路の構成例を示したブロック図である。
【図１１】第２の実施の形態における第１位相調整部での位相調整の具体例を示した図である。
【図１２】第２の実施の形態における第１位相調整部での位相調整の具体例を示した図である。
【図１３】第３の実施の形態におけるデータ処理回路の構成例を示したブロック図である。
【図１４】基準信号遅延調整部内部の構成例を示したブロック図である。
【図１５】第３の実施の形態における第１位相調整部での位相調整の具体例を示した図である。
【図１６】第３の実施の形態における第１位相調整部での位相調整の具体例を示した図である。
【発明を実施するための形態】
【０００８】
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
［本発明の実施の形態の概要］
例えばプリンタ装置による印刷を高速に行う場合、印刷データを処理する速度も高くする必要があるので、データを処理する回路を高速化する必要がある。このような場合、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）等により回路を構成することになるが、回路の基準信号の周波数が高くなると、データを処理する回路が同一の基準信号内で動作できなくなることがある。
このように基準信号の周波数が高くなる場合、一般的には、半導体集積回路内の回路の配置、データ信号及び基準信号の配線のルート等を調整することにより、基準信号とデータ信号との関係が正しい状態でデータ信号を伝達できる配置、配線のルート等を決定する。しかしながら、周波数の高い基準信号で動作する回路の規模が大きくなると、基準信号及びデータ信号のトータルの遅延等により、後段回路のデータのセットアップ時間又はホールド時間を満足できず、基準信号内で正しくデータを伝達できなかった。
【０００９】
そこで、本実施の形態では、半導体集積回路の内部の回路を複数のブロックに分割し、基準信号をブロック毎に分割することで、ブロック内の基準信号のスキューを小さく抑えるようにした。また、後段のブロックが受信する並列データが、前段のブロックが出力する調整用の並列データと同じになるように、基準信号及びデータ信号の遅延やスキューを調整することで、高速の基準信号で動作できる回路規模を大きくできるようにした。
以下、具体的な手法を、第１乃至第３の実施の形態として説明する。
【００１０】
［第１の実施の形態］
第１の実施の形態では、半導体集積回路の内部の回路を複数のブロックに分け、ブロック内を同一の基準信号で同期させる。そして、複数のブロックのうち、前段のブロックと後段のブロックとを接続するデータの接続部において、前段のブロックの出力段のフリップフロップの入力部に、前段のデータ処理の結果である通常の並列データ（以下、「通常データ」という）と、調整用の並列データ（以下、「調整データ」という）とを切り替える手段を設ける。また、後段のブロックには、前段のブロックから入力された並列データ（以下、「入力データ」という）の基準信号に対する位相のずれを検出し、検出の結果に応じて入力データの位相を調整する手段を設ける。更に、後段のブロックには、後段のデータ処理で受信する並列データ（以下、「受信データ」という）が、前段のブロックが出力する調整データと同じになるように調整する手段も設ける。
【００１１】
図１は、第１の実施の形態におけるデータ処理回路の構成例を示したブロック図である。
図示するように、このデータ処理回路は、遅延回路１１で遅延された第１の基準信号の一例としての基準信号ＣＬＫＡで同期された前段のブロックの構成要素として、前段データ処理回路２１と、調整データ生成部３１と、マルチプレクサ（ＭＵＸ）４１と、フリップフロップ（ＦＦ）５１とを含む。また、基準信号ＣＬＫＡから遅延回路６１で分離された第２の基準信号の一例としての基準信号ＣＬＫＢで同期された後段のブロックの構成要素として、第１位相調整部７１と、第２位相調整部８１と、後段データ処理回路９１とを含む。
【００１２】
前段データ処理回路２１は、前段のデータ処理を行い、そのデータ処理の結果である通常データ（ＤＡＴＡ）をＭＵＸ４１に出力する回路である。本実施の形態では、第１の処理回路の一例として、前段データ処理回路２１を設けている。
【００１３】
調整データ生成部３１は、例えばリセット信号が入力されると、前段のブロックから後段のブロックへ送られる通常データの位相を調整するための調整データ（ＴＤ）を生成し、これをＭＵＸ４１に出力する。また、調整データの位相の調整が完了したことを示す調整完了信号が第２位相調整部８１から入力されると、調整データ切替信号をＭＵＸ４１に出力する。
【００１４】
ＭＵＸ４１は、調整データ切替信号が調整データ生成部３１から入力されると、ＦＦ５１に出力する並列データを、調整データ生成部３１が出力した調整データから前段データ処理回路２１が出力した通常データへと切り替える。即ち、ＭＵＸ４１は、冒頭に述べた「切り替える手段」に相当する。例えば、電源投入後又は再起動（リセット）後に、ＦＦ５１が出力する並列データを調整データに設定し、調整データ生成部３１から調整データ切替信号を受けると、ＦＦ５１が出力する並列データを通常データに切り替えるようにするとよい。また、このとき、ＦＦ５１が出力する並列データを通常データに切り替えた旨の情報を、外部に出力したり、外部から読み出し可能な記憶装置（レジスタ等）に記憶したりしてもよい。ここで、外部とは、データ処理回路の外部でも、データ処理回路を含む装置の外部でもよい。本実施の形態では、調整信号の一例として、調整データを用いており、出力信号の一例として、通常データを用いている。また、切替回路の一例として、ＭＵＸ４１を設けている。
【００１５】
ＦＦ５１は、ＭＵＸ４１が出力した通常データ又は調整データを、基準信号ＣＬＫＡに基づくタイミングで後段のブロックに出力する。即ち、ＦＦ５１は、冒頭に述べた「前段のブロックの出力段のフリップフロップ」に相当する。本実施の形態では、送信回路の一例として、ＦＦ５１を設けている。
【００１６】
第１位相調整部７１は、ＦＦ５１からの入力データの位相を選択信号ＡＢＣに基づいて調整する。
【００１７】
第２位相調整部８１は、ＦＦ５１からの入力データの位相をその入力データから基準信号ＣＬＫＢに基づくタイミングで受信データを安定して取り出せるように調整するための選択信号ＡＢＣを第１位相調整部７１に出力する。また、このように位相が調整された入力データから基準信号ＣＬＫＢに基づくタイミングで取り出された受信データが、ＦＦ５１が出力した調整データと同じになるように、ＦＦ５１からの入力データの位相を再度調整する。即ち、第２位相調整部８１は、冒頭に述べた「位相を調整する手段」及び「調整データと同じになるように調整する手段」に相当する。そして、第２位相調整部８１は、位相の調整が完了すると、その旨を示す調整完了信号を調整データ生成部３１に出力する。或いは、調整完了信号は、外部に出力したり、外部から読み出し可能な記憶装置（レジスタ等）に記憶したりしてもよい。ここで、外部とは、データ処理回路の外部でも、データ処理回路を含む装置の外部でもよい。尚、第２位相調整部８１は、ＦＦ５１からの入力データが調整データである場合に求めた選択信号ＡＢＣを記憶しておき、調整データを通常データへと切り替えた後に、第１位相調整部７１にこの選択信号ＡＢＣを出力し、入力データから取り出した受信データを後段データ処理回路９１に供給するものとする。
【００１８】
後段データ処理回路９１は、受信データを用いて後段のデータ処理を行う回路である。本実施の形態では、受信信号の一例として、受信データを用いている。また、第２の処理回路の一例として、後段データ処理回路９１を設けている。
【００１９】
次に、第１位相調整部７１及び第２位相調整部８１内部の構成について更に詳細に説明する。尚、以下の説明で、通常データ、調整データ、入力データ、受信データは全て３２ビットの並列データであるものとする。
図２は、第１位相調整部７１内部の構成例を示したブロック図である。
本実施の形態では、３２ビットの並列データを扱うので、図示するように、第１位相調整部７１は、ビット位相調整部７４０，７４１，…，７４３１を含む。
【００２０】
ビット位相調整部７４０は、遅延回路７５１０，７５２０，…，７５８０と、セレクタ７６０とを含む。
遅延回路７５１０は、ＦＦ５１からの入力データの第０ビットＤＩＮ０を遅延させてＤＩＮ０＿１とし、遅延回路７５２０は、遅延回路７５１０で遅延されたＤＩＮ０＿１を更に遅延させてＤＩＮ０＿２とする。以下、同じく遅延させていき、遅延回路７５８０は、遅延回路７５７０で遅延されたＤＩＮ０＿７を更に遅延させてＤＩＮ０＿８とする。即ち、遅延回路７５１０，７５２０，…，７５８０は、ＤＩＮ０を順次遅延させることにより、それぞれ、ＤＩＮ０＿１，ＤＩＮ０＿２，…，ＤＩＮ０＿８を出力する。
セレクタ７６０は、遅延回路７５１０，７５２０，…，７５８０がそれぞれ出力したＤＩＮ０＿１，ＤＩＮ０＿２，…，ＤＩＮ０＿８から、選択信号ＡＢＣの第０ビットに対応するＡ０，Ｂ０，Ｃ０に基づいて１つのデータを選択し、これを位相調整後のデータＤ０として出力する。尚、Ａ０，Ｂ０，Ｃ０に基づくデータの選択方法としては、Ａ０を２進数の右から１桁目のビットとし、Ｂ０を２進数の右から２桁目のビットとし、Ｃ０を２進数の右から３桁目のビットとしたときの２進数の値がＮである場合に、ＤＩＮ０＿（Ｎ＋１）を選択する、という方法を採用するものとする。
【００２１】
ビット位相調整部７４１、…、７４３１は、何れも、ビット位相調整部７４０と同じ構成であるので、説明は省略する。
【００２２】
図３は、第１位相調整部７１におけるデータの位相調整の具体例を示した図である。
図示するように、ＤＩＮ０＿１，ＤＩＮ０＿２，ＤＩＮ０＿７，ＤＩＮ０＿８は、基準信号ＣＬＫＢのセットアップ時間Ｔｓ又はホールド時間Ｔｈに値が変化しているので、これらのデータからは安定してデータを取り出せない。一方、ＤＩＮ０＿３，ＤＩＮ０＿４，ＤＩＮ０＿５，ＤＩＮ０＿６は、基準信号ＣＬＫＢのセットアップ時間Ｔｓ又はホールド時間Ｔｈに時間に値が変化していないので、これらのデータからは安定してデータを取り出せる。
従って、例えば、Ａ０，Ｂ０，Ｃ０をそれぞれ“１”、“１”、“０”とし、図に矢印で示すように、ＤＩＮ０＿４をＤ０として選択すれば、Ｄ０から安定してデータが取り出せるようになる。
【００２３】
図４は、第２位相調整部８１内部の構成例を示したブロック図である。
本実施の形態では、３２ビットの並列データを扱うので、図示するように、第２位相調整部８１は、位相検出部８４０，８４１，…，８４３１を含む。また、第２位相調整部８１は、並列データ判定部８９を含む。
【００２４】
位相検出部８４０は、フリップフロップ（ＦＦ）８４１０と、排他的論理和回路（ＥＯＲ）８４２０と、インバータ８４３０と、パターン検出部８５０と、カウンタ８６０と、位相判定部８７０と、タイマ８８０とを含む。
【００２５】
ＦＦ８４１０は、ビット位相調整部７４０により位相が調整されたデータであるＤ０を、基準信号ＣＬＫＢに基づくタイミングでデータＤＬＤ０として出力する。
ＥＯＲ８４２０は、データＤ０とデータＤＬＤ０の排他的論理和をカウンタ８６０におけるＵＰ端子に出力し、データＤ０とデータＤＬＤ０の排他的論理和をインバータ８４３０で逆変換したデータをカウンタ８６０におけるＤＯＷＮ端子に出力する。即ち、Ｄ０とＤＬＤ０が異なれば、ＵＰ端子に“１”を出力し、ＤＯＷＮ端子に“０”を出力する。一方、Ｄ０とＤＬＤ０が同じであれば、ＵＰ端子に“０”を出力し、ＤＯＷＮ端子に“１”を出力する。
【００２６】
パターン検出部８５０は、データＤＬＤ０から予め決められたパターンを検出し、検出した場合に、“１”をカウンタ８６０におけるＥＮ端子及びタイマ８８０に出力する。
カウンタ８６０は、ＥＮ端子に“１”が入力されている間に、ＵＰ端子に“１”が入力されると“１”を加算し、ＤＯＷＮ端子に“１”が入力されると“１”を減算し、その結果であるカウンタ値を位相判定部８７０に出力する。
位相判定部８７０は、パターン検出部８５０から“１”が入力されると、タイマ８８０をスタートさせ、タイマ値が予め定められた値に達したときにカウンタ８６０が出力したカウンタ値が予め定めた値に達したかどうかを判定する。そして、カウンタ値が予め定めた値に達していれば、並列データ判定部８９に位相確定信号Ｄ０ＰＯＫ（“１”が設定されている）を出力し、カウンタ値が予め定めた値に達していなければ、選択信号Ａ０，Ｂ０，Ｃ０を変更してビット位相調整部７４０に出力する。また、位相判定部８７０は、並列データ判定部８９から位相確定信号Ｄ０ＰＯＫをクリアする信号を受信することもあり、この場合は、再度同じ動作を実行する。
【００２７】
位相検出部８４１、…、８４３１は、何れも、位相検出部８４０と同じ構成であるので、説明は省略する。
尚、位相検出部８４０、８４１，…、８４３１は、前述したビット位相調整部７４０，７４１，…，７４３１と合わせて、第１の調整回路の一例として機能する。
【００２８】
並列データ判定部８９は、位相判定部８７１、…、８７３１から位相確定信号Ｄ０ＰＯＫ，…，Ｄ３１ＰＯＫを受信すると、ＦＦ８４１０，…，８４１３１から受信したＤＬＤ０，…，ＤＬＤ３１が調整データと同じであるかどうかを判定する。そして、ＤＬＤ０，…，ＤＬＤ３１が調整データと同じであれば、並列データの位相の調整が完了したことを示す調整完了信号を調整データ生成部３１に出力し、ＤＬＤ０，…，ＤＬＤ３１が調整データと同じでなければ、調整データと異なるビット（例えば第Ｎビットとする）について、位相確定信号ＤＮＰＯＫをクリアする信号を位相判定部８７Ｎに出力する。
尚、並列データ判定部８９は、前述したビット位相調整部７４０，７４１，…，７４３１及び位相検出部８４０、８４１，…、８４３１と合わせて、第２の調整回路の一例として機能する。
【００２９】
図５〜図７は、位相検出部８４０における位相検出の具体例を示した図である。
まず、この具体例の前提となる調整データの例について説明する。
図５は、調整データの例を示す。
図示するように、調整データは、基準信号ＣＬＫＡに基づくタイミングで前段からＤＩＮ０，…，ＤＩＮ３１として送信される。また、図において、調整データは、１ビット目が“FFFFFFFF”であり、２、３ビット目が“00000000”であり、４、６、８、１０ビット目が“5A5A5A5A”であり、５、７、９、１１ビット目が“A5A5A5A5”であるものとして示されている。ここで、この記述は、調整データが次のような並びのデータであることを意味している。
【００３０】
即ち、１ビット目は、ＤＩＮ０，…，ＤＩＮ３１の全てにおいて“１”である。
２ビット目は、ＤＩＮ０，…，ＤＩＮ３１の全てにおいて“０”である。
３ビット目も、ＤＩＮ０，…，ＤＩＮ３１の全てにおいて“０”である。
４ビット目は、ＤＩＮ０，…，ＤＩＮ３１の順に、“０”、“１”、“０”、“１”、“１”、“０”、“１”、“０”、…、“０”、“１”、“０”、“１”、“１”、“０”、“１”、“０”である。
５ビット目は、ＤＩＮ０，…，ＤＩＮ３１の順に、“１”、“０”、“１”、“０”、“０”、“１”、“０”、“１”、…、“１”、“０”、“１”、“０”、“０”、“１”、“０”、“１”である。
６ビット目は、ＤＩＮ０，…，ＤＩＮ３１の順に、“０”、“１”、“０”、“１”、“１”、“０”、“１”、“０”、…、“０”、“１”、“０”、“１”、“１”、“０”、“１”、“０”である。
７ビット目は、ＤＩＮ０，…，ＤＩＮ３１の順に、“１”、“０”、“１”、“０”、“０”、“１”、“０”、“１”、…、“１”、“０”、“１”、“０”、“０”、“１”、“０”、“１”である。
８ビット目は、ＤＩＮ０，…，ＤＩＮ３１の順に、“０”、“１”、“０”、“１”、“１”、“０”、“１”、“０”、…、“０”、“１”、“０”、“１”、“１”、“０”、“１”、“０”である。
９ビット目は、ＤＩＮ０，…，ＤＩＮ３１の順に、“１”、“０”、“１”、“０”、“０”、“１”、“０”、“１”、…、“１”、“０”、“１”、“０”、“０”、“１”、“０”、“１”である。
１０ビット目は、ＤＩＮ０，…，ＤＩＮ３１の順に、“０”、“１”、“０”、“１”、“１”、“０”、“１”、“０”、…、“０”、“１”、“０”、“１”、“１”、“０”、“１”、“０”である。
１１ビット目は、ＤＩＮ０，…，ＤＩＮ３１の順に、“１”、“０”、“１”、“０”、“０”、“１”、“０”、“１”、…、“１”、“０”、“１”、“０”、“０”、“１”、“０”、“１”である。
【００３１】
従って、例えば、ＤＩＮ０は、“１”、“０”、“０”、“０”、“１”、“０”、“１”、“０”、“１”、“０”、“１”である。
【００３２】
図６は、位相検出部８４０で位相が確定できない場合の例を示す。尚、この図では、パターン検出部８５０がＤＬＤ０から“１”、“０”、“０”を検出して２周期後に、カウンタ８６０のＥＮ端子への入力が“１”となり、タイマ８８０が計時を開始するものとしている。また、図中、斜線ハッチングは、値が不定であることを表している。
この例では、Ｃ０〜Ａ０の行に示すように、位相判定部８７０が選択信号Ａ０，Ｂ０，Ｃ０として、“０”、“０”、“０”をビット位相調整部７４０に出力している。
すると、ビット位相調整部７４０では、セレクタ７６０が、ＤＩＮ０を少しだけ遅延させたＤＩＮ０＿１を選択するので、Ｄ０は、Ｄ０の行に示すようなものとなる。具体的には、周期Ｐ２，Ｐ３，…，Ｐ１２のそれぞれの開始点から“１”、“０”、“０”、“０”、“１”、“０”、“１”、“０”、“１”、“０”、“１”というように調整データが送られてくる。
【００３３】
即ち、この例では、基準信号ＣＬＫＢのセットアップ時間又はホールド時間にＤ０の値が変化している。従って、ＤＬＤ０の行に示すように、基準信号ＣＬＫＢに基づくタイミングでＤ０からデータを取り出そうとしても、周期Ｐ２の“１”、周期Ｐ４の“０”、周期Ｐ５の“０”しか安定して取り出せず、それ以外の周期では論理不定となっている。
このように、ＤＬＤ０は周期Ｐ３で論理不定なので、ＣＯＵＮＴ＿ＥＮの行に示すように、カウンタ８６０のＥＮ端子への入力は、周期Ｐ７で論理不定となる。
また、ＤＬＤ０は周期Ｐ２、Ｐ４、Ｐ５以外で論理不定なので、ＵＰの行に示すように、カウンタ８６０のＵＰ端子への入力も、周期Ｐ２、Ｐ４、Ｐ５以外で論理不定となる。
【００３４】
更に、カウンタ８６０のＥＮ端子への入力が“１”であることが確定する周期Ｐ８以降の周期で、カウンタ８６０のＵＰ端子への入力が論理不定となるので、カウンタ値も不定となる。
更にまた、カウンタ８６０のＥＮ端子への入力が周期Ｐ７で論理不定なので、タイマ値（位相安定の判定期間タイマ値）の計時開始時期も不定である。但し、説明の便宜上、タイマ値が周期Ｐ９から増加を開始した場合について示している。ここで、本実施の形態は、位相検出部８４０が、例えばカウンタ値がタイマ値と同じように増加している場合に、安定してデータを取り出せる位相であると判定するものである。しかしながら、この例では、カウンタ値が不定なので、位相検出部８４０は、安定してデータを取り出せる位相であるとは判定しない。
【００３５】
これに対し、図７は、位相検出部８４０で位相が確定できる場合の例を示す。
この例では、Ｃ０〜Ａ０の行に示すように、位相判定部８７０が選択信号Ａ０，Ｂ０，Ｃ０として、“１”、“１”、“０”をビット位相調整部７４０に出力している。
すると、ビット位相調整部７４０では、セレクタ７６０が、ＤＩＮ０をＤＩＮ０＿１よりも大きく遅延させたＤＩＮ０＿４を選択するので、Ｄ０は、Ｄ０の行に示すようなものとなる。具体的には、周期Ｐ２，Ｐ３，…，Ｐ１２のそれぞれの途中から、“１”、“０”、“０”、“０”、“１”、“０”、“１”、“０”、“１”、“０”、“１” というように調整データが送られてくる。
【００３６】
即ち、この例では、基準信号ＣＬＫＢのセットアップ時間又はホールド時間にＤ０の値は変化していない。従って、ＤＬＤ０の行に示すように、基準信号ＣＬＫＢに基づくタイミングでＤ０から全ての周期のデータを安定して取り出せる。
そのため、ＣＯＵＮＴ＿ＥＮの行に示すように、カウンタ８６０のＥＮ端子への入力は、周期Ｐ８で“１”となっている。
また、ＵＰの行に示すように、カウンタ８６０のＵＰ端子への入力は、全ての周期において、Ｄ０とＤＬＤ０が異なるときは“１”となり、Ｄ０とＤＬＤ０が同じときは“０”となる。
【００３７】
更に、カウンタ８６０のＥＮ端子への入力が“１”となる周期Ｐ８以降の周期で、カウンタ８６０のＵＰ端子への入力が“１”になると、カウンタ値は増加している。
更にまた、カウンタ８６０のＥＮ端子への入力が“１”となる周期Ｐ８を起点として“０”からタイマ値（位相安定の判定期間タイマ値）は計時を開始している。ここで、本実施の形態は、既述の通り、位相検出部８４０が、例えばカウンタ値がタイマ値と同じように増加している場合に、安定してデータを取り出せる位相であると判定するものである。この例では、その期待通り、カウンタ値がタイマ値と同じように増加しているので、位相検出部８４０は、安定してデータを取り出せる位相であると判定する。
【００３８】
次に、第１の実施の形態における位相判定部８７及び並列データ判定部８９の動作について説明する。ここで、位相判定部８７とは、位相判定部８７０，８７１，…，８７３１が全て同じ動作を行うことから、これらを代表するものとして、添え字を付けずに表したものである。また、以下では、ビット位相調整部７４、及び、位相検出部８４とその構成要素についても、添え字を付けずに表す。更に、「＊＊」は、０，１，…，３１の何れかを意味するものとする。
【００３９】
図８は、位相判定部８７の動作例を示したフローチャートである。
図示するように、位相判定部８７は、まず、選択信号ＡＢＣに“０００”を設定する（ステップ８０１）。つまり、Ａ＊＊を“０”とし、Ｂ＊＊を“０”とし、Ｃ＊＊を“０”とし、選択信号として、Ａ＊＊，Ｂ＊＊，Ｃ＊＊をビット位相調整部７４に出力する。
次に、位相判定部８７は、位相確定信号Ｄ＊＊ＰＯＫが“１”であるかどうかを判定し（ステップ８０２）、位相確定信号Ｄ＊＊ＰＯＫが“１”であれば、ステップ８０２を繰り返す。尚、このステップについては、図９−２に関して再度説明する。
【００４０】
一方、位相確定信号Ｄ＊＊ＰＯＫが“１”でなければ、位相判定部８７は、パターン検出部８５が出力する信号ＣＯＵＮＴ＿ＥＮが“１”であるかどうかを判定する（ステップ８０３）。つまり、位相判定部８７は、調整データの予め決められたパターンがパターン検出部８５によって検出されたかどうかを判定する。そして、信号ＣＯＵＮＴ＿ＥＮが“１”でなければ、ステップ８０３を繰り返す。
【００４１】
また、信号ＣＯＵＮＴ＿ＥＮが“１”であれば、位相判定部８７は、位相安定の判定期間を計測するためのタイマ８８のタイマ値をクリアして、タイマ８８をスタートし（ステップ８０４）、タイマ値が予め定めた値Ｘ以上になっているかどうかを判定する（ステップ８０５）。そして、タイマ値がＸ以上になっていなければ、ステップ８０５を繰り返す。
【００４２】
また、タイマ値がＸ以上になっていれば、位相判定部８７は、位相安定性を検出するためのカウンタ８６のカウンタ値が予め定めた値Ｚ以上になっているかどうかを判定する（ステップ８０６）。ここで、Ｚは、Ｄ０の位相がデータを安定して取り出せるものとなっている場合に、タイマ値がＸに達していれば、カウンタ値がある値に達していることが期待される、という関係があるとすると、そのカウンタ値が達していることが期待される値である。カウンタ値がＺ以上になっていなければ、位相判定部８７は、選択信号ＡＢＣに“１”を加算して（ステップ８０７）、ステップ８０３へ進む。一方、カウンタ値がＺ以上になっていれば、位相判定部８７は、Ｄ＊＊ＰＯＫとして“１”を並列データ判定部８９に出力する（ステップ８０８）。
【００４３】
図９−１及び図９−２は、並列データ判定部８９の動作例を示したフローチャートである。
図９−１に示すように、並列データ判定部８９は、まず、位相判定部８７０，８７１，…，８７３１が出力した位相確定信号Ｄ０ＰＯＫ，Ｄ１ＰＯＫ，…，Ｄ３１ＰＯＫが全て“１”となったかどうかを判定する（ステップ８５１）。そして、位相確定信号Ｄ０ＰＯＫ，Ｄ１ＰＯＫ，…，Ｄ３１ＰＯＫが全て“１”となったのでなければ、ステップ８５１を繰り返す。
【００４４】
一方、位相確定信号Ｄ０ＰＯＫ，Ｄ１ＰＯＫ，…，Ｄ３１ＰＯＫが全て“１”となっていれば、並列データ判定部８９は、並列データの判定期間を計測するためのタイマのタイマ値をクリアして、タイマをスタートし（ステップ８５２）、タイマ値が予め定めた値Ｘ２以上になっているかどうかを判定する（ステップ８５３）。そして、タイマ値がＸ２以上になっていなければ、並列データ判定部８９は、ＦＦ８４１０，８４１１，…，８４１３１が出力したＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１が“ＦＦＦＦＦＦＦＦ”であるかどうかを判定する（ステップ８５４）。つまり、ＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１が全て“１”であるかどうかを判定する。
【００４５】
ここで、ＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１が“ＦＦＦＦＦＦＦＦ”でないと判定すると、並列データ判定部８９は、ステップ８５３へ進む。
一方、ＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１が“ＦＦＦＦＦＦＦＦ”であると判定すると、並列データ判定部８９は、ＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１が調整データのパターンの順序と同じであるかどうかを判定する（ステップ８５５）。つまり、“ＦＦＦＦＦＦＦＦ”に続けて、“００００００００”、“００００００００”、“５Ａ５Ａ５Ａ５Ａ”、“Ａ５Ａ５Ａ５Ａ５”、“５Ａ５Ａ５Ａ５Ａ”、“Ａ５Ａ５Ａ５Ａ５”、“５Ａ５Ａ５Ａ５Ａ”、“Ａ５Ａ５Ａ５Ａ５”、“５Ａ５Ａ５Ａ５Ａ”、“Ａ５Ａ５Ａ５Ａ５”の順にデータが出力されるかどうかを判定する。
【００４６】
その結果、ＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１が調整データのパターンの順序と同じであると判定すれば、並列データ判定部８９は、調整データ生成部３１に調整完了信号を出力する（ステップ８５６）。
【００４７】
ところで、ステップ８５４でＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１が“ＦＦＦＦＦＦＦＦ”であると判定される前にステップ８５３でタイマ値がＸ２以上になったと判定された場合、及び、ステップ８５５でＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１が調整データのパターンの順序と同じでないと判定された場合は、図９−２に示すような動作を行う。
即ち、まず、並列データ判定部８９は、ＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１として“００００００００”が出力され、その後のＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１の何れかのビットが“１”であるかどうかを判定する（ステップ８５７）。そして、“００００００００”の後のＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１の何れのビットも“１”でなければ、ステップ８５７を繰り返す。
【００４８】
一方、“００００００００”の後のＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１の何れかのビットが“１”であれば、並列データ判定部８９は、ＤＬＤ０，ＤＬＤ１，…，ＤＬＤ３１と“５Ａ５Ａ５Ａ５Ａ”とを比較して、異なるビットの位相確定信号Ｄ＊＊ＰＯＫをクリアする信号を、そのビットに対応する位相判定部８７に出力する（ステップ８５８）。
そして、位相確定信号Ｄ＊＊ＰＯＫをクリアする信号を受けた位相判定部８７では、再び図８を参照すると、ステップ８０２で位相確定信号Ｄ＊＊ＰＯＫが“１”でないと判定され、ステップ８０３以降の処理を再度行うことになる。
【００４９】
［第２の実施の形態］
第２の実施の形態では、半導体集積回路の内部の回路を複数のブロックに分け、ブロック内を同一の基準信号で同期させる。そして、複数のブロックのうち、前段のブロックと後段のブロックとを接続するデータの接続部において、前段のブロックの出力段のフリップフロップの入力部に、前段のデータ処理の結果である通常の並列データ（通常データ）と、調整用の並列データ（調整データ）とを切り替える手段を設ける。また、後段のブロックには、複数相の基準信号を発生させる手段を設け、前段のブロックから入力された並列データ（入力データ）の位相を調整する手段において、複数相の基準信号のうちの任意の基準信号に対する入力データの位相のずれを検出して入力データの位相を調整し、位相の調整範囲又は任意の範囲で正しい並列データを受信できない場合、複数相の基準信号のうちの他相の基準信号に切り替えて入力データの位相を調整する。更に、後段のブロックには、後段のデータ処理で受信する並列データ（受信データ）が、前段のブロックが出力する調整データと同じになるように調整する手段も設ける。
【００５０】
図１０は、第２の実施の形態におけるデータ処理回路の構成例を示したブロック図である。
図示するように、このデータ処理回路は、遅延回路１２で遅延された第１の基準信号の一例としての基準信号ＣＬＫＡで同期された前段のブロックの構成要素として、前段データ処理回路２２と、調整データ生成部３２と、マルチプレクサ（ＭＵＸ）４２と、フリップフロップ（ＦＦ）５２とを含む。また、基準信号ＣＬＫＡから分離された第２の基準信号の一例としての基準信号ＣＬＫＢで同期された後段のブロックの構成要素として、第１位相調整部７２と、第２位相調整部８２と、後段データ処理回路９２とを含む。ここで、第２の実施の形態が第１の実施の形態と大きく違うのは、基準信号ＣＬＫＡから遅延回路６１２で分離された基準信号ＣＬＫＢ１、及び、基準信号ＣＬＫＡからインバータ６２２で分離された基準信号ＣＬＫＢ１とは逆相の基準信号ｘＣＬＫＢ１の中から、セレクタ６３２が、第２位相調整部８２からの選択信号ＳＥＬ＿ＣＬＫに基づいて選択することにより、基準信号ＣＬＫＢを発生させている点である。本実施の形態では、選択回路の一例として、セレクタ６３２を設けている。
【００５１】
前段データ処理回路２２、調整データ生成部３２、ＭＵＸ４２、ＦＦ５２は、それぞれ、前段データ処理回路２１、調整データ生成部３１、ＭＵＸ４１、ＦＦ５１と同じなので、ここでの説明は省略する。
第１位相調整部７２は、１つの基準信号のみに従って動作するのではなく、基準信号ＣＬＫＢ１又は基準信号ｘＣＬＫＢ１に従って動作する点で、第１位相調整部７１と異なるが、基本的な構成及び動作は第１位相調整部７１と同じである。
第２位相調整部８２も、１つの基準信号のみに従って動作するのではなく、基準信号ＣＬＫＢ１又は基準信号ｘＣＬＫＢ１に従って動作する点で、第２位相調整部８１と異なるが、基本的な構成及び動作は第２位相調整部８１と同じである。即ち、第２位相調整部８２も、位相検出部８４０，８４１，…，８４３１と、並列データ判定部８９とを含み、例えば、位相検出部８４０は、フリップフロップ（ＦＦ）８４１０と、排他的論理和回路（ＥＯＲ）８４２０と、インバータ８４３０と、パターン検出部８５０と、カウンタ８６０と、位相判定部８７０と、タイマ８８０とを含む。そして、第２位相調整部８２内の各構成要素の機能は、第２位相調整部８１内の各構成要素の構成と基本的に同じである。但し、第２位相調整部８２内の位相判定部８７０は、入力データの位相が確定できなかった場合にセレクタ６３２に選択信号ＳＥＬ＿ＣＬＫを出力する点でのみ、第２位相調整部８１内の位相判定部８７０と異なる。
【００５２】
図１１及び図１２は、第１位相調整部７２におけるデータの位相調整の具体例を示した図である。
このうち、図１１は、セレクタ６３２が基準信号ＣＬＫＢ１を基準信号ＣＬＫＢとして選択した場合の例を示す。尚、図中、斜線ハッチングは、値が不定であることを表している。
この例では、図示するように、ＤＩＮ０＿１，…，ＤＩＮ０＿８は、基準信号ＣＬＫＢのセットアップ時間Ｔｓ又はホールド時間Ｔｈに値が変化しているので、Ｄ０の行に示すように、これらのデータからは安定してデータを取り出せない。
【００５３】
これに対し、図１２は、セレクタ６３２が基準信号ｘＣＬＫＢ１を基準信号ＣＬＫＢとして選択した場合の例を示す。
この例では、図示するように、ＤＩＮ０＿１，…，ＤＩＮ０＿８は、基準信号ＣＬＫＢのセットアップ時間Ｔｓ又はホールド時間Ｔｈに値が変化していないので、これらのデータからは安定してデータを取り出せる。
従って、例えば、Ａ０，Ｂ０，Ｃ０をそれぞれ“０”、“０”、“１”とし、ＤＩＮ０＿５をＤ０として選択すれば、Ｄ０から安定してデータが取り出せるようになる。図には、第２位相調整部８２でＤ０から安定してデータを取り出した結果であるＤＬＤ０についても示している。
【００５４】
尚、第２の実施の形態でも、位相検出部８４０における位相検出は、図５〜図７に示したようにして行われるので、説明を省略する。
【００５５】
また、第２の実施の形態における位相判定部８７の動作は、第１の実施の形態における位相判定部８７の動作に若干の変更を加えたものに過ぎない。即ち、図８のステップ８０７で選択信号ＡＢＣに“１”を加算した際に選択信号ＡＢＣの上限を超えると、選択信号ＳＥＬ＿ＣＬＫをセレクタ６３２に出力する。そして、ステップ８０１以降の処理を再度行うようにする。
一方、第２の実施の形態における並列データ判定部８９の動作は、第１の実施の形態における並列データ判定部８９の動作と同じである。
【００５６】
［第３の実施の形態］
第３の実施の形態では、半導体集積回路の内部の回路を複数のブロックに分け、ブロック内を同一の基準信号で同期させる。そして、複数のブロックのうち、前段のブロックと後段のブロックとを接続するデータの接続部において、前段のブロックの出力段のフリップフロップの入力部に、前段のデータ処理の結果である通常の並列データ（通常データ）と、調整用の並列データ（調整データ）とを切り替える手段を設ける。また、後段のブロックには、基準信号の遅延を調整する手段を設け、前段のブロックから入力された並列データ（入力データ）の位相を調整する手段において、基準信号の遅延量を任意の値としたときの基準信号に対する入力データの位相のずれを検出して入力データの位相を調整し、位相の調整範囲又は任意の範囲で正しい並列データを受信できない場合、基準信号の遅延量を変更して、変更した基準信号に基づき入力データの位相を調整する。更に、後段のブロックには、後段のデータ処理で受信する並列データ（受信データ）が、前段のブロックが出力する調整データと同じになるように調整する手段も設ける。
【００５７】
図１３は、第３の実施の形態におけるデータ処理回路の構成例を示したブロック図である。
図示するように、このデータ処理回路は、遅延回路１３で遅延された第１の基準信号の一例としての基準信号ＣＬＫＡで同期された前段のブロックの構成要素として、前段データ処理回路２３と、調整データ生成部３３と、マルチプレクサ（ＭＵＸ）４３と、フリップフロップ（ＦＦ）５３とを含む。また、基準信号ＣＬＫＡから分離された第２の基準信号の一例としての基準信号ＣＬＫＢで同期された後段のブロックの構成要素として、第１位相調整部７３と、第２位相調整部８３と、後段データ処理回路９３とを含む。ここで、第３の実施の形態が第１の実施の形態と大きく違うのは、基準信号ＣＬＫＡから遅延回路６０３で分離された基準信号を、基準信号遅延調整部６３が、指定された遅延量だけ遅延させることにより、基準信号ＣＬＫＢを発生させている点である。本実施の形態では、生成回路の一例として、基準信号遅延調整部６３を設けている。
【００５８】
前段データ処理回路２３、調整データ生成部３３、ＭＵＸ４３、ＦＦ５３は、それぞれ、前段データ処理回路２１、調整データ生成部３１、ＭＵＸ４１、ＦＦ５１と同じなので、ここでの説明は省略する。
第１位相調整部７３は、１つの基準信号のみに従って動作するのではなく、基準信号遅延調整部６３が遅延量を調整した複数の基準信号の何れかに従って動作する点で、第１位相調整部７１と異なるが、基本的な構成及び動作は第１位相調整部７１と同じである。
第２位相調整部８３も、１つの基準信号のみに従って動作するのではなく、基準信号遅延調整部６３が遅延量を調整した複数の基準信号の何れかに従って動作する点で、第２位相調整部８１と異なるが、基本的な構成及び動作は第２位相調整部８１と同じである。即ち、第２位相調整部８３も、位相検出部８４０，８４１，…，８４３１と、並列データ判定部８９とを含み、例えば、位相検出部８４０は、フリップフロップ（ＦＦ）８４１０と、排他的論理和回路（ＥＯＲ）８４２０と、インバータ８４３０と、パターン検出部８５０と、カウンタ８６０と、位相判定部８７０と、タイマ８８０とを含む。そして、第２位相調整部８３内の各構成要素の機能は、第２位相調整部８１内の各構成要素の構成と基本的に同じである。但し、第２位相調整部８３内の位相判定部８７０は、入力データの位相が確定できなかった場合に、基準信号遅延調整部６３に、基準信号の遅延量を指定する選択信号ＣＬＫＢ＿ＳＡ，ＣＬＫＢ＿ＳＢ，ＣＬＫＢ＿ＳＣを出力する点でのみ、第２位相調整部８１内の位相判定部８７０と異なる。
【００５９】
ここで、基準信号遅延調整部６３内部の構成について更に詳細に説明する。
図１４は、基準信号遅延調整部６３内部の構成例を示したブロック図である。
図示するように、基準信号遅延調整部６３は、遅延回路６４１，６４２，…，６４８と、セレクタ６５とを含む。
遅延回路６４１は、遅延回路６０３からの基準信号ＣＬＫＢ０を遅延させてＣＬＫＢ＿１とし、遅延回路６４２は、遅延回路６４１で遅延されたＣＬＫＢ＿１を更に遅延させてＣＬＫＢ＿２とする。以下、同じく遅延させていき、遅延回路６４８は、遅延回路６４７で遅延されたＣＬＫＢ＿７を更に遅延させてＣＬＫＢ＿８とする。即ち、遅延回路６４１，６４２，…，６４８は、ＣＬＫＢ０を順次遅延させることにより、それぞれ、ＣＬＫＢ＿１，ＣＬＫＢ＿２，…，ＣＬＫＢ＿８を出力する。
セレクタ６５は、遅延回路６４１，６４２，…，６４８がそれぞれ出力したＣＬＫＢ＿１，ＣＬＫＢ＿２，…，ＣＬＫＢ＿８から、選択信号ＣＬＫＢ＿ＳＡ，ＣＬＫＢ＿ＳＢ，ＣＬＫＢ＿ＳＣに基づいて１つの基準信号を選択し、これを基準信号ＣＬＫＢとして出力する。尚、ＣＬＫＢ＿ＳＡ，ＣＬＫＢ＿ＳＢ，ＣＬＫＢ＿ＳＣに基づくデータの選択方法としては、ＣＬＫＢ＿ＳＡを２進数の右から１桁目のビットとし、ＣＬＫＢ＿ＳＢを２進数の右から２桁目のビットとし、ＣＬＫＢ＿ＳＣを２進数の右から３桁目のビットとしたときの２進数の値がＮである場合に、ＣＬＫＢ＿（Ｎ＋１）を選択する、という方法を採用するものとする。
【００６０】
図１５及び図１６は、第１位相調整部７３におけるデータの位相調整の具体例を示した図である。
このうち、図１５は、セレクタ６５が基準信号ＣＬＫＢ＿１を基準信号ＣＬＫＢとして選択した場合の例を示す。即ち、ＣＬＫＢ＿ＳＡ，ＣＬＫＢ＿ＳＢ，ＣＬＫＢ＿ＳＣをそれぞれ“０”、“０”、“０”とした場合である。尚、図中、斜線ハッチングは、値が不定であることを表している。
この例では、図示するように、ＤＩＮ０＿１，…，ＤＩＮ０＿８は、基準信号ＣＬＫＢのセットアップ時間Ｔｓ又はホールド時間Ｔｈに値が変化しているので、Ｄ０の行に示すように、これらのデータからは安定してデータを取り出せない。
【００６１】
これに対し、図１６は、セレクタ６５が基準信号ＣＬＫＢ＿８を基準信号ＣＬＫＢとして選択した場合の例を示す。即ち、ＣＬＫＢ＿ＳＡ，ＣＬＫＢ＿ＳＢ，ＣＬＫＢ＿ＳＣをそれぞれ“１”、“１”、“１”とした場合である。
この例では、図示するように、ＤＩＮ０＿１，…，ＤＩＮ０＿８は、基準信号ＣＬＫＢのセットアップ時間Ｔｓ又はホールド時間Ｔｈに値が変化していないので、これらのデータからは安定してデータを取り出せる。
従って、例えば、Ａ０，Ｂ０，Ｃ０をそれぞれ“０”、“０”、“１”とし、ＤＩＮ０＿５をＤ０として選択すれば、Ｄ０から安定してデータが取り出せるようになる。図には、第２位相調整部８３でＤ０から安定してデータを取り出した結果であるＤＬＤ０についても示している。
【００６２】
尚、第３の実施の形態でも、位相検出部８４０における位相検出は、図５〜図７に示したようにして行われるので、説明を省略する。
【００６３】
また、第３の実施の形態における位相判定部８７の動作は、第１の実施の形態における位相判定部８７の動作に若干の変更を加えたものに過ぎない。即ち、図８のステップ８０７で選択信号ＡＢＣに“１”を加算した際に選択信号ＡＢＣの上限を超えると、選択信号を基準信号遅延調整部６３に出力する。具体的には、選択信号ＣＬＫＢ＿ＳＡを出力済みであれば、選択信号ＣＬＫＢ＿ＳＢを出力し、選択信号ＣＬＫＢ＿ＳＢを出力済みであれば、選択信号ＣＬＫＢ＿ＳＣを出力する。そして、ステップ８０１以降の処理を再度行うようにする。
一方、第３の実施の形態における並列データ判定部８９の動作は、第１の実施の形態における並列データ判定部８９の動作と同じである。
【００６４】
尚、本実施の形態では、半導体集積回路の内部の回路を複数のブロック（回路部の一例）に分け、この複数のブロックのうちの前段のブロックと後段のブロックとに着目して説明した。しかしながら、複数のブロックの中に、このような前段のブロックと後段のブロックとのペアが複数含まれていてもよい。
【００６５】
また、本実施の形態では、一般的なデータ処理回路について説明したが、このデータ処理回路は、画像処理装置による画像処理の高速化を図るためのものであるので、画像処理装置におけるデータ処理回路として捉えてもよい。ここで、画像処理装置とは、プリンタ装置、スキャナ装置、コピー装置、ファクシミリ装置等である。そして、この場合、前段データ処理回路２１，２２，２３は、第１の画像処理回路の一例であり、通常データは、第１の画像処理信号の一例であり、後段データ処理回路９１，９２，９３は、第２の画像処理回路の一例であり、受信データは、第２の画像処理信号の一例である。
【００６６】
尚、本実施の形態を実現するプログラムは、通信手段により提供することはもちろん、ＣＤ−ＲＯＭ等の記録媒体に格納して提供することも可能である。
【符号の説明】
【００６７】
１１，１２，１３…遅延回路、２１，２２，２３…前段データ処理回路、３１，３２，３３…調整データ生成部、４１，４２，４３…ＭＵＸ、５１，５２，５３…ＦＦ、６１，６１２，６０３…遅延回路、６２２…インバータ、６３２…セレクタ、６３…基準信号遅延調整部
【図１】
2013175832.tif 000003
【図２】
2013175832.tif 000004
【図３】
2013175832.tif 000005
【図４】
2013175832.tif 000006
【図５】
2013175832.tif 000007
【図６】
2013175832.tif 000008
【図７】
2013175832.tif 000009
【図８】
2013175832.tif 000010
【図９−１】
2013175832.tif 000011
【図９−２】
2013175832.tif 000012
【図１０】
2013175832.tif 000013
【図１１】
2013175832.tif 000014
【図１２】
2013175832.tif 000015
【図１３】
2013175832.tif 000016
【図１４】
2013175832.tif 000017
【図１５】
2013175832.tif 000018
【図１６】
2013175832.tif 000019