JPH0464988A - Fifo memory - Google Patents

Fifo memory

Info

Publication number
JPH0464988A
JPH0464988A JP2176919A JP17691990A JPH0464988A JP H0464988 A JPH0464988 A JP H0464988A JP 2176919 A JP2176919 A JP 2176919A JP 17691990 A JP17691990 A JP 17691990A JP H0464988 A JPH0464988 A JP H0464988A
Authority
JP
Japan
Prior art keywords
data
bit
memory cell
bits
address
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.)
Pending
Application number
JP2176919A
Other languages
Japanese (ja)
Inventor
Kazuhiko Matsuda
和彦 松田
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.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2176919A priority Critical patent/JPH0464988A/en
Publication of JPH0464988A publication Critical patent/JPH0464988A/en
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

PURPOSE:To improve efficiency for transferring a data between data processors having different data bus width by providing a function to match the respective data bus width of the data processors connecting a FIFO memory to a data input / output port. CONSTITUTION:When data D0-D15 are inputted, a row decoder 4 decodes the address data of high-order (m) bits of a write pointer 2, and one row of a mem ory cell 1 having (2<m>X2<n>X8) bits. A column decoder 10 decodes low-order (n) bits, and one column is selected. On the other hand, those data are inputted to a column decoder 12 as well, and the adjacent column is selected after increas ing the address by +1. A write control signal and the data D0-D15 are written in the selected memory area. In this case, when the address value of the write pointer 2 is increased only by 2 and a write operation is repeated N times, the data of (2XNX8) bits is written in the memory cell 1 and the address data value is turned to be (2XN). Therefore, the difference of the address data value between write pointers 2 and 3 becomes (2XN) and the data can be read from the memory cell 1.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、例えば、データ処理装置間でデータ転送を行
う際にバッファメモリとして用いられるFIFOメモリ
に関し、さらに詳細には、異なるデータバス幅を有する
データ処理装置間のデータ転送手段に適用して好適なF
IFOメモリに関するものである。
Detailed Description of the Invention [Field of Industrial Application] The present invention relates to a FIFO memory used as a buffer memory when transferring data between data processing devices, and more specifically, to a FIFO memory that is used as a buffer memory when transferring data between data processing devices. F suitable for application to data transfer means between data processing devices having
This relates to IFO memory.

〔従来の技術〕[Conventional technology]

従来、データ処理袋間でのデータ転送のために用いられ
るFIFOメモリはデータ入力ボートとデータ出力ボー
トとが同じデータビット数であった。そのため、データ
転送を行うデータ処理装置のデータバス幅が異なる場合
、例えば8ビツトのデータバス幅を有するデータ処理装
置(以下8ビツト処理装置と称する)から16ビツトの
データバス幅を有するデータ処理装置(以下16ビツト
処理装置と称する)へデータ転送を行う場合には、次に
述べる二つの技術が採用されていた。
Conventionally, in a FIFO memory used for data transfer between data processing bags, the data input port and the data output port have the same number of data bits. Therefore, if the data bus widths of the data processing devices that perform data transfer are different, for example, a data processing device with a data bus width of 8 bits (hereinafter referred to as an 8-bit processing device) and a data processing device with a data bus width of 16 bits are used. When transferring data to a 16-bit processing device (hereinafter referred to as a 16-bit processing device), the following two techniques have been adopted.

第1の技術は、入出力データピット数が8ビツトのFI
FOメモリを1個用い、このFIFOメモリの入力ボー
トを8ビット処理装置の8ビツトデータ出力ボートに接
続し、上記FIFOメモリの出力ボートを16ビツト処
理装置の16ビツトデータ入力ボートの中、上位または
下位のどちらかの8ビットデータ入カボートに接続して
データの転送を行うようにしたものである。
The first technology is FI with 8 bits of input/output data pits.
One FO memory is used, the input port of this FIFO memory is connected to the 8-bit data output port of the 8-bit processing device, and the output port of the FIFO memory is connected to the upper or Data is transferred by connecting to either lower 8-bit data input port.

また第2の技術は、入出力データピット数が8ビットの
FIFOメモリを2個用い、この2個のFIFOメモリ
のそれぞれの入力ボートを8ビツト処理装置の8ビツト
データ出力ボートに接続し、上記FIFOメモリそれぞ
れの出力ボートを16ビツト処理装置の16ビツトデー
タ入力ポートの中、」1位および下位の8ビットデータ
入カポ−1〜にそれぞれ接続してデータ転送を行うよう
にしたものである。
The second technique uses two FIFO memories with 8-bit input/output data pits, and connects each input port of these two FIFO memories to the 8-bit data output port of an 8-bit processing device. The output ports of each FIFO memory are connected to the first and lower 8-bit data input ports 1 to 1 of the 16-bit data input ports of the 16-bit processing device for data transfer.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

しかしながら、上記第1の技術においては、16ビツト
処理装置にFIFOメモリからデータを供給する場合、
16ビツトデータバスの上位または下位の8ビツトのみ
しか使用されないためデータ転送に時間を要し、高速の
データ処理ができない等の問題点があった。
However, in the first technique, when data is supplied from the FIFO memory to the 16-bit processing device,
Since only the upper or lower 8 bits of the 16-bit data bus are used, data transfer takes time and high-speed data processing is not possible.

