JPH0620463A - 先入れ先出しバッファ回路 - Google Patents

先入れ先出しバッファ回路

Info

Publication number
JPH0620463A
JPH0620463A JP4178310A JP17831092A JPH0620463A JP H0620463 A JPH0620463 A JP H0620463A JP 4178310 A JP4178310 A JP 4178310A JP 17831092 A JP17831092 A JP 17831092A JP H0620463 A JPH0620463 A JP H0620463A
Authority
JP
Japan
Prior art keywords
read
data
unit
processor
side control
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
JP4178310A
Other languages
English (en)
Inventor
Koji Kubo
康治 久保
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP4178310A priority Critical patent/JPH0620463A/ja
Publication of JPH0620463A publication Critical patent/JPH0620463A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Communication Control (AREA)

Abstract

(57)【要約】 【目的】 先入れ先出し(FIFO)バッファ回路におい
て、パケットデータを送信する際、FIFOバッファ回
路内の読出待ちパケットデータ数を1単位のパケットデ
ータの書込終了毎にリード側制御部に通知可能とし、リ
ード側制御部は、緊急のパケットデータの処理ができ、
即時性の向上、データ通信の効率向上を図る。 【構成】 FIFOバッファ回路30内に、2個のデータ
計数器を有し、第1の計数器は、FIFOバッファ回路
内のメモリ部4のワード数をカウントでき、ライト側制
御部2からの1単位のパケットデータの検出と第2の計
数器への通知とFIFOバッファ回路の外部への通知を
行うために使用され、第2の計数器は、第1の計数器に
よって検出されたFIFOバッファ内の読出待ちパケッ
トデータの個数を記憶するために使用される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、非同期に動作するマル
チプロセッサ間でデータ通信を行うための先入れ先出し
(以下、FIFOと記す)バッファ回路に関するものであ
る。
【0002】
【従来の技術】図4は、従来のFIFOバッファ回路の
構成例を示したものである。図4中、1はFIFOバッ
ファ回路、2,3はそれぞれマイクロプロセッサ等で構
成され、2はFIFOバッファ回路1にデータを書き込
むライト側制御部であり、3はデータを読み出すリード
側制御部である。FIFOバッファ回路1は、書込側と
読出側とを別々に持ち、マイクロプロセッサから非同期
にリードアクセス及びライトアクセスが可能なデュアル
ポートメモリ部(以下、単にメモリ部という)4と、メモ
リ部4へのライトアドレスを指定するためのライトポイ
ンタ(以下、WP)5と、リードアドレスを指定するリー
ドポインタ(以下、RP)6と、WP5の出力に(+1)し
た信号とRP6の出力を比較して、両者が一致したとき
に有効となる信号を出力する一致検出器部7と、更新ク
ロックにより値が(−1)される12ビットのカウントダウ
ン計数器部8と、更新クロック入力を2個持ち、1つは
更新クロックにより値が(+1)され、もう1つは更新ク
ロックにより値が(−1)されるアップダウン計数器9か
ら構成される。
【0003】なお、図2は一致検出器部7の内部構成を
示したものであり、入力信号を(+1)する加算器10と、
2つの信号が一致したときに有効となる信号を出力する
比較器11とから構成されている。また、図3はカウント
ダウン計数器部8の内部構成を示したものであり、初期
値を設定可能な12ビットカウントダウン計数器12と、12
入力ORゲート13とから構成されている。
【0004】以下、理解を容易にするために、ライト側
制御部2及びリード側制御部3は8ビット幅のデータを
取扱うものとし、メモリ部4の最大記憶データ数(以
下、深さと呼ぶ)を4096ワードとする。従って、WP5
及びRP6により出力されるメモリ部4のアドレス幅は
12ビットとなる。
【0005】まず、第1の動作を説明する。WP5は、
ライト側制御部2からメモリ部4にデータを書き込むと
きの選択信号14でアクティベートされ、ライト信号15に
より順次カウントアップされるリングタイプのアップカ
ウンタより構成され、その出力は、ライト側制御部2か
らのデータをメモリ部4に保持するアドレスとして使用
される。WP5は、メモリ部4への最初のライトアクセ
スの前に、ライト側制御部2よりリセット信号16でリセ
ットされ、その出力は、初期出力が "000h(16進数、以
下同様)”となっている。従って、ライト側制御部2か
らのデータバス17を介した書込データは、メモリ部4に
下位アドレスから昇順に保持されて、WP5は最大値 "
FFFh”までカウントアップした後に、次の更新クロック
で回転し、その出力は再び "000h”となり、ライト側制
御部2からのデータバス17を介した書込データは、再び
メモリ部4に下位アドレスから昇順に保持されていく。
従って、メモリ部4の深さが4096ワードとした本従来例
では、WP5の出力は、ライト側制御部2のデータ書込
回数X−4096x(x:WPの回転回数、つまり、000h→F
FFh→000h までの回数)の値を示している。
【0006】RP6は、WP5と同様なアップカウンタ
により構成され、その出力は、リード側制御部3がメモ
リ部4に保持されているデータを読み出すアドレスとし
て使用され、メモリ部4への最初のリードアクセスの前
にリード側制御部3よりリセット信号18でリセットさ
れ、その出力は初期出力 "000h”となっている。RP6
は、リード側制御部3がメモリ部4からデータを読み出
すときの選択信号19によりアクティベートされ、リード
信号20により、その出力を順次カウントアップする。従
って、リード側制御部3のリードアクセスにより、メモ
リ部4に保持されたデータが下位アドレスより昇順にデ
ータバス21に出力される。RP6は、最大値 "FFFh”ま
でカウントアップした後に、次の更新クロックが来ると
回転し、その出力はまた "000h”となり、再びメモリ部
4の下位アドレスより昇順に保持データを出力する。従
って、RP6の出力は、リード側制御部3のメモリ部4
からのデータ読出回数Y−4096y(y:RPの回転回
数、x−1≦y≦x)の値を示している。
【0007】従って、WP5の出力22(X−4096x)に加
算器10で(+1)した値(X+1−4096x)と、RP6の
出力23の値(Y−4096y)とを比較器11で比較し、一致を
検出した場合、メモリ部4はリード側制御部3からの読
出待ちパケットデータがフル状態であることとなり、フ
ル信号24でライト側制御部2及びリード側制御部3に通
知される。
【0008】次に、第2の動作を説明する。ライト側制
御部2は、メモリ部4に一群のパケットデータを書き込
む前に、選択信号25でカウントダウン計数器部8内の12
ビットカウントダウン計数器12を選択し、データバス17
を介してライト信号15でパケットデータのデータ長を初
期値として設定する。カウントダウン計数器12は、選択
信号14が有効のとき、即ち、ライト側制御部2がメモリ
部4にデータを書き込むとき、更新可能な状態となり、
ライト信号15をトリガーに計数器出力26を(−1)する。
カウントダウン計数器12の計数値が0になったとき、即
ち、ライト側制御部2からのメモリ部4へのデータ書込
回数が、データ書込前にカウントダウン計数器12に初期
値として設定した数と同じになった場合、計数器出力26
がALL "L”状態となり、12入力ORゲート13の出力で
あるセット信号27が立下り変化し、"L”レベルの書込
終了信号27を出力する。書込終了信号27をクロック入力
としているアップダウン計数器9は、書込終了信号27の
立下りエッジでアップダウン計数器9の出力を(+1)す
る。即ち、計数器出力は、1単位のパケットデータ書込
終了後のFIFOバッファ内読出待ちパケットデータ数
を示す。
【0009】リード側制御部3は、毎回、メモリ部4へ
のリードアクセスの前に、選択信号28でアップダウン計
数器9を選択し、データバス21を介し、リード信号20で
計数値出力、即ち、メモリ部4内の読出待ちパケットデ
ータ数を読み出し、読出待ちパケットデータがあること
を知ることができ、メモリ部4へのリードアクセスを行
う。1単位のパケットデータ読出終了後、リード側制御
部3は、"L”レベルの読出終了信号29を出力する。読
出終了信号29をクロック入力としているアップダウン計
数器9は、読出終了信号29の立下りエッジでアップダウ
ン計数器9の出力を(−1)する。即ち、計数器出力は、
1単位のパケットデータ読込終了後のFIFOバッファ
内読出待ちパケットデータ数を示す(表1)。
【0010】
【表1】
【0011】上記のようにして、リード側制御部3は、
毎回メモリ部4へのリードアクセスの前にFIFOバッ
ファ内読出待ちパケットデータ数を確認することができ
る。
【0012】
【発明が解決しようとする課題】上記のような従来のF
IFOバッファ回路において、ライト側制御部がFIF
Oバッファにパケットデータを書き込んだとき、リード
側制御部はFIFOバッファ回路のフル状態を知ること
は可能であった。また、リード側制御部は、FIFOバ
ッファ内読出待ちパケットデータ数を知ることは可能で
あった。しかしながら、上記の従来のFIFOバッファ
回路では、リード側制御部は定期的にFIFOバッファ
内の読出待ちパケットデータ数を監視しておかねばなら
なかった。半導体技術の向上に伴い、FIFOバッファ
の容量が大きくなってきている現在、ライト側制御部に
比べてリード側制御部の動作速度がかなり遅い場合のデ
ータ通信の際、従来の技術では、リード側制御部は緊急
のパケットデータの処理ができないため、即時性に欠
け、また、FIFOバッファ内の読出待ちパケットデー
タ数が増加していない場合でも、リード側制御部はアッ
プダウン計数器の計数値の示すFIFOバッファ内読出
待ちパケットデータ数を読み出すといった無駄な処理が
あった。そのため、データ通信の効率を向上させること
ができないという問題を有していた。
【0013】本発明は、上記問題点を解決するもので、
FIFOバッファ内の読出待ちパケットデータ数をリー
ド側制御部に即時的に通知することが可能なFIFOバ
ッファ回路を提供することを目的とする。
【0014】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、FIFOバッファ回路において、第1の
プロセッサ(ライト側制御部)からメモリ部の最大記憶デ
ータ数を計数でき、メモリ部の容量の範囲内なら任意の
計数値を設定可能で、メモリ部へのデータ書込毎に計数
値を更新し、計数値が0になると計数終了を通知するこ
とで1単位のパケットデータの検出を行う第1の計数器
部(カウントダウン計数器部)と、この第1の計数器部か
らの計数終了通知と第2のプロセッサ(リード側制御部)
からのデータ読出終了通知を計数することによりメモリ
部中の読出待ちパケットデータ数を第2のプロセッサに
通知する第2の計数器部(アップダウン計数器)と、第1
のプロセッサが1個のパケットデータを書き込む毎に第
2のプロセッサにその旨を通知する手段を設けた構成と
する。
【0015】
【作用】上記構成によれば、第1のプロセッサからメモ
リ部へのパケットデータの書込前に、メモリ部に書き込
むパケットデータのデータ長をメモリ部の深さを計数で
きる第1の計数器部に設定し、第1の計数器部によって
検出された1単位のパケットデータ数と、第2のプロセ
ッサの読み出した1単位のパケットデータ数を第2の計
数器部が計数することにより、FIFOバッファ内読出
待ちパケットデータ数を計数でき、1単位のパケットデ
ータの書込終了毎にFIFOバッファ内読出待ちパケッ
トデータ数を第2のプロセッサに通知するようにする。
【0016】
【実施例】以下、図面を参照して実施例を詳細に説明す
る。図1は、本発明の一実施例の構成を示したもので、
30は本発明のFIFOバッファ回路、2及び3はそれぞ
れ従来例と同様に、マイクロプロセッサ等からなるライ
ト側制御部及びリード側制御部である。FIFOバッフ
ァ回路30は、従来例と同様のメモリ部4、WP5、RP
6、一致検出器部7、更新クロックにより値が(−1)さ
れる12ビットのカウントダウン計数器部8、更新クロッ
ク入力を2個持ち、1つは更新クロックにより値が(+
1)され、もう1つは更新クロックにより値が(−1)さ
れるアップダウン計数器9から構成される。
【0017】まず、第1の動作を説明する。WP5、R
P6、一致検出回路7は従来例同様に構成され、メモリ
部4がフル状態になったとき、ライト側制御部2及びリ
ード側制御部3にフル信号24でその旨を通知する。
【0018】次に、第2の動作を説明する。従来例同様
に、ライト側制御部2は、メモリ部4に一群のパケット
データを書き込む前に、選択信号25でカウントダウン計
数器部8内の12ビットカウントダウン計数器12を選択
し、データバス17を介してライト信号15でパケットデー
タのデータ長を初期値として設定する。カウントダウン
計数器12は、選択信号14が有効のとき、即ち、ライト側
制御部2がメモリ部4にデータを書き込むとき、更新可
能な状態となり、ライト信号15をトリガーに計数器出力
26を(−1)する。カウントダウン計数器12の計数値が0
になったとき、即ち、ライト側制御部2からのメモリ部
4へのデータ書込回数が、データ書込前にカウントダウ
ン計数器12に初期値として設定した数と同じになった場
合、計数器出力26がALL "L”状態となり、12入力OR
ゲート13の出力であるセット信号が立下り変化し、"
L”レベルの書込終了信号27を出力する。書込終了信号
27をクロック入力としているアップダウン計数器9は、
書込終了信号27の立下りエッジでアップダウン計数器9
の出力を(+1)する。即ち、計数器出力は、1単位のパ
ケットデータ書込終了後のFIFOバッファ内読出待ち
パケットデータ数を示す。
【0019】書込終了信号27により、リード側制御部3
は、メモリ部4へのリードアクセスの前に、選択信号28
でアップダウン計数器9を選択し、データバス21を介
し、リード信号20で計数値出力、即ち、FIFOバッフ
ァ内読出待ちパケットデータ数を読み出し、読出待ちパ
ケットデータがあることを知ることができ、メモリ部4
へのリードアクセスを行う。1単位のパケットデータ読
出終了後、リード側制御部3は、"L”レベルの読出終
了信号29を出力する。読出終了信号29をクロック入力と
しているアップダウン計数器9は、読出終了信号29の立
下りエッジでアップダウン計数器9の出力を(−1)す
る。即ち、計数器出力は、1単位のパケットデータ読込
終了後のFIFOバッファ内読出待ちパケットデータ数
を示す(表1)。
【0020】上記のようにして計数されたFIFOバッ
ファ内読出待ちパケットデータ数は、メモリ部4への1
単位のパケットデータ書込終了毎に、リード側制御部3
に通知され、リード側制御部3は、FIFOバッファ内
読出待ちパケットデータ数に応じ、即時的に処理をする
ことができる。
【0021】以上のように、FIFOバッファ回路30
は、メモリ部4の容量の範囲内であれば、任意の長さの
FIFOバッファ内読出待ちパケットデータの個数をリ
ード側制御部3に即時的に通知することが可能で、ライ
ト側制御部2とライト側制御部2よりかなり動作の遅い
リード側制御部3の両プロセッサ間でのデータ通信を行
う場合、リード側制御部3は、FIFOバッファ内読出
待ちパケットデータ数の増加がないのにアップダウン計
数器9への無駄なリードアクセスを行うことなく、FI
FOバッファ内読出待ちパケットデータ数を確認するこ
とができ、FIFOバッファ内読出待ちパケットデータ
数に応じ、即時的で柔軟な処理が可能となり、大幅な通
信効率の向上が図れる。
【0022】なお、実施例では、データ保持のメモリに
デュアルポート構成のRAMを使用したが、シングルポ
ート構成のRAMをライト側制御部とリード側制御部で
時分割に使用しても、本発明の主旨を何ら損なうもので
はない。
【0023】
【発明の効果】以上説明したように、本発明によれば、
FIFOバッファ回路でパケットデータを送信する際、
ライト側制御部は1単位のパケットデータの書込終了毎
に、FIFOバッファ内読出待ちパケットデータ数をリ
ード側制御部に通知可能としたため、リード側制御部は
ライト側制御部からの緊急のパケットデータの処理がで
き、FIFOバッファ内読出待ちパケットデータ数に対
するリード側制御部の即時性の向上が図られ、また、同
じ理由により、ライト側制御部がFIFOバッファ内に
新たなパケットデータを書き込んでいない場合にもリー
ド側制御部がFIFOバッファ内読出待ちパケットデー
タ数を読み出すと言った無駄な処理がなくなり、その分
リード側制御部の負荷を軽減することができる。従っ
て、大容量FIFOバッファを用いてライト側制御部
と、ライト側制御部に比べてかなり動作速度の遅いリー
ド側制御部間のデータ通信を行う場合でも、その通信到
達効率がよいFIFOバッファ回路を提供することがで
きる効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例におけるFIFOバッファ回
路のブロック構成図である。
【図2】同FIFOバッファ回路を構成する一致検出器
部の内部構成図である。
【図3】同カウントダウン計数器部の内部構成図であ
る。
【図4】従来のFIFOバッファ回路のブロック構成図
である。
【符号の説明】
2 … ライト側制御部、 3 … リード側制御部、 4
… デュアルポートメモリ部、 5 … ライトポインタ
(WP)、 6 … リードポインタ(RP)、7 … 一致検
出器部、 8 … カウントダウン計数器部、 9 … ア
ップダウン計数器。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 非同期に動作する第1のプロセッサ、及
    び第2のプロセッサ若しくはそれに類する回路(以下、
    第2のプロセッサ)の間に介在し、先入れ先出し形式に
    データの受渡しを行う先入れ先出しバッファ回路であっ
    て、 前記第1のプロセッサから前記第2のプロセッサへ送る
    データを一時保持するメモリ部と、前記メモリ部へのデ
    ータ書込のアドレスを生成するライトポインタ部と、前
    記メモリ部からのデータ読出のアドレスを生成するリー
    ドポインタ部と、前記メモリ部に対するデータ書込アド
    レスとデータ読出アドレスとの相互関係により前記メモ
    リ部の空き容量があるか否かを検出するフル状態検出部
    と、前記第1のプロセッサから前記メモリ部の最大記憶
    データ数を計数でき、前記メモリ部の容量の範囲内なら
    任意の計数値を設定可能で、前記メモリ部へのデータ書
    込毎に計数値を更新し、計数値が0になると計数終了を
    通知することで1単位のパケットデータの検出を行う第
    1の計数器部と、前記第1の計数器部からの計数終了通
    知と前記第2のプロセッサからのデータ読出終了通知を
    計数することにより前記メモリ部中の読出待ちパケット
    データ数を前記第2のプロセッサに通知する第2の計数
    器部とから構成され、前記第1のプロセッサから前記メ
    モリ部へのデータ書込前に、前記メモリ部に書き込む1
    単位のパケットデータ長を前記第1の計数器部に設定
    し、前記第1の計数器部の計数終了通知と前記第2のプ
    ロセッサの読出終了通知により、前記メモリ部内の読出
    待ちパケットデータ数を計数し、前記第1の計数器部か
    らの書込終了通知により前記第2のプロセッサに即時的
    に先入れ先出しバッファ内パケットデータ数を通知可能
    としたことを特徴とする先入れ先出しバッファ回路。
