JPH06509896A - スケーラブル・コプロセッサ - Google Patents

スケーラブル・コプロセッサ

Info

Publication number
JPH06509896A
JPH06509896A JP5520052A JP52005293A JPH06509896A JP H06509896 A JPH06509896 A JP H06509896A JP 5520052 A JP5520052 A JP 5520052A JP 52005293 A JP52005293 A JP 52005293A JP H06509896 A JPH06509896 A JP H06509896A
Authority
JP
Japan
Prior art keywords
computer system
coprocessor
computer
bus
register file
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.)
Withdrawn
Application number
JP5520052A
Other languages
English (en)
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 JPH06509896A publication Critical patent/JPH06509896A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • G06F13/287Multiplexed DMA

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Advance Control (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 発明の名称ニスケーラプル・コプロセッサ(SCALABLE C0PROCE SSOR)上のり用 本発明は計算機システムの分野に関し、より具体的には中央処理装置と人出力コ ントローラやメモリのようなシステム資源とのコミュニケーションを向上させる ための技術に関する。
先Jdえ術− 中央処理装置(CPU)がシステム資源2と通信する従来からの方法は第1図に 示す通りである。前記コンピュータ・システムはrmJ個から成るシステム資源 2の集合体で構成されている。前記システム資源2はメモリと入出力コントロー ラから成り立ち、その入出力コントローラはさらに入出力装置に接続されている 。前記システムは計算タスクを行ない、格納プログラムを実行し、さらにシステ ム資源2と通信するためのCPUを1つ以上備えている。第1図に示すように、 rnJ個から成るCPUの集合体で構成されており、その全てがシステム・バス 4を介して相互に接続されている。さらに前記システム・バス4は、典型的には 、並列データ・ライン及び並列アドレス・ラインの集合体で構成されている。例 えば、システム・バス4はともに32本の並列データ・ライン及び並列アドレス ・ラインから成っていることがある。2進算術演算を使うと、これは4ギガバイ トのデータをランダムにアドレス指定するのに十分である。バス・マスタ34は システム・バス4に接続され、そのバスのアクセスを調整する。
1個のDMAコントローラ3はそれぞれ別のシステム資源2に結合している。D MAコントローラ3は全てシステム・バス4に接続されている。DMAコントロ ーラ3にはそれぞれにバス・アービタ5、ソース・アドレス・ポインタ6、宛先 アドレス・ポインタ7、さらにバイト・カウンタ8が搭載されている。バス・ア ービタ5はその他のDMAコントローラ3全てに同じく搭載されている論理の集 合体である。バス・アービタ5はそのシステム資源2に結合する優先順位の情報 を格納し、バス・マスタ34に対しCPUIの1個がそれに結合するシステム資 源2を励起するよう指示する。バス・マスタ34は、次にどのDMAコントロー ラ3に作動許可を出すかを決定する。一度に作動可能にできるのは1個のDMA コントローラ3だけである。
1個のCPU1が1個のシステム資源2と通信する方法は、典型的には、CPU 1が結合するDMAコントローラ3に3つの情報を入れることである。その3つ の情報とは、1)ソース・アドレス(通信の対象であるデータが存在するアドレ ス)がソース・アドレス・ポインタ6に格納されている、2)宛先(データが送 られる先の場所)のアドレスがアドレス・ポインタに格納されている、3)移動 させたν)バイト数がバイト・カウンタ8に格納されている、との情報である。
動作中に於て、バイト・カウンタ8はその中に格納された数がO(ゼロ)になる まで1処理(クロック)サイクル中に1回の割合でカウントを減少させていく。
0(ゼロ)の時点でデータの全てが既に移動されたことがわかる。CPU1がデ ータの移動の他に、さらにそのデータに対して算術、論理またはシフト演算とい った演算も行なl/またければ、こうした演算のタスクは動作中にcputによ って行なわれる。
本明細書の後章で説明するように、本発明はシステム資源2との通信を処理する ためのはるかに効率的な手段を提供するものである。
エクステンデッド・システム資源(ExtendedSystems)のデータ ・シート(発行日不明) 、I”RA■DCorpocessorJには、成る デバイスについて、本発明による排他的論理和(XOR)パイプライン30同様 、RAID環境においてはパリティ計算からCPUを開放するとの記述がある。
しかしながら、このデバイスは1度にデータの1ブロツクだけしか処理できない 。これに対し、本発明では複数のブロックのデータを同時に処理することができ る。
発JjJLL 本発明は、システム資源(2)の集合体内に格納されたデータに対して演算を行 なう機能を有する1個以上の中央処理装置(CPU)(1)から成るコンピュー タ・システムである。スケーラプル・コプロセッサ(9)はシステム・バス(4 )を通して前記CPU(1)とシステム資源(2)に接続されている。前記スケ ーラプル・コプロセッサ(9)内でCPU(])に接続するのは、2つ以上のビ ンにコンパートメント化され、その各々のビンが1つの仮想のコプロセッサ・チ ャネルに相当する、単一のレジスタ・ファイル(1o)である。前記レジスタ・ ファイル(10)に接続するのは前記システム資源(2)に対して演算を行なう ための単一の実コプロセッサ(6,7,8,13,33)である。レジスタ・フ ァイル(10)に接続するのは、前記の仮想コプロセッサ・チャネルの集合体間 に前記の実コプロセッサの作動状態サイクルを割り当てるための手段(11)で ある。
本発明が先行技術に比べ優利な点は主に以下の通りである。
1、 スケーラプル・コプロセッサがただ1個しか存在しないから、実チャネル ・ハードウェア素子(先行技術で5.6.7及び8などの)数を増やさずに仮想 チャネル数を上げる(基準化する)ことが可能である。
2、 ルーティング資源がより少ないということは、言い換えれば、全ての仮想 チャネル間にまたがるルーティングが一貫性をもち且つ高速であり、さらにシス テム・クロックの速度がより速いことである。
3、 システム・バス(4)の使用がさらに一層効率的になる。それはなぜなら ば、公平性が組み込まれているために、仮想チャネルが時間分割多重モードで作 動するからである。
4 どのチャネルにどれだけの時間、作動アクセスを許可するかを調停するため の手段(11)はプログラムに組むことが可能である。
5、 むやみにタイミングを制約することなく、ホス)CPU(1)によってポ インタ・メモリ・アレイ (レジスタ・ファイル10)を動的に更新する。
6、 スキイタ/ギャザ(分散/収集)の演算(データが多数のブロック間に断 片化されている場合、読み取りと書き込みのそれぞれ)を行なうより一層効率的 な方法を提供する。それはなぜならば、スキイタ/ギャザは従来の方法と同じよ うに順次に実行されるのではなく、並列で行なわれるからである。
図面の簡単な説明 本発明の、詳細且つ具体的な目的並びに特徴については、添付図面の引例ととも に以下に掲げる発明明細書に全て開示しである。
第1図はCPtJ 1及びシステム資源2間の通信に関する従来からの先行技術 を表すブロック図である。
第2図は本発明によるスケーラプル・コプロセッサ9のブロック図である。
第3図は本発明によるスケーラプル・コプロセッサ9のステート・マシン(状態 機械)のブロック図である。
第4図は本発明によるガス・ペダル信号15における振幅対時間の関係を表すス ケッチである。
第5図は本発明によるフライ・パイ(通過)DMAコントローラ23の実施例の ブロック図である。
第6図は本発明によるRAIDコントローラ29の実施例のブロック図である。
本、明を−るためのベスト・モード 第2図は、本発明によるスケーラプル・コプロセッサ9の一般的な実施例のブロ ック図を示す。その環境は中央処理装置(CPU)1を1個以上備えたコンピュ ータ・システムである。各々のCPU1はシステム資源2の集合体に対して演算 を行なう機能をもつ何らかの能動処理素子である。
第2図はrnJ個のCPU1を示している。CPUIは同じシステム・バス4を 通して互いに接続している。例えば、システム・バス4は並列データ・ラインと 並列アドレス・ラインをそれぞれ32本づつもっていることがある。これは4ギ ガバイトのデータをランダムにアドレス指定するのに十分である。
本発明を使うことによって、各CPUIは複数のI10要求を同時に発すること が可能になる。例えば、1個のCPU1を数百のファイルを同時にめるファイル ・サーバにすることができる システム資源2も同様に同じシステム・バス4を通して互いに接続している。1 度に1つの演算だけしかシステム・バス4で行なうことはできない。システム資 源2は、典型的には、メモリと入出力コントローラで構成されており、さらに入 出力コントローラはディスク・ドライブ、テープ・ドライブ、CD ROM1ベ ルヌーイ(Bernoulli) ・ボックスなどの入出力デバイスと接続して いる。
前記コンピュータ・システムにおいて、スケーラプル・コプロセッサ9はただ1 個だけが必要である。従って、第1図に示すように、先行技術においては普通で あった同じデバイスやデータ・バスが複数で存在するということがなくなる。コ プロセッサ9は、より遅いCPUIのバンド幅ではなく、アプローチしているメ モリのバンド幅のスピード(例えば、組み込みの実施例においては66MPps )でシステム資源2と通信する。
スケーラプル・コプロセッサ9は、システム・バス4を通して(’PU1に接続 しており、レジスタ・ファイル101ステート・マシン11の集合体と、さらに 1個以上のアドレス・ポインタ(例えば、ソース・ポインタ6及び宛先アドレス ・ポインタ)、バイト・カウンタ8、バッファ13、及び論理演算装置(オプシ ョン)で構成された1個の実コプロセッサとから成り立っている。ポインタ6及 び7はレジスタやプログラマブル・カウンタのような記憶装置である。
レジスタ・ファイルIOは、コプロセッサ9のユーザが前もって設定を決定して おいた仮想コプロセッサのチャネル数に相当する任意数rp+IJに記憶域やビ ンをあらかじめコンパートメント化したランダム・アクセス・メモリ(RAM) のような記憶装置である。例えば、rp+IJはコンピュータ・システムに存在 していることが分かっているデータのブロック数に相当することがある。各々の ビンもしくはチャネルには少なくとも3つの情報、すなわち演算のソースとして 使われるはずのデータの開始アドレス、演算が実行された後のデータを送りたい 宛先の開始アドレス、そして演算の対象であるデータの大きさといった情報を格 納している。さらに、データに対して行ないたい算術、論理、あるいはシフトの 演算のタイプを示す情報をそのチャネルに格納することが可能である。
ステート・マシン11の集合体は、どのチャネルをどういった順序でどの位の時 間作動可能にするかを、ステート・マシン11内に格納されたプログラマブル調 停スキームに基づいて決定する。成る1本のチャネルが作動状態になると、格納 されているソース・アドレスがそのチャネルからポインタ・バス6を通して宛先 アドレス・ポインタ12に入れられ、その宛先アドレスはポインタ・バス12を 通して宛先アドレス・ポインタ7に入れられ、そしてバイト数がポインタ・バス 12を通してバイト・カウンタ8に入れられる。さらに、もし存在していれば、 格納されている算術、論理あるいはシフト命令がポインタ・バス12を通してオ プションの論理演算装置33に送り込まれる。
コプロセッサ9が従来型のクロック(本明細書には提示していない)によって通 常の動作中に於て、−例をあげれば66メガヘルツで、クロックされると、所望 の演算が実行される。ソース・データは、システム・バス4を通して、ソース・ アドレスを配置するソース・アドレス・ポインタ6によってアドレス指定される 。宛先アドレスも同様にシステム・バス4を通してポインタ7によってアクセス される。もしデータの移動だけでなく、そのデータに対して算術、論理またはシ フト演算を行ないたければ、論理演算装置33が呼び出される。最後に、バイト ・カウンタ8がサイクル毎に1度の割合でカウントを減少させていく。
典型的には、ステート・マシン11は作動許可によって各チャネルが有限数(ク ロック・サイクルの成る有限数に相当する)の演算を行なえるようにする。12 8サイクルが典型的な数である。この数はチャネルが指定されたタスクを完了す るのに十分であることもあり、またそうでないこともある。十分な場合は、バイ ト・カウンタ8は0(ゼロ)になるまでカウントの減少を続け、ステート・マシ ン11は制御を次のチャネルに渡す。そのサイクル数では不十分な場合は6.7 .8及び33の項目のステータスがバッファ13を経由してアップデート (更 新)・バス14を通り、さらにポインタ・バス12を通してレジスタ・ファイル 10に戻される。そのために、次にその特定のチャネルに作動許可が認められた 時には、割り込みの入ったところから再開することが可能である。CPU1の1 個が、更新された情報をアップデート・バス14を通してレジスタ・ファイル1 0に送り返すのと同時に、レジスタ・ファイル10内の別のチャネルを初期化し ようとすることもあるから、バッファ13は必要である。このように、バッファ 13は入って来る情報と出ていく情報の衝突が起きないようにする。
第3図はステート・マシン11の集合体をさらに詳しく説明したものである。1 番目のステート・マシンはプログラマブル・アービタ20で、それはランダム・ アクセス・メモリとそれに結合する複数の論理素子で構成されていることがある 。アービタ20は、どのチャネルに作動アクセスを与え、どの位の時間許可する かを調整するためのプログラマブル・スキームを格納する。前記プログラミング ・スケームはゲート・アレイ、EEPROM、フユーズ/アンチ・フユーズなど の使用を必要とすることがある。その調整スキームは、ラウンド・ロビン(順番 にチャネル間を一周したら、次にまた0(ゼロ)番目のチャネルから繰り返す動 作)や、優先順位く特定の優先バイトのフラグを立てたチャネルにのみ許可を与 えたり、またはフラグの立ったチャネルにフラグを立てていないチャネルより大 きな数の作動周期をり、えること)などの数多い技術のどれか一つであることが ある。
チャネル・ラインCHの集合体はプログラマブル・アービタ20に入力される。
これらのラインはレジスタ・ファイルlO(図に示されている通り)か、または システム資源2から出すことが可能である。これらのライン(i、それに結合す るチャネルがアクティブ(システム資源2&二対する演算を行ないたい)か否か を示すためにある。アービタ20の出力は、その時点で作動アクセスが許可され ているチャネルの番号を伝える1本のラインである。この信号はチャネル初期化 ・更新モデュー)しくchannelinitialize and upda te module)21 &こ送り込まれる。モデュール21の出力の−・つ がレジスタ・ファイル・アドレス・インデックスで、どのチャネルに作動許可が 与えられているかをレジスタ・ファイルIOに知らせる。このインデックスの長 さは、チャネル数によって変えることができる。例えば、8チヤネルあれば、こ のインデックスには3ビツトが必要である。
モデュール21の他の出力は、チャネル・レディ (作動準備完了)信号である 。この信号はガス・ペダル・モデュール22に送り込まれる。ガス・ペダル22 のコンポジット出力は方形波15で、その振幅対時間の関係は第4図に示す通り である。ガス・ペダル信号15がハイであれば、それはスロットル(作動可能) 周期18にあることを、すなわち、そのデータに対して実コプロセッサ6.7. 8及び33による演算の実行が目下進行中であることを示している。
ガス・ペダル信号15がローであるということは、仮想チャネルの作動が許可さ れていないアイドル周期19にあることを示しているが、コプロセッサ9ではな く、CPUIにシステム・バス4へのアクセスが許可されている。スロットル周 期18及びアイドル周期19の持続時間は可変で、前もってプログラムしておく ことができる。
アイドル周期19とスロットル周期18間の遷移はウェイクアップ(wakeu p+目覚まし)信号16と呼ばれ、アービタ20へ渡される。それによってアー ビタ20は許可チャネルの新たな指定を実行する。スロットル周期18からアイ ドル周期19への遷移はタイアト(tired:疲れた)信号17と呼ばれ、ア ービタ20に(どのチャネルも指定チャネルとして指定しないよう指令して)渡 される。タイアト信号17はまたチャネル初期化・更新モデュール21にも渡さ れ、それによってモデュール21はアイテムの33.6.7及び8にステータス をレジスタ・ファイルioに送り返すよう指示する。この情報は、次回その特定 のチャネルがステート・マシン11によって作動許可を与えられた時、次のスロ ットル周期18の開始ステータスになる。
第5図は本発明による具体的な実施例、すなわちフライ・パイ (通過)DMA コントローラ23を示したものである。ここに示すスケーラプル・コプロセッサ 9の実施例は、入出力コントローラ25のようなアドレス指定できないデバイス との組み合わせで使用される。こうしたデバイスはアドレス指定ができないがら 、ポインタ6.7の一つは一般的な実施例から削除することができる。従って、 単一の入出力アドレス・ポインタ24は、T10コントローラ25から読み出さ れ或いはコントローラに書き込まれるべきデータがメモリ26内のどこに格納さ れているかを示すために使われる。ポインタ24は、そのデータが読み出されま たは書き込まれるべき、メモリ26内の開始位置を指す。リクエスト(要求)・ ライン28とアクナレッジ(応答)・ライン27は別々にポインタ24を個々の T10コントローラ25と接続する。信号はT10コントローラ25によってリ クエスト・ライン28を通してアドレス・ポインタ24に送られ、それによって DMAコントローラ23に各バイト転送を開始するよう依頼する。同様に、信号 が、転送されるバイト毎に、ポインタ24がらアクナレッジ・ライン27を通し てT10コントローラ25に送られ、システム・バス4は読み出しまたは書き込 みのオペレーションを実行するためにアクセス可能であることを知らせる。バイ ト・カウンタ8はバイト転送毎にカウントを減少させる。こノプロセスは仮想チ ャネルのバイト数がゼロになるまで続けられ、ゼロになった時点で、もし必要な ら、それに結合しているCPU1に割り込みが発せられる。データは、コントロ ーラ23を経由しないで、直接メモリ26からシステム・バス4を通してT10 コントローラ25に移動する。これは、フロー・スルー(経由:中を通って流れ る)DMAコントローラと対照的なものとしての、フライ・バイ (通過:近く を通り過ぎる)DMAコントローラの特性である。
本発明による2番目の実施例、すなわちRAID(redundant arr ay of 1nexpensive disks :高価でないディスクの冗 長配列)コプロセッサは第6図に示す通りである。このアプリケーションにおい ては、大きさが同じブロックのメモリ26がrm−IJ個あり、その「m暑」は 少なくとも「2」である。その出力はrmJ個の同じ大きさのブロックがら成る データの集合体で、ディスク・コントローラ2の集合体に書き込まれるものであ る。
rmJ番目のブロックは最初のrm−IJ個のブロックに対するバイト毎のパリ ティ・チェックである。これによってフォールト・トレラント(故障許容)処理 が可能になる。
すなわち、もしパリティ・ブロックを含めてどれが一つのブロックが障害を起こ しても、データの全てを残りのブロックから再構築することが可能である。
この実施例において、レジスタ・ファイル1oは宛先ポインタをただ1個だけ包 含している。それはなぜならば、rmJ個のディスク・コントローラ2への書き 込みは自動的にrmJ個のコントローラ2間に均等に断片化されるからである。
排他的論理和(XOR)バイブライン30は論理演算装置33の特殊なケースで ある。データのソース・ブロックが1個のメモリ26から読み込まれる度に、排 他的0R(XOR)がバイト単位で、例えばワードが32ビツト長の場合でも8 ビット単位で、実行される。rm−IJ個のブロックから成るデータが全て読み 込まれた後の、XORバイブライン30はパリティ・ブロックを含んでいる。こ のパリティ・ブロックは他の「m−IJ個のブロックのデータと共に宛先コント ローラ2(m)に書き込まれ、前記の他のデータは最初の「m暑」個のコントロ ーラ2に書き込まれる。
バイブライン30はシステム・バス4のデータ・ラインのサブセット31を通し てメモリ26並びにディスク・コントローラ2と通信する。同様に、アドレス・ ポインタ24はシステム・バス4のアドレス・ラインのサブセット32を通して メモリ26及びディスク・コントローラ2と通信する。レジスタ・ファイル10 に格納されているバイト数は各ソース26とも同じである。それはなぜならば、 入力データの各ブロックは同じバイト数を有するからである。ステート・マシン 11は「m暑」個のソース26に順次、作動許可を与える。
本発明の第3番目の実施例はストライビング・コプロセッサである。ストライビ ング・コプロセッサは、ハードウェア的には、第4図に示すフライ・パイDMA コントローラ23と同じチップである。ストライビング・コプロセッサ23はR AIDコプロセッサ29によってディスク・コントローラ2上に既に書き込まれ ているrmJ個のブロックから成るデータを入力と見なし、(ソフトウェアによ って)概念的に前記ブロックのデータをストライプ化してrmJ個のT10コン トローラ25に送る。ストライプ化とは意図的分散、すなわちデータがrmJ個 の均等な大きさのブロックに断片化されることである。ストライブの数と幅はハ ードウェアの考慮に基づいて決まる。
第5図及び第6図に示すデバイスはともにFPGA(field progra mmable gate array)の技術、具体的にはザイリツクス社(X ilinx Corporation)の4000シリーズのアーキテクチャを 使って構築されている。他の適切な構築技術としてはプリント回路板やASIC (特定用途IC)などがある。
以」二連べてきたことは本発明による実施例のオペレーションを説明するためで あり、本発明の特許請求の範囲を制限するものではない。本発明の範囲は以下の 特許請求の範囲に述べる通りである。以上の説明から、本発明の精神と範囲から 外れることなく、数多くの変更が可能であることが当業者には明白であろう。
第2図 竿づ反 ′吊l−F閃 国際調査報告 16.−1−−1.−1.−1−1− ρCT/JP 93100617

