JP2593146B2 - データハブ - Google Patents

データハブ

Info

Publication number
JP2593146B2
JP2593146B2 JP61154955A JP15495586A JP2593146B2 JP 2593146 B2 JP2593146 B2 JP 2593146B2 JP 61154955 A JP61154955 A JP 61154955A JP 15495586 A JP15495586 A JP 15495586A JP 2593146 B2 JP2593146 B2 JP 2593146B2
Authority
JP
Japan
Prior art keywords
data
destination
transfer
source
signal
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
JP61154955A
Other languages
English (en)
Other versions
JPS6270964A (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 JPS6270964A publication Critical patent/JPS6270964A/ja
Application granted granted Critical
Publication of JP2593146B2 publication Critical patent/JP2593146B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)

Description

【発明の詳細な説明】 産業上の利用分野 本発明はマルチプロセッサシステム及び分散プロセッ
サシステムに係り、特に分散プロセッサ間及びマルチプ
ロセッサ間のデータ転送手段に関する。
従来の技術及びその問題点 分散処理のためのマルチプロセッサシステムアーキテ
キチャはプロセッサ間で共用される共通メモリを度々使
用する。これはマルチプロセッサシステムでは複数ポー
トメモリ、あるいはクロスバースイッチ、タイムシェア
共通バス、あるいは二重バス構造を含むアーキテクチャ
を使用することでなされる。
複数ポートメモリシテムは各々のメモリモジュールと
各々のプロセッサとの間に別々のバスを使用する。各々
のプロセッサバスは各々のメモリモジュールに物理的に
結合される。各々のメモリモジュールは複数のポートを
有し、各々のポートはバスの一を受入れる。各メモリモ
ジュールは所定の時間にどのポートがメモリをアクセス
するかを決定する内部制御ロジックを有する。メモリア
クセスに際して生じる衝突は各メモリポートに優先順位
に割当てることで解決される。プロセッサとメモリ間に
複数のパスがあるため高い転送速度が実現される。マル
チプロセッサクロスバースイッチアーキテキチャではプ
ロセッサバスとメモリモジュールパスとの間の交点に切
換点が形成される。各切換点はプロセッサとメモリとの
間に物理的な転送路を形成する制御ロジックを有する。
制御ロジックはバス上を送られたアドレスを吟味し、そ
の特定のモジュールがその時点でアドレスされた状態で
あるか否かを判定し、また同一のメモリモジュールに対
する複数のアクセス要求を所定の優先順位に従って解決
する。
マルチプロセッサタイムシェアアーキテクチャでは一
定数のプロセッサが共通パスを介してメモリユニットに
接続される。かかるシステムでは一度に一のプロセッサ
しかメモリと通信できない。転送動作は任意の時間にバ
スを制御できるプロセッサによって制御される。他の転
送の開始を待っているプロセッサはまずバスの使用可能
状況を判断し、バスが使用可能になって始めてメモリユ
ニットをアドレスして転送を開始する。このシステムで
は全てのプロセッサが一の共通バスを共用しているため
メモリアクセスに際して衝突が発生する。メモリのとり
ありはアクセス要求のあるユニット間の優先順位を決定
するバスコントローラによって解決される。このタイム
シェアアーキテクチャでは一のプロセッサしかメモリと
通信できず、他の全てのプロセッサは内部処理に使用中
であるがバスがあくのを待っている状態になっており、
従って不利である。
タイムシェア共通バスマルチプロセッサアーキテクチ
ャよりも効率的なアーキテクチャはデュアルバスマルチ
プロセッサ構造であり、この場合一定数のローカルバス
が各々ローカルメモリ及び一または複数プロセッサに接
続されている。システムバスコントローラが各々のロー
カルバスと協働して各ローカルバスを共通システムバス
へ結合する。多くの設計において、ローカルバスに接続
される装置はローカルフロセッサによってのみ使用可能
である。共通システムバスに接続されたメモリは全ての
プロセッサで共用される。システムはローカルバスに接
続された装置が他のローカルバスのプロセッサによって
もアクセズてきるように構成される。一つのプロセッサ
のみがシステムバスを介して任意の時間に共用メモリ及
び他の共通をリソースと通信できる。ローカルバス上の
他のプロセッサはローカルメモリ及びローカル装置との
通信に使用中である状態に維持される。かかるシステム
はマルチプロセッサシステムと考えてもよいが、より正
確には複数コンピュータシステムとして分類されるもの
である。これはプロセッサ,メモリ,及び他の装置が互
いにローカルバス上で接続された場合、かく形成された
ローカルグループ自体が一つのコンピュータシステムを
なすためである。
安全上の理由から多くのシステムは独立の動作する複
数のコンピュータを有るすリダンダントな構成にされて
いる。他のリダンダントなシステムは分散プロセッサの
半独立のな動作を与えるもので、故障したプロセッサあ
るいはそれに関する装置がシステム全体の動作を破局的
に低下させることなくシステムから切離されるように構
成されている。
分散マルチプロセッサシステムは最大の効率を得るた
めには半独立に動作する必要がある。相互接続信号リン
クを有しつつ独立に近い動作を達成するためにはプロセ
ッサオーバヘッドを回避する分散プロセッサの間の何ら
かのデータ転送手段を使用せねばならない。これはある
程度までは各ポート毎に物理的に分離されたアドレス及
びデータ入力バスを有する複数ポートメモリユニットを
使用することで達成できる。プロセッサ間のハンドシェ
イクにより複数ポートメモリを媒介にしたプロセッサ間
のデータ転送に必要な制御が得られる。しかし、共用メ
モリの使用はある程度のアドレス自由度を与えるもの
の、一度一つのプロセッサしかメモリをアクセスうする
ことができない。この制約はいくつかのシステム設計上
の要求、例えばプロセッサにメモリを自由にアクセスさ
せたいという要求と両立しない。
かかるシステム設計上の要求、すなわち共用メモリに
よって「待機」状態にされることをなくする問題の部分
的な解決は先入れ先出し(FIFO)バッブァをプロセッサ
間に使用することで得らえる。これによりプロセッサが
直ちにメモリをアクセスするのが妨げられることがなく
なり、データ流れの自由度が確保される。データは異な
った速度で入出力でき、出力データは常にデータがバッ
ファに入ったのと同じ順序になる。二方向のデータ流れ
についてFIFOバッファを両方向に使用することができ
る。しかし、共用メモリで得られるアドレッシングの自
由度はFIFOバッファを用いた解決策では失われる。
上記の共用メモリ及びFIFOバッファを用いた解決策は
個々の利点わあるものの、いずれも別のメモリにより分
離が与えられるにもかかわらず、最も望ましい処理の独
立性の欠如により問題点を有している。共用メモリを用
いた場合任意の時間にプロセッサをアクセスできないた
めシステム効率を低下させる望ましくない待機状態が発
生する。FIFOバッファによりバッファリングされたCPU
では共用アドレッシングにより得られる情報が使用でき
ない。すなわち、CPUはFIFOに書込む際データの位置割
当てを制御することはできるがFIFOから読取る際のデー
タの割当てを制御できない。換言すれば、読取る際CPU
は所望の記憶位置に到達するまでに関係のないデータを
読取らねばならない。
より効率的な分散プロセッサの処理を行なうことがシ
ステムが複雑になるにつれよ重要になってくる。プロセ
ッサの数が増加するにつれ相互通信条件はより複雑にな
り、望ましくない待機状態を生じる機械が増えてくる。
そこで半独立動作を相対的に維持ないし増大させつつ処
理効率を増大させる手段が必要になってくる。
本発明はプロセッサ間を結合するのに使われ、プロセ
ッサ間のデータ転送を高効率で実行するモジュール式デ
ータハブとして機能する中枢的構成ブロックを提供する
ことを目的とする。
問題点を解決するための手段 本発明においては制御プロセッサないしマスタCPU及
びこれと協働するメモリが同様な協働するメモリを有し
ていてもよい別のプロセッサを含む一又は複数の分散し
た装置との間でデータの交換を制御プロセッサ及びこれ
を協働するメモリと他の各々の装置及びこれと協働する
メモリ(これを有する場合)とをモジュール式データハ
ブで結合することにより実行する。マスタCPUによるイ
ニシャライズの後データハブはマスタCPUの命令により
一又は複数の結合された装置へのデータ転送要求を生成
する。一又は複数の要求が生成するとデータハブはマス
タCPUによってデータソースとして指定された装置への
データ転送要求の実行を開始する。ハブによる指定デー
タソースへの転送要求の生成は直接メモリアクセス(DM
A)サイクルを開始する。処理を維持するかハブの制御
を放棄するかの決定権はデータソース側にある。データ
ソースの命令処理は妨げられない。ハブは必要なデータ
をデータソースから得ることを記憶し、そのデータを指
定された転送先のユニットにその転送先ユニットに好都
合なタイミングで転送する。そこでハブは転送先ユニッ
トに転送準備のできたデータを持っていて、転送先ユニ
ットがデータを受取るのに好都合であると判断するまで
待機中であることを知らせる。転送先ユニットがハブに
転送に行なうように信号を送ると転送先ユニットは目下
実行する必要のある無関係なプログラムの実行を再開
し、一方ハブは転送先ユニットの協働するメモリを直接
にアクセスすることが許される。転送先ユニットで使わ
れているプロセッサによっては転送が終るまで通常のプ
ログラムの実行を中断し待つ必要がある場合もある。ハ
ブは複数の並列フォーマットデータチャンネルのみ、あ
るいは並列及び直列フォーマットチャンネルの組合わせ
を含むことができる。
本発明ではまた各チャンネルはハブ内に形成されるプ
ログラム可能優先順次を有し、これにより各チャンネル
と協働する様々な装置からの競合するデータ転送要求を
裁定することができる。そこでハブが一又は異なった優
先順位を割当てられた転送要求を別々のチャンネルから
受取った場合は最高の優先順位を有する装置がまず転送
アクセスを許され、一方これと競合するチャンネルない
しこの競合チャンネルの転送要求待ち行列に入れられて
各々より高い優先順位の転送がプログラムされた転送優
先順位に従って実行された後転送アクセスを許される。
優先順次の構造はより高い優先順位の転送要求が生じた
場合に実行中の低い優先順位の転送が中断されるような
ものでもよい。この優先順位の低い転送は優先順位のよ
り高い転送が実行された後に再開される。
本発明ではまた独立した割込条件の選択された組合わ
せに応答するように再プログラム可能なマスク可能割込
ラインがハブ中に形成される。
本発明ではさらに複数ポートデータハブが分散プロセ
ッサシステムの構成における中枢的な要素として使用さ
れる。複数のプロセッサ間をインターフェースするのに
ハブのようなモジュール式の建築ブロックに似た装置を
使用することにより分散されたサブシステム間に望まし
い高度な独立性を与える多様性のある構成要素が得られ
る。そこで複数のプロセッサをモジュール式複数ポート
データハブにインターフェースし、複数のモジョール式
ポートデータハブを互いに結合することで多数のマルチ
プロセッササブシステムを有する複雑に分散したプロセ
ッサシステムが構成される。各々のモジュール式複数ポ
ートデータハブはデータ転送のいわば中心点として機能
し、システム全体にかかるデータ転送の中心点が数多く
形成される。
このように本発明によるモジュール式複数ポートデー
タハブは特に分散プロセッサシステムの構成に際し必要
に応じていくらでも複製できるデータハブを構成するモ
ジュール式の建築ブロックにやや構成上の機能が似た装
置であり、またマルチプロセッサ用途のより限定された
目的にも使用できる。これは各チャンネルがDMA構造を
有するマルチチャンネルインターフェース装置を用いて
デュアルポートRAMなど共用バスのアドレッシングの独
立性とFIFOアーキテクチャの情報流れの自由さとを結び
つけるものである。データは分散プロセッサ間を極くわ
ずかのプロセッサオーバヘッドで転送される。
実施例 本発明のこれらの、また他の目的、特徴及び利点は以
下の図面を参照した実施例の詳細な説明より明らかとな
ろう。
第1図は本発明による複数のモジュール式複数ポート
データハブ10を有する分散プロセッサシステムを示す図
である。各々のハブは各々専用メモリを有るプロセッ
サ,I/Oコントローラ,I/O装置,インターフェース装置,
及びその他多数の装置の一であってよい複数のデータソ
ース/転送先ユニット12をインターフェースする。さら
にデータソース/転送先ユニット12は例えば第1図に示
したシステムと全く同一のシステム全体を含んでいても
よい。かかるリダンダントな構成はデータの一体性を確
信するのに使用される。データリンク14は各々のデータ
ソース/転送先ユニット12の協動するモジュール式複数
ポートデータハブ10とを結合するのに使用される。かか
るリンク14は直列でも並列でも、また同期的でも非同期
的でもよい。
本発明による多数ポートデータハブ10はマルチプロセ
ッサシステム、特に分散プロセッサシステム構成用のい
わば建築ブロックに似たユニットとしての使用を意図し
ている。しかし、本発明によるデータハブはまた複数プ
ロセッサシステム中でも使用できることを念頭に置いて
おくべきである。設計者はデータハブ10をデータをソー
スと転送先との間でソース/転送先プロセッサオーバヘ
ッドをほとんど生じずに転送できる中枢的要素として使
用すことができる。
本発明によるハブ設計の本質的な特徴はデータソース
とデータ転送先との間でメモリの共用を必要としない点
にある。これにより従来のシステムで必要とされたオー
バヘッドを除去することが可能になる。
第2図は各々2つのデータハブ26,28及び30,32を使用
するように設計されている一対のリダンダントなシステ
ム22,24を有するシステム20を示す。2つのシステム22,
24は2つの別々の直列データリンク34,36を介して互い
に通信することができる。そこで#1のデータハブ26は
リンク34を介して#3のデータハブ30に直列に結合され
ている。同様に#2のデータハブ28は#4のデータハブ
32に直列リンク36を介して直列に結合されている。一般
にシステム22中の装置はどれも直列データリンク34,36
のいずかを介してシステム24中のあらゆる装置と通信す
ることができる。しかし実際には指定されたシステム中
の選択されたユニットのみが通常別のシステムの他の選
択されたユニットと通信する。第2図のシステムアーキ
テクチャにおいては各々ハブ26,28,30及び32は並列リン
ク38,40,42,44,48,50,52,及び54を介してそれぞれ一対
のローカルバス56及び58,56及び60,62及び64,及び64及
び66をインターフェースする。
ローカルバス56,58,60,62,64,及び66は一群の装置68,
70,72,74,76,及び78をインターフェースする。第2図の
群の各々はCPUとメモリユニット(MU)とを含む。CPU及
びMUの各々は協働するバスと同様に符号付けされてい
る。換言すれば#1のデータハブ26は#1のローカルバ
ス56及び#2のローカルバス58を#3のハブ30の結合す
る。かくて#16*CPUはデータを#1のMUから#1のロ
ーカルバス56,並列リンク38及び#1のデータハブを経
てシステム20中の他の装置のどれかに転送する。
同様に第3図にリダンダントのサブシステム82,84を
有する別のリダンダントシステム80を示す。第2図のシ
ステムと第3図のシステムの主要な差はハブ#1及び#
2,またハブ#3及び#4の間にそれぞれ別の直列データ
リンク86,88が存在し、また同じサブシステム内でハブ
間にローカルバスの共用がないことである。勿論第1,第
2,及び第3図のシステムアーキテクチャは本発明による
モジュール式複数ポートデータハブを使用して構成され
る様々なアーキテクチャのわずかな例にすぎないことを
理解すべきである。
第4図は本発明によるモジュール式マルチポートデー
タハブの概略的なブロック図である。第4図の複数ポー
トデータハブはデュアルポートデータハブであり、簡単
のため2つのポートした有さない。しかし開示する本発
明思想はデータハブ内に複数のポートが含まれる場合を
包括するものであり、デュアルポートデータハブに限定
されるものではないことを理解すべきである。
第4図の複数ポートデータハブ10はシステムA90とシ
ステムB92とをインターフェースするように示してあ
る。システムA及びシステムBはそれぞれCPU95,96及び
協働するメモリユニット98,100を有する。各々のシステ
ムのCPUは概略的に単一のバスライン102,104として示し
たデータ,アドレス,及び制御バスを介して協働するメ
モリユニットと通信する。バス102及び104の各々は別々
の複数ポートデータハブ10と別々のポートにおいて通信
を行なう。このように、システムAとシステムBとの間
でのメモリの共用はされない。
システムAと複数ポートデータハブとの間にはハンド
シェイク制御ライン106,108,及び110が設けられる。ま
た同様にシステムBと複数ポートデータハブとの間には
ハンドシェイクライン112,114,及び116が設けられる。
ハブと各々のCPUとの間の3つのハンドシェイク制御ラ
インはハブと各々のCPUを結ぶ2つのハンドシェイクラ
インにまで減少させることができることを理解すべきで
ある。これは個々のCPUで必要なハンドシェイク思想如
何による。
また第4図に概略化して示した複数ポートデータハブ
は上記のデュアルポートによる実施例に限定されること
はなく、また並列インターフェースに限定されることは
ないことを理解すべきである。各々のハブは個々に形成
でき、第5図に示すように多数の並列チャンネルと多数
の直列チャンネルとを含ませるためのバス帯域幅によっ
てのみ限定される。バス帯域幅はメモリシステムに可能
な最大転送速度である。例えば100ナノ秒のアクセス時
間を有するメモリ装置を有するメモリユニットシステム
は10メガヘルツのバス帯域幅を有している。これは転送
速度に対するチャンネルの総数を制御する。またシステ
ム全体はそのシステム内の最も遅いメモリユニットの帯
域幅で通信する。そこで第5図において複数ポートデー
タハブ10はNの並列チャンネルとZの直列チャンネルと
の間でデータ転送をすることができる。換言すれば、本
発明による複数ポートデータハブは様々なアーキテクチ
ャにモジュール化することができる。
第6図は第4図と同様に2つのサブシステム120及び1
22とインターフェースする2つのポートのみを有する複
数データハブ10を単純化して示す図であるが第6図は第
4図よりやや詳細になっている。各々のサブシステム12
0及び122はそれぞれローカルバス124及び126を介して複
数ポートデータハブ10とインターフェースされている。
各サブシステムはそれぞれCPU128,130及びメモリユニッ
ト132,134を含む。
第6図の複数ポートデータハブ10は各々ローカルバス
#1 124及びローカルバス#2 126と通信する2つのチャ
ンネル136及び138及び138を有している。チャンネルA13
6はローカルバス#1 124からのライン140上の並列情報
を受信して同じ情報をライン142を経てローカルバス#2
126に出力する。一般にライン140を経て受信されたデ
ータはライン142へ供給されるデータと同じであるがア
ドレスは同じあったりなかったりする。チャンネルB 13
8は#2のローカルバス126からデータをライン144を経
て受信して同じデータを同一の、あるいは異なったアド
レスでライン146を経て#1のローカルバス124へ出力す
る。そこでチャンネルA及びチャンネルBは並列データ
チャンネルの特徴を有する。しかしチャンネルAとチャ
ンネルBとは本発明では単一の二方向チャンネルに結合
することが可能なことを理解すべきである。
#1サブシステム120及び#2サブシステム122の転送
速度に対する独立性を強化するため別のチャンネルが設
けられる。
複数ポートデータハブのチャンネル136,138の各々は
受信部148,150及び送信部152,154に分割される。これら
の送受信部はワードカウントレジスタ156,158,160,162,
バッファレジスタ164,166,168,170,及びアドスレジスタ
172,174,176,178を含む。
複数ポートデータハブ10はチャンネルAと協働するリ
クエストフリップフロップ180及びチャンネルBと協働
する同様なリクエストフリップフロップ182とを含む。
またメモリアドレスレジスタ184がチャンネルAと協働
し、同様なメモリアドレスレジスタ186がチャンネルB
と協働する。データハブ10はまだ制御ユニット188及び
状態レジスタ190とを含む。
各サウシステム120,122のCPUはアドレスレジスタ192,
194,バッファレジスタ196,198,及びリクエストフリップ
フロップ200,202を含む。各サブシステム120,122のメモ
リユニット132,134はバッファレジスタ204,206,及びメ
モリユニット208,210を含む。#1サブシステム120と#
2サブシステム122との間のデータ転送は第7及び第8
図のフローチャートを参照するとわかりやすい。
第7図は第6図の複数ポートデータハブ10内で同時に
進行する2つのフローチャートの単純化した例である。
スタートステップ200で動作を開始した後まず判定ステ
ップ202で第6図のリクエストフリップフロップA180が
1であるか否かが判定される。否であれば#1サブシス
テムのローカルバス124をアクセスする要求がどのユニ
ットからもなされていないことを意味する。従ってこの
場合プログラムは204で示すステップ202から戻るループ
を連続的に行ない、同一の質問をくりかえす。ローカル
バス124に対する要求がなされている場合は次にステッ
プ206が実行されて複数ポートデータハブ10がローカル
バス#1 124のアクセスを要求する。次いでステップ208
でアクセス要求がCPU#1 128によって許可されているか
否かが判定される。否であればローカルバスのアクセス
が許可されるまでプログラムはステップ208から210で示
すループを循環する。アクセスが許容されると次いでス
テップ212実行され、チャンネルA受信アドレスレジス
タ172がその内容をメモリ#1アドレスレジスタ184へ転
送する。チャンネルAの受信アドレスレジスタ172はCPU
#1又はCPU#2のどちらか一方からそのどちらのCPUが
システム転送を制御しているか如何によってその内容を
与えられる。次いでステップ214が実行され、アドレス
されたロケーションのメモリスペース1の内容がメモリ
1のバッファレジスタに転送され、次いでチャンネルA
の受信バッファレジスタ164に転送される。リクエスト
フリップフロップAが次いでステップ216でゼロとさ
れ、ステップ218でリクエトテフリップフロップBが1
とされ、またステップ220でCPU#1の一のバスが解放さ
れる。プログラムは次いで222で示すループヲ辿ってス
テップ202に戻る。
リクエストフリップフロップがステップ218で1にセ
ットされるとその変化がステップ224で検知される。こ
のステップ224での状態の1の変化の検知に先立ち第7
図右側に示すプログラムは要求が検知されるまでステッ
プ224をくりかえし循環している。検知の後、ステップ2
26が次いで実行され、テーダハブ10がローカルバス#2
126のアクセスを要求する。次いで判定ステップ228が実
行され、CPUバスのアクセスが許可されているか未許可
であるかが判定される。否であれば230で示す連続ルー
プがアクセスが許可されるまでくりかえされる。許可さ
れると次いでステップ232が実行され、チャンネルAの
送信アドレスレジスタ174の内容がメモリ#2のアドレ
スレジスタ186に転送される。次のステップ234でチャン
ネルAの送信バッファレジスタ166に保持されているデ
ータがメモリ#2のバッファレジスタ206の転送され、
また次いでメモリスペース#2 210の適当なアドレスへ
転送される。送信バッファレジスタ166は制御ユニット1
88に制御されて内容を受信バッファレジスタ164から受
取る。同様な他のブロック間の転送が上記の転送がなさ
れるに先立ち送受信部内でも生じている。次いでステッ
プ236でリクエストフリップフロップBはゼロにセット
される。転送ワードカンンタレジスタ158の内容は次い
でステップ238で1減らされ、CPU#2のバスがステップ
240で解放される。ステップ242で転送ワードカウントレ
ジスタがゼロであるか1であるかの判定がなされる。否
であれはリクエストフリップフロップAはステップ244
でゼロにセットされ、第7図左側のステップ202に後続
するステップが全てのワードが転送されてしまうまでく
りかえし実行される。
ステップ242のワードカウントレジスタがゼロである
場合CPUはステップ246で転送が完了したと報告される。
次いでステップ248が実行され、マスク可能割込がイネ
ーブルされているか否かが判定される。割込がイネーブ
ルされている場合認定されたCPUがステップ250で割込ま
れ、ステップ224への復帰がなされる。割込がイネーブ
ルされていない場合プログラムはCPUに割込むことなく
直ちにステップ224に復帰する。勿論このフロープログ
ラムは状態マシンを使用して実行できることを理解すべ
きである。
第8図は単純化したフローチャートは典型的なサブシ
ステム中のCPUにおける一連の事象及び複数ポートデー
タハブで生じている一連の事象を同時に示している。仮
想的時間線が図の頂部から底部にかけて走っているもの
とする。この場合CPUは制御CPUであり、ステップ300で
データ転送用にデータハブ内にチャンネルが構成され
る。データハブはステップ302でチャンネアクティビテ
ィを開始することにより応答する。一方CPUはステップ3
04に示す如く無関係なプログラムを自由に実行する。ス
テップ306でチャンネルが転送データを必要としている
ことあるいは転送すべきデータを有していることが判定
されるとステップ308でリクエストフリップフロップA
が1にセットされる。CPUはステップ310を周期的に実行
して転送要求があるか否かを判定する。否であればステ
ップ304で無関係なプログラムの実行に戻る。一方要求
が有る場合はCPUはステップ312で自分自身が使用中であ
るか否かを判定する。使用中であればステップ304の無
関係なプログラムの実行に戻る。否であればCPUはリク
エストフリップフロップをステップ314で1にセット
し、同時にそのプロセッサ構成如何によって転送が終了
するまで待つか否を決定する。そのプロセッサ構成がCP
Uに転送が終るまで待たせる必要がないようなものであ
る場合CPUはステップ316で転送が終了するまでの待つこ
とが不要であると判断し、次いでステップ318が実行さ
れ、CPUリクエストフリップフロップが再びゼロにセッ
トされる。特定のプロセッサ構成のため関係のないプロ
グラムの実行に進む前に転送が完了されるまで待つ必要
がある場合はCPUはステップ316で転送終了まで待つこと
が必要であると判断し、次いでステップ320が実行さ
れ、転送が終了したか否かがくりかえし判定される。否
であればステップ320がループ322で示すように転送が終
了するまでくりかえし実行される。転送が終了すると次
にステップ318が実行され、CPUリクエストフリップフロ
ップがゼロにリセットされ、制御ステップ304へ再び戻
され無関係なプログラムのCPUによる実行が継続する。
CPUリクエストフリップフロップがステップ314で1に
セットされた後既にステップ324においてCPUリクエスト
フリップフロップがステップ314で1にセットされるの
を持っているデータハブは次にステップ326を実行し、C
PUとハブとの間でデータ転送がなされる。転送が終了し
た後データハブはステップ328でリクエストフリップフ
ロップAを再びゼロにセットし、これによりステップ32
0でCPUは転送が終了したことを知る。
第9図は本発明によるモジュール式複数ポートデータ
ハブ10の実施例を示す単純化したブロック系統図であ
る。第9図の実施例は2つの直列入/出力ポート及び2
つの並列入/出力ポートを有する。サブシステム#1は
本実施例ではマスタCPUである。第9図のハブは例えば
第3図のアーキテクチャに使用することができる。各々
のハブは2つの直列データリンク及び2つの並列データ
リンクとインターフェースする。第9図の特定の実施例
は既に指摘したように第3図のアーキテクチャに使用す
るのが有利であるが、これは単に本発明によるモジュー
ル式複数ポートデータハブ特定の実施例として選択可能
な広範囲の内部構造に一にすぎない。第9図の実施例は
従って本発明に教示を使用した特定のシステムアーキテ
クチャの単なる一例にすぎないことを理解すべきであ
る。
第9図の実施例の2つの並列入/出力ポートの構造に
は第1の並列ポートの別個のデータバス350及び別個の
アドレスバス352及び第2の並列ポートの多重化データ
/アドレスバス354が含まれる。第2の並列ポートのラ
イン354上のサブシステム#2へのハブ10からアドレス
出力はデータがこの同じラインを通って送信したり受信
したりされる前に外部でラッチする必要がある。
勿論、ここで開示する(第9図に関連して)ハブと衛
星サブシステムあるいはハブ等を結合する特定のアドレ
スデータ,及び制御ラインの構造は単に図示した特定の
実施例での使用状況により決まる便宜的なものにすぎな
ない。従って本発明の範囲内で他の数多くのデータ転送
結合構造が考えられ、ここで開示した実施例は本発明の
範囲を限定するものではない。
図示の第9図に複数ポートデータハブ10は2つの別の
複数ポートデータハブ102及び106とインターフェースさ
れており、ハブ10はこれらと直列ライン360,362,364,36
6,1553遠隔端末インターフェース(RIT)368,及び第6
図のサブシステムと同様な#1のサブシステム370及び
#2のサブシステム372を介して通信する。サブシステ
ム#1及び#2はどちらもCPUユニットとメモリユニッ
ト(図示せず)を含む。先に説明したようにサブシステ
ム#1は本実施例ではマスタになっている。
第9図に示した本発明によるモジュール式複数ポート
データハブ10の実施例では6種類のデータ転送が処理さ
れる。転送は複数ポートデータハブ10及び#1サブシス
テム370,2つのマンチェスタ送信器(XMTR)/受信器(R
CVR)対374,376,378,380を介して結合された2つのデー
タハブ102,106,1553RTI368,及びサブシステム#2 122と
の間で生じる。図示の実施例えは以下の優先順位のDMA
転送が可能である。
1.1553RTIからサブシステム#1への、またサブシステ
ム#1から1553RTIへの転送。
2.#3のハブ106からサブシステム#1のメモリへの転
送。
3.#2のハブ102からサブシステム#1のメモリへの転
送。
4.#3のハブ106へのサブシステム#1のメモリからの
転送。
5.#2のハブ102へのサプシステム#1のメモリからの
転送。
6.サブシステム#1のメモリからサブシステム#2のメ
モリへの、またサブシステム#2のメモリからサブシス
テム#1のメモリへの転送。
DMA要求は制御ブロック382に含まれる制御ロジックと
非同期である。各々の転送要求は上に示した順に優先順
位が与えられ、番号1が最高優先順位をあらわし番号6
が最低優先順位をあらわす。この6つの転送は各々今の
場合マスタサブシステム#1内にあるデータ転送制御
(マスタ)CPUにより書かれるマスタワードによって個
々にディスエーブル化される。16ビットアドレスバス35
2及び354がサブシステム#1,1553RTI,及びサブシステム
#2のバスの双方に64Kアドレススペースの全部を提供
する。
マスタCPUはハブをこれがアドレスポインタ,ワード
カウインタを与え、またデータ転送したいチャンネルを
イネーブルするようにプログラムする。第15図は第9図
のデータライン350上を転送される様々な16ビットワー
ドの定義をサブシステムチャンネル1からハブヘアドレ
スライン352上を送られる読取書込デコード命令と関連
して示す。データラインの場合16ビットワードはハブ内
の様々なレジスタに送られる。読取書込デコード命令の
場合、読度デコード命令はライン333上のチップ選択(C
SB)信号と共にライン331に生じるIOR信号によってハブ
へジクナルされる。また書込デコード命令はチップ選択
命令と関連して生じるライン335上のIOW信号によってシ
グナルされる。ハブをプログラムする場合はサブシステ
ム#1がまず適当な書込デコード命令を用いてハブ内の
適当なレジスタにアドレスポインタを書込む。次いでサ
ブシステム#1は適当なワードカウンタレジスタを適当
な書込デコード命令を再び使用してイニシャライズす
る。最後に書後デコード命令9(WR9)を使用して所棒
のチャンネルがサブシステム#1よりイネーブルされ
る。
1553RTI転送の説明 転送の準備として1553RTI368はライン384を要求す
る。この要求6種類の転送の最高位の優先順位を有して
いる。テータハブ10は以下の条件が全て満足されている
場合この要求に応答する。
1.DMAチャンネル1がイネーブルされている。
2.その時点でのDMAサイクルが終了している。すなわち
ハブはこの時点で他のチャンネルのための動作をしてい
ない。
3.サブシステム#1よりのMTC、すなわちライン386上の
メモリトグルクロック信号がローになっている。
第10図は1553RTI転送(外部要求DMAサイクル)の典型
的波形のいくつかを示すタイミング図である。第10図
(a)には第9図中ライン390上の12MHz信号を示す波形
388を示す。第10図(b)はサブシステム#1のCPUのよ
りのライン386上の信号を示すメモリトグルクロック(M
TC)信号波形390を示す。MTCがハイの場合にDMA転送が
許される。MTCがローの場合は個々のサブシステムのCPU
が自己と協働するメモリユニットのアクセスを許され
る。MTCはサブシステム#1への要求に優先順位を付す
のに使用され、これとバスのとりありを裁定するのに有
効である。MTCはいくつかの実施例では図示のような規
則的な再帰的信号であるが、そのパルス幅はプロセッサ
のクロック速度及び実行されているソフトウェア命令に
従って変化してもよい(MTC「スローダウン」について
は第14図を参照)。データ転送と転送要求の内部での優
先順位付けはいずれもサブシステム#1よりのMTCの立
下り縁の位置によるのでMTCの変化はDMA転送に影響す
る。普通は第10図に示した特定の実施例ではMTCは乗
算,除算,及びシフト命令群の間を除き周期的に脈動す
るこれらの命令群の間はMTCは仮りに複数のACK(確認)
パルスが生じたとしても一様に保持されている。データ
ハブはこの期間は最初の確認パルスのみを使用し他は無
視する。従ってかかる命令が生じるとデータハブの有効
転送速度が減少する。
第10図(c)は転送に備えてRTI368により発せられた
ライン384上の要求信号を示している。第10図(d)は
ハブ10からサブシステム#1のライン410上の要求信号
(REQ)を示す。第10図(e)はライン402上の信号を表
わすバスイネーブル(BEN)波形400を示す。この波形は
サブシステム#1がバスを差し迫ったデータ転送に備え
てイネーブルすることを表わす。
同様に第10図(f)はハブが差し迫ったデータ転送に
備えてそのバス350及び352をイネーブルすることを示す
波形404(XOUTEN)を示している。転送が完了すると第1
0図(g)に波形パルス406で示した如き確認信号(AC
K)がライン396に出力される。
マンチェスタ受信器の転送動作の説明 マンチェスタ受信器374及び378の各々は協働する内部
レジスタにおいてワード受信が終了するとワード転送を
要求する。ワードは非同期的に受信され、また受信器は
逐次的に受信されるワードを独立して受信しデータハブ
が必要とする並列フォーマットに組立てる手段を含む。
2つの受信器374及び378はそれぞれ優先順位レベル2及
び3が与えられる。データハブは以下の場合にこれらの
要求に応じる。
1.各々のDMAチャンネル(2又は3)が書込デコード命
令0及び1(第15図WRO及びWR1)によりイネーブルされ
ている。これは適正なアドレスポインタが協働するレジ
スタ内に存在しておりチャンネルが書込デコード命令9
(第15図WR9,D2ビット及びD3ビット(CH2又はCH3))に
よってイネーブルされていることを意味する。
2.RCV×RDYフラグがアクティブ、すなわち受信期おRCV
×RDYフラグがアクティブ、すなわち受信器が16ビット
ワードを完全にデコードしている。デコードが終了する
と受信器は内部RCV×RDYフラグ(第15図D16ビット及びD
15ビット)をセットアップし受信器がその内容(R×2
RDY又はR×1 RDY)の転送準備を完了していることを示
す。このフラグは状態レジスタ408によって読取られ
る。
3.より高い優先順位の未定の要求がない。
4.この時点においてDMAサイクルが終了している。すな
わち最後になされたDMAサイクルが終了している。
5.#1のサブシステム370のCPUからのMTCが立下った状
態にある。
これらの要求が満足された後データハブ10により#1
のサブシステム370のCPUに対しライン410上に要求信号
(REQ)が要求される。第11図(c)は要求信号REQの波
形412と第11図(b)のMTC波形390及び第11図(a)の1
2MHz波形と関係を示す図である。ライン370上のMTC信号
が立上りさらにライン402上のバスイネーブル信号(第1
1図(d)BEN,波形414)がサブシステム#1の制御ロジ
ックによって立上げられた後データハブ10はアドレスラ
イン352上のアドレスポインタ,アドレス多重化器(ADD
MUX)416によりデータライン350上に形成される受信器
データ,及び第11図(e)に波形420で示したライン418
上のメモリ読取(MRD)信号とを要求する。ライン396上
の確認信号が転送が終了したことを示し、データバス35
0は確認信号(第11図(f)ACK,波形424)の立上り縁で
RCV×RDYフラグと共にディスエーブルされる。ライン41
0上の要求信号(第11図(c)REQ,波形412)は次いでラ
イン386上のMTC信号が立下る際に除去される)。
マンチェスタ送信器の転送動作の説明 2つのマンチェスタ送信器(XMTR)376及び380の各々
は協働する送金器バッファが空である(すなわちTX×EM
Pフラグ(状態ワードレジスタの第13又は第14ビット)
がアクティブな)場合、またそのチャンネルのワード転
送カウントがゼロでない場合にはワード転送を要求す
る。図示の実施例ではマンチェスタ送信器が1ワードを
転送するのに20ミリ秒間を要する。送信器が使用中の場
合はTX×EMPフラグ(送信器レジスタが空であることを
示す)は偽となり他のワードがロードされる準備ができ
ていないことを示す。このフラグは状態レジスタ(STAT
US)408で読まれる。2つの送信器376及び380にはそれ
ぞれ優先順位レベル4及び5が割当てられる。複数ポー
トデータハブはかかる要求に以下の条件が満足されてい
る場合応答する。
1.各々の複数ポートデータハブチャンネル(4又は5)
がイネーブルされている。これはサブシステム#7がハ
ブがサブシステム#1のメモリから情報を検索するのに
使用するアドレスポインタがセットアップされたことを
意味する。アドレスポインタは書込デコード命令2又は
3(第15図WR2,WR3参照)を要求するサブシステム#1
によりセットアップされる。すなわちこれはアドレスラ
イン352上に二進数の2又は3を与え、アドレスポイン
タをデータライン350上に設けてT×1又はT×2レジ
スタ381,383に記憶することでなされる。これはまたサ
ブシステム#が書込デコード命令3(WR3)を要求しア
ドレスラインが二進数の3を要求しデータラインがワー
ドカウントレジスタに入れられるカウント数を含んでい
る(初めの8ビットに)ことをも意味している。最後に
サブシステム#1は書込デコード9(WR9)を要求しま
た二進数1をチャンネル4又は5のD4又はD5ビット(第
15図参照)に設けることにより前記送信器をイネーブル
する。
2.TX×EMPフラグがアクティブでTX×ワードカウントが
ゼロでない。
3.より優先順位の高い未決の要求がない。
4.ワード転送カウントがゼロでない。
5.現時点でのDMAサイクルが終了している。
6.サブシステム#1のCPUからMTCBが立下った状態にあ
る。
これらの条件が満足されると複数ポートデータハブ10
は第12図(c)の波形412で示すようなサブシステム#
1のバスの要求信号(REQ)をライン410に要求する。第
12図(aa)は第9図のライン390上に存在する信号に対
応する12メガヘルツクロックパルス波形388を示す。第1
2図(bb)は第9図ライン386上のMTC信号に対応す波形3
90を示す。第12図(a)は第9図ライン402のBEN信号に
対応する波形414を示す。第12図(b)はライン422上の
MWR信号又はライン418上のMRD信号の一方に対応する波
形416を示す。第12図(f)はライン396上のACK信号に
対応する波形418を示す。
データハブによりサブシステム#1のバスのアクセス
要求がなされ、またMTC信号が第12図(bb)に示すよう
に立上った後ライン402上にバスイネーブル信号(BEN)
(波形414)が要求される。イネーブル期間内にライン4
22上でのメモリ書込要求が実行された場合サブシステム
#1のメモリはMWR信号波形416により示す如くメモリか
らハブにアドレスされたデータを書込む。確認信号波形
432は第12図(d)に示すように要求されデータは送信
器376又は380内にラッチされる。確認信号波形418が立
下るとワードカウントが減少しTX×EMPフラグがクリア
される。アドレスポインタは第12図(d)に示す如きラ
イン396上の確認信号の立上り縁によって増やされる。
ライン410上の要求信号(REQ)は次いてライン396上の
確認信号(Ach)が開放された後の最初の12メガヘルツ
クロックによって除去される。
そこで送信器転送動作に際して生じる事象の順序を要
約すると、送信器バッファ376又は380が空になり、すわ
わちTX×EMPフラグがアクティブになり送信器がより多
くの情報を転送する準備ができたことが示されるとデー
タハブにより多くのデータをサブシステム#1のCPUへ
転送する要求をなし、CPUはそのデータバスをMTCがハイ
である間イネーブルし、またサブシステムのアドレス/
データラインを3状態化し、CPUはデータハウに確認を
送ってDMAが発生したことを示し、さらに複数ポートデ
ータハブはアドレスレジスタを津の転送のための新しい
アドレスの点まで増やす。この時点で送信器からハブ10
2,106の一へのデータの直列伝送の準備が完了する。
プロセッサ間のブロック転送 第9図の複数ポートデータハブ10は#1サブシステム
370のプロセッサメモリと第2サブシステム382のプロセ
ッサメモリとの間の二方向転送を支持する。この形の転
送は最も優先順次が低く、以下の場合に実行される。
1.DMAチャンネル6がイネーブルされている。
2.より高優先順位の未決要求が存在しない。
3.ブロック転送ワードカウントがゼロでない。
4.現時点でDMAサイクルが終了している。
5.第9図のライン386上のMTC信号が立下っている。
転送の方向はBLK WRD CNT レジスタ429に記憶される
内部ワードカウントワイヤの第9ビット(第15図の書込
デコード命令8(BLK WRD CNT)を参照)により決定さ
れる。第9ビットがハイであることはサブシステム#2
側の読取サイクル及びサブシステム#1側の書込サイク
ルを示す。同様にこのビットがローであることはサブシ
ステム#1のバスの読取サイクルとそれに続くサブシス
テム#2のバスの書込サイクルとを示す。
DMAチャンネル6がイネーブルされるという仮定はサ
ブシステム#1のブロックアドレスポインタ(第15図書
込デコード命令6を参照)が既にサブシステム#1によ
りイニシャライズされていることを意味する。そこでサ
ブシステム#1のブロックアドレスポインタはサブシス
テム#1からサブシステム#2への転送の際サブシステ
ム#1からのデータが得らえるアドレス、あるいはサブ
システム#2からサブシステム#1への転送の際データ
が記憶されるサブシステム#1中のアドレスを含んでい
る。同様にサブシステム#2のブロックアドレスポイン
タ(第15図書込デコード命令7(WR7)を参照)もまた
サブシステム間でのデータ転送の際情報が取出されたり
入れられたりするアドレスを内部に有している。ブロッ
クワードカウント(BLK WRD CNT)レジスタはまた第15
図の書込デコード命令9(ワードをマスクイネーブル)
におけるビット6のイネーブルによってイネーブルされ
る際イニシャライズされる。
第9ビットのワードカウントがロー、すなわち第9図
の#1サブシステム370から#2のサブシステム372への
データ転送が指令されると複数ポートデータハブ10はサ
ブシステム#1から送信器への転送に関連して説明した
ような#1のサブシステム370との間での読取りDMAサイ
クルを開始するが、その際データハブに入来するデータ
が送信器レジスタ376,380でなくATEMPレジスタ430に記
憶される点が異なる。データはライン396上の確認信号
(第12図(d)の波形432を参照)の立上り縁を使って
レジスタ430内にラッチされる。ライン396上の確認信号
が立下るとライン434上にバス要求信号BR(第12図
(c)波形434を参照)が制御ユニット382によって要求
される。サブシステム#2のCPUが空くと、すなわちラ
イン438上のバス許可信号BG(第12図(f)波形439を参
照)がハイになるとライン440にバス許可確認信号(BGA
CK)がハブにより要求され(第12図(g)波形442を参
照)先行のバスサイクルが終了してハブガバスのマスタ
になっていることが示される。
次いで転送先のアドレスが多重化アドレス/データバ
ス上に要求され(第12図(k)ADBUS、波形446参照)、
安定なアドレスが存在するとハブがライン448にASLE信
号(第12図(h)波形449を参照)を要求する。これは
ラッチ450中のアドレス情報をラッチしてサブシステム
#2へのアドレスライン452に供給される。アドレスはB
INレジスタ456からアドレスを与えられる多重化器(MU
X)454により与えられる。BINレジスタ456はプログラム
されたアドレス情報をデータライン350を介してサブシ
ステム#1より与えられる。
データは次いでライン460上にLUDS信号第12図(i)
波形462を参照)を制御ユニット382によって要求するこ
とでサブシステム#2のメモリに書込まれる。このサイ
クルはサブシステム#2によりライン466上に要求され
る。第12図(j)に波形464で示した確認信号DTACKによ
り終了する。サイクルの終りにデータ確認信号がまず要
求されることはまずライン388上の12メガヘルツクロッ
ク信号と同期される。これは次いでサブシステム#2の
全てのラインを3状態化して要求を除去し、サブシステ
ム#2のサイクルの終りを示すのに使われる。
ブロックワードカウントの第9ビットが1である場合
複数ポートデータハブはまずサブシステム#2の側の読
取サイクルを実行し、これをデータラッチ(BTEMP)470
内に一時的に内部ラッチし、次にサブシステム1の側の
書込サイクルを実行する。
上記の場合の全てにおいて、第12図(d)又は(j)
に示したようなライン396又はライン466上の確認信号の
立下り縁はブロックワードカウントを減少させる。また
確認信号の立下り縁はそれぞれのアドレスポインタを増
やす。ブロックがサブシステム#1のメモリからサブシ
ステム#2のメモリへ動く場合、確認信号は第9図をラ
イン466上の同期した同期確認信号になる。ライン472上
のイネーブル信号(DMAEN)が否定されるとその時に優
先されていた要求はクリアされ(またライン410上の要
求信号もクリアされる、第12図(c)参照)、それ以上
の要求が生じるのを抑止する。これは基本的な要求には
全く影響しない。そこでライン472上にイネーブル信号
が再び出力されるとMTCの立下り縁が再び復元順位を与
え、必要に応じて新たな要求を発生させる。
第13図を参照するに、第9図の#2サブシステム372
から#1のサブシステム370へデータ転送するのに際関
係するタイミング関係のいくつかが示されている。第13
図(a)の波形388は第9図中ライン390上の12メガヘル
ツ信号を示している。ライン386上のMTC信号は第13図
(b)に波形390として示してある。ライン434上のハブ
からサブシステム#2へのバス要求信号(BR)が第13図
(c)に波形480として示してある。ライン438及び440
上のバス許可(BG)及び確認(BGACK)信号はそれぞれ
第13図(d)及び(e)の波形482及び484として示して
ある。サブシステム#2からサブシステム#1へのブロ
ック移動の際の手順は次の通りである。まずデータハブ
10がサブシステム#2に対しライン434上にバス要求信
号を出力する。サブシステム#2は空くとライン438畳
に第14図(c)及び(d)の波形480及び482のようなバ
ス許可信号を出力する。データハブは次いで440上にバ
ス許可確認信号GBACK(第13図(e)の波形484を参照)
をライン440に出力し、ライン434上のバス要求信号をゲ
ートオフし、サブシステム#2の読取/書込ライン447
をローに駆動し(第13図(i)波形490を参照)、転送
先アドレスを多重化アドレス/データバス354(第13図
(h)波形491を参照)に要求する。アドレスが安定す
るとデータハブはライン448にASLE信号を出力し(ハブ
からのハブ/ラッチイネーブル出力へのアドレスストロ
ーブ入力;第13図(f)波形493を参照)、これはデー
タラッチ450からのアドレスを反多重化する。サブシス
テム#2内のストローブされたアドレス中にストアされ
たデータはデータハブが読取/書込信号(CPUWR)をラ
イン447上に出力することによりADバス354を経て一時記
憶レジスタ(BTEMP)470へデータ流れ及びライン460上
のLUDS信号をハブ内へ導く目的で送られる。第13図
(g)及び(i)の波形488及び490をそれぞれ参照のこ
と。
そこでデータハブはデータをサブシステム#2からラ
イン354へ経て記憶レジスタ(BTEMP)470へライン460上
のデータストローブ信号(LUPS)を用いて受入れる。サ
ブシステム#2のサイクルの終りは第13図(j)のDTAC
K信号波形492によって示される。するとデータハブはそ
の制御ユニット382への内部バス要求信号を発生させ
る。MTC信号はバス要求に際してより高い優先順位の未
決の要求が存在していなければサブシステム#1への要
求信号をラッチしてライン410に出力する。これの第13
図(k)に波形500で示す。一方サブシステム#1は第1
3図(l)に波形502で示すバスイネーブル信号をライン
402に出力し、データ転送を開始する。これはサブシス
テム#1をアドレス/データライン352,350に対して再
び3状態化する。次いでレジスタ470から多重化器386及
びデータライン350を経てサブシステム#1へ到るデー
タ転送が生じる。これを第13図(m)に波形504で、ま
た第13図(n)に波形506で示す。転送はライン402上の
バスイネーブル信号を受信した後データハブによって開
始される。転送が終了するとサブシステム#1はDMAが
発生し、データがサブシステム#1メモリに書込まれた
ことをライン396に確認信号を発生することで示す(確
認信号については第13図(n)を参照)。双方のアドレ
スポインタは次いで増加され、ワードカウントは減少さ
れる。ワードカウントがゼロでないとゼロなるまで全過
程がくりかえされる。
DMA転送のためのタイミングの関係 第14図はサブシステム#1からサブシステム#2への
1ワードブロックの転送のタイミングを示す。T1〜T4
データハブと2つのプロセッサとの間に同期のため変化
する。サブシステム#1の側の転送はMTC信号とタイミ
ングが整合している。サブシステム#2の側の転送は12
MHz信号と整合している。第13図のサブシステム#2の
側の転送はハブとサブシステム#2との間の信号がMTC
信号と整合していることを示しているが、これは必ずし
も必要ではない。例えば第14図ではMTC信号とハブとサ
ブシステム#2との間の信号との間には何の関係も存在
しない。
ここで導かれたT1〜T4はサブシステム#2においてモ
トローラMC68000とインターフェースするハブについて
のものである。しかし他のプロセッサを使用した場合タ
イミングが変化する。
T1はハブがバス要求信号をサブシステム#2へ送りサ
ブシステム#2からバス許可確認信号が返るまでの時間
である。MC68000の仕様に基きT1の最小時間は制御CPUの
ランニング周波数の同期の1.5倍に選ばれる。図の例で
はCPU2は8メガヘルツで動作している。同様にT1の最大
時間は制御CPUのランニング周期の4倍であり、上の側
では500ナノ秒である。この時間はCPU2の命令サイクル
のどこでバス要求がなされるかによって多重化する。要
求がサイクルの途中であるとデータハブはアクセスする
前にASLEが否定されるまで待たねばならない。第14図
(e)はデータハブから要求している装置でのバス要求
信号である波形700、及び第14図(g)の波形702で示す
バス確認信号の立下り縁によりこのバス要求信号が否定
されるまでの時間を示している。
バス許可確認信号440がハイになってからライン448上
の信号ASLEの立下りによって示される有効なアドレス、
すなわちデータからの反多重化アドレスが現われるまで
の間の時間T2は少なくとも83ナノ秒(12MHzの1サイク
ル分)で最大値は167ナノ秒に達する。この変化は確認
信号と12メガヘルツクロック信号との内部周期によるも
のである。すなわちライン440上のBGACK信号(第14図
(g)波形702)は12MHz信号と非同期であり、12MHzの
1サイクル分の時間窓(83ナノ秒)内の任意のところで
生じる。そこで第14図(d)に波形704として示す12メ
ガヘルツ信号は第14図(h)の波形706で示すAKLE信号
の立下りをトリガする。波形702で示すバス許可確認信
号の立上り縁からBGACK信号の後波形704で示す12メガヘ
ルツクロック信号の第2番目の立上り縁によってトリガ
されるASLE信号の立下り縁までの時間T2は上記の如く最
小83ナノ秒,最大167ナノ秒になる。
第14図(i)に波形708で示す第9図ライン460上のLU
DS信号の接続時間T3は最小83ナノ秒,最大値は83ナノ秒
の整数倍になる。この時間はLUDS信号と第14図(i)に
波形710で示すDTACK信号466との同期によって変化す
る。最小時間はライン378上のDTACK信号を接地すること
で得られる。第14図(i)に示すようにLUDS波形708の
立下り縁はアドレスが外部ラッチ450へのストローブを
終った後最初に現われる12メガヘルツクロックパルスの
立上り縁に対応して形成される。
要求相互の内部優先順位の割当ては第14図(b)に波
形712でT4で示す時間内に行なわれる。内部優先順位割
当て時間(T4)はLUDSの否定の後、すなわちデータがス
トローブされた後始まり次の要求がCPU1よりなされるま
で続く。
要求に内部優先順位を割当てるのに必要な時間は他の
未決の要求,制御プロセッサのスピード、及びMTCの立
下り縁の出現によって変化し、0から666ナノ秒の間で
ある。
転送時間はT1+T2+T3+T4+74ナノ秒+666+83ナノ
秒である。最悪の場合加算転送時間は(通常332ナノ後
のT3を含めて)2,454ナノ秒である。また最小の転送時
間は1,351ナノ秒である。データハブをプログラムする
場合アドレスポインタがまず書かれる。次いでワードカ
ウントレジスタがイニシャライズされる。最後に所望の
チャンネルがイネーブルされる。
2つのマンチェスタ受信器のDMAチャンネルは本実施
例では増加していく16ビットアドレスポインタカウンタ
を有する。ワードカウントレジスタを使用することはで
きない。しかし勿論別の実施例でワードカウントレジス
タを使用することは可能である。従って上記実施例にお
いては受信器は受信器チャンネルがディスエーブルされ
るまで連続的にデータを隣接するロケーションに記憶し
つづけることになる。
本発明においてはDMAを介して受信器により転送され
るワード数を制御するのにロックステップモードが有用
である(第15図の書込デコード9及び読取デコード4の
ビット7及び8を参照)。状態ワード(第15図読取デコ
ード2を参照)において受信器チャンネルの状態を決定
するのに受信器当り3つのフラグが使用可能である。RX
1及びRX2RDYはワードがデコードされていて転送準備が
できていることを示す。この信号は優先順位ロジックに
対する要求として作用する。RX1BSY及びRX2BSYは受信器
Xが目下ワードデコードのために使用中であることを示
す。この信号はいつ受信器のDMAチャンネルをディスエ
ーブルするか、あるはいつアドレスポインタを変化させ
るかを決定するのに有用である。RX1 BKL VLD及びRX2 B
LK VLDはそれまでに受信した全てのデータがパリティー
もマンチェスタエラーも有していないとき真になる。こ
のビットはCPU1が受信器のバッファを読取ると、あるい
は新しい受信器アドレスポインタが書かれるとクリアさ
れる。
このように本実施例に設けられたロックステップモー
ドはリダンダートなチャンネルとやや同期した状態に維
持する手段を提供する(第15図書込デコード9のビット
6及び7を参照)。このモードでは送信器と受信器のDM
Aサイクルは相互に織りこめれている。そこでロード送
信器DMAサイクルの後にはRX×RDYフラグに依存しTX×EM
P及びXMTR×WC>0フラグとは独立な記憶受信器DMAサイ
クルが続く。同様に記憶受信器サイクルの後にはTX×EM
P及びXMTR×WC>0フラグに依存しRCV×RDYフラグと独
立なロード送信器DMAサイクルが続く、各々の送信器ワ
ードカウントレジスタをロードすると送信器DMAチャン
ネルはイネーブルされ受信器の要求はブロックされる。
リンク対1及び2を書込デコードを介してロックステッ
プモードに独立に加えてもよい。ロックステップイネー
ブルビットはイネーブル読取において読取られる。
リンク対はまた自己検査ラップアラウンドモードで独
立に加えてもよい。このモードでは送信器出力は受信器
入力へ向けられ外部マンチェスタの出力はディスエーブ
ルされる。ラップアラウンドモードイネーブルビットは
イネーブル読取において読取らる。システは電源投入に
よって自動的に自己検索モードにはならない。
マスク可能割込み 各データハブは第9図に示す開いた外部ドレイン割込
線720(INTR)を有する。このラインは以下の8つの割
込条件のどの組合わせにも応答するようにプログラムさ
れる。
1.TX1バッファが空の場合に割込む。
2.TX2バッファが空の場合に割込む。
3.RCV1でワードが準備完了している場合割込む。
4.RCV1でワードが準備完了している場合割込む。
5.TX1 DNA ブロック転送がなされた場合に割込む。
6.TX2 DMA ブロック転送がなされた場合に割込む。
7.DMAブロック移動がなされた場合に割込む。
8.メイルボックスデータが得られる場合に割込む。
これら全ての条件は書込デコード命令9の上位バイト
(第15図参照)によりマスク可能である。マスクレジス
タ及び全ての割込条件は状態読取(第15図読取デコード
4を参照)において読取可能である。
16ビットワードがサブシステム#2によりDMA1にメイ
ルボックスレジスタ(MAIL)721に書込まれる。このデ
ータはライン447上のCPURW及びライン722上のCTRL信号
がローである場合LUDSBの立上り縁でメイボックスレジ
スタ内の配送される。書込まれた際MBX DTA AVLBフラグ
が読取デコード2のビット1にセットされメイルボック
スデータが使用可能なことを示す。このビットはサブシ
ステム1がこのメイルボックスデータを多重化器386及
びデータバス350を介して読取るとクリアされる。
サブシステム#1はまたメイルをサブシステム#2へ
送る。デコードユニット724は書込デコード命令9のビ
ット16をデコードして内部11ビットラッチへ書込む。こ
のラッチはサブシステム#2バス上で読取可能である。
読取デコード命令の上位6ビットはハブ内の状態情報よ
りなる。サブシステム#1へ書込まれるとMXB DTA AVLB
フラグが読取デコード2のビット8にセットされる(第
15図状態ワード読取を参照)。このフラグはサブシステ
ム#2が多重書器454を介してメイルボックスを読む際
にクリアされる。
またサブシステム#1がサブシステム#2の64Kアド
レススペースの任意の場所のデータワードを間接的にDM
Aできるオプションを設けてもよい。16ビットデータワ
ードをサブシステム#2へ送るにはサブシステム#1は
まずサブシステム#2のポインタ(第15図書込デコード
命令に参照)をセットアップして一のワードの転送先ア
ドレスを指定する。サブシステ#1は次いでデータをハ
ブに書込み、ハブはサブシステム#2へのデータのDMA
転送を開始する。これはブロック転送DMAチャンネルが
イネーブルされている間は使えない。
なお本発明の技術思想の範囲内で様々な変形,変更が
可能である。
発明の効果 本発明は信号プロセッサ間のデータ転送を高い効率で
実行するデータハブを提供する。データバスはマスタCP
Uから低い優先順位のデータ転送命令を受け、またかか
る低い優先順位のデータをプロセッサ間でデータソース
あるいは転送先に著しいオーバヘッド負担を課すること
なく転送することを可能にする。ハブはさらに中位の優
先順位のデータ転送を非同期的に受取り、受取ったデー
タを記憶しまたこれを他の低い優先順位の転送がなされ
る前に転送先へ転送することが可能である。ハブはさら
に中位及び低い優先順位の転送が実行される前にハブに
よって実行される高い優先順位の転送要求を非同期的に
受けることができる。このハブは信号プロセッサを結合
する中枢的要素として使われる。
【図面の簡単な説明】
第1A図及び第1B図は夫々中枢的構成要素として使われる
本発明による複数のモジュール式複数ポートデータハブ
を有する分散プロセッサシステムを示す図、第2図は各
々2つのデータハブを使用するように設計された一対の
リダンダントなシステムを示す図、第3図は各サブシス
テム内に2つのデータハブを使用しているリダンダント
なシステムを示す図、第4図は本発明によるモジュール
式複数ポートデータハブを示す概略的ブロック図、第5
図は複数の並列及び直列チャンネル間でデータ転送を行
なえる本発明による複数ポートデータハブを示す概略的
ブロック図、第6A図及び第6B図は夫々2つのサブシステ
ムをインターフェースする2つのポートのみを有する本
発明による複数ポートデータハブの概略的ブロック図、
第7A図及び第7B図は夫々第6図の複数ポートデータハブ
内で実行されるステップを示す2つのフローチャート、
第8図は典型的なサブシステムCPU内で実行されるステ
ップと本発明による複数ポートデータハブで実行される
ステップとを同時に示すフローチャート、第9A図及び第
9B図は夫々本発明によるモジュール式複数ポートデータ
ハブの一実施例を示す概略的ブロック図、第10図は第9
図のハブを使った直列伝送の典型的な波形を示すタイミ
ング図、第11図はマンチェスタ送信器の転送の際第9図
のデータハブ内で生じる一連の事象のタイミング図、第
12図は第9図のサブシステム#1及び#2内のCPU間で
データ転送を行なう際のタイミング関係を1ワードブロ
ック転送の場合について示す波形図、第13図は第9図サ
ブシステム#1からサブシステム#2へのデータ転送に
関与する信号のいくつかのタイミング関係を示す図、第
14図は第9図サブシステム#1からサブシステム#2へ
の1ワードブロック転送のタイミングを示す図、また第
15A及び第15B図はそれぞれ第9図のデータハブはワード
の定義を下位及び上位バイトについて示す図である。 10,26,28,30,32,102,106……データハブ、12……データ
ソース/転送ユニット、14,34,36,38,40,42,44,48,50,5
2,86,88……リンク、20,22,24,80,82,84,90,92,120,12
2,370,372……システム、56,58,60,62,64,66,102,104,1
24,126,350,352,354……バス、68,70,72,74,76,78……
装置、94,96,128,130……CPU.98,100,132,134,208,210
……メモリユニット、106,108,110,112,114,116,140,14
2,144,146,333,335,350,352,360,362,364,366,370,386,
388,390,397,402,410,418,422,434,438,440,447,448,45
2,460,466,722……ライン、136,138……チャンネル、14
8,150……受信部、152,154……送信部、156,158,160,16
2……ワードカウントレジスタ、164,166,168,170,196,1
98,204,206……バッファレジスタ、172,174,176,178,19
2,194……アドレスレジスタ、180,182,200,202……フリ
ップフロップ、184,186……メモリアドレスレジスタ、1
88,382……制御ユニット、190,408……状態レジスタ、2
00,202,206,208,212,214,216,218,220,224,226,228,23
2,236,238,240,242,244,246,248,250,300,302,304,306,
308,310,312,314,316,318,320,326,328……ステップ、2
04,210,230,322……ループ、210……メモリスペース、3
68……RTI、374,378……送信器、376,380……受信器、3
81,382,430,456,470,721……レジスタ、386,416,454…
…多重化器、388,390,400,406,412,414,416,418,420,42
4,432,433,437,442,446,448,464,480,482,484,490,491,
493,500,502,504,506,700,702,704,706,708,710,712…
…波形、450,472……ラッチ、466……データ確認信号、
724……デコードユニット。
フロントページの続き (72)発明者 グレゴリー アラン ポータノバ アメリカ合衆国 コネティカット 06082 エンフィールド アーバー ロ ード 50番地 (56)参考文献 特開 昭53−33555(JP,A) 特開 昭59−11053(JP,A)

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】各々が個々に制御信号線を介して及び並列
    アドレス/データ信号線を介して個々のポートでハブに
    接続された複数のデータソース/転送先ユニット間のデ
    ータ流れを制御するデータハブであって、該データハブ
    はマスタソース/転送先ユニットから供給される少なく
    とも一対のアドレスポインタ入力制御信号ワード、ワー
    ド計数入力制御信号ワード、及びチャンネルイネーブル
    入力制御信号ワードに応答して、上記入力制御信号ワー
    ドは上記ハブによってなされるソースとしてのデータソ
    ース/転送先ユニット内の一又はそれ以上のメモリ位置
    からの一又はそれ以上の予定されたデータ信号ワード転
    送を示し、上記ソースとしてのデータソース/転送先ユ
    ニットはチャンネルイネーブル入力制御信号ワードによ
    って上記データハブにおいてイネーブルとされるチャン
    ネルにおけるチャンネルソースユニットとして使用さ
    れ、上記一又はそれ以上の予定されたデータ転送は上記
    ソースとしてのソース/転送先ユニットから転送先ユニ
    ットとして使用される転送先としてのイネーブルとされ
    たチャンネルデータソース/転送先ユニット内の一又は
    それ以上のメモリ位置へ上記データハブによってなさ
    れ、上記一又はそれ以上のチャンネルソースユニットメ
    モリ位置の第1のものはソースアドレスポインタ入力制
    御信号ワードによって示され残りのものは上記ワード計
    数に等しいいくつかの連続する上記ソースアドレスポイ
    ンタ入力制御信号ワードの増加又は減少によって示さ
    れ、上記一又はそれ以上の転送先メモリ位置の第1のも
    はデータ転送先アドレスポインタ入力制御信号ワードに
    よって示され残りのものは上記ワード計数に等しいいく
    つかの連続する上記転送先アドレスポインタ入力制御信
    号ワードの増加又は減少によって示され、上記ハブは更
    に、上記転送先としてのイネーブルとされたチャンネル
    データソース/転送先への後の転送のために上記ソース
    としてのイネーブルとされたチャンネルソース/転送先
    から転送されたデータを一時的に記憶する記憶手段より
    なり、上記データハブは: 上記ソース及び転送先アドレスポインタ入力信号ワー
    ド、上記ワード計数及び上記チャンネルイネーブル入力
    制御信号ワードに応答して上記イネーブルにされたデー
    タソース/転送先ユニットに対してソースデース転送要
    求出力信号を供給し次にその代りに上記ソースとしての
    イネーブルにされたデータソース/転送先ユニットから
    ソースバス許可信号を受け取る制御手段であって、該制
    御手段は上記ソースバス許可信号に応答して上記ソース
    アドレスポインタ入力制御信号ワードを出力信号として
    上記ソースとしてのイネーブルにされたデータソース/
    転送先ユニットに供給し、上記記憶手段は同時にソース
    データ信号ワードを上記ソースアドレスポインタ出力制
    御信号ワードによって示されるような上記ソース/転送
    先ユニット内のメモリ位置からソースデータ信号ワード
    を受けとって一時的に記憶し、上記制御手段はそこで上
    記転送先としてのデータソース/転送先ユニットに転送
    先データ転送出力要求信号を供給し次にその代りに上記
    転送先としてのデータソース/転送先ユニットから転送
    先バス許可信号を受け取り、上記制御手段は上記転送先
    バス許可信号に応答して前記転送先アドレスポインタ入
    力制御信号ワードを転送先アドレスポインタ出力制御信
    号ワードとして上記転送先としてのデータソース/転送
    先ユニットに供給し同時に上記記録手段から上記転送先
    アドレスポインタ出力制御信号によって示されるような
    上記転送先としてのソース/転送先ユニット内のメモリ
    位置への上記データ信号ワードの転送を行い、もって上
    記ソースとしてのデータソース/転送先と上記転送先と
    してのデータソース/転送先とでメモリを共有すること
    なくデータ転送がなされ、上記制御手段は上記ソース及
    び転送先アドレスポインタ出力信号を増加又は減少させ
    上記ワード計数信号を減少させ上記ワード計数信号がゼ
    ロに等しくなるまで上記ソースとしてのイネーブルにさ
    れたチャンネルのデータソース/転送先ユニットから上
    記転送先としてのデータソース/転送先ユニットへのデ
    ータの転送を周期的に繰り返す、制御手段を特徴とする
    データハブ。
  2. 【請求項2】上記制御手段は更に上記記憶手段への非同
    期入来直接直列データ信号ワード転送に及び上記複数の
    データソース/転送先ユニットの内の選択された一つか
    らの非同期直立データ転送要求信号ワードに応答し、上
    記制御手段はそれに応答して予定されたデータ信号ワー
    ド転送を低位優先転送カテゴリに分類し非同期入来直接
    直列データ信号ワード転送を中位優先転送カテゴリに分
    類し非同期直列データ転送要求信号ワードを上位優先転
    送カテゴリに分類し、上記制御手段は上記優先カテゴリ
    を保ちつつ優先付けされたデータ転送要求出力信号ワー
    ドを供給し、上記制御手段は上位優先データソース/転
    送先からの上記上位優先非同期直列データ転送要求信号
    ワードに応答してイネーブル信号を供給し、該イネーブ
    ル信号は上記上位優先データソース/転送先が直ちに他
    のデータソース/転送先から/へデータ信号を伝送/受
    信することを許容し、上記制御手段は又上記記憶手段へ
    の上記中位優先非同期入来直接直列データ信号ワード転
    送に応答して上位優先非同期直列データ転送要求信号ワ
    ードによって表現される全ての転送が完了した後に上記
    中位優先非同期入来直線直列データ信号ワード転送を行
    い、それは次にその代りとして上記中位優先データソー
    ス/転送先ユニットから転送先バス許可信号を受けるた
    めに転送先バス要求信号を転送先ユニットとして使用さ
    れる転送先としての中位優先データソース/転送先ユニ
    ットへ供給することによってなされ、上記制御手段は上
    記転送先バス許可信号が供給された後に上記記憶手段か
    ら上記転送先としての中位優先ソース/転送先ユニット
    内のメモリアドレスへのデータ信号転送を行い、上記制
    御手段は上記低位優先の予定されたデータ信号ワード転
    送に応答し、上位優先非同期直列データ転送要求信号ワ
    ードに関する全ての転送及び全ての中位優先データ信号
    ワード転送が完了した後に一又はそれ以上の低位優先デ
    ータ信号ワード転送を行うこと を更に特徴とする請求項1に記載のデータハブ。
