特許
J-GLOBAL ID:200903037351582991

環状バッファ制御装置

発明者:
出願人/特許権者:
代理人 (1件): 京本 直樹 (外2名)
公報種別:公開公報
出願番号(国際出願番号):特願平6-201653
公開番号(公開出願番号):特開平8-063334
出願日: 1994年08月26日
公開日(公表日): 1996年03月08日
要約:
【要約】【目的】 ラップアラウンド処理の回数を複数回の演算につき1回に削減し、高速な環状バッファを実現する。【構成】 データ・メモリ4から、ベース・レジスタ1、インデックス・レジスタ2とオフセット24の和で示されるアドレスのデータを取り出し、データ・レジスタ5に収め、演算器6で演算を行うことをブロック長レジスタ10に設定された回数だけ繰り返した後、ラップアラウンド処理を行い、インデックス・レジスタ2の値が要素数レジスタ7の値以上の時、インデックス・レジスタ2から要素数レジスタ7の値を減算する。また、環状バッファに割り当てられたデータ・メモリ4上の領域を超えて演算を行う可能性があるため、この領域の末尾に環状バッファ先頭部分のコピーを付加する。
請求項(抜粋):
環状バッファの開始アドレスを保持するベース・レジスタと、現在の演算対象データを指示するインデックス・レジスタと、前記ベース・レジスタの値と前記インデックス・レジスタの値および後記命令実行制御部からのオフセットを加算して、演算対象データの読み出しアドレスを決定する第1の加算器と、操作対象となるデータを収めるデータ・メモリと、前記読み出しアドレスに従って前記データ・メモリから読み出されたデータを格納するデータ・レジスタと、このデータ・レジスタ中に格納されたデータに対して演算を行う演算器と、環状バッファ中の要素数を保持する要素数レジスタと、一括処理される要素数を保持するブロック長レジスタと、前記演算を前記ブロック長レジスタに設定された回数分行った後に前記ブロック長レジスタの値を前記インデックス・レジスタの値に加算する第2の加算器と、前記ブロック長レジスタの値を前記インデックス・レジスタの値に加算した後に前記要素数レジスタの値とインデックス・レジスタの値を比較する第1の比較器と、前記インデックス・レジスタの値が前記要素数レジスタの値以上である時にインデックス・レジスタの値から要素数レジスタの値を減算する第1の減算器と、環状バッファに入れるべき新しい値を保持する外部入力レジスタと、この外部入力レジスタの値を入れるべき環状バッファ上の位置を保持する入力インデックス・レジスタと、この入力インデックス・レジスタの値と前記ベース・レジスタの値を加算し、前記外部入力レジスタの値を書き込むべき前記データ・メモリ上のアドレスを決定する第3の加算器と、前記入力インデックス・レジスタの値が前記ブロック長レジスタの値未満であることを判定する第2の比較器と、この第2の比較器の出力が真であった時、前記書き込みアドレスに前記要素数レジスタの値を加算したアドレスを生成する第4の加算器と、全体を制御するソフトウェアを収めるプログラム・メモリと、このプログラム・メモリの内容と前記第1の比較器および前記第2の比較器の出力を参照し、全体を制御する命令実行制御部とを備えることを特徴とする環状バッファ制御装置。

前のページに戻る