説明

直列データ源からのデータを並列フォーマットで読取る方法および装置

【課題】
直列データ源からのデータを並列フォーマットで読取るための方法を提供する。
【解決手段】
複数の事前定義されたデータ単位を並列バス上に送出し、その複数の事前定義されたデータ単位の各々が並列バス上で有効であるときに非直列化クロックをアサートすることによって、直列データ源からのデータが非直列化される。非直列化クロックの各アサートから所定量の時間後に、遅延したクロック・パルスが発生される。各遅延したクロック・パルスは、それに対応する終了点反復済みクロック・パルスを発生するように反復される。なお、その所定量の時間は、各終了点反復済みクロック・パルスがアサートされるとき、並列バスにおける各事前定義されたデータ単位が有効であることを保証する量の時間である。

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

【特許請求の範囲】
【請求項1】
直列データ源からのデータを並列フォーマットで読取るための方法であって、
複数の事前定義されたデータ単位を並列バス上に送出して、前記複数の事前定義されたデータ単位の各々が前記並列バスにおいて有効であるときに非直列化クロックをアサートすることによって、前記直列データ源からのデータを非直列化するステップと、
前記非直列化クロックの各アサートから所定量の時間後に、遅延したクロック・パルスを発生するステップと、
各遅延したクロック・パルスに対応する終了点反復済みクロック・パルスを発生するように各遅延したクロック・パルスを反復させるステップと、
を含み、前記所定量の時間は、各終了点反復済みクロック・パルスがアサートされるときに前記並列バスにおける各事前定義されたデータ単位が有効であることを保証する量の時間である、方法。
【請求項2】
少なくとも1つの終了点反復済みクロック・パルスのアサートに応答して、前記事前定義されたデータ単位の少なくとも1つを読取るステップを更に含む、請求項1に記載の方法。
【請求項3】
前記所定量の時間は前記非直列化クロックの0サイクルと1サイクルとの間である、請求項1に記載の方法。
【請求項4】
前記所定量の時間は、各終了点反復済みクロック・パルスが、前記非直列化クロックの対応する次のアサートと実質的に時間的に揃うようになる期間である、請求項1に記載の方法。
【請求項5】
クロック・ツリーを使用するシステムにおいてデータ源からデータをアクセスする方法であって、
読取りパルスを周期的に発生するステップと、
複数の周期的な終了点反復済みクロック・パルスを発生するように前記読取りパルスを反復するステップと、
前記終了点反復済みクロック・パルスの各々を対応する読取りパルスから所定量の時間だけ遅らせるように、前記反復するステップの前に前記読取りパルスを遅らせるステップと、
を含む、方法。
【請求項6】
前記所定量に時間は0読取りパルス・サイクルと1読取りパルス・サイクルとの間である、請求項5に記載の方法。
【請求項7】
直列データ・ストリームに応答し、データを並列バス上に送出する非直列化装置と、前記並列バスに対してデータ通信を行う装置との間の通信を容易にするためのデータ通信回路であって、
前記並列バスにおけるデータが有効であるときにクロック読取りパルスを周期的にアサートする非直列化クロックと、
前記非直列化クロックからクロック読取りパルスを受け取り、前記クロック読取りパルスから所定量の時間だけ遅れたクロック・パルスを周期的にアサートする遅延ユニットと、
前記遅延クロック・パルスを反復し、それによって複数の終了点反復済みクロック・パルスを周期的にアサートするクロック・ツリーであって、前記複数の終了点反復済みクロック・パルスの各々が実質的に同時の先端を有する、クロック・ツリーと、
を含み、前記所定量の時間は、前記並列バスにおけるデータが有効であるとき前記終了点反復済みクロック・パルスの各々をアサートさせるように選択され、それによって前記装置が前記並列バスからデータを読取ることを可能にする、データ通信回路。
【請求項8】
前記所定量の時間は前記非直列化クロックの0サイクルと前記非直列化クロックの1サイクルとの間である、請求項7に記載のデータ通信回路。
【請求項9】
前記所定量の時間は、終了点反復済みクロック・パルスの各々が、対応するクロック読取りパルスの次のサイクルと実質的に時間的に揃うように選択される、請求項7に記載のデータ通信回路。
【請求項10】
前記クロック・ツリーは少なくとも1つの反復装置を含む、請求項7に記載のデータ通信回路。
【請求項11】
前記クロック・ツリーは、前記クロック読取りパルスのアサートと、対応する終了点反復済みクロック・パルスのアサートとの間の量の時間に等しいツリー遅延を有し、
前記所定量の時間は前記非直列化クロックの1サイクルから前記ツリー遅延を減じた量の時間に等しい、請求項7に記載のデータ通信回路。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2007−293845(P2007−293845A)
【公開日】平成19年11月8日(2007.11.8)
【国際特許分類】
【出願番号】特願2007−106709(P2007−106709)
【出願日】平成19年4月16日(2007.4.16)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【Fターム(参考)】