(57)【要約】本発明は、Ｉ／Ｏサポートを有する記憶構造に対する方法に関する。本発明の課題は、時間的に厳しい条件下で作動するプロセッサ機能ユニットとＩ／Ｏ機能ユニットに対応するデータアクセス時の優先権を僅かなプログラム技術的な経費で提供することにある。この課題は、入力メモリ領域がプロセッサメモリ内で取り決められていて、Ｉ／Ｏ機能ユニットだけがこの入力メモリ領域内に書き込みでき、プロセッサ機能ユニットだけがこの入力メモリ領域から読み取りできること、及び、出力メモリ領域が取り決められていて、Ｉ／Ｏ機能ユニットだけがこの出力メモリ領域から読み取りでき、プロセッサ機能ユニットだけがこの出力メモリ領域内に書き込みできることによって解決される。
2004511851.tif 000002
【特許請求の範囲】
【請求項１】
Ｉ／Ｏサポートを有するメモリ構造に対する方法にあって、この場合、この構造は、プロセッサユニットのデータのメモリをプロセッサメモリ内で実現し、このプロセッサメモリの入出力が、Ｉ／Ｏユニットを通じて実現する方法において、入力メモリ領域（４）がプロセッサメモリ（１）内で取り決められていて、Ｉ／Ｏ機能ユニット（３）だけがこの入力メモリ領域内に書き込みでき、プロセッサ機能ユニット（２）だけがこの入力メモリ領域（３）から読み取りできること、及び、出力メモリ領域（３）が取り決められていて、Ｉ／Ｏ機能ユニット（３）だけがこの出力メモリ領域（３）から読み取りでき、プロセッサ機能ユニット（２）だけがこの出力メモリ領域（５）内に書き込みできることを特徴とする方法。
【請求項２】
プロセッサメモリ（１）の入力メモリ領域（４）と出力メモリ領域（５）内への読取りと書込み時のデータアクセスが、Ｉ／Ｏ機能ユニット（３）とプロセッサ機能ユニット（２）によって独自にその都度実現されることを特徴とする請求項１に記載の方法。
【請求項３】
プロセッサメモリ（１）の入力メモリ領域（４）と出力メモリ領域（５）内への読取りと書込み時のデータアクセスが、Ｉ／Ｏ機能ユニット（３）とプロセッサ機能ユニット（２）によってプロセッサメモリのライン長に構造的に一致するブロック長のブロックでその都度実現されることを特徴とする請求項２に記載の方法。
【請求項４】
プロセッサ機能ユニットデータポートとＩ／Ｏ機能ユニットデータポートが、１本のデータバスを介して少なくとも間接的にプロセッサメモリのプロセッサメモリデータポートに接続されているＩ／Ｏサポートを有するメモリ構造に対する方法を実施する装置において、プロセッサ機能ユニットデータポート（６）が第１プロセッサメモリデータポート（８）に接続されていること、及びＩ／Ｏ機能ユニットデータポート（７）が第２プロセッサメモリデータポート（９）に接続されていることを特徴とする装置。
【請求項５】
Ｉ／Ｏアドレス発生器（１５）がＩ／Ｏ機能ユニット（３）内に配置されていて、プロセッサアドレス発生器（１４）がプロセッサ機能ユニット（２）内に配置されていること、アドレスポートプロセッサ機能ユニット（１０）が第１プロセッサメモリアドレスポート（１２）に接続されていること、アドレスポートＩ／Ｏ機能ユニット（１１）が第２プロセッサメモリアドレスポート（１３）に接続されていること、Ｉ／Ｏ機能ユニット（２）のＩ／ＯＲＥＡＤ／ＷＲＩＴＥポート（１９）がプロセッサメモリ（１）の第１プロセッサメモリＲＥＡＤ／ＷＲＩＴＥポート（２０）に接続されていること、プロセッサ機能ユニット（２）のプロセッサ機能ユニット（２）のプロセッサＲＥＡＤ／ＷＲＩＴＥポート（１８）がプロセッサメモリ（１）の第２プロセッサメモリＲＥＡＤ／ＷＲＩＴＥポート（２１）に接続されていることを特徴とする請求項４に記載の装置。
【請求項６】
Ｉ／Ｏブロック長ポート（１７）が、Ｉ／Ｏアドレス発生器（１５）に対して配置されていて、プロセッサブロック長ポート（１６）が、プロセッサアドレスポート（１６）に対して配置されていることを特徴とする請求項５に記載の装置。
【請求項７】
第１ＦＩＦＯメモリ（２２）と第２ＦＩＦＯメモリ（２３）が、プロセッサメモリ（１）内に配置されていることを特徴とする請求項４〜６のいずれか１項に記載の装置。
【発明の詳細な説明】
【０００１】
本発明は、プロセッサメモリでデータを入出力する方法に関する。この方法の場合、データが、プロセッサユニットからプロセッサメモリ内に記憶され、このプロセッサメモリから読み出される。そして、これらのデータが、Ｉ／Ｏユニットを経由して入出力される。
さらに本発明は、請求項４の上位概念に記載のこの方法を実施する装置に関する。
【０００２】
大量のデータ伝送を達成する必要のある機能ユニットによる計算時に、メモリ監視タスクの負荷がＣＰＵに強くかかることを阻止するため、ダイレクト・メモリ・アクセス（ＤＭＡ）ユニットを使用することが一般的である。ＤＭＡユニットは、この監視タスクを引き受け、メモリをアドレス側とデータ側自体で制御する。
【０００３】
この手段の欠点は、とりわけ時間的に厳しい条件下で作動する機能ユニット、例えばプロセッサユニット用のより多くの機能ユニットによる動作時に、データアクセス時の適切な優先権を保証するために、高いプログラム技術的な経費を実現する必要がある点である。さらに、必要なメモリアクセスの準備までの所定の時間遅延がＤＭＡの要求時に常に発生する点が欠点である。
【０００４】
本発明の課題は、時間的に厳しく動作する機能ユニット、例えばプロセッサユニットにほとんど遅延のない直接のメモリアクセスを可能にすることにある。この場合、その他の機能ユニット、例えばＩ／Ｏ機能ユニットの動作時に直接のメモリアクセスによって発生しうるデータ衝突が回避される。
【０００５】
この課題は、本発明の方法にあっては、入力メモリ領域がプロセッサメモリ内で取り決められていて、Ｉ／Ｏ機能ユニットだけがこの入力メモリ領域内に書き込みでき、プロセッサ機能ユニットだけがこの入力メモリ領域から読み取りできること、及び、出力メモリ領域が取り決められていて、Ｉ／Ｏ機能ユニットだけがこの出力メモリ領域から読み取りでき、プロセッサ機能ユニットだけがこの出力メモリ領域内に書き込みできることによって解決される。
【０００６】
この場合、遅延のないＲＥＡＤ又はＷＲＩＴＥのメモリアクセスが、メモリ領域を機能ユニットに対して直接割当てることによって保証される。さらに、Ｉ／Ｏユニットとプロセッサユニットの双方向のデータパスのレイアウトが確定されることによって、データ衝突が、メモリ領域ごとに可能なＲＥＡＤ／ＷＲＩＴＥのアクセスに対して基本的に取り決めることによって回避される。
【０００７】
この課題は、本発明の方法の重要な別形態にあっては、プロセッサメモリの入力メモリ領域と出力メモリ領域内への又はからの読取りと書込み時のデータアクセスが、Ｉ／Ｏユニットとプロセッサユニットによって独自にその都度実現されることによって解決される。これによって、アドレス監視タスクによる負荷がＣＰＵにかかることが回避される。
【０００８】
この課題は、本発明の特別な別形態にあっては、プロセッサメモリの入力メモリ領域と出力メモリ領域内への又はからの読取りと書込み時のデータアクセスが、Ｉ／Ｏユニットとプロセッサユニットによってプロセッサメモリのライン長に構造的に一致するブロック長のブロックでその都度実現されることによって解決される。多くの場合に又は専ら機能ユニットのデータアクセスが所定のブロック長で実行されるときに、この手段は有効に適用される。こうして、ＣＰＵによって伝送しなければならない命令の数が減少する。
【０００９】
この課題は、本発明の装置にあっては、プロセッサユニットのデータポートがプロセッサメモリの第１データポートに接続されていること、及びＩ／Ｏユニットのデータポートがプロセッサメモリの第２データポートに接続されていることによって解決される。この場合、Ｉ／Ｏ機能ユニットとプロセッサ機能ユニットを直接にデータアクセスする本発明の方法の解決手段を実現するため、プロセッサメモリの対応する多重データポートも実現され、この多重データポートが機能ユニットの対応するデータポートに接続していることが装置で考慮される。
【００１０】
この課題は、本発明のその他の装置にあっては、Ｉ／Ｏアドレス発生器がＩ／Ｏユニット内に配置されていて、プロセッサアドレス発生器がプロセッサユニット内に配置されていることによって解決される。これによって、データアクセスの番地付けの独自の能力が、上述した機能ユニットによって可能になる。この場合、プロセッサメモリが多重アドレスポートを有すること、プロセッサユニットのアドレスポートがプロセッサメモリの第１アドレスポートに接続されていること、及びＩ／Ｏユニットのアドレスポートがプロセッサメモリの第２アドレスポートに接続されていることをさらに実現する必要がある。
【００１１】
さらに、多重ＲＥＡＤ／ＷＲＩＴＥポートもプロセッサメモリで実現され、Ｉ／ＯユニットのＲＥＡＤ／ＷＲＩＴＥポートがプロセッサメモリの第１ＲＥＡＤ／ＷＲＩＴＥポートに接続されていて、プロセッサユニットのＲＥＡＤ／ＷＲＩＴＥポートがプロセッサメモリの第２ＲＥＡＤ／ＷＲＩＴＥポートに接続されていることによって、ＲＥＡＤ／ＷＲＩＴＥの制御も、機能ユニットによって保証される。
【００１２】
この課題は、本発明の優れた装置にあっては、ブロック長ポートがＩ／Ｏアドレス発生器とプロセッサアドレス発生器とにそれぞれ配置されていることによって解決される。これによって、データアクセスの処理すべきブロック長に対する入力可能性が、Ｉ／Ｏユニットとプロセッサユニットによって提供される。
この課題は、本発明の好適な装置にあっては、ＦＩＦＯメモリがプロセッサメモリ内に配置されていることによって解決される。プロセッサユニットのデータパスがプロセッサメモリに直接接続しているので、中間バッファとして機能するＦＩＦＯメモリがプロセッサメモリにも配置される。
【００１３】
以下に、本発明の実施の形態を説明する。付随するプロセッサ機能ユニット２及び付随するＩ／Ｏ機能ユニットを伴うプロセッサメモリ１の概略図が、添付された図から分かる。さらに、Ｉ／Ｏ機能ユニットのアドレスポート１１が、Ｉ／Ｏ機能ユニット３内に配置されていることがこの図から分かる。このアドレスポート１１は、第２プロセッサメモリアドレスポート１３に接続されている。同様に、この第２プロセッサメモリアドレスポート１３は、プロセッサメモリ１に配置されている。Ｉ／Ｏ機能ユニットのアドレスポート１１は、Ｉ／Ｏアドレス発生器１５によって制御される。ブロック長、すなわちデータアクセス中にデータブロック内に存在する連続したデータ数がＩ／Ｏブロック長ポート１７の初期化時にこのＩ／Ｏブロック長ポート１７によってＩ／Ｏアドレス発生器１５に伝えられる。
【００１４】
Ｉ／Ｏ機能ユニット３のＷＲＩＴＥ状態を受取ると、このＩ／Ｏ機能ユニット３に配置されたＩ／ＯＲＥＡＤ／ＷＲＩＴＥポート１９が、ＷＲＩＴＥ状態をこのＩ／ＯＲＥＡＤ／ＷＲＩＴＥポート１９に接続されている第２プロセッサメモリＲＥＡＤ／ＷＲＩＴＥポート２１に出力する。この第２プロセッサメモリＲＥＡＤ／ＷＲＩＴＥポート２１は、プロセッサメモリ１に配置されている。Ｉ／Ｏ機能ユニット３によってプロセッサメモリ１に書込まれた伝送すべきデータブロックのアドレスが、このプロセッサメモリ１の特別な入力メモリ領域４内に存在する。これらのアドレスは、Ｉ／Ｏ機能ユニットアドレスポート１１からこのアドレスポート１１に接続されている第２プロセッサメモリアドレスポート１３に出力される。この第２プロセッサメモリアドレスポート１３は、プロセッサメモリ１に配置されている。こうして、これらのアドレスに割当てられたデータが、Ｉ／Ｏ機能ユニットに配置されているＩ／Ｏ機能ユニットデータポート７からこのＩ／Ｏ機能ユニット３に接続されていてかつプロセッサメモリ１に配置された第２プロセッサメモリデータポート９を経由し、そして同様にプロセッサメモリ１に配置された第２ＦＩＦＯ（先入れ先出し）メモリ２３を経由してプロセッサメモリ１の入力メモリ領域４内に到達する。ここでは、プロセッサ機能ユニット２内でＲＥＡＤデータアクセスによってさらに処理するためのデータが準備されている。
【００１５】
プロセッサ機能ユニット２のＲＥＡＤデータアクセスは、入力メモリ領域の特別なアドレス領域だけに対して実行される。必要なアドレスは、プロセッサアドレス発生器１４によって準備される。このプロセッサアドレス発生器１４は、プロセッサ機能ユニットに配置されていて、そこに同様に配置されたプロセッサブロック長ポート１６によって初期化される。これらのアドレスは、プロセッサ機能ユニットアドレスポート１０に出力され、入力メモリ領域４の番地付けされたメモリセルを制御する。このプロセッサ機能ユニットアドレスポート１０は、プロセッサ機能ユニット２に配置されていて、かつプロセッサメモリ１に配置された第１プロセッサメモリアドレスポート１２に接続されている。プロセッサ機能ユニット２のＲＥＡＤ状態が存在する場合、このプロセッサ機能ユニット２に配置されたプロセッサＲＥＡＤ／ＷＲＩＴＥポート１８が、ＲＥＡＤ状態をこのプロセッサＲＥＡＤ／ＷＲＩＴＥポート１８に接続されている第１プロセッサメモリＲＥＡＤ／ＷＲＩＴＥポート２０に出力する。この第１プロセッサメモリＲＥＡＤ／ＷＲＩＴＥポート２０は、プロセッサメモリ１に配置されている。制御されたアドレスによって割当てられたデータが、プロセッサメモリ１に割当てられた第１ＦＩＦＯメモリ２２と同様にこのプロセッサメモリ１に配置された第１プロセッサメモリデータポート８とこの第１プロセッサメモリデータポート８に接続されているプロセッサ機能ユニット２に配置されたプロセッサ機能ユニットデータポート６とによってさらなる処理のためにこのプロセッサ機能ユニット２内で準備されることが、プロセッサ機能ユニットのＲＥＡＤデータアクセスを実行するのに必要な前提条件である。
【００１６】
データアクセス中に存在するプロセッサメモリ１の全てのメモリセルが、出力メモリ領域５内に存在し、これらの対応するアドレスだけがアドレス発生器１４，１５によって準備されるという取り決めを考慮して、プロセッサ機能ユニット２のＷＲＩＴＥデータアクセスとＩ／Ｏ機能ユニット３のＲＥＡＤデータアクセスとの相補処理（Ｋｏｍｐｌｅｍｅｎｔａｅｒｖｏｒｇａｎｇ）が、入力メモリ領域４に関して書込まれているＩ／Ｏ機能ユニット３のＷＲＩＴＥデータアクセスとプロセッサ機能ユニット２のＲＥＡＤデータアクセスと同様に実行される。
【図面の簡単な説明】
【図１】
付随するプロセッサ機能ユニット２及び付随するＩ／Ｏ機能ユニットを伴うプロセッサメモリ１を示す。
【符号の説明】
１　　　プロセッサメモリ
２　　　プロセッサ機能ユニット
３　　　Ｉ／Ｏ機能ユニット
４　　　入力メモリ領域
５　　　出力メモリ領域
６　　　プロセッサ機能ユニットデータポート
７　　　Ｉ／Ｏ機能ユニットデータポート
８　　　第１プロセッサメモリデータポート
９　　　第２プロセッサメモリデータポート
１０　　プロセッサ機能ユニットアドレスポート
１１　　Ｉ／Ｏ機能ユニットアドレスポート
１２　　第１プロセッサメモリアドレスポート
１３　　第２プロセッサメモリアドレスポート
１４　　プロセッサアドレス発生器
１５　　Ｉ／Ｏアドレス発生器
１６　　プロセッサブロック長ポート
１７　　Ｉ／Ｏブロック長ポート
１８　　プロセッサＲＥＡＤ／ＷＲＩＴＥポート
１９　　Ｉ／ＯＲＥＡＤ／ＷＲＩＴＥポート
２０　　第１プロセッサメモリＲＥＡＤ／ＷＲＩＴＥポート
２１　　第２プロセッサメモリＲＥＡＤ／ＷＲＩＴＥポート
２２　　第１ＦＩＦＯメモリ
２３　　第２ＦＩＦＯメモリ
【国際公開パンフレット】
2004511851.tif 000003
2004511851.tif 000004
2004511851.tif 000005
2004511851.tif 000006
2004511851.tif 000007
2004511851.tif 000008
2004511851.tif 000009
2004511851.tif 000010
2004511851.tif 000011
2004511851.tif 000012
2004511851.tif 000013
2004511851.tif 000014
2004511851.tif 000015
2004511851.tif 000016
【国際公開パンフレット（コレクトバージョン）】
2004511851.tif 000017
2004511851.tif 000018
【手続補正書】
【提出日】平成15年3月6日(2003.3.6)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】発明の名称
【補正方法】変更
【補正の内容】
【発明の名称】プロセッサメモリでデータを入出力する方法及びこの方法を実施する装置


