JPH037300B2 - - Google Patents

Info

Publication number
JPH037300B2
JPH037300B2 JP58501022A JP50102283A JPH037300B2 JP H037300 B2 JPH037300 B2 JP H037300B2 JP 58501022 A JP58501022 A JP 58501022A JP 50102283 A JP50102283 A JP 50102283A JP H037300 B2 JPH037300 B2 JP H037300B2
Authority
JP
Japan
Prior art keywords
pointer
ram
address
word
conductor
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
Application number
JP58501022A
Other languages
English (en)
Other versions
JPS59501435A (ja
Inventor
Arekisandaa Gibuson Fureizaa
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.)
AT&T Corp
Original Assignee
AT&T Technologies Inc
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 AT&T Technologies Inc filed Critical AT&T Technologies Inc
Publication of JPS59501435A publication Critical patent/JPS59501435A/ja
Publication of JPH037300B2 publication Critical patent/JPH037300B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/10Indexing scheme relating to groups G06F5/10 - G06F5/14
    • G06F2205/108Reading or writing the data blockwise, e.g. using an extra end-of-block pointer

Description

請求の範囲 1 複数個の情報ワードより成るメツセージを記
憶する手段と、記憶手段への該情報ワードの入力
を制御し、メツセージのすべての情報ワードが記
憶された後においてのみ情報ワードが加えられた
のと同じ順序で記憶手段から情報ワードを読み出
すのを制御する手段とを含むメモリ・システムで
あつて該情報ワードの入力を制御する手段が情報
ワードを記憶すべき記憶手段中のロケーシヨンを
アドレス指定する第1のポインタを含み情報ワー
ドの読み出しを制御する該手段が情報ワードを読
み出すべき記憶手段のロケーシヨンをアドレス指
定する第2のポインタを含むフアースト・イン・
フアースト・アウト・メモリ・システムにおい
て、 情報ワードの入力及び情報ワードの読み出しを
制御する手段は更に完全なメツセージ中の最後の
情報ワードが記憶されている記憶手段中のロケー
シヨンをアドレス指定する第3のポインタを含む
ことを特徴とするフアースト・イン・フアース
ト・アウト・メモリ・システム。
2 請求の範囲第1項記載のフアースト・イン・
フアースト・アウト・メモリ・システムにおいて
情報ワードの1つが読み出される前にメツセージ
またはその一部を棄却する手段により特徴づけら
れるフアースト・イン・フアースト・アウト・メ
モリ・システム。
3 請求の範囲第1項に記載のフアースト・イ
ン・フアースト・アウト・メモリ・システムにお
いて、 該制御装置は更に3つのポインタを記憶するた
めのポインタ・メモリを含むことを特徴とするフ
アースト・イン・フアースト・アウト・メモリ・
システム。
4 アドレスを指定可能なメモリと、 ワードをWポインタのアドレスのメモリ中に書
き込むWポインタ・レジスタと、 Rポインタのアドレスのメモリからワードを読
み出すRポインタ・レジスタと、Wポインタ・レ
ジスタを増加させ、Wポインタ・レジスタをRポ
インタ・レジスタと比較する手段とを含む、マル
チワード・メツセージ用のフアースト・イン・フ
アースト・アウト・メモリ・システムにおいて、 アドレス指定可能な該メモリは環状を成してい
ることと、 増加されたWポインタとRポインタが同じでな
いときにのみ新しいメツセージワードを記憶する
手段と、 マルチワード・メツセージの最後のワードを同
定するLポインタ・レジスタと、 Rポインタ・レジスタの内容とLポインタ・レ
ジスタの内容を比較し、RおよびLポインタが同
じでないときにのみRポインタ・レジスタを増加
させ、Rポインタ・レジスタによつてアドレス指
定されるメモリ・ワードを読み出す手段と、 メツセージ終了信号に応動してWポインタ・レ
ジスタの内容をLポインタ・レジスタ中にコピー
する手段と、 新しいメモリ・ワード中の誤りに応動してLポ
インタ・レジスタの内容をWポインタ・レジスタ
中にコピーする手段とにより特徴づけられるフア
ースト・イン・フアースト・アウト・メモリ・シ
ステム。
技術分野 本発明はデイジタル通信システムに、細目的に
は1時に1ワードがその中に書き込まれ、完全な
メツセージとしてその中から読み出されるマルチ
ワード・メツセージを取扱うFIFOメモリに関す
る。
発明の背景 通信伝送システムにあつては、受信器が受信中
であるために送信器からの情報を記憶する必要が
時として生じることがある。しかし情報は記憶装
置から送信されたのと同じ順序で復元されなけれ
ばならない。この過程はフアースト・イン・フア
ースト・アウト(FIFO)として知られている。
1976年9月7日付のエー.ジー.フレーザー
(A.G.Fraser)の米国特許第3979733号にはFIFO
キユーのことが述べられている。このフレーザー
(Fraser)の読み出しレジスタはその中に読み出
すべき次のメモリ・セルのアドレスを記憶してい
る。同様に、書き込みレジスタはその中にデータ
を記憶するのに使用し得る次のメモリ・セルのア
ドレスを記憶している。読み出しレジスタと書き
込みレジスタの比較を行うことによりメモリ・セ
ルガすべて満杯か、全く空か、部分的に空かが分
る。
データ発生過程と別個のデータ消費過程の間の
通信路としてFIFOキユーを使用することが度々
望まれる。これらの過程は典型例では互いに独立
であり、共通のクロツク源によつてさえ制御され
ていない。即ち、2つの過程は互いに非同期な状
態にある。通信路はメツセージをデータ発生過程
からデータ消費過程に送信するが、消費過程が完
全なメツセージのみを得ることを保証することが
度々要求される。
データ発生過程がメツセージの一部分をFIFO
キユー中に挿入した後にそのメツセージを放棄し
なければならないような場合には問題が生じる。
この場合、消費過程は既にメツセージを開始して
しまつている場合がある。このような状況は例え
ばデータ発生過程が誤り検出装置を有する伝送線
路で、消費過程が計算機であるような場合に生じ
る。到来するメツセージによつて誤りが検出され
ると、そのメツセージは棄却して計算機では処理
しないようにすることが通常望まれる。
しかし前述のフレーザー(Fraser)の特許で
は、何時完全なメツセージが受信されたかを知る
方法はない。この情報が得られない場合には2つ
のメモリを使用するのが通常の仕方である。第1
のメモリは1時に1つの完全なメツセージを組立
てるのに使用される。第2のメモリはFIFOシス
テム(この記憶装置の単位はメツセージである)
として動作させるのに使用される。このような装
置は通常高速処理回路を必要とし、この回路がス
ループツトを制御するボルトネツクとなる。更に
2つのメモリが使用されているので、回路は必然
的に2倍となる。
発明の要旨 本発明の図示の実施例に従い、複数個の情報ワ
ードを逐次メモリ・デバイス中に記憶する制御装
置を含むフアースト・イン・フアースト・アウ
ト・メモリ・システムが実現された。完全なメツ
セージが記憶されたときのみに制御装置は前述の
情報ワードをフアースト・イン・フアースト・ア
ウト系列中に読み出すことを許容する。
更に詳細に述べると、記憶装置はN個の情報ワ
ード(ここではNは整数)を記憶する容量をする
ランダム・アクセス・メモリ(RAM)である。
このようなメモリはサイクリツク・メモリとして
知られている。制御装置は3つのポインタW、R
およびLを含んでいる。WおよびRポインタ・レ
ジスタは先にアクセスされたRAMロケーシヨン
のアドレスを保持している。Lポインタ・レジス
タは完全なメツセージが終了するRAMロケーシ
ヨンのアドレスを保持している。
情報ワードがRAM中に記憶されるべく加えら
れるとき、Wポインタ・レジスタはNを法として
W+1に増加され、アドレスW+1はRポイン
タ・レジスタ中のアドレスと比較される。2つの
アドレスの値が等しくないと、情報ワードはその
アドレスがW+1であるRAMの記憶ロケーシヨ
ン中に加えられる。その後、Wポインタ・レジス
タ中のアドレスは制御装置の内部でW+1に変更
される。
情報ワードがRAMから読み出されるとき、R
ポインタ・レジスタ中のアドレスはLポインタ・
レジスタ中のアドレスと比較される。2つのアド
レスの値が等しくないと、Rポインタ・レジスタ
中のアドレスは1だけ増加されてNを法としてR
+1となる。Rポインタによりアドレス指定され
た情報ワード、即ちR+1によりアドレス指定さ
れたRAM中のロケーシヨンはRAMから読み出
される。その後、制御装置内のRポインタ・レジ
スタ中のアドレスは新らしいアドレスR+1を指
示するべく更新される。
完全なメツセージがRAM中に加えられると、
メツセージが終了するロケーシヨンのアドレスは
Lポインタ・レジスタ中に加えられる。即ちWポ
インタ・レジスタ中のアドレスはLポインタ・レ
ジスタ中にコピーされ、それによつてLポインタ
は完全なメツセージが終了するRAM中のロケー
シヨンをアドレス指定するよう移動される。
情報ワードをメモリ中に加えるメツセージの途
中の期間において伝送誤りが検出されると、以前
に変えられた部分メツセージは棄却されねばなら
ない。これはLポインタ・レジスタ中のアドレス
をWポインタ・レジスタにコピーすることにより
実現される。
本発明の利点はフアースト・イン・フアース
ト・アウト・キユーに対し単一のランダム・アク
セス・メモリを使用し、必要なキユー管理を行う
のに単一の制御回路を使用することにある。更
に、極めて高速度の素子は不要であり、従つて最
早処理のボトルネツクは生じない。更に、完全な
メツセージのみが読み出されるので、同期の問題
も回避される。
【図面の簡単な説明】
第1図は情報ワードを記憶し、完全なメツセー
ジが記憶されたときのみにそのワードを読み出す
フアースト・イン・フアースト・アウト・キユー
のブロツク図、 第2図は該フアースト・イン・フアースト・ア
ウト・キユーによつて受信されたメツセージのブ
ロツク図、 第3図は第1図のメモリの使用法を示す図であ
る。
詳細な説明 第1図を参照すると、伝送線路11を介して受
信された情報を記憶するランダム・アクセス・メ
モリ(RAM)12が示されている。情報は複数
個の情報ワードより成るメツセージとして伝送さ
れる。1つのメツセージが第2図に示されてい
る。メツセージのフオーマツトはその特定の用途
に応じて変化する。第2図のメツセージはヘツダ
32、データ34およびメツセージ終了フラグ3
6より成る。情報ワードは線路11を介して受信
された順に第1図のRAM12中に記憶される。
1つの完全なメツセージ中のすべての情報ワード
がRAM12中に加えられた後、これらワードは
例えばデイジタル計算機、交換機等の使用手段1
4によつて取り出すことが出来る。メツセージが
RAM12から取り出されるときには最初に加え
られた情報ワードが最初に読み出される。即ちラ
ンダム・アクセス・メモリRAM12を使用して
フアースト・イン・フアースト・アウト・キユー
(FIFOキユー)が実現される。
データ・メツセージが到着すると、該メツセー
ジは誤り検出器16およびバツフア18中にも同
時に加えられる。送電誤りが存在しない場合には
導線17がエネイルブルされる。それと同時に入
力制御および論理回路20もエネイルブルされ、
以下で述べるようにバツフア18からメツセージ
の始めと終りに関する情報を受信する。
RAM12の使用法を第3図を参照して説明す
る。RAM12は可変個数のビツトより成る情報
ワードが記憶される環状記憶装置と考えることが
出来る。従つてRAM12中に記憶される情報ワ
ードの数をNで表わすと、情報ワードは逐次ロケ
ーシヨン0、1、2、…、N−1に加えられる。
アドレスN−1を有するロケーシヨンが満された
後、次に満されるべきロケーシヨンはアドレス0
となる。即ち相続くロケーシヨンはNを法とする
算法でアドレス指定される。
ポインタRはRAM12から読み出された最後
のワードのロケーシヨンのアドレスを指示する。
RAM12から1つのワードが読み出されると、
ポインタRはNを法として1増加され、ロケーシ
ヨンR+1のワードの内容が読み出される。
同様に、ポインタWは情報ワードが最後に加え
られたロケーシヨンをアドレスとして指示する。
従つて、情報ワードがRAM12に加えられると
き、ポインタWは1増加され、ワードはそのアド
レスがNを法としてW+1なるロケーシヨン中に
加えられる。
Nを法とするR+1とWとの間のロケーシヨン
はRAM12から読み出し得る情報ワードを表わ
す。本発明に従い、複数個の情報ワードにより成
るメツセージが受信されるに従つてRAM12中
に加えられるが、メツセージ中のすべての情報が
その中に加えられるまでRAM12からは読み出
されない。これは第3のポインタLを使用するこ
とにより実現される。
完全なメツセージが受信されると、特殊コード
を含むメツセージ終了フラグ36(第2図)が第
1図の入力制御回路20で解読される。この状態
はバス21を介してプログラマブル・ロジツク・
アレイ(PLA)または読み出し専用メモリ
(ROM)22に伝送される。再び第3図を参照
すると、完全なメツセージが受信されると、ポイ
ンタWの内容はポインタL中にコピーされる。即
ちポインタLは完全なメツセージ中の最後の情報
のロケーシヨンをアドレスとして指示する。
ワードがRAM12から読み出される前に、ポ
インタRとLが比較される。もし両者が同じロケ
ーシヨンの指しているならば、キユーは完全なメ
ツセージを有しておらず、RAM12からワード
を読み出すことは出来ない。ポインタRおよびL
が異なるロケーシヨンをアドレス指定している
と、ポインタRは1つ増加され、ロケーシヨンR
+1(Nを法とする)の内容がRAM12から読
み出される。
メモリは環状であり、ランダム・アクセス・メ
モリであるので、有効なデータを破壊しないよう
に、ポインタWがポインタRを越えて進むことが
ないようにすることが必要である。本発明に従
い、ポインタWは1だけ増加されたとき、Nを法
としてW+1がポインタRに決して等しくならな
うように保持されている。即ち、1ワード・ロケ
ーシヨンのクツシヨンが提供されている。
再び第1図を参照すると、3つのアドレス(ポ
インタW、LおよびR)を保持しているポイン
タ・メモリ40が示されている。図示の実施例で
は各々のポインタは12ビツト長である。ポイン
タ・レジスタ42は単一のポインタを保持するの
に十分な程大きい。加算器44はその入力値、即
ちポインタW、LまたはRによつて指示されるア
ドレスにNを法として0または1を加算するよう
に設計されている。RAM12はバツフア18か
らの各々の情報ワードに対し1つのワード・ロケ
ーシヨンを有している。更にRAM12は単一の
ポインタによつてアドレス指定可能なだけのロケ
ーシヨンを有している。従つて図示の実施例では
各ポインタは12ビツトを有しているので、各ポイ
ンタはRAM12中の4096ワード(212)をアドレ
ス指定することが出来る。即ちこの例ではN=
4096である。レジスタ10はRAM12から読み
出された単一の情報ワードを記憶するのに十分な
長さを有している。比較器46は2つのアドレス
の値を比較し、出力を発生する。2つのアドレス
が等しければ比較器46からの出力は1であり、
そうでなければその出力は0である。フリツプ・
フロツプ48は比較器46からの出力を記憶し、
その出力な導線49を介してROM22に加えら
れる。
先に述べたようにポインタW、RおよびLは
RAM12中のロケーシヨンをアドレス指定し、
それによつて情報がそこに読み書きされる。ポイ
ンタWおよびRは1時に1ロケーシヨンだけ周期
的にRAM12を移動する。先に述べた如く、
RAM12は3つのポインタW、RおよびLを有
する環状バツフアと見倣すことが出来る。
ポインタ・メモリ40は導線25によつてアド
レス指定される。2ビツトより成るアドレスはポ
インタW、RまたはLを指示する。アドレス指定
されたポインタ・ロケーシヨンに応じて、ポイン
タはQポートおよびバス41上に現れる。バス5
1上に現れるポインタがポインタ・メモリ40中
に加えられるとき、ロケーシヨンはアドレス導線
25によつて指示され、制御導線27がエネイブ
ルされる。バス41上のポインタはポインタ・レ
ジスタ42のDポートおよび比較器46のD1
ートに現れる。
Dポートのバス41上のポインタは制御導線2
9をエネイブルにすることによりポインタ・レジ
スタ42中にコピーされる。ポインタ・レジスタ
42の内容は常にそのQポートおよびバス43上
に存在する。
先に述べた如く、加算器44はその入力にNを
法として0または1を加算する。ポインタ・レジ
スタ42からのポインタは加算器44のDポート
に現われ、0または1なる値が入力導線31上に
現われ、両者は加算される。その結果得られる
和、即ちポインタ+0(または1、Nを法とする)
は出力ポートQおよびバス45上に現われる。バ
ス45は3本の別個のバスに分岐する。即ちポイ
ンタ・メモリ40のDポートに至るバス51の、
RAM12のアドレス・ポートAに至るバス53
と、比較器46のD2のポートに至るバス55で
ある。
RAM12中に加えられるワードはそのDポー
トに現われる。ワードがその中に加えられるメモ
リ・セルのアドレスを示すポインタはそのAポー
トに現われる。制御導線33がエネイブルされる
と、Dポートのワードはバス53上のポインタに
よりアドレス指定されたRAM12のメモリ・セ
ル中に加えられる。
RAM12から読み出されるワードはバス53
上のAポートを通して加えられるポインタにより
アドレス指定される。その後、ワードはRAM1
2のQポートに現われ、バス15を介してレジス
タ10のDポートに加えられる。制御導線35が
エネイブルされると、RAM12から読み出され
たワードはレジスタ10中に加えられ、そのQポ
ートおよびバス13上に現われる。
比較器46のD1およびD2ポートの入力値が比
較される。入力値が等しいと、出力は1となり、
そうでないと出力は0となる。比較器46からの
出力はバス47を介してフリツプ・フロツプ48
のDポートに送信される。制御導線37がエネイ
ブルされると、比較器46からの出力はフリツ
プ・フロツプ48に加えられる。フリツプ・フロ
ツプ48の値は導線49によりROM22に連続
的に加えられる。
ROM22および制御レジスタ24は制御回路
26を形成する。利用手段14がメツセージを受
信する準備が整うと、バス61を介して出力制御
および論理回路60に信号が送信される。その
後、出力制御回路60は導線63を介してROM
22に読み出しコマンドを加える。
ROM22に加わる8本の導線21,23,4
9および63の状態に応じて、ROM22から1
つのインストラクシヨンが読み出され、導線65
上のクロツク・パスルと同時に制御レジスタ24
に転送される。レジスタ24の内容、即にROM
22からのインストラクシヨンは次のクロツク周
期期間中のデバイスの状態を規定する。このよう
にしてレジスタ24は12本の導線23,25,2
7,29,31,33,35および37の現在の
値を保持している。導線23は次の状態を発生す
るためのPLA22の入力としてフイードバツク
される4ビツトより成る数値を伝送する。ROM
22から次のインストラクシヨンによつて規定さ
れる次の状態は導線23上の数値および制御導線
21,49および63上の新らしい入力によつて
規定される以前の状態に依存する。
FIFOキユーからの情報の読み出し 第1のクロツク周期期間中に利用手段14から
のコマンドに応動して、制御回路26はRポイン
タのアドレスを導線25を介してポインタ・メモ
リ40に送信する。それと同時に、制御導線29
はエネイブルされ、それによつて前述のRポイン
タはポインタ・レジスタ42中に加えられる。第
2のクロツク周期期間中、導線31は0なる値を
伝送し、それによつてRポインタは加算器44に
加えられ、比較器46のD2ポートに現われる。
同じ第2のクロツク周期の期間中、導線25はL
ポインタのアドレスをポインタ・レジスタ40に
加え、Lポインタは比較器46のD1ポートに現
われる。比較器46からの出力はエネイブル導線
37によつてフリツプ・フロツプ48に加えられ
る。キユーが空であるか、または完全なメツセー
ジを有していない場合にはポインタLおよびRは
等しく、導線49上の値は1である。しかしキユ
ーが部分的に読み出されたメツセージまたは少な
くとも1つの完全なメツセージを有している場合
には、導線49上の値は0である。
第3のクロツク周期期間中、導線31上の値は
1であり、加算器44は安定な状態となる。加算
器44からの出力、R+1の値はバス53上に現
われ、RAM12から読み出されるべきワードを
指示する。
第4のクロツク周期期間中、もし第2のクロツ
ク周期の期間中に導線49上の値が0であつたと
すると、導線35はエネイブルされ、第3のクロ
ツク周期の期間中にRAM12から読み出された
ワードはレジスタ10中に加えられる。該ワード
はレジスタ10のQポート、従つてバス13上で
連続的に得られる。導線35はまた出力制御論理
回路60に対する入力信号を伝送し、該回路に1
つのワードが読み出された時点を知らせる。
前述の第3のクロツク周期期間中、増加された
Rポインタ、即ちR+1はバス51によりポイン
タ・メモリ40のDポートに加えられる。第4の
クロツク周期期間中、導線25はRポインタのア
ドレスを送信し、導線27はエネイブルされ、そ
れによつてバス51上の増加されたRポインタR
+1は新らしいRポインタとしてポインタ・メモ
リ40中に加えられる。
FIFOキユーへの情報の書き込み 線路11で受信されるワードに応動して、入力
制御回路20はこの状態を導線21を介して制御
回路26に送信する。その後、第1のクロツク周
期期間中、導線25はポインタ・メモリ40中の
Wポインタのアドレスを送信し、このようにして
アドレス指定されたWポインタはエネイブル導線
29によりポインタ・レジスタ42中に加えられ
る。第2のクロツク周期期間中、導線31は1な
る値を送信しており、それによつて加算器44か
らの出力はW+1となり、該W+1は比較器46
のD2ポートに現われる。それと同時に、導線2
5はポインタ・メモリ40中のRポインタのアド
レスを送信し、このようにしてアドレス指定され
たRポインタは比較器46のD1ポートに現われ
る。
第3のクロツク周期期間中、導線31上の信号
の値は1に留まり、比較器46からの出力はエネ
イブル導線37によりフリツプ・フロツプ48中
に加えられる。比較器46からの出力、即ちフリ
ツプ・フロツプ48の内容が0であると、これは
RポインタとW+1が等しくなく、RAM12の
ポートのワードをその中に入れてよいことを意味
する。
このようにして、第4のクロツク周期期間中、
RポインタおよびW+1が等しくないと、RAM
12のDポートのワードがエネイブル導線33に
よりそのAポートのW+1によりアドレス指定さ
れたロケーシヨン中に加えられる。導線33はま
た入力制御回路20に入力信号を送信し、バツフ
ア18からのワードがRAM12中に加えられた
時点を指示する。
同じ第4のクロツク周期期間中、導線25はポ
インタ・メモリ40中のWポインタのアドレスを
送信し、導線27はエネイブルされ、それによつ
てバス51上のWポインタの増加された値W+1
はポインタメモリ40中に加えられる。
完全なメツセージが入つたことの通知 第2図のメツセージ終了フラグ36によつて完
全なメツセージが受信されたことが示されると、
第1図の導線21はその状態を制御回路26に送
信する。これに応動して、Lポインタは更新され
る。この更新には2クロツク周期が必要とされ
る。
第1のクロツク周期期間中、導線25はポイン
タ・メモリ40中のWポインタのアドレスを送信
する。導線29はエネイブルされ、Wポインタの
ポインタ・レジスト42中にコピーされる。第2
のクロツク周期期間中、導線31は0なる値を送
信する。このようにして、Wポインタはバス51
上に現われる。導線25はポインタ・メモリ40
中のLポインタのアドレスを送信する。導線27
はエネイブルされ、それによつてバス51上のW
ポインタの値はLポインタ中にコピーされる。
FIFOキユーのリセツト Rポインタの値はポインタ・メモリ40中のL
およびWポインタ・ロケーシヨン中にコピーする
ことによりキユーを空とすることでFIFOキユー
はリセツト、即ち初期化される。
第1のクロツク周期期間中、導線25はポイン
タ・メモリ40中のRポインタのアドレスを送信
し、Rポインタはエネイブル導線29によりポイ
ンタ・レジスタ42中に加えられる。
第2のクロツク周期期間中、導線31上の値は
0となり、それによつてRポインタはバス51上
に現われる。導線25はLポインタのアドレスを
送信し、エネイブル導線27によつてRポインタ
の値はポインタ・レジスタ40中のLポインタ・
ロケーシヨン中にコピーされる。
同様に第3のクロツク周期期間中、導線31上
の値は0に留まり、それによつてRポインタはバ
ス51上に継続して現われる。導線25はWポイ
ンタのアドレスを送信し、エネイブル導線27に
よつてRポインタの値はWポインタ・ロケーシヨ
ン中にコピーされる。
衝突の解決 両方の書き込みコマンド導線21および読み出
しコマンド導線63が同時にエネイブルされる
と、たとえFIFOキユーが満杯で操作が完了でき
ない場合でさえも制御回路26は書き込みコマン
ド導線21に優先権を与える。次の操作は導線6
3の読み出しコマンドとなる。
入力制御過程 前述の如く、情報ワードが受信されると、該ワ
ードはバツフア18および誤り検出器16中に加
えられる。各ワードがバツフア18中に完全に加
えられると、入力制御回路20は導線21を介し
てROM22にコマンドを送信し、それによつて
バツフア18中の情報ワードはRAM12に転送
される。
前述の如く、各々の情報ワードが誤り検出器1
6中に加えられた後、その中で伝送誤りの有無が
検出される。伝送誤りが検出されなかつた場合に
は、導線17がエネイブルされる。一方バツフア
18中に加えられた各ワードはメツセージ終了フ
ラグと比較される。メツセージ終了フラグが検出
されると、その状態はバス19を介して入力制御
回路20に送信される。
導線17がエネイブルされ、メツセージ終了信
号がバス19から介してバツフア18から受信さ
れると、入力制御回路20は導線21を介して
ROM22にコマンドを送信する。これに応動し
て、Wポインタ中のアドレスはLポインタ中にコ
ピーされ、それによつて完全なメツセージが
RAM12中に入つたことを示す。その後、この
メツセージはRAM12から読み出される。
しかし誤り検出器16で伝送誤りが検出される
と、導線17はエネイブルされない。導線17上
に信号が存在しないと、異なるコマンドが入力制
御回路20から導線21を介してROM22に送
信される。これに応動して、Lポインタ中のアド
レスはWポインタ中にコピーされ、それによつて
Wポインタは初期位置に戻る。その結果、誤つた
情報ワードはRAM12中に保持されない。
JP58501022A 1982-08-13 1983-02-15 キユ−記憶用フア−スト・イン・フア−スト・アウト(fifo)メモリ構造 Granted JPS59501435A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US407877NLESE 1982-08-13
US06/407,877 US4507760A (en) 1982-08-13 1982-08-13 First-in, first-out (FIFO) memory configuration for queue storage

