JPH0650495B2 - データ転送システム - Google Patents

データ転送システム

Info

Publication number
JPH0650495B2
JPH0650495B2 JP2215114A JP21511490A JPH0650495B2 JP H0650495 B2 JPH0650495 B2 JP H0650495B2 JP 2215114 A JP2215114 A JP 2215114A JP 21511490 A JP21511490 A JP 21511490A JP H0650495 B2 JPH0650495 B2 JP H0650495B2
Authority
JP
Japan
Prior art keywords
data
bus
storage array
address
read
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
JP2215114A
Other languages
English (en)
Other versions
JPH0399353A (ja
Inventor
ジエームズ・ノーリス・デイフエンデーフアー
ロナルド・ニツク・カーラ
Original Assignee
インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
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 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン filed Critical インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
Publication of JPH0399353A publication Critical patent/JPH0399353A/ja
Publication of JPH0650495B2 publication Critical patent/JPH0650495B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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/16Multiplexed systems, i.e. using two or more similar devices which are alternately accessed for enqueue and dequeue operations, e.g. ping-pong buffers

Description

【発明の詳細な説明】 A.産業上の利用分野 本発明は、データをあるデータ・バスから他のデータ・
バスに転送するために、ディジタル・データ処理システ
ムで使用するためのデータ・バッファ機構に関し、より
詳しくは、記憶アレイを使用して転送されるデータを緩
衝記憶する、そのようなデータ・バッファ機構に関す
る。
B.従来の技術及び課題 転送されるデータを第1のデータ・バスから第2のデー
タ・バスに緩衝記憶する必要性は、しばしば発生する。
この必要性は一般的には、複数のバスが異なった動作特
性、異なったタイミング要件、またはこれらに関連する
異なった初期接続手段プロトコルを有する所に発生す
る。たとえば、各データ・バスは、2つのバスの間に直
接の同期のない独立非同期バスであってもよい。他の例
は、バスの1つが時々他の事柄によって使用中であった
り、他のバスに、そのバスがデータ転送に予約済である
時に、データ転送に使用できないことがある場合であ
る。さらに他の例は、あるデータ・バスの幅が他のデー
タ・バスの幅と異なっている、すなわち2つのデータ線
の数が同じではない場合である。他の例は、バスに結合
された装置が異なるデータ転送速度を有する場合であ
る。
記憶アレイすなわちメモリ・アレイを用いて、2つのデ
ータ・バスの間にバッファを準備することは知られてい
る。データは、あるバスから受け取られ、ある方法で記
憶アレイに記憶され、それから読み出されて、いくらか
違う方法で他のバスに供給される。記憶アレイは、2つ
のデータ・バスとこの2つのデータ・バスに結合された
動作装置に関連する相違を準備するために、フレキシブ
ルな媒体すなわちバッファを提供する。
ここに提案したデータ・バッファ機構の1つの形式は、
いわゆる「ピンポン」バッファ機構である。この場合、
記憶アレイの対が用意され、1つのバスから受け取られ
たデータが1つのアレイに書き込まれ、その間、データ
は他のアレイから読み出され、他のバスに供給される。
2つの記憶アレイの読取り及び書込み機能は、時々前後
に相互交換されるので、データは1つのアレイに、次に
交互に他のアレイに書き込まれ、データは他のアレイか
ら、次に書込みに使用された方法とは逆に交互に他のア
レイから読み取られる。この形式のデータ・バッファ機
構は、各種の適用業務に、より効率的でより速い全体的
なデータ転送動作を提供することができる。
C.発明の概要及び解決課題 本発明は、改良されたより効率的な方法で、第1データ
・バスから第2データ・バスへデータを転送するための
データ・バッファ機構を提供する。ある実施例では、デ
ュアル・ポート記憶機構を利用するピンポン・バッファ
機構が提供され、このデュアル・ポート記憶機構は、単
一記憶アレイと、それぞれがそれ自体の個別データ、ア
ドレス及び制御線をもつ2つの独立ポートを有する。こ
の2つのポートは、他とは完全に独立して動作するの
で、データは記憶アレイの1つのアドレスに書き込ま
れ、同時に記憶アレイの異なるアドレスからのデータを
読み取ることができる。
書込み回路は、1つの第1のデータ・バスから受け取っ
て、それを記憶アレイの第1部分に書き込む、すなわち
記憶するために、デュアル・ポート記憶機構の独立ポー
トの1つに結合される。読取り回路は、デュアル・ポー
ト記憶機構の独立ポートの他の1つに結合され、記憶ア
レイの第2部分からデータを読み取り、それを第2デー
タ・バスに送るが、このような第2部分からのデータ読
取りは、記憶アレイの第1部分へのデータ記憶と同時に
発生する。モード制御論理は、いわゆる「ピンポン」効
果を提供するために、時々前後に相互交換しようとする
記憶アレイの第1及び第2部分の、読取り及び書込み機
能を可能にするために、供給される。
2つの記憶アレイ・ポートの独立した性質によって、記
憶アレイのある部分が非同期に満たされ、その間、記憶
アレイの他の部分が非同期に空にされることが可能であ
る。これは、2つの独立非同期データ・バス間の効果的
なデータ転送を提供し、データ・バスの1つまたは他、
または両方での「待ち状態」の発生を最小にする助けを
する。
本発明の他の実施例では、複数のデュアル・ポート記憶
機構が、非常に効率的かつ速い方法で、より広いデータ
・バスからより狭いデータ・バスへ、またはその逆に、
データを転送するために利用される。複数のデュアル・
ポート記憶機構は、調整されたピンポン・モードで動作
される。より広いデータ・バスから、またはそれへ転送
されるデータは、同時に、記憶アレイの対応する第1部
分へ記憶され、またはそれから読み取られる。より狭い
データ・バスへ、またはそれから転送されるデータは、
交互に1度に1記憶アレイずつ、記憶アレイの対応する
第2部分へ書き込まれ、またはそれから読み取られる。
したがって、最高データ転送速度は、2つの異なるデー
タ・バスの各々に準備される。
本発明を、そのさらに他の利点及び機能をより良く理解
するために、下記のように添付図面と照合して引用説明
し、本発明の範囲を添付された特許請求の範囲に示す。
D.実施例 第1図のデータ処理システムの説明 第1図に、本発明を利用できる代表的なディジタル・デ
ータ処理システムを示す。このシステムでは、本発明が
バス対バス・アダプタ装置10の中で使用され、このア
ダプタ装置10は、あるコンピュータからコンピュータ
へ、またはその逆に、データを転送する目的のために、
第1ディジタル・コンピュータ11を第2ディジタル・
コンピュータ12に結合するために使用される。コンピ
ュータAで示す第1ディジタル・コンピュータ11は、
処理装置13、記憶装置14、及び入出力(I/O)バ
ス15を含み、後者は「バスA」で示す。コンピュータ
Bで示す第2ディジタル・コンピュータ12は、処理装
置16、記憶装置17、及び入出力(I/O)バス18
を含み、、後者は「バスB」で示す。I/O装置19
は、I/OバスBに結合されて示されている。
処理装置13、16は、性質的には同じでも異なってい
てもよく、各々は、その該当コンピュータとして中央演
算処理装置(CPU)を表す。I/Oバス15、18の
各々は一般には、1組のデータ・バス線、1組のアドレ
ス・バス線、及び1組の制御バス線を含む。ある場合に
は、バス線の同じ組をデータとアドレスの両方のために
使用してもよく、これは時間多重法で行なわれる。
バス対バス・アダプタ10は、ピンポン・データ・バッ
ファ装置20、制御権移動回路21、及びメッセージ・
バッファ22を含む。ピンポン・データ・バッファ20
は、本発明に従って作られ、バスAのデータ線からバス
Bのデータ線へ、またはその逆に、データを転送するた
めに使用される。したがって、開示された実施例のピン
ポン・データ・バッファは性質的に両方向であるので、
データはどの方向に転送してもよい。制御権移動回路
は、バスAとバスBの制御線に結合され、2つのバスに
必要な初期接続手順を供給するために構築され、各バス
はここでは非同期的性質を有するものと仮定する。メッ
セージ・バッファ22は性質的に2方向で、コマンド、
状況及びアドレス形式のメッセージをあるプロセッサか
ら他のプロセッサに、またはこの逆に、転送するために
使用される。制御権移動回路21はまた、ピンポン・デ
ータ・バッファ装置20及びメッセージ・バッファ22
の機能を、バスA、Bに生ずる初期接続手順動作で調整
する。
特定の適用例として、バス対バス・アダプタ10と第2
コンピュータ12はI/O装置19をホスト・プロセッ
サに結合するためのI/Oアダプタ23を供給するため
に使用される。この場合、プロセッサ13はホスト・プ
ロセッサになり、記憶装置14はホスト・プロセッサ用
の主記憶装置になる。代表的なI/Oアダプタの場合に
は、プロセッサ16は、マイクロプロセッサの形をと
り、この場合、バスBはマイクロプロセッサI/Oバス
となる。また同様な場合に、2つまたはそれ以上のI/
O装置をバスBに結合してもよい。
第2図のデータ・バッファ実施例の説明 第2図に、I/OバスAのデータ・バス部分15aから
I/OバスBのデータ・バス部分18aへ、またはこの
逆に、データを転送するためのピンポン・データ・バッ
ファ機構の、第1実施例を示す。このデータ・バッファ
機構は、データが2つのデータ・バス間のいずれかの方
向に転送されることができる、2方向の特徴を有する。
この第2図のデータ・バッファ機構は、単一記憶アレイ
と、2つ独立ポートを有して各ポートが固有のデータ、
アドレス及び制御線を持つデュアル・ポート記憶機構2
5を有する。第3図に、一般的なデュアル・ポート記憶
機構の詳細を示す。
第3図で、ここに示すデュアル・ポート記憶機構25
は、単一記憶アレイ26と、2つの独立I/Oポートを
有して各ポートが固有のデータ、アドレス及び制御線を
持つ。第1独立ポートは、第3図では「左」ポートと呼
び、左ポートI/Oバッファ27、左ポート・アドレス
復号器28、及び左ポート読取り/書込み(R/W)論
理29を含む。左ポート用のデータ線30は、左ポート
I/Oバッファ27の片側に接続され、一方、このバッ
ファ27の他の側は、記憶セル・アレイ26内部の内部
データ線の第1セットにデータ線31によって接続され
ている。左ポート用のアドレス線32は、左ポート・ア
ドレス復号器28に接続され、この出力部は記憶アレイ
26中の内部アドレス線の第1セットに接続されてい
る。左ポート用の制御線33は、左ポート読取り/書込
み論理29に接続されている。このR/W論理29は、
書込み制御信号または読取り制御信号のいずれかをバッ
ファ27がデータを転送する方向を決定するために、左
ポートI/Oバッファ27に送る。バッファ27は2方
向性である。書込み制御線が活動状態の時、バッファ2
7は、記憶アレイ26に記憶するために、データをデー
タ線30からデータ線31に転送する。反対に、読取り
制御線が活動状態の時、バッファ27はデータをデータ
線31からデータ線30に転送する。
デュアル・ポート記憶機構25の第2独立I/Oポート
は、ここでは「右」ポートと呼ばれる。この右ポート
は、右ポートI/Oバッファ34、右ポート・アドレス
復号器35、及び右ポート読取り/書込み(R/W)論
理36を含む。右ポート用のデータ線37は、右ポート
I/Oバッファ34の片側に接続され、一方、このバッ
ファ34の他の側は、記憶アレイ26内の内部データ線
の第2セットにデータ線38によって接続されている。
右ポート用のアドレス線39は、右ポート・アドレス復
号器35に接続され、この出力部は記憶アレイ26中の
内部アドレス線の第2セットに接続されている。右ポー
ト用の制御線40は、右ポート読取り/書込み論理36
に接続されている。このR/W論理36は、書込み制御
信号または読取り制御信号のいずれかを、書込みポート
I/Oバッファ34に送る。書込みポートI/Oバッフ
ァ34は2方向性である。書込み制御線が活動状態の
時、バッファ34は、記憶アレイ26に記憶するため
に、データをデータ線37からデータ線38に供給す
る。反対に、読取り制御線が活動状態の時、右ポートI
/Oバッファ34はデータをデータ線38からデータ線
37に転送する。
第3図のダッシュ線ボックス25内に使用された注解と
凡例は、デュアル・ポート記憶機構25内で利用可能な
機能を参照し、これはデュアル・ポートに記憶機構25
が使用できる特定の適用とは関係はない。この関係か
ら、CSはチップ選択を示し、WEは書込み使用可能を
示し、OEは出力使用可能を示し、そしてMSBは最上
位ビットを示す。ダッシュ線ボックス25の外側に示さ
れる凡例を識別する線は、第2図に示される特定の適用
に関係する。
第3図の左ポート装置及び右ポート装置は、互いに独立
して動作する。両ポートは、同時に記憶アレイ26にア
クセスしてもよい。したがって、左ポートは記憶アレイ
26にデータを書き込んでいるか、またはそこからデー
タを読み取っており、それと同時に、右ポートは記憶ア
レイ26にデータを書き込んでいるか、そこからデータ
を読み取っている場合もある。
第2図の実施例では、左ポートは記憶アレイ26へのデ
ータ書込みに供され、右ポートは記憶アレイ26からの
データ読取りに供される。書込み専用は、書込みストロ
ーブ信号を、左ポートR/W論理29のチップ選択(C
S)と書込み使用可能(WE)入力部に供給することに
よって達成される。この結果、左ポートI/Oバッファ
27への書込み制御信号線のみが割込み可能にされるこ
とになる。読込み専用は、読込みストローブ信号を、右
ポートR/W論理36のチップ選択(CS)と出力使用
可能(WE)入力部に供給することによって達成され
る。この結果、右ポートI/Oバッファ34への読込み
制御信号線のみが割込み可能にされることになる。した
がって第2図の実施例では、左ポート・データ線30は
データ入力のみに使用され、一方、右ポート・データ線
37はデータ出力のみに使用される。
後でわかるように、デュアル・ポート記憶機構25は外
部回路によって操作されるので、記憶アレイ26は第1
部分41と第2部分42を供給する結果となり、この1
つはデータ書込みに使用され、他の1つはデータ読取り
に使用され、そしてその逆の場合もある。これは、2つ
のアドレス復号器28、35の最上位ビット(MSB)
入力アドレス行の適切な操作によって引き起こされる。
これは2進法1の値が読取りアドレスMSB線39aに
置かれた時にはいつでも、書込みアドレスMSB線32
aに2進法0の値を置くことによって、達成され、また
その逆の場合もある。MSBアドレス行上の2進法値0
は、関連するアドレス復号器を、記憶アレイ26のため
のアドレス範囲の下半分にアドレス指定させる。2進法
1の値がMSBアドレス行上に現れると、関連するアド
レス復号器は、記憶アレイ26のためのアドレス範囲の
上半分にアドレス指定する。左ポート復号器28につい
ては、残りのアドレス行32bは、MSB線32a上の
2進数値によって選択されるように、記憶アレイ26の
下半分41または上半分42にいずれかに、色々な個別
のアドレス線をアドレス指定するために使用される。同
様な方法で、右アドレス復号器35のための他のアドレ
ス線39bが、MSB線39a上の2進数値によって決
定されるように、下半分41または上半分42にいずれ
かで、色々なアドレス行をアドレス指定するために使用
される。
第3図に示す内部構造を有するデュアル・ポート記憶機
構は、現在市場で入手可能である。1つのこの種のデュ
アル・ポート記憶機構は、米カリフォルニア州サンノゼ
の富士通マイクロエレクトロニクス社の集積回路部門に
よって販売されている。他のこの種のデュアル・ポート
記憶機構は、米カリフォルニア州サンタクララのインテ
グレイテッド・デバイス社によって販売されている。こ
うして市場に出ているように、これらの機構は、デュア
ル・ポートRAMまたはデュアル・ポート・ランダム・
アクセス・メモリとして参照されることがある。
第2図のデータ・バッファ機構も、データをデータ・バ
ス15a、18aの1つから受け取ってそれを記憶アレ
イ26の第1部分(たとえば下部分41)に記憶するた
めの、デュアル・ポート記憶機構25の独立ポートの第
1ポート(左ポート)に結合された、書込み回路を含
む。この書込み回路は、データ・バス15a、18aの
1つから、デュアル・ポート記憶機構25の第1ポート
のデータ線30にデータを供給するための、データ入力
回路を含む。このデータ入力回路は、バスAデータ・バ
ス15aまたはバスBデータ・バス18aのいずれかか
ら、第1ポート・データ線30へのデータ転送を選択的
に割込み可能にするための、データ入力多重回路を含
む。このデータ入力多重回路は、バスAデータ線15a
を第1ポート・データ線30に結合するレシーバ回路4
3と、バスBデータ線18aを上記と同じ第1ポート・
データ線30に結合するレシーバ回路44を含む。
レシーバ回路43は、第1方向制御信号ABによるデー
タ転送目的のために割込み可能にされ、一方、レシーバ
回路44は、第2指示制御信号BAによるデータ転送目
的のために割込み可能にされる。AB制御信号は、デー
タがバスAからバスBに転送されようとする時は活動状
態であり、BA制御信号は、逆方向に、すなわちデータ
がバスBからバスAに転送されようとする時は活動状態
である。これらの方向制御信号は、第1図の制御権移動
回路21に位置する方向制御ラッチ(図示せず)によっ
て供給される。この方向制御ラッチは、プロセッサ1
3、16の1つによって初期化され、データ転送方向を
確立する。AB信号とBA信号は、決して同時に活動状
態にはならない。したがって、どの瞬間でもデータ・バ
ス15a、18aのただ1つが、デュアル・ポート記憶
機構25のデータ入力線30にデータを供給することが
できる。レシーバ回路43かレシーバ回路44のいずれ
かが割込み可能にされない時には、それらの出力線はト
リステート状態、すなわち高いインピーダンス条件に置
かれている。
第2図の書込み回路はさらに、デュアル・ポート記憶機
構25の第1ポートの複数アドレス線32bへマルチビ
ット・アドレスを供給するための、入力アドレス・カウ
ンタ回路を含む。この入力アドレス・カウンタ回路は、
マルチビット入力アドレス・レジスタ45とマルチビッ
ト2進加算機構回路46を含む。通常は、入力アドレス
・レジスタ45は、ゼロ・カウント条件に初期化され
る。アドレス・レジスタ45におけるカウント値は、加
算機構46の第1入力部に供給される。数値Nは、加算
機構46の第2入力部に供給され、アドレス・レジスタ
・カウント値に加えられる。数値Nは、記憶アレイ26
中の任意の記憶線にデータを書き込む間に、記憶アレイ
26に送られた、データのバイト数を表す。加算機構4
6の出力部に現れる新しいまたは次の記憶アドレスは、
データが記憶アレイ26中の現在アドレス指定されてい
る線に書き込まれた後やがて、入力アドレス・レジスタ
45に戻されてロードされる。こうして、レジスタ45
中の入力アドレス値は、データ行が記憶アレイ26に書
き込まれる度に、増分されるか更新される。
第2図の書込み回路はさらに、デュアル・ポート記憶機
構25の第1ポートの制御線33の少なくとも1つにス
トローブ信号を供給して、記憶アレイ26に書き込もう
とする入力データ線30にデータを発生させるためのス
トローブ回路を含む。この書込みストローブ回路は、A
プロセッサ13によって開始されたストローブA信号、
またはBプロセッサ16によって開始されたストローブ
B信号のいずれかを選択するためのマルチプレクサ回路
47を含む。使用すべきどのストローブB信号を選択す
るかは、マチプレクサ47に供給されたAB方向制御信
号によって決定される。AB信号が活動状態の場合に
は、ストローブA信号が選択され、書込みストローブ制
御線33に供給される。一方、AB信号が活動状態でな
い場合には、代わりにストローブB信号が選択され、書
込みストローブ制御線33に供給される。こうして、書
込みストローブ信号が、記憶アレイ26に書き込まれる
データを供給しているプロセッサから得られる。
使用中のプロセッサの特定の形式に依存して、ストロー
ブA信号がバスA中の制御線の1つから、または交互に
第1図の制御権移動回路21から直接得られる。後者の
場合には、制御権移動回路21は、バスA中の1つまた
は複数の制御線に接続された回路を含み、バスA上の適
切な制御信号に応答し、そして第2図のデータ・バッフ
ァに送られるストローブA信号を発生する。同様な考察
がストローブB信号に適用される。
第2図の書込み回路はさらに、選択された書込みストロ
ーブ信号を入力アドレス・レジスタ45中のカウント値
を更新するための、入力アドレス・レジスタ45のカウ
ント更新線48に供給するための回路を含む。これらの
書込みストローブ信号は、アドレスが変わる前に入力デ
ータ線30上のデータが記憶アレイ26に固有に書き込
まれることを保証するに十分な僅かな量によって、入力
アドレス・レジスタ45の更新を遅らせる、遅延回路4
9を用いて、カウント更新線48に供給される。カウン
ト更新線48上のストローブ信号の出現によって、入力
アドレス・レジスタ45にロードされるべき加算機構4
6の出力部に、次のアドレスが現れることになる。
第2図のデータ・バッファ機構はさらに、データを記憶
アレイ26の第2部分(たとえば上部分42)に送り、
それをデータ・バス15a、18aの他に供給するため
の、デュアル・ポート記憶機構25の独立ポート第2に
結合された、読取り回路を含む。この場合の他のデータ
・バスは、データをアレイ26の入力データ線30に供
給するために使用されていないものである。アレイ26
の第2部分からのこのようなデータ読取りは、アレイ2
6の第1部分へのデータ記憶と同時に起こる。
この読取り回路は、データをデュアル・ポート記憶機構
25の第2ポートのデータ線37から、それをデータ・
バス15a、18aの他に供給するための、データ出力
回路を含む。この読取り回路は、データをデータ出力線
37から、バスAデータ・バス15aまたはバスBデー
タ・バス18aのいずれかに選択的に伝送するための、
データ出力多重回路を含む。この多重回路は、ドライバ
回路50とドライバ回路51を含み、これらはそれぞ
れ、データ出力線37をデータ・バス15a及び18a
の該当するものに結合する。ドライバ回路50は、方向
制御信号BAによって活動化され、活動化されると、記
憶アレイ出力データをデータ・バス15aに供給する働
きをする。一方、ドライバ回路51は、方向制御信号A
Bによって活動化され、活動化されると、記憶アレイ出
力データをバスBデータ・バス18aに供給する働きを
する。これらの方向制御信号ABとBAの1つだけが、
任意に与えられた瞬間に活動状態となる。AB信号は、
データがバスAからバスBへ転送されている時に活動状
態となり、逆に、BA信号は、データがバスBからバス
Aへ転送されている時に活動状態となる。
データがバスAからバスBへ転送されている時、レシー
バ回路43とドライバ回路51は活動化される。したが
って、バスA上のデータはレシーバ43を介して記憶ア
レイ26に記憶され、ドライバ51によって第2バス、
バスBに供給される。逆に、データがバスBからバスA
へ転送されている時、レシーバ回路44とドライバ回路
50は活動化される。この場合、バスBからのデータは
記憶アレイ26に記憶され、データはレシーバ回路44
を介して記憶アレイ26の外に読み出され、ドライバ回
路50によって他のバスに、この場合はバスAに供給さ
れる。こうして、第2図のデータ・バッファ機構は2方
向的である。
第2図の読取り回路はまた、マルチビット・アドレスを
デュアル・ポート記憶機構25の第2ポートの多重アド
レス線39bへ供給するための、出力アドレス・カウン
タ回路を含む。この出力アドレス・カウンタ回路は、マ
ルチビット出力アドレス・レジスタ52とマルチビット
2進加算機構回路53を含む。まず、出力アドレス・レ
ジスタ52は、たとえば、ゼロの出発アドレス値を含む
ためにリセットされる。この初期出発アドレスは、入力
アドレス・レジスタ45用の初期出発アドレスと同じも
のでなければならない。このアドレス値は、加算機構5
3の第1入力部に供給される。数値Nは、加算機構53
の第2入力部に供給される。この値Nは、記憶アレイ2
6の任意の単一アクセス中にこの記憶アレイ26から読
み出されたデータのバイト数を表す。加算機構53の出
力は、出力アドレス・レジスタ52に戻されて供給さ
れ、次のアドレス値をこのようなレジスタ52に供給す
る。この次のアドレス値は、現アドレス用のデータが記
憶アレイ26から読み出されるとすぐに、レジスタ52
にロードされる。こうして、レジスタ52中のアドレス
は、次のデータ行が記憶アレイ26から読み出されるの
で、連続的に更新される。
第2図の読取り回路はさらに、ストローブ信号を、デュ
アル・ポート記憶機構25の第2ポートの制御線40の
少なくとも1つに供給して、記憶アレイ26から読み出
すようにするための、ストローブ回路を含む。このスト
ローブ回路は、ストローブA信号とストローブB信号と
の間で選択し、選択された信号を第2ポートの制御線4
0に供給するための、マルチプレクサ回路54を含む。
マルチプレクサ回路54は、方向制御信号ABによって
制御される。ストローブA線とストローブB線は、書込
みストローブ用のマルチプレクサ47と比較すると、マ
ルチプレクサ54の反対出力部に接続される。したがっ
て、データがバスAからバスBへ転送されている場合に
は、ストローブB信号が選択され、制御線40に供給さ
れ、読取りストローブ信号を提供する。逆に、データが
バスBからバスAへ転送されている場合には、方向制御
信号ABは不活動状態であり、選択され、ストローブA
線がマルチプレクサ54によって選択され、読取りスト
ローブ信号を提供する。こうして、記憶アレイ26に供
給された読取りストローブ信号は、記憶アレイ26から
読み出されるデータを受け取るべきプロセッサによって
提供される。
第2図の読取り回路はまた、選択された読取りストロー
ブ信号を出力アドレス・レジスタ52のカウント更新線
55に供給し、このレジスタ52のカウント値を更新す
るための回路を含む。特に、カウント更新線55上のス
トローブ信号の出現は、加算機構53に出力部に現れる
次のアドレス値が出力アドレス・レジスタ52のロード
される原因となる。読取りストローブ信号は、アドレス
・レジスタ52の更新における僅かな遅延をもたらす遅
延回路56を用いて、カウント更新線55に供給され、
現在アドレス用のデータが正しく記憶アレイ26から読
み出されたことを確証する。
第2図のバッファ機構はさらに、記憶アレイ26の第1
部分と第2部分41、42の機能を相互交換するため
の、書込み回路と読取り回路に結合された、モード制御
論理58を含むので、第1データ・バスからのデータ
は、アレイ26の対向部分に記憶され、一方、データが
他の対向部分から読み取られており、データ・バス15
a、18aの第2部分に供給される。このモード制御論
理は、対向する複数出力線61、62の対を有する2状
態ラッチ回路60を含み、その1つ(線61)は、デュ
アル・ポート記憶機構25の読込みポート用の最上位ビ
ット・アドレス線39aに接続され、他(線62)は、
デュアル・ポート記憶機構25の書込みポート用の最上
位ビット・アドレス線32aに接続される。第4図の表
は、このモード・ラッチ60についての動作状態を示
す。そこに示すように、出力線61、62は、常に互い
に反対極性にある。出力線61(Q出力)が2進1レベ
ルにあると、他の出力線62(出力)は2進0レベル
にある。逆に、出力線61(Q出力)が0レベルにある
場合には、他の出力線62は2進1レベルにある。
モード・ラッチ出力線61は、本実施例で読取りを行な
うために使用されるポートのための、MSBアドレス線
39aに接続されている。一方、他のモード・ラッチ出
力線62は、本実施例で書込みを行なうために使用され
る記憶ポートのための、MSBアドレス線32aに接続
されている。最上位ビット(MSB)アドレス線は、記
憶アレイ26の上半分と下半分42、41のどちらがア
ドレス指定されているかを判定するので、またモード・
ラッチ出力線61、62が常に反対極性にあるので、こ
れは、書込み機能は、読込み機能のために使用されてい
るのとは異なった、上部分を下部分42、41の1つに
ついて常に発生することになる、ということを意味す
る。この方法でのモード・ラッチ60の使用は、任意の
時間に記憶アレイ26の同じ部分に読取りと書込みの両
方を行なうことを不可能にする。これは、デュアル・ポ
ート記憶機構25における競合の問題を、任意の時に記
憶アレイ26の同じ記憶線への読取りと書込みアクセス
の両方を防止することによって、除去する。これは、デ
ュアル・ポート記憶機構25におけるアクセス調停回路
の必要性を除去する。市販のデュアル・ポート記憶機構
が使用されており、そのような機構がアクセス調停回路
を含む場合には、このような回路は本実施例では使用さ
れない。
記憶アレイ26の下部分と上部分41、42の読取り機
能と書込み機能は、時々前後に交換されるので、データ
・バスの1つからのデータは下部分41に、それから交
互に上部分に書き込まれ、一方、読み出されて他のデー
タ・バスに供給されたデータは、上部分42に、それか
ら交互に下部分から読み取られ、これは記憶アレイ26
にデータを書き込むために使用されたものとは反対であ
る。さらに詳しくは、モード制御論理58は、書込み回
路と読取り回路に結合されたフル/空論理回路を含み、
上及び下記憶アレイ部分の1つがフル・データになり、
上及び下記憶アレイ部分の他の1つが空データになった
時に、2状態モード・ラッチ60を切り替える。
このフル/空論理回路は、ピン・フル・ラッチ63とポ
ン・フル・ラッチ64を含む。ピン・フル・ラッチの6
3セット(S)入力部は、AND回路65の出力部に接
続され、AND回路65の入力部は、モード・ラッチ出
力線61とAND回路66出力部に接続される。AND
回路66の複数の入力部は、入力アドレス・レジスタ
(IAR)45に含まれた多重ビット・アドレス値を受
け取る。AND回路66の出力部は、IAR45のアド
レス・カウントがその最大値に達すると、活動状態(2
進1レベル)になる。これが起こると、アドレス・レジ
スタ45のすべての出力線は2進1レベルにあり、これ
はAND回路66を活動化し、その出力部に2進1レベ
ルを生成する。したがって、AND回路66の出力部に
おける2進1レベルは、IAR45はその最大(MA
X)カウント値にあることを示す。
この入ってくる最大アドレス値のためのデータがアレイ
26に記憶された後、入力アドレス・レジスタ45は、
自動的にその初期開始値に巻上げまたは巻戻しされる。
これは、レジスタ45を、ピン動作モード及びポン動作
モードの次の開始のための、開始アドレス準備のために
リセットされる。
モード・ラッチ60がピン・モード(「ピン」バッファ
部分41が書き込まれている)にある時を想定すると、
このIAR最大値の発生は、ピン・バッファ部分41が
フルであることを示す。これらの2つの条件(ピン・モ
ード及びIAR=MAX)の発生は、AND回路がピン
・フル・ラッチ63をセット条件に切り替える役目をす
る2進1レベル出力信号を生成する原因となる。この条
件は、ピン・バッファ部分41がデータでフルであるこ
とを示す。この条件では、ラッチ63のQ出力部は2進
1レベルにあり、出力部は2進0レベルにある。
ピン・フル・ラッチ63は、ピン・バッファ部分41の
データが空になると、リセットされる。この目的のため
に、ラッチ63のリセット(R)入力部は、AND回路
67の出力部に接続され、これは、その2つの入力部
で、モード・ラッチ出力線62とAND回路68からの
出力線を受け取る。AND回路68の複数の入力線は、
出力アドレス・レジスタ(OAR)52に含まれたマル
チビット・アドレス値を受け取る。AND回路68の出
力線は、OAR52内のアドレス・カウントがその最大
(MAXX)カウント値に達すると、2進1レベルへ行
く。この最大アドレス値は、2進1レベルにあるOAR
52内のすべてのビットによって示される。この最大カ
ウント値の発生は、読み取られている記憶アレイ部分内
のすべてのアドレス線がアクセスされていることを示
し、この記憶アレイ部分が空データであること、さらに
詳しくは、その部分の中のデータがすべて読み取られた
こと、を意味するものである。
データ・バッファがポン・モード(ピン・バッファ部分
41が読み取られている)にある時を想定すると、モー
ド・ラッチ出力線62は2進1レベルにある。OAR5
2アドレス・カウントが、ピン・バッファ部分41の読
取りが完了したことを示す。その最大値に達すると、A
ND68の出力は2進1レベルに行き、AND67の出
力も同様に2進1レベルに行く。後者の事象はピン・フ
ル・ラッチ63をリセットする。ラッチ63におけるこ
のリセット状態の発生は、ピン・バッファ部分41が空
データであることを示すものである。この時点で、ラッ
チ63のQ出力は1レベルに行き、出力は0レベルに
行く。
ポン・フル・ラッチ64は、記憶アレイ26のポン・バ
ッファ部分42に同じ形式の機能を提供する。ポン・フ
ル・ラッチ64は、ポン・バッファ部分42がフル・デ
ータになると、セット(S)状態(Q出力の高さ)に切
り替えられる。これはAND回路69によって達成さ
れ、その入力部は、モード・ラッチ出力線62とAND
回路66の出力線に接続される。ポン・フル・ラッチ6
4は、ポン・バッファ部分42が空データになると、リ
セット(R)状態(出力の高さ)に切り替えられる。
これはAND回路70によって達成され、その入力部
は、モード・ラッチ出力線61とAND回路68の出力
線に接続される。
第2図のフル/空論理回路はさらに、次の3つの条件の
発生によってモード・ラッチ60をセット(S)状態
(ピン・モード)に切り替えるAND回路71を含む。
すなわち(1)バッファがポン・モードにある、(2)
ピン・バッファ部分41が空である。そして(3)ポン
・バッファ部分42がフルである。この3条件の同時発
生は、AND71の出力が2進1レベルに行き、これが
モード・ラッチ60をセットすなわちピン・モードに切
り替える原因となる。
一方、AND回路72は、モード・ラッチ60をポン・
モード状態にリセットする。詳しくは、モード・ラッチ
60は、次の3つの条件の発生によってリセット(R)
される。すなわち(1)バッファがピン・モードにあ
る、(2)ピン・バッファ部分41がデータ・フルであ
る、そして(3)ポン・バッファ部分42がデータ空で
ある。この3条件の同時発生によって、AND回路72
の出力が2進1レベルに行き、モード・ラッチ60をリ
セットして、それをポン・モードにする。
第2図のデータ・バッファ機構はまた、A及びBプロセ
ッサ13、16(第1図)用のデータ要求信号を生成す
るための、要求論理回路73を含む。この要求論理73
は、モード・ラッチ60、ピン・フル・ラッチ63、及
びポン・フル・ラッチ64から入力信号を受け取る。そ
れぞれの場合に、両ラッチ出力は要求論理73に送られ
る。要求論理73についての代表的な実施例の詳細を第
5図に示す。
第5図に、第2図の要求論理73について内部構造の代
表形状をより詳しく示す。第5図の要求論理の実施例
は、示された方法で相互接続されたAND回路75〜7
8、、OR回路79〜80、AND回路81〜84、及
びOR回路85〜85を含む。AND回路75〜78の
入力部は、第2図のモード・ラッチ60、ピン・フル・
ラッチ63、及びポン・フル・ラッチ64の出力部に接
続される。OR回路85、86の出力部は、それぞれプ
ロセッサA及びプロセッサBのためのデータ転送要求を
提供する。
データがバスAからバスBへ転送されている時、AND
回路81へのAB方向制御信号線の活動化は、回路7
5、76、79、81によって生成しようとするプロセ
ッサA要求信号を割込み可能にする。この場合、プロセ
ッサAへの要求は次の2つの条件のうちの1つが発生す
ると、生成される。すなわち(1)バッファ機構がピン
・モードにあり、ピン・バッファ部分41はフルではな
い、(2)バッファ機構がポン・モードにあり、ポン・
バッファ部分42はフルではない。
データがバスBからバスAへ転送されている時、方向制
御信号BAは活動状態で、AND回路82の1つの入力
部を割込み可能にする。これによって、A信号線(OR
85の出力部)への要求はAND回路77、78及びO
R回路80によって制御されるようになる。詳しくは、
A信号線への要求は、次2つの条件のうちの1つが発生
すると、活動化されることになる。すなわち(1)バッ
ファ機構がピン・モードにあり、ポン・バッファ部分4
2はフルである(さらに正確には空でない)、(2)バ
ッファ機構がポン・モードにあり、ピン・バッファ部分
41はフルである(さらに正確には空でない)。
Bデータ転送要求信号については、データがバスBから
バスAへ転送されている場合には、AND回路83の1
つの入力部は、そのような入力部に送られるBA方向制
御信号によって活動化される。これによって、B出力線
への要求はAND回路75、76及びOR回路79によ
って制御できるようになる。BA活動状態によって、B
信号線への要求は、次の2つの条件のうちの1つが発生
すると、活動化されることになる(2進1レベル)。す
なわち(1)バッファがピン・モードにあり、ピン・バ
ッファ部分41はフルではない、(2)バッファ機構が
ポン・モードにあり、ピン・バッファ部分42はフルで
はない。
一方、データがバスAからバスBへ転送されている場合
には、AB信号は活動状態であり、AND回路84への
1つの入力部を活動化する。これによって、B出力線へ
の要求はAND回路77、78及びOR回路によって制
御できるようになる。この場合、B線への要求は、次の
2つの条件のうちの1つが発生すると活動化されること
になる。すなわち(1)ピン・モード及びポン・バッフ
ァ部分42はフルである(空でない)か、または(2)
ポン・モード及びピン・バッファ部分41はフルである
(空でない)。
書き込まれているバッファ部分がさらにデータを有し
(フルではない)、読み取られているバッファ部分が空
ではない時、転送要求信号が生成される。これらのデー
タ転送要求信号は、制御権移動回路21(第1図)に送
られ、これはバスA、Bのそれぞれの適切な制御線上に
対応する要求信号を生成する。
第2図のデータ・バッファ機構の一般的な動作をこれか
ら考察する。データ転送動作の開始時に、モード・ラッ
チ60はピン・モードにセットされ、ピン・フル・ラッ
チ63及びポン・フル・ラッチ64はそれらのリセット
状態にリセットされ、そして入力アドレス・レジスタ4
5及び出力アドレス・レジスタ52はそれらの初期開始
アドレス値にリセットされる。これらの両アドレス・レ
ジスタ45、52は、同じ初期開始アドレス値にリセッ
トされなければならない。また、制御権移動回路21に
おける方向制御ラッチは、データ転送の所望方向に従っ
てセットされ、方向制御信号AB、BAの適切な1つを
活動化する。さらに一般的な場合では、色々なラッチ及
びアドレス・レジスタの初期設定は、プロセッサAまた
はプロセッサBのいずれかによって行なわれる。いくつ
かの適用業務では、この初期設定責任はプロセッサの特
定の1つに割り当てられる。
データがバスAからバスBへ転送されると想定して、モ
ード・ラッチ60はピン・モードで開始し、プロセッサ
Aはデータ・バス15aを介してデータを送ることを開
始して、それを記憶アレイ26のピン・バッファ部分4
1にストローブする。ピン・バッファ部分41がフル・
データになると、モード・ラッチ60はポン・モードに
切り替えられ、プロセッサAはデータをポン・バッファ
部分42にストローブし始める。この実行中、プロセッ
サBはデータをピン・バッファ部分41にストローブし
始め、それをプロセッサBデータ・バス18a上に送り
出す。データがすべてピン・バッファ部分41から読み
出され、そしてポン・バッファ部分42がデータで満た
されると、モード・ラッチ60はピン・モードに戻るよ
うに切り替えられる。次に、プロセッサAはデータをピ
ン・バッファ部分41に書き込み始め、プロセッサBは
データをポン・バッファ部分42から読み取り始め、こ
の過程は、ピン・バッファ部分41が再びフルになり、
ポン・バッファ部分42が再び空になるまで続く。この
時点で、モード・ラッチ60はポン・モードに戻るよう
に切り替えられ、ポン・モード動作が繰り返される。こ
のピン・モードとポン・モードの間の前後切替えは、問
題にしている特定データ転送動作のためのデータがすべ
てバスAからバスBへ転送されるまで続く。
逆方向の、すなわちバスBからバスAへのデータ転送動
作の場合には、バスBによって供給されるデータは、ピ
ン・バッファ部分41がフルになるまで、それに書き込
まれる。次に、バッファ機構はポン・モードに切り替え
られ、バスB上に受け取られたデータはポン・バッファ
部分42に書き込まれ、同時にデータはピン・バッファ
部分41から読み取られ、バスAに送られる。このピン
・モードとポン・モードの間の前後切替えは、上記のよ
うに、転送しようとするデータがすべてバスBからバス
Aへ転送されるまで続く。
第6図のデータ・バッファ実施例の説明 第6図に、本発明によるデータ・バッファ機構の第2の
実施例を示す。この実施例は、バスAデータ・バスとバ
スBデータ・バスが同幅ではない、すなわち同じデータ
線数を持たない場合に有用である。例示のために、バス
Aがデータ・バス15aは16本のデータ線を有し、一
方バスBデータ・バス18aは32本のデータ線を有す
る、と想定する。したがって、バスAデータ・バス15
aは16ビット(2バイト)のデータを同時に転送で
き、一方バスBデータ・バス18aは32ビット(4バ
イト)のデータを同時に転送できる。この場合、データ
・バス18aはより広いデータ・バスを有し、データ・
バス15aはより狭いデータ・バスを有する。
説明を簡単にするために、第6図でも第2図におけると
同じ要素は、第2図と同じ参照番号で識別される。
第6図の実施例のデータ・バッファ機構は、複数のデュ
アル・ポート記憶機構を含み、各デュアル・ポート記憶
機構は、単一の記憶アレイ、及び、個別データ、アドレ
ス及び制御線を有する2つの独立ポートを有する。第6
図の実施例では、2つのデュアル・ポート記憶機構8
8、89がある。これらのデュアル・ポート記憶機構8
8、89の各々は、第3図に示すように、同じ内部構造
を有する。このように、第1デュアル・ポート記憶機構
88は、下部アドレス範囲部分91(ピン・バッファ)
と上部アドレス範囲部分92(ポン・バッファ)を含む
単一内部記憶アレイ90を含む。第2デュアル・ポート
記憶機構89は、下部アドレス範囲部分94(ピン・バ
ッファ)と上部アドレス範囲部分95(ポン・バッフ
ァ)を含む単一内部記憶アレイ93を含む。この例で
は、各記憶アレイ90、93は、16ビットの入出力デ
ータを持つと想定する。言い換えれば、各記憶アレイ9
0、93の各アドレス可能記憶線は16ビットのデータ
を記憶することができる。したがって、任意の所与のア
クセス中に、16ビットのデータを記憶アレイ90、9
3の各々に書き込み、またはそこから読み取ることがで
きる。
データが16ビット・データ・バス15a上に受け取ら
れている時、データは記憶アレイ90、93に交互に記
憶される。バス15a上に現れる最初の2バイト(16
ビット)は第1アレイ90に記憶され、第2の2バイト
(16ビット)は第2アレイ93に記憶され、第3の2
バイト(16ビット)は第1アレイ90に記憶され、第
4の2バイト(16ビット)は第2アレイ93に記憶さ
れ、以下同様である。言い換えれば、バス15a上に入
ってくる16ビット・データは、2つの記憶アレイ9
0、93の異なった1つに交互に記憶される。
データが32ビット・データ・バス18a上に受け取ら
れている時、データは記憶アレイ90、93に同時に記
憶される。さらに詳しくは、任意の所与の時にバス18
a上に現れるデータの高位の16ビットは、記憶アレイ
90に記憶され、同時に下位の16ビットは記憶アレイ
93に記憶される。
この動作を達成するために、データ・バッファ機構は、
32ビット・バス18aからの同時転送または16ビッ
ト・バス15aからの1アレイ一時転送のいずれかを選
択的に割込み可能にするための、データ入力多重化回路
を含む。この入力多重化回路は、上記のレシーバ・回路
43、44と、さらにマルチプレクサ回路96、97を
含む。16ビット・バス15a上に受け取られたデータ
を記憶する時、レシーバ回路43は割込み可能にされ、
マルチプレクサ96、97はその左側の入力位置にセッ
トされるので、16ビット・データ・バス98は、記憶
アレイ90と第1記憶アレイ93双方の16ビット・デ
ータ入力部に同時に送られる。バス98上のデータは、
書込みストローブ#1信号(WS1)によって記憶アレ
イ90にストローブされ、書込みストローブ#2信号
(WS2)によって第2記憶アレイ93にストローブさ
れ、両ストローブ信号はストローブ論理99によって供
給される。これらのストローブ信号WS1、WS2は時
間的に隔置されているので、バス15aに現れる第1、
第3、第5などの16ビット・セグメントは第1記憶ア
レイ90にストローブされ、バス15aに現れる第2、
第4、第6などの16ビット・セグメントは第2記憶ア
レイ93にストローブされる。これは、入ってくるデー
タ・セグメントを整理するので、データ・セグメントは
第1アレイ90と第2アレイ93に交互に記憶される。
32ビット・バス18a上に受け取られたデータを記憶
する時、レシーバ回路44は割込み可能にされ、マルチ
プレクサ回路96、97はその右側の入力位置にセット
される。バス18aの32本のデータ線は、バス18a
に現れる32ビット・データ・セグメントの、より高位
の16ビットの組を搬送する16本のデータ線の組10
1と、より低位の16ビットを搬送する16本のデータ
線の組102を含む。バス0101上のより高位の16
ビットは、マルチプレクサ96によって、第1記憶アレ
イ90のデータ入力線に供給され、一方同時に、バス1
02上のより低位の16ビットは、マルチプレクサ97
によって、第2記憶アレイ93のデータ入力線に供給さ
れる。したがって、バス18a上の32ビット全部は、
アレイ90、93によって供給される記憶アレイ・セッ
トに、同時に記憶され、書き込まれる。
データを記憶アレイ90、93から読み出し、16ビッ
ト・バス15aに供給する時、これは交互に1度に1つ
のアレイで行なわれる。記憶アレイ90と93との間の
選択は、マルチプレクサ回路103によって達成され
る。この場合、ドライバ回路50は割込み可能にされ
て、データを16ビット・バス15aに渡す。最初の1
6ビット・セグメントは記憶アレイ90から得られ、1
6ビット・バス104とマルチプレクサ回路103によ
って16ビット・バス15aに供給される。第2の16
ビット・セグメントは記憶アレイ93から得られ、16
ビット・バス105とマルチプレクサ回路103によっ
て16ビット・バス15aに供給される。第3の16ビ
ット・セグメントは記憶アレイ90から得られ、第4の
16ビット・セグメントは記憶アレイ93から得られ、
以下同様で、次々に16ビット・セグメントが交互に記
憶アレイ90と記憶アレイ93とから得られる。
データを記憶アレイ90、93から読み出し、32ビッ
ト・バス18aに供給する時、このような読取りと供給
は同時に行なわれる。この場合、両アレイ90、93は
同時にアクセスされ、より高位の16ビットをバス10
4上に、より低位の16ビットとをバス105上に同時
に供給する。両バス104、105のデータ・ビット
は、この時に割込み可能にされるドライバ回路51によ
って、32ビット・データ・バス18aに同時に送られ
る。
データのアレイ90、93への記憶(書込み)及びデー
タのアレイ90、93からの読取りは、第2図の実施例
ですでに説明したピン・ポン法で行なわれる。第6図の
実施例では、2つの記憶アレイ90、93が、ピン・ポ
ン動作と同時に動作される。モード論理58の出力線6
1上のピン・モード制御信号は、アレイ90、93の各
々の最上位ビット(MSB)読込みアドレス線に供給さ
れる。一方、モード論理58の出力線62上のポン・モ
ード制御信号は、アレイ90、93の各々のMSB書込
みアドレス線に供給される。第6図のモード論理58
は、第2図のモード論理58と同じ構造を持つ。
記憶アレイ90、93は、ピン・モードとポン・モード
との間で同時に前後に切り替えられる。ピン・モードで
は、入ってくるデータは2つのアレイの下アドレス部9
1、94に書き込まれ、そして両アレイの上アドレス部
92、95から同時に読み取られ、または読み取ること
ができる。逆に、第6図のデータ・バッファがポン・モ
ードにあると、入ってくるデータは上にアドレス部9
2、95に書き込まれ、両アレイ90、93の下アドレ
ス部91、94から同時に読み取られ、または読み取る
ことができる。
入力アドレス・レジスタ45と出力アドレス・レジスタ
52の増分と更新は、第2図に説明したものに比べて、
わずかに改造されている。詳しくは、加算機構46、5
3の各々は、データ転送方向によって、2のカウントま
たは4のカウントのいずれかによってアドレス値を更新
することができる。データがバスAからバスBへ送られ
ている場合には、IAR45中のアドレスは、16ビッ
ト(2バイト)のデータ記憶アレイ90、93の1つの
記憶される度に、2のカウントだけ増加される。同時
に、OAR52中のアドレスは、32ビット(4バイ
ト)のデータが記憶アレイ90、93から読み取られ、
32ビット・バス18aに送られる度に、4のカウント
だけ増加される。これは、加算機構46の+2入力と加
算機構53の+4入力を活動化するAB方向制御信号の
活動状況によって達成される。
データを逆方向に、すなわちバスBからバスAへ送る場
合には、BA方向制御信号は活動状態にあって、加算機
構46の+4入力と加算機構53の+2入力を活動化す
る。したがって、IARアドレスは、32ビットのデー
タが記憶アレイ90、93に読み込まれる度に、4のカ
ウントだけ増加され、OARアドレスは、16ビットの
データが記憶アレイ90、93から読み取られる度に、
2のカウントだけ増加される。
第7図には、入力アドレス・レジスタ45と出力アドレ
ス・レジスタ52の各々に使用できる、最初の12のア
ドレス値の表を示す。これらのアドレス・レジスタ4
5、、52の各々は、データ・アドレスのトラックをバ
イトに抑えておく。2つの記憶アレイ90、93は1度
に4バイトのデータを効果的に準備するので、2つの最
下位アドレス・ビットは、記憶アレイ90、93をアド
レス指定するためには物理的に使用されない。これらの
2つの最下位ビットは、第7図のLSB(最下位ビッ
ト)列とLSB+1列に現れる。見出し「バッファ・ア
ドレス」の下に現れる残りのより高位のアドレス・ビッ
トのみは、記憶アレイ90、93の読取り線及び書込み
線に供給される。入力アドレス・レジスタ45中の、こ
れらのより高位のアドレス・ビットが、たとえば「00
00」の値を有する時は、ピン・モードを想定して、最
下行(行0)は、2つのピン・バッファ部分91、94
の各々にアクセスされる。一方、バッファ機構がポン・
モードである場合には、最下行は2つのポン・バッファ
部分92、95の各々にアクセスされる。
第7図に見るように、LSB+1アドレス・ビットは、
2つの記憶アレイ90、93のどちらが16ビット・バ
ス15aへの、またはそこからの16ビット転送のため
に使用されるべきかを、区別するために使用できる。し
たがって、たとえば、出力アドレス・レジスタ(OA
R)52中のLSB+1ビットは、マルチプレクサ10
3に供給され、2つの16ビット入力バス104、10
5のどちらがマルチプレクサ103の16ビット出力バ
スに結合されるべきか、を選択する。LSB+1ビット
が0の2進数値を有する場合には、16ビットのデータ
は左記憶アレイ90から読み取られ、バス104とマル
チプレクサ103とによって16ビット・バス15aに
供給される。一方、LSB+1ビットが1の値を有する
場合には、16ビットのデータは右記憶アレイ93から
読み取られ、バス105とマルチプレクサ103とによ
って16ビット・バス15aに供給される。
第8図には、第6図のストローブ論理99のための代表
的内部構造を、より詳しく示す。このストローブ論理9
9は、ストローブA信号とストローブB信号、及び方向
制御信号ABを受け取る。これはまた、入力アドレス・
レジスタ(IAR)45からのLSB+1アドレス・ビ
ット信号を入力線106に受け取る。これはさらに、出
力アドレス・レジスタ(OAR)52からのLSB+1
アドレス・ビット信号を入力線107に受け取る。
まず、バスAからバスBへのデータ転送の場合を考え
て、方向制御信号ABは活動状態である。これは、マル
チプレクサ回路108〜111をそれらの左手の入力位
置にセットする。これは、AND回路112、113を
介して供給されるストローブA信号を割込み可能にさ
せ、書込みストローブ信号WS1、WS2を生成する。
これはさらに、マルチプレクサ110、111の左手入
力部に供給されるストローブB信号を割込み可能にさ
せ、読取りストローブ信号RS1、RS2を発生する。
したがって、各ストローブB信号は、RS1とRS2の
両読取りストローブ信号を同時に生成する。このため、
データは両記憶アレイ90、93から同時に読み取ら
れ、32ビット・バス18aに供給される。
一方、書込みストローブWS1、WS2は、2つの記憶
アレイ90、93の間で前後に相互切替えされる必要が
ある。これは、入力アドレス・レジスタ45からのLS
B+1アドレス・ビットを使用することによって達成さ
れる。詳しくは、LSB+1ビットがゼロの2進数値を
有する場合は、このゼロ値はNOT回路116によって
逆転され、AND回路112の第2入力部を割込み可能
にする出力1値を生成する。この場合、各ストローブA
信号は、AND112とマルチプレクサ108によって
供給され、データを左記憶アレイ90にストローブする
WS1書込みストローブを生成する。
一方、線106上のLSB+1アドレス・ビットが2進
数の1の値を有する場合は、他のAND回路113は割
込み可能にされ、AND回路113とマルチプレクサ1
09によってストローブA信号を渡し、右記憶アレイ9
3に供給されるWS2書込みストローブを生成する。こ
の場合、バス98上(第6図)の16ビットのデータは
右記憶アレイ93に記憶される。こうして、16ビット
・バス15aから受け取られたデータの書込みは、入力
アドレス・レジスタ45からのLSB+1アドレス・ビ
ットの制御の下で、左アレイ90と右アレイ93との間
で前後相互に切り替わる。
逆方向、すなわちバスBからバスAへのデータ転送の場
合には、方向制御信号ABは非活動状態で、マルチプレ
クサ回路108〜111はそれらの右手入力位置を想定
する。この場合、各ストローブB信号は、マルチプレク
サ108、109によって供給され、WS1とWS2の
両書込みストローブを同時に生成する。したがって、3
2ビット・バス18aからのデータは、記憶アレイ9
0、93の両方に同時に記憶される。
RS1読込みアレイとRS2読込みストローブは、出力
アドレス・レジスタ52によって入力線107に供給さ
れるLSB+1アドレス・ビット選択制御の下で、スト
ローブA信号によって生成される。このLSB+1アド
レス・ビットがゼロである場合は、このようなゼロ値は
NOT回路17によって逆転され、AND回路114を
割込み可能にし、アレイA信号をマルチプレクサ110
に渡し、その出力部でRS1を読取りストローブを生成
する。このRS1読取りストローブは、16ビットのデ
ータを左記憶アレイ90からストローブする。
線107上のLSB+1アドレス・ビットが1である場
合は、AND115は割込み可能にされ、ストローブA
信号をマルチプレクサ111に渡し、その出力線上にR
S2読取りストローブ信号を生成する。このRS2読取
りストローブは、16ビットのデータを右記憶アレイ9
3からストローブする。こうして、2つのアレイ90、
93からのストローブすなわち読取りは、1度に1アレ
イから交互に行なわれる。
第9図に、記憶アレイ90、93からデータを読み出す
ためと、その16ビット・データ・バス15aへの転送
のためのタイミング図を示す。間隔A0、A1、A2な
どは、データ・アクセス間隔の役割を表し、その時点で
データが記憶アレイ90、93からアクセスされる。間
隔T0、T1、T2などは、データがマルチプレクサ1
03によって16ビット・データ・バス15aへ転送さ
れるときの間隔を表す。文字Aはアクセスを、文字Tは
転送を示す。番号0、1、2、3などは、含まれる特定
の16ビット・データ・セグメントを示す。第9図はま
た、RS1ストローブ信号とRS2ストローブ信号を示
す。図に見るように、これらはインタリーブされた方式
で発生する。
第9図に見るように、左アレイ90からのデータ・セグ
メント0のアクセスは、読込みストローブ#1の発生中
に発生する。マルチプレクサ103による、このデータ
・セグメント0の転送は、発生読込みストローブ#2の
発生中に発生する。次のデータ・セグメント0、すなわ
ち右アレイ93からのデータ・セグメント1のアクセス
は、読込みストローブ#2の間に発生する。このデータ
・セグメント1は、次の読込みストローブ#1の間にマ
ルチプレクサ103によって転送される。この過程は、
第9図に示した方式で繰り返される。
第9図で注目すべき重要な特色は、(最初のアクセスA
Oを除いて)左アレイ90からのデータアクセスは、第
2アレイ93から得られるデータの転送によってオーバ
ラップされ、逆も同じであることである。したがって、
無駄な時間はない。このため、16ビット・データ・バ
ス15a上の「待ち状態」の発生を防ぎ、バスBからバ
スAへの高いデータ流量の維持を支援する。
書込みストローブWS1、WS2、及び読取りストロー
ブRS1、RS2も、入力アドレス・レジスタ45及び
出力アドレス・レジスタ52をそれぞれ更新するために
使用される。さらに詳しくは、WS1ストローブとWS
2ストローブは、OR回路118と遅延回路49によっ
て、入力アドレス・レジスタ45のカウント更新線に供
給される。WS1とWS2の両方が同時に発生する場合
には、アドレス・レジスタ45のただ1つの更新のみが
発生する。WS1とWS2が異なった時間に発生する場
合には、各々がアドレス・レジスタ45の更新を生成す
る。
このような方式で、RS1読取りストローブとRS2読
取りストローブは、OR回路119と遅延回路56によ
って、出力アドレス・レジスタ52のカウント更新線に
供給される。RS1とRS2の両方が同時に発生する場
合には、アドレス・レジスタ52のただ1つの更新のみ
が発生する。それらが異なった時間に発生する場合に
は、各々がアドレス・レジスタ52の更新を生成する。
第1図のシステムがダッシュ線で示した方法でI/Oア
ダプタを供給するために使用される場合については、プ
ロセッサAはホスト・プロセッサとなり、プロセッサB
は、最も確からしくはマイクロプロセッサである。この
場合、第6図のバスAとバスBの役割は、最も確からし
くは、交換される必要がある。換言すれば、この適用の
ために、左から入ってくる16ビット・データ・バス
は、バスBとして識別されるべきであり、また、右から
入ってくる32ビット・データ・バスは、バスAとして
識別されるべきである。この理由は、ホスト・プロセッ
サが多くの場合、32ビット・バスを有するものであ
り、マイクロ・プロセッサが16ビット・バスを有する
ことである。方向依存信号の他の対のラベル付け(スト
ローブAとストローブB、ABとBA、及びAへの要求
とBへの要求)も、交換される必要がある。これはもち
ろん単にラベルの変更であり、上記の第6図の実施例の
動作を変更するものではない。
第10図のプログラム式バースト長機構の説明 第10図に、データが離散的順次バーストで1つのデー
タ・バスから他のデータ・バスへ転送される適用業務に
おいて有利に使用できる、追加の機構を示すが、この場
合、各バーストはほとんど最大の所定のデータ量(最大
バイト数)を持っている。第10図は、この機構を第6
図の実施例に適用されたものとして示すが、第2図の実
施例にも同様に適用可能である。第10図は、第6図の
入力及び出力アドレス回路部分を示し、対応する要素は
第6図で使用するものと同じ参照番号によって識別され
る。
第10図の新しい特徴は、書込みアドレス回路と読取り
アドレス回路に結合されたプログラム式バースト長回路
の準備であり、これは、記憶アレイ90、93の上部分
と下部分に記憶される最大データ量を制限して、この量
を転送中のデータ・バースト用の所定の最大量に等しく
するためである。この回路は、加算機構回路46、53
の各々に接続され、そこへ最大バースト長バイト値を供
給するプログラム式バースト長レジスタ120によって
代表される。
たとえば、転送中のデータ用の最大バースト長を64バ
イトと想定する。この場合、一般のデータ転送動作につ
いては、データは1つのバスから他のバスへ一連の64
バイト・バーストで転送される。
バースト長レジスタ120の目的は、入力アドレス・レ
ジスタ45を操作することで、このためそれは、アレイ
90、93のピン・バッファ部分91、94を、64バ
イトのすべてがこれらの2つのピン・バッファ部分9
1、94(各々32バイト)に記憶されてしまうと、デ
ータ・フルであるとして示す。同様に、データがポン・
バッファ部分92、95へ書き込まれていると、入力ア
ドレス・レジスタ45は、64バイトのすべてがこれら
のポン・バッファ部分に記憶されてしまうと、バッファ
・フル条件を生成する。
バースト長レジスタ120はまた、出力アドレス・レジ
スタ52を操作して、64バイトがピン・バッファ部分
91、94またはポン・バッファ部分92、95のいず
れかから読み取られた時、バッファ空の条件(OAR=
MAX)を生成する。こうして、モード論理58(モー
ド・ラッチ60)は、64バイトのデータが受け取ら
れ、第2データ・バスに転送された度に切り替えられ
る。
バースト長レジスタはプログラミング可能で、そこにセ
ットされる最大バースト長の値は変更することができ、
データ・バッファ機構が使用されている特定のデータ処
理システムを準備する。データが64バイト・バースト
に転送されている場合には、64のカウント値がバース
ト長レジスタ120にロードされる。一方、データが3
2バイト・バーストに転送されている場合には、32の
カウント値がバースト長レジスタ120にロードされ
る。言い換えれば、バースト長レジスタ120にロード
されたカウント値は、転送中のバースト長に対応させら
れる。加算機構46、53の各々について、バースト長
レジスタ120中のカウント値は、書き込まれるか読み
取られる多くのデータが転送中のデータ・バーストの最
大数に等しくなると、最大アドレス値(全1)が関連ア
ドレス・レジスタによって生成されるような方法で、加
算機構によって加算されている他の数に加えられる。
所望のバースト長の値は、制御権移動回路21(第1
図)によって、各データ転送動作の開始時に、バースト
長レジスタ120にロードされる。ある動的システムで
は、このバースト長の値は、プロセッサAまたはプロセ
ッサBの1つまたは他によって、制御権移動回路21に
供給される。
このプログラム式バースト機構は、データが離散的マル
チバイトで転送されるデータ処理システムにおいて、デ
ータ転送動作の効率を最大化するように割込み可能にす
る。
E.発明の効果 以上のように本発明によればデータ・バス間のデータ転
送を効率的に実行することが可能となる。
【図面の簡単な説明】
第1図は、本発明を利用することのできる代表的なディ
ジタル・データ処理システムの概略ブロック図である。 第2図は、本発明によって構成されたピンポン・データ
・バッファ機構の第1実施例を示す、概略ブロック図で
ある。 第3図は、第2図の実施例で使用することのできる典型
的なデュアル・ポート記憶機構の内部構造を、より詳し
く示す図である。 第4図は、第2図で、使用されるモード制御論理の動作
を説明する図である。 第5図は、第2図の要求論理の内部構造をより詳しく示
す図である。 第6図は、本発明によって構成されたピンポン・データ
・バッファ機構の第2実施例の構造を示すもので、この
実施例は色々な幅を有するデータ・バスの場合に特に有
用である、概略ブロック図である。 第7図は、第6図の実施例でのアドレス指定動作を説明
する図である。 第8図は、第6図のストローブ論理の内部構造をより詳
しく示す図である。 第9図は、第6図の実施例の動作の部分を説明するのに
使用されるタイミング図である。 第10図は、第2図または第6図のいずれかの実施例で
使用できる、プログラム可能なバースト長機能の設備を
示す図である。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭52−105737(JP,A) 特開 昭55−63423(JP,A)

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】第1データ・バスから第2データ・バスへ
    データを転送するためのシステムであって、 記憶アレイ及び個別のデータ線、アドレス線及び制御線
    を有する第1及び第2独立ポートを持つデュアル・ポー
    ト記憶装置と、 前記第1独立ポート及び前記第1データ・バスに接続さ
    れ、第1動作モードの間に前記第1データ・バスから前
    記記憶アレイの第1部分にデータを書込み、第2動作モ
    ードの間に前記第1データ・バスから前記記憶アレイの
    第2部分にデータを書込む書込み回路手段であって、前
    記記憶アレイの第1及び第2部分のそれぞれは前記第1
    データ・バスの使用によって書き込まれたデータを記憶
    するに十分な大きさの容量を持ち、 前記第1データ・バス上のデータに関連し、前記デュア
    ル・ポート記憶装置に結合され、前記第1バスから前記
    記憶アレイの第1及び第2部分への前記データの書込み
    のタイミングを指定する第1手段と、 前記第2独立ポート及び前記第2データ・バスに接続さ
    れ、前記第1動作モードの間に前記記憶アレイの第2部
    分から前記第2データ・バス上にデータを読取る読取り
    回路手段であって、前記第1動作モードの間の前記第2
    部分からの読取りと同時に前記記憶アレイの第1部分へ
    のデータの書込みが発生し、前記第2動作モードの間に
    前記記憶アレイの第1部分から前記第2データ・バス上
    にデータを読取り、前記第2動作モードの間の前記第1
    部分からの読取りと同時に前記記憶アレイの第2部分に
    データの書込みが発生し、 前記第2データ・バス上のデータに関連し、前記デュア
    ル・ポート記憶装置に結合され、前記記憶アレイの第1
    及び第2部分から前記第2データ・バス上への前記デー
    タの読取りのタイミングを指定する第2手段であって、
    該第2手段は前記第1手段と同期せず、 前記第1動作モードの間に前記第1部分へ書込み可能な
    データおよび前記第2部分から読取り可能なデータと、
    前記第2動作モードの間に前記第2部分へ書込み可能な
    データおよび前記第1部分から読取り可能なデータとの
    合計の最大量を、前記第1及び第2部分への読取り者ま
    たは書込み者の要求に基づいて制限する手段であって、
    該制限手段は前記読取り者または書込み者によって、前
    記最大量が前記第1部分の容量よりも少なくかつ前記第
    2部分の容量よりも少なくセットするためにプログラム
    可能であり、 前記第1データ・バスから書込まれたデータが前記記憶
    アレイの部分の1つを前記最大量まで満たし、まだ該デ
    ータが前記第2データ・バス上に読取られておらず、か
    つ他の記憶アレイ部分の全てのデータが前記第2データ
    ・バス上に読取られるときに、前記書込み回路手段及び
    読取り回路手段を前記動作の第1及び第2モードに切り
    換えるモード制御手段と を含む前記システム。
JP2215114A 1989-09-05 1990-08-16 データ転送システム Expired - Lifetime JPH0650495B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US402935 1989-09-05
US07/402,935 US5224213A (en) 1989-09-05 1989-09-05 Ping-pong data buffer for transferring data from one data bus to another data bus

Publications (2)

Publication Number Publication Date
JPH0399353A JPH0399353A (ja) 1991-04-24
JPH0650495B2 true JPH0650495B2 (ja) 1994-06-29

Family

ID=23593871

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2215114A Expired - Lifetime JPH0650495B2 (ja) 1989-09-05 1990-08-16 データ転送システム

Country Status (5)

Country Link
US (1) US5224213A (ja)
EP (1) EP0416281B1 (ja)
JP (1) JPH0650495B2 (ja)
BR (1) BR9004386A (ja)
DE (1) DE69032384T2 (ja)

Families Citing this family (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2776390B2 (ja) * 1989-11-30 1998-07-16 富士通株式会社 送信系及び受信系バスインタフェース
JP2962787B2 (ja) * 1990-08-10 1999-10-12 富士通株式会社 通信制御方式
GB9019022D0 (en) * 1990-08-31 1990-10-17 Ncr Co Work station or similar data processing system including interfacing means to microchannel means
WO1993009504A1 (en) * 1991-10-30 1993-05-13 I-Cube Design Systems Inc. Field programmable circuit board
CA2080210C (en) * 1992-01-02 1998-10-27 Nader Amini Bidirectional data storage facility for bus interface unit
US5450546A (en) * 1992-01-31 1995-09-12 Adaptec, Inc. Intelligent hardware for automatically controlling buffer memory storage space in a disk drive
US5440691A (en) * 1992-02-27 1995-08-08 Digital Equipment Corporation, Pat. Law Group System for minimizing underflowing transmit buffer and overflowing receive buffer by giving highest priority for storage device access
JPH07504773A (ja) * 1992-03-18 1995-05-25 セイコーエプソン株式会社 マルチ幅のメモリ・サブシステムをサポートするためのシステム並びに方法
US5396597A (en) * 1992-04-03 1995-03-07 International Business Machines Corporation System for transferring data between processors via dual buffers within system memory with first and second processors accessing system memory directly and indirectly
US5768548A (en) * 1992-04-15 1998-06-16 Intel Corporation Bus bridge for responding to received first write command by storing data and for responding to received second write command by transferring the stored data
US5467295A (en) * 1992-04-30 1995-11-14 Intel Corporation Bus arbitration with master unit controlling bus and locking a slave unit that can relinquish bus for other masters while maintaining lock on slave unit
US5341474A (en) * 1992-05-15 1994-08-23 Bell Communications Research, Inc. Communications architecture and buffer for distributing information services
EP0574598A1 (de) * 1992-06-13 1993-12-22 International Business Machines Corporation Datenpufferspeicher
US5646745A (en) * 1992-07-13 1997-07-08 Mita Industrial Co., Ltd. Image data processing apparatus having line memory
US5745791A (en) * 1992-09-16 1998-04-28 Intel Corporation System for interfacing first and second components having different data path width by generating first and second component address to read data into buffer
TW276312B (ja) * 1992-10-20 1996-05-21 Cirrlis Logic Inc
EP0596651A1 (en) * 1992-11-02 1994-05-11 National Semiconductor Corporation Network for data communication with isochronous capability
JP3264465B2 (ja) * 1993-06-30 2002-03-11 株式会社日立製作所 記憶システム
US5671445A (en) * 1993-07-19 1997-09-23 Oki America, Inc. Interface for transmitting graphics data to a printer from a host computer system in rasterized form
US5897667A (en) * 1993-11-16 1999-04-27 Intel Corporation Method and apparatus for transferring data received from a first bus in a non-burst manner to a second bus in a burst manner
US5771397A (en) * 1993-12-09 1998-06-23 Quantum Corporation SCSI disk drive disconnection/reconnection timing method for reducing bus utilization
SG47015A1 (en) * 1994-02-24 1998-03-20 Intel Corp Apparatus and method for prefetching data to load buffers in a bridge between two buses in a computer
US5706443A (en) * 1994-05-11 1998-01-06 International Business Machines Corporation Method and apparatus for enabling pipelining of buffered data
US5696990A (en) * 1995-05-15 1997-12-09 Nvidia Corporation Method and apparatus for providing improved flow control for input/output operations in a computer system having a FIFO circuit and an overflow storage area
US5768624A (en) * 1996-02-28 1998-06-16 Opti Inc. Method and apparatus for employing ping-pong buffering with one level deep buffers for fast DRAM access
KR100189530B1 (ko) * 1996-05-21 1999-06-01 윤종용 마이크로 프로세서와 메모리간의 데이타 인터페이스 방법
US5805597A (en) * 1996-06-04 1998-09-08 National Semiconductor Corporation Method and apparatus for providing low power basic telephony type service over a twisted pair ethernet physical layer
US5987530A (en) * 1997-07-10 1999-11-16 National Instruments Coporation Method for caching data and generating only one read request to read the requested data and additional data in universal serial bus system
US6073205A (en) * 1997-07-10 2000-06-06 National Instruments Corporation System and method of write posting in a universal serial bus system
US6016522A (en) * 1997-11-13 2000-01-18 Creative Labs, Inc. System for switching between buffers when receiving bursty audio by computing loop jump indicator plus loop start address for read operations in selected buffer
US6363076B1 (en) * 1998-01-27 2002-03-26 International Business Machines Corporation Phantom buffer for interfacing between buses of differing speeds
US6097775A (en) * 1998-02-17 2000-08-01 Lsi Logic Corporation Method and apparatus for synchronously transferring signals between clock domains
US6456399B1 (en) * 1998-02-25 2002-09-24 Telenor Satellite Services, Inc. Buffer overflow and underflow control for facsimile transmission
KR100331330B1 (ko) * 1998-09-05 2002-09-05 삼성전자 주식회사 참조정보를저장하는방법및장치
US7356624B1 (en) * 1999-03-25 2008-04-08 Texas Instruments Incorporated Interface between different clock rate components
US6360290B1 (en) 1999-06-23 2002-03-19 United Technologies Corporation Commercial standard digital bus interface circuit
US6341318B1 (en) * 1999-08-10 2002-01-22 Chameleon Systems, Inc. DMA data streaming
US6507877B1 (en) * 1999-09-03 2003-01-14 Whamtech, Inc. Asynchronous concurrent dual-stream FIFO
US6615308B1 (en) * 1999-12-09 2003-09-02 Intel Corporation Method and apparatus for regulating write burst lengths
US6687803B1 (en) * 2000-03-02 2004-02-03 Agere Systems, Inc. Processor architecture and a method of processing
DE10050980A1 (de) 2000-10-13 2002-05-02 Systemonic Ag Speicherkonfiguration mit I/O-Unterstützung
US6874043B2 (en) 2000-10-17 2005-03-29 Bridgeworks Ltd. Data buffer
GB0025495D0 (en) * 2000-10-17 2000-11-29 Digital Interfaces Ltd A data buffer
GB2371647B (en) * 2000-10-17 2002-12-31 Digital Interfaces Ltd A Data buffer
US6760772B2 (en) 2000-12-15 2004-07-06 Qualcomm, Inc. Generating and implementing a communication protocol and interface for high data rate signal transfer
JP4017177B2 (ja) * 2001-02-28 2007-12-05 スパンション エルエルシー メモリ装置
US8812706B1 (en) 2001-09-06 2014-08-19 Qualcomm Incorporated Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system
US7065491B2 (en) * 2002-02-15 2006-06-20 National Central University Inverse-modified discrete cosine transform and overlap-add method and hardware structure for MPEG layer3 audio signal decoding
JP4198376B2 (ja) * 2002-04-02 2008-12-17 Necエレクトロニクス株式会社 バスシステム及びバスシステムを含む情報処理システム
US9330060B1 (en) * 2003-04-15 2016-05-03 Nvidia Corporation Method and device for encoding and decoding video image data
KR101166734B1 (ko) 2003-06-02 2012-07-19 퀄컴 인코포레이티드 고속 데이터 레이트를 위한 신호 프로토콜 및 인터페이스의 생성 및 구현
GB0318384D0 (en) * 2003-08-06 2003-09-10 Ibm A storage controller and a method for recording diagnostic information
JP2007507918A (ja) 2003-08-13 2007-03-29 クゥアルコム・インコーポレイテッド さらに高速なデータレート用の信号インタフェース
KR100973103B1 (ko) 2003-09-10 2010-08-02 콸콤 인코포레이티드 고속 데이터 인터페이스
AU2004306903C1 (en) 2003-10-15 2009-01-22 Qualcomm Incorporated High data rate interface
AU2004307162A1 (en) 2003-10-29 2005-05-12 Qualcomm Incorporated High data rate interface
KR100915250B1 (ko) 2003-11-12 2009-09-03 콸콤 인코포레이티드 향상된 링크 제어를 제공하는 고속 데이터 레이트 인터페이스
WO2005053272A1 (en) 2003-11-25 2005-06-09 Qualcomm Incorporated High data rate interface with improved link synchronization
EP2247070B1 (en) 2003-12-08 2013-09-25 QUALCOMM Incorporated High data rate interface with improved link synchronization
US20050144510A1 (en) * 2003-12-24 2005-06-30 Fernando Zayas Cache search accelerator
EP2375676B1 (en) 2004-03-10 2013-06-26 Qualcomm Incorporated High data rate interface apparatus and method
EP1735986B1 (en) 2004-03-17 2013-05-22 Qualcomm, Incorporated High data rate interface apparatus and method
BRPI0509147A (pt) 2004-03-24 2007-09-11 Qualcomm Inc equipamentos e método para interface de alta taxa de dados
US20080301328A1 (en) * 2004-04-27 2008-12-04 Russ Craig F Method and system for improved communication between central processing units and input/output processors
KR100926658B1 (ko) 2004-06-04 2009-11-17 퀄컴 인코포레이티드 고 데이터 레이트 인터페이스 장치 및 방법
US8650304B2 (en) 2004-06-04 2014-02-11 Qualcomm Incorporated Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system
US7620530B2 (en) * 2004-11-16 2009-11-17 Nvidia Corporation System with PPU/GPU architecture
US20060161691A1 (en) * 2004-11-24 2006-07-20 Behnam Katibian Methods and systems for synchronous execution of commands across a communication link
US8873584B2 (en) 2004-11-24 2014-10-28 Qualcomm Incorporated Digital data interface device
US8692838B2 (en) * 2004-11-24 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8699330B2 (en) 2004-11-24 2014-04-15 Qualcomm Incorporated Systems and methods for digital data transmission rate control
US8539119B2 (en) 2004-11-24 2013-09-17 Qualcomm Incorporated Methods and apparatus for exchanging messages having a digital data interface device message format
US8723705B2 (en) * 2004-11-24 2014-05-13 Qualcomm Incorporated Low output skew double data rate serial encoder
US8667363B2 (en) 2004-11-24 2014-03-04 Qualcomm Incorporated Systems and methods for implementing cyclic redundancy checks
US7646628B2 (en) * 2005-02-09 2010-01-12 Nec Corporation Toggle magnetic random access memory and write method of toggle magnetic random access memory
US8730069B2 (en) 2005-11-23 2014-05-20 Qualcomm Incorporated Double data rate serial encoder
US8692839B2 (en) 2005-11-23 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US7779174B2 (en) * 2006-11-03 2010-08-17 Samsung Electronics Co., Ltd. Method and apparatus for dynamically changing burst length using direct memory access control
DE102007005866B4 (de) * 2007-02-06 2021-11-04 Intel Deutschland Gmbh Anordnung, Verfahren und Computerprogramm-Produkt zum Anzeigen einer Folge von digitalen Bildern
US7995067B2 (en) * 2007-03-29 2011-08-09 Mobileye Technologies Limited Cyclical image buffer
US7945745B2 (en) * 2007-09-17 2011-05-17 General Electric Company Methods and systems for exchanging data
US7805551B2 (en) * 2007-09-27 2010-09-28 Integrated Device Technology, Inc. Multi-function queue to support data offload, protocol translation and pass-through FIFO
US7818470B2 (en) * 2007-09-27 2010-10-19 Integrated Device Technology, Inc. Adaptive interrupt on serial rapid input/output (SRIO) endpoint
US7945716B2 (en) * 2007-09-27 2011-05-17 Integrated Device Technology, Inc. Serial buffer supporting virtual queue to physical memory mapping
US20090086750A1 (en) * 2007-09-27 2009-04-02 Integrated Device Technology, Inc. Non-Random Access Rapid I/O Endpoint In A Multi-Processor System
US9047236B2 (en) * 2008-06-06 2015-06-02 Amazon Technologies, Inc. Client side stream switching
JP5359603B2 (ja) * 2009-06-25 2013-12-04 セイコーエプソン株式会社 集積回路システム、データ書き込み方法、データ読み出し方法
US9167296B2 (en) * 2012-02-28 2015-10-20 Qualcomm Incorporated Customized playback at sink device in wireless display system
US8938561B2 (en) * 2013-01-10 2015-01-20 Skymedi Corporation Time-sharing buffer access system
US10191871B2 (en) * 2017-06-20 2019-01-29 Infineon Technologies Ag Safe double buffering using DMA safe linked lists
DE102018005620A1 (de) * 2018-07-17 2020-01-23 WAGO Verwaltungsgesellschaft mit beschränkter Haftung Schaltung zur gepufferten Übertragung von Daten

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS52105737A (en) * 1976-03-02 1977-09-05 Satsuporoshi Information repeater
JPS6022777B2 (ja) * 1978-11-08 1985-06-04 株式会社東芝 デ−タ転送方式
CA1162314A (en) * 1979-12-07 1984-02-14 Hideo Ota Data input/output method and system
US4455606A (en) * 1981-09-14 1984-06-19 Honeywell Information Systems Inc. Logic control system for efficient memory to CPU transfers
US4489381A (en) * 1982-08-06 1984-12-18 International Business Machines Corporation Hierarchical memories having two ports at each subordinate memory level
US4751671A (en) * 1983-02-14 1988-06-14 Prime Computer, Inc. Size configurable data storage system
US4571671A (en) * 1983-05-13 1986-02-18 International Business Machines Corporation Data processor having multiple-buffer adapter between a system channel and an input/output bus
US4716525A (en) * 1985-04-15 1987-12-29 Concurrent Computer Corporation Peripheral controller for coupling data buses having different protocol and transfer rates
US4805094A (en) * 1986-08-27 1989-02-14 American Telephone & Telegraph Company Multi-channel memory access circuit
JP2549642B2 (ja) * 1986-12-26 1996-10-30 株式会社東芝 画像処理装置
JPH01116861A (ja) * 1987-10-30 1989-05-09 Matsushita Graphic Commun Syst Inc データ転送システム
FR2623349A1 (fr) * 1987-11-18 1989-05-19 Alcatel Thomson Faisceaux Dispositif de retard d'au moins un train de donnees binaires a haut debit

Also Published As

Publication number Publication date
BR9004386A (pt) 1991-09-10
EP0416281B1 (en) 1998-06-10
JPH0399353A (ja) 1991-04-24
EP0416281A2 (en) 1991-03-13
DE69032384T2 (de) 1999-02-18
DE69032384D1 (de) 1998-07-16
EP0416281A3 (en) 1992-08-26
US5224213A (en) 1993-06-29

Similar Documents

Publication Publication Date Title
JPH0650495B2 (ja) データ転送システム
US5261064A (en) Burst access memory
JP3241045B2 (ja) マルチポート共有メモリインタフェースおよび関連の方法
US6167491A (en) High performance digital electronic system architecture and memory circuit therefor
US5584010A (en) Direct memory access control device and method in a multiprocessor system accessing local and shared memory
US5805927A (en) Direct memory access channel architecture and method for reception of network information
US4507731A (en) Bidirectional data byte aligner
US5182801A (en) Apparatus and method for providing fast data transfer between multiple devices through dynamic reconfiguration of the memory space of the devices
JP3644741B2 (ja) Atmセルを切替え、同報通信し、多重化し、且つ逆多重化する方法及び装置
WO1993011496A1 (en) Input/output system for parallel processing arrays
JP2000231535A (ja) メモリカップリングユニットを持つデータ処理装置
JP2006190338A (ja) データ記憶システム
JPH0736167B2 (ja) メモリアクセス制御装置
JPH0562382B2 (ja)
JP2002063791A (ja) 半導体記憶装置およびメモリシステム
JP2003203008A (ja) 半導体メモリ装置
US5226010A (en) Method and apparatus for simultaneous, interleaved access of multiple memories by multiple ports
US5202856A (en) Method and apparatus for simultaneous, interleaved access of multiple memories by multiple ports
JP3210880B2 (ja) 遠隔メモリ間でデータを移動する回路、およびそのような回路を含む計算機
JPH0336645A (ja) メモリ装置
EP0437160B1 (en) Main storage memory cards having single bit set and reset functions
EP0421627B1 (en) Memory device
US5146572A (en) Multiple data format interface
JP2002123371A (ja) ディスクアレイ制御装置及びディスクアレイ制御方法
JPH0792779B2 (ja) データ転送制御装置