【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】請求項１
【補正方法】変更
【補正の内容】
【請求項１】
データが、プロセッサユニットからプロセッサメモリ内に記憶され、このプロセッサメモリから読み出され、これらのデータが、Ｉ／Ｏユニットを経由して入出力される、プロセッサメモリでデータを入出力する方法において、
Ｉ／Ｏユニットからのデータがプロセッサメモリ内で専ら特定の入力メモリ領域のアドレス上に書込まれ、この場合、番地付けが、Ｉ／Ｏユニットによって実行され、プロセッサメモリからのデータが、プロセッサユニットによって専ら入力メモリ領域のアドレスから読取られ、この場合、番地付けが、プロセッサユニットによって実行され、プロセッサユニットからのデータが、プロセッサメモリ内で専ら特定の出力メモリ領域のアドレス上に書込まれ、この場合、アドレス付けが、プロセッサユニットによって実行され、プロセッサメモリからのデータが、Ｉ／Ｏユニットによって専ら出力メモリ領域のアドレスから読取られ、この場合、番地付けが、Ｉ／Ｏユニットによって実行されることを特徴とする方法。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、プロセッサメモリでデータを入出力する方法に関する。この方法の場合、データが、プロセッサユニットからプロセッサメモリ内に記憶され、このプロセッサメモリから読み出される。そして、これらのデータが、Ｉ／Ｏユニットを経由して入出力される。
さらに本発明は、請求項４の上位概念に記載のこの方法を実施する装置に関する。
データ伝送を制御する装置及びこれに対応する方法が、ドイツ連邦共和国特許発明第 １９５ ２６ ７９８ 号明細書から公知である。ここでは、データが、第１バッファメモリを経由してデータ処理装置内に入力し、そしてデータが、第２バッファメモリを経由してデータ処理装置から出力する。両バッファメモリが、双方の場合でデータ処理装置によって番地付けされる。この場合、データ処理装置に負担がかかる。特に多数のプロセッサユニットを平行作動して個別に入出力する複数のプロセッサ内に配置するときに、このことは、計算能力を最小限に低下させる負荷になる。
いわゆるＢｉＦＩＦＯ（双方向先入れ先出しレジスタ）が、Ｈａｌｌ Ｊ： ”ＮＥＷ ＦＩＦＯ ＡＲＣＨＩＴＥＣＨＴＵＲＥ ＦＯＲ ＨＩＧＨ ＰＥＲＦＯＲＭＡＮＣＥ ＡＰＰＬＩＣＡＴＩＯＮＳ”及び”Ｌｉｎ Ｊ Ｓ： ＢＩＤＩＲＥＣＴＩＯＮＡＬ ＦＩＦＯ ＩＮ ＴＨＥ ＰＲＯＣＥＳＳＯＲ−ＴＯ−ＰＥＲＩＰＨＡＬ ＣＯＭＭＵＮＩＣＡＴＩＯＮＳ”，双方ともＷｅｓｃｏｎの技術論文， Ｗｅｓｔｅｒｎ Ｐｅｒｉｏｄｉｃａｌｓ Ｃｏ． Ｎｏｒｔｈ Ｈｏｌｌｙｗｏｏｄ， ＵＳ Ｂｄ． ３３，１．１１．１９８９から公知である。このＢｉＦＩＦＯは、プロセッサ内にデータを入力するときにデータを一時記憶する第１レジスタ部分とレジスタからデータを出力する第２レジスタ部分とから構成される。ＦＩＦＯがフラグによって制御されると、一方では値がＦＩＦＯで再プッシュ（Ｗｅｉｔｅｒｒｕｅｃｋｅｎ） され、他方では状態を制御する。このフラグの生成は、プロセッサ又は固有の生成ユニットによって起こる。そのため、プロセッサの負荷が特に平行動作中に増すか、又は、回路経費が上昇する。さらに、ＦＩＦＯをバッファとして使用すると、データに対してアドレスでアクセスすることを不可能にする。したがって、この使用は、データが時間的に連続して入力又は出力される用途の状況に対しては制限されている。一度ＦＩＦＯから「プッシュされた（”ｈｅｒａｕｓｇｅｓｃｈｏｂｅｎｅ”）」データは消去されている。
同様に、ヨーロッパ特許出願公開第 ０２４１ １２９ 号明細書が、バッファメモリとしてＦＩＦＯを使用することを記す。この場合、２つの部分を有するＦＩＦＯが、プロセッサメモリの外部に設けられている。このＦＩＦＯの場合、一時記憶が必要であるときに、独立した制御部（ＲＢＣ）が、一方の部分内に入力し他方の部分内に出力するごとにデータをこの一方の部分内に一時記憶する。バッファを必ず利用する必要はないものの、これらの構成群を準備する必要はあることがこのことから既に分かる。そのため、追加の装置技術的な経費が発生する。その他の点では、既に説明したＦＩＦＯバッファの欠点は、この手段でも確認することができる。