Publications (2)

Publication Number Publication Date
JPS59501435A JPS59501435A (ja) 1984-08-09
JPH037300B2 true JPH037300B2 (ja) 1991-02-01

Family

ID=23613905

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58501022A Granted JPS59501435A (ja) 1982-08-13 1983-02-15 キユ−記憶用フア−スト・イン・フア−スト・アウト(fifo)メモリ構造

Country Status (6)

Country Link
US (1) US4507760A (ja)
EP (1) EP0118446B1 (ja)
JP (1) JPS59501435A (ja)
CA (1) CA1191277A (ja)
DE (1) DE3371428D1 (ja)
WO (1) WO1984000835A1 (ja)

Families Citing this family (104)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2546694B1 (fr) * 1983-05-24 1989-06-02 Canon Kk Appareil de traitement d'images
US4599692A (en) * 1984-01-16 1986-07-08 Itt Corporation Probabilistic learning element employing context drive searching
US4620286A (en) * 1984-01-16 1986-10-28 Itt Corporation Probabilistic learning element
US4593367A (en) * 1984-01-16 1986-06-03 Itt Corporation Probabilistic learning element
US4682284A (en) * 1984-12-06 1987-07-21 American Telephone & Telegraph Co., At&T Bell Lab. Queue administration method and apparatus
JPH07118187B2 (ja) * 1985-05-27 1995-12-18 松下電器産業株式会社 先入れ先出し記憶装置
US4803654A (en) * 1985-06-20 1989-02-07 General Datacomm Industries, Inc. Circular first-in, first out buffer system for generating input and output addresses for read/write memory independently
US4751675A (en) * 1985-08-19 1988-06-14 American Telephone And Telegraph Company, At&T Bell Laboratories Memory access circuit with pointer shifting network
AR242675A1 (es) * 1985-10-11 1993-04-30 Ibm Una disposiciones de almacenamiento intermedio de voz
US4949301A (en) * 1986-03-06 1990-08-14 Advanced Micro Devices, Inc. Improved pointer FIFO controller for converting a standard RAM into a simulated dual FIFO by controlling the RAM's address inputs
US5133062A (en) * 1986-03-06 1992-07-21 Advanced Micro Devices, Inc. RAM buffer controller for providing simulated first-in-first-out (FIFO) buffers in a random access memory
US5151999A (en) * 1986-03-31 1992-09-29 Wang Laboratories, Inc. Serial communications controller for transfer of successive data frames with storage of supplemental data and word counts
US4942515A (en) * 1986-03-31 1990-07-17 Wang Laboratories, Inc. Serial communications controller with FIFO register for storing supplemental data and counter for counting number of words within each transferred frame
US4833651A (en) * 1986-07-24 1989-05-23 National Semiconductor Corporation High-speed, asynchronous, No-Fall-Through, first-in-first out memory with high data integrity
US4995005A (en) * 1986-09-18 1991-02-19 Advanced Micro Devices, Inc. Memory device which can function as two separate memories or a single memory
US4847812A (en) * 1986-09-18 1989-07-11 Advanced Micro Devices FIFO memory device including circuit for generating flag signals
US4773071A (en) * 1986-10-02 1988-09-20 Grumman Aerospace Corporation Memory for storing response patterns in an automatic testing instrument
EP0272869B1 (en) * 1986-12-19 1993-07-14 Fujitsu Limited Dual port type semiconductor memory device realizing a high speed read operation
EP0273083B1 (en) * 1986-12-30 1993-10-06 International Business Machines Corporation Non-locking queueing mechanism
US4839866A (en) * 1987-05-29 1989-06-13 Texas Instruments Incorporated Cascadable first-in, first-out memory
US4878197A (en) * 1987-08-17 1989-10-31 Control Data Corporation Data communication apparatus
CA1286421C (en) * 1987-10-14 1991-07-16 Martin Claude Lefebvre Message fifo buffer controller
US4873671A (en) * 1988-01-28 1989-10-10 National Semiconductor Corporation Sequential read access of serial memories with a user defined starting address
JPH02159624A (ja) * 1988-12-13 1990-06-19 Nec Corp 先入れ先出しレジスタ装置
US5027330A (en) * 1988-12-30 1991-06-25 At&T Bell Laboratories FIFO memory arrangement including a memory location fill indication
US4953157A (en) * 1989-04-19 1990-08-28 American Telephone And Telegraph Company Programmable data packet buffer prioritization arrangement
US5016221A (en) * 1989-12-01 1991-05-14 National Semiconductor Corporation First-in, first-out (FIFO) memory with variable commit point
US5315708A (en) * 1990-02-28 1994-05-24 Micro Technology, Inc. Method and apparatus for transferring data through a staging memory
WO1991013397A1 (en) * 1990-02-28 1991-09-05 Sf2 Corporation A method and apparatus for transferring data through a staging memory
US5459839A (en) * 1991-09-05 1995-10-17 International Business Machines Corporation System and method for managing queue read and write pointers
EP0537397B1 (en) * 1991-10-17 1997-02-05 International Business Machines Corporation Adaptive FIFO memory controller
US5504913A (en) * 1992-05-14 1996-04-02 Apple Computer, Inc. Queue memory with self-handling addressing and underflow
US5450544A (en) * 1992-06-19 1995-09-12 Intel Corporation Method and apparatus for data buffering and queue management of digital motion video signals
US6009244A (en) * 1993-02-23 1999-12-28 Canon Kabushiki Kaisha Image communication apparatus handling concurrent storing and reading requests
US5509006A (en) * 1994-04-18 1996-04-16 Cisco Systems Incorporated Apparatus and method for switching packets using tree memory
US5519704A (en) * 1994-04-21 1996-05-21 Cisco Systems, Inc. Reliable transport protocol for internetwork routing
US5471487A (en) * 1994-04-26 1995-11-28 Unisys Corporation Stack read/write counter through checking
US5621896A (en) * 1994-06-01 1997-04-15 Motorola, Inc. Data processor with unified store queue permitting hit under miss memory accesses
US5687316A (en) * 1994-07-29 1997-11-11 International Business Machines Corporation Communication apparatus and methods having P-MAC, I-MAC engines and buffer bypass for simultaneously transmitting multimedia and packet data
US5867666A (en) * 1994-12-29 1999-02-02 Cisco Systems, Inc. Virtual interfaces with dynamic binding
US5797005A (en) * 1994-12-30 1998-08-18 International Business Machines Corporation Shared queue structure for data integrity
US5519701A (en) * 1995-03-29 1996-05-21 International Business Machines Corporation Architecture for high performance management of multiple circular FIFO storage means
EP0780017A1 (en) * 1995-07-10 1997-06-25 Xilinx, Inc. System comprising field programmable gate array and intelligent memory
US6097718A (en) * 1996-01-02 2000-08-01 Cisco Technology, Inc. Snapshot routing with route aging
US6147996A (en) 1995-08-04 2000-11-14 Cisco Technology, Inc. Pipelined multiple issue packet switch
DE69525531T2 (de) * 1995-09-04 2002-07-04 Hewlett Packard Co Dataverarbeitungssystem mit ringförmiger Warteschlange in einem Seitenspeicher
US6917966B1 (en) 1995-09-29 2005-07-12 Cisco Technology, Inc. Enhanced network services using a subnetwork of communicating processors
US7246148B1 (en) 1995-09-29 2007-07-17 Cisco Technology, Inc. Enhanced network services using a subnetwork of communicating processors
US6182224B1 (en) 1995-09-29 2001-01-30 Cisco Systems, Inc. Enhanced network services using a subnetwork of communicating processors
US6091725A (en) 1995-12-29 2000-07-18 Cisco Systems, Inc. Method for traffic management, traffic prioritization, access control, and packet forwarding in a datagram computer network
US6035105A (en) * 1996-01-02 2000-03-07 Cisco Technology, Inc. Multiple VLAN architecture system
GB9606928D0 (en) 1996-04-02 1996-06-05 Memory Corp Plc Memory devices
GB9609833D0 (en) * 1996-05-10 1996-07-17 Memory Corp Plc Memory device
US6243667B1 (en) 1996-05-28 2001-06-05 Cisco Systems, Inc. Network flow switching and flow data export
US6308148B1 (en) 1996-05-28 2001-10-23 Cisco Technology, Inc. Network flow data export
US6212182B1 (en) 1996-06-27 2001-04-03 Cisco Technology, Inc. Combined unicast and multicast scheduling
US6434120B1 (en) 1998-08-25 2002-08-13 Cisco Technology, Inc. Autosensing LMI protocols in frame relay networks
US5822752A (en) * 1996-07-15 1998-10-13 International Business Machines Corporation Method and apparatus for fast parallel determination of queue entries
JP3268980B2 (ja) * 1996-09-02 2002-03-25 インターナショナル・ビジネス・マシーンズ・コーポレーション データ・バッファリング・システム
US6304546B1 (en) 1996-12-19 2001-10-16 Cisco Technology, Inc. End-to-end bidirectional keep-alive using virtual circuits
US6356530B1 (en) 1997-05-23 2002-03-12 Cisco Technology, Inc. Next hop selection in ATM networks
US6122272A (en) * 1997-05-23 2000-09-19 Cisco Technology, Inc. Call size feedback on PNNI operation
US6862284B1 (en) 1997-06-17 2005-03-01 Cisco Technology, Inc. Format for automatic generation of unique ATM addresses used for PNNI
US6078590A (en) 1997-07-14 2000-06-20 Cisco Technology, Inc. Hierarchical routing knowledge for multicast packet routing
US6512766B2 (en) 1997-08-22 2003-01-28 Cisco Systems, Inc. Enhanced internet packet routing lookup
US6157641A (en) * 1997-08-22 2000-12-05 Cisco Technology, Inc. Multiprotocol packet recognition and switching
US6212183B1 (en) 1997-08-22 2001-04-03 Cisco Technology, Inc. Multiple parallel packet routing lookup
US6343072B1 (en) 1997-10-01 2002-01-29 Cisco Technology, Inc. Single-chip architecture for shared-memory router
US7570583B2 (en) * 1997-12-05 2009-08-04 Cisco Technology, Inc. Extending SONET/SDH automatic protection switching
US6424649B1 (en) 1997-12-31 2002-07-23 Cisco Technology, Inc. Synchronous pipelined switch using serial transmission
US6111877A (en) 1997-12-31 2000-08-29 Cisco Technology, Inc. Load sharing across flows
US6853638B2 (en) * 1998-04-01 2005-02-08 Cisco Technology, Inc. Route/service processor scalability via flow-based distribution of traffic
US6370121B1 (en) 1998-06-29 2002-04-09 Cisco Technology, Inc. Method and system for shortcut trunking of LAN bridges
US6920112B1 (en) 1998-06-29 2005-07-19 Cisco Technology, Inc. Sampling packets for network monitoring
US6377577B1 (en) 1998-06-30 2002-04-23 Cisco Technology, Inc. Access control list processing in hardware
US6308219B1 (en) 1998-07-31 2001-10-23 Cisco Technology, Inc. Routing table lookup implemented using M-trie having nodes duplicated in multiple memory banks
US6182147B1 (en) 1998-07-31 2001-01-30 Cisco Technology, Inc. Multicast group routing using unidirectional links
US6389506B1 (en) 1998-08-07 2002-05-14 Cisco Technology, Inc. Block mask ternary cam
US6101115A (en) * 1998-08-07 2000-08-08 Cisco Technology, Inc. CAM match line precharge
JP3543649B2 (ja) 1998-10-27 2004-07-14 セイコーエプソン株式会社 データ転送制御装置及び電子機器
DE19850650C2 (de) * 1998-11-03 2000-09-07 Texas Instruments Deutschland Verfahren zum Übertragen von Daten
US6771642B1 (en) 1999-01-08 2004-08-03 Cisco Technology, Inc. Method and apparatus for scheduling packets in a packet switch
US7065762B1 (en) 1999-03-22 2006-06-20 Cisco Technology, Inc. Method, apparatus and computer program product for borrowed-virtual-time scheduling
US6757791B1 (en) 1999-03-30 2004-06-29 Cisco Technology, Inc. Method and apparatus for reordering packet data units in storage queues for reading and writing memory
US6603772B1 (en) 1999-03-31 2003-08-05 Cisco Technology, Inc. Multicast routing with multicast virtual output queues and shortest queue first allocation
US6760331B1 (en) 1999-03-31 2004-07-06 Cisco Technology, Inc. Multicast routing with nearest queue first allocation and dynamic and static vector quantization
EP1050812A1 (en) * 1999-05-03 2000-11-08 STMicroelectronics SA Storage of data in a computer memory
US6789144B1 (en) * 1999-05-27 2004-09-07 Advanced Micro Devices, Inc. Apparatus and method in a network interface device for determining data availability in a random access memory
US6484224B1 (en) 1999-11-29 2002-11-19 Cisco Technology Inc. Multi-interface symmetric multiprocessor
US6977895B1 (en) * 2000-03-23 2005-12-20 Cisco Technology, Inc. Apparatus and method for rate-based polling of input interface queues in networking devices
US6732223B1 (en) * 2000-04-03 2004-05-04 Micron Technology, Inc. Method and apparatus for address FIFO for high-bandwidth command/address busses in digital storage system
US6735207B1 (en) 2000-06-13 2004-05-11 Cisco Technology, Inc. Apparatus and method for reducing queuing memory access cycles using a distributed queue structure
GB2382898B (en) * 2000-12-29 2005-06-29 Zarlink Semiconductor Ltd A method of managing data
GB0031761D0 (en) * 2000-12-29 2001-02-07 Mitel Semiconductor Ltd Data queues
US20020184381A1 (en) * 2001-05-30 2002-12-05 Celox Networks, Inc. Method and apparatus for dynamically controlling data flow on a bi-directional data bus
US7076543B1 (en) 2002-02-13 2006-07-11 Cisco Technology, Inc. Method and apparatus for collecting, aggregating and monitoring network management information
WO2004040579A1 (en) * 2002-08-22 2004-05-13 Thomson Licensing S.A. Smart card write-only register
US6845053B2 (en) * 2002-11-15 2005-01-18 Micron Technology, Inc. Power throughput adjustment in flash memory
US20070260777A1 (en) * 2003-11-25 2007-11-08 Timpe Barrie R Queues for information processing and methods thereof
US7694061B2 (en) * 2004-09-08 2010-04-06 Fisher-Rosemount Systems, Inc. Discarding a partially received message from a data queue
JP4451837B2 (ja) * 2004-12-10 2010-04-14 富士通株式会社 データ転送装置およびデータ転送方法
US20060129714A1 (en) * 2004-12-10 2006-06-15 Fujitsu Limited Method and apparatus for transferring data
US20080049036A1 (en) * 2006-08-24 2008-02-28 Mediatek Inc. Multimedia Playback System, FIFO Memory System, and Method for Storing Multimedia Data
US8229596B2 (en) * 2008-05-16 2012-07-24 Hewlett-Packard Development Company, L.P. Systems and methods to interface diverse climate controllers and cooling devices

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2907004A (en) * 1954-10-29 1959-09-29 Rca Corp Serial memory
US3553651A (en) * 1967-12-06 1971-01-05 Singer General Precision Memory storage system
US3553691A (en) * 1969-08-14 1971-01-05 James W Lassiter Long range position determination system
US3633173A (en) * 1970-03-16 1972-01-04 Hughes Aircraft Co Digital scan converter
US3818461A (en) * 1972-04-10 1974-06-18 Litton Systems Inc Buffer memory system
FR2260141A1 (en) * 1974-02-01 1975-08-29 Honeywell Bull Soc Ind Data transfer control for data processor - is used between periodic and non-periodic units employing buffer memory
US3979733A (en) * 1975-05-09 1976-09-07 Bell Telephone Laboratories, Incorporated Digital data communications system packet switch
US4163291A (en) * 1975-10-15 1979-07-31 Tokyo Shibaura Electric Co., Ltd. Input-output control circuit for FIFO memory
US4151609A (en) * 1977-10-11 1979-04-24 Monolithic Memories, Inc. First in first out (FIFO) memory
NL7713706A (nl) * 1977-12-12 1979-06-14 Philips Nv Informatiebuffergeheugen van het "eerst-in, eerst-uit" type met een variabele ingang en een variabele uitgang.

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IBM TECHNICAL DISCLOSURE BULLETIN=1981 *