Claims (1)

  1. 【特許請求の範囲】 特許請求の範囲は以下の通りである。 1.システム資源の集合体の中に格納されたデータに対して演算を行なう機能を 有する中央処理装置(CPU)を少なくとも1個以上備え、そして 前記CPU及びシステム資源に接続されたスケーラブル コプロセッサを有し、当該スケーラブル・コプロセッサは、 システム・バスを介してCPUに接続され、少なくとも2つ以上のビンにコンパ ートメント化され、その各々のビンは1つの仮想コプロセッサ・チャネルに相当 してなる、単一のレジスタ・ファイルと、 前記レジスタ・ファイル及びシステム資源に接続され、システム資源に対して演 算を行なうための単一の実コプロセッサと、 前記レジスタ・ファイルに接続され、仮想コプロセッサ・チャネル集合体問に実 コプロセッサの作動可能時間を割り当てるための手段とから成ることを特徴とす るコンピュータ・システム。 2.請求の範囲第1項に記載のコンピュータ・システムにおいて、前記システム 資源がメモリ及び入出力デバイス・コントローラを備えていることを特徴とする コンピュータ・システム。 3.請求の範囲第1項に記載のコンピュータ・システムにおいて、ビン数が可変 で且つあらかじめ選択しておくことができることを特徴とするコンピュータ・シ ステム。 4.請求の範囲第1項に記載のコンピュータ・システムにおいて、前記実コプロ セッサが前記システム資源内で複数のブロックから成るデータに対して算術、論 理、及びシフト演算をいかなる組み合わせでも行なうための手段を備えているこ とを特徴とするコンピュータ・システム。 5.請求の範囲第1項に記載のコンピュータ・システムにおいて、前記の割り当 て手段が前記仮想コプロセッサ・チャネルに作動許可を与える順序と持続期間を 決定するための手段を備えていることを特徴とするコンピュータ・システム。 6.請求の範囲第5項に記載のコンピュータ・システムにおいて、前記の決定手 段が各作動許可期間中に各々の仮想チャネルが実行できる演算数を設定するプロ グラマブル・スロットルを備えていることを特徴とするコンピュータ・システム 。 7.請求の範囲第6項に記載のコンピュータ・システムにおいて、アイドル周期 がスロットル(作動可能)周期間に散在することと、 前記システム・バスが前記アイドル周期中に前記CPUによって自由に使われる ことを 特徴とするコンピュータ・システム。 8.請求の範囲第1項に記載のコンピュータ・システムにおいて、前記実コプロ セッサがフライ・バイDMAコントローラであることを特徴とするコンピュータ ・システム。 9.請求の範囲第1項に記載のコンピュータ・システムにおいて、前記実コプロ セッサが1つのRAID(redundant array of inexp ensive disks:高価でないディスクの冗長配列)コプロセッサであ ることを特徴とするコンピュータ・システム。 10.請求の範囲第1項に記載のコンピュータ・システムにおいて、前記の実コ プロセッサが1つのストライビング・コプロセッサであることを特徴とするコン ピュータ・システム。 11.請求の範囲第1項に記載のコンピュータ・システムにおいて、前記の実コ プロセッサが1つのポインタ・バスを介してレジスタ・ファイルに接続する1個 のバイト・カウンタと、前記ポインタ・バスを通じて前記レジスタ・ファイルに 接続する少なくとも1つ以上のアドレス・ポインタと、さらに前記のアドレス・ ポインタ、バイト・カウンタ並びにポインタ・バスに接続するバッファ1個とを 備えていることを特徴とするコンピュータ・システム。