【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
この課題は、本発明の方法にあっては、Ｉ／Ｏユニットからのデータがプロセッサメモリ内で専ら特定の入力メモリ領域のアドレス上に書込まれることによって解決される。この場合、番地付けが、Ｉ／Ｏユニットによって実行される。プロセッサメモリからのデータが、プロセッサユニットによって専ら入力メモリ領域のアドレスから読取られる。この場合、番地付けが、プロセッサユニットによって実行される。プロセッサユニットからのデータが、プロセッサメモリ内で専ら特定の出力メモリ領域のアドレス上に書込まれる。この場合、アドレス付けが、プロセッサユニットによって実行される。プロセッサメモリからのデータが、Ｉ／Ｏユニットによって専ら出力メモリ領域のアドレスから読取られる。この場合、番地付けが、Ｉ／Ｏユニットによって実行される。


【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
この場合、遅延のないＲＥＡＤ又はＷＲＩＴＥのメモリアクセスが、メモリ領域を機能ユニットに対して直接割当てることによって保証される。さらに、Ｉ／Ｏユニットとプロセッサユニットの双方向のデータパスのレイアウトが確定されることによって、データ衝突が、メモリ領域ごとに可能なＲＥＡＤ／ＷＲＩＴＥのアクセスに対して基本的に取り決めることによって回避される。
さらに、双方向に作動するポートを有する２次元メモリを使用する必要なしに、２つのポートを有する単方向のメモリ要素を利用することが本発明の方法によって可能になる。




【国際調査報告】
2004511851.tif 000019
2004511851.tif 000020
2004511851.tif 000021
2004511851.tif 000022
2004511851.tif 000023
2004511851.tif 000024