JPH0638251B2 - 多重プロセツサ−におけるオンライン方式 - Google Patents
多重プロセツサ−におけるオンライン方式Info
- Publication number
- JPH0638251B2 JPH0638251B2 JP61177459A JP17745986A JPH0638251B2 JP H0638251 B2 JPH0638251 B2 JP H0638251B2 JP 61177459 A JP61177459 A JP 61177459A JP 17745986 A JP17745986 A JP 17745986A JP H0638251 B2 JPH0638251 B2 JP H0638251B2
- Authority
- JP
- Japan
- Prior art keywords
- command
- buffer
- firmware
- cpu
- data
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Information Transfer Systems (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明はファームウェアCPUとホストCPUのバス間
をオンラインで高速度に接続するための多重プロセッサ
ーにおけるオンライン方式に関する。
をオンラインで高速度に接続するための多重プロセッサ
ーにおけるオンライン方式に関する。
単なるコンピュータ間のコミュニケーションとしてはロ
ーカルエリアネットワーク、バイシング方式、電話回線
を利用したオンライン方式等が開発されている。
ーカルエリアネットワーク、バイシング方式、電話回線
を利用したオンライン方式等が開発されている。
しかしながら、近距離にあるバス間のコミュニケーショ
ンに関しては、現在適当な技術が開発されていない。
ンに関しては、現在適当な技術が開発されていない。
アセンブラで記述され、又、パイプライン制御している
ファームウェア用CPUと、高級言語を主に使用し、デ
ータ加工を主要な業務とするホストCPUとの間には極
端なスピード格差があり、単なるレコード転送例えばバ
イシング方式を用いた多重プロセッシングシステムを実
行すると、極めてCPU待ち時間の多い効率の悪いシス
テムができ上ってしまう。本発明は、効率的なオンライ
ン処理を行なうことを目的とするものである。
ファームウェア用CPUと、高級言語を主に使用し、デ
ータ加工を主要な業務とするホストCPUとの間には極
端なスピード格差があり、単なるレコード転送例えばバ
イシング方式を用いた多重プロセッシングシステムを実
行すると、極めてCPU待ち時間の多い効率の悪いシス
テムができ上ってしまう。本発明は、効率的なオンライ
ン処理を行なうことを目的とするものである。
上記目的を達成するため、本発明は、ファームウェア側
とホストコンピュータとをオンラインで接続する方式に
おいて、ファームウェアCPU側に、受信用コマンドバ
ッファ、送信用コマンドバッファ及び大容量データ送信
用コモンバッファから成るインターフェース4を設け、
ホストCPU側に送信用コマンドバッファ、受信用コマ
ンドバッファ及び大容量データ受信用コモンバッファか
ら成るインターフェースを設け、上記両インターフェー
ス間を伝送ラインで接続し、前記ファームウェアCPU
側にリングバッファを設け、コマンドの種類を示すイン
デックスとデータのワード数を知らせる引数部とデータ
部とから成る可変長コマンドをホスト側コマンドバッフ
ァからファームウェア側コマンドバッファに送信して上
記両インターフェース間でデータの交信を行うように成
すとともに、ホストCPU側から送られてくる前記可変
長コマンドを前記リングバッファに蓄積して該リングバ
ッファのコマンドを順次処理するようにしたものであ
る。
とホストコンピュータとをオンラインで接続する方式に
おいて、ファームウェアCPU側に、受信用コマンドバ
ッファ、送信用コマンドバッファ及び大容量データ送信
用コモンバッファから成るインターフェース4を設け、
ホストCPU側に送信用コマンドバッファ、受信用コマ
ンドバッファ及び大容量データ受信用コモンバッファか
ら成るインターフェースを設け、上記両インターフェー
ス間を伝送ラインで接続し、前記ファームウェアCPU
側にリングバッファを設け、コマンドの種類を示すイン
デックスとデータのワード数を知らせる引数部とデータ
部とから成る可変長コマンドをホスト側コマンドバッフ
ァからファームウェア側コマンドバッファに送信して上
記両インターフェース間でデータの交信を行うように成
すとともに、ホストCPU側から送られてくる前記可変
長コマンドを前記リングバッファに蓄積して該リングバ
ッファのコマンドを順次処理するようにしたものであ
る。
ホストCPU側は、ファームウェアCPU側のコマンド
処理情況に関係なく、コマンドを送り、このコマンド
は、ファームウェアCPU側のリングバッファに蓄えら
れる。ファームウェアCPU側は、必要に応じてリング
バッファのコマンドを取り出しこれを処理する。従っ
て、両CPU間の処理スピードの相異に関係なく、コマ
ンドは効率良く処理され、いづれか一方のCPUが遊ぶ
ということがない。
処理情況に関係なく、コマンドを送り、このコマンド
は、ファームウェアCPU側のリングバッファに蓄えら
れる。ファームウェアCPU側は、必要に応じてリング
バッファのコマンドを取り出しこれを処理する。従っ
て、両CPU間の処理スピードの相異に関係なく、コマ
ンドは効率良く処理され、いづれか一方のCPUが遊ぶ
ということがない。
以下に本発明の構成を添付図面を参照して詳細に説明す
る。
る。
本発明のハードウェアの構成は、第2図に示すように、
ファームウェアCPU2側のファームウェアパラレルイ
ンターフェース4とホストCPU6側のホストCPUパ
ラレルインターフェース8は、メモリマップド1/0に
なっており、互いのアドレスの算出や、相互CPU2,
6間のメモリマネージの相違等によるマッピング処理等
はハードウェアロジックになっている。次に、第1図を
参照してインターフェース4,8内部を説明する。
ファームウェアCPU2側のファームウェアパラレルイ
ンターフェース4とホストCPU6側のホストCPUパ
ラレルインターフェース8は、メモリマップド1/0に
なっており、互いのアドレスの算出や、相互CPU2,
6間のメモリマネージの相違等によるマッピング処理等
はハードウェアロジックになっている。次に、第1図を
参照してインターフェース4,8内部を説明する。
第1図において、コマンドバッファ10,12,14,
16は、相手CPUに指示を与えたり、返事を送信する
ためのものであり、そのうち、Write12,14は、相
手側に送信し、Read10,16は相手CPUより受信す
るものであるる。一方のCPUのコマンドバッファWrit
eの情報は図示のように、相手CPUにとってはReadバ
ッファにくるようにハンドリングされる。コモンバッフ
ァ20,22は、公知の穴位置座標自動読取機等よりく
る画像処理された膨大なデータの入るところでファーム
ウェアCPU側のコモンバッファ20はWriteのみで、
ホストCPU側のコモンバッファ22は受信のみに構成
されている。ファームウェア側のリングバッファ24は
ホストCPU6よりのコマンドをバッファリングしてお
く構成のものである。コモンバッファ20はファームウ
ェアCPU2内部のデータをブロック転送する。そのた
め、オンライン時に、再度オンライン用バッファに書き
直す必要はなく、高速性を追求している。伝送ラインで
接続された前記コモンバッファ20,22はシエアード
メモリを構成し、コモンバッファ20から送信されたデ
ータは1/0に送られることなく直接コモンバッファ2
2に転送される。
16は、相手CPUに指示を与えたり、返事を送信する
ためのものであり、そのうち、Write12,14は、相
手側に送信し、Read10,16は相手CPUより受信す
るものであるる。一方のCPUのコマンドバッファWrit
eの情報は図示のように、相手CPUにとってはReadバ
ッファにくるようにハンドリングされる。コモンバッフ
ァ20,22は、公知の穴位置座標自動読取機等よりく
る画像処理された膨大なデータの入るところでファーム
ウェアCPU側のコモンバッファ20はWriteのみで、
ホストCPU側のコモンバッファ22は受信のみに構成
されている。ファームウェア側のリングバッファ24は
ホストCPU6よりのコマンドをバッファリングしてお
く構成のものである。コモンバッファ20はファームウ
ェアCPU2内部のデータをブロック転送する。そのた
め、オンライン時に、再度オンライン用バッファに書き
直す必要はなく、高速性を追求している。伝送ラインで
接続された前記コモンバッファ20,22はシエアード
メモリを構成し、コモンバッファ20から送信されたデ
ータは1/0に送られることなく直接コモンバッファ2
2に転送される。
次に、コマンドについて説明する。
コマンドの種類には3種ある。
まず、第1のものは、ホストCPU6によりファームウ
ェアCPU2に指示のみするものであり、使用バッファ
はホストコマンドバッファ(Write)14とファームコ
マンドバッファ(Read)10で図に示されている。図
中、Aのインデツクスでコマンドの種類を知らせる。A
の引数部ではBのデータのワード数を知らせる。Bがフ
ァームウェアCPU2にひき渡すデータである。ホスト
CPU6よりコマンドがくると、ファームウェアCPU
2はコマンドをリングバッファ24にプッシュし、且つ
該バッファ24により、コマンドをポップし、コマンド
の引数部指示のワード分だけデータをとりこみ処理す
る。
ェアCPU2に指示のみするものであり、使用バッファ
はホストコマンドバッファ(Write)14とファームコ
マンドバッファ(Read)10で図に示されている。図
中、Aのインデツクスでコマンドの種類を知らせる。A
の引数部ではBのデータのワード数を知らせる。Bがフ
ァームウェアCPU2にひき渡すデータである。ホスト
CPU6よりコマンドがくると、ファームウェアCPU
2はコマンドをリングバッファ24にプッシュし、且つ
該バッファ24により、コマンドをポップし、コマンド
の引数部指示のワード分だけデータをとりこみ処理す
る。
第2のものは、ホストCPU6によりファームウェアC
PU2にコマンドを送り、ファームウェアCPU2より
返事を貰うものである。使用バッファは、ホストコマン
ドバッファ(Read)(Write)16,14、ファームコ
マンドバッファ(Read,Write)10,12である。該コ
マンドは、第4図aに示すように、ホストCPUよりフ
ァームウェアCPUへコマンドを送信する。この送信処
理手順は、上記第1のコマンドと同じである。データを
処理したファームウェアCPU2は第3図と同形式で第
4図bに示すようにホストCPUにデータを送信する。
ホストCPUはこのデータが来るまでWaitする。
PU2にコマンドを送り、ファームウェアCPU2より
返事を貰うものである。使用バッファは、ホストコマン
ドバッファ(Read)(Write)16,14、ファームコ
マンドバッファ(Read,Write)10,12である。該コ
マンドは、第4図aに示すように、ホストCPUよりフ
ァームウェアCPUへコマンドを送信する。この送信処
理手順は、上記第1のコマンドと同じである。データを
処理したファームウェアCPU2は第3図と同形式で第
4図bに示すようにホストCPUにデータを送信する。
ホストCPUはこのデータが来るまでWaitする。
第3のものは、第5図に示すように、ホストCPUより
ファームウェアCPUにコマンドを送り、ファームウェ
アCPUは画像データのような大容量データをホストC
PUに送信する。使用バッファは、ホスト側がコマンド
バッファ(Read)(Write)14,16、コモンバッフ
ァ(Read)22である。ファーム側はコマンドバッファ
(Read)(Write)10,12、コモンバッファ(Writ
e)20である。ホストCPU6によりコマンドバッフ
ァ(Write)(Read)14,10を経由してコマンドを
ファームウェアCPU2に送り、ファームウェアCPU
2では、画像データの送信要求であると判断すると、コ
モンバッファ(Write)20にデータをブロック転送
し、コマンドバッファ(Read)16に画像データがきた
というコマンドを送信し、ホストCPU6に知らせる。
次に、画像データをコモンバッファ(Read)22にブロ
ック転送する。次に処理完了コードをコマンドバッファ
(Read)16に転送する。尚、様々なコマンドをサブル
ーチン化し、パッケージにしておきホストCPU、ファ
ームウェアCPU共モジュール化した形で使用するもの
である。
ファームウェアCPUにコマンドを送り、ファームウェ
アCPUは画像データのような大容量データをホストC
PUに送信する。使用バッファは、ホスト側がコマンド
バッファ(Read)(Write)14,16、コモンバッフ
ァ(Read)22である。ファーム側はコマンドバッファ
(Read)(Write)10,12、コモンバッファ(Writ
e)20である。ホストCPU6によりコマンドバッフ
ァ(Write)(Read)14,10を経由してコマンドを
ファームウェアCPU2に送り、ファームウェアCPU
2では、画像データの送信要求であると判断すると、コ
モンバッファ(Write)20にデータをブロック転送
し、コマンドバッファ(Read)16に画像データがきた
というコマンドを送信し、ホストCPU6に知らせる。
次に、画像データをコモンバッファ(Read)22にブロ
ック転送する。次に処理完了コードをコマンドバッファ
(Read)16に転送する。尚、様々なコマンドをサブル
ーチン化し、パッケージにしておきホストCPU、ファ
ームウェアCPU共モジュール化した形で使用するもの
である。
本発明は、上記コマンドと前記リングバッファ24の組
み合わせを要旨とするものである。一般的にファームウ
ェアCPU2はデータ処理スピードが高速であり、ホス
トCPU6側は高級言語を使っていること等からデータ
処理スピードが遅い。従って、単にインターフェース
4,8間をオンラインで接続した場合、両インターフェ
ース間で、コマンドを出し、又コマンドを送り返すとい
うことをリアルタイムで処理することが不可能である。
そのため、ホストCPU側は、ファームウェアCPU側
でコマンドが処理されるのを待って、その都度コマンド
を送らなければならず、CPU待ち時間が長くなってし
まい、その間、どちらか一方のCPUが遊んでしまい非
効率となる。しかるに、リングバッファ24の存在によ
り、ホストCPU側は、ファームウェア側のコマンド処
理の結果に関係なく、コマンドを順次ファームウェア側
に送り、リングバッファ24に蓄える。一方、ファーム
ウェアCPU2側は、リングバッファ24に蓄えられた
コマンドを、必要に応じてファームウェアCPU側の処
理スピードで順次処理し、高能率の仕事を行うものであ
る。本実施例のコマンドは必要なデータのみを有する可
変長コマンドであるため、データ量がきわめて少なく、
従って、多数のコマンドをリングバッファ24に蓄える
ことができ、しかもコマンドは必要なデータのみを有す
るから無駄のない高速のデータ処理を可能とするもので
ある。
み合わせを要旨とするものである。一般的にファームウ
ェアCPU2はデータ処理スピードが高速であり、ホス
トCPU6側は高級言語を使っていること等からデータ
処理スピードが遅い。従って、単にインターフェース
4,8間をオンラインで接続した場合、両インターフェ
ース間で、コマンドを出し、又コマンドを送り返すとい
うことをリアルタイムで処理することが不可能である。
そのため、ホストCPU側は、ファームウェアCPU側
でコマンドが処理されるのを待って、その都度コマンド
を送らなければならず、CPU待ち時間が長くなってし
まい、その間、どちらか一方のCPUが遊んでしまい非
効率となる。しかるに、リングバッファ24の存在によ
り、ホストCPU側は、ファームウェア側のコマンド処
理の結果に関係なく、コマンドを順次ファームウェア側
に送り、リングバッファ24に蓄える。一方、ファーム
ウェアCPU2側は、リングバッファ24に蓄えられた
コマンドを、必要に応じてファームウェアCPU側の処
理スピードで順次処理し、高能率の仕事を行うものであ
る。本実施例のコマンドは必要なデータのみを有する可
変長コマンドであるため、データ量がきわめて少なく、
従って、多数のコマンドをリングバッファ24に蓄える
ことができ、しかもコマンドは必要なデータのみを有す
るから無駄のない高速のデータ処理を可能とするもので
ある。
本発明は上述の如くファームウェア側にリングバッファ
があるため、各プロセッサー間の処理速度の相違が問題
とならず、しかも、相互通信のデータを引数で管理する
可変レコード長にした為、固定長と違い冗長性がなく、
高速且つ効率的な通信が可能である。更に、インターフ
ェースにパラレルインターフェースを用い、大容量デー
タはブロック転送方式で且つシエアードメモリの為、オ
ンラインの為に、データをオンライン用バッファに書き
直す必要がなく、極めて高速化が図れる等の効果が存す
る。
があるため、各プロセッサー間の処理速度の相違が問題
とならず、しかも、相互通信のデータを引数で管理する
可変レコード長にした為、固定長と違い冗長性がなく、
高速且つ効率的な通信が可能である。更に、インターフ
ェースにパラレルインターフェースを用い、大容量デー
タはブロック転送方式で且つシエアードメモリの為、オ
ンラインの為に、データをオンライン用バッファに書き
直す必要がなく、極めて高速化が図れる等の効果が存す
る。
第1図はブロック説明図、第2図はブロック説明図、第
3図乃至第5図は説明図である。 2……ファームウェアCPU,4……インターフェー
ス,6……ホストCPU,8……インターフェース,1
0,12,14,16……コマンドバッファ,20,2
2……コモンバッファ,24……リングバッファ
3図乃至第5図は説明図である。 2……ファームウェアCPU,4……インターフェー
ス,6……ホストCPU,8……インターフェース,1
0,12,14,16……コマンドバッファ,20,2
2……コモンバッファ,24……リングバッファ
Claims (1)
- 【請求項1】ファームウェア側とホストコンピュータと
をオンラインで接続する方式において、ファームウェア
CPU側に、受信用コマンドバッファ、送信用コマンド
バッファ及び大容量データ送信用コモンバッファから成
るインターフェース4を設け、ホストCPU側に送信用
コマンドバッファ、受信用コマンドバッファ及び大容量
データ受信用コモンバッファから成るインターフェース
を設け、上記両インターフェース間を伝送ラインで接続
し、前記ファームウェアCPU側にリングバッファを設
け、コマンドの種類を示すインデックスとデータのワー
ド数を知らせる引数部とデータ部とから成る可変長コマ
ンドをホスト側コマンドバッファからファームウェア側
コマンドバッファに送信して上記両インターフェース間
でデータの交信を行うように成すとともに、ホストCP
U側から送られてくる前記可変長コマンドを前記リング
バッファに蓄積して該リングバッファのコマンドを順次
処理するようにしたことを特徴とする多重プロセッサー
におけるオンライン方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61177459A JPH0638251B2 (ja) | 1986-07-28 | 1986-07-28 | 多重プロセツサ−におけるオンライン方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61177459A JPH0638251B2 (ja) | 1986-07-28 | 1986-07-28 | 多重プロセツサ−におけるオンライン方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6334665A JPS6334665A (ja) | 1988-02-15 |
| JPH0638251B2 true JPH0638251B2 (ja) | 1994-05-18 |
Family
ID=16031307
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61177459A Expired - Lifetime JPH0638251B2 (ja) | 1986-07-28 | 1986-07-28 | 多重プロセツサ−におけるオンライン方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0638251B2 (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6907480B2 (en) * | 2001-07-11 | 2005-06-14 | Seiko Epson Corporation | Data processing apparatus and data input/output apparatus and data input/output method |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS58142465A (ja) * | 1982-02-18 | 1983-08-24 | Hitachi Ltd | デ−タ転送・処理装置 |
-
1986
- 1986-07-28 JP JP61177459A patent/JPH0638251B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6334665A (ja) | 1988-02-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3280759B2 (ja) | 入力/出力制御装置および方法 | |
| US5594882A (en) | PCI split transactions utilizing dual address cycle | |
| JPH02109153A (ja) | プロセッサ間データ伝送方式 | |
| JPH02310664A (ja) | 共有メモリを用いた通信方式 | |
| US5481681A (en) | Data transfer operations between two asynchronous buses | |
| KR20010040936A (ko) | 2차 버스로부터의 메시징 유닛 액세스 | |
| JPH0638251B2 (ja) | 多重プロセツサ−におけるオンライン方式 | |
| JPS616759A (ja) | メモリ共有マルチプロセツサシステム | |
| JPS5833970B2 (ja) | プロセッサ間通信方式 | |
| JPS6029139B2 (ja) | 処理装置間結合方式 | |
| JPS6239789B2 (ja) | ||
| JPH11252150A (ja) | ネットワーク接続装置、及びネットワーク接続制御方法 | |
| JPH0750466B2 (ja) | 並列計算機キャッシュ・メモリ制御方式 | |
| JP2504062B2 (ja) | プログラマブル・コントロ−ラの汎用バス接続用仲介装置 | |
| JP2971119B2 (ja) | 複数プロセッサシステムにおける高速データ転送方式 | |
| KR0170595B1 (ko) | 고속 병렬 컴퓨터에서 크로스바 네트웍 라우터의 송신부에 대한 소프트웨어 애뮬레이션 방법 | |
| JP2705955B2 (ja) | 並列情報処理装置 | |
| JPH05314061A (ja) | バス・インタフェース制御方式 | |
| JPS62204358A (ja) | デ−タ通信処理方式 | |
| JPS5921051B2 (ja) | 通信制御装置 | |
| JPS6347867A (ja) | デユアルcpu間通信方式 | |
| JP2751879B2 (ja) | プロセッサ間通信方式 | |
| JPS6182260A (ja) | 入出力割込み制御方式 | |
| JPH0375959A (ja) | マルチプロセッサのデータ転送装置 | |
| JPH01316851A (ja) | チャネル制御方式 |