また、第2の技術においては、8ビツト処理装置から1
6ビツトデータを16ビツト処理装置に転送する場合、
8ビツト処理装置から出力された2つの8ビツトデータ
を2個のFIFOメモリ振り分けて書き込む必要があり
、さらに、2つの8ビットデータの中、一方の8ビツト
デタを一方のFIFOメモリに書き込んだ後、他方の8
ビットデータを他方のFIFOメモリに書き込む前に、
16ビツト処理装置が新たな16ビツトのデータを読み
込まないような排他的制御を行う必要があり、この排他
的制御を行うために、論理回路を付加しなければならず
、部品点数が多くなり、異なるデータバス幅を有するデ
ータ処理装置間でデータを転送するためには、大きな回
路基板を使用しなければならない等の問題点があった。
In addition, in the second technique, 1
When transferring 6-bit data to a 16-bit processing device,
It is necessary to distribute the two 8-bit data output from the 8-bit processing device to two FIFO memories and write them.Furthermore, after writing one of the two 8-bit data to one FIFO memory, the other 8
Before writing the bit data to the other FIFO memory,
It is necessary to perform exclusive control to prevent the 16-bit processing device from reading new 16-bit data, and to perform this exclusive control, a logic circuit must be added, which increases the number of parts. In order to transfer data between data processing devices having different data bus widths, there are problems such as the need to use a large circuit board.

本発明はかかる点に鑑みてなされたものであって、異な
るデータバス幅を有するデータ処理装置間のデータ転送
を効率よく行なうことのできる優れたFIFOメモリを
提供することを目的とする。
The present invention has been made in view of the above, and an object of the present invention is to provide an excellent FIFO memory that can efficiently transfer data between data processing devices having different data bus widths.

〔課題を解決するための手段〕[Means to solve the problem]

前記の課題を解決するために、請求項1記載のFIFO
メモリは、2n′行×2′列から形成される(2nX2
”  ×k)ビットのメモリ容量を有するメモリセルと
、このメモリセルへの書き込みアドレスをNづつ増加さ
せる(m+n)ビットのライトポインタと、上記メモリ
セルからの読み出しアドレスを1づつ増加させる(m+
n)ビットのり−ドポインタと、(N×k)ビットのデ
ータ入力線と、kビットのデータ出力線と、上記データ
入力線から入力された(Nxk)ビットのデータを上記
メモリセルに書き込むN個のデータ入力回路と、上記メ
モリセルから読み出されたにビットのデータを上記デー
タ出力線に出力するデータ出力回路とを備えたことを特
徴としている。
In order to solve the above problem, the FIFO according to claim 1
The memory is formed of 2n' rows x 2' columns (2n x 2' columns).
” A memory cell having a memory capacity of ×k) bits, a (m+n) bit write pointer that increases the write address to this memory cell by N increments, and a (m+n) bit write pointer that increases the read address from the memory cell by 1.
n) A bit paste pointer, a (N x k) bit data input line, a k bit data output line, and N bits for writing (Nxk) bit data input from the data input line into the memory cell. The data input circuit is characterized by comprising a data input circuit, and a data output circuit that outputs 1-bit data read from the memory cell to the data output line.

また、請求項2記載のFIFOメモリは、2”行×2°
列から形成される(2”×2n×k)ビットのメモリ容
量を有するメモリセルと、このメモリセル−\の書き込
みアドレスを1づつ増加させる( m +n )ビット
のラインポインタと、」−記メモリセルからの読み出し
アドレスをNづつ増加さぜる(m+n)ビットのリード
ポインタと、kビットのデータ入力線と、(N×k)ビ
ットのデータ出力線と、」1記データ入力線から入力さ
れたにビットのデータを上記メモリセルに書き込むデー
タ入力回路と、上記メモリセルから読み出された( N
X k )ビットのデータを」1記データ出力線に出力
するN個のデータ出力回路どを備えたことを特徴として
いる。
Further, the FIFO memory according to claim 2 has 2” rows×2°
a memory cell having a memory capacity of (2" x 2n x k) bits formed from a column; a line pointer of (m + n) bits for incrementing the write address of this memory cell -\ by 1; An (m+n)-bit read pointer that increments the read address from the cell by N, a k-bit data input line, and an (N×k)-bit data output line. a data input circuit for writing one bit of data into the memory cell; and a data input circuit for writing one bit of data into the memory cell (N
The device is characterized in that it includes N data output circuits that output X k ) bits of data to the first data output line.

〔作用〕[Effect]

上記の構成を有する請求項1記載のF J F Oメモ
リでは、書き込み用動作に対して、ライトポインタに保
持されているアドレスデータのうち、先ず、」−位mビ
ットのデータがデコードされ、(2n′X2’ ×k)
ビットのメモリセルの中の2n′行の中、1行が選択さ
れ、次に、下位nビットのデータがデコードされて、−
11記選択された1行の中からN列が選択される。
In the FJFO memory according to claim 1 having the above-mentioned configuration, for a write operation, among the address data held in the write pointer, the data of the m-bits of ``-'' is first decoded, and 2n'X2' ×k)
One of the 2n' rows in the bit memory cells is selected, and then the lower n bits of data are decoded and -
11. N columns are selected from the selected row.

このように選択されたメモリセル中のN個のにピッl−
データ領域には、データ入力線から入力された(N×k
)ビットのデータがN個の入力回路を介して書き込まれ
る。本書き込み動作が行われた後、ライトポインタの値
がNだけ増加される。
The N pins in the memory cells selected in this way are
The data area contains (N×k
) bit data is written through N input circuits. After the main write operation is performed, the value of the write pointer is increased by N.

