(57)【要約】【課題】多数の異なる通信プロトコルに対し、幅広い範囲のデータ速度にわたり、パラレルデータのシリアル化を実行するシリアライザ回路網を提供すること。【解決手段】プログラマブルロジックデバイス（「ＰＬＤ」）上の高速シリアルデータ送信回路網などは、任意の幾つかのデータ幅を有するパラレルデータをシリアルデータに変換するための回路網（１０）を含む。その回路網は、また、広範囲の周波数の任意の周波数で動作でき、パラレルデータ速度および／またはシリアルデータ速度との幾つかの関係のいずれをも有する基準クロック信号を使用することもできる。この回路網は、様々な点で構成可能／再構成可能で、この構成可能／再構成可能の少なくとも一部は、ダイナミックに制御され得る（すなわち、ＰＬＤのユーザモードでの動作中）。【選択図】図１
2007043716.tif 000002
【特許請求の範囲】
【請求項１】
パラレルデータのソースと、
パラレルデータの偶数ビット位置からビットを受信し、連続的に次々とそれら偶数ビットを出力する第一のマルチプレクサ回路網と、
パラレルデータの奇数ビット位置からビットを受信し、連続的に次々とそれらビットを出力する第二のマルチプレクサ回路網と、
該第一および第二のマルチプレクサ回路網によって出力された連続的なビットを受信し、該第一および第二のマルチプレクサ回路網からのこれらビットを交互に出力する、第三のマルチプレクサ回路網と
を備える、ＰＬＤ上のシリアライザ回路網。
【請求項２】
前記第一および第二のマルチプレクサ回路網のそれぞれは、前記パラレルデータのソースから受信するビット数に関して制御可能である、請求項１に記載の回路網。
【請求項３】
前記第一および第二のマルチプレクサ回路網のそれぞれは、前記パラレルデータのソースから次のデータを受信する前に、それぞれが出力するビット数に関して制御可能である、請求項２に記載の回路網。
【請求項４】
前記第一および第二のマルチプレクサ回路網のそれぞれは、前記パラレルデータのソースから、４ビットまたは５ビットを受信するように制御可能である、請求項３に記載の回路網。
【請求項５】
前記第一および第二のマルチプレクサ回路網のそれぞれは、前記ソースから次のデータを受信する前に、４ビットまたは５ビットを出力するように制御可能である、請求項４に記載の回路網。
【請求項６】
前記パラレルデータのソースより大きな幅を有し得る、さらなるパラレルデータのソースと、
該さらなるソースから前記ソースへのパラレルデータを適用するための、第四のマルチプレクサ回路網であって、該さらなるソースデータの幅が、前記ソースより大きいとき、該さらなるソースからのデータを再分割値に再分割して、該ソースに連続的に次々と適用するように、動作可能である、第四のマルチプレクサ回路網と
をさらに備える、請求項１に記載の回路網。
【請求項７】
前記さらなるソースデータの幅は、２０ビットまで上げられ、前記ソースは、わずか１０ビットまでしか受信できない、請求項６に記載の回路網。
【請求項８】
クロック信号のソースと、
選択可能な因子によって該クロック信号の周波数を分割し、高周波数クロック信号を生成する回路網と、
前記第三のマルチプレクサ回路網が受信したビットのどれを出力するかを制御するために使用するために、該第三のマルチプレクサ回路網に、該高周波数クロック信号を適用するための回路網と
を備える、請求項１に記載の回路網。
【請求項９】
前記選択可能な因子が、４、２または１のいずれかである、請求項８に記載の回路網。
【請求項１０】
さらなる選択可能な因子によって高周波数クロック信号の周波数を分割し、低周波数クロック信号を生成するさらなる回路網と、
前記第一と第二のマルチプレクサ回路網が前記ソースからビットをいつ受信するかを制御するために使用するために、該低周波数クロック信号を該第一と第二のマルチプレクサ回路網に適用する回路網と
をさらに備える、請求項８に記載の回路網。
【請求項１１】
前記さらなる選択可能な因子が、４または５のいずれかである、請求項１０に記載の回路網。
【請求項１２】
前記シリアライザ回路網は、前記ＰＬＤ上の同様な複数のシリアライザ回路網のうちの１つであって、該ＰＬＤは、
中央クロック信号を生成するための位相ロックループ回路網と、
該シリアライザ回路網の全てに、該中央クロック信号を分配するための回路網と、
該中央クロック信号をローカルクロック信号のベースとして使用する、該シリアライザ回路網のそれぞれにおけるローカルクロック生成回路網と、
該中央クロック信号をグローバルクロック信号のベースとして使用する、グローバルクロック生成回路網と、
該シリアライザ回路網の全てに、該グローバルクロック信号を分配するための回路網と、
該シリアライザ回路網それぞれのマルチプレクサ回路網の少なくとも１つに適用されるクロック信号のベースとして使用するために、該シリアライザ回路網それぞれの該グローバルクロック信号または該ローカルクロック信号のいずれかを選択する、該シリアライザ回路網それぞれの内部における選択回路網と
をさらに備える、請求項１に記載の回路網。
【請求項１３】
前記第一および第二のマルチプレクサ回路網を制御するためのダイナミック再構成可能メモリ回路網をさらに備える、請求項２に記載の回路網。
【請求項１４】
前記第四のマルチプレクサ回路網を制御するためのダイナミック再構成可能メモリ回路網をさらに備える、請求項６に記載の回路網。
【請求項１５】
前記選択可能な因子を制御するためのダイナミック再構成可能メモリ回路網をさらに備える、請求項８に記載の回路網。
【請求項１６】
前記さらなる選択可能な因子を制御するためのダイナミック再構成可能メモリ回路網
をさらに備える、請求項１０に記載の回路網。
【請求項１７】
シリアライザ回路網の複数のチャネルであって、各チャネルは、高周波数クロック信号と低周波数クロック信号とを用いる、複数のチャネルと、
基準クロック信号ソースと、
該基準クロック信号ソースの出力信号を使用し、グローバル高周波数クロック信号とグローバル低周波数クロック信号とを生成するグローバルクロック生成回路網と、
該基準クロック信号の出力信号を使用し、ローカル高周波数クロック信号とローカル低周波数クロック信号とを生成する、前記チャネルのそれぞれと関連するローカルクロック生成回路網と、
前記チャネルのそれぞれと関連する選択回路網であって、そのチャネルによって、その高周波数クロック信号と低周波数クロック信号として用いるために、該グローバル高周波数クロック信号と該グローバル低周波数クロック信号、あるいは、そのチャネルの該ローカル高周波数クロック信号と該ローカル低周波数クロック信号のいずれかを選択する選択回路網と
を備える、ＰＬＤ上のシリアライザ回路網。
【請求項１８】
前記チャネルそれぞれと関連する前記選択回路網によってなされる選択を制御するためのダイナミック再構成可能メモリ回路網をさらに備える、請求項１７に記載の回路網。
【請求項１９】
前記グローバル高周波数クロック信号と前記グローバル低周波数クロック信号との周波数比率が選択可能である、請求項１７に記載の回路網。
【請求項２０】
前記チャネルのそれぞれと関連する前記ローカル高周波数クロック信号と前記ローカル低周波数クロック信号との周波数比率が選択可能である、請求項１９に記載の回路網。
【請求項２１】
前記チャネルのそれぞれと関連する前記ローカル高周波数クロック信号と前記ローカル低周波数クロック信号との周波数比率を制御するためのダイナミック再構成可能メモリ回路網をさらに備える、請求項２０に記載の回路網。
【請求項２２】
シリアライザ回路網の複数のチャネルであって、該チャネルのそれぞれは、高周波数クロック信号と低周波数クロック信号とを用いる、複数のチャネルと、
複数の位相ロックループ回路であって、該回路のそれぞれは、複数の基準信号のうちのそれぞれ一つを生成できる、複数の位相ロックループ回路と、
該基準クロック信号の一つを用いて、グローバル高周波数クロック信号とグローバル低周波数クロック信号とを生成するグローバルクロック生成回路網と、
該基準信号の一つを選択するためのチャネルそれぞれと関連する第一の選択回路網と、
該チャネルのそれぞれと関連するローカルクロック生成回路網であって、そのチャネルのローカル基準クロックを用いて、ローカル高周波数クロック信号とローカル低周波数クロック信号とを生成するローカルクロック生成回路網と、
前記チャネルのそれぞれと関連する第二の選択回路網であって、そのチャネルによって、その高周波数クロック信号と低周波数クロック信号として用いるために、該グローバル高周波数クロック信号と該グローバル低周波数クロック信号、あるいは、そのチャネルの該ローカル高周波数クロック信号と該ローカル低周波数クロック信号のいずれかを選択する第二の選択回路網と
を備える、ＰＬＤ上のシリアライザ回路網。
【請求項２３】
前記チャネルのそれぞれと関連する前記第一の選択回路網によってなされる選択を制御するためのダイナミック再構成可能メモリ回路網をさらに備える、請求項２２に記載の回路網。
【発明の詳細な説明】
【技術分野】
【０００１】
本特許出願は、米国仮特許出願第６０／７０５，６８２号（２００５年８月３日出願）、米国仮特許出願第６０／７０７，６１５号（２００５年８月１２日出願）の利益を主張するものである。両出願は、本明細書にて、参考として、その全体が援用される。
【０００２】
本発明は、プログラマブルロジックデバイス（「ＰＬＤ」）および、その一般的なタイプの他の集積回路（これら全ては、簡便のために、ＰＬＤと呼ぶ）に関する。より特定的には、本発明は、ＰＬＤに含むための高速シリアルデータ送信回路網に関する。
【背景技術】
【０００３】
ＰＬＤは、比較的、汎用デバイスであることを意図されている。ＰＬＤは、ＰＬＤがサポートするように設計されているニーズの範囲で、いかなるニーズにも対応できるように、プログラム（構成）され、および／または、さもなくば、制御される。ＰＬＤは、高速シリアルデータ通信回路網とともに装備され得る。ここで、ＰＬＤは、ＰＬＤの外部にある回路網からシリアルデータを送信および／または受信する。その場合、ＰＬＤの高速シリアルデータ通信回路網は、ＰＬＤ製品の様々なユーザが使いたいと希望し得る様々な通信プロトコルが可能であることが望ましい。
【０００４】
ＰＬＤ上の高速シリアルデータ送信回路網の場合、このような回路網が実行する必要のあるタスクの一つは、ＰＬＤのコアロジック回路網で、典型的には生成および／またはハンドルされるパラレル形式から、シリアル形式へのシリアル化である。シリアル形式において、送信機は、それをＰＬＤから離れて送信する。本発明は、多数の異なる通信プロトコルに対し、また、可能なデータ速度の幅広い範囲にわたり、このタスクを実行するシリアライザ回路網を提供する。本発明に従う回路網がサポートできるデータ速度の具体例は、６２２Ｍｂｐｓ（メガビット毎秒）〜６．５Ｇｂｐｓ（ギガビット毎秒）である。しかしながら、この範囲は、単なる一例に過ぎず、必要に応じて、他のデータ速度の範囲をサポートし得ることも理解されるべきである。
【発明の開示】
【課題を解決するための手段】
【０００５】
（発明の概要）
本発明に従うと、ＰＬＤ上の高速シリアルデータ送信回路網は、任意の幾つかのデータ幅を有するパラレルデータをシリアルデータに変換できるシリアライザ回路網を含む。例えば、シリアライザ回路網は、一度に２０ビット、一度に１６ビット、一度に１０ビット、または、一度に８ビットで表されるパラレルデータをシリアル形式に変換可能であり得る。シリアライザ回路網は、また、かなり幅広い範囲の任意の周波数および／またはデータ速度で動作可能なことが好ましい。シリアライザ回路網は、基準クロック信号で動作する能力を有することが好ましい。その基準クロック信号は、シリアライザ内で使用される周波数および／またはデータ速度との幾つかの周波数関係のいずれをも有する。複数のシリアライザチャネルが提供され、これらシリアライザのチャネルは互いに独立に（比較的独立に）動作され得る。あるいは、これらチャネルは互いに同期され得る。シリアライザ回路網は、様々な面で、構成可能で、再構成可能であることが好ましい。この様々な面には、ダイナミック構成（ｃｏｎｆｉｇｕｒａｔｉｏｎ）／再構成（ｒｅ−ｃｏｎｆｉｇｕｒａｔｉｏｎ）（すなわち、ＰＬＤのユーザモードでの動作）を含み得る。
【０００６】
本発明は、さらに、以下の手段を提供する。
（項目１）
パラレルデータのソースと、
パラレルデータの偶数ビット位置からビットを受信し、連続的に次々とそれら偶数ビットを出力する第一のマルチプレクサ回路網と、
パラレルデータの奇数ビット位置からビットを受信し、連続的に次々とそれらビットを出力する第二のマルチプレクサ回路網と、
該第一および第二のマルチプレクサ回路網によって出力された連続的なビットを受信し、該第一および第二のマルチプレクサ回路網からのこれらビットを交互に出力する、第三のマルチプレクサ回路網と
を備える、ＰＬＤ上のシリアライザ回路網。
（項目２）
上記第一および第二のマルチプレクサ回路網のそれぞれは、上記パラレルデータのソースから受信するビット数に関して制御可能である、項目１に記載の回路網。
（項目３）
上記第一および第二のマルチプレクサ回路網のそれぞれは、上記パラレルデータのソースから次のデータを受信する前に、それぞれが出力するビット数に関して制御可能である、項目２に記載の回路網。
（項目４）
上記第一および第二のマルチプレクサ回路網のそれぞれは、上記パラレルデータのソースから、４ビットまたは５ビットを受信するように制御可能である、項目４に記載の回路網。
（項目５）
上記第一および第二のマルチプレクサ回路網のそれぞれは、上記ソースから次のデータを受信する前に、４ビットまたは５ビットを出力するように制御可能である、項目３に記載の回路網。
（項目６）
上記パラレルデータのソースより大きな幅を有し得る、さらなるパラレルデータのソースと、
該さらなるソースから上記ソースへのパラレルデータを適用するための、第四のマルチプレクサ回路網であって、該さらなるソースデータの幅が、上記ソースより大きいとき、該さらなるソースからのデータを再分割値に再分割して、該ソースに連続的に次々と適用するように、動作可能である、第四のマルチプレクサ回路網と
をさらに備える、項目１に記載の回路網。
（項目７）
上記さらなるソースデータの幅は、２０ビットまで上げられ、上記ソースは、わずか１０ビットまでしか受信できない、項目６に記載の回路網。
（項目８）
クロック信号のソースと、
選択可能な因子（ｆａｃｔｏｒ）によって該クロック信号の周波数を分割し、高周波数クロック信号を生成する回路網と、
上記第三のマルチプレクサ回路網が受信したビットのどれを出力するかを制御するために使用するために、該第三のマルチプレクサ回路網に、該高周波数クロック信号を適用するための回路網と
を備える、項目１に記載の回路網。
（項目９）
上記選択可能な因子が、４、２または１のいずれかである、項目８に記載の回路網。
（項目１０）
さらなる選択可能な因子によって高周波数クロック信号の周波数を分割し、低周波数クロック信号を生成するさらなる回路網と、
上記第一と第二のマルチプレクサ回路網が上記ソースからビットをいつ受信するかを制御するために使用するために、該低周波数クロック信号を該第一と第二のマルチプレクサ回路網に適用する回路網と
をさらに備える、項目８に記載の回路網。
（項目１１）
上記さらなる選択可能な因子が、４または５のいずれかである、項目１０に記載の回路網。
（項目１２）
上記シリアライザ回路網は、上記ＰＬＤ上の同様な複数のシリアライザ回路網のうちの１つであって、該ＰＬＤは、
中央クロック信号を生成するための位相ロックループ回路網と、
該シリアライザ回路網の全てに、該中央クロック信号を分配するための回路網と、
該中央クロック信号をローカルクロック信号のベースとして使用する、該シリアライザ回路網のそれぞれにおけるローカルクロック生成回路網と、
該中央クロック信号をグローバルクロック信号のベースとして使用する、グローバルクロック生成回路網と、
該シリアライザ回路網の全てに、該グローバルクロック信号を分配するための回路網と、
該シリアライザ回路網それぞれのマルチプレクサ回路網の少なくとも１つに適用されるクロック信号のベースとして使用するために、該シリアライザ回路網それぞれの該グローバルクロック信号または該ローカルクロック信号のいずれかを選択する、該シリアライザ回路網それぞれの内部における選択回路網と
をさらに備える、項目１に記載の回路網。
（項目１３）
上記第一および第二のマルチプレクサ回路網を制御するためのダイナミック再構成可能メモリ回路網をさらに備える、項目２に記載の回路網。
（項目１４）
上記第四のマルチプレクサ回路網を制御するためのダイナミック再構成可能メモリ回路網をさらに備える、項目６に記載の回路網。
（項目１５）
上記選択可能な因子を制御するためのダイナミック再構成可能メモリ回路網をさらに備える、項目８に記載の回路網。
（項目１６）
上記さらなる選択可能な因子を制御するためのダイナミック再構成可能メモリ回路網をさらに備える、項目１０に記載の回路網。
【０００７】
（項目１７）
シリアライザ回路網の複数のチャネルであって、各チャネルは、高周波数クロック信号と低周波数クロック信号とを用いる、複数のチャネルと、
基準クロック信号ソースと、
該基準クロック信号ソースの出力信号を使用し、グローバル高周波数クロック信号とグローバル低周波数クロック信号とを生成するグローバルクロック生成回路網と、
該基準クロック信号の出力信号を使用し、ローカル高周波数クロック信号とローカル低周波数クロック信号とを生成する、上記チャネルのそれぞれと関連するローカルクロック生成回路網と、
上記チャネルのそれぞれと関連する選択回路網であって、そのチャネルによって、その高周波数クロック信号と低周波数クロック信号として用いるために、該グローバル高周波数クロック信号と該グローバル低周波数クロック信号、あるいは、そのチャネルの該ローカル高周波数クロック信号と該ローカル低周波数クロック信号のいずれかを選択する選択回路網と
を備える、ＰＬＤ上のシリアライザ回路網。
（項目１８）
上記チャネルそれぞれと関連する上記選択回路網によってなされる選択を制御するためのダイナミック再構成可能メモリ回路網をさらに備える、項目１７に記載の回路網。
（項目１９）
上記グローバル高周波数クロック信号と上記グローバル低周波数クロック信号との周波数比率が選択可能である、項目１７に記載の回路網。
（項目２０）
上記チャネルのそれぞれと関連する上記ローカル高周波数クロック信号と上記ローカル低周波数クロック信号との周波数比率が選択可能である、項目１９に記載の回路網。
（項目２１）
上記チャネルのそれぞれと関連する上記ローカル高周波数クロック信号と上記ローカル低周波数クロック信号との周波数比率を制御するためのダイナミック再構成可能メモリ回路網をさらに備える、項目２０に記載の回路網。
【０００８】
（項目２２）
シリアライザ回路網の複数のチャネルであって、該チャネルのそれぞれは、高周波数クロック信号と低周波数クロック信号とを用いる、複数のチャネルと、
複数の位相ロックループ回路であって、該回路のそれぞれは、複数の基準信号のうちのそれぞれ一つを生成できる、複数の位相ロックループ回路と、
該基準クロック信号の一つを用いて、グローバル高周波数クロック信号とグローバル低周波数クロック信号とを生成するグローバルクロック生成回路網と、
該基準信号の一つを選択するためのチャネルそれぞれと関連する第一の選択回路網と、
該チャネルのそれぞれと関連するローカルクロック生成回路網であって、そのチャネルのローカル基準クロックを用いて、ローカル高周波数クロック信号とローカル低周波数クロック信号とを生成するローカルクロック生成回路網と、
上記チャネルのそれぞれと関連する第二の選択回路網であって、そのチャネルによって、その高周波数クロック信号と低周波数クロック信号として用いるために、該グローバル高周波数クロック信号と該グローバル低周波数クロック信号、あるいは、そのチャネルの該ローカル高周波数クロック信号と該ローカル低周波数クロック信号のいずれかを選択する第二の選択回路網と
を備える、ＰＬＤ上のシリアライザ回路網。
（項目２３）
上記チャネルのそれぞれと関連する上記第一の選択回路網によってなされる選択を制御するためのダイナミック再構成可能メモリ回路網
をさらに備える、項目２２に記載の回路網。
【０００９】
（摘要）
プログラマブルロジックデバイス（「ＰＬＤ」）上の高速シリアルデータ送信回路網などは、任意の幾つかのデータ幅を有するパラレルデータをシリアルデータに変換するための回路網を含む。その回路網は、また、広範囲の周波数の任意の周波数で動作でき、パラレルデータ速度および／またはシリアルデータ速度との幾つかの関係のいずれをも有する基準クロック信号を使用することもできる。この回路網は、様々な点で構成可能／再構成可能で、この構成可能／再構成可能の少なくとも一部は、ダイナミックに制御され得る（すなわち、ＰＬＤのユーザモードでの動作中）。
【００１０】
本発明の更なる特徴、性質および様々な利点は、添付図面と以下の詳細な記述から、より明確になる。
【発明を実施するための最良の形態】
【００１１】
（詳細な説明）
本発明に従うデータシリアライザ回路網１０の例示的な実施形態を図１に示す。導入的な外観として、図１に示す全ては、ＰＬＤの回路網の一部である。シリアライザ１０は、パラレルデータをＰＬＤの物理的コーディングサブレイヤ（「ＰＣＳ」）回路網２０から受信し、そのシリアル形式のデータをＰＬＤの送信出力回路網３０に適用する。シリアライザ１０は、また、シリアルデータ出力をＰＬＤの高速シリアルデータ受信回路網４０に適用する（これは、テスト目的で提供されるシリアルデータ用の、いわゆるルックバック接続と呼ばれる。）。
【００１２】
シリアライザ１０は、典型的には、複数の同様の回路（チャネルまたは送信チャネル）のうちの一つのみである。これらチャネルの幾つかは、クロック管理ユニット（「ＣＭＵ」）回路網５０と関連し得る。例えば、４つのチャネル１０は、ＣＭＵ５０それぞれと関連し得るし、ＰＬＤ上に、チャネル１０が、８つのことも（あるいは、８つを上回ることも）あり得る。チャネル１０それぞれの動作の様々な側面は、ＰＬＤ上のダイナミックランダムアクセスメモリ（「ＲＡＭ」）回路網６０の出力信号によって制御され得る。回路網６０のＲＡＭビットは、任意の時間に変化され得る。その結果、これら変化したＲＡＭビットによって制御されるチャネル１０内の機能のパラメータを変化する。
【００１３】
図１に示す例示的な実施形態において、シリアライザ１０は、ＰＣＳ２０によって出力されるデータを、任意の幾つかの異なるパラレルデータ幅の中で、また、そのような速度の幅広い範囲の任意のデータ速度で、ハンドルし得る。例えば、ＰＣＳ２０によって出力されるパラレルデータの幅は、８、１０、１６または２０ビットであり得る。そして、これらシリアルビットレート（エレメント２１０によって出力されるシリアルデータ用の）は、約６２２Ｍｂｐｓ〜約６．５Ｇｂｐｓの範囲の任意の速度であり得る。このように柔軟性があるため、回路網は異なる通信規格またはプロトコルの数がいくつであってもサポートできる。パラレルデータの幅がいくらのものが使われても、ＰＣＳ２０は、ＣＬＫ＿ＤＩＶＴＸ信号の各立ち上がりエッジにおいてパラレルデータを出力する。
【００１４】
この比較的早い時点で、シリアライザ１０が、なぜＴＸ回路網３０にパラレルに８つの信号を出力しているかを説明するのは、有意義であり得る。これは、同じシリアルデータ出力信号が４つの異なる位相で出力されており、各位相が差動信号ペアとなっているからである。各位相は、シリアルデータ信号の１ユニットインターバル（「ＵＩ」）（すなわち、シリアルデータ信号内の１ビットの時間経過）だけ、離れている。これは、ＴＸ回路網３０が、最終的にＰＬＤによって出力されるシリアルデータ信号に、プリエンファシスを与えるのに役立たせるためである。例えば、シリアルデータ出力信号のこの種のプリエンファシスに関しての更なる情報は、同一出願人により、同時係属のＴｒａｎらによって、２００６年２月１日に出願された米国特許出願番号第１１／３４５，７０９号（代理人整理番号第１７４／４２６号（Ａ２１８４））を参照。受信回路網４０に適用されたシリアルデータ信号も、差動信号ペアである。
【００１５】
図１に示す例示的な実施形態において、各ＣＭＵ５０は、２つの位相ロックループ（「ＰＬＬ」）回路１１０ａおよび１１０ｂを含む。各ＰＬＬ回路１１０は、基準クロック信号を受信し、その信号を更なる４つのクロック信号を生成するために使用し得る。各ＰＬＬ１１０によって出力される４つのクロック信号は、いずれもその同じ信号の位相シフトしたレプリカ（すなわち、それぞれ０°、９０°、１８０°および２７０°への位相シフト）である。例えば、特定の通信プロトコルに対して、ＰＬＬ１１０の１つに適用される基準クロック信号は、１５６．２５ＭＨｚであり得て、ＰＬＬは３．１２５ＧＨｚの周波数を有するクロック信号を出力し得る。（議論が進行すると、さらに明白になるように、議論されている例示的な実施形態は、クロック信号の両端でシリアルデータをクロックし得るハーフレートの能力を含む。それゆえ、直前に述べた３．１２５ＧＨｚのクロック信号の例では、６．２５Ｇｂｐｓのシリアルデータ速度をサポートできる。
【００１６】
ＣＭＵ５０と関連した各チャネル１０内で、マルチプレクサ（「ｍｕｘ」）回路網１２０は、チャネルがＰＬＬ１１０ａの出力信号か、ＰＬＬ１１０ｂの出力信号かのいずれかを選択でき、そのチャネル内で、その更なる使用を可能とする。ｍｕｘ１２０によってなされた選択は、回路網６０によって制御され得るチャネル１０の機能の一つである。
【００１７】
ｍｕｘ１２０によって選択されたクロック信号は、周波数分割回路網１３０に適用される。回路網１３０は、自身に適用された各クロック信号の周波数を４、２または１（実質的には、周波数分割のバイパス）に分割し得る。回路網１３０によって用いられた周波数分割因子は、回路網６０によって制御され得るチャネル１０の機能の他の一つである。回路網１３０による周波数分割は、様々なチャネルが異なるデータ速度によって動作するときに、使われ得る。例えば、チャネル「１」とチャネル「０」とが同じクロックソースを使用するが、チャネル「１」は６．５Ｇｂｐｓで、チャネル「０」が３．２５Ｇｂｐｓで動作する場合を考える。このような場合、チャネル「０」のクロックは、２で分割されなくてはならない。それは、チャネル「０」の回路網１３０によってなされる。
【００１８】
回路網１３０の出力信号は、ローカルクロック生成回路網１４０に適用される。回路網１４０は自身が受信する信号を用い、チャネル１０のパラレルからシリアルへの変換コンポーネントで見込まれる使用のために、更なるクロック信号を生成する。回路網１４０によって生成された信号は、パラレルからシリアルへのコンポーネントで直接使われるか、あるいは、このように使われる信号の先駆に近いものであり得る。例えば、回路網１４０の出力信号は、クロック信号間で１８０°の位相シフトを有する高周波数のクロック信号のペアを含み得る。これら高周波数クロック信号は、最終的なシリアルビットレートの半分であり得る（なぜなら、これら２つの信号は、一緒になって、シリアルビットレートを効率的に２倍にするために使われ得る。これは、高周波数のクロック信号周波数に比べてである。）このように、前述の例で、３．１２５ＧＨｚでの高周波数クロックは、６．２５Ｇｂｐｓのシリアルデータ速度を提供するために使われ得る。これら２つの高周波数クロック信号は、ＨＦＣＬＫ＿ＰおよびＨＦＣＬＫ＿Ｎと呼ばれ得る。
【００１９】
回路網１４０は、低周波数クロック信号のペアも生成する。このペアも、両者間で１８０°の位相シフトを有する。これら低周波数クロック信号は、ＨＦＣＬＫ信号の周波数の５分の１（２０／１０ビットモード）または４分の１（１６／８ビットモード）であり得る。これら低周波数クロックは、ＬＦＣＬＫ＿ＰおよびＬＦＣＬＫ＿Ｎと呼ばれ得る。（回路網１４０の第五の出力信号は、ＬＦＣＬＫと同じ周波数を有するＣＰＵＬＳＥ信号であるが、５で分割したときは２０％の負荷サイクルのみで、４で分割したときは２５％の負荷サイクルのみである。）このように、回路網１４０は、ＰＬＬクロックをさらに細かく分割するクロック分割回路網を含むことは明らかである。これは、その回路網がチャネル１０の他のコンポーネントに送るクロックの幾つかを生成するためである。回路網１４０によって適用された周波数分割（すなわち、５による分割または４による分割）は、回路網６０によって制御され得るチャネル１０の機能のまた別の一つである。
【００２０】
グローバルクロック生成回路網１５０は、チャネル１０の一部ではない。回路網１５０は、回路網１４０と同様であるが、１つのチャネル１０でのみ使用可能な出力信号を生成するより、むしろ、回路網１５０は２セットの出力信号を生成する。一方のセットは４つまでのチャネル１０（例えば、１つのＣＭＵ５０と関連する４つのチャネル）で使用可能で、他方のセットは８つまでのチャネル１０（例えば、２つのＣＭＵ５０と関連する８つのチャネル）で使用可能である。この接続において、ＣＭＵ内にある両ＰＬＬ１１０の出力信号は、そのＣＭＵと関連する各チャネル１０内のｍｕｘ１２０に適用されることに留意すべきである。回路網１５０のＸ４ＣＬＫ［４：０］出力信号は、１つのＣＭＵ５０と関連する４つのチャネル１０全てにも適用される。回路網１５０のＸ８ＣＬＫ［４：０］出力信号は、２つのＣＭＵ５０と関連する８つのチャネル１０全てにも適用される。回路網１５０は、１つ以上のＣＭＵ５０のＰＬＬ１１０から選択された（あるいは、選択可能な）の１つのＰＬＬ１１０の出力信号で動作し得る。
【００２１】
各チャネル１０内で、ｍｕｘ回路網１６０は、そのチャネル内のローカルクロック生成回路網１４０のＸ１ＣＬＫ［４：０］出力信号、グローバルクロック生成回路網１５０のＸ４ＣＬＫ［４：０］出力信号、あるいは、グローバルクロック生成回路網１５０のＸ８ＣＬＫ［４：０］出力信号を選択できる。したがって、この配置によって、各チャネル１０は、実行されている通信プロトコルとアプリケーションの要求に応じて、比較的独立に動作すること（Ｘ１ＣＬＫ信号の使用）、他のチャネル１０が３つまで一緒に動作すること（Ｘ４ＣＬＫ信号の使用）、あるいは、他のチャネル１０が７つまで一緒に動作すること（Ｘ８ＣＬＫ信号の使用）が可能になる。一緒に使用されるチャネルは、同期チャネルと呼ばれ得る。ｍｕｘ１６０によってなされた選択は、回路網６０によって制御され得るチャネル１０の機能の他の一つである。
【００２２】
上記から、クロックマルチプレクサ回路網１６０は、チャネル１０の所望の動作モードに応じて、異なるクロックソースを選択できる。単一チャネルモードに対し、ｍｕｘ１６０は、Ｘ１ＣＬＫ［４：０］を選択し、この場合、チャネル１０は、それ自身の独立したデータ速度で動作する。四チャネルモードに対し、ｍｕｘ１６０は、Ｘ４ＣＬＫ［４：０］を選択し、この場合、ＣＭＵ５０と関連した４つまでのチャネルは同じクロックをシェアする。これは、これらチャネルが、同期し、同じデータ速度で動作するためである。八チャネルモードに対し、ｍｕｘ１６０は、Ｘ８ＣＬＫ［４：０］を選択し、この場合、８つまでのチャネルは同じクロックをシェアする。これは、これらチャネルが、同期し、同じデータ速度で動作するためである。
【００２３】
ｍｕｘ１６０の出力信号は、ｍｕｘ回路網１７０、クロック駆動回路網１８０、および、（低周波数クロック信号ＬＦＣＬＫ＿ＰおよびＬＦＣＬＫ＿Ｎの場合）周波数分割回路網１９０に適用される。
【００２４】
回路網１９０は、低周波数クロック信号の周波数を、選択的に２で分割する。この周波数分割は、ＰＣＳ２０がパラレルデータを２０ビットモードあるいは１６ビットモードで供給しているときに使われる。ＰＣＳ２０がパラレルデータを１０ビットモードあるいは
８ビットモードで供給している場合には、低周波数クロック信号は、回路網１９０の２による分割をバイパスする。回路網１９０に２による周波数分割があるか否かは、回路網６０によって制御され得るチャネル１０の機能の他の一つである。
【００２５】
回路網１９０の出力信号は、マルチプレクサ回路網１７０に適用される低周波数クロック信号である。これらは、ＰＣＳ２０からのパラレルデータの取り入れ（ｉｎｔａｋｅ）を制御する信号である。その周波数（あるいは、その周波数の属性）は、ＰＣＳ２０がパラレルデータを出力する速度に対応する。ｍｕｘ回路網１７０は、回路網１９０によって出力された低周波数クロック信号からの上述した信号ＣＬＫ＿ＤＩＶＴＸを導くための回路網（少なくとも、ルーティング）も含む。上述のように、ＰＣＳ２０は、各ＣＬＫ＿ＤＩＶＴＸの各立ち上がりエッジにパラレルデータ（８ビット、１０ビット、１６ビットまたは２０ビット）を出力する。
【００２６】
クロック駆動回路網１８０は、シリアライザ１０の残部のための中央クロックを駆動し、バランスする。回路網１８０の出力信号の性質は、更なる以下の議論から明らかになる。
【００２７】
マルチプレクサ回路網１７０は、その回路網が２０ビットモードで動作している場合（すなわち、ＰＣＳ２０が２０パラレルビットを出力している場合）、２０パラレルデータビットを１０パラレルビットからなる２つの連続するグループにシリアル化する。代替的に、その回路網が１６ビットモードで動作している場合（すなわち、ＰＣＳ２０が１６パラレルビットを出力している場合）、ｍｕｘ回路網１７０は、１６パラレルビットを８パラレルビットからなる２つの連続するグループにシリアル化する。更なる代替として、１０ビットモードおよび８ビットモード（すなわち、１０パラレルビットまたは８パラレルビットを出力しているＰＣＳ２０）に対し、そのデータは、ｍｕｘ回路網１７０の同期レジスタを介して、単に流れる。換言すれば、１０パラレル入力ビットは、１０パラレル出力ビットに流れ込み、あるいは、８パラレル入力ビットは、８パラレル出力ビットに流れ込む。回路網１９０からｍｕｘ回路網１７０に適用されるクロック信号は、回路網１７０の入力側にレジスタ回路網をクロックする。回路網１８０から回路網１７０に適用されるクロック信号は、回路網１７０の出力側にレジスタ回路網をクロックする。回路網１７０に関する上記の議論から、２０ビットモードおよび１６ビットモードにおいて、回路網１７０の出力レジスタ回路網は、回路網１７０の入力レジスタ回路網がクロックされるべき速度の２倍でクロックされなくてはならない。これが、回路網１９０で２によって分割される理由である。一方、１０ビットモードおよび８ビットモードにおいては、回路網１７０の入力レジスタ回路網と出力レジスタ回路網とは、同じ速度でクロックされなくてはならない。これが、回路網１９０によって、周波数分割をバイパスするオプションのための理由である。信号が回路網１７０の中でどのようにルーティングされるか（すなわち、入力から出力まで）は、回路網６０によって制御され得るチャネル１０の機能の他の一つである。特に、回路網１７０は、シングル／ダブル幅のｍｕｘ回路網である。回路網６０は、回路網１７０がダブル幅モード（２０／１６ビットモード）あるいはシングル幅モード（１０／８ビットモード）のいずれかを選択して制御できる。
【００２８】
回路網１７０の出力で偶数ビット位置にあるビットは、マルチプレクサ回路網２００ａに、パラレルに適用される。これは、２０ビットまたは１０ビットモードでは５ビットまで、あるいは、１６ビットまたは８ビットモードではわずか４ビットまで可能である。回路網１７０の出力で奇数ビット位置にあるビットは、マルチプレクサ回路網２００ｂに、パラレルに適用される。ここでもまた、回路網２００ａに対してと同様に、５ビット、あるいは、４ビットまで可能である。
【００２９】
（クロック駆動回路網１８０から）ｍｕｘ回路２００に適用されるクロック信号は、回路２００のそれぞれに、その５ビットまたは４ビットを、一度に１つ、次々と、最終的なシリアルデータビットレートの半分で、出力させる。したがって、回路２００のそれぞれは、自身がパラレル形式で受信する５ビットまたは４ビットを、シリアル形式に変換する。回路２００のそれぞれが、どのビット位置から出力するかの選択は、回路網６０によって制御され得るチャネル１０の機能の他の一つである。
【００３０】
回路２００ａと２００ｂの単一ビット出力は、マルチプレクサ回路２１０ａおよび２１０ｂのそれぞれにパラレルに適用される。これら回路のそれぞれは、（回路網１８０から）自身に適用されたクロック信号を使って、その２つの入力信号を交互に選択し、出力信号とする。この選択は、チャネル１０の最終的なシリアルデータ出力ビットレートで、交互に行われる。したがって、回路２１０ａおよび２１０ｂのそれぞれは、基本的には、各適用されたデータビットのペアを、パラレル形式からシリアル形式に変換するための二対一マルチプレクサである。さらに、回路２１０ａおよび２１０ｂのそれぞれは、典型的に片線接地されたシリアル出力信号を差動信号ペアに変換する。また、回路網２１０ａは、４つの最も直近のシリアル出力ビットを格納し、それらをＴＸ回路網３０の出力前駆動・駆動回路網の４つのステージに、パラレルで（そして、差動形式で）適用する（例えば、前述のＴｒａｎらによる文献参照）。上述のように、これが行われるのは、ＴＸ回路網３０が、最終的なシリアルデータ信号に、必要とされる場合に、様々な種類のプリエンファシスを与えるのに役立つためである。回路網２１０ｂは、その差動シリアルデータ出力信号を、本明細書で前述したように、テスト目的のループバック信号として、受信回路網４０に適用する。
【００３１】
図２は、図１の例示的な実施形態で、幾分か詳細に示したものを示す。図２は、ＲＥＦＬＣＬＫ信号が、前述のようなＣＭＵ５０の代表的なＴＸ  ＰＬＬ１１０に適用されているのを示す。ＰＬＬ１１０の４つの位相分配（あるいは、位相直交）出力信号が、４または５による周波数分割を含む回路網１３０／１４０に適用される。４による分割は、１６ビットモードおよび８ビットモードで使用される。５による分割は、２０ビットモードおよび１０ビットモードで使用される。ＨＦＣＬＫ＿ＰおよびＨＦＣＬＫ＿Ｎは、４または５によるこの周波数分割に影響を受けたことのない回路網１３０／１４０の出力信号である。ＬＦＣＬＫ＿ＰおよびＬＦＬＫ＿Ｎは、４または５によるこの周波数分割に影響を受けてきた回路網１３０／１４０の出力信号である。したがって、ＨＦＣＬＫ信号の周波数は、ＬＦＣＬＫ信号の周波数より４倍または５倍大きい。ＬＦＣＬＫ信号は、最終的なシリアライザ回路網２００／２１０のパラレルな入力側に使用される。ＨＦＬＣＫ信号は、その回路網のシリアル出力側に使用される。
【００３２】
回路網１３０／１４０のＬＦＣＬＫ＿Ｐ出力信号は、バイトシリアライザ１７０の出力レジスタ３５０に、ｍｕｘ３１０の１つの選択可能な入力端子に、および、周波数を２で分割する周波数分割回路網１９０にも適用される。回路網１９０の出力信号は、ｍｕｘ３１０の他の選択可能な入力端子に適用される。ｍｕｘ３１０によってなされた入力選択は、図１の回路網６０の一部であり得るメモリビット３００によって制御される。メモリビット３００の出力も、ＯＲゲート３３０の１つの入力端子に適用される。メモリビット３００の出力信号は、２０ビットモードおよび１６ビットモードで０である。それは、１０ビットモードおよび８ビットモードで１である。ｍｕｘ３１０の出力信号は、ＨＡＬＦＣＬＫとも呼ばれるが、ＬＦＣＬＫ＿Ｐの周波数の半分であるのは、２０ビットモードおよび１６ビットモードにおいてのみであることは理解される。１０ビットモードおよび８ビットモードにおいては、ＨＡＬＦＣＬＫは、ＬＦＣＬＫ＿Ｐと同じ周波数を有する。
【００３３】
ＨＡＬＦＣＬＫ信号は、バイトシリアライザ１７０の入力レジスタ回路網３２０のクロック入力端子に、また、ＰＣＳ回路網２０に（図１のＣＬＫ＿ＤＩＶＴＸのような回路網２０によって出力されたイネーブルデータ）適用される。ＨＡＬＦＣＬＫ信号は、ＯＲゲート３３０の第二の入力端子にも適用される。ＯＲゲート３３０の出力信号は、ｍｕｘ回路網３４０の選択制御入力端子に適用される。レジスタ回路網３２０（すなわち、そのレジスタのビット位置０：９から）の出力信号のうち１０個は、パラレルで、ｍｕｘ回路網３４０の上部の１０個の選択可能な入力端子に適用される。
【００３４】
レジスタ回路網３２０（すなわち、そのレジスタのビット位置１０：１９から）の出力信号のうち、その他の１０個は、パラレルで、ｍｕｘ回路網３４０の下部の１０個の選択可能な入力端子に適用される。２０ビットモードでは、レジスタ３２０の２０個全てのビット位置が、ＰＣＳ２０からのデータを含む。１６ビットモードでは、レジスタ３２０のビット位置０：７と１０：１７が、ＰＣＳ２０からのデータを含む。１０ビットモードでは、レジスタ３２０のビット位置０：９が、ＰＣＳ２０からのデータを含む。８ビットモードでは、レジスタ３２０のビット位置０：７が、ＰＣＳ２０からのデータを含む。この記述から、１０ビットモードおよび８ビットモードでは、ｍｕｘ３４０は、その上部入力を常に選択するはずであることが明らかとなる。このようなことが起こるのは、１０ビットモードおよび８ビットモードでは、メモリ素子３００の出力が１であるためである。そのため、ＯＲゲート３３０の出力は、ＨＡＬＦＣＬＫのレベルと無関係に１となる。一方、２０ビットモードおよび１６ビットモードにおいては、ｍｕｘ３４０は、その上部入力か下部入力かの選択を交代でする必要がある。これが起こるのは、２０ビットモードおよび１６ビットモードにおいては、メモリ素子３００の出力は０であり、その結果、ＨＡＬＦＣＬＫの交互のレベルがＯＲゲート３３０の出力を切り替えることが可能となり、こうして、ｍｕｘ３４０によってなされる選択も切り替わるからである。
【００３５】
１０ビットモードおよび８ビットモードにおいて、データはレジスタ３２０から、ｍｕｘ３４０の上部入力を介して、レジスタ３５０に流れる。レジスタ３２０および３５０は、いずれも同じ速度でクロックされる。したがって、データは、バイトシリアライザ１７０を介して、ただ流れるだけである。一方、２０ビットモードおよび１６ビットモードにおいて、データはレジスタ３２０の上部ビット位置と下部ビット位置から、交互にレジスタ３５０に流れる。こうして、レジスタ３２０がパラレルで格納する２つのバイトをシリアル化する。レジスタ３５０は、バイトのこのシリアル化に順応するために、レジスタ３２０がクロックされる速度の２倍の速度でクロックされる。図２に示すレジスタ３５０から下流の回路網は、図１の回路網１７０からの回路網に示す回路網と、同様であり得る。
【００３６】
図２は、Ｘ１モード動作用に、図１の回路網の特定の側面の例示的な実施形態を示すのに対し、図３は、Ｘ４モード動作用に、これら側面の例示的な実施形態を示す。図３において、素子１５０、１９０’および３１０’が、ＣＭＵ５０内に提供される。メモリ素子３００’は、ＣＭＵ５０と関連している。図３のＣＭＵ素子１５０、１９０’、３１０’および３００’は、それぞれ、図２の個別チャネル素子１３０／１４０、１９０、３００および３１０に類似している。素子１１０、１５０、３１０’および３００’の出力信号は、ＣＭＵ５０と関連しているチャネル１０の全てに適用される。このため、これらチャネルの全てが、本明細書で前述したようなＸ４モードで一緒に動作可能となる。図３に示す素子の全ての動作は、図１および図２の同様または類似の素子に関する上記の記載より明らかになる。
【００３７】
本発明の回路網に使用される好ましいダイナミックフリップフロップは、同一出願人により、同時係属のＮｇｕｙｅｎらによって、２００５年１１月７日に出願された米国特許出願番号第１１／２６９，４５６号に示されている。
【００３８】
以上の記述は、本発明の原理を説明するだけであること、および、本発明の範囲と精神から逸脱することなく、当業者によって、様々な変更がなされ得ることは、理解されるべきである。例えば、本明細書で述べた周波数とビットレートは、単なる例に過ぎず、必要に応じて、その代わりに、他の周波数および／またはビットレートが使用され得る。提供される通信チャネル１０の数も、本明細書で述べた数と、異なり得る。異なる数の通信チャネル１０が、ＣＭＵ５０それぞれと関連し得る。最終的な出力信号へのプリエンファシスの使用は、オプションである。また、プリエンファシスが提供される場合も、本明細書にて、例示的に記載されたのとは異なるように行われ得る。
【図面の簡単な説明】
【００３９】
【図１】本発明に従って構築された回路網の例示的な実施形態の簡便な回路ブロック図を示す。
【図２】本発明に従う図１の特定の側面を幾分か詳細に示した例示的な実施形態の簡便な回路ブロック図を示す。
【図３】本発明に従う図１の特定の他の側面に対し、図２と同様の図を示す。
【符号の説明】
【００４０】
１０  データシリアライザ回路網
２０  物理的コーディングサブレイヤ（「ＰＣＳ」）回路網
３０  送信出力回路網
４０  高速シリアルデータ受信回路網
５０  クロック管理ユニット（「ＣＭＵ」）回路網
６０  ダイナミックランダムアクセスメモリ（「ＲＡＭ」）回路網
１１０ａ、１１０ｂ  位相ロックループ（「ＰＬＬ」）回路
１２０  マルチプレクサ（「ｍｕｘ」）回路網
１３０  周波数分割回路網
１４０  ローカルクロック生成回路網
１５０  グローバルクロック生成回路網
１６０、１７０  ｍｕｘ回路網
１８０  クロック駆動回路網
１９０  周波数分割回路網
２００ａ、２００ｂ、２１０ａ、２１０ｂ  マルチプレクサ回路
【図１】
2007043716.tif 000003
【図２】
2007043716.tif 000004
【図３】
2007043716.tif 000005