JP2001125826A - 集合メモリ用のインタフェースを有する複数のプロセッサを備える装置 - Google Patents

集合メモリ用のインタフェースを有する複数のプロセッサを備える装置

Info

Publication number
JP2001125826A
JP2001125826A JP2000259435A JP2000259435A JP2001125826A JP 2001125826 A JP2001125826 A JP 2001125826A JP 2000259435 A JP2000259435 A JP 2000259435A JP 2000259435 A JP2000259435 A JP 2000259435A JP 2001125826 A JP2001125826 A JP 2001125826A
Authority
JP
Japan
Prior art keywords
memory
interface
access
data
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2000259435A
Other languages
English (en)
Inventor
Thierry Nouvet
ヌベ、ティエリ
Perthuis Hugues De
ユーグ、ド、ペルテュイ
Stephane Mutz
ステファンヌ、ミュッツ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from FR9910954A external-priority patent/FR2797969A1/fr
Priority claimed from FR9912068A external-priority patent/FR2799020A1/fr
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of JP2001125826A publication Critical patent/JP2001125826A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Multi Processors (AREA)
  • Information Transfer Systems (AREA)
  • Memory System (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

(57)【要約】 【課題】 比較的低コストで、集積回路の形で実現を可
能にすることである。 【解決手段】 データ処理装置が複数のプロセッサと、
プロセッサが集合メモリをアクセスできるように仲介す
るメモリ・インタフェースとを備えている。メモリ・イ
ンタフェースは、種々のプロセッサに属するデータを一
時的に保持するためのインタフェース・メモリ(SRA
M)を有する。メモリ・インタフェースは、種々のプロ
セッサのおのおののためにFIFOメモリを構成するよ
うにしてインタフェース・メモリを制御する制御回路も
有する。これによって、各プロセッサに対して別々のF
IFOメモリを有するメモリ・インタフェースと比較し
て比較的低コストでの実施が実現可能にされる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のプロセッサ
と、これらのプロセッサが集合メモリをアクセスできる
ように仲介するメモリ・インタフェースとを、備えるデ
ータ処理装置に関するものである。本発明は、たとえ
ば、MPEGデータストリームを復号(decode)できる
集積回路で応用できる。
【0002】
【従来の技術】米国特許第5,072,420号明細書
は、複数の周辺装置および複数の外部装置がDRAMメ
モリ(ダイナミック・ランダム・アクセス・メモリ)を
アクセスできるように仲介するインタフェースを記述し
ている。そのインタフェースは、各周辺装置および各外
部装置のための入力チャネルおよび出力チャネルを有す
る。各チャネルは、関連する装置をDRAMメモリに接
続するFIFOメモリ(先入れ、先出し)を含む。
【0003】
【発明が解決しようとする課題】本発明の目的は比較的
低いコストで実現可能にすること、とくに集積回路で実
現可能にすることである。
【0004】
【課題を解決するための手段】本発明は次の面を考慮に
入れる。メモリは、メモリセルを構成するエレメント
と、メモリセルをアクセスするための追加のエレメント
とを、一般に備えている。メモリが小型であれば、追加
のエレメントは比例して大きい。したがって、比較的小
型のメモリは効率が低いということがある。たとえば、
集積回路の一部を構成するメモリについて考えることに
する。メモリが比較的小型であるとすると、単位表面積
当りの記憶容量は比較的小さい。いいかえると、メモリ
はそれが記憶できるデータの量に関して比較的広い表面
積を占める。
【0005】先行技術においては、DRAMメモリと、
周辺装置および外部装置との間のインタフェースは、各
装置ごとにFIFOメモリを含む。このインタフェース
が集積回路の形で実現されると仮定した場合には、FI
FOメモリは比較的広い表面積を占める。更に、各FI
FOメモリは、たとえば、電源レール(power supplyra
ils)などの特定の接続を要する。これは接続のルーテ
ィングを複雑にする。したがって、先行技術のインタフ
ェースは、比較的広い表面積を占め、実現が比較的困難
である。
【0006】本発明に従って、冒頭で定義した種類の装
置は、種々のプロセッサに属するデータを一時的に保持
するインタフェース・メモリと、インタフェース・メモ
リが種々のプロセッサのそれぞれのためのFIFOメモ
リを構成するように、インタフェース・メモリを制御す
る制御回路と、を備えている。
【0007】したがって、インタフェース・メモリは、
先行技術で使用されている別々のFIFOメモリの装置
に実際に置き代わる。制御回路は、別々のFIFOメモ
リの装置で構成されている全ての追加のエレメントと比
較して、比較的簡単にできる。したがって、本発明は、
先行技術よりも少数のエレメントで、所望の記憶容量を
実現できるようにする。更に詳しくいえば、本発明は比
較的狭い表面積の集積回路で、メモリ・インタフェース
を実現可能にするものである。この結果、本発明は比較
的低いコストで実現可能にする。
【0008】
【発明の実施の形態】以下、本発明と、本発明を実施す
るために有利に使用できる追加の諸特徴を図面を参照し
て特に詳しく説明する。
【0009】以下の注釈は参照記号に関するものであ
る。全ての図において同様なものには同じ参照記号が付
せられている。複数の同様なものは1つの記号で示して
いる。その場合には、同様なものとの間で識別するため
に、参照文字に数字が付記されている。その数字すなわ
ち添字は、便宜上、省かれているかもしれない。これは
詳細な説明及び特許請求の範囲に適用される。
【0010】図1は、データ処理装置を示す。このデー
タ処理装置は、集合メモリ(collective memory)SD
RAMと、メモリ・インタフェースINTと、3つのデ
ータ処理器B1、B2、B3とを備えている。それらの
データ処理器を以後「ユニット」と呼ぶことにする。各
ユニットBは、専用読出しバスBBRおよび専用書込み
バスBBWを介して、メモリ・インタフェースINTに
接続されている。各専用読出しバスBBRおよび各専用
書込みバスBBWは、所与のユニットに専用のものであ
る。メモリ・インタフェースINTは、集合バス(coll
ective bus)BMを介して集合メモリSDRAMに接続
されている。ユニットBと、専用読出しバスBBRと、
専用書込みバスBBWと、メモリ・インタフェースIN
Tとは、単一の集積回路の一部に構成できるが、集合メ
モリSDRAMは、外部装置である。
【0011】このデータ処理装置の全体的な動作は次の
通りである。要求があるとユニットBは、処理すべき、
集合メモリSDRAMに保存すべき、データを受信す
る。そのデータを処理した後で、ユニットBは、処理し
たデータを、メモリ・インタフェースINTを介して、
集合メモリSDRAMに加える。メモリ・インタフェー
スINTは、種々のユニットBによる集合メモリSDR
AMのアクセスを制御する。
【0012】メモリ・インタフェースINTは、2つの
基本的な機能を有する。最初に、それは集合メモリSD
RAMに対するアクセスのレベルで、種々のユニットB
の間の仲裁(arbitration)を行う。1つのユニットB
が、1度に読出しまたは書込みのために、集合メモリS
DRAMをアクセスできる。これは、ユニットBはバー
ストモードの場合だけ、メモリにアクセスできることを
意味する。第2に、読出しの場合には、メモリ・インタ
フェースINTは集合メモリSDRAMから、所与のユ
ニットB宛のデータバーストを、実質的に定常のデータ
ストリームに変換する。したがって、このデータストリ
ームは、それぞれの専用読出しバスBBRを介して、そ
のユニットBに転送される。書込みの場合には、メモリ
・インタフェースINTは、所与のユニットBから来る
実質的に定常なデータストリームを、集合メモリSDR
AMに書込むべきデータバーストに変換する。
【0013】図2は、メモリ・インタフェースINTの
動作を示す。T(BM)は、集合バスBMを介しての集
合メモリSDRAMとメモリ・インタフェースINTと
の間における、データ転送を示す。T(BBR1)、T
(BBR2)、およびT(BBR3)は、それぞれ、メ
モリ・インタフェースINTとユニットB1、B2、B
3との間の、それぞれの専用読出しバスBBR1、BB
R2、BBR3を介するデータ転送を表す。T(BBW
1)、T(BBW2)、およびT(BBW3)は、それ
ぞれ、メモリ・インタフェースINTとユニットB1、
B2、B3との間の、それぞれの専用書込みバスBBW
1、BBW2、BBW3を介するデータ転送を表す。
【0014】データ転送T(BM)は、データバースト
DBで構成されている。各データバーストDBは、書込
みモードまたは読出しモードにおけるユニットBによる
集合メモリSDRAMの1つのアクセス動作に対応す
る。DBの後に続く小括弧の中の参照記号は、どのユニ
ットBにバースト中のデータが属するかを示し、かつア
クセスの種類、すなわち、書込み(W)または読出し
(R)も示す。たとえば、DB1(B1/R)は、デー
タバーストDB1がB1による読出しモードでの集合メ
モリSDRAMに対するアクセスに関するものであるこ
とを示す。
【0015】図2は、集合メモリSDRAMから来て、
あるユニットBに属するデータバーストの「平滑化(sm
oothing)」を、メモリ・インタフェースINTが実行
することを示している。この図は、逆に、ユニットBか
ら受けたデータをバースト的に集合メモリSDRAMに
書込むために、それらのデータの時間的集中を行うこと
も示している(データ圧縮)。したがって、専用読出し
バスBBRと専用書込みバスBBWを介してのデータの
転送が、比較的低い速度で行われる。したがって、これ
によって専用読出しバスBBRと専用書込みバスBBW
に、比較的狭い通過帯域(pass band)を持たせること
が可能になり、その結果、比較的狭い幅(width)を持
たせることが可能になる。この観点から、必要とされる
バスのサイズは、このバスにより転送されるデータに含
まれているビットの数に必ずしも一致する必要がないこ
とが分かる。たとえば、16ビットのデータを、4ビッ
トのワードに分割できる。したがって、そのデータを4
ワードの列の形で、4ビットバスを通じて転送できる。
【0016】図3はユニットBを示す。ユニットBはプ
ロセッサPと一般的なアドレッシング回路AGAを有す
る。プロセッサPは論理要求LRQを生成する。ユニッ
トBは、ビデオデータを処理し、その場合には、論理要
求LRQは、たとえば、現在の映像の所与の線の画素に
対する要求とすることができるとする。一般的なアドレ
ッシング回路AGAは、論理要求LRQを物理的要求P
RQに変換する。物理的要求PRQは、要求されたデー
タが集合メモリSDRAMに保存される物理的アドレス
を定める。物理的要求PRQは、次の形をとることがで
きる。すなわち、スタート・アドレス(このアドレスか
ら始まって探索すべきアドレスの数)、および、応用で
きるならば、データの探索中に採用すべきスキーム、を
取ることができる。このスキームは、読出すべき連続ア
ドレスの数と、飛び越すべきアドレスの数と、「読出し
および飛び越し」繰り返しの数との形で、定めることが
できる。アドレッシング回路AGAは、翻訳パラメータ
が物理的要求PRQへの論理要求LRQの翻訳を定める
ようにして、プログラムできる。これによって集合メモ
リSDRAMへのデータの融通性を持った保持が可能に
される。
【0017】図4はメモリ・インタフェースINTを示
す。メモリ・インタフェースINTはアービタ(arbite
r:仲裁器)ARBと、アクセス・インタフェースSI
Fと、バッファメモリ装置BUFと、アドレッシングお
よびマクロ命令回路AGBとを有する。各ユニットBに
は、アドレッシングおよびマクロ命令回路AGBがあ
る。
【0018】全体として、メモリ・インタフェースIN
Tの内部動作は次の通りである。各アドレッシングおよ
びマクロ命令回路AGBは、それが関連しているユニッ
トBからの物理的要求をマクロ命令に分割する。マクロ
命令はメモリ中の所与のロウに対するアクセスの要求を
表す。マクロ命令がアービタARBに出される前に、ア
ドレッシングおよびマクロ命令回路AGBは、バッファ
メモリ装置BUF内に十分な余地があるかどうかを調べ
る。そのために、それはバッファメモリ装置BUFにマ
クロ命令をまず与える。マクロ命令で定められた数のデ
ータを保持するための余地があるとバッファメモリ装置
BUFが確認すると、アドレッシングおよびマクロ命令
回路AGBはマクロ命令をアービタARBに出す。アー
ビタARBは種々のアドレッシングおよびマクロ命令回
路AGBからマクロ命令を受け、アクセス・インタフェ
ースSIFに加えるべきマクロ命令を選択する。この選
択は後で説明する仲裁手法に従って行われる。アクセス
・インタフェースSIFはアービタARBから受けたマ
クロ命令を受けた順に処理する。このようにして、アク
セス・インタフェースSIFは集合メモリSDRAMを
アクセスする。アクセス動作は処理されているマクロ命
令により定められている。
【0019】マクロ命令はX群のアドレスをアクセス可
能にする。各群はY個のアドレスを有する。アドレスの
群はZ語だけ相互に隔てられている。X、Y、Zは整数
である。したがって、マクロ命令は次の情報を含む。
【0020】−アクセスすべき第1のアドレス、 −アドレス群中の第1のアドレスに続いてアクセスすべ
きアドレスの数(Y−1)、 −連続するアドレスの2つの群の間でスキップすべきア
ドレスの数(Z)、 −第1の群に加えてアクセスすべきアドレス群の数(X
−1)、 −アクセスのタイプ:読出しまたは書込み。
【0021】ビットレベルにおけるマクロ命令の例は、
次の通りである。集合メモリSDRAMに保持されてい
るデータが32ビットの幅を持ち、集合メモリSDRA
Mの最大容量が256Mビットであると仮定する。これ
は、アドレスが23ビットとして表現されることを意味
する。アクセス動作は16アドレスの最大サイズに制限
されると更に仮定する。そのような制限は、待ち時間で
みて好ましい。したがって、X−1およびY−1は最大
で15であり、したがって4ビットで符号化できる。最
後に、ロウは集合メモリSDRAMの構成に従って、最
大512アドレスを含む。したがって、ジャンプすべき
アドレスの数は511を超えることはできず、その結
果、この数は9ビットで符号化できる。したがって、マ
クロ命令のサイズは23+2×4+9+1=41ビット
である。アドレスはビット40ないし18で符号化で
き、アクセスのタイプはビット17で符号化でき、読出
すべき語の数(Y−1)はビット16ないし13で符号
化でき、ジャンプすべき語の数(Z)はビット12ない
し4で符号化でき、語群の数(X−1)はビット3ない
し0で符号化できる。
【0022】図5は、読出しモードにおいて所与のユニ
ットBによる集合メモリSDRAMに対するアクセスの
プロセスを示す。水平方向の次元は、時間を表す。図の
垂直方向の次元は、含まれている種々の機能エレメント
を表す。この図は矢印を含んでいる。それらの矢印は、
インタフェース・メモリSRAMに対するアクセスのプ
ロセスにおけるステップSを表す。
【0023】S1=関連あるユニットBのプロセスP
は、論理要求LRQを総合的なアドレッシング回路AG
Aに対して送信する。論理要求LRQは、データサブセ
ット、たとえば、処理すべきデータのセット、たとえ
ば、画像中の線の輝度画素を指定する。 S2=総合的なアドレッシング回路AGAが、論理要求
LRQを物理的要求PRQに変換する。 S3=総合的なアドレッシング回路AGAが、物理的要
求PRQを命令アドレッシング回路AGAに対して送信
する。 S4=マクロ命令アドレッシング回路AGAが物理適用
球PRQをマクロ命令に変換する。 S5=マクロ命令アドレッシング回路AGAが、物理的
要求PRQから取り出されたマクロ命令の最初の1つを
バッファメモリ装置BUFに送信する。 S6=バッファメモリ装置BUFが、マクロ命令により
指定されたデータの数を保持するための余地があるかど
うかを調べる。 S7=バッファメモリ装置BUFが、確認応答を余地の
あるマクロ命令アドレッシング回路AGAへ送る。 S8=所与の遅延を表す。 S9=マクロ命令アドレッシング回路AGBが、マクロ
命令をアービタARBに送信する。 S10=アービタARBが、集合メモリSDRAMに対
するアクセスの要求として、ユニットにより集合メモリ
SDRAMに対する任意のアクセスに適用する仲裁スキ
ームに従って、マクロ命令を処理する(読出しモードお
よび書込みモードにおいて)。
【0024】S11=アービタARBが、マクロ命令
を、アクセス・インタフェースSIFに送信する。 S11a=マクロ命令がアクセス・インタフェースSI
Fに送信されたバッファメモリ装置BUFに、アービタ
ARBが確認応答を送る。 S12=マクロ命令が、アクセス・インタフェースSI
F内で待ち行列にされ、先に受信されたマクロ命令を最
初に処理する。 S13=アクセス・インタフェースSIFが、集合メモ
リSDRAMのための制御信号をマクロ命令を基にして
生成する。それらの制御信号により、マクロ命令により
指定されたアドレスにおけるデータが順次読出される結
果となる。 S14=集合メモリSDRAMから順次読出されたデー
タが、バッファメモリ装置BUFへ転送される。 S15=バッファメモリ装置BUFが、データを一時的
に保持する。 S16=バッファメモリ装置BUFが、データを実質的
に定常した仕様でプロセッサPへ転送する。
【0025】ステップS5〜S15は、ステップS1で
生成された論理要求LRQに続く各マクロ命令に対し
て、繰り返される。
【0026】次のステップは、図5には示されていな
い。ステップS1において、一般的なアドレッシング回
路AGAが、確認応答信号をプロセッサPへ送る。この
信号は、論理要求LRQが受けられたこと、および処理
されるであろうことを示す。確認応答信号に応答して、
プロセッサPは新しい論理要求を生成し、別の通知があ
るまでそれを保持する。マクロ命令アドレッシング回路
AGBが、論理要求LRQに応答する最後のマクロ命令
を送信すると、論理要求LRQの処理が終了する。その
場合には、マクロ命令アドレッシング回路AGAが確認
応答信号を一般的なアドレッシング回路AGAへ送っ
て、論理要求LRQの処理が終了されたことをアドレッ
シング回路に指示する。それに応答して、一般的なアド
レッシング回路AGAは新しい論理要求LRQを、ステ
ップS1で行われた論理要求LRQの処理に類似するや
り方で開始する。いいかえると、プロセスが繰り返され
る。
【0027】図6Aおよび図6Bは、アービタARBの
ための仲裁スキームを示す。図6Aでは8つの状態ST
1〜ST8が円として示されている。それらの状態ST
は、次々に周期的に発生する。各状態STは、マクロ命
令をアクセス・インタフェースSIFへ送る可能性を表
す。したがって、各状態はメモリをアクセスする可能性
を表す。各状態は所与のプロセッサPに対応する。所与
の状態が対応するプロセッサPは、状態を表す円で指定
されている。
【0028】図6Bは、図6Aに対応する仲裁プロセス
を表す。このプロセスは複数の状態SA1〜SA8を含
み、図6Aにおける各状態STに対して行われる。ステ
ップSA1は、状態のジャンプの後で行われる最初のス
テップである。ステップSA1では、マクロ命令アドレ
ッシング回路AGBにより送信され、状態S[i]に対
応するプロセッサP[j]からの論理要求LRQに従う
マクロ命令が、係属しているかどうかをアービタARB
が調べる。そのようなマクロ命令が係属している場合、
ステップSA1にステップSA2が続く。ステップSA
2ではアービタARBは関連するマクロ命令をアクセス
・インタフェースSIFへ送る。この結果、所与の遅延
の後で集合メモリSDRAMが、マクロ命令により定め
られて関連するプロセッサPによりアクセスされる。マ
クロ命令が送られた後で、アービタは次の状態へジャン
プする。これは図6Bに表されているプロセスが繰り返
されることを意味する。
【0029】しかし、ステップS1で、状態S[i]が
対応するプロセッサPに関連する係属しているマクロ命
令がないことをアービタARBが検出した場合、ステッ
プSA1にステップSA3が続く。ステップSA3で
は、アービタARBは他のマクロ命令が待機しているか
どうかを調べる。待機している他のマクロ命令がなけれ
ば、アービタARBは次の状態へジャンプし、図6Bに
示されているプロセスが繰り返される。待機している他
のマクロ命令があれば、アービタARBはステップSA
4を実行する。ステップSA4では、アービタARBは
優先順にマクロ命令を選択する。各マクロ命令は所与の
優先レベルを有する。優先レベルはマクロ命令を発した
プロセッサPにより決定される。したがって、アービタ
ARBは最も高い優先順にマクロ命令を選択し、このマ
クロ命令をアクセス・インタフェースSIFへ送る。マ
クロ命令を送った後で、ARBは次の状態へジャンプす
る。これは、図6Bに示されているプロセスが繰り返さ
れることを意味する。
【0030】図6Aおよび図6Bに関して、各状態はプ
ロセッサPに対応する必要がないことに注目すべきであ
る。どのプロセッサPにも対応しない1つまたは複数の
状態を導入することが可能である。これはフリーな状態
を導入可能であることを意味する。フリーな状態の場合
には、アービタARBは優先順位のみを基にしてマクロ
命令を選択する。そのようなフリーな状態は、比較的適
度な待ち時間の制約と、集合メモリSDRAMに対する
アクセスレベルにおける比較的適度な通過帯域とを有す
るプロセッサPをデータ処理装置が含む場合に、有用な
ことがある。したがって、このプロセッサPに十分なア
クセスが与えられないことを避けるために、フリーな状
態を導入できる。プロセッサPはそれらのフリーな状態
の利点を利用して、集合メモリSDRAMをアクセスで
きる。
【0031】図7は、アクセス・インタフェースSIF
の例を示す。このアクセス・インタフェースSIFは、
マクロ命令バッファメモリFIFO MCと、カラム発
生器CAGUと、命令発生器CGUと、制御信号発生器
IF SDRAMと、データバッファメモリIF Dと
を有する。
【0032】アクセス・インタフェースSIFの全体的
な動作は、次の通りである。マクロ命令バッファメモリ
FIFO MCは、マクロ命令をアービタARBから受
信する。このメモリは、それらのマクロ命令を一時的に
保持し、それらを到着順にカラム発生器CAGUへ送
る。マクロ命令バッファメモリFIFO MCが一杯
で、新しいマクロ命令を受けることができない場合に
は、それはそのことをアービタARBへ知らせる。それ
の「FIFOが一杯である」ことを指示する、アクセス
・インタフェースSIFからのこの信号の結果として、
マクロ命令バッファメモリFIFO MCが新しいマク
ロ命令を受けることができることを知らせるまで、アー
ビタARBは現在選択されているマクロ命令の転送を延
期する。実際に、アクセス・インタフェースSIFから
の「FIFOが一杯である」信号は、アービタARBを
ある時間「凍結する(freezes)」。
【0033】先行するマクロ命令に従ってメモリアクセ
ス動作が行われた時に、カラム発生器CAGUはマクロ
命令バッファ・メモリFIFO MCから新しいマクロ
命令を要求する。実際には、カラム発生器CAGUは命
令発生器CGUに組合わされて、マクロ命令をアドレス
の列に翻訳する。集合メモリSDRAMのアドレスは、
集合メモリSDRAMのバンクの数と、ロウの数と、カ
ラムの数とにより定められる。マクロ命令は、インタフ
ェース・メモリSRAMの1列に対するアクセスに関連
することは既に述べた。それは、アクセスが1つのバン
クで行われることを自動的に暗示する。したがって、マ
クロ命令に従ってアドレスの列を定めるために、マクロ
命令を基にしてカラム発生器CAGUが一連のカラムを
発生するだけで十分である。カラム発生器CAGUの実
現においては、たとえば、いくつかのカウンタおよびい
くつかの論理回路を含むことができる。そのような実現
では、マクロ命令の内容がカウンタをプログラムするの
に役立つ。
【0034】命令発生器CGUは、集合メモリSDRA
Mの他のカラム番号を逐次受信する。命令発生器CGU
は、マクロ命令により定められるアドレスのバンク番お
よびロウ番号も、マクロ命令バッファメモリFIFO
MCから受信する。この情報は、カラム発生器CAGU
が、集合メモリSDRAMをアクセスするために一連の
命令を定めることを可能にする。各命令は単一のアドレ
スを定める。更に、マクロ命令により定められたアクセ
ス動作を行えるようにするように、命令発生器CGUは
集合メモリSDRAMを正しい状態に設定するために必
要な命令を発生する。それらの命令は集合メモリSDR
AMのための、プレローディング(preloading)および
起動(activation)などの、適切なプロセスに関するも
のである。更に、命令発生器CGUは、集合メモリSD
RAMが一定の間隔でリフレッシュされ、それらのリフ
レッシュ動作を行うために必要な命令を発生することを
確実にする。
【0035】制御信号発生器IF SDRAMは、命令
発生器CGUから受けた命令を基にして制御信号を発生
する。たとえば、制御信号発生器IF SDRAMは、
頭文字RAS、CASにより表される信号を発生する。
制御信号発生器IF SDRAMによって、一連の制御
信号中に集合メモリSDRAMのある待機時間が観察さ
れるようになる。それらの待機時間は、使用される集合
メモリSDRAMの種類に応じて変化してもよい。した
がって、制御信号発生器IF SDRAMは、使用され
る集合メモリSDRAMの種類に特有である。別の種類
の集合メモリSDRAMを使用する場合、制御信号発生
器IF SDRAMを変更すなわち再プログラムするだ
けで十分である。原則として、アクセス・インタフェー
スの他のエレメントはどのような変更も要しない。
【0036】データ・バッファメモリIF Dは、読出
しの場合には、集合メモリSDRAMからのデータを図
4に示されているバッファメモリへ転送し、書込みの場
合には、バッファメモリBUFからのデータを集合メモ
リSDRAMへ転送するために役立つ。このために、デ
ータ・バッファメモリIF Dは、集合メモリSDRA
Mにより供給されるデータ(読出し)、または集合メモ
リSDRAMに加えられるデータ(書込み)を同期す
る。更に、データ・バッファメモリIF Dは、単位深
さを持つFIFOを形成する。これは、所与のクロック
パルスがデータを集合メモリSDRAMから読出させる
場合、このデータは次のクロックパルスでバッファメモ
リ装置BUFへ転送されることを意味する。書込みの場
合には、次のクロックパルスでバッファメモリ装置BU
Fから集合メモリSDRAMへ転送されて、そこに書込
まれることを意味する。
【0037】図8は、図4に示されているメモリ・イン
タフェースINTの一部分を構成しているバッファメモ
リ装置BUFの例を示す。このバッファメモリ装置BU
Fは、読出しバッファメモリ装置BUFRと、書込みバ
ッファメモリ装置BUFWと、確認応答信号FIFO
ACKのためのバッファメモリとを、有する。読出しバ
ッファメモリ装置BUFRと書込みバッファメモリ装置
BUFWは、図1に示されているように、アクセス・イ
ンタフェースSIFと集合バスBMを介して集合メモリ
SDRAMに接続されている。読出しバッファメモリ装
置BUFRは、専用読出しバスBBR1、BBR2、お
よびBBR3をそれぞれ介してユニットB1、B2、B
3に接続されている。書込みバッファメモリ装置BUF
Wは、専用書込みバスBBW1、BBW2、およびBB
W3をそれぞれ介してユニットB1、B2、B3に接続
されている。確認応答バッファメモリFIFO ACK
はアービタARBに接続されている。
【0038】バッファメモリ装置BUFの全体的な動作
は次の通りである。読出しバッファメモリ装置BUFR
は、集合メモリSDRAMから受けたデータを一時的に
保持し、書込みバッファメモリ装置BUFWは種々の異
なるユニットBから受けて、集合メモリSDRAMに書
込むべきたデータを保持する。確認応答信号バッファメ
モリFIFO ACKは、アービタARBから来る確認
応答信号を受信する。その信号は、アービタARBがマ
クロ命令をアクセス・インタフェースSIFに入力した
ことを指示する。
【0039】確認応答信号バッファメモリFIFO
CKは、図7に示されているマクロ命令バッファメモリ
FIFO MCと同じ深さを有する。したがって、マク
ロ命令がマクロ命令バッファメモリFIFO MCを離
れ、その結果としてマクロ命令に従うメモリアクセスが
行われると、このマクロ命令に対応する確認応答信号が
確認応答信号バッファメモリFIFO ACKを離れ
る。この信号は関連する動作が読出しアクセスか、書込
みアクセスかを示している。最初に述べた場合には、読
出しバッファメモリ装置BUFRが起動されて集合メモ
リSDRAMからデータを受け、後に述べた場合には、
書込みバッファメモリ装置BUFWが起動されて集合メ
モリSDRAMにデータを送る。確認応答信号バッファ
メモリFIFO ACKにより供給された確認応答信号
は、マクロ命令により定められているようにアクセス動
作に含まれているデータの数も示す。この指示は、読出
しまたは書込みの場合にそれぞれ「どこに保持(stor
e)するか、またはどこへフェッチするか」の内部管理
のために、バッファメモリ装置BUFにより使用され
る。
【0040】図9は読出しバッファメモリ装置BUFR
の例を示す。読出しバッファメモリ装置BUFRは入力
バッファメモリIBと、インタフェース・メモリSRA
Mと、複数の出力バッファメモリOBを含む装置と、制
御回路CONの装置と、インタフェース・メモリ・アク
セス・アービタARBBRを含む装置とを備えている。
入力バッファメモリIBは、図4で既に示したアクセス
・インタフェースSIFを介して集合メモリSDRAM
に接続されている。出力バッファメモリOB1、OB2
およびOB3は、専用読出しバスBBR1、BBR2お
よびBBR3をそれぞれ介してプロセッサP1、P2お
よびP3に接続されている。最後の述べたエレメント
は、図2および図3に示されている。制御回路CON
1、CON2およびCON3は、マクロ命令アドレッシ
ング回路AGB1、マクロ命令アドレッシング回路AG
B2、マクロ命令アドレッシング回路AGB3にそれぞ
れ接続され、かつアクセス・インタフェースSIFに接
続されている。
【0041】読出しバッファメモリ装置BUFRは次の
ように動作する。集合メモリSDRAMから受信したデ
ータの幅は、N(Nは整数)ビットであり、周波数Fで
到達する。インタフェース・メモリSRAMの幅は、2
Nビットである。それは、アドレスが2Nビットを含む
ことができることを意味し、かつ周波数Fで動作する。
入力バッファメモリIBは集合メモリSDRAMから来
る2つの連続データの対を形成し、それらの対をインタ
フェース・メモリSRAMにロードする。1つの対を形
成するのに2クロック・サイクルを要する。集合メモリ
SDRAMから受信した全ての連続するデータを対にで
きるものと仮定すると、インタフェース・メモリSRA
Mに対する書込みアクセスは、2クロック・サイクルご
とに行われる。1つのアドレスに対するアクセスは、1
クロック・サイクルだけ要する。したがって、2つの書
込みアクセス動作の間に、1クロック・サイクルが、読
み出しのために(集合メモリSDRAMから読み出した
データをユニットBに転送するために)、インタフェー
ス・メモリSRAMをアクセスするために使用すること
が可能である。したがって、原則として、インタフェー
ス・メモリSRAMに対する書込みアクセスと読出しア
クセスは交互に前後して行うことができる。インタフェ
ース・メモリSRAMに対するアクセスについては後で
より詳しく説明する。
【0042】インタフェース・メモリSRAMは、実際
には、3つの領域Z1、Z2、Z3に分割されている。
領域Z1、Z2、Z3は、それぞれ、プロセッサP1、
P2、P3に対することを意図されているデータを含
む。集合メモリSDRAMからのデータは、現在のマク
ロ命令の出所であるプロセッサPに応じて、入力バッフ
ァメモリIBを介して、領域Z1、Z2またはZ3に書
込まれる。領域Z1、Z2、Z3に存在するデータは、
実質的に定常的なやり方で、実質的に固定されたスキー
ムで、出力バッファメモリOB1、OB2またはOB3
に転送される。出力バッファメモリOBは実際にはデー
タを複数の部分に分割し、関連するデータをそれぞれの
プロセッサPに部分ごとに加える。たとえば、出力バッ
ファメモリOBは、16ビットデータを4ビットデータ
に分割してもよい。したがって、データを1クロック・
サイクルで転送する(これは16ビットバスを要する)
代わりに、データは部分ごとに4クロック・サイクルで
転送され、この場合、4ビットバスのみを要する。
【0043】制御回路CON1、CON2およびCON
3は、領域Z1、Z2、Z3をそれぞれ制御する。その
ために、各制御回路CONは、パラメータの群を制御す
る。それらのパラメータは書込みポインタと、読出しポ
インタと、領域占有値とを含む。書込みポインタは、集
合メモリSDRAMからのデータを書込むべきアドレス
を定める。読出しポインタは関連する出力バッファメモ
リOBに転送すべきデータのアドレスを定める。占有値
は、集合メモリSDRAMから受信したデータを保持す
るために依然として使用できるアドレスの数を指示す
る。制御回路CON1、CON2およびCON3は、出
力バッファメモリOB1、OB2またはOB3もそれぞ
れ制御する。そのために、各制御回路CONは、対応す
るOBの占有の状態を表すパラメータを制御する。
【0044】ここで、集合メモリSDRAMが、図5に
示されているようにアクセスされていると仮定して、制
御回路CONにより実行される制御プロセスを説明す
る。ステップS5では、マクロ命令アドレッシング回路
AGBがマクロ命令をバッファメモリ・インタフェース
装置BUFに送信する。このマクロ命令は、そのマクロ
命令を出したプロセッサPに対応する制御回路CONに
よって処理される。制御回路CONは、マクロ命令によ
り定められたデータの数を占有値と比較する。したがっ
て、制御回路CONは所望のデータを保持するために十
分な余地が関連する領域Zにあるかどうかを調べる。十
分な余地があれば、制御回路CONはこれをマクロ命令
アドレッシング回路AGBに知らせ、更に、占有パラメ
ータを更新する。これは、そのデータが、その関連する
領域内に既に保持されていると考えられるが、これは依
然として実行すべきであることを意味する。したがっ
て、占有パラメータの更新は、関連する領域内の保持と
みなすことができる。
【0045】ここで、図5に示されているステップS1
2中に起きることについて説明する。このステップS1
2は、関連するマクロ命令に基づく集合メモリSDRA
Mからの読出しを表す。アクセス・インタフェースSI
Fがマクロ命令の処理を開始する時、したがって、読出
しを開始する時には、関連するマクロ命令に関連する確
認応答信号は、図7に示されている確認応答信号バッフ
ァメモリFIFO ACKから送り出されることを既に
説明した。この確認応答信号は、アクセスが書込み動作
であり、更に、この信号はマクロ命令を生じたプロセッ
サPを指定することを指示する。したがって、このプロ
セッサPに対応する制御回路CONは、集合メモリSD
RAMに格納されるべきデータのアドレスを、供給すべ
きであることを知る。更に、制御回路CONは、アクセ
ス動作中に含まれているデータの数の指示をマクロ命令
に従って受信する。その指示は、確認応答信号の一部分
を構成する。
【0046】集合メモリSDRAMからのデータ対が関
連する領域Zに書込まれるたびに、制御回路CONは、
書込みポインタをインクリメントする。更に、占有値を
更新する。マクロ命令により定められた集合メモリSD
RAMに対する読出しアクセスが終了するまで、制御回
路CONは、その実行を継続する。制御回路CONはア
クセス動作に含まれているデータの数の支援によってア
クセス動作の終わりを検出する。この数は確認応答信号
により、およびインタフェース・メモリSRAMに書込
まれるデータを数えることにより、指定されている。
【0047】所与の領域Zからのデータ対の各読出し後
に、この領域を制御する制御回路CONは、読出しポイ
ンタをインクリメントする。更に、占有値を更新する。
【0048】インタフェース・メモリ・アクセス・アー
ビタARBBRは、インタフェース・メモリSRAMに
対するアクセスを制御する。各種の異なるアクセスが存
在する。それらのアクセスは、(1)集合メモリSDR
AMからのデータをインタフェースメモリSRAMに書
込むためのアクセス・インタフェースSIFによるアク
セス、(2)出力バッファメモリOB1によるアクセス
動作、(3)出力バッファメモリOB2によるアクセス
動作、および(4)出力バッファメモリOB3によるア
クセス動作、である。後の3つのアクセス動作は、イン
タフェース・メモリSRAMに含まれているデータを、
プロセッサP1、P2、P3へそれぞれ転送するのに役
立つ。
【0049】インタフェース・メモリSRAMに対する
どの様なアクセスも、インタフェース・メモリ・アクセ
ス・アービタARBBRに送信された要求に応じて行わ
れる。その時点の要求の中から、インタフェース・メモ
リ・アクセス・アービタARBBRは、最も高い優先順
位を持つ要求を選択する。書込みアクセス(アクセス・
インタフェースSIFを介するアクセス)は、最も高い
優先順位を持つことを要求する。データ対が書込まれた
結果として、上述したように、その要求は2クロック・
サイクルに1回だけ一般に発生する。書込動作は、1ク
ロック・サイクルだけを必要とする。したがって、読出
しモードでは、データを種々のプロセッサPへ転送する
ためにインタフェース・メモリSRAMをアクセスする
ための十分な機会が存在するであろう。
【0050】所与の出力バッファメモリOBによる読出
しアクセス要求は、出力バッファメモリOBとユニット
Bとの間で専用読出しバスBBRのサイズに依存して生
成される。たとえば、そのバスのサイズがN/2ビット
であると仮定する。これは、N/2ビット部分をクロッ
ク・サイクルごとに出力バッファメモリOBからユニッ
トBへ転送できることを意味する。インタフェース・メ
モリSRAMの読出しは、データの対で行われる。1つ
のデータ対が、2Nビットを含む。したがって、1つの
データ対をユニットBへ送るためには、4クロック・サ
イクルを必要とする。1つのデータ対の転送は、読出し
モードにおいて、インタフェース・メモリSRAMに対
するアクセスの要求を含んでいる。したがって、この例
では、出力バッファメモリOBは、4クロック・サイク
ルごとにアクセス要求を出す。この例は、ユニットBへ
のバスのサイズが、種々の出力バッファメモリOBのア
クセス要求の周波数を示していることを表している。専
用読出しバスBBRのサイズがN/4ビットであるなら
ば、8クロック・サイクルごとにアクセス要求がある。
【0051】以下の説明はインタフェース・メモリSR
AMに対するアクセスのための仲裁の例に関するもので
ある。専用読出しバスBBR1のサイズがN/2ビット
であること、および専用読出しバスBBR2のサイズと
専用読出しバスBBR3のサイズとがN/4ビットであ
ると仮定する。アクセス・インタフェースSIFのアク
セス動作は、最も高い優先順位を持ち、その優先順に、
出力バッファメモリOB1、OB2およびOB3のアク
セス動作が続く。最後に、あらゆる種類のアクセス(S
IF、OB1、OB2、OB3)が、第1のクロック・
サイクル中に同時に送信されるものとする。
【0052】サイクル1:全ての要求が同時に行われ
る。 係属中の要求:アクセス・インタフェースSIF、出力
バッファメモリOB1、OB2およびOB3。
【0053】サイクル2:最も高い優先順位を持つイン
タフェース・アクセスSIFが先行し、それの要求を落
とす。出力バッファメモリOB1、OB2およびOB3
が、それの要求を維持する。 係属中の要求:出力バッファメモリOB1、OB2およ
びOB3。
【0054】サイクル3:2番目の優先順位を持つ出力
バッファメモリOB1が先行し、それの要求を落とす。
アクセス・インタフェースSIFが新しい要求を出す。 係属中の要求:アクセス・インタフェースSIF、出力
バッファメモリOB2およびOB3。
【0055】サイクル4:最も高い優先順位を持つイン
タフェース・アクセスSIFが先行し、それの要求を落
とす。出力バッファメモリOB2とOB3がそれの要求
を維持する。 係属中の要求:出力バッファメモリOB2およびOB
3。
【0056】サイクル5:3番目の優先順位を持つ出力
バッファメモリOB2が先行し、それの要求を落とす。
アクセス・インタフェースSIFが新しい要求を出す。 係属中の要求:アクセス・インタフェースSIF、出力
バッファメモリびOB3。
【0057】サイクル6:最も高い優先順位を持つアク
セス・インタフェースSIFが先行し、それの要求を落
とす。出力バッファメモリOB1がバッファ容量の外で
動作し、要求を再び出す。 係属中の要求:アクセス・インタフェースSIF、出力
バッファメモリOB1およびOB3。
【0058】サイクル7:2番目の優先順位を持つ出力
バッファメモリOB1が先行し、それの要求を落とす。
アクセス・インタフェースSIFが新しい要求を出す。 係属中の要求:アクセス・インタフェースSIF、出力
バッファメモリOB3。
【0059】サイクル8:最も高い優先順位を持つアク
セス・インタフェースSIFが先行し、それの要求を落
とす。出力バッファメモリOB3がそれの要求を維持す
る。 係属中の要求:出力バッファメモリOB3。
【0060】サイクル9:4番目の優先順位を持つ出力
バッファメモリOB3が先行し、それの要求を落とす。
アクセス・インタフェースSIFが新しい要求を出す。 係属中の要求:アクセス・インタフェースSIF。
【0061】サイクル10:最も高い優先順位を持つア
クセス・インタフェースSIFが先行し、それの要求を
落とす。出力バッファメモリOB1がバッファ容量の外
で動作し、要求を再び出す。 係属中の要求:出力バッファメモリOB1。
【0062】サイクル11:2番目の優先順位を持つ出
力バッファメモリOB1が先行し、それの要求を落と
す。アクセス・インタフェースSIFが新しい要求を出
す。 係属中の要求:アクセス・インタフェースSIF。
【0063】サイクル12:最も高い優先順位を持つア
クセス・インタフェースSIFが先行し、それの要求を
落とす。出力バッファメモリOB2がバッファ容量の外
で実行し、要求を再び出す。 係属中の要求:出力バッファメモリOB2。
【0064】サイクル13:3番目の優先順位を持つ出
力バッファメモリOB2が先行し、それの要求を落と
す。アクセス・インタフェースSIFが新しい要求を出
す。 係属中の要求:アクセス・インタフェースSIF。
【0065】サイクル14:最も高い優先順位を持つイ
ンタフェース・アクセスSIFが先行し、それの要求を
落とす。出力バッファメモリOB1がバッファ容量の外
で実行し、要求を再び出す。 係属中の要求:出力バッファメモリOB1。
【0066】サイクル15:2番目の優先順位を持つ出
力バッファメモリOB1が先行し、それの要求を落と
す。アクセス・インタフェースSIFが新しい要求を出
す。 係属中の要求:アクセス・インタフェースSIF。
【0067】サイクル16:最も高い優先順位を持つア
クセス・インタフェースSIFが先行し、それの要求を
落とす。出力バッファメモリOB3がバッファ容量の外
で動作し、要求を再び出す。 係属中の要求:出力バッファメモリOB3。
【0068】サイクル17:4番目の優先順位を持つ出
力バッファメモリOB3が先行し、それの要求を落と
す。アクセス・インタフェースSIFが新しい要求を出
す。 係属中の要求:アクセス・インタフェースSIF。
【0069】サイクル18:最も高い優先順位を持つア
クセス・インタフェースSIFが先行し、それの要求を
落とす。出力バッファメモリOB1がバッファ容量の外
で動作し、要求を再び出す。 係属中の要求:出力バッファメモリOB1。
【0070】サイクル19:2番目の優先順位を持つ出
力バッファメモリOB1が先行し、それの要求を落と
す。アクセス・インタフェースSIFが新しい要求を出
す。 係属中の要求:アクセス・インタフェースSIF。
【0071】サイクル20:最も高い優先順位を持つア
クセス・インタフェースSIFが先行し、それの要求を
落とす。出力バッファメモリOB2がバッファ容量の外
で動作し、要求を再び出す。 係属中の要求:出力バッファメモリOB2。
【0072】サイクル21:3番目の優先順位を持つ出
力バッファメモリOB2が先行し、それの要求を落と
す。アクセス・インタフェースSIFが新しい要求を出
す。 係属中の要求:アクセス・インタフェースSIF。
【0073】サイクル22:最も高い優先順位を持つア
クセス・インタフェースSIFが先行し、それの要求を
落とす。出力バッファメモリOB1がバッファ容量の外
で実行し、要求を再び出す。 係属中の要求:出力バッファメモリOB1。
【0074】サイクル23:2番目の優先順位を持つ出
力バッファメモリOB1が先行し、それの要求を落と
す。アクセス・インタフェースSIFが新しい要求を出
す。 係属中の要求:アクセス・インタフェースSIF。
【0075】サイクル24:最も高い優先順位を持つア
クセス・インタフェースSIFが先行し、それの要求を
落とす。出力バッファメモリOB3がバッファ容量の外
で動作し、要求を再び出す。 係属中の要求:出力バッファメモリOB3。
【0076】サイクル25:4番目の優先順位を持つ出
力バッファメモリOB3が先行し、それの要求を落と
す。アクセス・インタフェースSIFが新しい要求を出
す。 係属中の要求:アクセス・インタフェースSIF。
【0077】サイクル26:最も高い優先順位を持つア
クセス・インタフェースSIFが先行し、それの要求を
落とす。出力バッファメモリOB1がバッファ容量の外
で実行し、要求を再び出す。 係属中の要求:出力バッファメモリOB1。などであ
る。
【0078】前に説明したアクセス動作は、8サイクル
の周期性を持つ。それは8つの状態を持つ周期的マシン
ににより、あたかも仲裁が行われているかのようであ
る。その理由は、その例では全てのユニットBが決まっ
たやり方でそれのデータを処理しているためである。
【0079】更に、アクセス・インタフェースSIFに
よるアクセス要求が、2クロック・サイクルごとに1回
定期的に出されるものと仮定する。実際には、それらの
仮定は必ずしも正しくはない。この理由から、インタフ
ェース・メモリSRAMに対するアクセスを、周期的マ
シンの支援ではなくて、アービタの支援で、優先順に制
御することが好ましい。アービタによってインタフェー
ス・メモリSRAMに対するアクセスに関してある程度
の融通性を持たせることができ、したがって、それによ
って、データ転送に使用できる帯域幅を一層良く利用で
きることにされる。
【0080】下記は、2クロック・サイクルごとにただ
1回のインタフェース・メモリSRAMに対する書込み
アクセスを行う(=アクセス・インタフェースSIFに
よるアクセス)ことになっている規則の例外の例であ
る。この例外は、奇数個データを含んでいるマクロ命令
に応答して集合メモリSDRAMをアクセスする場合に
起こる。このアクセスに含まれている全てのデータは、
最後のデータ要素を除き、パートナーを有し、したがっ
て、インタフェース・メモリSRAMに書込むべき対を
形成する。最後のデータ要素は単独である。次のデータ
要素は別のアクセス動作の最初のデータ要素であって、
したがって、別のプロセッサPのために意図されている
ので、そのデータ要素を対を形成するため使用すること
はできない。その結果、別のアクセス動作のこの最初の
データ要素はインタフェース・メモリSRAMの別の領
域Zに保持すべきである。したがって、奇数のデータ要
素を含んでいるアクセスの最後のデータ要素が入力バッ
ファメモリIBに到達すると、そのデータは、アクセス
動作において構成された最後のデータ対に対する書込み
動作に従うクロック・サイクル中にパートナーなしにイ
ンタフェース・メモリSRAMにロードされる。したが
って、1クロック・サイクルの途切れもなく2回の書込
みアクセス動作が連続して存在する。さもなければ、2
つの書込みアクセス動作の間で読出しアクセス動作を行
えるようにする。
【0081】図5および図9は、読出しモードにおける
メモリ・インタフェースINTの動作に関するものであ
る。書込みモードにおける動作は、ほぼ対称的である。
これは、書込みバッファメモリ装置BUFWは、後で説
明する読出しバッファメモリ装置BUFRに類似するこ
とを意味する。したがって、書込みバッファメモリ装置
BUFWは、領域に分割されたインタフェース・メモリ
を含む。各領域は異なるユニットBに関連付けられてい
る。ユニットBは、データを保持すべきかどうかを指示
するマクロ命令の前または後で集合メモリに書込むべき
そのデータを供給できる。実際に、ある領域が対応する
ユニットBが集合メモリに保持すべきデータを供給する
すると、その領域は直ちに一杯になる。その領域埋め
は、例えば、その領域がデータで完全に一杯になるまで
続行できる。この場合には、新しいデータを保持するた
めのいかなる余地ももはや無いことを、メモリ・インタ
フェースINTは、関連するユニットBに指示する。こ
れは、関連する領域内で余地が利用できるようになるま
で、ユニットBが新しいデータを供給することを阻止す
る。領域Zから集合メモリへデータを転送すると、余地
を使用できる結果となる。そのようなデータ転送はマク
ロ命令がアービタARBにより受け入れられ、アクセス
・インタフェースSIFにより処理されると、ただちに
起きることができる。関連するユニットBがデータを供
給する前に、マクロ命令が発行されることも同様に可能
である。いずれの場合にも、書込みバッファメモリ装置
BUFWが関連する領域の適切な埋めレベルを指示しな
い限り、マクロ命令はアービタARBに加えられない。
【0082】図1〜9を参照して以前に説明したデータ
処理装置は、「課題を解決するための手段」という標題
で述べた部分で概略述べた本発明の実現の例である。図
1に示されているデータ処理装置は3つのデータ処理ユ
ニットBと、それらのデータ処理ユニットBが集合メモ
リSDRAMをアクセスできるように仲介を行うメモリ
・インタフェースINTとを有する。メモリ・インタフ
ェースINTはインタフェース・メモリSRAMと制御
回路CONを有する。両方とも図9に示されている。イ
ンタフェース・メモリSRAMは、種々の異なるデータ
処理ユニットBに属しているデータを一時的に保持す
る。制御回路CONは、インタフェース・メモリSRA
Mが、種々の異なる各データ処理ユニットBのためのF
IFOを構成するようにして、インタフェース・メモリ
を制御する。
【0083】これまでに示した図面および説明は本発明
を限定するものではなくて示すものである。添付されて
いる特許請求の範囲の範囲内に入る数多くの代わりの例
があることが明らかであろう。これに関して、下記の結
びの説明が行われている。
【0084】本発明のデータ処理装置を実現するために
種々のやり方がある。図1に示されているデータ処理装
置は3つのプロセッサを有する。他の実現はより多くの
プロセッサまたはより少ないプロセッサを含むことがで
きる。更に、各プロセッサのデータが1つのインタフェ
ース・メモリに保持されることは必要ではない。たとえ
ば、このデータ処理装置が6つのプロセッサを有すると
仮定する。そのような実現は2つのインタフェース・メ
モリを有することができる。1つのインタフェース・メ
モリは3つのプロセッサに属しているデータを一時的に
保持するためのものであり、他のインタフェース・メモ
リは他の3つのプロセッサに属しているデータを一時的
に保持するためのものである。
【0085】ハードウェアとソフトウエアのアイテムの
少なくとも一方により諸機能を実現するために数多くの
やり方がある。これに関して、図面は非常に線図的であ
って、各図は本発明の1つの実施例を単に表しているだ
けである。したがって、図面は異なるブロックとして異
なる機能を示しているが、これはハードウェアまたはソ
フトウエアの1つのアイテムがいくつかの機能を実行す
るとことを排除するものではない。また、ハードウェア
とソフトウエアの少なくとも一方のアイテムの組合わせ
がある機能を実行することを排除するものでもない。
【0086】図4は、メモリ・インタフェースに含まれ
ている集合メモリと制御メモリ回路に対するアクセスを
組合わせてせぎする種々のブロック含むメモリ・インタ
フェースを示す。原則として、それらのブロックを適切
なプログラムされたコンピュータ回路で実現することが
可能である。プログラムメモリにロードされている命令
のセットがそのコンピュータ回路に、図1ないし図9を
参照して説明した種々の制御動作を行わせる。その命令
のセットは、命令セットを含んでいる、たとえば、ディ
スクなどの媒体を読み取ることによって、プログラム・
メモリにロードできる。媒体の読出しは、たとえば、イ
ンターネットなどの通信ネットワークを介して実行でき
る。すなわち、サービスプロバイダが命令セットをその
通信ネットワークを介して利用できるようにする。
【0087】特許請求の範囲中のどのような参照記号も
特許請求の範囲を限定するものと解してはならない。
「備えている(comprising)」という用語は特許請求の
範囲に挙げられている要素またはステップ以外の要素や
ステップの存在を除外するものではない。ある要素また
はステップに先行する語「a」または「an」は複数の
そのような要素またはステップの存在を排除するもので
はない。つまり、要素またはステップは、単数の場合も
複数の場合も含まれているものとする。
【図面の簡単な説明】
【図1】本発明のデータ処理装置を示す。
【図2】データ処理装置のメモリ・インタフェースの動
作を示す。
【図3】データ処理装置のデータ処理ユニットを示す。
【図4】データ処理装置のメモリ・インタフェースを示
す。
【図5】ユニットに対する読出しアクセスを示す。
【図6A】集合メモリに対する仲裁アクセスを示す。
【図6B】集合メモリに対する仲裁アクセスを示す。
【図7】メモリ・インタフェースのアクセス・インタフ
ェースを示す。
【図8】メモリ・インタフェースのバッファメモリ装置
を示す。
【図9】読出しのためのバッファメモリ装置を示す。
【符号の説明】
SDRAM 集合メモリ B ユニット INT メモリ・インタフェース BBR 専用読出しバス BBW 専用書込みバス BM 集合バス AGA アドレッシング回路 BUF バッファメモリ装置 ARB アービタ AGB マクロ命令アドレッシング回路
───────────────────────────────────────────────────── フロントページの続き (71)出願人 590000248 Groenewoudseweg 1, 5621 BA Eindhoven, Th e Netherlands (72)発明者 ユーグ、ド、ペルテュイ フランス国ガルセル、リュ、ド、ラ、クー ルトデル、3 (72)発明者 ステファンヌ、ミュッツ フランス国カーン、リュ、フレスネル、3

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】複数のプロセッサと、これらプロセッサが
    集合メモリをアクセスできるように仲介するメモリ・イ
    ンタフェースとを備え、 このメモリ・インタフェースは、 種々のプロセッサに属するデータを一時的に保持する、
    インタフェース・メモリと、 インタフェース・メモリが種々のプロセッサのそれぞれ
    のためのFIFOメモリを構成するようにインタフェー
    ス・メモリを制御する、制御回路と、 を備えるデータ処理装置。
  2. 【請求項2】複数のプロセッサと集合メモリとによって
    データ処理をする方法であり、 前記複数のプロセッサと前記集合メモリとの間のデータ
    通信を行う方法であって、 種々のプロセッサに属するデータを、インタフェース・
    メモリに一時的に保持するステップと、 インタフェース・メモリが種々のプロセッサのそれぞれ
    のためのFIFOメモリを構成するように、インタフェ
    ース・メモリを制御するステップと、 を備える方法。
  3. 【請求項3】複数のプロセッサと、これらプロセッサが
    集合メモリをアクセスできるように仲介するメモリ・イ
    ンタフェースとを備えるデータ処理装置のためのコンピ
    ュータ・プログラム・プロダクトであって、前記データ
    処理装置にロードされた時に、メモリ・インタフェース
    に、 種々のプロセッサに属するデータをインタフェース・メ
    モリに一時的に保持するステップと、 インタフェース・メモリが種々のプロセッサのそれぞれ
    のためのFIFOメモリを構成するように、インタフェ
    ース・メモリを制御するステップと、 を実行させる命令のセットを備えるコンピュータ・プロ
    グラム・プロダクト。
JP2000259435A 1999-08-31 2000-08-29 集合メモリ用のインタフェースを有する複数のプロセッサを備える装置 Withdrawn JP2001125826A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
FR9910954A FR2797969A1 (fr) 1999-08-31 1999-08-31 Dispositif a plusieurs processeurs partageant une memoire collective
FR9910954 1999-08-31
FR9912068A FR2799020A1 (fr) 1999-09-28 1999-09-28 Dispositif a plusieurs processeurs ayant une interface pour une memoire collective
FR9912068 1999-09-28

Publications (1)

Publication Number Publication Date
JP2001125826A true JP2001125826A (ja) 2001-05-11

Family

ID=26235092

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000259435A Withdrawn JP2001125826A (ja) 1999-08-31 2000-08-29 集合メモリ用のインタフェースを有する複数のプロセッサを備える装置

Country Status (7)

Country Link
US (1) US6738840B1 (ja)
EP (1) EP1081597B1 (ja)
JP (1) JP2001125826A (ja)
KR (1) KR100676982B1 (ja)
CN (1) CN1145893C (ja)
DE (1) DE60009618T2 (ja)
TW (1) TW475115B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259203A (ja) * 2001-03-01 2002-09-13 Nec Kofu Ltd トランザクション調停装置及び方法
JP2009205601A (ja) * 2008-02-29 2009-09-10 Yokogawa Electric Corp メモリアクセス制御装置

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035908B1 (en) * 2001-07-26 2006-04-25 Lsi Logic Corporation Method for multiprocessor communication within a shared memory architecture
FR2830162B1 (fr) * 2001-09-27 2003-12-05 Streamcore Dispositif de gestion partagee
US7543303B2 (en) * 2002-03-29 2009-06-02 International Business Machines Corporation Use of multiple queues in coupling facility to provide zoning capability in a parallel sysplex environment
CN100552655C (zh) * 2003-08-07 2009-10-21 松下电器产业株式会社 处理器集成电路和安装了处理器集成电路的产品开发方法
US20070255874A1 (en) * 2006-04-28 2007-11-01 Jennings Kevin F System and method for target device access arbitration using queuing devices
CN101814012A (zh) * 2010-05-20 2010-08-25 锐迪科科技有限公司 Sdram存储器结构及数据读写方法
CN102855210B (zh) * 2012-08-27 2015-06-10 福建省力得自动化设备有限公司 一种实现两个单片机间相互通信且数据共享的方法
US9092156B1 (en) * 2013-05-30 2015-07-28 Marvell International Ltd. Methods and apparatus for managing storage device commands

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58181165A (ja) * 1982-04-16 1983-10-22 Hitachi Ltd ベクトル演算プロセツサ
US5179665A (en) * 1987-06-24 1993-01-12 Westinghouse Electric Corp. Microprocessor information exchange with updating of messages by asynchronous processors using assigned and/or available buffers in dual port memory
US5050070A (en) * 1988-02-29 1991-09-17 Convex Computer Corporation Multi-processor computer system having self-allocating processors
US5072420A (en) 1989-03-16 1991-12-10 Western Digital Corporation FIFO control architecture and method for buffer memory access arbitration
EP0422310A1 (en) * 1989-10-10 1991-04-17 International Business Machines Corporation Distributed mechanism for the fast scheduling of shared objects
JPH0619759B2 (ja) * 1990-05-21 1994-03-16 富士ゼロックス株式会社 マルチプロセッサシステムにおける相互通信方法
AU630299B2 (en) * 1990-07-10 1992-10-22 Fujitsu Limited A data gathering/scattering system in a parallel computer
DE59010106D1 (de) * 1990-07-16 1996-03-14 Siemens Ag Kommunikationssystem mit einem der zentralen Steuerung dienenden Multiprozessorsystem
US5465343A (en) * 1993-04-30 1995-11-07 Quantum Corporation Shared memory array for data block and control program storage in disk drive
US6204864B1 (en) * 1995-06-07 2001-03-20 Seiko Epson Corporation Apparatus and method having improved memory controller request handler
KR0150072B1 (ko) * 1995-11-30 1998-10-15 양승택 병렬처리 컴퓨터 시스템에서의 메모리 데이타 경로 제어장치
US5999654A (en) * 1996-07-17 1999-12-07 Matsushita Electric Industrial Co., Ltd. Image processor capable of transferring image data from an input buffer to memory at a high rate of speed
US6081883A (en) * 1997-12-05 2000-06-27 Auspex Systems, Incorporated Processing system with dynamically allocatable buffer memory

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259203A (ja) * 2001-03-01 2002-09-13 Nec Kofu Ltd トランザクション調停装置及び方法
JP2009205601A (ja) * 2008-02-29 2009-09-10 Yokogawa Electric Corp メモリアクセス制御装置

Also Published As

Publication number Publication date
DE60009618T2 (de) 2005-03-24
CN1145893C (zh) 2004-04-14
EP1081597A1 (fr) 2001-03-07
TW475115B (en) 2002-02-01
EP1081597B1 (fr) 2004-04-07
KR20010050239A (ko) 2001-06-15
KR100676982B1 (ko) 2007-01-31
US6738840B1 (en) 2004-05-18
DE60009618D1 (de) 2004-05-13
CN1287314A (zh) 2001-03-14

Similar Documents

Publication Publication Date Title
US7707328B2 (en) Memory access control circuit
JP4472186B2 (ja) 外部デバイスへのアクセスを優先順序付けるための方法および装置
KR100679362B1 (ko) 메모리 요청 재정렬에 의해 버스 이용도를 향상시키는메모리 제어기
JP4695761B2 (ja) コマンド再順序付けシステム
KR910001448B1 (ko) 메모리 액세스 제어시스템
US6842821B2 (en) DDR SDRAM memory controller with multiple dependency request architecture and intelligent requestor interface
US7436728B2 (en) Fast random access DRAM management method including a method of comparing the address and suspending and storing requests
JP2006260472A (ja) メモリアクセス装置
JP2002530743A (ja) ページタグレジスタを使用して、メモリデバイス内の物理ページの状態を追跡すること
KR100676981B1 (ko) 데이터 처리 장치 및 방법과 컴퓨터 판독가능한 기록 매체
JP2002132701A (ja) メモリ制御装置
JP2001125826A (ja) 集合メモリ用のインタフェースを有する複数のプロセッサを備える装置
JP2007018222A (ja) メモリアクセス制御回路
JP2004500608A (ja) ユニバーサルリソースアクセスコントローラ
US6785795B1 (en) Data processing device for use in cooperation with a memory
US6865635B1 (en) Access scheme for a collective resource using a plurality of states
JPH10144073A (ja) シンクロナスdramのアクセス機構
JP2001256106A (ja) メモリアクセスシステム
JPH0689247A (ja) データ通信及び処理システム並びにデータ通信処理方法
JP3235578B2 (ja) メモリアクセス制御方式
JP4593220B2 (ja) メモリアクセス制御方式と方法、及び共有メモリアクセス制御方式と方法
JPH05313618A (ja) 表示制御装置
JPH036768A (ja) リング状階層化マルチプロセッサ
JPH05108538A (ja) メモリアクセス制御方式
JPH10312333A (ja) データ転送制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070827

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20080529

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20090820