一方、読み出し動作に対してリードポインタに保持され
ているアト1ノスデータのうち、先ず、上位mビットの
データがデコードされ、(2”×2・×k)ビットのメ
モリセルの中の2”行の中、1行が選択され、次に、下
位nビットのデータがデコードされて、上記選択された
1行の中から1列が選択される。
On the other hand, for the read operation, among the at1nos data held in the read pointer, the upper m bits of data are first decoded, and the 2" row of the (2" x 2 x k) bit memory cells is decoded. One row is selected from among the rows, and then the lower n bits of data are decoded, and one column is selected from the selected row.

このように選択されたメモリセル中の1個のにビットデ
ータが読み出され、出力回路を介してデータ出力線から
出力される。本読み出し動作が行われた後、リードポイ
ンタの値が1だけ増加されるような作用を有する。
Bit data is read into one of the memory cells selected in this way and is output from the data output line via the output circuit. After the main read operation is performed, the value of the read pointer is increased by 1.

請求項2記載のFIFOメモリでは、書き込み動作に対
して、ライトポインタに保持されているアドレスデータ
のうち、先ず、」1位mビットのデータがデコードされ
、(2n′×2n ×k)ビットのメモリセルの中の2
n′行の中、1行が選択され、次に、下位nビットのデ
ータがデコードされて、上記選択された1行の中からN
列が選択される。
In the FIFO memory according to claim 2, in response to a write operation, among the address data held in the write pointer, first m-bit data of the 1st order is decoded, and data of (2n'×2n×k) bits is decoded. 2 in the memory cell
One row is selected from n' rows, and then the lower n bits of data are decoded to
Column is selected.

このように選択されたメモリセル中の1個のにビットデ
ータ領域には、データ入力線から入力されたにビットの
データが入力回路を介して書き込まれる。本書き込み動
作が行われた後、ライトポインタの値が1だけ増加され
る。
Into one bit data area in the memory cell selected in this way, the bit data inputted from the data input line is written via the input circuit. After the main write operation is performed, the value of the write pointer is increased by 1.

一方、読み出し動作に対してリードポインタに保持され
ているアドレスデータのうち、先ず、上位mビットのデ
ータがデコードされ、(2m×2n×k)ビットのメモ
リセルの中の2n′行の中、1行が選択され、次に、下
位nビットのデータがデコードされ、」1記選択された
1行の中からN列が選択される。
On the other hand, among the address data held in the read pointer for the read operation, first the upper m bits of data are decoded, and the data in the 2n' rows of the (2m x 2n x k) bit memory cells One row is selected, then the lower n bits of data are decoded, and N columns are selected from the selected row.

このように選択されたメモリセル中のN個のにピッ1へ
データが読み出され、出力回路を介してデータ出力線か
ら出力される。本読み出し動作が行われた後、リードポ
インタの値がNだけ増加されるような作用を有する。
Data is read out to N pins 1 in the memory cell selected in this way, and is outputted from the data output line via the output circuit. After the main read operation is performed, the value of the read pointer is increased by N.

〔実施例〕〔Example〕

以下、本発明にかかるFIFOメモリの一実施例を図面
を参照して詳しく説明する。
Hereinafter, one embodiment of the FIFO memory according to the present invention will be described in detail with reference to the drawings.

第1図は請求項1記載の発明にかかるFIFOメモリの
一実施例の構成を示す回路図であり、第2図は請求項2
記載の発明にかかるFIFOメモリの一実施例の構成を
示す回路図である。
FIG. 1 is a circuit diagram showing the configuration of an embodiment of the FIFO memory according to the invention as claimed in claim 1, and FIG.
1 is a circuit diagram showing the configuration of an embodiment of a FIFO memory according to the described invention; FIG.

なお、第1図および第2図において同一の構成要素には
同一の符号を付けている。
Note that the same components in FIG. 1 and FIG. 2 are given the same reference numerals.

第1図に示すF I F Oメモリは、16ビツトのデ
ータ人力ボートと、8ビットのデータ出力ボ−1−とを
備えている。第2図に示すFIFOメモリは8ビットの
データ入力ボートと、16ビツトのデータ出力ボートと
を備えている。
The FIFO memory shown in FIG. 1 includes a 16-bit data input port and an 8-bit data output port. The FIFO memory shown in FIG. 2 has an 8-bit data input port and a 16-bit data output port.

以下の説明に際しては、本発明の理解を容易にするため
に、先ず、第1図に示すFIFOメモリの構成について
説明し、次に、同図に示すFIFOメモリの動作につい
て説明し、次いで、第2図に示゛すFIFOメモリの構
成について説明し、最後に、同図に示すFIFOメモリ
の動作について説明する。
In the following description, in order to facilitate understanding of the present invention, the configuration of the FIFO memory shown in FIG. 1 will be explained first, then the operation of the FIFO memory shown in FIG. The configuration of the FIFO memory shown in FIG. 2 will be explained, and finally, the operation of the FIFO memory shown in the same figure will be explained.

先ず、第1図に示すFIFOメモリの構成について説明
する。第1図において、Iはメモリセルで、2n′行×
2n列から形成される(2n′×2n×8(k−8))
ビットのメモリ容量を有している。2は(m+n)ビッ
トのリングカウンタとしてのライトポインタで、上記メ
モリセルIへの書き込みアドレスを2 (N=2)づつ
増加させるものである。3は(m+n)ビットのリング
カウンタとしてのリードポインタで、上記メモリセル1
の読み出しアドレスを1づつ増加させるものである。1
5はデータD。
First, the configuration of the FIFO memory shown in FIG. 1 will be explained. In FIG. 1, I is a memory cell, 2n' rows×
Formed from 2n columns (2n' x 2n x 8 (k-8))
It has a memory capacity of bits. 2 is a write pointer as a (m+n)-bit ring counter, which increments the write address to the memory cell I by 2 (N=2). 3 is a read pointer as a ring counter of (m+n) bits, and the above memory cell 1
The read address is increased by one. 1
5 is data D.

〜D7のデータ入力線、16はデータD、〜DI5のデ
ータ入力線で、この実施例では(N×k)−2X8=1
6ビツ1−の入力データを取り扱うものである。I7は
データ出力線で、8(k=8)ビットのデータD0〜 
D7を出力するものである。9、Ifは2 (N=2)
個のデータ入力回路で、上記データ入力線15,16か
ら入力される16ビツトのデータD。−Dl、を上記メ
モリセル1に書き込むものである。
~D7 data input line, 16 is data D, ~DI5 data input line, in this example (N x k) - 2 x 8 = 1
It handles 6-bit 1- input data. I7 is a data output line, which carries 8 (k=8) bits of data D0~
It outputs D7. 9, If is 2 (N=2)
16-bit data D is input from the data input lines 15 and 16 through the data input circuits. -Dl, is written into the memory cell 1.

13は出力回路で、」1記メモリセルlから読み出され
た8ビツトのデータを上記データ出力線17に出力する
ものである。4,5は行デコーダ、6は調停回路、7は
ライト制御信号、8はリード制御信号で、この中、調停
回路6は入力ポートと出力ボートから同時にメモリセル
lがアクセスされないような調停機能を備えている。
Reference numeral 13 denotes an output circuit which outputs 8-bit data read from the memory cell 1 to the data output line 17. 4 and 5 are row decoders, 6 is an arbitration circuit, 7 is a write control signal, and 8 is a read control signal. Among these, the arbitration circuit 6 has an arbitration function so that the memory cell l is not accessed from the input port and the output port at the same time. We are prepared.

次に第1図に示すFIFOメモリの動作について説明す
る。ライトポインタ2はメモリセル1の書き込み可能な
メモリアドレスを示してお1 】 す、リードポインタ3はメモリセル1の読み出し可能な
メモリアドレスを示している。したがって、ライトポイ
ンタ2で示されるメモリアドレスからリードポインタ3
で示されるメモリアドレスの値を引いて、差が正の値な
らば、FIFOメモリ中に入力ポートから出力ボートへ
転送可能なデータが存在していることが理解される。
Next, the operation of the FIFO memory shown in FIG. 1 will be explained. The write pointer 2 indicates a writable memory address of the memory cell 1. The read pointer 3 indicates a readable memory address of the memory cell 1. Therefore, from the memory address indicated by write pointer 2 to read pointer 3
If the value of the memory address indicated by is subtracted and the difference is a positive value, it is understood that data that can be transferred from the input port to the output port exists in the FIFO memory.

以下の説明ではライトポインタ2およびリードポインタ
3で示されるメモリアドレスの初期値は共に“0”であ
るものとする。ここで、入力ポートに接続された図示し
ない16ビツト処理装置から16ビツトデータD。−D
l6が入力回路9および入力回路11に入力された場合
の書き込み動作について説明する。
In the following explanation, it is assumed that the initial values of the memory addresses indicated by write pointer 2 and read pointer 3 are both "0". Here, 16-bit data D is received from a 16-bit processing device (not shown) connected to the input port. -D
A write operation when l6 is input to the input circuit 9 and the input circuit 11 will be described.

この場合、ライI・ポインタ2の上位mビットのアドレ
スデータが行デコーダ4でデコードされ、この行デコー
ダ4は(2” X2” X8)ビットのメモリセルの2
m行の1行を選択する。
In this case, the address data of the upper m bits of the line I pointer 2 is decoded by the row decoder 4, and the row decoder 4 decodes the address data of the (2" x 2" x 8) bits of memory cells
Select one of m rows.

一方、下位nビットのアドレスデータは列デコーグ10
でデコードされて、上記選択された1行の中から1列を
選択する。また、下位nビットのアドレスデータは列デ
コーダ12にも入力され、この列デコーダI2でアドレ
スを+1だけ増加した後、この列デコーダは上記列デコ
ダIOによって選択された1列の隣の列を選択する。こ
のようにして選択された1行と2列によって選択された
メモリセル1中の2個の8ビツトデータ記憶領域に、調
停回路6に供給されているライト制御信号7とともに、
データ入力線15およびデータ入力線16から入力され
た2個の8ビットデータD0〜DI6が入力回路9およ
び入力回路11を介して書き込まれる。
On the other hand, the address data of the lower n bits is column decoded by the column decoder 10.
is decoded to select one column from the selected row. The address data of the lower n bits is also input to the column decoder 12, and after incrementing the address by +1 in this column decoder I2, this column decoder selects the column next to the one column selected by the column decoder IO. do. Together with the write control signal 7 supplied to the arbitration circuit 6, the write control signal 7 is sent to the two 8-bit data storage areas in the memory cell 1 selected by the first row and second column thus selected.
Two pieces of 8-bit data D0 to DI6 input from data input line 15 and data input line 16 are written via input circuit 9 and input circuit 11.

本書き込み動作が行われた後、ライトポインタ2のアド
レス値は2だけ増加される。上述した書き込み動作が連
続してN回繰り返されると、メモリセル1には(2XN
X8)ビットのデータが書き込まれ、ライトポインタ2
のアドレスデータ値は(2XN)になる。ここで、ライ
トポインタ2のアドレス値からリードポインタ3のアド
レスデータ値を引いた差が(2XN)になるので、出カ
ポ−I・に接続された図示しない8ビット処理装置置は
メモリセルIからデータを読の出すことが可能になる。
After the main write operation is performed, the address value of write pointer 2 is increased by 2. When the write operation described above is repeated N times, memory cell 1 has (2XN
X8) bit data is written and write pointer 2
The address data value of is (2XN). Here, since the difference obtained by subtracting the address data value of read pointer 3 from the address value of write pointer 2 is (2XN), the 8-bit processing device (not shown) connected to output port I It becomes possible to read and output data.

この場合、リードポインタ3の」三位mピッi・のアド
レスデータが行デコーダ5でデコードされ、行デコーダ
5は(2′″×2n×8)ビットのメモリセル1の2“
行の内の1行を選択する。
In this case, the address data of the read pointer 3 at the 3rd m bit is decoded by the row decoder 5.
Select one of the rows.

一方、リードポインタ3の下位nビットのアドレスデー
タは列デコーダ14てデコードされ、この列デコーダ1
4は−に記選択された1行の中から1列を選択する。こ
のようにして特定の1行と1列によって選択されたメモ
リセル1中の8ビツトデータD。−D7は、リード制御
信号8と共に読み出され、出力回路13を介してデータ
出力線17から−V記8Llット処理装置に出力される
On the other hand, the address data of the lower n bits of the read pointer 3 is decoded by the column decoder 14.
4 selects one column from the selected row. The 8-bit data D in the memory cell 1 is thus selected by a specific row and column. -D7 is read together with the read control signal 8, and is outputted from the data output line 17 via the output circuit 13 to the -V8Lt processing device.

本読み出し動作が行われた後、リードポインタ3の値が
1だけ増加される。」二連した読み出し動作が連続して
(2XN)回繰り返されると、メモリセル1から(2X
NX8)ビットのデータが読み出され、リードポインタ
3のアドレス値は(2XN)なる。ここで、ライトポイ
ンタ2のアドレス値からリードポインタ3のアドレス値
を引いた差が0になるので、出力ボートに接続された8
ビット処理装置はメモリセル1に書き込まれている全て
のデータを読み出したことになる。
After the main read operation is performed, the value of the read pointer 3 is increased by 1. ” When two consecutive read operations are repeated (2XN) times, the data from memory cell 1 to (2X
NX8) bit data is read, and the address value of the read pointer 3 becomes (2XN). Here, the difference obtained by subtracting the address value of read pointer 3 from the address value of write pointer 2 is 0, so the 8
This means that the bit processing device has read all the data written in memory cell 1.

このようにして第1図に示すFIFOメモリにおいてメ
モリセルlに書き込まれた16ビツトのデータを8ピツ
1〜のデータとして読み出すことができる。
In this way, in the FIFO memory shown in FIG. 1, the 16-bit data written in the memory cell 1 can be read out as data of 8 bits 1 to 1.

次いで、第2図に示ずFI F Oメモリの構成につい
て説明する。第2図において、1はメモリセルで、2m
行×2“列から形成される(2n″x2゛x8 (k=
8))ビットのメモリ容量を有している。32は(m+
n)ビットのリングカウンタとしてのライトポインタで
、」1記メモリセル1への書き込みアドレスを1づつ増
加させるものである。33は(m+n)ビットのすング
カウンタとしてのリードポインタで、」1記メモリセル
Iの読み出しアドレスを2 (N2)づつ増加させるも
のである。24はデータ入力線で、8ビットデータD。
Next, the structure of the FIFO memory not shown in FIG. 2 will be explained. In Figure 2, 1 is a memory cell, 2 m
It is formed from rows x 2" columns (2n"x2゛x8 (k=
It has a memory capacity of 8)) bits. 32 is (m+
n) A write pointer as a bit ring counter, which increments the write address to the memory cell 1 by 1. 33 is a read pointer as a (m+n)-bit switching counter, which increments the read address of the memory cell I by 2 (N2). 24 is a data input line, 8-bit data D.

−D、が入力されるものである。25はデータD。−D
7のデータ出力線、26はデータD8〜 DI5のデー
タ出力線で、この実施例では(N×k)=2X8−16
ビツトの出力データが取り扱われる。
-D is input. 25 is data D. -D
7 is a data output line, 26 is a data output line for data D8 to DI5, and in this embodiment, (N x k) = 2 x 8 - 16.
Bit output data is handled.

18はデータ入力回路で、ゴー記データ入力線24から
入力される8ビットのデータD。−I〕7を」−記メモ
リセル1に書き込むものである。20.22は出力回路
で、」1記メモリセル1から読み出された16ビツトの
データD。−D +5を上記データ出力線25.26に
出力するものである。4,5は行デコーダ、6は調停回
路、7はライト制御信号、8はリード制御信号て、この
中、調停回路6は入カポ−1−と出力ボートから同時に
メモリセルIがアクセスされないような調停機能を備え
ている。
18 is a data input circuit, which receives 8-bit data D input from the data input line 24; -I]7 is written into the memory cell 1. 20. 22 is an output circuit, and 16-bit data D read from the memory cell 1. -D +5 is output to the data output line 25.26. 4 and 5 are row decoders, 6 is an arbitration circuit, 7 is a write control signal, and 8 is a read control signal. Among these, the arbitration circuit 6 is designed to prevent the memory cell I from being accessed simultaneously from the input port 1- and the output port. It has a mediation function.

