JPH0863334A - 環状バッファ制御装置 - Google Patents
環状バッファ制御装置Info
- Publication number
- JPH0863334A JPH0863334A JP6201653A JP20165394A JPH0863334A JP H0863334 A JPH0863334 A JP H0863334A JP 6201653 A JP6201653 A JP 6201653A JP 20165394 A JP20165394 A JP 20165394A JP H0863334 A JPH0863334 A JP H0863334A
- Authority
- JP
- Japan
- Prior art keywords
- register
- value
- data
- circular buffer
- index
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods 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/10—Methods 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/345—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes of multiple operands or results
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/355—Indexed addressing
- G06F9/3552—Indexed addressing using wraparound, e.g. modulo or circular addressing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2205/00—Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F2205/10—Indexing scheme relating to groups G06F5/10 - G06F5/14
- G06F2205/106—Details of pointers, i.e. structure of the address generators
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2205/00—Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F2205/10—Indexing scheme relating to groups G06F5/10 - G06F5/14
- G06F2205/108—Reading or writing the data blockwise, e.g. using an extra end-of-block pointer
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
- Executing Machine-Instructions (AREA)
Abstract
につき1回に削減し、高速な環状バッファを実現する。 【構成】 データ・メモリ4から、ベース・レジスタ
1、インデックス・レジスタ2とオフセット24の和で
示されるアドレスのデータを取り出し、データ・レジス
タ5に収め、演算器6で演算を行うことをブロック長レ
ジスタ10に設定された回数だけ繰り返した後、ラップ
アラウンド処理を行い、インデックス・レジスタ2の値
が要素数レジスタ7の値以上の時、インデックス・レジ
スタ2から要素数レジスタ7の値を減算する。また、環
状バッファに割り当てられたデータ・メモリ4上の領域
を超えて演算を行う可能性があるため、この領域の末尾
に環状バッファ先頭部分のコピーを付加する。
Description
置、特にラップアラウンド処理回数を削減した、高速な
環状バッファ制御装置に関する。
6から図10を用いて説明する。
のない環状のバッファ構造を、図6(B)に示す一次元
の均一なデータ・メモリ4のアドレス空間のうち、環状
バッファに割り当てられた領域33にマッピングして実
現する時、従来は、図7に示す装置を用い、以下に示す
手順を実行していた。
の開始アドレスは、ベース・レジスタ1に、環状バッフ
ァの要素数は、要素数レジスタ7に設定されている(図
8のステップ121)。演算対象となるデータ31の環
状バッファ内の位置は、インデックス・レジスタ2に設
定されている。
の読み出しアドレス19を求めるには、インデックス・
レジスタ2の値とベース・レジスタ1の値を加算器3で
加算する(ステップ102)。計算されたデータの実ア
ドレスをデータ・メモリ4に供給し、演算対象データ3
1を取り出し、これをデータ・レジスタ5へロード(ス
テップ103)してから演算器6で処理を行う(ステッ
プ104)。
3が終了すると、インデックス・レジスタ2は、次の演
算対象データ32を指し示すように更新される。すなわ
ち、命令実行制御部18は、インデックス・レジスタ2
の値を加算器11によりインクリメントし(ステップ1
22)、インクリメント後のインデックス・レジスタ2
の値が要素数レジスタ7の値を越えたかを比較器8によ
り調べ(ステップ109)、到達判定出力25を参照
し、もし越えていれば、インデックス・レジスタ2の値
を0にクリアする(ステップ123)。これをラップア
ラウンド処理114という。
保持している新しい入力データを入力する時の手順を、
図9に示す。新しい入力データが入力されるべき環状バ
ッファ上の位置を、入力インデックス・レジスタ13が
保持しているとすると、ベース・レジスタ1と入力イン
デックス・レジスタ13の値を加算し、データ・メモリ
4上の実アドレスを求め(ステップ121)、そこへ外
部入力レジスタ12の値を書き込む(ステップ12
2)。
バッファ制御装置を用いて環状バッファを実現した時の
命令実行の様子を示す。図10に示すように、従来の環
状バッファ制御装置では、1回のデータ演算処理につき
1回のラップアラウンド処理が必要になり、高速な処理
を行うことができない。
なくすため、ラップアラウンド処理の回数を削減した高
速な環状バッファ制御装置を提供することにある。
の開始アドレスを保持するベース・レジスタと、現在の
演算対象データを指示するインデックス・レジスタと、
前記ベース・レジスタの値と前記インデックス・レジス
タの値および後記命令実行制御部からのオフセットを加
算して、演算対象データの読み出しアドレスを決定する
第1の加算器と、操作対象となるデータを収めるデータ
・メモリと、前記読み出しアドレスに従って前記データ
・メモリから読み出されたデータを格納するデータ・レ
ジスタと、このデータ・レジスタ中に格納されたデータ
に対して演算を行う演算器と、環状バッファ中の要素数
を保持する要素数レジスタと、一括処理される要素数を
保持するブロック長レジスタと、前記演算を前記ブロッ
ク長レジスタに設定された回数分行った後に前記ブロッ
ク長レジスタの値を前記インデックス・レジスタの値に
加算する第2の加算器と、前記ブロック長レジスタの値
を前記インデックス・レジスタの値に加算した後に前記
要素数レジスタの値とインデックス・レジスタの値を比
較する第1の比較器と、前記インデックス・レジスタの
値が前記要素数レジスタの値以上である時にインデック
ス・レジスタの値から要素数レジスタの値を減算する第
1の減算器と、環状バッファに入れるべき新しい値を保
持する外部入力レジスタと、この外部入力レジスタの値
を入れるべき環状バッファ上の位置を保持する入力イン
デックス・レジスタと、この入力インデックス・レジス
タの値と前記ベース・レジスタの値を加算し、前記外部
入力レジスタの値を書き込むべき前記データ・メモリ上
のアドレスを決定する第3の加算器と、前記入力インデ
ックス・レジスタの値が前記ブロック長レジスタの値未
満であることを判定する第2の比較器と、この第2の比
較器の出力が真であった時、前記書き込みアドレスに前
記要素数レジスタの値を加算したアドレスを生成する第
4の加算器と、全体を制御するソフトウェアを収めるプ
ログラム・メモリと、このプログラム・メモリの内容と
前記第1の比較器および前記第2の比較器の出力を参照
し、全体を制御する命令実行制御部とを備えることを特
徴としている。
値を加算したアドレスから始まる、ブロック長レジスタ
で指定された個数分の連続した要素に対して演算処理を
行った後、ラップアラウンド処理、すなわちインデック
ス・レジスタの値にブロック長レジスタの値を加算し、
インデックス・レジスタの値が要素数レジスタの値以上
である時、インデックス・レジスタの値から要素数レジ
スタの値を減算する処理を行う。
れた演算処理回数につき、1回のラップアラウンド処理
で済むことになり、ラップアラウンド処理の回数を大幅
に減らせるため、環状バッファ処理の高速化を図ること
ができる。
5を参照して説明する。
図である。図1に示すように、本発明は、環状バッファ
の開始アドレスを保持するベース・レジスタ1と、現在
の演算対象を指示するインデックス・レジスタ2と、ベ
ース・レジスタ1の値とインデックス・レジスタ2の値
および後述する命令実行制御部18からのオフセットを
加算して、演算対象データの読み出しアドレス19を決
定する第1の加算器3と、操作対象となるデータを収め
るデータ・メモリ4と、データ・メモリ4から読み出さ
れたデータ20を格納するデータ・レジスタ5と、デー
タ・レジスタ5中に格納されたデータに対して演算を行
う演算器6と、環状バッファ中の要素数を保持する要素
数レジスタ7と、要素数レジスタ7の値とインデックス
・レジスタ2の値を比較する第1の比較器8と、インデ
ックス・レジスタ2の値から要素数レジスタ7の値を減
算する減算器9と、一括処理を行う長さを保持するブロ
ック長レジスタ10と、インデックス・レジスタ2の値
にブロック長レジスタ10の値を加算する第2の加算器
11と、環状バッファに入れるべき新しい値を保持する
外部入力レジスタ12と、外部入力レジスタ12の値を
入れるべき環状バッファ上の位置を保持する入力インデ
ックス・レジスタ13と、入力インデックス・レジスタ
13の値とベース・レジスタ1の値を加算し、外部入力
レジスタ12の値を書き込むべきデータ・メモリ4上の
アドレス21を決定する第3の加算器14と、入力イン
デックス・レジスタ13の値がブロック長レジスタ10
の値未満であることを判定する第2の比較器15と、第
2の比較器15の出力が真であった時、書き込みアドレ
ス21に要素数レジスタ7の値を加算した複製アドレス
23を生成する第4の加算器16と、全体を制御するソ
フトウェアを収めるプログラム・メモリ17と、プログ
ラム・メモリ17の内容と第1の比較器8および第2の
比較器15の出力を参照し、全体を制御する命令実行制
御部18から構成されている。
例の動作について説明する。
1にはデータ・メモリ4から割り当てられた環状バッフ
ァ領域33の開始アドレス、要素数レジスタ7には環状
バッファの容量(N要素とする)、ブロック長レジスタ
10には、一括して処理される要素の個数(n要素とす
る)を設定しておく(ステップ101)。
データ31の、環状バッファ先頭からの相対位置が設定
されており、インデックス・レジスタ2が指し示す位置
から始まって、順次環状バッファ上の要素にアクセス
し、演算を行う。
・レジスタ2を加算して、インデックス・レジスタ2が
持つ環状バッファ先頭から演算対象データ31への距離
を、データ・メモリ4上の読み出しアドレス19に変換
し(ステップ102)、読み出しアドレスから演算対象
データ31を取り出してデータ・レジスタ5に収め(ス
テップ103)、データ・レジスタ5上のデータに対し
演算処理を行う(ステップ104)。
処理114を行っていたが、本発明では、新たに演算対
象となるデータを環状バッファから取り出し、演算する
ことを引き続き行う(ステップ105,106,10
7)。すなわち、ベース・レジスタ1とインデックス・
レジスタ2を加算し、さらに1,2,…,(n−1)を
加算器3で加算した読み出しアドレス19から演算対象
データを取り出してデータ・レジスタ5に収め、演算器
6を用いて、データ・レジスタ5上のデータに対し演算
処理を行う。通常、マイクロプロセッサは、レジスタの
値に16ビット程度の定数(ディスプレースメント)を
加算したアドレスにあるデータをアクセスする命令を持
つため(ヘネシー&パターソン、富田眞治ほか訳「コン
ピュータ・アーキテクチャ設計・実現・評価の定量的ア
プローチ」,日経BP社,1992年,728ペー
ジ)、ベース・レジスタ1とインデックス・レジスタ2
を加算した内容を別の汎用レジスタに置けば、その汎用
レジスタに定数を加算し、アクセスするデータのアドレ
スをオーバヘッドなしに求めることができる。
113をブロック長レジスタ10に設定された回数分だ
け行った後、ラップアラウンド処理114を行う。すな
わち、インデックス・レジスタ2の値にブロック長レジ
スタ10の値を加算(ステップ108)した後、インデ
ックス・レジスタ2の値と要素数レジスタ7の値を比較
し(ステップ109)、インデックス・レジスタ2の値
が要素数レジスタ7の値N以上であるとき、インデック
ス・レジスタ2の値から要素数レジスタ7の値Nを減算
する(ステップ110)。
について演算が終了したかを調べ、もし終了していなけ
れば、演算を再開する(ステップ111)。
算処理に対して1回のラップアラウンド処理で済むた
め、従来方法と比較して、ラップアラウンド処理の回数
を1/nに減らすことができ、処理を大幅に高速化する
ことができる。
ップアラウンド処理をする従来法とは異なり、n回の演
算処理について1回のラップアラウンド処理しか行わな
いため、インデックス・レジスタ2の値で指定される演
算の開始要素の位置によっては、環状バッファのために
割り当てられたデータ・メモリ4上の領域を、最大(n
−1)要素分を超えて演算を行う可能性がある。
している新しい値を、環状バッファ上の入力インデック
ス・レジスタ13が示す位置に入れる時には、図3に示
す方法に従う必要がある。すなわち、ベース・レジスタ
1と入力インデックス・レジスタ13の値を、加算器1
4を用いて加算し、データ・メモリ4上の書き込みアド
レスを求め(ステップ121)、新たなデータを外部入
力レジスタ12から、この書き込みアドレス21へ入れ
た後、ブロック長レジスタ10と入力インデックス・レ
ジスタ13の値を比較器15により比較し(ステップ1
23)、入力インデックス・レジスタ13の値がブロッ
ク長レジスタ10の値未満ならば、加算器16により、
書き込みアドレスに要素数レジスタ7の値を加算して複
製書き込みアドレス23を求め(ステップ124)、複
製書き込みアドレス23にも外部入力レジスタ12の値
を書き込む(ステップ125)。これにより、N個の要
素から成る環状バッファの直後に、環状バッファの先頭
(n−1)要素のコピーが作られ、ラップアラウンド処
理回数の削減の影響で、環状バッファの領域を最大(n
−1)要素分を超えて演算を行ったとしても、正しい結
果が得られることになる。
ら構成される環状バッファで、ブロック長n=8とした
時の動作を説明する。ただし、データ・メモリ4上に環
状バッファ用の領域33として128要素からなる配列
x[0〜127]、およびこの配列の直後にx[0〜
6]のコピーであるx[128〜135]が、すでに用
意されているものとし、一例として28要素目から演算
を開始するために、インデックス・レジスタ2には27
が設定されていると想定する。
4]の8要素が、順次データ・メモリ4から取り出さ
れ、データ・レジスタ5にロードされ、演算に用いられ
た後、最初のラップアラウンド処理114が行われる。
最初のラップアラウンド処理114では、インデックス
・レジスタ2の値は、現在の値27にブロック・レジス
タの値8を加算して35になるが、この値は要素数レジ
スタ7の値128より小さいので、そのまま次の処理に
使われる。
2]に対して演算が行われ、第2回目のラップアラウン
ド処理114が行われ、インデックス・レジスタ2の値
が43に設定される。
る。第12回目のラップアラウンド処理114が行われ
ると、インデックス・レジスタ2の値は123となる。
この値は依然として要素数レジスタ7の値128より小
さいので、そのまま第13ブロックの処理に使われる。
まる8要素を順次取り出し、演算に用いようとする。と
ころが、5個の要素に対し演算を行った時点で、環状バ
ッファの最終要素x[127]に到達してしまうので、
第13ブロックの第6,7,8個目の要素は、環状バッ
ファの直後に用意された環状バッファ先頭の要素x[0
〜2]のコピーとの演算113を行い、第13回目のラ
ップアラウンド処理114に入る。第13回目のラップ
アラウンド処理114では、インデックス・レジスタ2
の値123にブロック・レジスタの値8を加算すると1
31となり、要素数レジスタ7の値128以上になるの
で、インデックス・レジスタ2の値から要素数レジスタ
7の値128が減算され、結局インデックス・レジスタ
2の値は3となる。この値を用い、第14ブロックの処
理が行われる。第14ブロックではx[3〜11]、第
15ブロックではx[12〜19]、第16ブロックで
はx[20〜27]に対する演算が行われる。第16ブ
ロックの演算が終了すると、全128要素に対する演算
が終了する。
状バッファ制御装置において、演算処理113とラップ
アラウンド処理114が行われる様子を、時間を基準に
して表した図である。従来は、図10に示すように、演
算処理1回につき1回のラップアラウンド処理が必要で
あったが、本発明により、図5に示すように、演算処理
8回につき1回のラップアラウンド処理で済むことにな
り、環状バッファ処理の大幅な高速化を図ることができ
る。
図8,図10に示すように、演算処理113とラップア
ラウンド処理114を交互に行うと、演算対象データ3
1のデータ・レジスタ5へのロード(ステップ103)
と、データ・レジスタ5内のデータへの演算(ステップ
104)を連続して行わざるを得ず、演算対象データ3
1をデータ・レジスタ5へ転送するロード命令を実行し
てから、実際にデータがデータ・レジスタ5にロードさ
れるまでに相当な遅延がある装置では、無駄な待ち時間
が生じるという問題があるが、本発明では、図2,図5
に示すように、複数回の演算処理113を連続して行う
ため、複数のデータのロード(ステップ103)と演算
(ステップ104)をインターリーブすることにより、
この待ちを回避することができ、一層の高速化を図るこ
とができる。
スタ2は、加算器11によって0からカウント・アップ
され、要素数レジスタ7の値N以上になったことを比較
器8で検出することで、ラップアラウンド処理114を
行ったが、最初に要素数レジスタ7の値をインデックス
・レジスタ2に設定し、加算器11の代わりに減算器を
用い、0に向かってカウント・ダウンし、0以下になっ
たことを比較器8で検出することで、ラップアラウンド
処理114としてもよい。
は、いったんデータ・レジスタ5に収められ、それから
演算されるとしたが、読み出しデータ20を直接演算器
6に入力する構成の装置でも、本発明は適用できる。
バッファ制御装置は、複数回の演算処理の後、1回のラ
ップアラウンド処理を行うように構成したため、ラップ
アラウンド処理のオーバヘッドを減らすことができ、高
速に環状バッファの各要素に対する演算処理を行うこと
ができるという効果を有する。
て演算を行う時のフロー・チャートである。
時のフロー・チャートである。
マップである。
チャートである。
関係を表した図である。
ロック図である。
て演算を行う時のフロー・チャートである。
時のフロー・チャートである。
チャートである。
Claims (3)
- 【請求項1】環状バッファの開始アドレスを保持するベ
ース・レジスタと、 現在の演算対象データを指示するインデックス・レジス
タと、 前記ベース・レジスタの値と前記インデックス・レジス
タの値および後記命令実行制御部からのオフセットを加
算して、演算対象データの読み出しアドレスを決定する
第1の加算器と、 操作対象となるデータを収めるデータ・メモリと、 前記読み出しアドレスに従って前記データ・メモリから
読み出されたデータを格納するデータ・レジスタと、 このデータ・レジスタ中に格納されたデータに対して演
算を行う演算器と、 環状バッファ中の要素数を保持する要素数レジスタと、 一括処理される要素数を保持するブロック長レジスタ
と、 前記演算を前記ブロック長レジスタに設定された回数分
行った後に前記ブロック長レジスタの値を前記インデッ
クス・レジスタの値に加算する第2の加算器と、 前記ブロック長レジスタの値を前記インデックス・レジ
スタの値に加算した後に前記要素数レジスタの値とイン
デックス・レジスタの値を比較する第1の比較器と、 前記インデックス・レジスタの値が前記要素数レジスタ
の値以上である時にインデックス・レジスタの値から要
素数レジスタの値を減算する第1の減算器と、 環状バッファに入れるべき新しい値を保持する外部入力
レジスタと、 この外部入力レジスタの値を入れるべき環状バッファ上
の位置を保持する入力インデックス・レジスタと、 この入力インデックス・レジスタの値と前記ベース・レ
ジスタの値を加算し、前記外部入力レジスタの値を書き
込むべき前記データ・メモリ上のアドレスを決定する第
3の加算器と、 前記入力インデックス・レジスタの値が前記ブロック長
レジスタの値未満であることを判定する第2の比較器
と、 この第2の比較器の出力が真であった時、前記書き込み
アドレスに前記要素数レジスタの値を加算したアドレス
を生成する第4の加算器と、 全体を制御するソフトウェアを収めるプログラム・メモ
リと、 このプログラム・メモリの内容と前記第1の比較器およ
び前記第2の比較器の出力を参照し、全体を制御する命
令実行制御部とを備えることを特徴とする環状バッファ
制御装置。 - 【請求項2】第2の加算器に代えて第2の減算器を備
え、 最初に前記要素数レジスタの値を前記インデックス・レ
ジスタに設定して前記第2の減算器を用いてカウント・
ダウンし、 前記第1の比較器が、0以下になったことを検出するこ
とを特徴とする請求項1記載の環状バッファ制御装置。 - 【請求項3】前記演算器が、前記データ・メモリからデ
ータを読み出し、データ・メモリ中に格納されたデータ
に対して直接演算を行うことを特徴とする請求項1記載
の環状バッファ制御装置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6201653A JP2550921B2 (ja) | 1994-08-26 | 1994-08-26 | 環状バッファ制御装置 |
| US08/520,182 US5535412A (en) | 1994-08-26 | 1995-08-28 | Circular buffer controller |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6201653A JP2550921B2 (ja) | 1994-08-26 | 1994-08-26 | 環状バッファ制御装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0863334A true JPH0863334A (ja) | 1996-03-08 |
| JP2550921B2 JP2550921B2 (ja) | 1996-11-06 |
Family
ID=16444666
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP6201653A Expired - Fee Related JP2550921B2 (ja) | 1994-08-26 | 1994-08-26 | 環状バッファ制御装置 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5535412A (ja) |
| JP (1) | JP2550921B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006523884A (ja) * | 2003-04-16 | 2006-10-19 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 並行して実行されるプロセスがfifoバッファを介して通信するデータ処理 |
Families Citing this family (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5659698A (en) * | 1994-11-01 | 1997-08-19 | Motorola, Inc. | Method and apparatus for generating a circular buffer address in integrated circuit that performs multiple communications tasks |
| US6148381A (en) * | 1997-04-08 | 2000-11-14 | Advanced Micro Devices, Inc. | Single-port trace buffer architecture with overflow reduction |
| US6618775B1 (en) | 1997-08-15 | 2003-09-09 | Micron Technology, Inc. | DSP bus monitoring apparatus and method |
| US6862635B1 (en) | 1998-11-13 | 2005-03-01 | Cray Inc. | Synchronization techniques in a multithreaded environment |
| US6807615B1 (en) * | 1999-04-08 | 2004-10-19 | Sun Microsystems, Inc. | Apparatus and method for providing a cyclic buffer using logical blocks |
| US8965175B2 (en) * | 2001-04-09 | 2015-02-24 | Monitoring Technology Corporation | Data recording and playback system and method |
| US7269608B2 (en) * | 2001-05-30 | 2007-09-11 | Sun Microsystems, Inc. | Apparatus and methods for caching objects using main memory and persistent memory |
| US6771693B2 (en) * | 2001-12-27 | 2004-08-03 | Interdigital Technology Corporation | Enhanced rake structure |
| US6941441B2 (en) * | 2003-03-12 | 2005-09-06 | Intel Corporation | Method and apparatus for handling cyclic buffer access |
| US7873810B2 (en) * | 2004-10-01 | 2011-01-18 | Mips Technologies, Inc. | Microprocessor instruction using address index values to enable access of a virtual buffer in circular fashion |
| US7315937B2 (en) * | 2004-10-01 | 2008-01-01 | Mips Technologies, Inc. | Microprocessor instructions for efficient bit stream extractions |
| US20090144493A1 (en) * | 2007-11-30 | 2009-06-04 | Microsoft Corporation | Circular Buffer Maping |
| JP2010160653A (ja) * | 2009-01-07 | 2010-07-22 | Renesas Electronics Corp | リングバッファ回路及びその制御回路 |
| US8958931B2 (en) * | 2012-05-07 | 2015-02-17 | Flightaware, Llc | System and method for collecting remotely located positional data |
| US10056132B1 (en) * | 2016-02-16 | 2018-08-21 | Seagate Technology Llc | Assignable registers on a preamp chip |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05293868A (ja) * | 1992-04-17 | 1993-11-09 | Fanuc Ltd | 射出成形機の射出制御方法 |
| WO1996009926A1 (de) * | 1994-09-28 | 1996-04-04 | Arburg Gmbh & Co. | Verfahren zur beeinflussung von maschineneinstellgrössen sowie vorrichtung zur durchführung des verfahrens |
| JPH11512665A (ja) * | 1995-10-02 | 1999-11-02 | アルブルク ゲーエムベーハー ウント コー. | 周期的に動作する機械の工具内圧経過制御方法 |
| DE102007061775A1 (de) * | 2007-12-20 | 2009-07-02 | Geiger Technik Gmbh | Spritzgussverfahren und zugehörige Anlage |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5043870A (en) * | 1982-02-24 | 1991-08-27 | At&T Bell Laboratories | Computer with automatic mapping of memory contents into machine registers during program execution |
| US4513392A (en) * | 1982-05-25 | 1985-04-23 | Honeywell Information Systems Inc. | Method and apparatus for generating a repetitive serial pattern using a recirculating shift register |
| US4914568A (en) * | 1986-10-24 | 1990-04-03 | National Instruments, Inc. | Graphical system for modelling a process and associated method |
| JPH03248226A (ja) * | 1990-02-26 | 1991-11-06 | Nec Corp | マイクロプロセッサ |
| US5388238A (en) * | 1992-07-24 | 1995-02-07 | At&T Corp. | System and method for monitoring the validity of circulating pointers in a FIFO memory |
| US5463749A (en) * | 1993-01-13 | 1995-10-31 | Dsp Semiconductors Ltd | Simplified cyclical buffer |
-
1994
- 1994-08-26 JP JP6201653A patent/JP2550921B2/ja not_active Expired - Fee Related
-
1995
- 1995-08-28 US US08/520,182 patent/US5535412A/en not_active Expired - Lifetime
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05293868A (ja) * | 1992-04-17 | 1993-11-09 | Fanuc Ltd | 射出成形機の射出制御方法 |
| WO1996009926A1 (de) * | 1994-09-28 | 1996-04-04 | Arburg Gmbh & Co. | Verfahren zur beeinflussung von maschineneinstellgrössen sowie vorrichtung zur durchführung des verfahrens |
| JPH11512665A (ja) * | 1995-10-02 | 1999-11-02 | アルブルク ゲーエムベーハー ウント コー. | 周期的に動作する機械の工具内圧経過制御方法 |
| DE102007061775A1 (de) * | 2007-12-20 | 2009-07-02 | Geiger Technik Gmbh | Spritzgussverfahren und zugehörige Anlage |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006523884A (ja) * | 2003-04-16 | 2006-10-19 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 並行して実行されるプロセスがfifoバッファを介して通信するデータ処理 |
Also Published As
| Publication number | Publication date |
|---|---|
| US5535412A (en) | 1996-07-09 |
| JP2550921B2 (ja) | 1996-11-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2550921B2 (ja) | 環状バッファ制御装置 | |
| WO2011135759A1 (ja) | 情報処理装置及びタスク切り替え方法 | |
| US5594878A (en) | Bus interface structure and system for controlling the bus interface structure | |
| JPH0736848A (ja) | 情報処理装置および処理方法 | |
| US6684267B2 (en) | Direct memory access controller, and direct memory access control method | |
| EP0297943A2 (en) | Microcode reading control system | |
| JPH0752390B2 (ja) | 命令処理装置 | |
| JP3614714B2 (ja) | Dma制御装置 | |
| JPH04355818A (ja) | データ入出力制御装置 | |
| JPH04107634A (ja) | メモリデータバイパス制御方式 | |
| JP3008890B2 (ja) | 処理制御装置 | |
| JP3012444B2 (ja) | プロセスディスパッチ方法 | |
| JPH05334103A (ja) | オペレーティングシステムにおけるタスク管理方法 | |
| JPH0333954A (ja) | 情報処理装置 | |
| JP2000163309A (ja) | メモリ管理方法およびメモリ管理装置、並びに記録媒体 | |
| JPH0248733A (ja) | 情報処理装置 | |
| JPH01169607A (ja) | プログラマブルコントローラ | |
| JP4257626B2 (ja) | メモリアクセス装置 | |
| JPH08297583A (ja) | 割り込み処理装置およびその方法 | |
| JPH0271328A (ja) | 分岐ヒストリーテーブル制御方式 | |
| JPH0766032B2 (ja) | テストシステム | |
| JPH07146818A (ja) | キャッシュメモリのデータ無効化装置 | |
| JPH0271327A (ja) | ソート処理装置 | |
| JPH03148730A (ja) | プロセスキュー処理方式 | |
| JPH0219495B2 (ja) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19960625 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070822 Year of fee payment: 11 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080822 Year of fee payment: 12 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080822 Year of fee payment: 12 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090822 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090822 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100822 Year of fee payment: 14 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110822 Year of fee payment: 15 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110822 Year of fee payment: 15 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120822 Year of fee payment: 16 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130822 Year of fee payment: 17 |
|
| LAPS | Cancellation because of no payment of annual fees |