(57)【要約】【課題】  直列データ源からのデータを並列フォーマットで読取るための方法を提供する。【解決手段】  複数の事前定義されたデータ単位を並列バス上に送出し、その複数の事前定義されたデータ単位の各々が並列バス上で有効であるときに非直列化クロックをアサートすることによって、直列データ源からのデータが非直列化される。非直列化クロックの各アサートから所定量の時間後に、遅延したクロック・パルスが発生される。各遅延したクロック・パルスは、それに対応する終了点反復済みクロック・パルスを発生するように反復される。なお、その所定量の時間は、各終了点反復済みクロック・パルスがアサートされるとき、並列バスにおける各事前定義されたデータ単位が有効であることを保証する量の時間である。【選択図】  図３
2007293845.tif 000002
【特許請求の範囲】
【請求項１】
直列データ源からのデータを並列フォーマットで読取るための方法であって、
複数の事前定義されたデータ単位を並列バス上に送出して、前記複数の事前定義されたデータ単位の各々が前記並列バスにおいて有効であるときに非直列化クロックをアサートすることによって、前記直列データ源からのデータを非直列化するステップと、
前記非直列化クロックの各アサートから所定量の時間後に、遅延したクロック・パルスを発生するステップと、
各遅延したクロック・パルスに対応する終了点反復済みクロック・パルスを発生するように各遅延したクロック・パルスを反復させるステップと、
を含み、前記所定量の時間は、各終了点反復済みクロック・パルスがアサートされるときに前記並列バスにおける各事前定義されたデータ単位が有効であることを保証する量の時間である、方法。
【請求項２】
少なくとも１つの終了点反復済みクロック・パルスのアサートに応答して、前記事前定義されたデータ単位の少なくとも１つを読取るステップを更に含む、請求項１に記載の方法。
【請求項３】
前記所定量の時間は前記非直列化クロックの０サイクルと１サイクルとの間である、請求項１に記載の方法。
【請求項４】
前記所定量の時間は、各終了点反復済みクロック・パルスが、前記非直列化クロックの対応する次のアサートと実質的に時間的に揃うようになる期間である、請求項１に記載の方法。
【請求項５】
クロック・ツリーを使用するシステムにおいてデータ源からデータをアクセスする方法であって、
読取りパルスを周期的に発生するステップと、
複数の周期的な終了点反復済みクロック・パルスを発生するように前記読取りパルスを反復するステップと、
前記終了点反復済みクロック・パルスの各々を対応する読取りパルスから所定量の時間だけ遅らせるように、前記反復するステップの前に前記読取りパルスを遅らせるステップと、
を含む、方法。
【請求項６】
前記所定量に時間は０読取りパルス・サイクルと１読取りパルス・サイクルとの間である、請求項５に記載の方法。
【請求項７】
直列データ・ストリームに応答し、データを並列バス上に送出する非直列化装置と、前記並列バスに対してデータ通信を行う装置との間の通信を容易にするためのデータ通信回路であって、
前記並列バスにおけるデータが有効であるときにクロック読取りパルスを周期的にアサートする非直列化クロックと、
前記非直列化クロックからクロック読取りパルスを受け取り、前記クロック読取りパルスから所定量の時間だけ遅れたクロック・パルスを周期的にアサートする遅延ユニットと、
前記遅延クロック・パルスを反復し、それによって複数の終了点反復済みクロック・パルスを周期的にアサートするクロック・ツリーであって、前記複数の終了点反復済みクロック・パルスの各々が実質的に同時の先端を有する、クロック・ツリーと、
を含み、前記所定量の時間は、前記並列バスにおけるデータが有効であるとき前記終了点反復済みクロック・パルスの各々をアサートさせるように選択され、それによって前記装置が前記並列バスからデータを読取ることを可能にする、データ通信回路。
【請求項８】
前記所定量の時間は前記非直列化クロックの０サイクルと前記非直列化クロックの１サイクルとの間である、請求項７に記載のデータ通信回路。
【請求項９】
前記所定量の時間は、終了点反復済みクロック・パルスの各々が、対応するクロック読取りパルスの次のサイクルと実質的に時間的に揃うように選択される、請求項７に記載のデータ通信回路。
【請求項１０】
前記クロック・ツリーは少なくとも１つの反復装置を含む、請求項７に記載のデータ通信回路。
【請求項１１】
前記クロック・ツリーは、前記クロック読取りパルスのアサートと、対応する終了点反復済みクロック・パルスのアサートとの間の量の時間に等しいツリー遅延を有し、
前記所定量の時間は前記非直列化クロックの１サイクルから前記ツリー遅延を減じた量の時間に等しい、請求項７に記載のデータ通信回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル刻時回路に関し、特に、直並列（serial-to-parallel）通信において使用される刻時回路に関するものである。
【背景技術】
【０００２】
多くのコンピュータ・システムでは、高速シリアライザ・デシリアライザ（ＨＳＳ）コアが、プロセッサ相互間通信およびプロセッサ・入出力装置間通信のための特定用途向け集積回路（ＡＳＩＣ）および特注集積回路において使用されている。ＨＳＳコアの受信部分は、１つ（または複数）の高速直列データ・レーンを使用し、非常に低い頻度で各データを並列データに変換する。図１に示された１つの例では、代表的な既存のＨＳＳ内部受信（Ｒｘ）インターフェースが、クロック（ＲｘＤＣＬＫ）および並列データ・バス（ＲｘＤ（７：０））から成る。（８ビット幅バスの用法が単に例として使用されていることに留意されたい）。非直列化装置１０は直列データ・ストリームからデータを受け取り、そのデータの単位を並列バス上に送出する。新たな単位が並列バス上に送出されるたびに、クロック１２は、並列バスにおけるデータが有効であることを表すＲｘＤＣＬＫ信号をアサートする。ＲｘＤＣＬＫ信号が、一般にデータをアクセスするすべての装置を使用可能にするに十分な電力に欠ける場合、クロック信号はクロック・ツリー１６によって反復されなければならない。クロック・ツリー１６は、クロック１２からのＲｘＤＣＬＫ信号の複製を、予測された量の時間だけ遅延して発生する漸増型の反復装置１８を含む。各連鎖した反復装置の遅延が累積されると、かなりのツリー遅延がシステムを伝播する。
【０００３】
クロック・ツリーの終了点における反復済みクロック信号は、クロック１２により発生された元のＲｘＤＣＬＫ信号からかなり遅延したものになり得るので、装置１４によるデータのサンプリングが問題になることがある。図２に示されるタイミング図２０において、ＲｘＤＣＬＫ信号＋ツリー遅延の先端は、ＲｘＤＣＬＫ信号の先端からクロック・サイクル半分またはそれ以上も自動的に遅れることがある。装置１４がその先端におけるデータを読取る場合、ＲｘＤＣＬＫ信号＋ツリー遅延の先端がアサートされるとき、並列バス上のデータは有効ではない。
【０００４】
説明を図１に戻すと、この問題に対する１つの既存の解決方法は、ツリー遅延に等しい遅延２０を並列データに加え、それによってクロック・ツリーの遅延に一致させることである。図２において見られるように、これは、並列バスにおけるデータ（ＲｘＤ（７：０）＋データ遅延）をＲｘＤＣＬＫ信号＋ツリー遅延と揃えさせる。
【０００５】
この解決方法は、次のような欠点を含む幾つかの欠点を有する。
（ａ）各データ信号を遅らせるための余分なセルが必要である。
（ｂ）並列データ・パスに加えられる遅延が、結局、クロック遅延に一致するように適正な量であること、および２つの比較的長いパスの変動が管理される必要があること、を保証するためにチップの物理的設計において手操作の介在が必要である。
（ｃ）並列データに加えられる遅延がインターフェースの待ち時間全体を増加させる。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従って、本発明の目的は、複数の装置が最小の待ち時間で並列データを読取ることができるシステムを提供することにある。
【課題を解決するための手段】
【０００７】
従来技術の欠点が本発明によって克服される。本発明の１つの態様は、直列データ源からのデータを並列フォーマットで読取るための方法である。この方法では、複数の事前定義されたデータ単位を並列バス上に送出することおよびその複数の事前定義されたデータ単位の各々が並列バス上で有効であるときに非直列化装置クロックをアサートすることによって、直列データ源からのデータが並列化される。非直列化装置クロックの各アサーションから所定量の時間後に、遅延したクロック・パルスが発生される。各遅延したパルスは、それに対応する終了点反復済みクロック・パルスを発生するように繰り返される。なお、その所定量の時間は、各終了点反復済みクロック・パルスがアサートされるとき、並列バスにおける各事前定義されたデータ単位が有効であることを保証する量の時間である。
【０００８】
もう１つの態様では、本発明は、読取りパルスを周期的に発生するクロック・ツリーを使うシステムにおいてデータ源からデータをアクセスする方法である。読取りパルスは、複数の周期的な終了点反復済みクロック・パルスを発生するように繰り返される。読取りパルスは、各終了点反復済みクロック・パルスを、所定量の時間だけそれの対応する読取りパルスから遅延させるように反復ステップの前に遅らされる。
【０００９】
更にもう１つの態様では、本発明は、直列データ・ストリームに応答し、データを並列バス上に送出する非直列化装置と並列バスに対してデータ通信を行う装置との間の通信を容易にするためのデータ通信回路である。その回路は、非直列化クロック、遅延ユニット、およびクロック・ツリーを含む。非直列化クロックは、並列バスにおけるデータが有効であるときにいつもクロック読取りパルスを周期的にアサートする。遅延ユニットは、非直列化クロックからクロック読取りパルスを受け取り、対応する遅延したクロック・パルスを周期的にアサートする。その遅延したクロック・パルスはクロック読取りパルスから所定の期間だけ遅れている。クロック・ツリーは、遅延したクロック・パルスを反復させ、それによって複数の終了点反復済みクロック・パルスを周期的にアサートする。各終了点反復済みクロック・パルスは、実質的に同時の先端を有する。並列バスにおけるデータが有効であるとき、各終了点反復済みクロック・パルスをアサートさせるように所定量の時間が選択され、それによって装置が並列バスからデータを読取ることを可能にする。
【００１０】
添付図面に関連して示される好適な実施例に関する下記の説明から、本発明のこれらのおよび他の態様が明らかになるであろう。当業者には明らかであるように、本発明の新規な概念の趣旨および範囲から逸脱することなく、本発明に関する多くの変更および修正を行うことが可能である。
【発明を実施するための最良の形態】
【００１１】
次に、本発明の好適な実施例を詳しく説明する。図面を参照する場合、各図面を通して同じ番号は同じ素子を表す。
【００１２】
図３および図４に示されるように、本発明の１つの代表的な実施例１００は、非直列化装置１０からのクロック１２の出力に対して、クロック・ツリー１６の前にクロック遅延装置１１０を加える。その遅延は、クロック・ツリー１６の終了点１１２におけるクロック信号が、並列化クロック信号の先端と時間的にほぼ揃った先端を持つようにする時間量のための遅延である。その遅延は、ツリーの遅延次第で、非直列化クロック１２の０サイクルおよび１サイクルの間の範囲内の遅延となり得る。
【００１３】
図４のタイミング図１２０に見られるように、終了点クロック信号（ＲｘＤＣＬＫ＋ツリー遅延＋クロック遅延）は非直列化装置１０のクロック１２（ＲｘＤＣＬＫ）からの信号とほぼ揃った波形を有する。但し、その終了点クロック信号は常にＲｘＤＣＬＫ信号に対して１サイクル遅れている。終了点クロック信号を遅らせることによって、データを遅らせる必要がなくなり、並列データを読取る装置１４は、定常状態で稼動しているとき、実質的な遅延を生じない。
【００１４】
図４に示される例において、ＲｘＤＣＬＫ信号は、データ単位「Ａ」がデータ・バスにおいて有効であるときにパルス「１」でもってアサートされ、データ単位「Ｂ」が有効であるときにパルス「２」でもって再びアサートされる。クロック遅延装置１１０がない場合、終了点クロック信号（ＲｘＤＣＬＫ＋ツリー遅延）は、パルス「１」がＲｘＤＣＬＫ信号のパルス「１」およびパルス「２」の間の途中で生じるようにＲｘＤＣＬＫ信号から半サイクル遅れるであろう。従って、その終了点クロック信号の先端は、並列バスにおけるデータ（ＲｘＤ（７：０））が無効であるときに生じるであろう。しかし、ＲｘＤＣＬＫ信号をほぼ半サイクル遅らせることによって、その結果生じる終了点クロック信号（ＲｘＤＣＬＫ＋ツリー遅延＋クロック遅延）はＲｘＤＣＬＫ信号に揃えられる。しかし、終了点クロック信号のパルス「１」は、そのＲｘＤＣＬＫ信号のパルス「２」と本質的に同時に生じる。従って、各終了点反復済みクロック・パルスは、対応するＲｘＤＣＬＫパルスの次のサイクルと実質的には時間的に揃っている。従って、ＲｘＤＣＬＫ信号のパルス「２」がアサートされるとき、パケット「Ｂ」が並列バスにおいて有効であるが、そのパケット「Ｂ」は、パルス「１」に対応する終了点クロック信号の遅延パルスがアサートされるのとほぼ同時に装置１４によって読取られる。これを行うことによって、非直列化装置１０からのデータはほぼ半サイクルだけ遅延する必要がなく、並列バスにおいて有効となると直ちに装置１４にとって使用可能となる。
【００１５】
１つの実施例では、ツリー遅延の合計量を決定し、しかる後その量を非直列化クロック１２の完全な１サイクルから減じることによってクロック遅延の量を決定することが可能である。応用例によっては、終了点クロック・パルスをＲｘＤＣＬＫからわずかにスキューすることが望ましいこともあり、「特許請求の範囲」の記載はすべてのそのような応用例に適用することを意図するものである。
【００１６】
本発明の解決方法は、クロック・ツリーでの遅延がＲｘＤＣＬＫクロック期間のかなり大きな部分であるときには益々有益なものになる。本発明は、他のシステム以上に、下記の点を含む幾つもの利点を提供する。
（ａ）それは並列データ遅延セルの排除により少ないチップ領域を使用する。
（ｂ）タイミング分析は、管理すべき大きい変異性を持ったパス（即ち、クロック遅延）を１つしか有しないことにより物理的設計の実現が容易である。
（ｃ）インターフェースの待ち時間全体が１クロック・サイクル単位で改善される。
【００１７】
上記の実施例は、本願の出願時に本発明者が知っている本発明の好適な実施例および最善のモードを含むが、単に例示として示されたに過ぎない。本発明の主旨および範囲から逸脱することなく、本明細書に開示された特定の実施例から多くの変更を行い得ることは容易に明らかであろう。従って、本発明の範囲は、上記の特定の開示された実施例に限定されるのではなく、「特許請求の範囲」の記載によって決定されるべきものである。
【図面の簡単な説明】
【００１８】
【図１】非直列化データを読取る場合に使用される典型的な従来技術の刻時機構のブロック図である。
【図２】図１に示された従来技術のシステムに関するタイミング図である。
【図３】本発明による刻時機構の実施例のブロック図である。
【図４】図３に示された機構に関するタイミング図である。
【図１】
2007293845.tif 000003
【図２】
2007293845.tif 000004
【図３】
2007293845.tif 000005
【図４】
2007293845.tif 000006