JP3522779B2 - FIFO memory device and data distribution device - Google Patents
FIFO memory device and data distribution deviceInfo
- Publication number
- JP3522779B2 JP3522779B2 JP27743492A JP27743492A JP3522779B2 JP 3522779 B2 JP3522779 B2 JP 3522779B2 JP 27743492 A JP27743492 A JP 27743492A JP 27743492 A JP27743492 A JP 27743492A JP 3522779 B2 JP3522779 B2 JP 3522779B2
- Authority
- JP
- Japan
- Prior art keywords
- pointer
- write
- data
- read
- words
- 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
Links
Landscapes
- Multi Processors (AREA)
Description
【0001】[0001]
【産業上の利用分野】本発明は、入力が一ワード単位で
行なわれ、出力が複数ワードで行なわれるFIFOメモ
リ装置、及び入力が可変長ワードで、出力が一ワードで
行なわれるFIFOメモリ装置、並びにこれらのFIF
Oメモリ装置を用いるデータ分配装置に関する。The present invention relates to an input is performed in one word unit, FIFO notes output is performed by a plurality of words
Device , and FIFO memory device in which input is a variable-length word and output is a word, and these FIFOs
The present invention relates to a data distribution device using an O memory device .
【0002】[0002]
【従来の技術】図13は、従来の技術を説明するための
図である。図13において、分配器が、CPUとローカ
ルメモリとを有するプロセッサ・モジュール(以下、
「PM」という。)である[PM0]130との間で、
データの入出力を行なうために、四つのメモリ132〜
135が設けられている。2. Description of the Related Art FIG. 13 is a diagram for explaining a conventional technique. In FIG. 13, the distributor is a processor module having a CPU and a local memory (hereinafter,
It is called "PM". ) Is [PM0] 130,
In order to input / output data, four memories 132-
135 is provided.
【0003】同様に、分配器が、[PM6]131との
間で、データの入出力を行なうために、四つのメモリ1
36〜139が設けられている。あるPMから他のPM
へ、例えば、図13に示す[PM0]130から[PM
6]131へデータを転送する場合、転送データは、ま
ず、一ワードずつ順番に入力側の四つのメモリ132〜
135に書き込まれる。Similarly, the distributor has four memories 1 for inputting / outputting data to / from [PM6] 131.
36 to 139 are provided. From one PM to another
For example, from [PM0] 130 shown in FIG. 13 to [PM
6] When data is transferred to 131, the transferred data is first word by word in order from the four memories 132 to 132 of the input side.
Written at 135.
【0004】書き込みが終わると、四ワード分の転送デ
ータが同時に読み出されて、出力側の四つのメモリ13
6〜139に一旦蓄えられる。ここから、一ワードず
つ、[PM6]131へのデータ転送が為される。When the writing is completed, the transfer data for four words is read out simultaneously, and the four memories 13 on the output side are read.
It is temporarily stored in 6 to 139. From here, data is transferred to the [PM6] 131 word by word.
【0005】分配器において、一本のパスで転送データ
の分配処理がされている間、そのパスとは関係の無い他
のメモリには、転送データが蓄積されることになる。こ
の分配器による見かけ上の転送速度は、メモリの並列数
倍に向上するが、従来は、上記のように複数個のメモリ
132〜135,136〜139を並列させて設け、転
送能力を向上させる工夫をしてきた。In the distributor, while the transfer data is distributed by one path, the transfer data is stored in another memory which is not related to the path. The apparent transfer speed of this distributor is improved to be several times that of the parallel memory, but conventionally, a plurality of memories 132 to 135 and 136 to 139 are provided in parallel as described above to improve the transfer capability. I have been devising.
【0006】[0006]
【発明が解決しようとする課題】前述の構成により、転
送性能の向上は可能であるが、従来は、一度に転送でき
るワード数が固定であった。そのため、転送データの種
類によってワード数が異なる場合、データの前後関係を
保証するためには、例えば、ダミーのデータを挿入し
て、設計されたワード数に揃える必要があり、ダミーデ
ータの挿入分だけ処理時間に無駄が生ずるという問題点
があった。With the above-mentioned configuration, the transfer performance can be improved, but conventionally, the number of words that can be transferred at one time is fixed. Therefore, if the number of words differs depending on the type of transfer data, in order to guarantee the context of the data, it is necessary to insert dummy data and align it with the designed number of words. However, there is a problem that processing time is wasted.
【0007】図14は、従来技術の問題点を説明するた
めの図である。図中、転送データは、全体で七ワードの
長さを持ち、一ワードのコマンドデータと、六ワードの
パラメータデータとで構成されている。また、FIFO
には、六つずつのメモリセルを三段だけ並列させて設け
てある。FIG. 14 is a diagram for explaining the problems of the prior art. In the figure, the transfer data has a total length of 7 words, and is composed of 1-word command data and 6-word parameter data. Also, the FIFO
Is provided with six memory cells arranged in parallel in three stages.
【0008】図14において、転送データをFIFOに
書き込む場合、図示するように、転送データの七ワード
目のパラメータデータが、次の段のメモリに書き込まれ
ることになる。この場合、その隣のメモリセルに対し
て、続けて他の転送データを書き込むと、その段に関し
て、同時に読み出される六ワード分のデータの分配がで
きない。In FIG. 14, when the transfer data is written in the FIFO, as shown in the figure, the parameter data of the seventh word of the transfer data is written in the memory of the next stage. In this case, if other transfer data is continuously written to the memory cell adjacent to the memory cell, the data of six words that are simultaneously read cannot be distributed in that stage.
【0009】この問題に対しては、その段の残りのメモ
リセルに、ダミーデータを挿入し、他の転送データは、
その上の段に書き込むようにすればよい。しかし、ダミ
ーデータを挿入し、メモリセルへの書き込みアドレスを
進める方法は、それだけ時間を消費することになるの
で、問題であった。To solve this problem, dummy data is inserted into the remaining memory cells in that stage, and other transfer data is
You should write in the upper row. However, the method of inserting the dummy data and advancing the write address to the memory cell is time-consuming, which is a problem.
【0010】本発明は、このような従来の問題点に鑑み
て為されたものであり、ダミーデータの書き込み動作を
行なうことなく、メモリセルへ書き込まれる任意長の単
位データを、複数個のワードごとに正しく同時に読み出
すことができる一ワード入力・複数ワード出力のFIF
Oメモリ装置と、可変長ワード入力・一ワード出力のF
IFOメモリ装置と、各種の形式が違うデータ列を効率
よく分配することができるデータ分配装置とを提供する
ことを目的とする。The present invention has been made in view of the above conventional problems, and unit data of an arbitrary length to be written in a memory cell can be written in a plurality of words without performing a write operation of dummy data. 1-word input / multi- word output FIF that can be read correctly and simultaneously for each
O memory device and variable length word input / one word output F
Efficient for IFO memory device and data strings of different formats
An object of the present invention is to provide a data distribution device that can be distributed well .
【0011】[0011]
【課題を解決するための手段】本発明によれば、上述の
目的は、前記特許請求の範囲に記載した手段にて達成さ
れる。According to the invention, the above mentioned objects are achieved by means of the patent claims.
【0012】すなわち、請求項1の発明は、一以上のワ
ードで構成される単位データをある装置から他の装置へ
転送するためのFIFOメモリ装置であって、X方向に
複数個並べられ、Y方向に複数段積み重ねられた複数個
のメモリセルと、書き込み先のメモリセルのX方向のア
ドレスを示すライトXポインタを書き込み時にカウント
アップさせ、前記ライトXポインタが前記メモリセルの
X方向の個数分カウントすると、または、前記単位デー
タの最後のワードが書き込まれると前記ライトXポイン
タを0に戻すXポインタ制御手段と、書き込み先のメモ
リセルのY方向のアドレスを示すライトYポインタを前
記ライトXポインタが0に戻るときにカウントアップさ
せるYポインタ制御手段と、読み出し側の複数個のメモ
リセルのY方向のアドレスを示すリードポインタを読み
出し動作でカウントアップさせるリードポインタ制御手
段とを有し、読み出し時においては、前記リードポイン
タが示す段に位置する前記メモリセルのX方向の個数分
のワードが同時に読み出されることを特徴とするFIF
Oメモリ装置である。Namely, the invention of claim 1, a FIFO memory device for transferring the unit data Oa Ru device which consists of one or more words to other devices, the X-direction
Plural pieces arranged and stacked in the Y direction
Memory cell and the memory cell of the write destination in the X direction.
Counts when writing a light X pointer that indicates a dress
Up, and the write X pointer of the memory cell
If you count the number in the X direction, or
When the last word of the
X-pointer control means for returning the data to 0 and the writing destination memo
Move the write Y pointer that indicates the Y-direction address of the recell forward
The count is incremented when the write X pointer returns to 0.
Y-pointer control means for making and a plurality of memos on the reading side
Read the read pointer that indicates the Y-direction address of the resel
Read pointer control hand that counts up by the take-out action
And a read point at the time of reading.
The number of memory cells located in the row indicated by
FIF characterized by the simultaneous reading of words
O memory device .
【0013】また、請求項2の発明は、入力された可変
長ワードの単位データを一ワード単位で出力するFIF
Oメモリ装置であって、複数段積み重なるメモリセル
と、前記単位データ中に示される当該単位データのワー
ド数に関する情報を解析するデータ解析手段と、書き込
み動作がある場合、前記データ解析手段の解析結果に基
づいて、前記メモリセルのどの位置から前記単位データ
を書き込むべきかを示すライトポインタに対し書き込み
ワード数を加算し、一方、読み出し動作がある場合、前
記ライトポインタを1だけ減算する演算手段と、読み出
し動作があると、各段のメモリセルに、それぞれ前段の
メモリセルのデータを複写する手段とを有し、一ワード
の出力データは常に最後段のメモリセルから読み出され
ることを特徴とするFIFOメモリ装置である。According to a second aspect of the present invention, an FIF for outputting the input unit data of variable length words in units of one word.
An O memory device in which a plurality of stacked memory cells
When the data analysis means for analyzing information about the number of words the unit data represented in the unit data, write
If there is only one operation, the unit data is read from which position of the memory cell based on the analysis result of the data analysis means.
Write to a write pointer that indicates whether to write
Add the number of words, while if there is a read operation,
Operation means for subtracting 1 from the write pointer, and read
If there is an operation, the memory cells of each stage will be
And a means for copying the data in the memory cell,
Output data is always read from the last memory cell.
A FIFO memory device, characterized in that that.
【0014】また、請求項3の発明は、第1のFIFO
メモリ装置と第2のFIFOメモリ装置で構成され、前
記第1のFIFOメモリ装置は、X方向に複数個並べら
れ、Y方向に複数段積み重ねられた複数個のメモリセル
と、書き込み先のメモリセルのX方向のアドレスを示す
ライトXポインタを書き込み時にカウントアップさせ、
前記ライトXポインタが前記メモリセルのX方向の個数
分カウントすると、または、前記単位データの最後のワ
ードが書き込まれると前記ライトXポインタを0に戻す
Xポインタ制御手段と、書き込み先のメモリセルのY方
向のアドレスを示すライトYポインタを前記ライトXポ
インタが0に戻るときにカウントアップさせるYポイン
タ制御手段と、読み出し側の複数個のメモリセルのY方
向のアドレスを示すリードポインタを読み出し動作でカ
ウントアップさせるリードポインタ制御手段とを有し、
並列処理を行う複数の装置がそれぞれ出力する一以上の
ワードで構成される各単位データを単位データ単位で分
配し、前記第2のFIFOメモリ装置は、複数段積み重
なるメモリセルと、前記単位データ中に示される当該単
位データのワード数に関する情報を解析するデータ解析
手段と、書き込み動作がある場合、前記データ解析手段
の解析結果に基づいて、前記メモリセルのどの位置から
前記単位データを書き込むべきかを示すライトポインタ
に対し書き込みワード数を加算し、一方、読み出し動作
がある場合、前記ライトポインタを1だけ減算する演算
手段と、読み出し動作があると、各段のメモリセルに、
それぞれ前段のメモリセルのデータを複写する手段とを
有し、前記第1のFIFOメモリ装置により分配された
単位データをワード単位に切り離し、各並列処理を行う
他の複数の装置へ転送することを特徴とするデータ分配
装置である。The invention of claim 3 is the first FIFO.
Consisting of a memory device and a second FIFO memory device,
A plurality of first FIFO memory devices are arranged in the X direction.
And a plurality of memory cells stacked in the Y direction
And the address in the X direction of the write destination memory cell
The write X pointer is incremented when writing,
The write X pointer is the number of memory cells in the X direction.
When counting minutes, or at the end of the unit data
When the code is written, the write X pointer is returned to 0
X pointer control means and Y direction of write destination memory cell
The write Y pointer that indicates the address
Y-point to count up when the interface returns to 0
Data control means and the Y direction of the plurality of memory cells on the read side
The read pointer that indicates the address
And a read pointer control means for raising
More than one output from each of multiple devices performing parallel processing
Each unit data composed of words is divided into unit data units.
The second FIFO memory device is stacked in a plurality of stages.
Memory cell and the unit cell indicated in the unit data.
Data analysis to analyze information about the number of words in the order data
Means and, if there is a write operation, said data analysis means
From which position of the memory cell based on the analysis result of
Write pointer indicating whether the unit data should be written
The number of write words is added to, while the read operation is performed
If there is, an operation to subtract 1 from the write pointer
When there is a means and a read operation, the memory cells of each stage
Each has a means to copy the data of the memory cell in the previous stage.
And distributed by said first FIFO memory device
Disconnect the unit data in word units, the data distribution characterized by a Turkey be transferred to a plurality of other apparatuses performing each parallel processing
It is a device .
【0015】[0015]
【作用】請求項1の発明では、メモリセルへの書き込み
アドレスを示すライトXポインタを書き込み時にカウン
トアップさせ、ライトXポインタがメモリセルのX方向
の個数分カウントすると、または、単位データの最後の
ワードが書き込まれるとライトXポインタを0に戻す。
これにより、X方向に並ぶメモリセル数以下の可変長デ
ータを、効率的に転送する。そして、パラメータデータ
数の不足分として、ダミーデータを挿入することなく、
可変長データに対して柔軟に対処し、高速化を図る。According to the first aspect of the invention, the write X pointer indicating the write address to the memory cell is counted at the time of writing.
And the write X pointer is in the X direction of the memory cell.
When counting the number of
The write X pointer is reset to 0 when the word is written.
Thus, the variable length data following the number of memory cells arranged in the X direction, efficiently transfer. And without inserting dummy data as a shortage of the number of parameter data,
Flexibly deal with variable-length data to increase speed.
【0016】また、請求項2の発明は、書き込みアドレ
スを示すライトポインタの操作を工夫することにより、
可変長ワード入力・一ワード出力のFIFOメモリ装置
を構成し、可変長データを、一ワード単位で元のデータ
に分解するものである。これらのFIFOメモリ装置に
より、多数の多様な可変長データの高速転送が可能とな
る。また、並列処理装置のデータ分解機構を構築でき
る。According to the second aspect of the invention, by devising the operation of the write pointer indicating the write address,
A variable-length word input / one-word output FIFO memory device is configured to decompose variable-length data into original data in units of words. These FIFO memory devices enable high speed transfer of a large number of various variable length data. Moreover, a data decomposition mechanism of the parallel processing device can be constructed.
【0017】[0017]
【実施例】図1に本発明による入力が一ワード、出力が
複数ワードのFIFOメモリ装置の構成例を示す。ま
た、図2には、図1に示すメモリセル15の構成例を示
す。図2において、書き込み先のメモリセルは、ライト
Xポインタ20、ライトYポインタ21の二次元で示さ
れる。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 shows an input according to the present invention as one word and an output as
1 shows an example of the configuration of a multi- word FIFO memory device . Further, FIG. 2 shows a configuration example of the memory cell 15 shown in FIG. In FIG. 2, the write-destination memory cell is two-dimensionally represented by a write X pointer 20 and a write Y pointer 21.
【0018】一方、読み出し側の複数個のメモリセル
は、Y方向のリードポインタ22のみの一次元で示され
る。読み出し時においては、このリードポインタ22が
示す段に位置する”m+1”個のワードが、同時に読み
出されることになる。On the other hand, the plurality of memory cells on the read side are shown one-dimensionally only by the read pointer 22 in the Y direction. At the time of reading, "m + 1" words located in the stage indicated by the read pointer 22 are read at the same time.
【0019】図2に示すライトXポインタ20は、書き
込み時にカウントアップし、‘0’から‘m’まで、メ
モリセル15の幅数である”m+1”をカウントする
と、または、単位データの最後のワードが書き込まれる
と‘0’に戻る。ライトYポインタ21は、ライトXポ
インタ20が‘0’に復帰するときにカウントアップす
る。The write X pointer 20 shown in FIG. 2 counts up at the time of writing and counts "m + 1" which is the width number of the memory cell 15 from "0" to "m", or at the end of the unit data. When a word is written it returns to '0'. The write Y pointer 21 counts up when the write X pointer 20 returns to "0".
【0020】図1において、Xポインタ制御回路11
は、ライトXポインタ20のカウント動作を制御し、Y
ポインタ制御回路12は、ライトYポインタ21のカウ
ント動作を制御する。また、リードポインタ制御回路1
3は、リードポインタ22のカウント動作を制御する。In FIG. 1, an X pointer control circuit 11
Controls the counting operation of the write X pointer 20, and Y
The pointer control circuit 12 controls the counting operation of the write Y pointer 21. In addition, the read pointer control circuit 1
3 controls the counting operation of the read pointer 22.
【0021】通常のFIFO構成と同様に、ライトYポ
インタ21とリードポインタ22との比較により、リー
ド可能状態、ライト可能状態を判断することができる。
図1において、フラグ制御回路14は、リード可能状態
を判断するためのエンプティ・フラグ、及びライト可能
状態を判断するためのフル・フラグとを制御するもので
ある。As in the case of a normal FIFO structure, the readable state and writable state can be determined by comparing the write Y pointer 21 and the read pointer 22.
In FIG. 1, a flag control circuit 14 controls an empty flag for determining a readable state and a full flag for determining a writable state.
【0022】以上の実施例で、一ワード入力・複数ワー
ド出力のFIFOメモリ装置について説明したが、逆
に、可変長データを入力し、一ワード単位のデータを出
力するFIFOメモリ装置を提供するには、ポインタ操
作に特徴のあるFIFOメモリ装置を構成する必要があ
る。In the above embodiments, the one-word input / multi- word output FIFO memory device has been described. Conversely, a FIFO memory for inputting variable-length data and outputting data in units of one word. In order to provide the device , it is necessary to construct a FIFO memory device which is characterized by pointer operation.
【0023】図3に、その構成例を示す。入力データの
ワード数が可変長の場合、通常のFIFOメモリ装置の
ようにライトポインタとリードポインタを操作すること
は難しいため、図3では、ライトポインタのみで操作を
行なう方法をとっている。FIG. 3 shows an example of the configuration. When the number of words of input data is variable, it is difficult to operate the write pointer and the read pointer as in a normal FIFO memory device . Therefore, in FIG. 3, the operation is performed only by the write pointer.
【0024】図3において、データ解析部30は、入力
データのワード数を解析するものであり、演算器31
は、可変長データをメモリセル33に書き込んだ後に、
新しいライトポインタの値を計算するものである。ま
た、ライトポインタ制御部32は、ライト操作、リード
操作等によりポインタを操作するものである。In FIG. 3, the data analysis unit 30 analyzes the number of words of the input data, and the arithmetic unit 31
After writing the variable length data to the memory cell 33,
It calculates the value of a new write pointer. The write pointer controller 32 operates the pointer by a write operation, a read operation, or the like.
【0025】図3において、ライト動作がある場合、ラ
イトポインタには、書き込みワード数が加算され、ライ
トポインタの値が更新される。図6のライト動作例で
は、ライト動作前のライトポインタは、‘2’を示して
おり、四ワードの入力データをライトした後のライトポ
インタは、‘6’を示している。In FIG. 3, when there is a write operation, the number of write words is added to the write pointer, and the value of the write pointer is updated. In the write operation example of FIG. 6, the write pointer before the write operation indicates “2”, and the write pointer after writing the input data of four words indicates “6”.
【0026】一方、リード動作がある場合には、ライト
ポインタは、‘1’だけ減算される。この減算により、
一ワードデータの読み出し後のライトポインタが求ま
る。図7の動作例では、ライト動作とリード動作とが生
じている。On the other hand, when there is a read operation, the write pointer is decremented by "1". By this subtraction,
The write pointer after reading one word data is obtained. In the operation example of FIG. 7, a write operation and a read operation occur.
【0027】図7において、ライト動作では、可変長デ
ータが四ワードであるので、ライトポインタは、‘4’
だけ加算される。また、リード動作では、ライトポイン
タは、‘1’だけ減算される。よって、これらのライト
及びリード動作により、ライトポインタの値は、‘2’
から‘5’へ更新されている。In the write operation shown in FIG. 7, since the variable length data is 4 words, the write pointer is "4".
Only added. In the read operation, the write pointer is decremented by "1". Therefore, the value of the write pointer becomes "2" by these write and read operations.
Has been updated from '5'.
【0028】図4に、図3に示すメモリセル33の構成
例を示す。図4において、リード動作があると、各段の
メモリセルのデータは、それぞれ前段のメモリセルから
複写される。そのため、一ワードの出力データは常に、
図4(a)中、[メモリセル1]と表記された一番のメ
モリセルから取り出される。FIG. 4 shows a configuration example of the memory cell 33 shown in FIG. In FIG. 4, when a read operation is performed, the data in the memory cells in each stage are copied from the memory cells in the previous stage. Therefore, one word of output data is always
In FIG. 4A, the first memory cell labeled [memory cell 1] is taken out.
【0029】従って、図4のメモリセルは、例えば、ラ
イトポインタ40が‘1’を指している時はエンプティ
状態とし、次の入力データのワード数分のメモリセルが
空でない場合はフル状態とすることができる。Therefore, for example, the memory cell of FIG. 4 is in the empty state when the write pointer 40 is pointing to "1", and is in the full state when the memory cells for the number of words of the next input data are not empty. can do.
【0030】図5は、nワードの入力データを書き込む
こととなる各メモリセルの番号と、ライトポインタの値
との関係を説明する図である。図5の場合、nワードの
入力データは、ライトポインタが示す番号のメモリセル
からn個分のメモリセルに書き込まれる。FIG. 5 is a diagram for explaining the relationship between the number of each memory cell into which n words of input data will be written and the value of the write pointer. In the case of FIG. 5, n-word input data is written in n memory cells from the memory cell of the number indicated by the write pointer.
【0031】従って、ライトポインタの値が、”m−n
+2”以上であれば、”n−1”以下のワード数のデー
タしか書き込むことができないので、nワードのデータ
を書き込めない状態にあるメモリは、フル状態であると
いえる。Therefore, the value of the write pointer is "mn".
If it is +2 "or more, only the data of the number of words of" n-1 "or less can be written, so it can be said that the memory in the state in which the data of n words cannot be written is in the full state.
【0032】なお、メモリセルには、図4(b)に示す
ように、ライト時に入力データを直接書き込む手段と、
リード時に前段のメモリセルのデータを複写する手段と
を設けて構成することができる。In the memory cell, as shown in FIG. 4B, a means for directly writing input data at the time of writing,
A means for copying the data of the memory cell in the preceding stage at the time of reading can be provided and configured.
【0033】図1又は図3に示す方法を実現するため
に、例えば図8に示すように、転送データを特定のデー
タ形式にしておくと効率よく動作させることができる。
ひとつの転送データが有する一連のデータ列の先頭の一
ワードの中で、使用していないビットに、後続するパラ
メータデータのワード数を埋め込んでおく。In order to implement the method shown in FIG. 1 or 3, for example, as shown in FIG. 8, it is possible to efficiently operate the transfer data in a specific data format.
The number of words of the following parameter data is embedded in unused bits in one word at the beginning of a series of data strings included in one transfer data.
【0034】すると、図1に示すコマンド解析部10
は、転送データのワード数を解析することができ、Xポ
インタ制御回路11にそのワードを通知することができ
る。また、図3に示すデータ解析部30も、転送データ
のワード数を解析することができ、演算器31にそのワ
ード数を通知することができる。Then, the command analysis unit 10 shown in FIG.
Can analyze the number of words of the transfer data and notify the X pointer control circuit 11 of the word. The data analysis unit 30 shown in FIG. 3 can also analyze the number of words of the transfer data, and can notify the arithmetic unit 31 of the number of words.
【0035】図3に示す演算器31の構成例を、図9に
示す。図9に示すものは、演算器31をひとつの加算器
90のみで構成したものである。図中、加算器90は、
現在のライトポインタの値と、可変長の入力データのワ
ード数と、リード信号との三つの入力を有している。例
えば、リード動作がある時には、リード信号を検出する
ことにより、ライトポインタを‘1’だけ減算する。An example of the configuration of the arithmetic unit 31 shown in FIG. 3 is shown in FIG. In FIG. 9, the arithmetic unit 31 is configured by only one adder 90. In the figure, the adder 90 is
It has three inputs: the current write pointer value, the number of words of input data of variable length, and a read signal. For example, when there is a read operation, the write pointer is subtracted by "1" by detecting the read signal.
【0036】上述した一ワード入力・複数ワード出力の
FIFOメモリ装置と、可変長ワード入力・一ワード出
力のFIFOメモリ装置とは、三次元グラフィック表示
装置が、図形処理を高速化するため、並列処理を行なう
場合に必要とされるデータの分配回路などに用いること
ができる。The one-word input / plural- word output FIFO memory device and the variable-length word input / one-word output FIFO memory device described above are used for parallel processing in order for the three-dimensional graphic display device to speed up graphic processing. Can be used for a data distribution circuit or the like that is required when performing.
【0037】図10に、本発明を応用した実施例を示
す。図10は、プロセッサ・モジュール101〜105
により算出されたデータを分配器100を経由して、次
段のプロセッサ・モジュール106〜110に転送する
システムを示している。このシステムにおいて、図11
に示すようにデータが流れるとする。FIG. 10 shows an embodiment to which the present invention is applied. FIG. 10 shows processor modules 101-105.
It shows a system for transferring the data calculated by the above to the processor modules 106 to 110 of the next stage via the distributor 100. In this system, FIG.
It is assumed that data flows as shown in.
【0038】図11に示すように、[PM1]より得ら
れたデータを、[PM6],[PM7],[PM8]へ
分配し、また、[PM2]より得られたデータを[PM
7],[PM8],[PM9]へ分配するとする。As shown in FIG. 11, the data obtained from [PM1] is distributed to [PM6], [PM7], and [PM8], and the data obtained from [PM2] is [PM2].
7], [PM8], and [PM9].
【0039】このとき、[データ2]と[データ4]、
[データ3]と[データ5]が、順序を守らなければな
らない場合、前述の分配動作は、[PM1]からの出力
データを処理した後に[PM2]からの出力データを処
理するといった処理順序が指定され、並列動作をするこ
とができない。At this time, [data 2] and [data 4],
When [Data 3] and [Data 5] have to follow the order, the above-described distribution operation is performed in such a manner that the output data from [PM1] is processed and then the output data from [PM2] is processed. It is specified and cannot operate in parallel.
【0040】従って、分配器の処理性能には、各PMの
処理性能の”並列本数倍”の処理性能が要求される。こ
の処理性能を実現し、転送速度を上げるために、複数ワ
ードをまとめて転送できる本発明を用いることができ
る。Therefore, the processing performance of the distributor is required to be "the number of parallel lines times" the processing performance of each PM. In order to realize this processing performance and increase the transfer speed, the present invention capable of transferring a plurality of words collectively can be used.
【0041】図11、12に示す各データは、一ワード
の処理コマンドと、‘0’ワード、若しくは一ワード以
上のパラメータで構成する可変長データであるとする。
このとき、転送データは一または二以上のワードで構成
するデータ列である。[PM1]〜[PM5]より出力
されたワード単位のデータ列は、コマンド単位にパック
されて分配され、また分配先では、再び、ワード単位に
切り離される。Each of the data shown in FIGS. 11 and 12 is assumed to be variable length data composed of a processing command of one word and '0' word, or a parameter of one word or more.
At this time, the transfer data is a data string composed of one or more words. The data strings in word units output from [PM1] to [PM5] are packed and distributed in command units, and are separated again in word units at the distribution destination.
【0042】すなわち、一ワード入力・複数ワード出力
のFIFOメモリ装置により、順次蓄えられた複数ワー
ドのデータを分配処理し、複数ワード入力・一ワード出
力のFIFOメモリ装置により分解されたデータを、次
段のPMに渡すことにより、分配器の分配処理能力を上
げることができる。[0042] That is, according to one word input and multiple word output FIFO memory device, and distribution processing data are sequentially stored a plurality of words, the data decomposed by the FIFO memory device of the plurality word input, one word output, the following By passing the PM to the stage PM, the distribution processing capability of the distributor can be increased.
【0043】[0043]
【発明の効果】以上説明したように、本発明によれば、
複数ワードを一度に出力することができるため、高速処
理を実現できる。また、転送データにダミーデータを加
える必要がなく、効率よくデータ転送を行なうことがで
きる。As described above, according to the present invention,
Since multiple words can be output at one time, high speed processing can be realized. Further, there is no need to add dummy data to the transfer data, it is possible to perform efficient data transfer.
【0044】さらに、本発明によるFIFOメモリ装置
を用いたデータ分配装置は、各種の形式が違うデータ列
を効率よく分配することができ、高速画像処理回路等に
非常に有効である。それから、本発明は、比較的簡単な
回路で構成できるので、ゲートアレイによりLSI化が
容易であるという利点もある。Furthermore, the data distribution device using the FIFO memory device according to the present invention can efficiently distribute data strings of different formats, and is very effective for a high-speed image processing circuit or the like. . Further, the present invention can be configured with a relatively simple circuit, so that there is an advantage that LSI can be easily formed by the gate array.
【図1】本発明による一実施例を示す図である。FIG. 1 is a diagram showing an embodiment according to the present invention.
【図2】メモリセルの構成例を示す図である。FIG. 2 is a diagram showing a configuration example of a memory cell.
【図3】本発明による他の実施例を示す図である。FIG. 3 is a diagram showing another embodiment according to the present invention.
【図4】メモリセルの構成例を示す図である。FIG. 4 is a diagram showing a configuration example of a memory cell.
【図5】可変長データの書き込み位置を示す図である。FIG. 5 is a diagram showing writing positions of variable-length data.
【図6】ライト動作を説明するための図である。FIG. 6 is a diagram for explaining a write operation.
【図7】リード・ライト動作を説明するための図であ
る。FIG. 7 is a diagram for explaining a read / write operation.
【図8】転送データの構成例を示す図である。FIG. 8 is a diagram showing a configuration example of transfer data.
【図9】演算器の構成例を示す図である。FIG. 9 is a diagram illustrating a configuration example of an arithmetic unit.
【図10】本発明を応用した実施例を示す図である。FIG. 10 is a diagram showing an embodiment to which the present invention is applied.
【図11】‘PM1’からのデータの流れを示す図であ
る。FIG. 11 is a diagram showing a data flow from'PM1 '.
【図12】‘PM2’からのデータの流れを示す図であ
る。FIG. 12 is a diagram showing a data flow from'PM2 '.
【図13】従来の技術を説明するための図である。FIG. 13 is a diagram for explaining a conventional technique.
【図14】従来技術の問題点を説明するための図であ
る。FIG. 14 is a diagram for explaining a problem of the conventional technique.
10 コマンド解析部
11 Xポインタ制御回路
12 Yポインタ制御回路
13 リードポインタ制御回路
14 フラグ制御回路
15,33 メモリセル
20 ライトXポインタ
21 ライトYポインタ
22 リードポインタ
30 データ解析部
31 演算器
32 ライトポインタ制御部
40 ライトポインタ
90 加算器
100 分配器
101〜110,130,131 プロセッサ・モジュ
ール
132〜139 メモリ10 command analysis unit 11 X pointer control circuit 12 Y pointer control circuit 13 read pointer control circuit 14 flag control circuit 15, 33 memory cell 20 write X pointer 21 write Y pointer 22 read pointer 30 data analysis unit 31 arithmetic unit 32 write pointer control Part 40 Write pointer 90 Adder 100 Distributor 101-110, 130, 131 Processor module 132-139 Memory
フロントページの続き (56)参考文献 特開 平4−121890(JP,A) 特開 昭60−73730(JP,A) 特開 平2−16630(JP,A) 特開 昭63−138591(JP,A) 特開 平5−234356(JP,A) 特開 平5−173870(JP,A) 特開 昭62−175023(JP,A) 実開 平2−67443(JP,U) (58)調査した分野(Int.Cl.7,DB名) G06F 5/06,12/04,15/173 G11C 7/00 Continuation of the front page (56) Reference JP-A-4-121890 (JP, A) JP-A-60-73730 (JP, A) JP-A-2-16630 (JP, A) JP-A-63-138591 (JP , A) JP-A-5-234356 (JP, A) JP-A-5-173870 (JP, A) JP-A-62-175023 (JP, A) Actual Kaihei 2-67443 (JP, U) (58) Fields investigated (Int.Cl. 7 , DB name) G06F 5 / 06,12 / 04,15 / 173 G11C 7/00
Claims (2)
をある装置から他の装置へ転送するためのFIFOメモ
リ装置であって、 X方向に複数個並べられ、Y方向に複数段積み重ねられ
た複数個のメモリセルと、 書き込み先のメモリセルのX方向のアドレスを示すライ
トXポインタを書き込み時にカウントアップさせ、前記
ライトXポインタが前記メモリセルのX方向の個数分カ
ウントすると、または、前記単位データの最後のワード
が書き込まれると前記ライトXポインタを0に戻すXポ
インタ制御手段と、 書き込み先のメモリセルのY方向のアドレスを示すライ
トYポインタを前記ライトXポインタが0に戻るときに
カウントアップさせるYポインタ制御手段と、 読み出し側の複数個のメモリセルのY方向のアドレスを
示すリードポインタを読み出し動作でカウントアップさ
せるリードポインタ制御手段とを有し、 読み出し時においては、前記リードポインタが示す段に
位置する前記メモリセルのX方向の個数分のワードが同
時に読み出されることを特徴とするFIFOメモリ装
置。1. A FIFO memory device for transferring unit data composed of one or more words from one device to another device, wherein a plurality of FIFO memory devices are arranged in the X direction and stacked in a plurality of stages in the Y direction. A plurality of memory cells and a write X pointer indicating an address in the X direction of a write destination memory cell are counted up at the time of writing, and the write X pointer counts by the number of the memory cells in the X direction, or X pointer control means for returning the write X pointer to 0 when the last word of data is written, and a write Y pointer indicating the address of the memory cell at the write destination in the Y direction when the write X pointer returns to 0. Y pointer control means for moving up and a read pointer indicating addresses in the Y direction of a plurality of memory cells on the read side. Read pointer control means for counting up the data in a read operation, and at the time of reading, the same number of words in the X direction of the memory cells located in the stage indicated by the read pointer are read simultaneously. FIFO memory device.
FOメモリ装置と分配手段で構成され、 前記第1のFIFOメモリ装置は、 X方向に複数個並べられ、Y方向に複数段積み重ねられ
た複数個のメモリセルと、 書き込み先のメモリセルのX方向のアドレスを示すライ
トXポインタを書き込み時にカウントアップさせ、前記
ライトXポインタが前記メモリセルのX方向の個数分カ
ウントすると、または、単位データの最後のワードが書
き込まれると前記ライトXポインタを0に戻すXポイン
タ制御手段と、 書き込み先のメモリセルのY方向のアドレスを示すライ
トYポインタを前記ライトXポインタが0に戻るときに
カウントアップさせるYポインタ制御手段と、 読み出し側の複数個のメモリセルのY方向のアドレスを
示すリードポインタを読み出し動作でカウントアップさ
せるリードポインタ制御手段とを有し、 並列処理を行う複数の装置がそれぞれ出力する一以上の
ワードで構成される各単位データを入力し、前記リード
ポインタが示す段に位置する前記メモリセルのX方向の
個数分のワードを同時に出力し、 前記分配手段は、前記第1のFIFOメモリ装置の出力
を入力し、単位データ単位で前記第2のFIFOメモリ
装置へ分配し、 前記第2のFIFOメモリ装置は、 複数段積み重なるメモリセルと、 前記単位データ中に示される当該単位データのワード数
に関する情報を解析するデータ解析手段と、 書き込み動作がある場合、前記データ解析手段の解析結
果に基づいて、前記メモリセルのどの位置から前記単位
データを書き込むべきかを示すライトポインタに対し書
き込みワード数を加算し、一方、読み出し動作がある場
合、前記ライトポインタを1だけ減算する演算手段と、 読み出し動作があると、各段のメモリセルに、それぞれ
前段のメモリセルのデータを複写する手段とを有し、 前記分配手段により分配された単位データをワード単位
に切り離し、各並列処理を行う他の複数の装置の一つへ
転送することを特徴とするデータ分配装置 。2. A first FIFO memory device and a second FI.
The first FIFO memory device comprises a FO memory device and a distribution means , and a plurality of the first FIFO memory devices are arranged in the X direction and stacked in the Y direction.
A plurality of memory cells and a line indicating the address in the X direction of the memory cell to be written
The X pointer is incremented when writing,
The number of write X pointers is equal to the number of memory cells in the X direction.
Or the last word of the unit data is written.
An X-point that resets the write X-pointer to 0 when imbedded
Data control means and a line indicating the Y-direction address of the write destination memory cell.
When the write Y pointer returns to 0
Y pointer control means for counting up and Y direction addresses of a plurality of memory cells on the read side are set.
The indicated read pointer is counted up by the read operation.
And a read pointer control means for performing parallel processing, each of which is output by a plurality of devices performing parallel processing.
Input each unit data composed of words and read the above
In the X direction of the memory cell located at the stage indicated by the pointer
The number of words are simultaneously output, and the distribution unit outputs the first FIFO memory device output.
And the second FIFO memory in unit data units.
Distributed to the device, the second FIFO memory device includes a plurality of stages stacked memory cells, the number of words of the unit data represented in the unit data
If there is a write operation and data analysis means for analyzing information regarding the
Based on the result, from which position of the memory cell the unit
Write to a write pointer that indicates whether to write data
Add the number of words to be imbedded, and if there is a read operation,
In this case, if there is an operation means for subtracting 1 from the write pointer and a read operation, the memory cells in each stage are respectively
And a unit for copying the data of the memory cell in the preceding stage, and the unit data distributed by the distributing unit is word unit.
To one of the other multiple devices for each parallel processing.
A data distribution device characterized by transferring .
Priority Applications (8)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP27743492A JP3522779B2 (en) | 1992-10-15 | 1992-10-15 | FIFO memory device and data distribution device |
| US08/031,121 US5412611A (en) | 1992-03-17 | 1993-03-12 | FIFO memory device capable of writing contiguous data into rows |
| GB9607622A GB2297639B (en) | 1992-10-15 | 1993-03-16 | Fifo memory devices |
| GB9519123A GB2291230B (en) | 1992-10-15 | 1993-03-16 | Fifo memory devices |
| GB9305423A GB2265233B (en) | 1992-03-17 | 1993-03-16 | Fifo memory devices |
| US08/391,657 US5515330A (en) | 1992-01-15 | 1995-02-21 | FIFO memory device capable of writing contiguous data into rows |
| US08/391,656 US5513145A (en) | 1992-03-17 | 1995-02-21 | FIFO memory device capable of writing contiguous data into rows |
| US08/391,647 US5521876A (en) | 1992-03-17 | 1995-02-21 | FIFO memory device capable of writing contiguous data into rows |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP27743492A JP3522779B2 (en) | 1992-10-15 | 1992-10-15 | FIFO memory device and data distribution device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH06131256A JPH06131256A (en) | 1994-05-13 |
| JP3522779B2 true JP3522779B2 (en) | 2004-04-26 |
Family
ID=17583511
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP27743492A Expired - Lifetime JP3522779B2 (en) | 1992-01-15 | 1992-10-15 | FIFO memory device and data distribution device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3522779B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7376152B2 (en) * | 2004-03-30 | 2008-05-20 | Via Telecom Co., Ltd. | Method and/or architecture implemented in hardware for the adjustment of messages with indeterministic length |
-
1992
- 1992-10-15 JP JP27743492A patent/JP3522779B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH06131256A (en) | 1994-05-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3359393B2 (en) | Graphic data parallel processing display device | |
| US5490257A (en) | RAM based FIFO memory half-full detection apparatus and method | |
| US4298932A (en) | Serial storage subsystem for a data processor | |
| CN1004523B (en) | Method of indicator control for the multiwicket system | |
| CN1524215A (en) | First-in-first-out storage system and method thereof | |
| JP3522779B2 (en) | FIFO memory device and data distribution device | |
| US7035908B1 (en) | Method for multiprocessor communication within a shared memory architecture | |
| Evans | Computer logic and memory | |
| AU2950095A (en) | Method and system for storing data in a memory device | |
| JP2531188B2 (en) | Buffer memory | |
| JP2813015B2 (en) | Graphic processor | |
| KR100253730B1 (en) | Backup device of non-continuous multi-source digital data | |
| KR100218669B1 (en) | Atm switch address error deleting method | |
| JPH0434191B2 (en) | ||
| JP2894758B2 (en) | Semiconductor mask data conversion processor | |
| JP2839597B2 (en) | Device for creating charged beam drawing data | |
| JPS58189719A (en) | Data transfer control system | |
| JP2772192B2 (en) | Input/Output Processor | |
| JPS62216046A (en) | Record control system for logical simulation device | |
| WO1996006394A1 (en) | Method and system for identifying common data element in data blocks for storage | |
| Astrahan et al. | The lexical design of a digital computer for a large-scale real-time application | |
| JPH05257882A (en) | Data processor | |
| GB2297639A (en) | FIFO memory devices | |
| JPS63271549A (en) | Memory area erasion control method and apparatus | |
| Chen | Solving Large and Sparse Zero-one Programming Problems on Parallel Processors |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20031126 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040107 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040127 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040205 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080220 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090220 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090220 Year of fee payment: 5 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090220 Year of fee payment: 5 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090220 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100220 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100220 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110220 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120220 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130220 Year of fee payment: 9 |
|
| EXPY | Cancellation because of completion of term | ||
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130220 Year of fee payment: 9 |