JP2531188B2 - Buffer memory - Google Patents
Buffer memoryInfo
- Publication number
- JP2531188B2 JP2531188B2 JP62190784A JP19078487A JP2531188B2 JP 2531188 B2 JP2531188 B2 JP 2531188B2 JP 62190784 A JP62190784 A JP 62190784A JP 19078487 A JP19078487 A JP 19078487A JP 2531188 B2 JP2531188 B2 JP 2531188B2
- Authority
- JP
- Japan
- Prior art keywords
- end side
- shift register
- data
- clock
- memory
- 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 - Fee Related
Links
Landscapes
- Communication Control (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、いわゆるフアーストインフアーストアウト
型のバツフアメモリに関する。TECHNICAL FIELD The present invention relates to a so-called first-in first-out buffer memory.
本発明はバツフアメモリに関し、フラグ用のシフトレ
ジスタを2系統設けることによつて、特にブロツク転送
されるデータのバツフアリングを良好に行えるようにし
たものである。The present invention relates to a buffer memory, in which two systems of shift registers for flags are provided so that the data transferred in block transfer can be properly buffered.
例えば2つの回路(プロセツサ)間のデータ転送を行
う場合に、この転送を円滑に行うためのフアーストイン
フアーストアウト(FIFO)型のバツフアメモリが用いら
れる(「トランジスタ技術」1984年3月号P324〜P326等
参照)。For example, when performing data transfer between two circuits (processors), a buffer memory of a first-in first-out (FIFO) type is used to facilitate this transfer ("Transistor Technology", March 1984, P324- (See P326, etc.).
すなわち第2図は上述のFIFO型のバツフアメモリを模
式的に示したもので、転送されるデータワードのビツト
数(M)で所定段数(L)のメモリ(1)が設けられる
と共に、L段のシフトレジスタ(2)が設けられる。That is, FIG. 2 schematically shows the above-mentioned FIFO type buffer memory, which is provided with a memory (1) of a predetermined number of stages (L) corresponding to the number of bits (M) of the data word to be transferred, and at the same time, of the L stages. A shift register (2) is provided.
そして送信側の回路(図示せず)からのデータワード
が図面左側のデータ入力端子DI1〜DIMに供給され、この
端子DI1〜DIMに供給されたデータワードは、メモリ
(1)の出力端側(図面右側)の段から順次書込まれる
と共に、受信側の回路(図示せず)からの読出クロツク
SOが供給され、ると出力端側の段のデータワードがデー
タ出力端子DO1〜DOMに出力されさらにメモリ(1)の各
段に書込まれたデータワードが出力端側に順次シフトさ
れる。The data word from a circuit on the transmission side (not shown) is supplied to the data input terminal DI 1 -DI M drawings left, supplied data word to the terminal DI 1 -DI M includes a memory (1) Writing is performed sequentially from the output end side (right side in the drawing), and read clock from the receiving side circuit (not shown).
SO is supplied, Ru and data word stage of the output end side is written sequentially shifted data word to an output end side to each stage of the further memory are outputted to the data output terminal DO 1 ~DO M (1) It
これによつて入力端子DI1〜DIMに供給されたデータワ
ードは時系列を変えずに出力端子DO1〜DOMに出力される
と共に、この間でメモリ(1)の段数分の時間軸の変更
が許され、送信側の回路及び受信側の回路の状態に応じ
たデータの転送を行うことができる。Is outputted to the output terminal DO 1 to DO M without changing the I connexion input terminal DI 1 -DI M-sequence time data words supplied to thereto, during which time the memory number of stages of the time axis (1) Modification is allowed, and data can be transferred according to the states of the transmitting side circuit and the receiving side circuit.
またシフトレジスタ(2)には、マスタークリア信号
MCにてメモリ(1)の内容が全てクリアされた時点で一
端側(図面右側)の端段に“1"のポインタが設けられ、
送信側の回路からの書込クロツクSI及び受信側の回路か
らの読出クロツクSOに応じて、書込クロツクSIが供給さ
れたとき他端側(図面左側)へ、読出クロツクSOが供給
されたとき一端側へポインタのシフトが行われる。In addition, the shift register (2) has a master clear signal.
When all contents of memory (1) are cleared by MC, a pointer of "1" is provided at one end (right side of drawing).
Depending on the write clock SI from the circuit on the transmitting side and the read clock SO from the circuit on the receiving side, when the write clock SI is supplied When the read clock SO is supplied to the other end side (left side in the drawing) The pointer is shifted to the one end side.
従つてこのシフトレジスタ(2)では、メモリ(1)
にデータワードが書込まれていないときに一端側の端段
にポインタが設けられ、メモリ(1)の全段にデータワ
ードが書込まれたときに他端側の端段にポインタが設け
られる。そこでシフトレジスタ(2)の一端側の端段の
信号を取出して読出要求フラグ▲▼とし、また他端
側の端段の信号を取出して書込要求フラグ▲▼とす
ることができる。Therefore, in this shift register (2), the memory (1)
A pointer is provided at one end side when the data word is not written in the memory, and a pointer is provided at the other end side when the data word is written in all the stages of the memory (1). . Therefore, the signal of the end stage on one end side of the shift register (2) can be taken out as a read request flag ▲ ▼, and the signal of the end stage on the other end side can be taken out as a write request flag ▲ ▼.
これによつて送信側の回路からは書込要求フラグ▲
▼を監視してこれが“0"のときデータワードの書込を
行い、また受信側の回路からは読出要求フラグ▲▼
を監視してこれが“0"のときデータワードの読出を行う
ことにより、データワードの書込・読出を確実に行うこ
とができる。This allows the write request flag ▲ from the circuit on the transmitting side.
▼ is monitored, and when this is “0”, the data word is written, and the read request flag from the receiving circuit ▲ ▼
Is monitored and the data word is read when this is "0", the writing / reading of the data word can be reliably performed.
ところが上述の装置において、データの入出力を行う
際には、各データワードごとにフラグ▲▼または▲
▼を判断しなければならず、例えばマイクロプログ
ラム制御プロセツサでは1データワードごとに条件判断
命令となるために、制御を円滑に行うことができなくな
る。すなわち上述のプロセツサ等では、データの入出力
と同時にいわゆるパイプライン処理や多重処理による演
算等を行つている場合があり、その場合に演算結果の符
号や零、オーバーフロー等の判断も同時に行わなければ
ならない。またデータの入出力においても、そのデータ
数を管理する場合のカウンタのカウント値の判断等も行
う必要があり、これらに加えて毎データワードに上述の
フラグ▲▼,▲▼の判断を行うことは、入出力
の高速化に対する大きな負担になつていた。However, in the above-mentioned device, when data is input / output, a flag ▲ ▼ or ▲ is set for each data word.
▼ must be determined, and for example, in the microprogram control processor, a condition determination command is issued for each data word, so that control cannot be smoothly performed. That is, in the above-described processor or the like, there are cases where operations such as so-called pipeline processing and multiple processing are performed at the same time as input / output of data. I won't. In addition, in the input / output of data, it is necessary to judge the count value of the counter when managing the number of data. In addition to these, the above-mentioned flags ▲ ▼ and ▲ ▼ should be judged for each data word. Has been a heavy burden for speeding up I / O.
ところで上述のプロセツサ間のデータ転送では、所定
数のデータワードごとにブロツク化してバースト転送す
ることが一般的である。その場合に上述のフラグの判断
はブロツクの転送ごとでよい。しかしながら上述の装置
ではブロツクごとに上述のフラグを形成することはでき
なかつた。By the way, in the above-described data transfer between processors, it is general to block each predetermined number of data words and perform burst transfer. In that case, the determination of the above flag may be made for each block transfer. However, the above-mentioned device cannot form the above-mentioned flag for each block.
本発明は、出力端側の段より順次データワードが書込
まれる所定段数(L)のメモリ(1)と、一端側の段よ
り書込クロツクによつて他端側へまた読出クロツクによ
つて上記一端側へ順次ポインタがシフトされる上記所定
段数の第1のシフトレジスタ(2)と、一端側の段より
書込クロツクによつて他端側へまた読出クロツクによつ
て上記一端側へ順次ポインタがシフトされる任意段数
(P)の第2のシフトレジスタ(3)とを有し、上記メ
モリには所定数(N)の上記データワードごとにブロツ
ク化されたデータが書込まれ(DI1〜DIM)読出される
(DO1〜DOM)と共に、上記第1のシフトレジスタには上
記データワードごとの書込クロツクSI及び読出クロツク
SOが供給されて上記他端側の段から書込要求フラグ▲
▼が出力され、上記第2のシフトレジスタには上記ブ
ロツクごとの書込クロツクBSI及び読出クロツクBSOが供
給されて上記一端側の段から読出要求フラグ▲▼が
出力されるようにしたバツフアメモリである。The present invention provides a memory (1) having a predetermined number of stages (L) in which data words are sequentially written from the stage on the output end side, and a write clock from the stage on one end side to the other end side and a read clock. The first shift register (2) having the predetermined number of stages in which the pointer is sequentially shifted to the one end side, and sequentially from the stage on the one end side to the other end side by the write clock and to the one end side by the read clock. The pointer has an arbitrary number of stages (P) of the second shift register (3), and a predetermined number (N) of the data words are written with the block data in the memory (DI). 1 -DI M) read by (DO 1 to DO M) together, the first write per the data word in the shift register clock SI and read clock
When SO is supplied, the write request flag from the stage on the other end side ▲
▼ is output, the write clock BSI and the read clock BSO for each block are supplied to the second shift register, and the read request flag ▲ ▼ is output from the stage on the one end side. .
これによれば、第2のシフトレジスタの一端側の段か
らはブロツク転送に対する読出要求フラグが出力され、
従つて受信側の回路では所定のブロツクの転送ごとにフ
ラグの判断を行えばよく、判断の回数が削減されてデー
タの入出力を極めて円滑に行うことができる。According to this, the read request flag for block transfer is output from the stage on the one end side of the second shift register,
Therefore, in the circuit on the receiving side, it is sufficient to judge the flag for each transfer of a predetermined block, the number of judgments is reduced, and data can be input / output extremely smoothly.
第1図において、従来技術で述べたと同様のメモリ
(1)とシフトレジスタ(2)が設けられると共に、任
意段数(P)の第2のシフトレジスタ(3)が設けられ
る。In FIG. 1, a memory (1) and a shift register (2) similar to those described in the prior art are provided, and a second shift register (3) having an arbitrary number of stages (P) is provided.
そしてシフトレジスタ(3)には、マスタークリア信
号MCにてメモリ(1)の内容が全てクリアされた時点で
一端側(図面右側)の端段に“1"のポインタが設けら
れ、送信側の回路からのブロツクを構成する所定数
(N)のデータワードごとのブロツク書込クロツクBSI
及び受信側の回路からの同じく所定数(N)のデータワ
ードごとのブロツク読出クロツクBSOに応じて、書込ク
ロツクBSIが供給されたとき他端側(図面左側)へ、読
出クロツクBSOが供給されたとき一端側へポインタのシ
フトが行われる。なお、ブロツク書込クロツクBSI及び
ブロツク読出クロツクBSOは共にN個のデータワードの
書込または読出が終了した時点で発生される。Then, the shift register (3) is provided with a pointer of "1" at the end of one end side (right side in the drawing) when all the contents of the memory (1) are cleared by the master clear signal MC, Block write clock BSI for each predetermined number (N) of data words that make up the block from the circuit
Also, according to the block read clock BSO for each predetermined number (N) of data words from the circuit on the receiving side, when the write clock BSI is supplied, the read clock BSO is supplied to the other end side (left side in the drawing). When this happens, the pointer is shifted to one end. Both the block write clock BSI and the block read clock BSO are generated when the writing or reading of N data words is completed.
従つてこのシフトレジスタ(3)では、メモリ(1)
にデータワードが書込まれていないときに一端側の端段
にポインタが設けられると共に、このポインタは1ブロ
ツク分のデータワードがメモリ(1)に書込まれたとき
に始めて他端側へシフトされる。Therefore, in this shift register (3), the memory (1)
A pointer is provided at one end side when no data word is written in the memory, and this pointer is shifted to the other end side only when one block of data word is written in the memory (1). To be done.
そこでこのシフトレジスタ(3)の一端側の端段の信
号を取出して読出要求フラグ▲▼とすることによつ
て、このフラグが“0"のときはメモリ(1)に1ブロツ
ク分以上のデータワードが書込まれていることになり、
受信側の回路でこのフラグを判断することによつてN個
のデータワードからなるブロツク転送を円滑に行うこと
ができる。Therefore, by extracting the signal of the end stage on the one end side of the shift register (3) and setting it as a read request flag ▲ ▼, when this flag is “0”, one block or more of data is stored in the memory (1). The word has been written,
A block transfer consisting of N data words can be smoothly performed by judging this flag in the circuit on the receiving side.
こうして上述の装置によれば、第2のシフトレジスタ
の一端側の段からはブロツク転送に対する読出要求フラ
グが出力され、従つて受信側の回路では所定のブロツク
の転送ごとにフラグの判断を行えばよく、判断の回数が
削減されてデータの入出力を極めて円滑に行うことがで
きる。In this way, according to the above-mentioned device, the read request flag for block transfer is output from the stage on the one end side of the second shift register, and therefore the flag on the receiving side can be determined for each transfer of a predetermined block. Well, the number of judgments is reduced, and data input / output can be performed extremely smoothly.
なお上述の装置において第2のシフトレジスタ(3)
の段数Pは、 であればよいが、Nの値は用途によつて一定でない(た
だしL≫N)ので、例えばP=Lとしても支障はなく、
この場合にシフトレジスタ(3)がオーバーフローする
おそれを全くなくすことができる。In the above-mentioned device, the second shift register (3)
The number of steps P is However, since the value of N is not constant depending on the application (however L >> N), there is no problem even if P = L, for example.
In this case, the risk of overflow of the shift register (3) can be completely eliminated.
また、上述の例ではブロツク転送用の読出要求フラグ
を形成する場合について述べたが、例えばシフトレジス
タ(3)のL/Nの整数部分に相当する段の信号を取出す
手段を設けることにより、書込要求フラグの形成を行う
こともできる。In the above example, the case where the read request flag for block transfer is formed has been described. However, by providing a means for extracting the signal of the stage corresponding to the integer part of L / N of the shift register (3), It is also possible to form an inclusion request flag.
この発明によれば、第2のシフトレジスタの一端側の
段からはブロツク転送に対する読出要求フラグが出力さ
れ、従つて受信側の回路では所定のブロツクの転送ごと
にフラグの判断を行えばよく、判断の回数が削減されて
データの入出力を極めて円滑に行うことができるように
なつた。According to the present invention, the read request flag for block transfer is output from the stage on the one end side of the second shift register, so that the circuit on the receiving side may judge the flag for each transfer of a predetermined block. The number of judgments has been reduced, and data can be input and output extremely smoothly.
第1図は本発明の一例の構成図、第2図は従来の技術の
説明のための図である。 (1)はメモリ、(2)(3)はシフトレジスタであ
る。FIG. 1 is a block diagram of an example of the present invention, and FIG. 2 is a diagram for explaining a conventional technique. (1) is a memory, and (2) and (3) are shift registers.
Claims (1)
まれる所定段数のメモリと、 一端側の段より書込クロツクによつて他端側へまた読出
クロツクによつて上記一端側へ順次ポインタがシフトさ
れる上記所定段数の第1のシフトレジスタと、 一端側の段より書込クロツクによつて他端側へまた読出
クロツクによつて上記一端側へ順次ポインタがシフトさ
れる任意段数の第2のシフトレジスタとを有し、 上記メモリには所定数の上記データワードごとにブロツ
ク化されたデータが書込まれ読出されると共に、 上記第1のシフトレジスタには上記データワードごとの
書込クロツク及び読出クロツクが供給されて上記他端側
の段から書込要求フラグが出力され、 上記第2のシフトレジスタには上記ブロツクごとの書込
クロツク及び読出クロツクが供給されて上記一端側の段
から読出要求フラグが出力されるようにしたバツフアメ
モリ。1. A memory having a predetermined number of stages in which data words are sequentially written from the stage on the output end side, and sequentially from the stage on one end side to the other end side by a write clock and to the one end side by a read clock. The first shift register having the predetermined number of stages in which the pointer is shifted, and the arbitrary number of stages in which the pointer is sequentially shifted from the stage at one end side to the other end side by the write clock and to the one end side by the read clock. A second shift register, and block data is written into and read from the memory for each predetermined number of the data words, and the first shift register is written for each of the data words. The input clock and the read clock are supplied, the write request flag is output from the stage on the other end side, and the write clock and the read clock for each block are output to the second shift register. Buffer memory which is adapted read request flags from the one end side of the step is output but is supplied.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62190784A JP2531188B2 (en) | 1987-07-30 | 1987-07-30 | Buffer memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62190784A JP2531188B2 (en) | 1987-07-30 | 1987-07-30 | Buffer memory |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6433624A JPS6433624A (en) | 1989-02-03 |
JP2531188B2 true JP2531188B2 (en) | 1996-09-04 |
Family
ID=16263679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62190784A Expired - Fee Related JP2531188B2 (en) | 1987-07-30 | 1987-07-30 | Buffer memory |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2531188B2 (en) |
-
1987
- 1987-07-30 JP JP62190784A patent/JP2531188B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPS6433624A (en) | 1989-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4649512A (en) | Interface circuit having a shift register inserted between a data transmission unit and a data reception unit | |
US6253250B1 (en) | Method and apparatus for bridging a plurality of buses and handling of an exception event to provide bus isolation | |
US4884192A (en) | Information processor capable of data transfer among plural digital data processing units by using an active transmission line having locally controlled storage of data | |
US6321233B1 (en) | Apparatus for controlling pipelined memory access requests | |
US5596707A (en) | Information processing system having backup/recovery facilities | |
US4630192A (en) | Apparatus for executing an instruction and for simultaneously generating and storing related information | |
JPH0628308A (en) | System and method for transfer of data between two data buses having different widths | |
JPS6389961A (en) | Semaphore circuit | |
US6292807B1 (en) | Method for controlling pipelined memory access requests | |
JP2531188B2 (en) | Buffer memory | |
JP2536415B2 (en) | DMA transfer control device | |
US6510483B1 (en) | Circuit, architecture and method for reading an address counter and/or matching a bus width through one or more synchronous ports | |
JPS5936390A (en) | Register circuit | |
EP0717348A2 (en) | Apparatus and method for inserting an address within a data stream in a data processing system | |
EP0073081A1 (en) | Data processing system having a control device for controlling an intermediate memory during a bulk data transport between a source device and a destination device | |
JP2973941B2 (en) | Asynchronous FIFO buffer device | |
JP2917659B2 (en) | Information processing device | |
IE842856L (en) | Adjustable buffer for data communications in data processing¹system | |
JP2505298B2 (en) | Variable bus width designation method and variable bus width information reception method in split bus | |
SU1182534A1 (en) | Interface for linking processor with peripheral subscribers | |
JPS598057A (en) | Memory device | |
JPH09319863A (en) | Set data changing device for image processor | |
JPS5914193A (en) | Memory circuit | |
JPH04369756A (en) | Data transfer method | |
JPH02503121A (en) | Selective receiver for each processor in a multiple processor system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |