(57)【要約】【課題】ジッタの影響によるエラー発生が抑制された半導体集積回路の設計方法、および半導体集積回路を提供する。【解決手段】第１の回路ブロックの動作周波数に対して、同一の半導体集積回路内に集積される第２の回路ブロックの動作周波数を、Ｎ倍もしくは１／Ｎ倍（好ましくは２ｎ倍）にそろえる。【選択図】図１
2007164345.tif 000002
【特許請求の範囲】
【請求項１】
それぞれがクロック信号に同期して動作する複数の回路ブロックを有する半導体集積回路の設計方法であって、
前記複数の回路ブロックから、第１のクロック信号に同期して動作する第１の回路ブロックと、第２のクロック信号に同期して動作する第２の回路ブロックとを選択し、
前記第２のクロック信号の周波数を、前記第１のクロック信号の周波数のＮ倍もしくは１／Ｎ倍（Ｎは１以上の整数）の第３の周波数に変更することを特徴とする半導体集積回路の設計方法。
【請求項２】
前記第１の回路ブロックが、前記半導体集積回路の外部端子を介して、第１のデータを前記第１のクロック信号に同期して受信もしくは送信する回路ブロックであることを特徴とする請求項１記載の半導体集積回路の設計方法。
【請求項３】
前記第２の回路ブロックが、前記半導体集積回路の第２の外部端子を介して、前記第２のクロック信号の変更前の周波数のデータクロック信号に同期して受信もしくは送信するデータを処理する回路ブロックであり、前記第２のクロック信号の第３の周波数への変更とともに、前記第２の回路ブロックと前記第２の外部端子との間に、データレート調整回路の挿入を行うことを特徴とする請求項２記載の半導体集積回路の設計方法。
【請求項４】
前記第２の回路ブロックが、データレート調整回路を介して、前記第１の回路ブロックで前記第１のデータを処理することによって生成されたデータを該第１の回路ブロックから受信するか、もしくは、前記第１の回路ブロックで処理すべきデータを該第１の回路ブロックに送信する回路ブロックであることを特徴とする請求項２記載の半導体集積回路の設計方法。
【請求項５】
前記第３の周波数は、前記第１のクロック信号の周波数の２ｎ倍（ｎは整数）であることを特徴とする請求項１ないし４のいずれかに記載の半導体集積回路の設計方法。
【請求項６】
第１の周波数のクロック信号に同期して動作し、該第１の周波数のクロック信号に同期した第１のデータ信号を第１の外部端子を介して受信もしくは送信する第１の回路ブロックと、
第２の周波数のクロック信号に同期した第２のデータ信号が入力もしくは出力される第２の外部端子と、
前記第２の周波数と異なり、かつ、前記第１の周波数のＮ倍もしくは１／Ｎ倍（Ｎは１以上の整数）の第３の周波数のクロック信号に同期して動作する第２の回路ブロックと、
前記第２の外部端子と前記第２の回路ブロックとの間に設けられ、前記第２の外部端子に入力された第２のデータ信号に含まれる第２のデータを前記第２の回路ブロックに送信するか、もしくは、前記第２の回路ブロックから第２のデータを受信して前記第２のデータ信号を生成する、データレート調整回路とを有することを特徴とする半導体集積回路。
【請求項７】
第１の周波数のクロック信号に同期して動作し、該第１の周波数のクロック信号に同期した第１のデータ信号を第１の外部端子を介して受信もしくは送信する第１の回路ブロックと、
前記第１の周波数のＮ倍もしくは１／Ｎ倍（Ｎは１以上の整数）である第３の周波数のクロック信号に同期して動作する第２の回路ブロックと、
前記第１の回路ブロックと第２の回路ブロックとの間に設けられ、前記第１の回路ブロックで前記第１のデータ信号を処理することによって生成された第２のデータを前記第１の回路ブロックから受信して前記第２の回路ブロックに送信するか、もしくは、前記第１の回路ブロックで処理する第２のデータを前記第２の回路ブロックから受信して前記第１の回路ブロックに送信する、データレート調整回路を有することを特徴とする半導体集積回路。
【請求項８】
前記第３の周波数が前記第１の周波数の２ｎ倍（ｎは整数）であることを特徴とする請求項６または７記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の回路ブロックを有する半導体集積回路の設計方法、および半導体集積回路に関する。特に、複数の回路の動作に起因するジッタの影響を抑制した半導体集積回路の設計方法および半導体集積回路に関する。
【背景技術】
【０００２】
従来から、複数の回路ブロックを同一半導体基板上に集積した半導体集積回路が提案されている。
【０００３】
例えば、特許文献１には、統一規格で決められた周波数のクロックを送受信クロックとして使用するデータ送受信回路を複数（ＵＳＢ制御部１００２、ＳＡＩ回路（ＤＡＣ，ＡＤＣへ入出力するシリアルＩ／Ｆ）１００９）搭載した半導体装置が記載されている。この半導体装置においては、データ送受信回路別に発振回路１００６，１００７、クロック発生部１００５，１００８を設けている（図５参照）。
【０００４】
また、特許文献２には、データ処理装置において、ＦＩＦＯ２１，２２を介してデータＤ１を受け取る複数の演算モジュール４，５に供給するクロックＣＫ１，ＣＫ２の周波数を、消費電力低減の目的で可変にすることが開示されている（図６参照）。
【特許文献１】特開２００４−０８６５５５号公報
【特許文献２】特開平０９−２８２０４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１，２では、同一の半導体集積回路内の異なる回路ブロックが、異なる周波数のクロックに同期して動作する。これらの異なる回路ブロックのそれぞれは、それぞれのクロックに同期した周期での電圧変動を電源に対して与える。この電源電圧変動は、半導体集積回路内の他の回路ブロックが受信もしくは送信する信号に対して、ジッタを発生させる。
【０００６】
このため、ある回路ブロックが特定の周波数のクロックに同期して処理する信号、例えば、受信もしくは送信する信号に、そのクロックに同期しない、ランダムなタイミングでジッタが発生する。このようにランダムなタイミングでジッタが発生することにより、データの送受信においてエラーが発生する可能性がある。
【０００７】
特に、半導体集積回路外との高いデータレートでのデータの送受信、具体的には例えば、外部メモリとのデータ送受信や、高速シリアルインターフェースを通じたデータの送受信において、エラーが発生する可能性が高い。
【０００８】
本発明は、このようなジッタの影響によるエラー発生が抑制された半導体集積回路の設計方法、および半導体集積回路を提供することを課題とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、本発明は、それぞれがクロック信号に同期して動作する複数の回路ブロックを有する半導体集積回路の設計方法であって、前記複数の回路ブロックから、第１のクロック信号に同期して動作する第１の回路ブロックと、第２のクロック信号に同期して動作する第２の回路ブロックとを選択し、前記第２のクロック信号の周波数を、前記第１のクロック信号の周波数のＮ倍もしくは１／Ｎ倍（Ｎは１以上の整数）の第３の周波数に変更することを特徴とする半導体装置の設計方法を提供する。
【００１０】
ここで、前記第１の回路ブロックが、前記半導体集積回路の外部端子を介して、第１のデータを前記第１のクロック信号に同期して受信もしくは送信する回路ブロックであることが好ましい。
【００１１】
より具体的には、前記第２の回路ブロックが、前記半導体集積回路の第２の外部端子を介して、前記第２のクロック信号の変更前の周波数のデータクロック信号に同期して受信もしくは送信するデータを処理する回路ブロックであり、前記第３のクロック周波数への変更とともに、前記第２の回路ブロックと前記第２の外部端子との間に、データレート調整回路の挿入を行うことが好ましい。もしくは、前記第２の回路ブロックが、データレート調整回路を介して、前記第１の回路ブロックで前記第１のデータを処理することによって生成されたデータを該第１の回路ブロックから受信するか、もしくは、前記第１の回路ブロックで処理すべきデータを該第１の回路ブロックに送信する回路ブロックであることが好ましい。
【００１２】
さらに、前記第３の周波数は、前記第１のクロック信号の周波数の２ｎ倍（ｎは整数）であることが好ましい。
【００１３】
上記の課題を解決するため、本発明は、第１の周波数のクロック信号に同期して動作し、該第１の周波数のクロック信号に同期した第１のデータ信号を第１の外部端子を介して受信もしくは送信する第１の回路ブロックと、第２の周波数のクロック信号に同期した第２のデータ信号が入力もしくは出力される第２の外部端子と、前記第２の周波数と異なり、かつ、前記第１の周波数のＮ倍もしくは１／Ｎ倍（Ｎは１以上の整数）の第３の周波数のクロック信号に同期して動作する第２の回路ブロックと、前記第２の外部端子と前記第２の回路ブロックとの間に設けられ、前記第２の外部端子に入力された第２のデータ信号に含まれる第２のデータを前記第２の回路ブロックに送信するか、もしくは、前記第２の回路ブロックから第２のデータを受信して前記第２のデータ信号を生成する、データレート調整回路とを有することを特徴とする半導体集積回路を提供する。
【００１４】
本発明はまた、第１の周波数のクロック信号に同期して動作し、該第１の周波数のクロック信号に同期した第１のデータ信号を第１の外部端子を介して受信もしくは送信する第１の回路ブロックと、前記第１の周波数のＮ倍もしくは１／Ｎ倍（Ｎは１以上の整数）である第３の周波数のクロック信号に同期して動作する第２の回路ブロックと、前記第１の回路ブロックと第２の回路ブロックとの間に設けられ、前記第１の回路ブロックで前記第１のデータ信号を処理することによって生成された第２のデータを前記第１の回路ブロックから受信して前記第２の回路ブロックに送信するか、もしくは、前記第１の回路ブロックで処理する第２のデータを前記第２の回路ブロックから受信して前記第１の回路ブロックに送信する、データレート調整回路を有することを特徴とする半導体集積回路を提供する。
【発明の効果】
【００１５】
本発明の半導体集積回路の設計方法、および半導体集積回路においては、第１の回路ブロックの動作周波数に対して、同一の半導体集積回路内に集積される第２の回路ブロックの動作周波数を、Ｎ倍もしくは１／Ｎ倍（より好ましくは２ｎ倍）にそろえる。これにより、第１の回路ブロックの動作に対するジッタ発生のタイミングが一定となり、エラー発生を抑制することができる。
【発明を実施するための最良の形態】
【００１６】
図１は、本発明の半導体集積回路の一実施形態を示す構成図である。
【００１７】
図１の半導体集積回路１００は、第１および第２の第１の回路ブロックとして、第１のデータ処理回路１１０および第２のデータ処理回路１２０を有している。第１および第２のデータ処理回路１１０，１２０は、同一の半導体基板上に集積され、共通の電源配線から電源の供給を受けて動作する。図１の半導体集積回路１００はまた、外部端子として、第１のデータ入力端子１１２、第１のクロック入力端子１１４、第１の出力端子１１６，第２のデータ入力端子１２２，第２のクロック入力端子１２４，第２の出力端子１２６を有している。
【００１８】
第１のデータ入力端子１１２には第１の入力データ信号が入力される。第１の入力データ信号は、第１のクロック信号（第１のデータクロック信号）に同期した、例えばｋビット幅のパラレルデータ信号である。これにより、第１のデータ処理回路１１０は、第１のデータ入力端子１１２を介して、第１の入力データ信号を、第１のクロック信号に同期して受信する。また、第１のデータ処理回路１１０は、第１のクロック入力端子１１４を介して第１のクロック信号の供給を受ける。
【００１９】
第１のデータ処理回路１１０は、第１のクロック信号に同期して動作し、第１の入力データ信号に含まれる第1のデータを処理し、生成した第１の出力信号を、第１の出力端子１１６から出力する。
【００２０】
第２のデータ入力端子１２２には第２の入力データ信号が入力される。第２の入力データ信号は、第２のクロック信号に同期した、例えばｋビット幅のパラレルデータ信号である。そして、第２のデータ処理回路１２０は、この第２の入力データ信号に含まれる第２のデータを、データレート調整回路１４０を介して受信し、処理し、生成した第２の出力信号を、第２の出力端子１２６から出力する。
【００２１】
ここで、第１のクロック信号の周波数（第１のクロック周波数）が例えば１００ＭＨｚであるのに対して、第２のクロック信号の周波数（第２のクロック周波数）は、例えば７５ＭＨｚであり、互いに異なる。しかも、互いにＮ倍もしくは１／Ｎ倍（Ｎは正の整数）の関係にもない。しかし、図１の半導体集積回路１００においては、第２のデータ処理回路１２０には、第２のクロック信号がそのまま供給されるのではなく、クロック周波数変換回路１３０によって周波数が第３の周波数に変換された内部クロック信号が、内部クロック配線１３８から供給される。従って、第２のデータ処理回路１２０は、この内部クロック信号、即ち第３の周波数のクロック信号に同期して動作する。
【００２２】
具体的には、図１の半導体集積回路１００においては、第２のクロック信号を、第１のクロック周波数の１倍の周波数である１００ＭＨｚの周波数を有する内部クロック信号に変換して、第２のデータ処理回路１２０に供給している。クロック周波数変換回路１３０は、ＰＬＬ回路ブロック１３４と、２個の分周回路１３２，１３６を組み合わせたものである。ＰＬＬ回路ブロック１３４は、位相比較回路、電圧制御発信器等を含み、分周回路１３６と組み合わせてＰｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐを形成する。そして、２個の分周回路１３２，１３６それぞれの分周比（図１の場合は、前段の分周回路１３２の分周比を３、後段の分周回路１３６の分周比を４とした）を適切に設定することにより、第２のクロック周波数に対して所望の比率の周波数を有する内部クロック周波数を発生することができる。このようなＰＬＬ回路を用いた周波数変換回路は周知のものであり、詳細な説明は省略する。
【００２３】
図１の半導体集積回路１００の動作について考察するまえに、まず、クロック周波数変換回路１３０を設けず、第２のクロック信号を第２のデータ処理回路１２０に直接供給し、第２のデータ処理回路１２０を第２のクロック信号に同期して動作させた場合について考察する。ここで、第２のクロック信号の周波数は、第１のクロック信号の周波数とは異なる。また、第１のクロック周波数に対して、Ｎ倍もしくは１／Ｎ倍（Ｎは正の整数）という関係にも無い。従って、第１のデータ処理回路１１０の動作による電源電圧変動は、第２のデータ処理回路１２０の動作に対してランダムなタイミングで発生する。
【００２４】
すなわち、第２のデータ処理回路１２０の動作によって発生する電源電圧変動に起因して、第１のデータ処理回路１１０が処理する信号に発生するジッタ発生のタイミングは、第１のデータ処理回路１１０の動作に対してランダムになる。このようにランダムタイミングでジッタが発生する場合、エラーが発生する可能性が高い。
【００２５】
これに対して、図１の半導体集積回路１００においては、第２のデータ処理回路１２０に、クロック周波数変換回路１３０によって生成された、第１のクロック信号と同一の周波数の内部クロック信号が供給される。従って、第２のデータ処理回路１２０は、内部クロック信号に同期して、すなわち、第１のデータ処理回路１１０と同一の周波数で動作する。従って、第２のデータ処理回路１２０の動作によって電源に発生する電圧変動は、第１のデータ処理回路１１０の動作に対して一定のタイミングで発生する。
【００２６】
従って、第２のデータ処理回路１２０の動作によって発生する電源電圧変動に起因して、第１のデータ処理回路１１０で処理する信号に発生するジッタ発生のタイミングは、第１のデータ処理回路１１０の動作に対して一定となる。このような一定のタイミングで発生するジッタによるエラー発生は、容易に抑制することができる。具体的には例えば、第１のデータ処理回路１１０での、第１のクロック信号に同期した第１の入力データ信号の受信において、エラー発生を効果的に抑制することができる。このように、図１の半導体集積回路１００においては、互いに異なった周波数のクロック信号に同期して受信した第１および第２の入力データ信号に含まれるデータを処理する、第１および第２のデータ処理回路１１０，１２０が集積され、共通の電源配線から電源が供給されて動作するにもかかわらず、ジッタの影響によるエラー発生を抑制することができる。
【００２７】
図１の半導体集積回路１００においては、さらに、第２のデータ入力端子１２２と第２のデータ処理回路１２０の入力端子との間に、ＦＩＦＯ（Ｆｉｒｓｔ−ｉｎ  Ｆｉｒｓｔ−Ｏｕｔ）メモリ１４２を利用したデータレート調整回路１４０を設け、第２のデータ処理回路１２０へのデータ入力タイミングの調整を行っている。このようなデータレート調整回路を設けることは、本発明にとって必ずしも必須のことではない。しかし、例えば、第２のデータ処理回路１２０における処理を、一定量のデータ群にまとめて行う必要がある場合には、データレート調整回路を設けることが好ましい。さらに、第２のデータ処理回路１２０によって生成した第２の出力信号を、内部クロック周波数とは異なった周波数のクロック信号に同期して出力する必要がある場合には、第２のデータ処理回路１２０の出力側にも、同様のデータレート調整回路を設けることが好ましい。
【００２８】
なお、図１においては、第１のクロック信号と第２のクロック信号とは、互いに独立の信号として示されている。従って、クロック周波数変換回路１３０によって第１のクロック周波数と同一の周波数の内部クロック信号を生成しようとしても、厳密には、内部クロック信号の周波数は、第１のクロック信号の周波数とわずかに異なっている可能性がある。この場合、第２のデータ処理回路１２０の動作によって発生する電源電圧変動に起因するジッタ発生の、第１のデータ処理回路の動作に対するタイミングは、厳密には、一定にならない。
【００２９】
このようなわずかなタイミングのずれを防止し、エラー発生をさらに抑制するためには、例えば、第２のデータ処理回路１２０に、第１のクロック信号から生成した内部クロック信号を供給することが好ましい。図１に示された例では、第１のクロック信号と同一の周波数の内部クロック信号が第２のデータ処理回路１２０に供給されているため、最も単純には、第１のクロック信号をそのまま、第２のデータ処理回路１２０に供給すればよい。これにより、第２のデータ処理回路１２０に、第１のデータ処理回路１１０に供給する第１のクロック信号と厳密に同一の周波数を有し、かつ、位相がそろった（同期した）内部クロック信号を供給することができる。
【００３０】
しかし、現実には、第１のクロック信号および第２のクロック信号は、半導体集積回路１００が実装された回路基板上に設けられた、共通の発振回路が生成する共通の基準信号を利用して生成されたものであることも多い。このような場合には、第１のクロック信号の周波数と第２のクロック信号の周波数とは、正確な比率を有している。このため、第２のクロック信号を利用して、第１のクロック信号と完全に同一の周波数を有する内部クロック信号を生成することができる。
【００３１】
また、図１の半導体集積回路１００においては、第１のデータ処理回路１１０を第１のクロック信号に同期させて動作させるとともに、第２のデータ処理回路１２０は、第１のクロック信号の周波数の１倍の周波数を有する内部クロック信号に同期させて動作させた。しかし、このように半導体集積回路に集積される複数の回路ブロックを、同一の周波数のクロック信号に同期させて動作させることは、ジッタの影響を抑制するために必須のことではない。
【００３２】
第２の回路ブロックには、第１の回路ブロックに供給される第１のクロック信号の周波数に比較して、Ｎ倍もしくは１／Ｎ倍の第３の周波数のクロック信号を供給し、この第３の周波数のクロック信号に同期して動作させることができる。これにより、第１の回路ブロックが第１のクロック信号に同期して受信する、もしくは、第１のクロック信号に同期して送信する、第１のデータ信号に対するジッタの影響を抑制することができる。ここで、Ｎは１以上の整数である。さらに、第２の回路ブロックに、第１の回路ブロックに供給される第１のクロック信号の周波数の２ｎ倍の周波数のクロック信号を供給し、これに同期して動作させることにより、さらに、ジッタの影響を抑制することができる。ここで、ｎは整数（０、正または負の整数）である。
【００３３】
図２は、例えば図１に示されたような半導体集積回路を設計するための、本発明の半導体集積回路の設計方法の一実施形態を示すフロー図である。
【００３４】
図２の半導体集積回路の設計方法においては、まず、半導体集積回路全体のシステム設計を行う（ＳＴ１）。そして、設計ライブラリに用意された回路ブロック群の中から、設計されたシステムを構成するために必要な複数種の回路ブロックを選択する。これら複数種の回路ブロックのそれぞれは、クロック信号に同期して動作するものであり、標準のクロック周波数および動作が可能な許容クロック周波数範囲が定められている。
【００３５】
次に、これらの複数種の回路ブロックから、第１の回路ブロックを選択し（ＳＴ２）、さらに、第２の回路ブロックを選択する（ＳＴ３）。そして、第１の回路ブロックおよび第２の回路ブロックを、それぞれの標準クロック周波数のクロック信号を供給することを仮定し、これら第１のクロック信号の周波数と第２のクロック信号の周波数とが、特定の関係を満たしているかどうかをチェックする（ＳＴ４）。図２に示された例においては、第２のクロック信号の周波数（第２のクロック周波数）が、第１のクロック信号の周波数（第１のクロック周波数）のＮ倍もしくは１／Ｎ倍であるかどうかをチェックする。ここで、Ｎは正の整数である。もしくは、第２のクロック周波数が、第１のクロック周波数の２ｎ倍であるかどうかをチェック条件とすることも可能である。ここで、ｎは整数（０、正もしくは負の整数）である。
【００３６】
そして、上記の関係を満たさない場合には、第２の回路ブロックの許容クロック周波数範囲内で、上記の関係を満たすように、第２のクロック信号の周波数を変更する。また、必要に応じて、データレート調整回路を追加する（ＳＴ５）。
【００３７】
このような処理を、ＳＴ１で設計したシステムを構成するために選択した他の回路ブロックについても実施する。ここで、図２においては、第２およびそれ以降に選択する回路ブロック、すなわち、第１回路ブロックを除く他の回路ブロックを総称して、「第２の回路ブロック」と記す。そして、全ての回路ブロックについて、クロック周波数のチェックと必要なクロック周波数の変更処理を行い（ＳＴ６）、半導体集積回路の設計を終了する。
【００３８】
ここで、半導体集積回路に集積される複数の回路ブロックの内、どれを第１の回路ブロックとするかは任意である。しかし、複数の回路ブロックの中に、ジッタの影響によるエラー発生を起こしやすい、すなわち、エラー発生に対するマージンが小さい回路ブロックが存在する場合には、それを第１の回路ブロックとすることが好ましい。これにより、エラーマージンの小さい第１の回路ブロックにおけるエラー発生を効果的に抑制することができる。
【００３９】
また、全ての回路ブロックについて図２のＳＴ４，ＳＴ５に示されたクロック周波数のチェックと変更を行うことは、本発明の半導体集積回路の設計方法において、必ずしも必須ではない。例えば、動作周波数が低く、その動作に伴う電源電圧の変動が小さい回路ブロックや、他の回路ブロックとは別の電源配線から電源の供給を受ける回路ブロック等は、チェックの対象外とすることも可能である。
【００４０】
本発明の半導体集積回路の他の例についてさらに説明を行う。
【００４１】
図３は、本発明の半導体集積回路の他の一例の構成を示す構成図である。
【００４２】
図３の半導体集積回路２００は、第１の回路ブロックとしてメモリインターフェース回路２１０を、第２の回路ブロックとして、データ処理回路２２０および出力回路２３０（２３０ａ，２３０ｂ，２３０ｃ）を有している。これらの第１および第２の回路ブロックは、同一の半導体基板上に配置され、共通の電源配線から電源を供給されて動作する。図３の半導体集積回路２００は、また、外部端子として、メモリインターフェースポート２１２，クロック出力端子２１４，基準クロック入力端子２５２，データ入力端子２２２，第１，第２，第３の映像出力端子２３４ａ，２３４ｂ，２３４ｃ、および、第１，第２，第３の映像出力用クロック入力端子２３６ａ，２３６ｂ，２３６ｃを備えている。
【００４３】
図３の半導体集積回路２００は、データ入力端子２２２を介して受信した入力映像データに対して、データ処理回路２２０においてさまざまな処理を行い、出力回路２３０ａ、２３０ｂ、２３０ｃにおいてさまざまなフォーマットの映像出力信号を生成し、それぞれ、出力端子２３４ａ，２３４ｂ，２３４ｃを介して出力する。ここで、データ処理回路２２０における処理において、入力映像データや、処理過程で発生した中間データ等を一時的に保存することが必要である。このための記憶領域として、外部メモリ２４０を利用している。
【００４４】
そして、図３の半導体集積回路２００においては、外部メモリ２４０へのデータ入出力のために、メモリインターフェース回路２１０が設けられている。メモリインターフェース回路２１０は、メモリインターフェースポート２１２を介して、外部メモリ２４０とデータの送受信を行うとともに、クロック出力端子２１４を介して、外部メモリ２４０にメモリクロック信号を供給する。メモリインターフェースポート２１２を介したデータの送受信は、この、メモリクロック信号に同期して行われる。
【００４５】
ここで、データ処理回路２２０における映像データ処理のためには、外部メモリ２４０との間で、大量のデータを高速に送受信する必要がある。このために、メモリクロック信号の周波数としては、例えば、３００ＭＨｚもしくはそれ以上の、高い周波数が採用される。このような大量・高速のデータ送受信においては、エラーマージンが小さく、ジッタ等の影響によるエラーを起こす危険性が高い。従って、図２に示されたような半導体集積回路の設計方法においては、このようにエラーを起こしやすい、大量で高速のデータの送受信を行うメモリインターフェース回路２１０を第１の回路ブロックとして、他の回路ブロックの動作周波数の調整を行うことが好ましい。
【００４６】
図３の半導体集積回路２００は、基準クロック入力端子２５２を介して、外部から、基準クロック信号を受信する。そして、この基準クロック信号を利用して、内部クロック生成回路２５４が、内部クロック信号を生成し、内部クロック信号配線２５６を介して、メモリインターフェース回路２１０に供給する。そして、メモリーインターフェース回路２１０は、供給された内部クロック信号を、クロック出力端子２１４を介して、外部メモリ２４０に供給する。すなわち、第１の回路ブロックであるメモリインターフェース回路２１０に、内部クロック信号が、第１のクロック信号として供給される。
【００４７】
ここで、図３において“ＰＬＬ”と表示した内部クロック生成回路２５４としては、例えば図１に示されたクロック周波数変換回路１３０と同様のものが利用できる。この内部クロック生成回路２５４は、受信した基準クロック信号と同期し、かつ、基準クロック信号とは異なる周波数（通常は、基準クロック信号よりも高い周波数）を有する内部クロック信号を生成する。
【００４８】
図３の半導体集積回路２００において、内部クロック信号生成回路２５４によって生成された内部クロック信号は、さらに、分周回路２６０にも供給される。そして、分周回路において１／Ｎ倍（Ｎは２以上の整数）、より好ましくは２ｎ倍（ｎは負の整数）に分周され、低速クロック信号が生成される。そして、生成された低速クロック信号は、低速クロック配線２６４を介して、データ処理回路２２０，出力回路２３０ａ，２３０ｂ，２３０ｃ等に供給される。すなわち、図３の半導体集積回路３０においては、分周回路２６０が、クロック周波数変換回路の役割を果たす。そして、低速クロック信号が、第３の周波数のクロック信号として、第２の回路ブロックであるデータ処理回路２２０および出力回路２３０ａ，２３０ｂ，２３０ｃに供給される。
【００４９】
図３の半導体集積回路２００において、第１の回路ブロックであるメモリインターフェース回路２１０は、第１の周波数のクロック信号である内部クロック周波数の供給を受け、この、内部クロック信号に同期して動作する。一方、第２の回路ブロックであるデータ処理回路２２０は、内部クロック周波数を分周した、内部クロック信号の１／Ｎ倍（Ｎは２以上の整数）、より好ましくは２ｎ倍（ｎは負の整数）の周波数を持つ、第３の周波数のクロック信号である低速クロック信号が供給され、この、低速クロック信号に同期して動作する。従って、データ処理回路２２０の動作によって発生する電源電圧変動に起因したジッタは、メモリインターフェース回路２１０の動作に対して一定のタイミングで発生する。このため、データ処理回路２２０の動作に起因するジッタによるメモリインターフェース回路２１０の処理におけるエラー発生を抑制することが可能である。特に、エラーマージンが小さい、外部メモリ２４０とのデータ送受信におけるエラー発生を効果的に抑制することができる。
【００５０】
ここで、映像データの処理を行うデータ処理回路２２０は、高い処理能力が求められ、従って、電源電圧に大きな変動を与える可能性がある。従って、その動作周波数をメモリインターフェース回路２１０の動作周波数の１／Ｎ倍（Ｎは２以上の整数）、より好ましくは２ｎ倍（ｎは負の整数）にそろえ、メモリインターフェース回路２１０の動作におけるエラー発生を防止する必要性は高い。
【００５１】
なお、図３の半導体集積回路２００においては、さらに、メモリインターフェース回路２１０とデータ処理回路との間に、データレート調整回路として、ＦＩＦＯ２１６が設けられている。
【００５２】
図３の半導体集積回路２００においては、他の第２の回路ブロックである出力回路２３０ａ，２３０ｂ，２３０ｃにも、分周回路２６０によって生成された、第３の周波数のクロック信号である低速クロック信号が供給されている。従って、これらの出力回路２３０ａ，２３０ｂ，２３０ｃも、低速クロック信号に同期して動作する。このため、これらの出力回路２３０ａ，２３０ｂ，２３０ｃによって発生する電源電圧変動に起因するジッタによる、メモリインターフェース回路２１０のエラー発生を抑制することができる。
【００５３】
図３の半導体集積回路２００において、出力回路２３０ａ，２３０ｂ，２３０ｃは、それぞれ、異なる機器に供給するための映像信号を生成する。例えば、ビデオ用映像信号、テレビ用映像信号、パーソナルコンピュータ用映像信号である。このような映像信号は、それぞれの規格で定められた第２の周波数のクロック周波数に同期して送信する必要がある。従って、従来の半導体集積回路では、このような映像信号を生成するための出力回路は、それぞれの規格で定められたクロック周波数で動作させることが一般的であった。しかしそれでは、これらの出力回路の動作周波数を、メモリインターフェース回路２１０の動作周波数に対してＮ倍もしくは１／Ｎ倍（Ｎは１以上の整数）の関係に保つことができず、メモリインターフェース回路２１０のエラーが発生する可能性が高い。
【００５４】
そこで、図３の半導体集積回路２００においては、出力回路２３０ａ，２３０ｂ，２３０ｃは、メモリインターフェース回路２１０に供給する内部クロック信号を分周した、第３の周波数のクロック信号である低速クロック信号を供給し、この、低速クロック信号に同期して動作させた。そして、これらの出力回路２３０ａ，２３０ｂ，２３０ｃの出力側に、ＦＩＦＯ２３２ａ，２３２ｂ，２３２ｃからなる、データレート調整回路２３２を設けた。そして、これらのＦＩＦＯ２３２ａ，２３２ｂ，２３２ｃの出力側に、それぞれの規格によって定められた第２の周波数のクロック信号を供給し、それぞれの出力回路２３０ａ，２３０ｂ，２３０ｃで生成した映像信号を、それぞれの外部端子である映像出力端子２３４ａ，２３４ｂ，２３４ｃから、それぞれの第２の周波数のクロック信号に同期して出力（送信）するようにした。
【００５５】
図４は、本発明の半導体集積回路のさらに他の一例を示す構成図である。
【００５６】
図４の半導体集積回路３００は、第１の回路ブロックとしてレシーバ回路３１０を、第２の回路ブロックとしてデータ処理回路３２０を備える。そして、外部端子として、入力端子３１２と出力端子３２２とを備える。図４の半導体集積回路３００は、入力端子３１２を介してレシーバ回路３１０が受信した信号に対して、データ処理回路３２０が様々な処理を行い、その結果生成された信号を、出力端子３２２を介して出力するものである。ここで、レシーバ回路３１０とデータ処理回路３２０とは、同一の半導体基板上に集積され、共通の電源配線から電源の供給を受けて動作する。
【００５７】
レシーバ回路３１０内には、ラインレシーバ３１４、クロック・データ・リカバリ（ＣＤＲ）回路３１６、デシリアライザ３１８が設けられている。ラインレシーバ３１４は、入力端子３１２を介して入力されたシリアルデータ信号を受信する。クロック・データ・リカバリ回路３１６は、ラインレシーバ３１４が受信したシリアルデータ信号を整形するとともに、シリアルデータ信号からクロック信号を抽出する。デシリアライザ３１８には、クロック・データ・リカバリ回路３１６によって整形されたシリアルデータ信号と抽出されたクロック信号とが入力される。そして、デシリアライザ３１８は、受信したシリアルデータ信号を、所定のビット幅（例えば８ビット幅）のパラレルデータ信号に変換し、内部データ配線３２４を通じて出力する。デシリアライザ３１８はまた、クロック・データ・リカバリ回路３１６によって抽出されたクロック信号を、ビット幅に対応した比率（例えば８）で分周し、内部クロック信号を生成し、内部クロック配線３２６を通じて出力する。
【００５８】
このように、レシーバ回路３１０は、クロック信号に同期したシリアルデータ信号を受信し、このシリアルデータ信号に含まれるデータ（第１のデータ）を、並び替えて、パラレルデータ信号を生成する処理を行う。レシーバ回路３１０はさらに、受信したシリアルデータ信号からクロック信号を抽出し、所定の比率で分周し、内部クロック信号を生成する。
【００５９】
ここで、レシーバ回路３１０が受信するシリアルデータ信号は、１ＧＨｚを超えるような高い周波数のクロック信号に同期した信号である。このように高い周波数に同期したデータ信号の受信においては、ジッタの影響を受けやすい。従って、図２に示されたようなフローでの半導体集積回路の設計においては、レシーバ回路３１０を第１の回路ブロックとすることが好ましい。この場合、シリアルデータ信号からクロック・データ・リカバリ回路３１６が抽出するクロック信号が、第１の周波数のクロック信号となる。
【００６０】
そして、第２の回路ブロックであるデータ処理回路３２０には、クロック・データ・リカバリ回路３１６が抽出したクロック信号の１／Ｎ倍（Ｎは２以上の整数）、より好ましくは、２ｎ倍（ｎは負の整数）の第３の周波数のクロック信号を供給する。そして、データ処理回路３２０の動作を、この、第３の周波数のクロック信号に同期させる。これによって、第２の回路ブロックの動作によって発生する電源電圧変動に起因するジッタ発生のタイミングが、第１の回路ブロックであるレシーバ回路３１０の動作に対して一定となり、レシーバ３１０の動作エラー発生が抑制される。特に、シリアルデータ信号受信におけるエラー発生が抑制される。
【００６１】
具体的には、図４の半導体集積回路３００においては、第２の回路ブロックであるデータ処理回路３２０は、レシーバ回路３１０が生成したパラレルデータ信号に含まれるデータ（第２のデータ）を、データレート調整回路であるＦＩＦＯ３２８を介して受信する。このデータ処理回路３２０には、低速クロック配線３３２より低速クロック信号も供給される。この低速クロック信号は、レシーバ回路３１０が生成した内部クロック信号を、クロック周波数変換回路である分周回路３３０が所定の比率で分周して生成したものである。
【００６２】
ここで、分周回路３３０の分周率は、クロック・データ・リカバリ回路３１６での分周率を考慮して適切に設定する。これによって、低速クロック信号の周波数（第３の周波数）が、レシーバ回路３１０が生成した内部クロック信号の周波数（第１の周波数）に比較して、１／Ｎ倍（Ｎは２以上の整数）、より好ましくは、２ｎ倍（ｎは負の整数）になるようにする。
【００６３】
以上、本発明の半導体集積回路および半導体集積回路の設計方法を、実施例に沿って具体的に説明した。しかし、本発明の半導体集積回路および半導体集積回路の設計方法は、上記の実施例に限定されるものではなく、さまざまな改良や変形が可能であることは言うまでもない。
【図面の簡単な説明】
【００６４】
【図１】本発明の半導体集積回路の一実施形態を示す構成図である。
【図２】本発明の半導体集積回路の設計方法の一実施形態を示すフロー図である。
【図３】本発明の半導体集積回路の他の一実施形態を示す構成図である。
【図４】本発明の半導体集積回路のさらに他の一実施形態を示す構成図である。
【図５】従来の半導体集積回路の一例を示す構成図である。
【図６】従来の半導体集積回路の他の例を示す構成図である。
【符号の説明】
【００６５】
１００，２００，３００  半導体集積回路
１１０，２１０，３１０  第１の回路ブロック
１２０，２２０，２３０，３２０  第２の回路ブロック
１３０，２６０，３３０  クロック周波数変換回路
１４０，２１６，２３２，３２８  データレート調整回路
１１２，１１４，１１６，１２２，１２４，１２６，２１２，２１４，２２２，２３４，２３６，２５２，３１２，３２２  外部端子
【図１】
2007164345.tif 000003
【図２】
2007164345.tif 000004
【図３】
2007164345.tif 000005
【図４】
2007164345.tif 000006
【図５】
2007164345.tif 000007
【図６】
2007164345.tif 000008