(57)【特許請求の範囲】
【請求項１】
回路構成（１００）における、データシンク（１１１、１１２、１１３）の少なくとも１つの集合と、データソース（１２１、１２２、１２３）の少なくとも１つの集合との間のデータ交換を制御する方法であって、前記回路構成（１００）は、少なくとも１つの調停ユニット（１１６）を有する、前記方法において、
−前記調停ユニット（１１６）が、所定の順番にしたがって、データシンク（１１１、１１２、１１３）の前記集合から、第１のデータシンクを選択する工程と、
−前記第１のデータシンクが、第１のデータソースのアドレスと、要求信号とを出力する工程であって、前記第１のデータシンクの要求信号が存在する場合には、前記要求信号はアクティブであり、前記第１のデータシンクの要求信号が存在しない場合には、前記要求信号はアクティブではない、前記出力する工程と、
−前記アドレスが、データソース（１２１、１２２、１２３）の前記集合からの前記第１のデータソースの選択のために利用される工程と、
前記第１のデータソースに出力のためのデータが提供される場合には、前記第１のデータソースにアクティブなデータ準備信号が割り当てられ、前記第１のデータソースに出力のためのデータが提供されない場合には、前記第１のデータソースに非アクティブなデータ準備信号が割り当てられる工程と、
前記第１のデータソースが、データと、少なくとも１つの有効信号とを出力する工程であって、前記有効信号は、前記要求信号と、前記データ準備信号とから形成され、前記要求信号と、前記データ準備信号とがアクティブな場合には前記有効信号はアクティブであり、アクティブな有効信号は、前記第１のデータソースの前記データが前記第１のデータシンクへの出力のために有効であることを示す、前記出力する工程と、
−前記データが、データシンク（１１１、１１２、１１３）の前記集合の全てのデータシンク（１１１、１１２、１１３）へと転送される工程と、
−アクティブな有効信号が存在する場合には、前記第１のデータシンクが前記データを格納する工程と、
を特徴とする、方法。
【請求項２】
少なくとも１つのデータノードが、少なくとも１つのデータシンクとして、および、少なくとも１つのデータソースとして機能することを特徴とする、請求項１に記載の方法。
【請求項３】
データシンクの少なくとも２つの集合と、データソースの少なくとも１つの集合との間でデータ交換が行われ、データシンクの各集合にはそれぞれ少なくとも１つの調停ユニット（３１６、３３６）が割り当てられることを特徴とする、請求項１に記載の方法。
【請求項４】
異なる調停ユニット（３１６、３３６）に割り当てられる集合が区別され得ることを特徴とする、請求項３に記載の方法。
【請求項５】
前記第１のデータシンクの前記要求信号は、前記第１のデータソースの、メッセージがデータソース内で有効なままであるかを示す有効情報の状態に影響を与えることを特徴とする、請求項１に記載の方法。
【請求項６】
読み出し要求信号、または、書き込み要求信号は、前記調停ユニット（１１６、４２６）の値を増分させることに対して作用することを特徴とする、請求項１〜５のいずれか１項に記載の方法。
【請求項７】
前記調停ユニット（１１６、４２６）は、所定のイベントの際に、特定のデータシンクまたは特定のデータソースを調停し、強制的な調停の後に、前記調停ユニット（１１６、４２６）は引き続いて、前記所定の順番にしたがって、データシンク（１１１、１１２、１１３）またはデータソース（４２１、４２２，４２３）を選択することを特徴とする、請求項１に記載の方法。
【請求項８】
データが、遅延ユニット（２９１、２９２）によって遅延させられることを特徴とする、請求項１〜７のいずれか１項に記載の方法。
【請求項９】
回路構成（１００）における、データシンク（１１１、１１２、１１３）の少なくとも１つの集合と、データソース（１２１、１２２、１２３）の少なくとも１つの集合と、の間のデータ交換のための回路構成であって、
前記回路構成（１００）は、
−設定された順番にしたがって、データシンク（１１１、１１２、１１３）の前記集合から、第１のデータシンクを選択するための調停ユニット（１１６）と、
−前記第１のデータシンクによる、第１のデータソースのアドレスと、要求信号との第１の出力を処理し伝送する手段（１１４、１１５、１０２）と、
−前記アドレスによって、データソース（１２１、１２２、１２３）の前記集合から前記第１のデータソースを選択し、データと、前記第１のデータソースの少なくとも１つの肯定応答信号との第１の出力を処理し、データシンク（１１１、１１２、１１３）の前記集合の全てのデータシンク（１１１、１１２、１１３）へと、前記データを転送する手段（１２４、１２５、１０１）と、
−アクティブな有効信号が存在する場合に、前記第１のデータシンクに前記データを格納する手段（１１４）と、
をさらに有し、
前記第１のデータシンクは、前記第１のデータソースのアドレスと、要求信号とを出力し、前記第１のデータシンクの要求信号が存在する場合には、前記要求信号はアクティブであり、前記第１のデータシンクの要求信号が存在しない場合には、前記要求信号はアクティブではなく、
前記第１のデータソースに出力のためのデータが提供される場合には、前記第１のデータソースにアクティブなデータ準備信号が割り当てられ、前記第１のデータソースに出力のためのデータが提供されない場合には、前記第１のデータソースに非アクティブなデータ準備信号が割り当てられ、
前記第１のデータソースは、データと、少なくとも１つの有効信号とを出力し、前記有効信号は、前記要求信号と、前記データ準備信号とから形成され、前記要求信号と、前記データ準備信号とがアクティブな場合には前記有効信号はアクティブであり、アクティブな有効信号は、前記第１のデータソースの前記データが前記第１のデータシンクへの出力のために有効であることを示すことを特徴とする、回路構成。
【請求項１０】
前記回路構成（２００）は、データ遅延のために、遅延ユニット（２９１、２９２）を有することを特徴とする、請求項９に記載の回路構成。
【請求項１１】
前記回路構成（３００）は、少なくとも２つの調停ユニット（３１６、３３６）を有し、前記少なくとも２つの調停ユニット（３１６、３３６）はそれぞれ、前記データシンク（３１１、３１２、３１３、３３１、３３２、３３３）の少なくとも２つの集合のうちの１つに割り当てられることを特徴とする、請求項９に記載の回路構成。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路構成におけるデータ交換を制御するための回路構成、および方法に関する。
【背景技術】
【０００２】
データ処理システム（演算機システムおよびマイクロプロセッサシステム、制御ユニット、周辺ユニット、および、その他の情報処理システム）では、データ交換のために、バスシステムが利用されることが多い。このようなバスシステムは、その変形であるＡＨＢ、ＡＳＢ、およびＡＰＢも含めて、ＡＭＢＡバスである（ｗｗｗ．ａｒｍ．ｃｏｍ／ｐｒｏｄｕｃｔｓ／ｓｏｌｕｔｉｏｎｓ／ＡＭＢＡＨｏｍｅＰａｇｅ．ｈｔｍｌ）。ＡＨＢバスは、バス要求により個々のマスタがバスを要求することが可能な、マルチマスタバス（Ｍｕｌｔｉ−Ｍａｓｔｅｒ  Ｂｕｓ）である。複数の要求の際には、アービタ（Ａｒｂｉｔｅｒ）が、どのマスタに、そのデータ転送のためのバスが割り当てられるのかについて決定する。選択されたマスタは、書き込みバスを介して自身がデータをそこへと伝送でき、または自身が読み出しバスを介してデータをそこから獲得するスレーブに対して、アドレスを介して問い合わせを行う。データ伝送は、複数のクロック周期に渡って続くこともあり、次のマスタ要求のためにバスを再び開放するレディ信号（Ｒｅａｄｙ−Ｓｉｇｎａｌ）によって終了される。マスタとしては、例えば、データをメモリから取り出し、または周辺ユニットへと伝送するＣＰＵ（ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）またはＤＭＡ（ｄｉｒｅｃｔ  ｍｅｍｏｒｙ  ａｃｃｅｓｓ）が機能しうるであろう。この場合、伝送方法はその都度アドレスによって制御され、当該アドレスは常に変わりうる。
【０００３】
データ伝送の他の選択肢は、ＰＣＴ／ＥＰ２００８／０６０４９３に記載されるようなデータ・ルーティング（Ｄａｔｅｎ−Ｒｏｕｔｉｎｇ）であるが、このデータ・ルーティングは、設定可能な（実行時間について固定の）アドレスへのデータ分散の問題を解消する。この場合、存在するデータが順々に、データソース（Ｓｏｕｒｃｅ）から、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ、任意にアクセス可能なメモリ）内の固定のアドレスへと書き込まれ、そこから、データシンク（宛先）が周期的にデータを取り出す。データの各取得の際に、該当するデータ領域が、読み出し済みとしてマーク付けされ、同じソースからの次のデータのために開放される。このような形式のデータ分散は、データソースとデータシンクとの間の固定の接続が存在し、任意に、頻繁に、データが交換されている場合には有利である。
【０００４】
ＡＭＢＡバスシステムを用いたデータ交換の場合には、各マスタが、バスシステムに対する要求を通知し、アービタによって、どのマスタがバスを割り当ててもらうのかが決定される。これにより、データ転送は非常にフレキシブル（ｆｌｅｘｉｂｅｌ）であるが、コストも非常にかかる。これに対して、（上記の）データ・ルーティングは、各加入者が、自身が要求を有し、順々に要求が満たされるのかについて問い合わせを受けるため、より簡単である。この場合、ＲＡＭのための書き込み要求（Ｗｒｉｔｅ  Ｒｅｑｕｅｓｔ）と、読み出し要求（Ｒｅａｄ  Ｒｅｑｕｅｓｔ）とは区別される。書き込み要求の場合は、ソースからデータが正に取り出され、ＲＡＭ内の目的アドレスが開放されている場合に、ＲＡＭへと書き込まれる。反対に、読み出し要求の場合には、有効なデータが存在する場合にのみデータが供給され、当該データは、読み出しの際に読み出し済みとしてマーク付けされる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このルーティングの欠点は、ソースからシンクへのデータ転送ごとに、ＲＡＭへの書き込みのためにｋクロックが必要となり、追加的に、ＲＡＭからの読み出しのためにｌクロック必要となることである。ｎ個のデータソースと、ｍ個のデータシンクとが順々に要求を満たされる場合に、スループットには、ｔ＝ｎ＊ｋ＋ｍ＊ｌクロックまで必要となる。要求が存在しない場合には、ソースまたはシンクへの問い合わせは、零クロックにまで短縮される。したがって、周期時間、すなわち、同一ソースまたはシンクが新たに要求を満たされるまでの時間は、要求の数に依存する。適用によっては、周期時間が非常に長く、また、他の適用によっては、可変的な周期時間が不都合となる。
【課題を解決するための手段】
【０００６】
独立請求項に記載の、回路構成におけるデータ交換を制御するための本発明にかかる方法、または本発明にかかる回路構成は、従来技術のデータ・ルーティングに対して、データシンクのみが問い合わせを受け問い合わせごとに１クロックのみ必要となるため、ＲＡＭがバッファとして節約され、周期時間がｔ＝ｍクロックにまで短縮されるという利点を有する。さらに、データシンクへの問い合わせが、要求が存在するか否かということに依存しないため、周期時間を一定に選択することができる。
【０００７】
従来技術のＡＭＢＡバスに対して、回路のコストが大幅に削減されるが、これは、例えば、ラウンドロビン（ｒｏｕｎｄ−ｒｏｂｉｎ）の原則にしたがってより簡単な調停が可能であるからであり、調停のために要求が存在するかを考慮する必要がないからであり、その都度読み出しアクセスのみを設けることが可能であるからであり、読み出しが常に設定可能な（実時間について固定の）アドレスによって行われ得るからであり、アドレスが、ｎ個のデータソースについてｌｄ（ｎ）ビットのみ必要とする（ソースへの連番付け）からである。
【０００８】
したがって、独立請求項１に記載の方法は特に迅速であり、従来技術に比較して、比較的小さな回路コストが必要となる。さらなる利点および改善は、従属請求項に記載の特徴により明らかとなろう。
【０００９】
好適な構成において、少なくとも１つのデータノードは、少なくとも１つのデータシンクとして、および、少なくとも１つのデータソースとして機能する。したがって、本方法は、純粋なデータシンクまたはデータソースに限定されない。本発明にかかるデータ交換のために、このような機能ユニットが、対応する数のデータシンクおよびデータソースに分割されて観察される。
【００１０】
さらに、データシンクの複数の（部分）集合間、および／または、データソースの複数の（部分）集合間のデータ交換が、データシンク（部分）集合ごとに（データシンク調停の場合）、またはデータソース（部分）集合ごとに（データソース調停の場合）、その都度少なくとも１つの調停ユニットの使用により行うことが可能である場合に、有利である。これにより、異なるデータソース集合間および異なるデータシンク集合間の、よりフレキシブルなデータ転送が可能である。また、さらなる別の好適な構成において、複数の（部分）集合の幾つかを、さらにフレキシブルなデータ交換のために区別することも可能である。
【００１１】
さらなる別の好適な実施形態において、データシンク調停の場合には、選択された（第１の）データシンクの要求信号は、選択された（第１の）データソースの有効情報に影響を与える。すなわち、例えばソースへのデータシンクのメッセージによって、メッセージがデータソース内で有効なままであるか、または無効となるべきかについて設定することが可能であり、これにより、例えば、所望の多重読み出し工程が可能となりうるが、望まれない多重読み出し工程も防止され得る。同様に、データソース調停の場合には、好適な構成において、選択された（第１の）データシンクの肯定応答信号による、選択された（第１の）データソースの有効情報に対する影響が構想され、データシンク調停の場合について記載したのと同じ効果が得られる。
【００１２】
また、データノードの（特にデータシンクの）要求信号が、調停ユニットを進めること（Ｗｅｉｔｅｒｓｃｈａｌｔｅｎ）に作用しうるという選択肢が存在する場合にも、有利である。これにより、場合によっては、一定の周期時間という利点を断念することになるが、いずれにせよ、有利に、例えば、データソースとデータシンクとの間で、ある程度の時間の間継続的なデータ転送が行われ、その間調停ユニットが増分されないというさらなる別の伝送オプションが生れる。
【００１３】
さらなる別の好適な構成において、調停ユニットは、（例えば、ＣＰＵにより決定／制御される）所定のイベントの際に、特定のデータシンクまたは特定のデータソースを調停し、この強制的な調停の後に初めて、後続のデータシンクまたはデータソースを、引き続き所定の順番にしたがって選択する。これにより、重要なイベント、例えば、タイムクリティカルな（ｚｅｉｔｋｒｉｔｉｓｃｈ）イベントの際に、フレキシブルに、所定の順番から離れる可能であり、このような（予定外の）調停の後で、固定の順番による方法が、再び開始される。
【００１４】
特に好適な実施形態において、書き込み工程、および／または、読み出し工程が、調停のクロックにより割り当てられているより多くの時間を必要とする場合にも本発明にかかるデータ交換が可能であることで、パイプラインレジスタ、もしくは、類似した遅延ユニットにより、または、遅延方法により、データ交換のデータを回路構成内で遅延させることができる。
【図面の簡単な説明】
【００１５】
本発明の実施形態が図面に示されており、以下の記載において、より詳細に解説される。図は単に例示的なものであり、発明の思想全般を限定するものではない。その際、符号の下２桁の数字が同じである場合は、同一の、または比較可能な構成要素を示す。
【図１】カウンタによるデータシンクの調停が行われるデータ交換のための回路構成示す。
【図２】パイプラインレジスタを用いたデータ交換のための回路構成を示す。
【図３】並行アクセスが可能なデータ交換のための回路構成を示す。
【図４】カウンタによるデータソースの調停が行われるデータ交換のための回路構成を示す。
【発明を実施するための形態】
【００１６】
本明細書では、データソース、データシンク、データノードという概念は以下の意味において利用される。すなわち、データソースは、データを準備するデータノードであり、データシンクは、データを受信するデータノードである。例えばハウジング内、または、チップ内に配置された機能ユニットが、データソースとして、および、データシンクとして機能しうること、そして、このことが多重に実現されていること（ｄａｓ  ａｕｃｈ  ｍｅｈｒｆａｃｈ）に注意されたい。当該ユニットは、データソースとデータシンクとの間の本発明にかかるデータ交換について、対応する数のデータシンクおよびデータソースに分散されて観察される。
【００１７】
図１は、本発明にかかる回路構成のための実施形態を示す。この場合、回路構成１００は、データシンク１１１、１１２、および１１３と、データソース１２１、１２２、および１２３を有する。データシンク１１１、１１２、および１１３には、１‐ｏｆ‐ｍデコーダ（１‐ａｕｓ‐ｍ‐Ｄｅｋｏｄｅｒ）１１４と、マルチプレクサ１１５と、カウンタ１１６とが割り当てられており、データソース１２１、１２２、および１２３には、１‐ｏｆ‐ｎデコーダ（１‐ａｕｓ‐ｎ‐Ｄｅｋｏｄｅｒ）１２４と、マルチプレクサ１２５とが割り当てられている。１‐ｏｆ‐ｍデコーダ１１４は、選択信号を用いたデータシンク１１１、１１２、および１１３のアドレス制御選択のために、データシンク１１１、１１２、および１１３に対するアクセス権を有し、通信線１０３を介して、マルチプレクサ１１５の選択入力口、および、カウンタ１１６と接続している。データシンク１１１、１１２、１１３はそれぞれ、マルチプレクサ１１５の入力口と接続されている。マルチプレクサ１１５の出力口は、通信線１０２と接続されており、この通信線１０２は、１‐ｏｆ‐ｎデコーダ１２４と、マルチプレクサ１２５の選択入力口と接続されている。１‐ｏｆ‐ｎデコーダ１２４は、データソース１２１、１２２、および１２３のアドレス制御選択のために、データソース１２１、１２２、および１２３に対するアクセス権を有する。データソース１２１、１２２、および１２３はそれぞれ、マルチプレクサ１２５の入力口と接続されている。さらに、マルチプレクサ１２５の出力口は、通信線１０１と接続されており、この通信線１０１は、データシンク１１、１１２、および１１３それぞれと接続されている。
【００１８】
本発明にかかる回路構成は、一般に、ｎ＋ｍ個のデータノード（データソース数ｎ＞０、データシンク数ｍ＞０）から構成され、図１の実施形態では３＋３＝６個のデータノード１１１、１１２、１１３、１２１、１２２、１２３から構成される。この場合、ｎ＝３個は、データソース１２１、１２２、および１２３の数であり、ｍ＝３は、データシンク１１１、１１２、１１３の数である。さらに、回路構成には、調停ユニット、図１では例えば、調停のための選択ユニットとしてのモジュロｍカウンタ１１６が属している。本実施形態では、カウンタ１１６は、設定可能なクロックによって、カウンタ１１６の値をｍ−１まで増分し、再び０で始まる。１‐ｏｆ‐ｍデコーダ１１４を介して、カウンタ１１６の各カウント値によって正確に、データシンク１１１、１１２、１１３から１つのデータシンクが選択される。この選択されたデータシンクは、マルチプレクサ１１５に対して、アドレス、および、読み出し要求信号（Ｒｅａｄ‐Ｒｅｑｕｅｓｔ‐Ｓｉｇｎａｌ）を与え、このマルチプレクサ１１５は、選択されたデータシンクの選択されたブロックのデータを、当該アドレスおよび読み出し要求信号と共に、通信線１０２を介して転送する。
【００１９】
１−ｏｆ−ｎデコーダ１２４では、上記アドレスから正確に、データソース１２１、１２２，１２３から１つのデータソースが選択され、このデータソースには、データ準備信号と共に、読み出し要求が割り当てられる。読み出し要求およびデータ準備信号から、読み出し要求および読み出し準備信号がアクティブ（ａｋｔｉｖ）な場合に、有効なデータを示す有効信号が形成される。この選択されたデータソースは、マルチプレクサ１２５に対して要求されたデータを出力し、このマルチプレクサ１２５は、選択されたデータソースのデータが正確に、有効情報（肯定応答信号）と共に、通信線１０１を介して、全てのデータソース１１１、１１２、１１３へと転送されるようにする。選択されたデータシンクは、有効なデータを格納する。
【００２０】
図１では、データシンク１１１、１１２、１１３、および、データソース１２１、１２２、１２３の選択に関しては、１‐ｏｆ‐ｍデコーダ１１４と、１‐ｏｆ‐ｎデコーダ１２４と、マルチプレクサ１２５、１１５が例として記載され、データシンク１１１、１１２、１１３の調停に関しては、カウンタ１１６が例として記載される。代替的に、本発明にかかるデータ交換の選択および調停を実行することが可能な他の回路構成も実現される。
【００２１】
提示される実施形態では、選択されたデータシンクの読み出し要求信号が、選択されたデータソースのデータの有効情報に影響を与える場合に、有利である。カウンタ１１６は、要求が存在していない場合にも順々に各データシンクを選択するので、このことにより、望まれないデータ格納や、データの誤った上書きが防止される。読み出し要求が存在する場合には、データソース内で、データが読み出し済みとしてマーク付けされ、これに伴って、ソースにより新しいデータが準備される（無効情報「ｉｎｖａｌｉｄ」が、「ｖａｌｉｄ」に変わる）まで、無効となる。データと共に伝送される有効信号は、成功した伝送についての肯定応答信号であり、データシンクにおいては格納信号としての役目を果たす。本発明のさらなる別の構成において、２ビットｘｙによる、データシンクの各読み出し要求信号を、要求信号として選択することが可能である。ここでは、表１に記載するように、この２ビットｘｙの４つの想定される状態は、以下の意味を有しうる。
【００２２】
表１：データシンクの調停の際の読み出し要求ビットｘｙの符号化の可能性
【００２３】
【表１】
0005443586.tif 000002
【００２４】
表１では、値は、２つのビットｘｙを十進法で表したものとして理解される。値０の場合には、読み出し要求は存在せず、データは有効なままソースで保持されている。値３の場合には、複数の読み出し工程が連続して設けられており、データは、この場合も同様に有効なままである。他の２つの場合（値１および値２）には、データは、読み出し後に無効となり、同一アドレスにおいて、当該データが次の読み出し工程のために置き換えられる必要がある。ここでは、値１の場合は、例えば、図１で記載されるデータ交換−工程に相当する。
【００２５】
バーストリード（ｂｕｒｓｔ  ｒｅａｄ）（値２）の場合には、その都度次のデータが、既に次のクロック周期において利用可能である必要がある。この場合、送信されるアドレスが変わることにより、新しいソースからの新しいデータが提供されるということも可能である。さらに、カウンタ１１６が増分されないこと、または、一般に、バーストリードがアクティブである限りは、調停ユニットが引き続いて作動しないことに注意されたい。すなわち、特定のデータシンクが選択されたままである。好適に、このような構成例の実現によって、バーストリードの機能も実現可能であるが、いずれにせよ、記載されるバースト・オプション（ｂｕｒｓｔ  ｏｐｔｉｏｎ）を含む構成においては、簡素な場合（「ｎｏ  ｒｅｑｕｅｓｔ）」または「ｓｉｎｇｌｅ  ｒｅａｄ」のみ）に有利であったように、一定の周期時間は、もはや提示されえない。
【００２６】
制御信号ｘおよびｙが、対応するアドレスと共に伝送され、遅延の場合（例えば、パイプライン段による遅延、以下の記載を参照）にも、同じ形態で遅延させられる。このことは、同様に、伝送されるデータとの関連で、有効信号にも当てはまる。バースト・アクセス（ｂｕｒｓｔ‐Ｚｕｇｒｉｆｆ）の際は、クロックごとのデータの最大データスループットが、この速度をデータソースおよびデータシンクがサポートする場合に達成されうる。
【００２７】
当然のことながら、他の、特によりコストがかかる要求信号の変形も可能であり、提示される２ビットの変形、または、さらに簡素な１ビットの変形（「ｎｏ  ｒｅｑｕｅｓｔ」または「ｓｉｇｎａｌ  ｒｅａｄ」）は、最も簡素な基本変形である。
【００２８】
本発明にかかる方法、または、本発明にかかる回路構成のさらなる別の好適な実施形態において、調停のために利用されるカウンタ１１６は、任意のコードでカウントされ、または、例えば、値ｍ−１に達する前に再び０に設定されることにより、各周期に全てのデータシンクを選択する必要はない。これにより、例えば、データシンクによっては、他のデータシンクよりも頻繁に要求が満たされるということも起こり得る。これにより、タイムクリティカルなシステムでは、場合によっては、並行化（Ｐａｒａｌｌｅｌｉｓｉｅｒｕｎｇ）のための追加的なハードウェアによる分散を行う必要がない。
【００２９】
さらに、さらなる別の実施形態において、例えば、カウンタ１１６を特定の値に対してイベント駆動で設定し、その特定の値からさらに増分するというような、特定のデータシンクについての要求に応じて、加速を意味する調停が可能である。したがって、例えば、外部に存在するＣＰＵが、特定のイベントにしたがって、カウンタ１１６を特定の値に設定し、これにより、シンクの調停を強制的に行わせるが、その際に、他のシンクは、場合によっては飛ばされるであろう。設定された値から、例えば、通常の形態での増分が行われる。当然のことながら、同じ原則が、以下に記載する特定のデータソースの調停を強制するためのソース調停の場合にも当てはまる。また、調停ユニットのイベント駆動型の設定は、カウンタ１１６の例に限定されず、むしろ、他に実現される調停ユニットのためにも有利でありうる。
【００３０】
このような実施形態において、調停されるデータノードに対するフレキシブルなアクセスも可能であるが、順番が固定で設定される（バースト・オプションを含まない）実施形態とは反対に、一定の周期時間が提示されえない。適用に応じて、２つの構成形態は有利でありうる。
【００３１】
本発明にかかるデータ交換のさらなる別の好適な構成において、１クロック周期内での、データの要求および格納のための時間が十分ではない場合に、アドレス経路内、または、要求のための通信接続線１０１内、および／または、データ準備経路内、または、通信接続線１０２内に、パイプラインレジスタ（Ｐｉｐｅｌｉｎｅｒｅｇｉｓｔｅｒ）、または、比較可能な遅延ユニットを挿入することが可能である。図２には、パイプラインレジスタを備えた本発明にかかる回路構成の、この種の実施形態が示される。
【００３２】
この場合、図２の回路構成２００は、図１の回路構成１００と同様に、データシンク２１１、２１２、２１３と、データソース２２１、２２２、２２３と、通信線２０１、２０２、２０３と、１‐ｏｆ‐ｍデコーダ２１４と、１‐ｏｆ‐ｎデコーダ２２４と、マルチプレクサ２１５、２２５と、カウンタ２１６とを有する。これら構成要素は、図１で記載されたように、互いに結合または接続されている。追加的に、図２では、パイプラインレジスタ２９１が通信接続線内２０１に組み込まれ、パイプラインレジスタ２９２が通信接続線２０２内に組み込まれる。
【００３３】
パイプラインレジスタ２９１および２９２は任意の深度を有し、例えば、通信接続線１０１ではデータがＢクロック分だけ遅延する一方、通信接続線１０２ではデータがＡクロック分だけ遅延する。この場合、選択されたデータシンクへのデータ格納は、Ａ＋Ｂクロック分だけ遅延させられる必要がある。しかしながら、カウンタ１１６は、その間に自身の値を保持する必要はなく、各クロックによって増分され、この場合にも、例えばｍクロック後に、全てのシンク１１１、１１２、１１３が、厳密に１回問い合わせを受けるようにする。
【００３４】
ここで、パイプライン段は、例えば、階層的に構成されたマルチプレクサにおいて、様々な段階に分散されうる。その際、マルチプレクサの入力口から出力口への各経路が、厳密に同じ数のパイプラインレジスタ段により遅延させられることに注意されたい。同じことが、他の遅延対策についても当てはまる。さらに重要なことは、選択されたデータシンクの選択信号が、選択されたデータソースによる応答において、パイプラインレジスタにより遅延させられカウンタが引き続き作動する場合に、第２の選択信号として構成され、当該第２の選択信号は、上記の図１で記載されたデータ交換工程の時間、プラス（ｐｌｕｓ）、パイプラインレジスタ２９１および２９２の遅延の分だけ遅延させられることである。選択されたデータソースによる応答の際に、選択されたデータシンクの第２の選択信号が遅延させられるという構成は、パイプラインレジスタまたは他の遅延ユニットを利用することと無関係であっても、有利でありうる。パイプラインレジスタによるデータ遅延が行われ、および／または、選択信号の調整が行われる対応する構成は、データソース調停の場合にも同様に有利である。
【００３５】
本発明にかかるデータ交換のさらなる別の構成において、データシンクの集合ｍを、同じ大きさまたは異なる大きさの複数の（部分）集合ｍ１、ｍ２、…に分割し、これら（部分）集合のそれぞれのために、並行動作のためのカウンタを提供することが可能である。すなわち、これら（部分）集合のそれぞれに、調停ユニットが割り当てられる。この構成の利点は、複数のデータ転送が同時に処理され得ることであり、かつ、構成全体の最大データスループットが、最大部分集合ｍ１、ｍ２、…、ｍｐにより決定されることである。
【００３６】
図３には、ｐ＝２の場合の変形における、本発明にかかる構成の対応する構成が示されている。ここで、回路構成３００は、データシンク３１１、３１２、３１３、３３１、３３２、３３３と、データソース３２１、３２２、３２３と、１‐ｏｆ‐ｍ１デコーダ３１４と、１‐ｏｆ‐ｍ２デコーダ３３４と、１‐ｏｆ‐ｎ１デコーダ３２４と、１‐ｏｆ‐ｎ２デコーダ３２８と、マルチプレクサ３１５、３２５、３２７、３３５と、カウンタ３１６および３３６と、通信線３０１〜３０６とを有する。
【００３７】
１‐ｏｆ‐ｍ１デコーダ３１４は、データシンク３１１、３１２、３１３に対するアクセス権を有し、通信線３０３を介して、マルチプレクサ３１５の選択入力口と、カウンタ３１６と接続されている。データシンク３１１、３１２、および３１３はそれぞれ、マルチプレクサ３１５の入力口と接続されている。マルチプレクサ３１５の出力口は、通信線３０２と接続され、この通信線３０２は、１‐ｏｆ‐ｎ１デコーダ３２４と、マルチプレクサ３２５の選択入力口とも接続されている。１‐ｏｆ‐ｎ１デコーダ３２４は、データソース３２１、３２２、および３２３に対するアクセス権を有する。データソース３２１、３２２、３２３はそれぞれ、マルチプレクサ３２５の入力口と接続され、それぞれ同じ通信接続線を介して、マルチプレクサ３２７の入力口と接続されている。さらに、マルチプレクサ３２５の出力口は、通信接続線３０１と接続され、この通信線３０１は、データシンク３１１、３１２、３１３それぞれと接続されている。
【００３８】
１−ｏｆ‐ｍ２デコーダ３３４は、データシンク３３１、３３２、３３３に対するアクセス権を有し、通信線３０６を介して、マルチプレクサ３３５の選択入力口と、カウンタ３３６と接続されている。データシンク３３１、３３２、３３３はそれぞれ、マルチプレクサ３３５の入力口と接続されている。マルチプレクサ３３５の出力口は、通信線３０５と接続され、この通信線３０５は、１‐ｏｆ‐ｎ２デコーダ３２８と、マルチプレクサ３２７の選択入力口と接続されている。１‐ｏｆ‐ｎ２デコーダ３２８は、データソース３２１、３２２、および３２３に対するアクセス権を有する。マルチプレクサ３２７の出力口は、通信接続線３０４と接続され、この通信線３０４は、データシンク３３１、３３２、３３３それぞれと接続されている。
【００３９】
本実施形態では、２つのカウンタ３１６および３３６によって、データシンク３１１、３１２、３１３、または、３３１、３３２、３３３のうちの２つの（部分）集合によって、データソース３２１、３２２、３２３の、同一または各（部分）集合ｎ１およびｎ２を選択することが可能である。原則的に同じデータソースからの読み出しが同時に可能であるため、２つの異なるシンクが同じデータを処理することが可能である。同じデータソースに対する読み出しアクセスが時間的に連続して行われる場合に、第２の読み出し工程は無効であり、または、場合によっては、データソースがその間に新しいデータを準備したためにデータが異っている。
【００４０】
示される実施形態では、異なるデータシンクによる、同じデータソースへの同時アクセスの場合には、衝突の問題が発生するであろう。したがって、（例えば、異なる（部分）集合の調停の決定によって、または、例えば、データシンク部分集合のうちの１つから、もしくは、特定のデータシンクにより、各ソースが問い合わせを受けることによって、このようなケースが防止される必要があり、または、例えば、ここで示される実施形態と比較して、さらなる別のデータソース出力、プラス（ｐｌｕｓ）、対応する接続によって、回路構成が調整される必要がある。
【００４１】
図１のカウンタ１１６および１‐ｏｆ‐ｍデコーダ１１５による、データシンク１１１、１１２、１１３の選択の代わりに、反対に、ｎ個のデータソースを調停することも可能である。図４は、これに対応して、本発明にかかる回路構成の構成を示している。ここでは、回路構成４００は、データシンク４１１、４１２、４１３と、データソース４２１、４２２、４２３と、通信接続線４０１、４０２、４０３、および４０４と、１‐ｏｆ‐ｍデコーダ４１４と、１‐ｏｆ‐ｎデコーダ４２４と、マルチプレクサ４１５、４２５、４２７と、カウンタ４２６とを有する。１‐ｏｆ‐ｍデコーダ４１４は、データシンク４１１、４１２、４１３に対するアクセス権を有する。データシンク４１１、４１２、４１３はそれぞれ、マルチプレクサ４１５の入力口と接続されている。マルチプレクサ４１５の出力口は、通信接続線４０２と接続されており、この通信接続線４０２は、データソース４２１、４２２、および４２３と接続されている。１‐ｏｆ‐ｎデコーダ４２４は、データソース４２１、４２２、４２３に対するアクセス権を有し、接続線４０４を介して、マルチプレクサ４２５の選択入力口と、マルチプレクサ４２７の選択入力口と、カウンタ４２６と接続されている。データソース４２１、４２２、４２３はそれぞれ、マルチプレクサ４２５の入力口と、それぞれ同じ通信線を介して、マルチプレクサ４２７の入力口と接続されている。さらに、マルチプレクサ４２５の出力口は、通信接続４０１と接続され、この接続線４０１は、データシンク１１１、１１２、１１３それぞれと接続されている。さらに、マルチプレクサ４２７の出力口は、通信線４０３を介して、１−ｏｆ−ｍデコーダ４１４と、マルチプレクサ４１５の選択入力口と接続されている。
【００４２】
マルチプレクサ、デコーダ、または、カウンタの機能形態は、図１のデータシンク調停について記載したものと同様である。しかしながら、本実施形態（回路構成４００）では、各ソースがデータを有し、かつ、これに関連して書き込み要求（例えば、要求信号）を有しているか（これは先に解説した有効情報により条件付けられるが）ということに関係なく、全てのデータソース４２１、４２２、４２３が、決まった順番で順々に、本実施形態ではカウンタ４２６によって調停され／選択される。各選択されたデータソースは、全てのデータシンク４１１、４１２、４１３に対して、通信線４０１を介して、準備されたデータを、先に言及した有効信号と共に、全てのデータソースへと伝送し、追加的に、通信線４０３を介して、１‐ｏｆ‐ｍデコーダ４１４へとアドレスを伝送する。これにより選択されたデータシンクは、上記アドレスにより形成される選択信号を獲得する。データシンクに存在する準備態勢信号（ｒｅａｄ  ｒｅｑｕｅｓｔ）は、当該データシンクが新しいデータを受信する準備ができているかどうかを示す。一緒に伝送される有効信号の有効情報と、データを受け取るためのシンクの準備態勢とから、書き込み信号（ｗｒｉｔｅ−sｉｇｎａｌ）が生成される。この書き込み信号によって、データがメモリ内に取り込まれ、同時に、選択されたデータシンクの読み出し要求信号（Ｒｅａｄ‐Ｒｅｑｕｅｓｔ‐Ｓｉｇｎａｌ）がリセットされる。同時に、書き込み信号は、成功した伝送の肯定応答信号であり、選択されたデータシンクによって選択されたデータソースへと送り返されるが、すなわち、当該データソースにおいて有効情報に影響を与えるために、具体的には、データを読み出し済みとマーク付けし、書き込み要求をリセットするために、当該データソースへと送り返される。
【００４３】
ソース４２１、４２２、４２３の調停の本構成においても、図２で記載したように、パイプライン段、または他の遅延の仕組みを介した信号の遅延が可能である。ここで、データソースの選択信号が、マーキング信号「読み出し済み」を形成するために、送り返される肯定応答信号によりデータシンクへのデータ経路が遅延させられるのと同じ長さのクロック分だけ、遅延させられることに注意されたい。この遅延させられる選択信号は、マーク付けを行うために、肯定応答信号と連携している。これにより、パイプライン段による遅延の際に、さらなる別のデータソースがその間に既にアービタ（カウンタ）４２６により要求を満たされる場合にも、正しいソースのマーク付けが可能である。
【００４４】
図４のデータソース４２１、４２２、４２３の調停の実施形態においても、データシンク４１１、４１２、４１３のうちの複数のデータシンクに対して、データが伝送されうる。アドレスに加えて、要求信号が、表２に例示するような、少なくとも２つのビットｘｙの書き込み要求信号として伝送される必要がある。ここでは、ソースの書き込み要求は要求信号であり、シンクの読み出し要求は肯定応答信号である。
【００４５】
表２は、データシンク調停に関する図１に類似して、データソース調停に関している。値０の場合には、要求が存在せず、データがデータソースにより準備されず／データソースのデータは有効ではない。値１の場合には、図４で記載したようにデータ交換が行われる。したがって、例えば、１ビット（０は「ｎｏ  ｒｅｑｕｅｓｔ」、１は「ｓｉｇｎａｌ  ｗｒｉｔｅ」）による、簡素な要求信号形成が構想されうる。ソース調停の実施形態では、さらなる別の値２および３は、要求信号のための２ビットの変形であり、例えば、バーストライト（Ｂｕｒｓｔ  Ｗｒｉｔｅ）および、マルチプルライト（Ｍｕｌｔｉｐｌｅ  ｗｒｉｔｅ）というオプションを可能にする。
【００４６】
表２：データソースの調停の際の書き込み要求ビットｘｙの符号化の可能性
【００４７】
【表２】
0005443586.tif 000003
【００４８】
バーストライト・オプションの場合には、準備されたデータが、シンクの肯定応答の後にソース内で無効となり、新しいデータが即座に準備され伝送される。さらに、データソースが異なるシンクに伝送したい場合には、場合によっては新しいアドレスも伝送され得る。バーストライト工程の際には、カウンタは増分されず、または調停は進められず、この実施形態では再び、バーストリードの場合について先に記載したように、フレキシブルなデータ伝送のことを考えて、好適な一定の周期時間を失うことになる。オプション・マルチプルライトについては、要求されるデータが、ソースでの準備の後に有効なる。
【００４９】
データソース４２１、４２２、４２３の調停の場合にも、並行的に機能する複数の構成に分割するという選択肢が生まれる。さらに、データソースは、複数の（部分）集合に分割され、各（部分）集合には、調停ユニット、例えばカウンタが割り当てられ、当該（部分）集合それぞれにおけるデータソースを選択する。データシンク４１１、４１２、４１３への伝送は、並行するデータバスまたはアドレスバス上で行われる。一般に、全ての構成例（例えば、パイプライニング（ｐｉｐｅｌｉｎｉｎｇ）、複数の並行的な構成、動的な調停、可変的なカウンタ・コード、第２の選択信号）は、シンク調停の場合と同様に、ソース調停の場合の本発明にかかるデータ交換についても適用される。
【図１】
0005443586.tif 000004
【図２】
0005443586.tif 000005
【図３】
0005443586.tif 000006
【図４】
0005443586.tif 000007