JP61154955A 1985-07-01 1986-07-01 データハブ Expired - Lifetime JP2593146B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US750923 1985-07-01
US06/750,923 US4724520A (en) 1985-07-01 1985-07-01 Modular multiport data hub

Publications (2)

Publication Number Publication Date
JPS6270964A JPS6270964A (ja) 1987-04-01
JP2593146B2 true JP2593146B2 (ja) 1997-03-26

Family

ID=25019687

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61154955A Expired - Lifetime JP2593146B2 (ja) 1985-07-01 1986-07-01 データハブ

Country Status (4)

Country Link
US (1) US4724520A (ja)
EP (1) EP0207876B1 (ja)
JP (1) JP2593146B2 (ja)
DE (2) DE3689087T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7328232B1 (en) 2000-10-18 2008-02-05 Beptech Inc. Distributed multiprocessing system

Families Citing this family (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4766535A (en) * 1985-12-20 1988-08-23 International Business Machines Corporation High-performance multiple port memory
JPS63255759A (ja) * 1987-04-14 1988-10-24 Mitsubishi Electric Corp 制御システム
JPS63255760A (ja) * 1987-04-14 1988-10-24 Mitsubishi Electric Corp 制御システム
US4945473A (en) * 1987-05-15 1990-07-31 Bull Hn Information Systems Inc. Communications controller interface
US5089953A (en) * 1987-12-28 1992-02-18 Sundstrand Corporation Control and arbitration unit
US5629907A (en) * 1991-06-18 1997-05-13 Dallas Semiconductor Corporation Low power timekeeping system
US5544078A (en) * 1988-06-17 1996-08-06 Dallas Semiconductor Corporation Timekeeping comparison circuitry and dual storage memory cells to detect alarms
US5197142A (en) * 1988-06-17 1993-03-23 Dallas Semiconductor Corp. Memory arbitration between timekeeping circuitry and general purpose computer
US5179669A (en) * 1988-08-22 1993-01-12 At&T Bell Laboratories Multiprocessor interconnection and access arbitration arrangement
GB2223867A (en) * 1988-09-09 1990-04-18 Univ City Multiprocessor data processing system
SG49752A1 (en) * 1990-01-05 1998-06-15 Sun Microsystems Inc High speed active bus
JPH05205005A (ja) * 1990-03-30 1993-08-13 Internatl Business Mach Corp <Ibm> ロジック・シミュレーション・マシン用ホスト・インタフェース
US5099418A (en) * 1990-06-14 1992-03-24 Hughes Aircraft Company Distributed data driven process
AU652371B2 (en) * 1990-06-29 1994-08-25 Fujitsu Limited Data transfer system
US5421024A (en) * 1991-04-30 1995-05-30 Hewlett-Packard Company Detection of a relative location of a network device using a multicast packet processed only by hubs
US5293495A (en) * 1992-06-29 1994-03-08 Xerox Corporation Method of addressing devices and transferring data on a bus
US5528463A (en) * 1993-07-16 1996-06-18 Dallas Semiconductor Corp. Low profile sockets and modules for surface mountable applications
US5579206A (en) * 1993-07-16 1996-11-26 Dallas Semiconductor Corporation Enhanced low profile sockets and module systems
WO1995034153A1 (en) 1994-06-08 1995-12-14 Hughes Aircraft Company Apparatus and method for hybrid network access
US6701370B1 (en) * 1994-06-08 2004-03-02 Hughes Electronics Corporation Network system with TCP/IP protocol spoofing
US6473793B1 (en) * 1994-06-08 2002-10-29 Hughes Electronics Corporation Method and apparatus for selectively allocating and enforcing bandwidth usage requirements on network users
JP2644185B2 (ja) * 1994-06-27 1997-08-25 甲府日本電気株式会社 データ処理装置
US5923847A (en) * 1996-07-02 1999-07-13 Sun Microsystems, Inc. Split-SMP computer system configured to operate in a protected mode having repeater which inhibits transaction to local address partiton
EP0817094B1 (en) * 1996-07-02 2002-10-09 Sun Microsystems, Inc. A split-SMP computer system
US6078875A (en) * 1997-08-20 2000-06-20 Semtronics Corporation Automated auditing system
US6052053A (en) * 1997-10-22 2000-04-18 Semtronics Corporation Continuous monitoring system
US6934255B1 (en) * 1999-02-02 2005-08-23 Packeteer, Inc. Internet over satellite apparatus
US6594713B1 (en) * 1999-09-10 2003-07-15 Texas Instruments Incorporated Hub interface unit and application unit interfaces for expanded direct memory access processor
US6481532B1 (en) 2000-03-30 2002-11-19 Mitsubishi Denki Kabushiki Kaisha Communication device for elevator
US6791555B1 (en) * 2000-06-23 2004-09-14 Micron Technology, Inc. Apparatus and method for distributed memory control in a graphics processing system
US7133972B2 (en) * 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
US7200024B2 (en) * 2002-08-02 2007-04-03 Micron Technology, Inc. System and method for optically interconnecting memory devices
US7117316B2 (en) * 2002-08-05 2006-10-03 Micron Technology, Inc. Memory hub and access method having internal row caching
US7254331B2 (en) * 2002-08-09 2007-08-07 Micron Technology, Inc. System and method for multiple bit optical data transmission in memory systems
US7149874B2 (en) * 2002-08-16 2006-12-12 Micron Technology, Inc. Memory hub bypass circuit and method
US6820181B2 (en) 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US7836252B2 (en) * 2002-08-29 2010-11-16 Micron Technology, Inc. System and method for optimizing interconnections of memory devices in a multichip module
US7343398B1 (en) 2002-09-04 2008-03-11 Packeteer, Inc. Methods, apparatuses and systems for transparently intermediating network traffic over connection-based authentication protocols
US7102907B2 (en) * 2002-09-09 2006-09-05 Micron Technology, Inc. Wavelength division multiplexed memory module, memory system and method
US7245145B2 (en) * 2003-06-11 2007-07-17 Micron Technology, Inc. Memory module and method having improved signal routing topology
US7120727B2 (en) * 2003-06-19 2006-10-10 Micron Technology, Inc. Reconfigurable memory module and method
US7107415B2 (en) * 2003-06-20 2006-09-12 Micron Technology, Inc. Posted write buffers and methods of posting write requests in memory modules
US7260685B2 (en) 2003-06-20 2007-08-21 Micron Technology, Inc. Memory hub and access method having internal prefetch buffers
US7428644B2 (en) * 2003-06-20 2008-09-23 Micron Technology, Inc. System and method for selective memory module power management
US7132953B2 (en) * 2003-06-26 2006-11-07 Lear Corporation Spring sensor assembly for a vehicle seat cushion
US7389364B2 (en) * 2003-07-22 2008-06-17 Micron Technology, Inc. Apparatus and method for direct memory access in a hub-based memory system
US7210059B2 (en) 2003-08-19 2007-04-24 Micron Technology, Inc. System and method for on-board diagnostics of memory modules
US7133991B2 (en) * 2003-08-20 2006-11-07 Micron Technology, Inc. Method and system for capturing and bypassing memory transactions in a hub-based memory system
US7136958B2 (en) * 2003-08-28 2006-11-14 Micron Technology, Inc. Multiple processor system and method including multiple memory hub modules
US20050050237A1 (en) * 2003-08-28 2005-03-03 Jeddeloh Joseph M. Memory module and method having on-board data search capabilities and processor-based system using such memory modules
US7310752B2 (en) * 2003-09-12 2007-12-18 Micron Technology, Inc. System and method for on-board timing margin testing of memory modules
US7194593B2 (en) * 2003-09-18 2007-03-20 Micron Technology, Inc. Memory hub with integrated non-volatile memory
US7120743B2 (en) * 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
US7234070B2 (en) * 2003-10-27 2007-06-19 Micron Technology, Inc. System and method for using a learning sequence to establish communications on a high-speed nonsynchronous interface in the absence of clock forwarding
US7330992B2 (en) 2003-12-29 2008-02-12 Micron Technology, Inc. System and method for read synchronization of memory modules
US7188219B2 (en) * 2004-01-30 2007-03-06 Micron Technology, Inc. Buffer control system and method for a memory system having outstanding read and write request buffers
US7412574B2 (en) 2004-02-05 2008-08-12 Micron Technology, Inc. System and method for arbitration of memory responses in a hub-based memory system
US7181584B2 (en) * 2004-02-05 2007-02-20 Micron Technology, Inc. Dynamic command and/or address mirroring system and method for memory modules
US7788451B2 (en) 2004-02-05 2010-08-31 Micron Technology, Inc. Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system
US7366864B2 (en) 2004-03-08 2008-04-29 Micron Technology, Inc. Memory hub architecture having programmable lane widths
US7257683B2 (en) * 2004-03-24 2007-08-14 Micron Technology, Inc. Memory arbitration system and method having an arbitration packet protocol
US7120723B2 (en) * 2004-03-25 2006-10-10 Micron Technology, Inc. System and method for memory hub-based expansion bus
US7447240B2 (en) * 2004-03-29 2008-11-04 Micron Technology, Inc. Method and system for synchronizing communications links in a hub-based memory system
US7213082B2 (en) * 2004-03-29 2007-05-01 Micron Technology, Inc. Memory hub and method for providing memory sequencing hints
US6980042B2 (en) * 2004-04-05 2005-12-27 Micron Technology, Inc. Delay line synchronizer apparatus and method
US7590797B2 (en) * 2004-04-08 2009-09-15 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
US7162567B2 (en) * 2004-05-14 2007-01-09 Micron Technology, Inc. Memory hub and method for memory sequencing
US7222213B2 (en) * 2004-05-17 2007-05-22 Micron Technology, Inc. System and method for communicating the synchronization status of memory modules during initialization of the memory modules
US7363419B2 (en) * 2004-05-28 2008-04-22 Micron Technology, Inc. Method and system for terminating write commands in a hub-based memory system
US7310748B2 (en) 2004-06-04 2007-12-18 Micron Technology, Inc. Memory hub tester interface and method for use thereof
US7519788B2 (en) * 2004-06-04 2009-04-14 Micron Technology, Inc. System and method for an asynchronous data buffer having buffer write and read pointers
US7392331B2 (en) 2004-08-31 2008-06-24 Micron Technology, Inc. System and method for transmitting data packets in a computer system having a memory hub architecture
US20060168407A1 (en) * 2005-01-26 2006-07-27 Micron Technology, Inc. Memory hub system and method having large virtual page size
US20100125606A1 (en) * 2008-11-19 2010-05-20 General Electric Company Data structures and methods of forming the same
US20100124227A1 (en) * 2008-11-19 2010-05-20 General Electric Company Systems and methods for electronically routing data
US7814255B1 (en) * 2009-04-14 2010-10-12 Oracle America, Inc. Multi-interface multi-channel modular hot plug I/O expansion
CN111149166B (zh) * 2017-07-30 2024-01-09 纽罗布拉德有限公司 基于存储器的分布式处理器架构

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1055645B (it) * 1975-10-24 1982-01-11 Elsag Multielaboratore elettronico associativo per elabobazioni multiple contemporanee di dati in tempo reale
JPS5333555A (en) * 1976-09-10 1978-03-29 Hitachi Ltd Data transfer system
US4275440A (en) * 1978-10-02 1981-06-23 International Business Machines Corporation I/O Interrupt sequencing for real time and burst mode devices
US4253144A (en) * 1978-12-21 1981-02-24 Burroughs Corporation Multi-processor communication network
US4354225A (en) * 1979-10-11 1982-10-12 Nanodata Computer Corporation Intelligent main store for data processing systems
US4543627A (en) * 1981-12-14 1985-09-24 At&T Bell Laboratories Internal communication arrangement for a multiprocessor system
WO1984000221A1 (en) * 1982-06-28 1984-01-19 Singer Co A high performance multi-processor system
DE3241376A1 (de) * 1982-11-09 1984-05-10 Siemens AG, 1000 Berlin und 8000 München Dma-steuereinrichtung zur uebertragung von daten zwischen einem datensender und einem datenempfaenger

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7328232B1 (en) 2000-10-18 2008-02-05 Beptech Inc. Distributed multiprocessing system
JP2008269651A (ja) * 2000-10-18 2008-11-06 Beptech Inc 分散型多重処理システム

Also Published As

Publication number Publication date
EP0207876B1 (en) 1993-09-29
EP0207876A3 (en) 1989-07-12
DE3689087D1 (de) 1993-11-04
DE207876T1 (de) 1987-04-09
JPS6270964A (ja) 1987-04-01
US4724520A (en) 1988-02-09
EP0207876A2 (en) 1987-01-07
DE3689087T2 (de) 1994-02-03

Similar Documents

Publication Publication Date Title
JP2593146B2 (ja) データハブ
EP0451938B1 (en) Multiple cluster signal processor
US4470114A (en) High speed interconnection network for a cluster of processors
US4821170A (en) Input/output system for multiprocessors
US4490788A (en) Well-logging data processing system having segmented serial processor-to-peripheral data links
US4991079A (en) Real-time data processing system
US5799207A (en) Non-blocking peripheral access architecture having a register configure to indicate a path selection for data transfer between a master, memory, and an I/O device
US4797815A (en) Interleaved synchronous bus access protocol for a shared memory multi-processor system
US6070214A (en) Serially linked bus bridge for expanding access over a first bus to a second bus
EP1422626B1 (en) Multi-core communications module, data communications system incorporating a multi-core communications module, and data communications process
JPH04230557A (ja) 直接メモリアクセス・コントローラ
EP0141742A2 (en) Buffer system for input/output portion of digital data processing system
US20080046619A1 (en) Simultaneous Transmissions Between Multiple Master Buses and Multiple Slave Buses
JPH0426740B2 (ja)
JPS6218949B2 (ja)
JPH02310664A (ja) 共有メモリを用いた通信方式
US20020174165A1 (en) Cluster system, computer and program
US5255369A (en) Multiprocessor system with reflective memory data transfer device
JPH04312160A (ja) マルチプロセッサシステムおよびそのメッセージ送受信制御装置
EP0293860B1 (en) Peripheral controller and adapter interface
EP1653370B1 (en) Bus controller
KR20020008955A (ko) 버스 시스템 및 그 실행 순서 조정방법
EP0444711A2 (en) Bus control system in a multi-processor system
JPH11212939A (ja) 共通バスによって相互接続されたプロセッサを有するデータプロセッサユニット間でデータを交換するためのシステム
GB2144892A (en) Multi-processor office system complex