Also Published As

Publication number Publication date
EP0118446A1 (en) 1984-09-19
DE3371428D1 (en) 1987-06-11
EP0118446B1 (en) 1987-05-06
JPS59501435A (ja) 1984-08-09
WO1984000835A1 (en) 1984-03-01
US4507760A (en) 1985-03-26
CA1191277A (en) 1985-07-30

Similar Documents

Publication Publication Date Title
JPH037300B2 (ja)
US4499576A (en) Multiplexed first-in, first-out queues
EP0239937B1 (en) Serial communications controller
US4536873A (en) Data transmission system
EP0273083B1 (en) Non-locking queueing mechanism
US6788671B2 (en) Method and apparatus for managing the flow of data within a switching device
US5587953A (en) First-in-first-out buffer memory
CA2170458C (en) Multi-cluster computer system
JP2000148444A (ja) 複数論理fifoシステム
US5151999A (en) Serial communications controller for transfer of successive data frames with storage of supplemental data and word counts
US5016221A (en) First-in, first-out (FIFO) memory with variable commit point
US4612636A (en) Multiple channel depacketizer
US6912566B1 (en) Memory device and method for operating the memory device
EP1430653A2 (en) Serial communication device with dynamic filter allocation
US20030103517A1 (en) Multicast and broadcast operations in ethernet switches
US7023850B2 (en) Multicasting apparatus and method in shared memory switch
US5163049A (en) Method for assuring data-string-consistency independent of software
US6314489B1 (en) Methods and systems for storing cell data using a bank of cell buffers
US6831920B1 (en) Memory vacancy management apparatus and line interface unit
JP3019917B2 (ja) 高速fifo回路
KR100236538B1 (ko) 선입 선출 메모리 장치
JPH1023101A (ja) データ転送インタフェース回路及びデータ転送方法
JPH0833869B2 (ja) データ処理装置
JPH0440551A (ja) データ転送方式
JPH07104828B2 (ja) データ転送用バッファ回路