JP2703417B2 - 受信バッファ - Google Patents

受信バッファ

Info

Publication number
JP2703417B2
JP2703417B2 JP7314691A JP7314691A JP2703417B2 JP 2703417 B2 JP2703417 B2 JP 2703417B2 JP 7314691 A JP7314691 A JP 7314691A JP 7314691 A JP7314691 A JP 7314691A JP 2703417 B2 JP2703417 B2 JP 2703417B2
Authority
JP
Japan
Prior art keywords
buffer
data
address
read
pointer
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.)
Expired - Lifetime
Application number
JP7314691A
Other languages
English (en)
Other versions
JPH04308956A (ja
Inventor
俊幸 清水
健志 堀江
宏明 石畑
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP7314691A priority Critical patent/JP2703417B2/ja
Priority to AU13967/92A priority patent/AU637543B2/en
Priority to DE1992627061 priority patent/DE69227061T2/de
Priority to EP19920302872 priority patent/EP0507571B1/en
Publication of JPH04308956A publication Critical patent/JPH04308956A/ja
Priority to US08/844,852 priority patent/US5765187A/en
Application granted granted Critical
Publication of JP2703417B2 publication Critical patent/JP2703417B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • G06F5/12Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
    • G06F5/14Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations for overflow or underflow handling, e.g. full or empty flags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9031Wraparound memory, e.g. overrun or underrun detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9047Buffering arrangements including multiple buffers, e.g. buffer pools
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9057Arrangements for supporting packet reassembly or resequencing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、メッセージ通信におけ
るデータの受信バッファに関するものである。たとえば
複数のプロセッサがネットワークで結合されている並列
計算機などでは、各プロセッサがデータを分割保持して
おり、計算実行の過程で他のプロセッサのデータを使用
する場合には、メッセージ通信を行ってデータを転送す
る必要がある。このメッセージ通信は、できるだけ高速
に行われることが望まれている。メッセージ通信の高速
化のためには、データのバッファリングを効率的に実行
できる必要があり、本発明は特にそのための効率的な受
信バッファを実現するものである。
【0002】
【従来の技術】図13に、並列計算機におけるプロセッ
サの従来例構成を示す。図中、1,1’はプロセッサ、
2はネットワーク、3はCPU、4はメモリ、5はDM
Aコントローラ、6は通信デバイス、7は受信バッファ
である。
【0003】ネットワーク2は、プロセッサ1,1’等
の任意のプロセッサ間でのメッセージ通信を可能にする
ために設けられている。通信デバイス6はメッセージ通
信のためのインタフェース制御を行い、データの送受信
はメモリ4に獲得される送信バッファおよび受信バッフ
ァを介して行われる。なおここでは受信動作を説明する
便宜上、受信バッファ7のみを示してある。DMAコン
トローラ5は、データの送受信のためのメモリ4のバッ
ファアクセス制御を、CPU3に代わって実行し、実行
に必要なパラメータはCPU3が実行する命令によって
セットされる。
【0004】従来のメッセージ通信におけるデータの受
信動作は以下の1〜5のステップにしたがって実行され
る。 1.送信プロセッサ(たとえば1’)からのメッセージ
が、ネットワーク2を介して受信プロセッサ(たとえば
1)に到着する。
【0005】2.受信プロセッサ1の通信デバイス6
は、CPU3に割り込み要求を上げ、メッセージの到着
をCPU3に通知する。 3.CPU3は、メモリ4に受信バッファ7を獲得す
る。 4.CPU3は、次にDMAコントローラ5に、受信バ
ッファ7のアドレスや受信データ長などのパラメータを
セットする。
【0006】5.通信デバイス6とDMAコントローラ
5の連携によりデータ受信を開始する。 ここで、メッセージ通信を高速化しようとすると、ステ
ップ2からステップ4までに要する時間と、その外にも
受信バッファがオーバーランした場合にCPUへの割り
込みと対応処理が行われる時間とが問題となる。これら
の時間は、CPU3が介在して行われる処理時間である
ために、通信デバイス6がいかに高速化されてもあまり
変化せず、相対的な割り合いはむしろ増加することにな
る。
【0007】このような問題を軽減する1つの手段とし
て、図14に示すようなリングバッファ方式の受信バッ
ファ方式が従来使用されている。リングバッファは、リ
ードポインタ(RDP)とライトポインタ(WTP)の
2つのポインタを用いてメモリの一定領域を連続循環的
にアクセス使用できるようにするもので、受信バッファ
のデータ容量に対する許容度を増加させるとともに、受
信バッファのセットアップを簡単化してオーバーヘッド
を小さくできる利点をもっているが、書き込みと読み出
しのいずれか一方が進み過ぎるとオーバーランあるいは
アンダーランを生じるなど、なおいくつかの問題を含ん
でいる。次に、リングバッファ方式を用いた受信バッフ
ァの従来例を示す。
【0008】(1)リングバッファ制御方式(特開昭5
9−112327号公報) 本方式は、バッファ領域を拡大するために上位アドレス
を拡張し、そのアドレスカウンタのオーバーランを無視
することにより、アドレスがラップアラウンドするとい
う構成である。その効果は、バッファが大きくなるだけ
であり、オーバーラン/アンダーランを検出できない。
【0009】また、実際に受信したデータのうちまだ、
処理を終わっていないデータがどの領域に存在するかを
知ることが困難である。 (2)データ受信器(特開昭60−178570号公
報) 本方式はDMAとCPUを組み合わせてリングバッファ
を構成する方式である。リングバッファを構成するにあ
たって特別な考慮をしておらず、データ到着時には、必
ずCPUに割り込みが生じる。また、このソフトウェア
による実現のため、オーバーランを本質的に回避するよ
うには、なっていない。
【0010】また、パフォーマンス(処理効率)に着目
すれば、共有バス構成のCPUがデータを管理するた
め、データ受信時には必ず割り込みが起き、ソフトウェ
アの処理が必要となり、パフォーマンスは1/2を遥か
に下回る。
【0011】
【発明が解決しようとする課題】従来のリングバッファ
方式の受信バッファでは、データ容量の許容度を同じメ
モリ領域に対して増大させることができるが、なお予期
されない大量のデータが一時に入力されるとオーバーラ
ンが発生して受信データのとりこぼしを生じたり、パフ
ォーマンスが低下するという問題があった。
【0012】本発明は、オーバーランおよびアンダーラ
ンが発生せず、またCPUの負担も少ない、リングバッ
ファ方式の受信バッファを実現することを目的としてい
る。
【0013】
【課題を解決するための手段】本発明は、リングバッフ
ァ方式の受信バッファにおいて、ライトポインタとリー
ドポインタとの間で値を比較し、オーバーランあるいは
アンダーランの発生を検出する手段をハードウェア回路
で設けることにより課題の解決を図るものである。
【0014】図1において、4は、受信バッファなどが
設けられるメモリである。5は、送受信データのメモリ
アクセス制御を行うDMAコントローラである。8は、
受信バッファのために獲得されたバッファ領域である。
【0015】9は、DMAコントローラ内の各部の動作
を定められた手順で制御するためのシーケンサである。
10は、メモリアクセスアドレスを生成する出力アドレ
ス生成部である。11は、次の書き込みアドレスを指示
するライトポインタWTPである。
【0016】12は、次の読み出しアドレスを指示する
リードポインタRDPである。12’は、リードポイン
タRDPの1つ先の値(RDP+1)をもつレジスタで
ある。13,14は、それぞれライトポインタWTP1
1とリードポインタRDP12とを参照後に+1更新す
る加算機能である。
【0017】15は、バッファ領域8の開始アドレスを
仮想(論理)アドレスで保持する仮想アドレスベースレ
ジスタLARである。16は、バッファ領域8の開始ア
ドレスを実(物理)アドレスで保持する実アドレスベー
スレジスタPARである。
【0018】17は、ライトポインタWTP11とリー
ドポインタRDP12およびレジスタRDPP12’の
各アドレス値を比較し、一致したときオーバーランある
いはアンダーランが発生するものと判定するオーバーラ
ン・アンダーラン検出回路である。オーバーランの検出
はWTP11とRDP12を用いて行い、アンダーラン
の検出はWTP11とRDPP12’を用いて行う。
【0019】18は、アドレス入力バッファであり、各
ポインタWTP11,RDP12と各ベースレジスタL
AR15,PAR16の指定されたものにCPUからア
ドレスを任意に設定するために用いられる。図1におい
て、本発明によるリングバッファ形式の受信バッファ
は、メモリ4上のバッファ領域8と、DMAコントロー
ラ5内に設けられたポインタやベースレジスタなどのア
クセス制御機構によって構成される。
【0020】バッファ領域8の先頭位置の仮想アドレス
はLAR15に、またアドレス変換後の実アドレスはP
AR16にセットされており、アクセス元のプログラム
がユーザプログラムの場合は前者を、システムプログラ
ムの場合は後者をベースアドレスとし、ポインタWTP
11,RDP12のいずれかを相対アドレスとして合成
することにより、バッファ領域8内の書き込みアドレス
あるいは読み出しアドレスを生成する。
【0021】ポインタWTP11は、受信データの書き
込み時に参照され、書き込み終了時に+1更新される。
ポインタRDP12は、レジスタRDPP12’が読み
出されたときにRDPP12’の内容で更新される。R
DPP12’は、RDP12の値に+1したものを保持
している。
【0022】出力アドレス生成部10は、アクセスモー
ドが仮想アドレスか、実アドレスか、またアクセス種別
が書き込みか読み出しかなどにしたがってWTP11,
RDP12,RDPP12’,LAR15,PAR16
の各値から、適切なものを選択して出力アドレスを生成
する。そしてその際バッファサイズを考慮して、WTP
11やRDP12による+1のアドレス更新が定められ
た領域内の循環的なアドレス変化となるように操作す
る。またRDPP12’の読み出し要求に対しては、バ
ッファ内に読み出すべきデータがない場合にアドレスの
代わりにデータがないことを表す情報(NULL)を返
す機能をもつ。
【0023】シーケンサ9は、図示されていない通信デ
バイスや共通バス制御部との間で制御信号をやりとり
し、バスを獲得し、データ転送要求や転送完了通知にし
たがって、アクセス制御を実行し、オーバーランやエラ
ーの発生によってアクセス制御を中止する。
【0024】
【作用】本発明の受信バッファでは、初期化時にWTP
11にはバッファ領域の先頭位置のアドレスがセットさ
れ、RDP12には終端位置のアドレスがセットされ
る。通信デバイスからデ−タの転換要求があると、DM
AはWTP11が指す領域からデ−タを自動的に格納し
ていく。このためプロセッサは、非周期的に発生する他
のプロセッサからのメッセージ送信(自プロセッサから
見れば受信)に邪魔されることなく計算を継続すること
ができる。次にプロセッサは、メッセージが必要となっ
た時にバッファが読みにくいことにより、直ちにデータ
の先頭アドレスあるいは読み出すデータがないことを知
ることができる。バッファのオーバーラン・アンダーラ
ンはハードウェアで監視される。オーバーラン時には、
割り込みによってプロセッサに通知するか、またはデー
タの読み出しによって、バッファに受信領域が生じるま
でデータ転送を停止する。これをユーザが指定すること
ができる。
【0025】バッファを管理しているRDP,WTP,
RDPPなどのレジスタを読み出すことにより、バッフ
ァの状態について必要な情報を得ることができる。RD
Pからは未読み出しデータの先頭位置がわかり、WTP
からは現在どの位置までデータが有効であるかを知るこ
とができる。またRDPPを読むことによってバッファ
内に読み出すべきデータが有るか否かを知ることがで
き、さらにはRDPPの読み出し動作によってRDPが
指している領域の解放と、RDPをRDPPの内容(R
DP+1)によって更新させる動作とをひき起こさせる
ことができる。
【0026】
【実施例】図2は、図1のDMAコントローラ5の実施
例構成を示す。図2において、出力アドレス生成部10
内の19〜21はマルチプレクサMPXであり、オーバ
ーラン・アンダーラン検出回路17内の22と23はコ
ンパレータである。
【0027】シーケンサ9は、連続アクセス実行時に、
アクセスごとにRDP更新信号incrdpやWTP更
新信号dmaiを出力し、またオーバーラン検出信号w
matchの入力によりアクセス制御を停止する。WT
P11とRDP12とは、それぞれシーケンサ9からの
dmaiとincrdpとによって+1更新される。
【0028】オーバーラン・アンダーラン検出回路17
のコンパレータ22はWTP11の現在値とRDP12
の現在値とを比較し、一致したときオーバーラン検出信
号wmatchを出力し、次の書き込みでオーバーラン
が発生することをシーケンサ9に通知する。
【0029】コンパレータ23は、RDPの+1更新値
とWTPの現在値とを比較し、一致したときアンダーラ
ン検出信号rmatchを出力する。MPX19は、ア
クセス元がユーザプログラムかシステムプログラムまた
はDMAかを示す制御信号(図示せず)によって、LA
R15とPAR16の一方を選択し、出力アドレスの上
位ビットを決定する。MPX20は、RDP更新inc
rdp、WTP更新dmai、アンダーランrmatc
hなどの制御信号に基づいてそれぞれRDP,RDP’
+1,WTP,0のいずれかを選択し、出力アドレスの
下位ビットを決定する。
【0030】MPX21は、受信バッファサイズを決定
するデコーダ機能をもち、指定されたサイズ信号SIZ
Eにしたがって、MPX19とMPX20の各特定中位
のビットのいずれかを選択し、出力アドレスの中位ビッ
トを決定する。この中位ビットの値によって決まるバッ
ファサイズにより、WTP11やRDP12の値が一方
向に+1更新されても、出力アドレスはバッファサイズ
単位でエンドレスに変化するようになる。
【0031】図3は、図2の実施例中の出力アドレス生
成部10の詳細構成図である。ここでPARとLARの
ビット幅は20ビット、RDP,RDPP(RDP+
1),WTPのビット幅は15ビットとする。またSr
dp,Srdpp,Swtpは、それぞれ図2のシーケ
ンサ9から出力されるRDP,RDPP,WTPの選択
制御信号であり、dmaはDMAアクセス、syste
mはシステムプログラムからのアクセス、larはユー
ザプログラムからの仮想アドレスを用いたアクセスを表
している。
【0032】MPX19は、Srdppとrmatch
がともに‘H’のときは0となり、それ以外のときで、
dmaまたはsystemが‘H’のときはPARを出
力し、larが‘H’のときはLARを出力する。MP
X20は、Srdpが‘H’のときRDPを選択し、S
rdppとrmatchがともに‘H’のときはRDP
Pを選択し、Swtpまたはdmaが‘H’のときはW
TPを選択し、Srdppとrmatchがともに
‘H’のときは0を選択する。
【0033】MPX21は、バッファサイズを規定する
マルチプレクサであり、図4に示すように、3ビットの
SIZEの値を7本の信号SIZE0,SIZE1−
0,SIZE2−0,…,SIZE6−0に変換するデ
コーダDEC25と、各信号によって制御される8個の
マルチプレクサMPX26−0〜26−6からなる。
【0034】DEC25の出力のSIZE0はSIZE
値が0のときにのみ‘H’となり、SIZE1−0はS
IZE値が1または0のとき‘H’となり、SIZE2
−0はSIZE値が2または1または0のとき‘H’と
なり、一般的にSIZEi−0はSIZE値がi以下の
任意の値で‘H’となる。また各MPX26−0〜26
−6は、MPX19の出力の下位7ビットAR(6)〜
AR(0)とMPX20の出力の上位7ビットPTR
(6)〜PTR(0)とを、それぞれのビットごとにD
EC25の出力により選択するもので、一般的にSIZ
Ei−0が‘H’のときAR側のビットが選択される。
【0035】図3に戻ると、このようにしてMPX1
9,20,21から出力される上位、下位、中位のアド
レスビットは、バッファ24で合成され、アドレスAD
として出力される。図5は、図2の実施例のオーバーラ
ン・アンダーラン検出回路17の詳細構成を示す。
【0036】図5の(a)は、各15ビットのWTPと
RDPとをビット対応で比較する15個のENOR回路
からなるコンパレータ(22,23)であり、一致出力
はeq(14)〜eq(0)で表されている。図5の
(b)は、サイズ信号SIZEのデコーダであり、3ビ
ットのSIZEの値を8本の信号SIZE0〜SIZE
7中の対応する1本の‘H’に変換する。
【0037】図5の(c)は、オーバーランまたはアン
ダーランの検出信号生成回路であり、下位eq(7)〜
eq(0)ビットは比較対象としてその全‘H’を検出
し、上位eq(14)〜eq(8)については指定され
たサイズSIZEiにしたがって比較するビット範囲を
変更して、結果をオーバーランwmatchまたはアン
ダーランrmatchを出力する。
【0038】図6は図2の実施例におけるシーケンサの
制御状態遷移を示したものである。図において、IDL
Eは動作停止状態であり、BWAIT,BADDR,B
WAITが動作状態である。これらの状態でエラーが発
生するとIDLE状態に戻る。BWAITでは、通信デ
バイスにデータが準備できバッファが空きとなったこと
によるデータ転送要求の発生とバス獲得待ちとを行う。
【0039】BWAIT状態でバスが獲得され、データ
転送が可能になるとBADDR状態に移り、アドレスバ
スにアドレスを出力する。この1クロック後にBDAT
A状態に移り、データ転送完了待ちを行う。データ転送
完了を確認した段階で、続いてデータ転送要求がありバ
スが獲得可能ならばBADDR状態に戻り連続データ転
送を行い、他方データ転送要求が続いてなければBWA
IT状態に戻り、データ転送要求を待つ。
【0040】次に本発明実施例によるDMAの動作を説
明する。まず図7に示すように、WTPがバッファのT
OP、RDPがBOTTOM−7である時CPUがRD
PP値を読むと、バッファにデータがない状態なので0
(NULL)が返される。つまり図3で、 Srdpp=1, rmatch=CMP(RDP+1,WTP)=1 となるので、出力アドレスAD=0となる。これによ
り、受信バッファ内のデータの有無をCPUから簡単に
調べることが可能となる。
【0041】次に本発明実施例に基づく受信バッファの
使用例を示す。実アドレス0X’5A000から0X’
5BFFFまでの8KByteの領域を使用する場合を
例として説明する。このとき、メモリ空間は0X’82
000からマッピングされているものとする。またシス
テムモードとユーザモードとを区別するために、sy
s,usrをそれぞれ前置して表記する。
【0042】 LAR,PAR,RDP,WTPの設
定を以下のように行う。 LAR ← 0X’82000 PAR ← 0X’5A000 RDP ← 0X’01FF0 WTP ← 0X’00000 なおRDPとWTPはリセット時に初期化されている。
【0043】 コマンドレジスタBCMDを設定す
る。BCMDはDMAコントローラに通常そなえられて
いる制御レジスタである。外にもステータスレジスタB
RSTが設けられている。 SIZE=110,WC=0,ST=1として BCMD ← 0X’86000000 ここでRDP,WTPを読み出せば、 sys RDP=0X’5BFF0 usr RDP=0X’83FF0 sys WTP=0X’5A000 usr WTP=0X’82000 が得られる。しかしRDPPはバッファが空であるた
め、読み出すと sys RDPP=0X’00000 usr RDPP=0X’00000 が返される。
【0044】 データが3ブロック(16バイト/1
ブロック)受信されると、WTPは順次以下のように更
新され、データはメモリに書き込まれる。 sys 0X’5A000 sys 0X’5A010 sys 0X’5A020 データ受信完了時点で、WTPは0X’5A030とな
る。
【0045】 このときRDPPを読みに行くと、
順次以下のような情報が得られる。 usr RDPP=0X’82000 → 1ブロック目のデータがユーザ アドレス0X’82000(シ ステムアドレス0X’5A00 0)にあることを表す。
【0046】 usr RDPP=0X’82010 → 2ブロック目のデータのユーザ アドレス usr RDPP=0X’82020 → 3ブロック目のデータのユーザ アドレス usr RDPP=0X’00000 → データがない usr RDPP=0X’00000 → データがない これにより、ユーザプログラムは、3ブロックのデータ
がまだ無いことを知ることができる。
【0047】 8KByteのデータが受信されてバ
ッファが一杯になった場合には、 オーバーラン wmatch=1 となるため、シーケンサはデータ転送を一時停止し、オ
ーバーランによるデータの抜けを防止する。
【0048】 RDPPの読み出しによりRDPが更
新され、バッファに空きが生じたとき受信を再開する。
予め不要であることが知られている受信データが混
在している場合、RDPを書き替えて読み飛ばしを行
う。たとえば sys RDP=0X’5A010, sys WTP=0X’5A810 のとき、16ブロックのデータを読み飛ばすには、RD
Pに対して sys RDP ← 0X’5A110 の書き込みを行う。このときのレジスタ書き込みはDM
A転送を行うバスを共通に用いているので、読み飛ばし
のシーケンスが完了するまではDMAが次の動作に移る
ことがないので、排他的に動作することが保証される。
【0049】 読み出したい受信データが図8に例示
されるように2つの領域 0X’5BF00−0X’5BFFF 0X’5A000−0X’5A0FF に分かれている場合、図中に点線で示すようにバッファ
領域を2倍使用して、 0X’5BF00−0X’5C100 のように連続アクセスすることができる。詳細は後述さ
れる。
【0050】 データ受信によってメモリの書き込み
を行ったとき、キャッシュ上のデータとの不一致が生じ
ることがあるが、これをRDPP読み出し時に出力され
るアドレスを利用してキャッシュ上のデータを無効化す
ることにより、キャッシュとメモリとの間のデータの整
合性を保証することができる。
【0051】図9および図10により、キャッシュデー
タの無効化のための実施例を説明する。図9の(a)
は、従来のキャッシュの構成を本発明実施例との対比の
ために示したものである。図中の27はタグメモリTA
G、28はアトリビュートメモリATTR、29はキャ
ッシュデータメモリ、30は比較回路、31はANDゲ
ートである。アドレスADDを上位と下位に分け、下位
アドレスADDによりTAG,ATTR,キャッシュデ
ータを同時にアクセスし、TAGが上位アドレスADD
と同じでしかもATTRがvalid(有効)であると
きにhit(キャッシュヒット)としてキャッシュデー
タを使用するものである。TAGが不一致であったり、
ATTRが無効を示している場合には、メインメモリか
らデータを読み出して使用する。使用されたデータは、
同じTAGを共有するデータがアクセスされるまではキ
ャッシュメモリ上に保持される。
【0052】ここでデータ受信のI/O処理により、キ
ャッシュに保持されているデータのアドレスに対してメ
モリで書き替えが行われると、キャッシュとメモリとの
間のデータに不一致が生じる。例えば図10の(a)に
示すように、メモリ35のアドレスBにデータCが格納
されていて、このデータCを読み出すと、キャッシュ3
4上にデータCが保持されることになる。この後、メモ
リ35のアドレスBにデータDを書き込むと、図10の
(b)に示すように、キャッシュ34とメモリ35との
間にデータの不一致が生じる。ここでデータDを読もう
とすると、キャッシュ34のアドレスBのデータCは有
効なままであるためこのデータCが読み出され、データ
Dを読むことができないことになる。
【0053】このため、メモリ35上で更新されたアド
レスに対応するキャッシュ34上のデータは無効化する
必要がある。本発明の実施例では、データ受信によりメ
モリのバッファへのデータ書き込みを行った後に読み出
しを行う際、レジスタRDPPの読み出しが行われ、そ
のとき更新のあったアドレスがバス上に出力されるの
で、このアドレスを利用してキャッシュ上の対応アドレ
スのデータの無効化処理を行うようにするものである
(図10(b)参照)。
【0054】図9の(b)はその実現のための実施例回
路を示し、RDPP読み出しにより、DMAコントロー
ラから共通バス上に出力されたアドレスの上位と下位の
データを取り込むためにマルチプレクサMPX32,3
3がそれぞれ用いられ、RDPP読み出し実行時にこの
上位、下位データをアクセスアドレスの上位ADD、下
位ADDの代わりに選択してTAG,ATTRをアクセ
スし、hitすればATTRにinvalidを書き込
んでそのデータを無効化するものである。
【0055】次に図11により、受信データがバッファ
領域の上端と下端とに分離している場合に連続アクセス
を可能にする実施例について説明する。図11の(a)
に示すように、実メモリ37上で分離しているデータの
アドレスが連続領域となるようにマッピングするもので
ある。そのため実際のバッファ領域のサイズの2倍のア
ドレス領域をとって、データの分離を回避させている。
【0056】たとえば、アドレスイメージ36の5C0
00−5E000を実メモリ5A000−5C000に
マッピングし、5BF00−5C100をアクセスする
ことにより、実メモリ37上の分離データを連続読み出
しすることが可能となる。図11の(b)はその実現の
ためのアドレス変換回路の実施例であり、アドレスビッ
トAD〔14:13〕を、5C000−5E000の間
‘01’に変換して使用するようにする。図中のデコー
ダDEC38は変換対象区間の検出を行い、マルチプレ
クサMPX39はその検出時にビット値の変換を行って
いる。
【0057】次に図12により、受信データ(メッセー
ジ)のタイプやアクセス元の種別に応じて異なる受信バ
ッファを使用する実施例を説明する。図12の(a)に
示すように、受信バッファを管理するレジスタRDP,
WTP,LAR,PAR,BCMD,BRSTなどを複
数組設け、メッセージのタイプやタスクIDなどによっ
て選択使用することにより、複数の受信バッファを実現
する。
【0058】メッセージタイプは、受信データのヘッダ
から取り出すことができ、タスクIDは、タスクIDを
保持しているレジスタから得ることができる。図12の
(b)はその実現例を示し、タイプ別のレジスタ群40
〜42をチェーンにつないで管理し、タイプをセットし
たレジスタreg43の内容をデコーダDEC44で識
別して、該当する1つのレジスタ群を選択するようにし
ている。各レジスタにはアドレスが割り付けられてお
り、このアドレスを用いて群中の任意のレジスタを指定
できる。
【0059】このような構成をもつことにより、同じイ
ンタフェースを用いて特定タイプのメッセージのみを効
率的にアクセスすることが可能となる。
【0060】
【発明の効果】(1)本発明により、データがプロセッ
サに到着してからCPUが従来行っていた一連の処理を
省略することが可能となり、データ受信時のセットアッ
プ時間が短縮できるとともに、CPUの負担の軽減によ
り処理効率を向上させることができる。
【0061】(2)受信バッファのポインタの更新がハ
ードウェアで自動的に行われるため、従来のソフトウェ
アを用いた場合の手間を省くことができる。 (3)受信データの読み飛ばしができるため、無駄なデ
ータの処理が不要になり、処理の迅速化が可能となる。
【0062】(4)受信バッファを管理するレジスタの
読み出しでデータがない場合の情報を得ることができ、
バッファの読み出し処理が効率化される。 (5)ベースアドレスを仮想アドレスと実アドレスとで
もつことにより、アクセスモードが変わっても迅速にメ
モリアドレスを生成することができる。
【0063】(6)受信バッファを複数組設け、タスク
IDやメッセージのタイプ別などで切り分け使用するこ
とにより、アクセス元のデータ受信処理を効率化でき
る。 (7)受信バッファを管理するレジスタの読み出しによ
り出力されるアドレスを用いてキャッシュ上の対応アド
レスのデータを自動的に無効化できるため、キャッシュ
とメモリのデータの整合性の保証が可能となる。
【0064】(8)受信バッファのアドレス領域を2倍
用意することにより、分離データの連続アクセスが可能
となり、アクセス処理が効率化される。
【図面の簡単な説明】
【図1】本発明の原理的構成図である。
【図2】本発明実施例によるDMAコントローラの詳細
構成図である。
【図3】本発明実施例による出力アドレス生成部の詳細
構成図である。
【図4】本発明実施例によるサイズマルチプレクサの詳
細構成図である。
【図5】本発明実施例によるオーバーラン・アンダーラ
ン検出回路の詳細構成図である。
【図6】本発明実施例によるシーケンサの状態遷移図で
ある。
【図7】本発明実施例における受信バッファの初期化状
態の説明図である。
【図8】本発明実施例における分離データの連続アクセ
ス方法の説明図である。
【図9】本発明実施例によるキャッシュデータの無効化
機構の構成図である。
【図10】本発明実施例によるキャッシュデータの無効
化制御例の説明図である。
【図11】本発明実施例における分離データのアドレス
変換回路の構成図である。
【図12】本発明実施例による複数バッファの構成例の
説明図である。
【図13】並列計算機におけるプロセッサの従来例構成
図である。
【図14】リングバッファ方式の受信バッファの従来例
説明図である。
【符号の説明】
4 メモリ 5 DMAコントローラ 8 バッファ領域 9 シーケンサ 10 出力アドレス生成部 11 ライトポインタWTP 12 リードポインタRDP 13,14 +1加算機能 15 仮想アドレスベースレジスタLAR 16 実アドレスベースレジスタPAR 17 オーバーラン・アンダーラン検出回路 18 アドレス入力バッファ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平2−73590(JP,A) 特開 平1−295352(JP,A) 特開 平3−37870(JP,A) 特開 昭62−184560(JP,A) 特開 昭62−184561(JP,A)

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】 主記憶装置上に設けられたバッファ領域
    と、バッファ領域上の次の書き込みアドレスを指示する
    ライトポインタ(WTP)と、同じく読み出しアドレス
    を指示するリードポインタ(RDP)とからなるリング
    バッファ方式の受信バッファにおいて、 ライトポインタ(WTP)とリードポインタ(RDP)
    の値に基づいてオーバーランおよびアンダーランの発生
    を検出するオーバーラン・アンダーラン検出回路(1
    7)をそなえ、 さらに前記バッファ領域へのデータの書き込みを停止す
    る手段を有するDMA制御装置を設けて、オーバーラン
    を回避し、アンダーランが検出されたとき、前記バッフ
    ァ領域からのデータの読み出しを不能にする制御を行
    い、さらにリードポインタ(RDP)の1つ先のアドレ
    スを保持するレジスタ(RDPP)を設けて、当該レジ
    スタの読み出しが行われたときリードポインタ(RD
    P)の内容を当該レジスタ(RDPP)の内容で更新
    し、また当該レジスタの読み出しが行われた際受信バッ
    ファにデータがない場合にはデータがないことを示す値
    を返す手段を設けたことを特徴とする受信バッファ。
  2. 【請求項2】 主記憶装置上に設けられたバッファ領域
    と、バッファ領域上の次の書き込みアドレスを指示する
    ライトポインタ(WTP)と、同じく読み出しアドレス
    を指示するリードポインタ(RDP)とからなるリング
    バッファ方式の受信バッファにおいて、 ライトポインタ(WTP)とリードポインタ(RDP)
    の値に基づいてオーバーランおよびアンダーランの発生
    を検出するオーバーラン・アンダーラン検出回路(1
    7)をそなえ、 さらに前記バッファ領域へのデータの書き込みを停止す
    る手段を有するDMA制御装置を設けて、オーバーラン
    を回避し、アンダーランが検出されたとき、前記バッフ
    ァ領域からのデータの読み出しを不能にする制御を行
    い、さらにリードポインタ(RDP)の1つ先のアドレ
    スを保持するレジスタ(RDPP)を設けて、当該レジ
    スタの読み出しが行われたときリードポインタ(RD
    P)の内容を当該レジスタ(RDPP)の内容で更新す
    るとともに、ライトポインタ(WTP )あるいはリード
    ポインタ(RDP)に加算するベースアドレスを仮想ア
    ドレス形式と実アドレス形式でそれぞれ保持するレジス
    タを設けて、アクセス元の種別に応じて自動的に切り替
    え使用することを特徴とする受信バッファ。
  3. 【請求項3】 請求項1および請求項2において、受信
    バッファを複数実現できる様にバッファ管理を行うポイ
    ンタを複数設けるとともに、そのポインタを選択する機
    構を設けることにより、受信したデータの種類を受信時
    に識別し、受信したデータを種類ごとに異なる受信バッ
    ファに格納することを特徴とする受信バッファ。
  4. 【請求項4】 請求項3において、受信バッファを管理
    するレジスタを、データの種別に関連する情報をもつレ
    ジスタの値とアドレスとの組み合わせにより指定するこ
    とを特徴とする受信バッファ。
  5. 【請求項5】 請求項4において、データの種別に関連
    する情報をもつレジスタはタスクの識別情報をもつレジ
    スタであることを特徴とする受信バッファ。
  6. 【請求項6】 請求項1および請求項2において、受信
    バッファを管理するポインタを使用したとき、使用した
    ポインタのデータ領域のキャッシュデータを無効化する
    ことを特徴とする受信バッファ。
  7. 【請求項7】 請求項1および請求項2において、受信
    バッファのアドレス領域を実際のバッファサイズの2倍
    使用し、それぞれのアドレス空間を連続させてバッファ
    領域をマッピングすることを特徴とする受信バッファ
JP7314691A 1991-04-05 1991-04-05 受信バッファ Expired - Lifetime JP2703417B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP7314691A JP2703417B2 (ja) 1991-04-05 1991-04-05 受信バッファ
AU13967/92A AU637543B2 (en) 1991-04-05 1992-04-01 Receiving buffer control system
DE1992627061 DE69227061T2 (de) 1991-04-05 1992-04-01 Empfangspuffersteuerungssystem
EP19920302872 EP0507571B1 (en) 1991-04-05 1992-04-01 Receiving buffer control system
US08/844,852 US5765187A (en) 1991-04-05 1997-04-22 Control system for a ring buffer which prevents overrunning and underrunning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7314691A JP2703417B2 (ja) 1991-04-05 1991-04-05 受信バッファ

Publications (2)

Publication Number Publication Date
JPH04308956A JPH04308956A (ja) 1992-10-30
JP2703417B2 true JP2703417B2 (ja) 1998-01-26

Family

ID=13509769

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7314691A Expired - Lifetime JP2703417B2 (ja) 1991-04-05 1991-04-05 受信バッファ

Country Status (5)

Country Link
US (1) US5765187A (ja)
EP (1) EP0507571B1 (ja)
JP (1) JP2703417B2 (ja)
AU (1) AU637543B2 (ja)
DE (1) DE69227061T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2645248A1 (en) 2012-03-30 2013-10-02 Fujitsu Limited Information processing apparatus, arithmetic device, and information tansferring method
CN111372038A (zh) * 2018-12-26 2020-07-03 厦门星宸科技有限公司 多串流影像处理装置及方法

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5617088A (en) * 1994-01-26 1997-04-01 Sony Corporation Sampling frequency converting device and memory address control device
US5689713A (en) * 1995-03-31 1997-11-18 Sun Microsystems, Inc. Method and apparatus for interrupt communication in a packet-switched computer system
US5710891A (en) * 1995-03-31 1998-01-20 Sun Microsystems, Inc. Pipelined distributed bus arbitration system
US5655100A (en) * 1995-03-31 1997-08-05 Sun Microsystems, Inc. Transaction activation processor for controlling memory transaction execution in a packet switched cache coherent multiprocessor system
EP0735480B1 (en) * 1995-03-31 2003-06-04 Sun Microsystems, Inc. Cache coherent computer system that minimizes invalidation and copyback operations
US5907485A (en) * 1995-03-31 1999-05-25 Sun Microsystems, Inc. Method and apparatus for flow control in packet-switched computer system
US5634068A (en) * 1995-03-31 1997-05-27 Sun Microsystems, Inc. Packet switched cache coherent multiprocessor system
EP0735481B1 (en) * 1995-03-31 2003-05-14 Sun Microsystems, Inc. System level mechanism for invalidating data stored in the external cache of a processor in a computer system
US5684977A (en) * 1995-03-31 1997-11-04 Sun Microsystems, Inc. Writeback cancellation processing system for use in a packet switched cache coherent multiprocessor system
US5657472A (en) * 1995-03-31 1997-08-12 Sun Microsystems, Inc. Memory transaction execution system and method for multiprocessor system having independent parallel transaction queues associated with each processor
US5900886A (en) * 1995-05-26 1999-05-04 National Semiconductor Corporation Display controller capable of accessing an external memory for gray scale modulation data
WO1996037873A1 (en) * 1995-05-26 1996-11-28 National Semiconductor Corporation Display controller capable of accessing graphics data from a shared system memory
US5821910A (en) * 1995-05-26 1998-10-13 National Semiconductor Corporation Clock generation circuit for a display controller having a fine tuneable frame rate
JPH1078934A (ja) * 1996-07-01 1998-03-24 Sun Microsyst Inc パケット切替えコンピュータ・システムのマルチサイズ・バス結合システム
US5893165A (en) * 1996-07-01 1999-04-06 Sun Microsystems, Inc. System and method for parallel execution of memory transactions using multiple memory models, including SSO, TSO, PSO and RMO
DE19650993A1 (de) * 1996-11-26 1998-05-28 Francotyp Postalia Gmbh Anordnung und Verfahren zur Verbesserung der Datensicherheit mittels Ringpuffer
JPH10207766A (ja) * 1997-01-16 1998-08-07 Nec Ic Microcomput Syst Ltd 画像生成装置
US6101329A (en) * 1997-02-18 2000-08-08 Lsi Logic Corporation System for comparing counter blocks and flag registers to determine whether FIFO buffer can send or receive data
US5923900A (en) * 1997-03-10 1999-07-13 International Business Machines Corporation Circular buffer with n sequential real and virtual entry positions for selectively inhibiting n adjacent entry positions including the virtual entry positions
DE69837123T2 (de) * 1997-04-02 2007-11-29 Matsushita Electric Industrial Co., Ltd., Kadoma Hochgeschwindigkeits-Daten-Ein/Ausgangsgerät zur Übertragung der Daten in den internen Speicher, Behandlungsausführung auf den Daten und Ausgabe der Daten
US6092128A (en) * 1997-08-28 2000-07-18 Cypress Semiconductor Corp. Ethernet repeater that couples an input data stream to multiple output data streams of differing rates and provides access to a shared bus by a number of inputs and outputs
US5978868A (en) * 1997-08-28 1999-11-02 Cypress Semiconductor Corp. System for generating buffer status flags by comparing read and write pointers and determining direction of progression of read pointer with respect to write pointer
US6148386A (en) * 1998-03-19 2000-11-14 Lucent Technologies Inc Address generator circuity for a circular buffer
EP0965980A1 (en) * 1998-06-19 1999-12-22 Deutsche Thomson-Brandt Gmbh Device for amplifying and converting current signals into voltage signals
JP3163064B2 (ja) * 1998-07-22 2001-05-08 三洋電機株式会社 ディスク記録装置
JP3284464B2 (ja) * 1998-09-29 2002-05-20 セイコーエプソン株式会社 ページプリンタ及びページプリントシステム
US6363438B1 (en) * 1999-02-03 2002-03-26 Sun Microsystems, Inc. Method of controlling DMA command buffer for holding sequence of DMA commands with head and tail pointers
GB2350533B (en) * 1999-05-28 2001-07-04 Mitel Corp Method to control data reception buffers for packetized voice channels
US6408409B1 (en) * 1999-11-15 2002-06-18 Sun Microsystems, Inc. Method and apparatus for ring buffer flow error detection
JP2001216645A (ja) 1999-11-22 2001-08-10 Sanyo Electric Co Ltd 制御装置
JP2001216644A (ja) 1999-11-22 2001-08-10 Sanyo Electric Co Ltd データ記録装置
JP2001216646A (ja) 1999-11-22 2001-08-10 Sanyo Electric Co Ltd データ記録装置
JP2001216647A (ja) 1999-11-22 2001-08-10 Sanyo Electric Co Ltd 制御装置
JP2001250329A (ja) 1999-12-27 2001-09-14 Sanyo Electric Co Ltd データ記録装置
JP3545330B2 (ja) 1999-12-27 2004-07-21 三洋電機株式会社 記録制御装置
JP3754288B2 (ja) 1999-12-27 2006-03-08 三洋電機株式会社 制御装置
US6480912B1 (en) 2000-07-21 2002-11-12 Stmicroelectronics, Inc. Method and apparatus for determining the number of empty memory locations in a FIFO memory device
US6952739B2 (en) * 2000-08-03 2005-10-04 International Business Machines Corporation Method and device for parameter independent buffer underrun prevention
GB2366935B (en) * 2000-09-15 2004-01-07 Mitel Corp Method of checking for and recovering from underruns and overrun slips when writing to circular buffers in dynamic bandwidth circuit emulation services
FR2817364A1 (fr) * 2000-11-29 2002-05-31 Thomson Multimedia Sa Procede de detection de l'effacement d'une donnee dans une memoire geree circulairement, et dispositif pour la mise en oeuvre du procede
JP2002230772A (ja) 2001-01-31 2002-08-16 Sanyo Electric Co Ltd データ記録装置及びデータ記録装制御装置
JP3801088B2 (ja) * 2002-04-19 2006-07-26 株式会社デンソー 車両用通信装置
US7042813B2 (en) * 2002-05-13 2006-05-09 Texas Instruments Incorporated Shock protection for compressed audio on a CD player
US7697946B2 (en) * 2002-06-04 2010-04-13 Forster Ian J Reflective communication using radio-frequency devices
AU2002328419A1 (en) * 2002-07-01 2004-01-19 Ipsquare Semiconductor circuit device, packet processing method, management system, management method, and packet processing method
ATE485557T1 (de) * 2003-04-16 2010-11-15 Nxp Bv Datenverarbeitung wobei gleichzeitig ausgeführte prozesse durch einen fifo-puffer kommunizieren
US20050262314A1 (en) * 2004-05-21 2005-11-24 Oh Yong S System and method for circular buffer
EP1763748A1 (en) * 2004-05-27 2007-03-21 Koninklijke Philips Electronics N.V. Signal processing apparatus
US20060075184A1 (en) * 2004-10-01 2006-04-06 Jen-Ying Chen Synchronous\asynchronous memory device with single port memory unit
TWI237806B (en) * 2004-11-03 2005-08-11 Sunplus Technology Co Ltd Audio decoding system with ring buffer and method thereof
US7350040B2 (en) * 2005-03-03 2008-03-25 Microsoft Corporation Method and system for securing metadata to detect unauthorized access
US8089978B2 (en) * 2005-11-09 2012-01-03 Freescale Semiconductor, Inc. Method for managing under-run and a device having under-run management capabilities
DE602006013197D1 (de) * 2006-01-04 2010-05-06 Freescale Semiconductor Inc Verfahren zur verwaltung von unterläufen und einrichtung mit unterlauf-verwaltungsfähigkeiten
US20080148399A1 (en) * 2006-10-18 2008-06-19 Microsoft Corporation Protection against stack buffer overrun exploitation
KR101344475B1 (ko) * 2007-01-05 2013-12-24 삼성전자주식회사 메모리 관리방법 및 장치
JP2008293484A (ja) * 2007-04-27 2008-12-04 Panasonic Corp バッファメモリ共有装置
JP4854598B2 (ja) * 2007-05-31 2012-01-18 三菱電機株式会社 データ転送制御装置
EP2045973A1 (en) * 2007-10-02 2009-04-08 Deutsche Thomson OHG A memory buffer system and method for operating a memory buffer system for fast data exchange
CN101526912A (zh) * 2008-03-04 2009-09-09 英业达股份有限公司 内存干扰测试的系统与方法
US8291136B2 (en) * 2009-12-02 2012-10-16 International Business Machines Corporation Ring buffer
GB2482303A (en) * 2010-07-28 2012-02-01 Gnodal Ltd Modifying read patterns for a FIFO between clock domains
JP5728948B2 (ja) * 2011-01-06 2015-06-03 セイコーエプソン株式会社 記録システム、記録システムの制御方法、記録制御装置、および、プログラム
WO2013129031A1 (ja) 2012-02-29 2013-09-06 三菱電機株式会社 データ転送装置、データ転送方法及びデータ転送プログラム
US20140068139A1 (en) * 2012-08-29 2014-03-06 Advanced Micro Devices, Inc. Data transfer system and method
US10516740B2 (en) * 2014-05-30 2019-12-24 Apple Inc. Dynamic transport switching in inter-device communication
JP6334376B2 (ja) * 2014-12-02 2018-05-30 株式会社東芝 通信装置及びディスクリプタオーバーフロー検出方法
CN110557341A (zh) * 2018-05-31 2019-12-10 北京京东尚科信息技术有限公司 数据限流的方法和装置

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1441816A (en) * 1973-07-18 1976-07-07 Int Computers Ltd Electronic digital data processing systems
DE2714106C3 (de) * 1977-03-30 1982-01-14 Telefonbau Und Normalzeit Gmbh, 6000 Frankfurt Verfahren zum Zwischenspeichern von Informationen in einem FIFO-Speicher
US4175287A (en) * 1978-01-23 1979-11-20 Rockwell International Corporation Elastic store slip control circuit apparatus and method for preventing overlapping sequential read and write operations
US4504902A (en) * 1982-03-25 1985-03-12 At&T Bell Laboratories Cache arrangement for direct memory access block transfer
JPS59112327A (ja) * 1982-12-20 1984-06-28 Hitachi Ltd リングバツフア制御方式
JPS60178570A (ja) * 1984-02-24 1985-09-12 Nec Corp デ−タ受信器
US4648033A (en) * 1984-09-07 1987-03-03 International Business Machines Corporation Look-aside buffer LRU marker controller
US4692894A (en) * 1984-12-18 1987-09-08 Advanced Micro Devices, Inc. Overflow/Underflow detection for elastic buffer
US4704697A (en) * 1985-06-17 1987-11-03 Counterpoint Computers Multiple station video memory
JPS62184560A (ja) * 1986-02-07 1987-08-12 Matsushita Electric Ind Co Ltd 入出力バツフア制御装置
JPS62184561A (ja) * 1986-02-07 1987-08-12 Matsushita Electric Ind Co Ltd 入出力バツフア制御装置
US5133062A (en) * 1986-03-06 1992-07-21 Advanced Micro Devices, Inc. RAM buffer controller for providing simulated first-in-first-out (FIFO) buffers in a random access memory
US4949301A (en) * 1986-03-06 1990-08-14 Advanced Micro Devices, Inc. Improved pointer FIFO controller for converting a standard RAM into a simulated dual FIFO by controlling the RAM's address inputs
JPS62208153A (ja) * 1986-03-08 1987-09-12 Nec Corp 入出力バツフア装置
GB2190220A (en) * 1986-05-09 1987-11-11 Int Computers Ltd Multi-level storage system
JPS63291134A (ja) * 1987-05-22 1988-11-29 Toshiba Corp 論理集積回路
JPH01143080A (ja) * 1987-11-30 1989-06-05 Sony Corp 記録装置
US4980816A (en) * 1987-12-18 1990-12-25 Nec Corporation Translation look-aside buffer control system with multiple prioritized buffers
US4945548A (en) * 1988-04-28 1990-07-31 Digital Equipment Corporation Method and apparatus for detecting impending overflow and/or underrun of elasticity buffer
JPH0650486B2 (ja) * 1988-05-24 1994-06-29 日本電気株式会社 データチェイン処理方式
JPH0223439A (ja) * 1988-07-13 1990-01-25 Mitsubishi Electric Corp データ処理装置
JP2556558B2 (ja) * 1988-09-09 1996-11-20 沖電気工業株式会社 ファーストイン・ファーストアウトメモリ
JP2523814B2 (ja) * 1988-09-20 1996-08-14 富士通株式会社 ム―ブアウト・システム
EP0369920A3 (en) * 1988-11-18 1992-01-15 Rolm Company Interleaving circular buffers
US4995041A (en) * 1989-02-03 1991-02-19 Digital Equipment Corporation Write back buffer with error correcting capabilities
JPH04506425A (ja) * 1989-06-30 1992-11-05 ポケット コンピューター コーポレイション 計算機システムにおける情報管理方法及び装置
JPH0337870A (ja) * 1989-07-05 1991-02-19 Matsushita Electric Ind Co Ltd 書き込み制御回路
AU634354B2 (en) * 1990-08-31 1993-02-18 Sun Microsystems, Inc. Method and apparatus for predictive caching

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2645248A1 (en) 2012-03-30 2013-10-02 Fujitsu Limited Information processing apparatus, arithmetic device, and information tansferring method
CN111372038A (zh) * 2018-12-26 2020-07-03 厦门星宸科技有限公司 多串流影像处理装置及方法
CN111372038B (zh) * 2018-12-26 2021-06-18 厦门星宸科技有限公司 多串流影像处理装置及方法

Also Published As

Publication number Publication date
EP0507571A2 (en) 1992-10-07
EP0507571B1 (en) 1998-09-23
JPH04308956A (ja) 1992-10-30
EP0507571A3 (en) 1993-10-20
AU1396792A (en) 1992-10-15
US5765187A (en) 1998-06-09
DE69227061D1 (de) 1998-10-29
DE69227061T2 (de) 1999-02-11
AU637543B2 (en) 1993-05-27

Similar Documents

Publication Publication Date Title
JP2703417B2 (ja) 受信バッファ
JP2000330789A (ja) コンピュータシステムおよびその命令実行方法
JPH09223118A (ja) スヌープキャッシュメモリ制御システム
JP2006338538A (ja) ストリームプロセッサ
US6587922B2 (en) Multiprocessor system
US6889289B2 (en) Method of distributed caching
US6678800B1 (en) Cache apparatus and control method having writable modified state
US6480940B1 (en) Method of controlling cache memory in multiprocessor system and the multiprocessor system based on detection of predetermined software module
JP2736237B2 (ja) 遠隔メモリアクセス制御装置
JPH04291660A (ja) プロセッサ間通信方法およびそのための並列プロセッサ
JP2009505178A (ja) 少なくとも2つの命令実行部と少なくともデータ及び/または命令のための第1記憶装置または記憶領域とを備えたコンピュータシステムにおいて、データ及び/または命令を格納する装置及び方法
JP4111645B2 (ja) キャッシュミスした後のメモリバスアクセス制御方式
JP3039391B2 (ja) メモリシステム
JP2794782B2 (ja) 命令取出装置
JPH10111798A (ja) 情報処理装置
JPH06161891A (ja) コンピュータシステム及びキャッシュ制御手段におけるキャッシュ制御方法
JP3197045B2 (ja) 拡張中央演算処理装置
JP2785738B2 (ja) 分散メモリ型マルチプロセッサ情報処理システム
JP2847729B2 (ja) 情報処理装置
JPH0415496B2 (ja)
JPH06149752A (ja) 並列計算機のバリア同期方式
JPH1185613A (ja) キャッシュメモリ
JP2735400B2 (ja) 非同期入出力制御方式
JP2000020489A (ja) 計算機におけるデータ転送装置
JPH02287849A (ja) ディスクキャッシュ制御方法およびディスクキャッシュ装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19970204

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19970916

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071003

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081003

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081003

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091003

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091003

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101003

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101003

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111003

Year of fee payment: 14

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111003

Year of fee payment: 14