JP5520052A 1992-05-12 1993-05-11 スケーラブル・コプロセッサ Withdrawn JPH06509896A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US88129992A 1992-05-12 1992-05-12
US07/881,299 1992-05-12
PCT/JP1993/000617 WO1993023810A1 (en) 1992-05-12 1993-05-11 Scalable coprocessor

Publications (1)

Publication Number Publication Date
JPH06509896A true JPH06509896A (ja) 1994-11-02

Family

ID=25378191

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5520052A Withdrawn JPH06509896A (ja) 1992-05-12 1993-05-11 スケーラブル・コプロセッサ

Country Status (2)

Country Link
JP (1) JPH06509896A (ja)
WO (1) WO1993023810A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000250847A (ja) * 1999-02-26 2000-09-14 Nec Corp データ転送方式
JP2007080037A (ja) * 2005-09-15 2007-03-29 Fujitsu Ltd Dma転送システム
JP2020502637A (ja) * 2017-10-13 2020-01-23 エルジー・ケム・リミテッド データ入力スケジューリング装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2283596B (en) * 1993-11-01 1998-07-01 Ericsson Ge Mobile Communicat Multiprocessor data memory sharing
US5875352A (en) * 1995-11-03 1999-02-23 Sun Microsystems, Inc. Method and apparatus for multiple channel direct memory access control
US6272591B2 (en) * 1998-10-19 2001-08-07 Intel Corporation Raid striping using multiple virtual channels
US6938094B1 (en) 1999-09-17 2005-08-30 Advanced Micro Devices, Inc. Virtual channels and corresponding buffer allocations for deadlock-free computer system operation
US6888843B2 (en) 1999-09-17 2005-05-03 Advanced Micro Devices, Inc. Response virtual channel for handling all responses
US6950438B1 (en) 1999-09-17 2005-09-27 Advanced Micro Devices, Inc. System and method for implementing a separate virtual channel for posted requests in a multiprocessor computer system
US7089344B1 (en) * 2000-06-09 2006-08-08 Motorola, Inc. Integrated processor platform supporting wireless handheld multi-media devices
JP4906226B2 (ja) * 2000-08-17 2012-03-28 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド マルチプロセッサコンピュータシステムにおいて、ポストされたリクエストのための別個のバーチャルチャネルを実現するためのシステムおよび方法
GB2433611A (en) * 2005-12-21 2007-06-27 Advanced Risc Mach Ltd DMA controller with virtual channels
KR20110050665A (ko) * 2008-08-06 2011-05-16 아스펜 액퀴지션 코포레이션 정지가능하고 재시작가능한 dma 엔진

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BG45675A1 (en) * 1987-10-16 1989-07-14 Tsentralen Inst Za Izchislitel Controlling device for direct access
GB8824373D0 (en) * 1988-10-18 1988-11-23 Hewlett Packard Ltd Buffer memory arrangement
US5175825A (en) * 1990-02-02 1992-12-29 Auspex Systems, Inc. High speed, flexible source/destination data burst direct memory access controller
US5208813A (en) * 1990-10-23 1993-05-04 Array Technology Corporation On-line reconstruction of a failed redundant array system

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000250847A (ja) * 1999-02-26 2000-09-14 Nec Corp データ転送方式
JP2007080037A (ja) * 2005-09-15 2007-03-29 Fujitsu Ltd Dma転送システム
JP4499008B2 (ja) * 2005-09-15 2010-07-07 富士通マイクロエレクトロニクス株式会社 Dma転送システム
US7970959B2 (en) 2005-09-15 2011-06-28 Fujitsu Semiconductor Limited DMA transfer system using virtual channels
JP2020502637A (ja) * 2017-10-13 2020-01-23 エルジー・ケム・リミテッド データ入力スケジューリング装置
US11228060B2 (en) 2017-10-13 2022-01-18 Lg Chem, Ltd. Data input scheduling apparatus