次に第2図のFIFOメモリの動作について説明する。Next, the operation of the FIFO memory shown in FIG. 2 will be explained.

ライトポインタ32はメモリセルlへの書き込み可能な
アドレスを示し、リードポインタ33はメモリセルlか
ら読み出し可能なアドレスを示している。この場合、ラ
イトポインタ32で指示されるアドレス値からリードポ
インタ33で指示されるアドレス値を引いて差が正の値
ならば、FIFOタモリ中に入力ボートから出力ボート
に転送可能なデータが存在していることを示している。
The write pointer 32 indicates an address that can be written to the memory cell l, and the read pointer 33 indicates an address that can be read from the memory cell l. In this case, if the address value indicated by the read pointer 33 is subtracted from the address value indicated by the write pointer 32 and the difference is a positive value, there is data in the FIFO memory that can be transferred from the input port to the output port. It shows that

以下の説明ではライトポインタ32、リードポインタ3
3共に指示しているアドレスの初期値が“0″であるも
のとする。
In the following explanation, write pointer 32, read pointer 3
It is assumed that the initial value of the address indicated in both of the three cases is "0".

入力ボートに接続された図示しない8ビット処理装置か
ら8ビットデータD。−D7が入力された場合、ライト
ポインタ32の」1位mビットのアドレス値が行デコー
ダ4でデコードされ、行デコーダ4は(2′″×2n×
8)ビットのメモリセル1の2”行の中の1行を選択す
る。
8-bit data D from an 8-bit processing device (not shown) connected to the input port. -D7 is input, the address value of the 1st m bit of the write pointer 32 is decoded by the row decoder 4, and the row decoder 4 is (2'''×2n×
8) Select one of the 2'' rows of memory cell 1 of bits.

方、下位nビットのアドレス値は列デコーダI9でデコ
ードされ、列デコーダI9は」−記選択された1行の中
から1列を選択する。
On the other hand, the address value of the lower n bits is decoded by a column decoder I9, and the column decoder I9 selects one column from the selected row.

このようにして選択された1行と1列によって選択され
たメモリセル1中の8ビットデータ領域には、ライト制
御信号7と共に、データ入力線24から入力された8ビ
ツトのデータD。
The 8-bit data area in the memory cell 1 selected by the first row and first column thus receives the 8-bit data D input from the data input line 24 along with the write control signal 7.

〜D7が入力回路18を介して書き込まれる。~D7 is written via the input circuit 18.

本書き込み動作が行われた後、ライトポインタ32のア
ドレス値は1だけ増加される。上記書き込み動作が連続
してN回繰り返されると、メモリセルlには(NX8)
ビットのデータが書き込まれ、ライトポインタ32の値
はNになる。ここで、ライトポインタ32に指示されて
いるアドレス値からリードポインタ33で指示されてい
るアドレス値を引いた差がNであるので、出力ボートに
接続された図示しない16ビツト処理装置はメモリセル
1からデータを読み出すことが可能である。したがって
、リードポインタ33の上位mビットのアドレス値が行
デコーダ5でデコードされ、行デコーダ5は(2” x
2” xB)ビットのメモリセル1の2n′行の中の1
行を選択する。一方、下位nビットのアドレス値が列デ
コーダ2Iでデコードされ、列デコーダ21によって、
上記選択された1行の中から1列が選択され、さらに、
下位nビットのアドレス値が列デコーダ23に入力され
、列デコーダ23によって、+1だけ増加させられた後
、デコードされ、この列デコーダ23により列デコーダ
21によって選択された1列の隣の1列が選択される。
After the main write operation is performed, the address value of the write pointer 32 is incremented by one. When the above write operation is repeated N times, memory cell l has (NX8)
The bit data is written, and the value of the write pointer 32 becomes N. Here, since the difference obtained by subtracting the address value indicated by the read pointer 33 from the address value indicated by the write pointer 32 is N, the 16-bit processing device (not shown) connected to the output boat selects the memory cell 1. It is possible to read data from. Therefore, the address value of the upper m bits of the read pointer 33 is decoded by the row decoder 5, and the row decoder 5
1 in 2n' row of memory cell 1 of 2" x B) bits
Select a row. On the other hand, the address value of the lower n bits is decoded by the column decoder 2I, and by the column decoder 21,
One column is selected from the one row selected above, and further,
The address value of the lower n bits is input to the column decoder 23, incremented by +1, and then decoded. selected.

このようにして、特定の1行と2列によって選択された
メモリセル1中の8ビットデータは、リード制御信号8
と共に読み出され、出力回路20および出力回路22を
介してデータ出力線25およびデータ出力線26から上
記16ビツl〜処理装置に出力される。
In this way, the 8-bit data in the memory cell 1 selected by the specific 1st row and 2nd column is transferred to the read control signal 8.
The 16 bits 1 to 1 are output from the data output line 25 and the data output line 26 via the output circuit 20 and the output circuit 22 to the processing device.

本読み出し動作が行われた後、リードポインタ33のア
ドレス値が2だけ増加される。上記読み出し動作が連続
して(N/2)回繰り返されると、メモリセル1から(
NX8)ビットのデータが読み出され、リードポインタ
33のアドレス値はNになる。ここで、ライトポインタ
32のアドレス値からリードポインタ33のアドレス値
を引いた差が0であるので、出力ボートに接続された1
6ビツト処理装置にメモリセル1に書き込まれている全
てのデータが読み出されたことになる。
After the main read operation is performed, the address value of the read pointer 33 is increased by 2. When the above read operation is repeated (N/2) times, memory cell 1 (
NX8) bit data is read, and the address value of the read pointer 33 becomes N. Here, since the difference obtained by subtracting the address value of the read pointer 33 from the address value of the write pointer 32 is 0, the 1
This means that all data written in memory cell 1 has been read out by the 6-bit processing device.

本発明は上述した実施例に限定されるものではなく、そ
の趣旨を逸脱しない範囲において種々の変更を加えるこ
とができる。
The present invention is not limited to the embodiments described above, and various changes can be made without departing from the spirit thereof.

例えば、第1図の実施例においては、入力回路9.11
にメモリセル1の2n本の列ラインがすべて入力されて
いるが、偶数ライン目の列ラインを入力回路9に供給し
、奇数ライン目の列ラインを入力回路11に供給するよ
うにして、(m+n)ビットのライトポインタ2の最下
位ビットを省略した(n−1)ピッ)・の下位アドレス
を列デコーダ10および列デコーダI2に供給するよう
にし、さらにこれらの列デコーダ10および列デコーダ
I2でデコードされたアドレス値に裁づき、データ入力
線15およびデ−タ入力線16から供給された2つの8
ビツトデータを、入力回路9から出力される2ni列中
の1列の8ビツトのデータラインおよび入力回路11か
ら出力される2′−1列中の1列の8ビツトのデータラ
インを介してメモリセル1に供給するようにすることも
可能である。
For example, in the embodiment of FIG.
All 2n column lines of the memory cell 1 are input to , but the even numbered column lines are supplied to the input circuit 9 and the odd numbered column lines are supplied to the input circuit 11. The lower address of (n-1) bits omitting the least significant bit of the write pointer 2 of m+n) bits is supplied to the column decoder 10 and the column decoder I2, and furthermore, the column decoder 10 and the column decoder I2 Based on the decoded address value, the two 8 bits supplied from data input line 15 and data input line 16
The bit data is transferred to the memory via an 8-bit data line in one of the 2ni columns outputted from the input circuit 9 and an 8-bit data line in one column of the 2'-1 column outputted from the input circuit 11. It is also possible to supply it to cell 1.

また、第2図の実施例においては、出力回路20.22
にメモリセル1の2n本の列ラインがすべて入力されて
いるが、偶数ライン目の列ラインを出力回路20に供給
し、奇数ライン目の列ラインを出力回路22に供給する
ようにして、(m+n)ビットのリードポインタ33の
最下位ビットを省略した(n−1)ビットの下位アドレ
スを列デコーダ21および列デコーダ23に供給するよ
うにし、さらにこれらの列デコーダ21および列デコー
ダ23でデコードされたアドレス値に基づき、出力回路
20ではメモリセル1から2”−1列中の1列の8ビツ
トのデータラインを介して8ビツトのデータをデータ出
力線25から出力し、出力回路22ではメモリセル1か
ら2”−1列中の1列の8ピツI・のデータラインを介
して8ビツトのデータをデータ出力線26から出力する
ようにすることも可能である。
In addition, in the embodiment of FIG. 2, the output circuit 20.22
All 2n column lines of the memory cell 1 are input to , but the even-numbered column lines are supplied to the output circuit 20 and the odd-numbered column lines are supplied to the output circuit 22. The (n-1) bit lower order address, omitting the least significant bit of the m+n) bit read pointer 33, is supplied to the column decoder 21 and the column decoder 23, and is further decoded by the column decoder 21 and the column decoder 23. Based on the address value, the output circuit 20 outputs 8-bit data from the data output line 25 via the 8-bit data line in one of the 2''-1 columns of memory cells, and the output circuit 22 outputs 8-bit data from the memory It is also possible to output 8-bit data from the data output line 26 via an 8-pitch data line in one column of cells 1 to 2''-1.

〔発明の効果〕〔Effect of the invention〕

以上のように、本発明のFIFOメモリによれば、この
FIFOメモリのデータ入出力ホトをこのFfFOメモ
リが接続されるデータ処理装置のそれぞれのデータバス
幅に合わせているので、異なるデータバス幅を有するデ
ータ処理装置間のデータ転送を高速に、かつ効率よく行
うことができる。
As described above, according to the FIFO memory of the present invention, the data input/output ports of this FIFO memory are matched to the respective data bus widths of the data processing devices to which this FfFO memory is connected, so that different data bus widths can be handled. It is possible to transfer data between data processing devices that have the following functions at high speed and efficiently.

【図面の簡単な説明】[Brief explanation of drawings]

第1図および第2図は本発明の一実施例におけるFIF
Oメモリの回路ブロック図である。 I・・・メモリセル、 2.32・・・ライトポインタ、 3.33・・・リードポインタ、 7・・・ライ1ル制御信号、 8・・・リード制御信号、 9、 1 13゜ 15゜ 17゜ 1.1 20゜ 16゜ 25゜ 8・・・入力回路、 22・・・出力回路、 24・・・データ入力線、 26・・・データ出力線。
FIG. 1 and FIG. 2 are FIF in one embodiment of the present invention.
FIG. 2 is a circuit block diagram of an O memory. I... Memory cell, 2.32... Write pointer, 3.33... Read pointer, 7... Lyle control signal, 8... Read control signal, 9, 1 13°15° 17゜1.1 20゜16゜25゜8...Input circuit, 22...Output circuit, 24...Data input line, 26...Data output line.

Claims (2)

【特許請求の範囲】[Claims] (1)2^m行×2^n列から形成される(2^m×2
^n×k)ビットのメモリ容量を有するメモリセルと、 このメモリセルへの書き込みアドレスをN づつ増加させる(m+n)ビットのライトポインタと、 上記メモリセルからの読み出しアドレスを 1づつ増加させる(m+n)ビットのリードポインタと
、 (N×k)ビットのデータ入力線と、 kビットのデータ出力線と、 上記データ入力線から入力された(N× k)ビットのデータを上記メモリセルに書き込むN個の
データ入力回路と、 上記メモリセルから読み出されたkビッ トのデータを上記データ出力線に出力するデータ出力回
路とを備えたことを特徴とするFIFOメモリ。
(1) Formed from 2^m rows x 2^n columns (2^m x 2
A memory cell having a memory capacity of ^n×k) bits, a (m+n) bit write pointer that increases the write address to this memory cell by N increments, and a (m+n) bit write pointer that increases the read address from the memory cell by 1. ) bit read pointer, (N x k) bit data input line, k bit data output line, and (N x k) bit data input from the above data input line to the above memory cell. A FIFO memory comprising: a data input circuit; and a data output circuit that outputs k-bit data read from the memory cell to the data output line.
(2)2^m行×2^n列から形成される(2^m×2
^n×k)ビットのメモリ容量を有するメモリセルと、 このメモリセルへの書き込みアドレスを1 づつ増加させる(m+n)ビットのラインポインタと、 上記メモリセルからの読み出しアドレスを Nづつ増加させる(m+n)ビットのリードポインタと
、 kビットのデータ入力線と、 (N×k)ビットのデータ出力線と、 上記データ入力線から入力されたkビット のデータを上記メモリセルに書き込むデータ入力回路と
、 上記メモリセルから読み出された(N× k)ビットのデータを上記データ出力線に出力するN個
のデータ出力回路とを備えたことを特徴とするFIFO
メモリ。
(2) Formed from 2^m rows x 2^n columns (2^m x 2
A memory cell having a memory capacity of ^n×k) bits, a (m+n)-bit line pointer that increases the write address to this memory cell by 1, and a (m+n) bit line pointer that increases the read address from the memory cell by N. )-bit read pointer, a k-bit data input line, an (N×k)-bit data output line, and a data input circuit that writes the k-bit data input from the data input line into the memory cell; A FIFO comprising: N data output circuits that output (N×k) bits of data read from the memory cell to the data output line.
memory.
JP2176919A 1990-07-04 1990-07-04 Fifo memory Pending JPH0464988A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2176919A JPH0464988A (en) 1990-07-04 1990-07-04 Fifo memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2176919A JPH0464988A (en) 1990-07-04 1990-07-04 Fifo memory

Publications (1)

Publication Number Publication Date
JPH0464988A true JPH0464988A (en) 1992-02-28

Family

ID=16022059

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2176919A Pending JPH0464988A (en) 1990-07-04 1990-07-04 Fifo memory

Country Status (1)

Country Link
JP (1) JPH0464988A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6681314B1 (en) 1998-09-08 2004-01-20 Nec Electronics Corporation FIFO memory device suitable for data transfer apparatuses with different data bus widths and method for controlling the same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6681314B1 (en) 1998-09-08 2004-01-20 Nec Electronics Corporation FIFO memory device suitable for data transfer apparatuses with different data bus widths and method for controlling the same

Similar Documents

Publication Publication Date Title
US7630230B2 (en) Static random access memory architecture
JPS6236793A (en) Memory and reading therefor
JPH0531176B2 (en)
US5201058A (en) Control system for transferring vector data without waiting for transfer end of the previous vector data
JP3096362B2 (en) Serial access memory
US4575796A (en) Information processing unit
JP2000089932A (en) Fifo memory device and its controlling method
JPH0464988A (en) Fifo memory
EP1271543A2 (en) Method and system for fast memory access
US5499383A (en) DMA control device controlling sequential storage of data
JPS63300492A (en) Semiconductor memory device
JP2969825B2 (en) Dual port memory
JPH10116226A (en) Address array device of semiconductor storage device
JP2591448B2 (en) Selector circuit and multi-port memory cell
JPH02287844A (en) Memory access circuit
JP2922963B2 (en) Sequence controller
JPS63118965A (en) Dma word transfer system
JPS59191184A (en) Memory device
JP3207217B2 (en) FIFO type memory device
JPH02212952A (en) Memory access control system
JPH01291321A (en) Logic circuit
JPS6175444A (en) Register file integrated circuit
JPS61224050A (en) Memory access circuit
JPS63142446A (en) Address generating system
JPS6168636A (en) Data processor