JP4178310A 1992-07-06 1992-07-06 先入れ先出しバッファ回路 Pending JPH0620463A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4178310A JPH0620463A (ja) 1992-07-06 1992-07-06 先入れ先出しバッファ回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4178310A JPH0620463A (ja) 1992-07-06 1992-07-06 先入れ先出しバッファ回路

Publications (1)

Publication Number Publication Date
JPH0620463A true JPH0620463A (ja) 1994-01-28

Family

ID=16046245

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4178310A Pending JPH0620463A (ja) 1992-07-06 1992-07-06 先入れ先出しバッファ回路

Country Status (1)

Country Link
JP (1) JPH0620463A (ja)

Similar Documents

Publication Publication Date Title
US4942515A (en) Serial communications controller with FIFO register for storing supplemental data and counter for counting number of words within each transferred frame
US4507760A (en) First-in, first-out (FIFO) memory configuration for queue storage
US5797033A (en) Direct memory access for storing and retrieving data based on packet size
US5151999A (en) Serial communications controller for transfer of successive data frames with storage of supplemental data and word counts
JP3127523B2 (ja) 通信制御装置およびデータ送信方法
EP0374764A2 (en) Data transfer apparatus
US6775723B2 (en) Efficient reading of a remote first in first out buffer
US5999969A (en) Interrupt handling system for message transfers in network having mixed hardware and software emulated modules
JPH0620463A (ja) 先入れ先出しバッファ回路
JPH0683581A (ja) 先入れ先出しバッファ回路
JP3218659B2 (ja) Fifoバッファ回路
JPH05224880A (ja) 先入れ先出しバッファ回路
JPH04306755A (ja) Fifoバッファ装置
JPH0833869B2 (ja) データ処理装置
JPH02155675A (ja) プリンタコントローラ
KR100462478B1 (ko) 가변길이의 패킷 송수신 장치 및 방법
JP2688245B2 (ja) Dma制御装置
JP2944549B2 (ja) セル処理回路
KR100557561B1 (ko) Fifo 저장 장치
JPH05224881A (ja) Fifoバッファ回路
KR100221297B1 (ko) 개량된 선입선출형 버퍼
JPH0432922A (ja) インタフェース制御回路
JP5346780B2 (ja) 先入れ先出しバッファ及び先入れ先出しバッファのデータ破棄方法
JPH0581165A (ja) データ転送回路
KR930005124B1 (ko) 다중 팩시밀리 통신시 이미지 데이타의 페이지 끝 체크 방법