Also Published As

Publication number Publication date
WO1993023810A1 (en) 1993-11-25

Similar Documents

Publication Publication Date Title
JP5272019B2 (ja) プロセッサを内部メモリに接続するクロスバー・スイッチを含むフラッシュメモリ用ストレージコントローラ
KR100420706B1 (ko) 가변폭버스의동시적인액세스를이용하는다중프로세서시스템에서i/o제어를위한방법및시스템
KR100420707B1 (ko) 가변폭버스의동시적인액세스를이용하는다중프로세서시스템에서버스중재를위한방법및시스템
US7925847B2 (en) Method and apparatus for adjusting timing signal between media controller and storage media
US5440716A (en) Method for developing physical disk drive specific commands from logical disk access commands for use in a disk array
US5381538A (en) DMA controller including a FIFO register and a residual register for data buffering and having different operating modes
US5333305A (en) Method for improving partial stripe write performance in disk array subsystems
US6505268B1 (en) Data distribution in a disk array
KR100296718B1 (ko) 다중프로세서 시스템에서 가변폭 버스를 동시에 액세스하기 위한 방법 및 시스템
KR20060025135A (ko) 재구성 가능한 데이터 경로를 갖는 디스크 어레이 제어기
JPH06509896A (ja) スケーラブル・コプロセッサ
US6543029B1 (en) Error corrector
JP3247075B2 (ja) パリティブロックの生成装置
US4873656A (en) Multiple processor accelerator for logic simulation
US20150067216A1 (en) Memory Controller and Memory Access Method
TWI386795B (zh) 具有改進之拆解及冗餘操作及介面之磁碟控制器方法及裝置
US5551009A (en) Expandable high performance FIFO design which includes memory cells having respective cell multiplexors
WO1993013475A1 (en) Method for performing disk array operations using a nonuniform stripe size mapping scheme
US6519739B1 (en) Fault detector
US5375217A (en) Method and apparatus for synchronizing disk drive requests within a disk array
US6836818B1 (en) Central processing unit
WO1991001021A1 (en) Method and circuit for programmable element sequence selection
TWI278752B (en) Disk array controller and fast method of executing stripped-data operations in disk array controller
US6915394B1 (en) Microprocessor interface
JP2000305721A (ja) データディスクアレイ装置

Legal Events

Date Code Title Description
A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20040115