JPH06187304A - 並列動作ボード - Google Patents
並列動作ボードInfo
- Publication number
- JPH06187304A JPH06187304A JP4335824A JP33582492A JPH06187304A JP H06187304 A JPH06187304 A JP H06187304A JP 4335824 A JP4335824 A JP 4335824A JP 33582492 A JP33582492 A JP 33582492A JP H06187304 A JPH06187304 A JP H06187304A
- Authority
- JP
- Japan
- Prior art keywords
- board
- data
- boards
- parallel operation
- bus
- 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.)
- Pending
Links
Landscapes
- Image Processing (AREA)
- Information Transfer Systems (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】
【目的】 拡張バスに装着した複数枚ボード間で並列動
作をさせる。 【構成】 拡張バスに装着した他のボードと並列動作を
可能にするボードであって、ボードの一つを、バスとの
信号のやり取りを担わせるメインボードとするメインボ
ード指定手段(43)と、メインボード以外のすべてのボ
ードにおける固有のアドレス範囲を、メインボードのア
ドレス範囲に一致させるアドレス範囲変更手段(41,
42)と、メインボードを含む各ボードでバスに対して
データの入出力を司るデータ入出力手段(30)とを備
え、すべてのボードのアドレス範囲をメインボードのア
ドレス範囲に一致させた状態でホストCPUより、該ア
ドレス範囲にデータを送出することにより、全部のボー
ドに同時に取り込ませる。
作をさせる。 【構成】 拡張バスに装着した他のボードと並列動作を
可能にするボードであって、ボードの一つを、バスとの
信号のやり取りを担わせるメインボードとするメインボ
ード指定手段(43)と、メインボード以外のすべてのボ
ードにおける固有のアドレス範囲を、メインボードのア
ドレス範囲に一致させるアドレス範囲変更手段(41,
42)と、メインボードを含む各ボードでバスに対して
データの入出力を司るデータ入出力手段(30)とを備
え、すべてのボードのアドレス範囲をメインボードのア
ドレス範囲に一致させた状態でホストCPUより、該ア
ドレス範囲にデータを送出することにより、全部のボー
ドに同時に取り込ませる。
Description
【0001】
【産業上の利用分野】本発明は、コンピュータ装置の外
部拡張バスに装着して用いるボードに関し、特に拡張バ
スに装着した他の複数枚のボードと並列動作を可能にし
たボードに関する。
部拡張バスに装着して用いるボードに関し、特に拡張バ
スに装着した他の複数枚のボードと並列動作を可能にし
たボードに関する。
【0002】
【従来の技術】多くのコンピュータシステムには、機能
拡張を行うために拡張ボードを装着する為の拡張バスが
用意されている。例えばアップル社のMacintoshではNuB
us、IBM社のPC/AT機のISAバス等である。これらの
バスに装着されたボードはそのボードを通じてホストコ
ンピュータのCPUとデータのやり取りを行う。又、パ
ーソナルコンピュータ等においてCPU等が装着されて
いるメインボード内にもプライベートなバスがあり、こ
こを通じてCPUとメモリや入出力部との間で信号やデ
ータのやり取りがなされる。かかるコンピュータシステ
ムの処理能力を向上させるために、それらのバス、特に
拡張バス上に演算ボード等の複数枚の拡張ボードを装着
し、各ボードで処理を分散させる分散処理等の手法が用
いられることがある。
拡張を行うために拡張ボードを装着する為の拡張バスが
用意されている。例えばアップル社のMacintoshではNuB
us、IBM社のPC/AT機のISAバス等である。これらの
バスに装着されたボードはそのボードを通じてホストコ
ンピュータのCPUとデータのやり取りを行う。又、パ
ーソナルコンピュータ等においてCPU等が装着されて
いるメインボード内にもプライベートなバスがあり、こ
こを通じてCPUとメモリや入出力部との間で信号やデ
ータのやり取りがなされる。かかるコンピュータシステ
ムの処理能力を向上させるために、それらのバス、特に
拡張バス上に演算ボード等の複数枚の拡張ボードを装着
し、各ボードで処理を分散させる分散処理等の手法が用
いられることがある。
【0003】又、より高速な処理を望む場合には、図1
に示すように、拡張バスに複数枚のボードを装着し、そ
れらのボードを並列動作させる並列処理、図2に示すよ
うに、一連の処理を複数の処理単位に分割し、縦列的に
接続した各ボードにおいて、一つの処理単位を処理させ
るようにしたパイプライン処理、更には図3に示すよう
に、同一のボード内に複数のCPUを配したマルチプロ
セッサ構成とした処理がある。
に示すように、拡張バスに複数枚のボードを装着し、そ
れらのボードを並列動作させる並列処理、図2に示すよ
うに、一連の処理を複数の処理単位に分割し、縦列的に
接続した各ボードにおいて、一つの処理単位を処理させ
るようにしたパイプライン処理、更には図3に示すよう
に、同一のボード内に複数のCPUを配したマルチプロ
セッサ構成とした処理がある。
【0004】ここで、1画素が3色の要素(R,G,B)
で構成される画像データを、図1に示した3枚の各ボー
ドで色要素別に処理する場合の従来の並列動作を述べ
る。第1ボード、第2ボードおよび第3ボードの拡張ボ
ード上におけるアドレス範囲をAx〜A2x-1、A2x〜A3
x-1、A3x〜A4x-1とし(このアドレス範囲の設定は各ボ
ードにあるディップスイッチにより行える)、ホストC
PU内のメモリには、下表に示すm行×n列からなる画
像データが格納されているとする。
で構成される画像データを、図1に示した3枚の各ボー
ドで色要素別に処理する場合の従来の並列動作を述べ
る。第1ボード、第2ボードおよび第3ボードの拡張ボ
ード上におけるアドレス範囲をAx〜A2x-1、A2x〜A3
x-1、A3x〜A4x-1とし(このアドレス範囲の設定は各ボ
ードにあるディップスイッチにより行える)、ホストC
PU内のメモリには、下表に示すm行×n列からなる画
像データが格納されているとする。
【0005】
【表1】 第1列 第2列 第3列 … 第n列 第1行:R11,G11,B11 R12,G12,B12 R13,G13,B13…R1n,G1n,B1n 第2行:R21,G21,B21 R22,G22,B22 R23,G23,B23…R2n,G2n,B2n 第3行:R31,G31,B31 R32,G32,B32 R33,G33,B33…R3n,G3n,B3n : 第m行:Rm1,Gm1,Bm1 Rm2,Gm2,Bm2 Rm3,Gm3,Bm3…Rmn,Gmn,Bmn
【0006】ステップ1:ホストCPU内のメモリから
すべてのR要素(R11,R12,…Rmn)を読み出し、選択し
たアドレスAx〜A2x-1を介して第1ボード内のメモリ
に書き込み、その書き込みが終了すると、ホストCPU
からの指示により、第1ボード内のCPUにて所望の画
像処理(拡大・縮小)を開始させる。 ステップ2:アドレスA2x〜A3x-1を選択し、同様に、
該アドレスを介してG要素すべてを第2ボード内のメモ
リに書き込み、第2ボード内のCPUにて所望の画像処
理を開始させる。 ステップ3:アドレスA3x〜A4x-1を選択し、同様に、
該アドレスを介してB要素すべてを第3ボード内のメモ
リに書き込み、第3ボード内のCPUにて所望の画像処
理を開始させる。 ステップ4:ホストCPUは第1ボードでの処理終了を
監視し、処理が終了した時点で処理したR要素を同アド
レスを介してホストCPU内の同一のメモリまたは別の
メモリへ書き込む。 ステップ5:ステップ4における処理済みのR要素のメ
モリへの書き込みが終了すれば、CPUは第2ボードで
の処理終了を監視し、処理が終了した時点で処理したB
要素を同アドレスを介してホストCPU内のメモリに書
き込む。 ステップ6:ステップ5における処理済みのG要素のメ
モリへの書き込みが終了すれば、CPUは第3ボードで
の処理終了を監視し、処理が終了した時点で処理したG
要素を同アドレスを介してホストCPU内のメモリに書
き込む。
すべてのR要素(R11,R12,…Rmn)を読み出し、選択し
たアドレスAx〜A2x-1を介して第1ボード内のメモリ
に書き込み、その書き込みが終了すると、ホストCPU
からの指示により、第1ボード内のCPUにて所望の画
像処理(拡大・縮小)を開始させる。 ステップ2:アドレスA2x〜A3x-1を選択し、同様に、
該アドレスを介してG要素すべてを第2ボード内のメモ
リに書き込み、第2ボード内のCPUにて所望の画像処
理を開始させる。 ステップ3:アドレスA3x〜A4x-1を選択し、同様に、
該アドレスを介してB要素すべてを第3ボード内のメモ
リに書き込み、第3ボード内のCPUにて所望の画像処
理を開始させる。 ステップ4:ホストCPUは第1ボードでの処理終了を
監視し、処理が終了した時点で処理したR要素を同アド
レスを介してホストCPU内の同一のメモリまたは別の
メモリへ書き込む。 ステップ5:ステップ4における処理済みのR要素のメ
モリへの書き込みが終了すれば、CPUは第2ボードで
の処理終了を監視し、処理が終了した時点で処理したB
要素を同アドレスを介してホストCPU内のメモリに書
き込む。 ステップ6:ステップ5における処理済みのG要素のメ
モリへの書き込みが終了すれば、CPUは第3ボードで
の処理終了を監視し、処理が終了した時点で処理したG
要素を同アドレスを介してホストCPU内のメモリに書
き込む。
【0007】
【発明が解決しようとする課題】上記の並列処理では、
ホストCPUがのデータの入出力をボード毎に行い、か
つ、各ボードでのデータ処理終了を監視しなくてはなら
ないため、ホストCPUの負担が大きく、また、待ち時
間があるためにシステム全体の処理速度が低下する。
ホストCPUがのデータの入出力をボード毎に行い、か
つ、各ボードでのデータ処理終了を監視しなくてはなら
ないため、ホストCPUの負担が大きく、また、待ち時
間があるためにシステム全体の処理速度が低下する。
【0008】一方、パイプライン処理においては、各ボ
ードで受け持つ処理単位が均一な処理時間の場合は1処
理単位の処理時間毎に効率良く1ラインが処理される
が、各処理単位の処理時間が不均一の場合には、最大の
処理時間に合わせてパイプライン処理を行わなければな
らず、それよりも処理時間の短い処理単位に対してはボ
ードでの動作に空き時間が生じ、システム全体での処理
効率が低下する。また、このようなパイプライン処理
は、CPUのLSI内部等の様に1つのデータに対して
一連の様々な処理を行うような場合には有効であるが、
本発明が処理対象としているような画像処理のごとく、
単純な繰り返しの多いデータ処理には適していない。そ
の理由は、一連の処理を単位処理に分割するのが難しい
こと、ボードで処理したデータを後段のボードへ転送す
るためのローカルなバスが必要となることに起因する。
ードで受け持つ処理単位が均一な処理時間の場合は1処
理単位の処理時間毎に効率良く1ラインが処理される
が、各処理単位の処理時間が不均一の場合には、最大の
処理時間に合わせてパイプライン処理を行わなければな
らず、それよりも処理時間の短い処理単位に対してはボ
ードでの動作に空き時間が生じ、システム全体での処理
効率が低下する。また、このようなパイプライン処理
は、CPUのLSI内部等の様に1つのデータに対して
一連の様々な処理を行うような場合には有効であるが、
本発明が処理対象としているような画像処理のごとく、
単純な繰り返しの多いデータ処理には適していない。そ
の理由は、一連の処理を単位処理に分割するのが難しい
こと、ボードで処理したデータを後段のボードへ転送す
るためのローカルなバスが必要となることに起因する。
【0009】また、マルチプロセッサ構成による処理に
おいては、同一データを複数のCPUに対して同時に渡
すことができるので図1の場合のようにアドレス切り替
えの必要がなくなり、データ設定が短時間で行えるもの
の、各CPUでの処理結果をホストCPUが取り込む際
には、図1の場合と同様に個別に行わなくてはならず、
データ取り出しに時間がかかる。また、この方式は、ボ
ード内の複数個のCPUに対して識別用のIDを特別に
規定したものであり、従って標準バスのように、仕様が
予め確定されたものには適用不可能である。本発明は、
上述した課題を解決するためになされたものであり、複
数枚のボードを並列動作させることで高速処理を達成し
た並列動作ボードを提供することを目的とする。
おいては、同一データを複数のCPUに対して同時に渡
すことができるので図1の場合のようにアドレス切り替
えの必要がなくなり、データ設定が短時間で行えるもの
の、各CPUでの処理結果をホストCPUが取り込む際
には、図1の場合と同様に個別に行わなくてはならず、
データ取り出しに時間がかかる。また、この方式は、ボ
ード内の複数個のCPUに対して識別用のIDを特別に
規定したものであり、従って標準バスのように、仕様が
予め確定されたものには適用不可能である。本発明は、
上述した課題を解決するためになされたものであり、複
数枚のボードを並列動作させることで高速処理を達成し
た並列動作ボードを提供することを目的とする。
【0010】
【課題を解決するための手段】本発明の並列動作ボード
は、拡張バスに装着した他のボードと並列動作を可能に
するボードであって、すべてのボードの中から一つのボ
ードを、バスとの信号のやり取りを担わせるメインボー
ドとするメインボード指定手段(43)と、メインボード
以外のすべてのボードにおける固有のアドレス範囲を、
メインボードのアドレス範囲に一致させるアドレス範囲
変更手段(41,42)と、メインボードを含む各ボード
でバスに対してデータの入出力を司るデータ入出力手段
(30)と、すべてのボードのアドレス範囲をメインボー
ドのアドレス範囲に一致させた状態でホストCPUよ
り、該アドレス範囲にデータを送出することにより、全
部のボードに同時に導かれた1群のデータの中から、各
ボード毎に所定のデータを取り込むために設けられたデ
ータ分配手段(45,46,50)と、各ボードで振り分
けられ、該ボードで処理された各データを、一つのバス
に重複して出力しないよう、各ボード毎に読み出しバイ
トレーンを設定する読み出しバイトレーン指定手段(4
4)と、各ボードより、前記処理済みのデータを1群の
データとして読み出せるよう、各ボード間で読み出しを
同期させる同期化手段(31,80)と、を備えたことを
特徴とする。
は、拡張バスに装着した他のボードと並列動作を可能に
するボードであって、すべてのボードの中から一つのボ
ードを、バスとの信号のやり取りを担わせるメインボー
ドとするメインボード指定手段(43)と、メインボード
以外のすべてのボードにおける固有のアドレス範囲を、
メインボードのアドレス範囲に一致させるアドレス範囲
変更手段(41,42)と、メインボードを含む各ボード
でバスに対してデータの入出力を司るデータ入出力手段
(30)と、すべてのボードのアドレス範囲をメインボー
ドのアドレス範囲に一致させた状態でホストCPUよ
り、該アドレス範囲にデータを送出することにより、全
部のボードに同時に導かれた1群のデータの中から、各
ボード毎に所定のデータを取り込むために設けられたデ
ータ分配手段(45,46,50)と、各ボードで振り分
けられ、該ボードで処理された各データを、一つのバス
に重複して出力しないよう、各ボード毎に読み出しバイ
トレーンを設定する読み出しバイトレーン指定手段(4
4)と、各ボードより、前記処理済みのデータを1群の
データとして読み出せるよう、各ボード間で読み出しを
同期させる同期化手段(31,80)と、を備えたことを
特徴とする。
【0011】
【作用】本発明においては、初期状態等では、各ボード
はそれぞれ固有のアドレス領域を持っており、従って、
各ボードは個別に動作する単独動作モードにある。この
単独動作モード時にあっては、ホストCPUより、前記
のそれぞれの固有のアドレスを選択しながら種々のデー
タを出力することにより、各ボードに対して、並列動作
時に必要となる各種制御データを設定することができ
る。即ち、単独動作モード時に、メインボード指定手段
により、ボードの一つをメインボードに指定し、そして
アドレス範囲変更手段によって、残りのボードのアドレ
ス領域を、メインボード固有のアドレス領域に一致させ
ると、ホストCPU側から見れば、拡張バスに単一のボ
ードが装着されたのと等価となり、本発明の並列動作モ
ードとなる。
はそれぞれ固有のアドレス領域を持っており、従って、
各ボードは個別に動作する単独動作モードにある。この
単独動作モード時にあっては、ホストCPUより、前記
のそれぞれの固有のアドレスを選択しながら種々のデー
タを出力することにより、各ボードに対して、並列動作
時に必要となる各種制御データを設定することができ
る。即ち、単独動作モード時に、メインボード指定手段
により、ボードの一つをメインボードに指定し、そして
アドレス範囲変更手段によって、残りのボードのアドレ
ス領域を、メインボード固有のアドレス領域に一致させ
ると、ホストCPU側から見れば、拡張バスに単一のボ
ードが装着されたのと等価となり、本発明の並列動作モ
ードとなる。
【0012】この並列動作モード時には、ホストCPU
より出力する処理対象のデータ(例えば画像データ)の書
き込みアドレスを、メインボード固有のアドレス領域内
とすることにより、1画素の画像データがすべてのボー
ドに取り込まれる。この後、各ボードにおいては、デー
タ分配手段の制御動作により、取り込んだ1画素の中か
ら特定の色要素を抽出することで、各ボード毎に異なる
色要素を拡大・縮小のデータ処理を並行して行うことが
できる。
より出力する処理対象のデータ(例えば画像データ)の書
き込みアドレスを、メインボード固有のアドレス領域内
とすることにより、1画素の画像データがすべてのボー
ドに取り込まれる。この後、各ボードにおいては、デー
タ分配手段の制御動作により、取り込んだ1画素の中か
ら特定の色要素を抽出することで、各ボード毎に異なる
色要素を拡大・縮小のデータ処理を並行して行うことが
できる。
【0013】各ボードで個別に行った各処理済みの色要
素を、バイトレーン指定手段によって所定のデータバス
に読み出し、かつ、その読み出しの際に、同期化手段に
よって各ボード間で同期をとることにより、一画素を構
成する色要素が同時にデータバスに読み出すことができ
る。ところで、ホストCPUからのデータ読み出しおよ
び、各ボードでの処理済みデータの読み出しの際に、各
ボードがデータレディ信号やデータアクノレッジ信号を
個別に出力したのでは制御が混乱が生じるため、本発明
ではメインボードなるものを設け、このメインボードに
これらの制御を総括的に担わせているのである。
素を、バイトレーン指定手段によって所定のデータバス
に読み出し、かつ、その読み出しの際に、同期化手段に
よって各ボード間で同期をとることにより、一画素を構
成する色要素が同時にデータバスに読み出すことができ
る。ところで、ホストCPUからのデータ読み出しおよ
び、各ボードでの処理済みデータの読み出しの際に、各
ボードがデータレディ信号やデータアクノレッジ信号を
個別に出力したのでは制御が混乱が生じるため、本発明
ではメインボードなるものを設け、このメインボードに
これらの制御を総括的に担わせているのである。
【0014】各ボードにおける固有のアドレス範囲にお
ける任意の複数ビット(以下の実施例では上位2桁とし
ている)は、拡張バスが本発明で用いたNuBusであれば、
当該ボードの装着位置に対応して割り当てられたスロッ
トID番号となり、又、拡張ボードが一般のものであれ
ば、各ボードにおける固有のアドレス範囲の上位2桁
は、当該ボードに設けられたディップスイッチにより設
定されたスロットID番号である。
ける任意の複数ビット(以下の実施例では上位2桁とし
ている)は、拡張バスが本発明で用いたNuBusであれば、
当該ボードの装着位置に対応して割り当てられたスロッ
トID番号となり、又、拡張ボードが一般のものであれ
ば、各ボードにおける固有のアドレス範囲の上位2桁
は、当該ボードに設けられたディップスイッチにより設
定されたスロットID番号である。
【0015】尚、ここではメインボードのアドレス領域
を、該メインボード固有のアドレス領域としたが、並列
動作モード時に、メインボードおよびそれ以外の各ボー
ドが持つ固有のアドレス領域とは別のアドレス領域を新
たに設定してもよい。(200)尚、ホストCPUからの
データ読み出しおよび、各ボードでの処理済みデータの
読み出しの際に、各ボードがデータレディ信号やデータ
アクノレッジ信号を個別に出力したのでは制御が混乱が
生じるため、本発明ではメインボードなるものを設け、
このメインボードにこれらの制御を総括的に担わせてい
るのである。
を、該メインボード固有のアドレス領域としたが、並列
動作モード時に、メインボードおよびそれ以外の各ボー
ドが持つ固有のアドレス領域とは別のアドレス領域を新
たに設定してもよい。(200)尚、ホストCPUからの
データ読み出しおよび、各ボードでの処理済みデータの
読み出しの際に、各ボードがデータレディ信号やデータ
アクノレッジ信号を個別に出力したのでは制御が混乱が
生じるため、本発明ではメインボードなるものを設け、
このメインボードにこれらの制御を総括的に担わせてい
るのである。
【0016】
【実施例】図4は、本発明の1実施例を示した全体のシ
ステム図である。本実施例では、コンピュータシステム
としてアップル社の“MacintoshIIfx"(以下では“Ma
c"と呼ぶ)を採用した。このMac10では、システム
内に拡張バスとしてNuBus,IEEE1196 NuBusをMacintosh
用に変更したMacintoshII NuBus(以下これをNuBus20
と呼ぶ)を持っており、このNuBus20は、10MHzの
クロックで動作するマルチプレックス・バス(同じバス
ラインでアドレスとデータとの双方を転送する)であ
る。そのNuBus20へ本発明に係わる4枚の並列動作ボ
ード100(100-1,100-2,100-3,100-4)を
装着し並列動作を行わせている。これらの各並列動作ボ
ード100は、内部にCPUとデータメモリとを持ち、
このデータメモリは、Mac10内のCPU11(以下
ホストCPUと呼ぶ)からも当該並列動作ボード100
のCPUからも読み書きができるデュアルポートメモリ
である。
ステム図である。本実施例では、コンピュータシステム
としてアップル社の“MacintoshIIfx"(以下では“Ma
c"と呼ぶ)を採用した。このMac10では、システム
内に拡張バスとしてNuBus,IEEE1196 NuBusをMacintosh
用に変更したMacintoshII NuBus(以下これをNuBus20
と呼ぶ)を持っており、このNuBus20は、10MHzの
クロックで動作するマルチプレックス・バス(同じバス
ラインでアドレスとデータとの双方を転送する)であ
る。そのNuBus20へ本発明に係わる4枚の並列動作ボ
ード100(100-1,100-2,100-3,100-4)を
装着し並列動作を行わせている。これらの各並列動作ボ
ード100は、内部にCPUとデータメモリとを持ち、
このデータメモリは、Mac10内のCPU11(以下
ホストCPUと呼ぶ)からも当該並列動作ボード100
のCPUからも読み書きができるデュアルポートメモリ
である。
【0017】又、Mac10内部には、データメモリ1
2と、Mac10とNuBus20とを結合するためのイン
タフェイスとしてNuChip13とを備える。又、各並列動
作ボード100は、NuBus20以外にも並列コントロー
ルバス80により相互接続され、各並列動作ボード10
0を並列動作させる際の同期をとるために用いられる。
尚、並列コントロールバスは、NuBus20における未使
用のバスラインを用いてもよい。
2と、Mac10とNuBus20とを結合するためのイン
タフェイスとしてNuChip13とを備える。又、各並列動
作ボード100は、NuBus20以外にも並列コントロー
ルバス80により相互接続され、各並列動作ボード10
0を並列動作させる際の同期をとるために用いられる。
尚、並列コントロールバスは、NuBus20における未使
用のバスラインを用いてもよい。
【0018】図5は、NuBus20のメモリマップを示し
ている。このNuBus20ではアドレス可能なすべての資
源が単一の4G(ギガ)バイト(アドレス00000000〜FFFFF
FFF)の空間に存在する。その4Gバイトのアドレス空間
をそれぞれ256Mバイト領域の16個に分割し、その
分割した最上位の領域(アドレスF0000000ないしFFFFFFF
F)をスロット空間と呼び、その詳細を図6の左図に示し
ている。このスロット空間は、スロット0Hないしスロ
ットFH(末尾のHは16進表記であることを示す)の各1
6Mバイトの16個に分割され、NuBus20に装着した
ボード位置に基づき、対応するスロットのアドレスが割
り当てられるようになっている(このアドレス割り当て
をジオグラフィック・アドレッシングと呼ぶ)。
ている。このNuBus20ではアドレス可能なすべての資
源が単一の4G(ギガ)バイト(アドレス00000000〜FFFFF
FFF)の空間に存在する。その4Gバイトのアドレス空間
をそれぞれ256Mバイト領域の16個に分割し、その
分割した最上位の領域(アドレスF0000000ないしFFFFFFF
F)をスロット空間と呼び、その詳細を図6の左図に示し
ている。このスロット空間は、スロット0Hないしスロ
ットFH(末尾のHは16進表記であることを示す)の各1
6Mバイトの16個に分割され、NuBus20に装着した
ボード位置に基づき、対応するスロットのアドレスが割
り当てられるようになっている(このアドレス割り当て
をジオグラフィック・アドレッシングと呼ぶ)。
【0019】図6の右図は、スロットCHへ装着したボ
ードにおけるメモリマップを示しており、ROM領域以
外にレジスターおよびデータメモリ領域がある。
ードにおけるメモリマップを示しており、ROM領域以
外にレジスターおよびデータメモリ領域がある。
【0020】図7は、本発明の並列動作ボード100の
機能構成図である。NuBus20には、図示した様にアー
ビトレーション、アドレス/データ、コントロール、ユ
ーティリティ、スロットIDの各信号群のための専用の
信号ラインがある。アービトレーションは自身のボード
がマスターとしてNuBus20上の各資源を使うための信
号源であるが本ボードでは使用しない。
機能構成図である。NuBus20には、図示した様にアー
ビトレーション、アドレス/データ、コントロール、ユ
ーティリティ、スロットIDの各信号群のための専用の
信号ラインがある。アービトレーションは自身のボード
がマスターとしてNuBus20上の各資源を使うための信
号源であるが本ボードでは使用しない。
【0021】バスコントロール手段30は、NuBus仕様
に則り、NuBus20上のアドレス/データ、コントロー
ル、ユーティリティの各信号群と、並列動作ボードの各
資源とを結び付けてデータのやり取りを制御する。
に則り、NuBus20上のアドレス/データ、コントロー
ル、ユーティリティの各信号群と、並列動作ボードの各
資源とを結び付けてデータのやり取りを制御する。
【0022】このバスコントロール手段30において、
アドレス判別手段34は、後記の動作指定手段40内の
並列動作ID有効指定部41に対して並列動作が指定さ
れていない場合は(通常の単独動作となる)、当該ボード
の装着位置を示すスロットID番号発生部21より得ら
れる自身のスロットID番号(例えばスロットCHに装着
したボードであれば“FC”、これは当該ボードのアド
レス範囲における上位1バイト(上位2桁)となる)を取
り込み、一方、並列動作ID有効指定部41に対して本
発明の並列動作が設定されている場合は、動作指定手段
40内の並列動作ID番号指定部42に対しホストCP
U11より送出された並列動作ID番号(並列動作時に
設定されるものであり、詳しくは後で述べる)を取り込
んでおり、このスロットID番号または並列動作ID番
号と、ホストCPU11からNuBus20の任意の空間に
対してアクセスが行われた時の書き込みアドレスの上位
2桁(以下、これを単に書き込みアドレスと呼ぶ)とが一
致した時は、自身のボードへのアクセスと判断する。
尚、このアドレス判別手段34は、ホストCPU11か
らボードに対して出力された読み出しアドレスに対して
も同じような制御をなす。
アドレス判別手段34は、後記の動作指定手段40内の
並列動作ID有効指定部41に対して並列動作が指定さ
れていない場合は(通常の単独動作となる)、当該ボード
の装着位置を示すスロットID番号発生部21より得ら
れる自身のスロットID番号(例えばスロットCHに装着
したボードであれば“FC”、これは当該ボードのアド
レス範囲における上位1バイト(上位2桁)となる)を取
り込み、一方、並列動作ID有効指定部41に対して本
発明の並列動作が設定されている場合は、動作指定手段
40内の並列動作ID番号指定部42に対しホストCP
U11より送出された並列動作ID番号(並列動作時に
設定されるものであり、詳しくは後で述べる)を取り込
んでおり、このスロットID番号または並列動作ID番
号と、ホストCPU11からNuBus20の任意の空間に
対してアクセスが行われた時の書き込みアドレスの上位
2桁(以下、これを単に書き込みアドレスと呼ぶ)とが一
致した時は、自身のボードへのアクセスと判断する。
尚、このアドレス判別手段34は、ホストCPU11か
らボードに対して出力された読み出しアドレスに対して
も同じような制御をなす。
【0023】後の動作説明で詳しく述べるが、ホストC
PU11よりの書き込みアドレス(読みだしアドレスの
場合も同じ)に、自身のスロットID番号が一致したボ
ード100は単独動作として機能し、並列動作ID番号
が一致したボード100は本発明の並列動作をなす。ホ
ストCPU11よりの書き込みアドレスに、スロットI
D番号並びに並列動作ID番号が一致しないボード10
0は、自身のボードへのアクセスではないので、そのボ
ードはなんら機能しない。
PU11よりの書き込みアドレス(読みだしアドレスの
場合も同じ)に、自身のスロットID番号が一致したボ
ード100は単独動作として機能し、並列動作ID番号
が一致したボード100は本発明の並列動作をなす。ホ
ストCPU11よりの書き込みアドレスに、スロットI
D番号並びに並列動作ID番号が一致しないボード10
0は、自身のボードへのアクセスではないので、そのボ
ードはなんら機能しない。
【0024】読出制御手段31および書込制御手段32
は、ホストCPU11からボードに対してデータ読み出
しおよび書き込み要求があった場合にそれぞれの制御を
担うものである。
は、ホストCPU11からボードに対してデータ読み出
しおよび書き込み要求があった場合にそれぞれの制御を
担うものである。
【0025】動作指定手段40は、当該ボード100の
動作および機能をホストCPU11から指定するもので
あり、前述の並列動作を指定する並列動作ID有効指定
部41と、並列動作ID番号を出力する並列動作ID番
号指定部42と、4枚のボードの内の1枚を、並列動作
時にNuBus20との制御信号のやり取りを司るメインボ
ードとして指定するためのメインボード指定部43と、
ホストCPU11からデータ読み出しの要求があった場
合に、NuBus20でバイト単位(即ち8本のデータバス
毎)に分割したバイトレーンのいずれに対してデータを
読み出すかを指定するための読出しバイトレーン指定部
44と、デュアルポートメモリ60またはNuBus20上
のデータをバイト単位で並び変える際に、その並び方を
指定するデータ配置指定部45と、並び変えたデータよ
り所望のデータを読み取るためのデータ幅指定部46と
を備える。
動作および機能をホストCPU11から指定するもので
あり、前述の並列動作を指定する並列動作ID有効指定
部41と、並列動作ID番号を出力する並列動作ID番
号指定部42と、4枚のボードの内の1枚を、並列動作
時にNuBus20との制御信号のやり取りを司るメインボ
ードとして指定するためのメインボード指定部43と、
ホストCPU11からデータ読み出しの要求があった場
合に、NuBus20でバイト単位(即ち8本のデータバス
毎)に分割したバイトレーンのいずれに対してデータを
読み出すかを指定するための読出しバイトレーン指定部
44と、デュアルポートメモリ60またはNuBus20上
のデータをバイト単位で並び変える際に、その並び方を
指定するデータ配置指定部45と、並び変えたデータよ
り所望のデータを読み取るためのデータ幅指定部46と
を備える。
【0026】データ配置手段50は、データ配置指定部
45で指定された並び方に従って後記のデュアルポート
メモリ60よりのデータまたはNuBus20からのデータ
を並び変える。
45で指定された並び方に従って後記のデュアルポート
メモリ60よりのデータまたはNuBus20からのデータ
を並び変える。
【0027】デュアルポートメモリ60は、ホストCP
U11からのデータまたは後記のDSP70からのデー
タを一時格納する。
U11からのデータまたは後記のDSP70からのデー
タを一時格納する。
【0028】DSP70は、デュアルポートメモリ60
に記憶された、ホストCPU11からのデータを処理す
るための一種のプロセッサであり、内部にはデータメモ
リ71およびプログラムメモリ72を備える。このDS
Pとはデジタル・シグナル・プロセッサの略であり、音
声や画像データを高速処理するために特別に設計された
ものである。尚、図4に示したように、このDSP70
の代わりに一般のCPUを用いてもよい。
に記憶された、ホストCPU11からのデータを処理す
るための一種のプロセッサであり、内部にはデータメモ
リ71およびプログラムメモリ72を備える。このDS
Pとはデジタル・シグナル・プロセッサの略であり、音
声や画像データを高速処理するために特別に設計された
ものである。尚、図4に示したように、このDSP70
の代わりに一般のCPUを用いてもよい。
【0029】パラレルデータ経路73は、ホストCPU
11からDSP70のデータメモリ71やプログラムメ
モリ72からデータおよびプログラムデータを読み書き
するためのものであり、これを通じてホストCPU11
からDSP70に対してプログラムがダウンロードされ
る。
11からDSP70のデータメモリ71やプログラムメ
モリ72からデータおよびプログラムデータを読み書き
するためのものであり、これを通じてホストCPU11
からDSP70に対してプログラムがダウンロードされ
る。
【0030】尚、NuBusの規定ではホストCPU11
が、装着されたボードの各種情報を知るために、図6の
右図に示したような宣言ROMがボード100上に必要
であるが、本発明では特に不必要であるため記載してい
ない。
が、装着されたボードの各種情報を知るために、図6の
右図に示したような宣言ROMがボード100上に必要
であるが、本発明では特に不必要であるため記載してい
ない。
【0031】以下、本発明の並列動作ボード100の実
施例として、1画素がそれぞれ1バイト長の色要素
(C,M,Y,K)からなる画像データを、4枚のボード
100にて色要素別に並列処理する場合を例にとって説
明する。図8にホストCPU11および各並列動作ボー
ド100のそれぞれのフローチャートに示している。
尚、並列動作ボード100-1,100-2,100-3,1
00-4は、スロットAH,BH,CH,DHにそれぞれ装着
した。
施例として、1画素がそれぞれ1バイト長の色要素
(C,M,Y,K)からなる画像データを、4枚のボード
100にて色要素別に並列処理する場合を例にとって説
明する。図8にホストCPU11および各並列動作ボー
ド100のそれぞれのフローチャートに示している。
尚、並列動作ボード100-1,100-2,100-3,1
00-4は、スロットAH,BH,CH,DHにそれぞれ装着
した。
【0032】ステップS1にてシステムの電源をオンに
すると、各ボード100の初期設定が行われ、これによ
り各ボード100においてはステップS21にて、並列
動作ID有効指定部41が解除され、以下の動作でわか
るように単独動作モードとなる。次のステップS22で
はホストCPU11よりのデータ出力を待つ。
すると、各ボード100の初期設定が行われ、これによ
り各ボード100においてはステップS21にて、並列
動作ID有効指定部41が解除され、以下の動作でわか
るように単独動作モードとなる。次のステップS22で
はホストCPU11よりのデータ出力を待つ。
【0033】ホストCPU11は、ステップS2におい
て、書き込みアドレスを“FA"にして、並列動作時の
制御に必要な以下のデータ(これらを制御データという)
を出力する。 ・メインボードの指定:これは予め作成してあったホス
トCPU11のプログラムで決められるものであり、本
実施例ではスロットCHに装着した並列動作ボード10
0-3をメインボードに指定するとする。 ・並列動作ID番号の指定:ボード100-3をメインボ
ードとしたならば、このボード100-3自身のスロット
ID番号“FC"を並列動作ID番号として出力する(こ
れは各ボード100の並列動作ID番号指定部42に取
り込まれる)。 ・読み出しバイトレーンの指定:ホストCPU11より
のデータ要求に呼応して、各ボード100からNuBusへ
データ出力する際にいずれのバイトレーンに出力するか
を指定する(これは各ボード100の読み出しバイトレ
ーン指定部44に取り込まれる)。 ・データ配置指定およびデータ幅指定:これについては
後で詳しく述べる。
て、書き込みアドレスを“FA"にして、並列動作時の
制御に必要な以下のデータ(これらを制御データという)
を出力する。 ・メインボードの指定:これは予め作成してあったホス
トCPU11のプログラムで決められるものであり、本
実施例ではスロットCHに装着した並列動作ボード10
0-3をメインボードに指定するとする。 ・並列動作ID番号の指定:ボード100-3をメインボ
ードとしたならば、このボード100-3自身のスロット
ID番号“FC"を並列動作ID番号として出力する(こ
れは各ボード100の並列動作ID番号指定部42に取
り込まれる)。 ・読み出しバイトレーンの指定:ホストCPU11より
のデータ要求に呼応して、各ボード100からNuBusへ
データ出力する際にいずれのバイトレーンに出力するか
を指定する(これは各ボード100の読み出しバイトレ
ーン指定部44に取り込まれる)。 ・データ配置指定およびデータ幅指定:これについては
後で詳しく述べる。
【0034】これが済めば、書き込みアドレスを以下、
“FB"、“FC"、“FD"の順に切り替える毎に上記
の制御データが送出される。
“FB"、“FC"、“FD"の順に切り替える毎に上記
の制御データが送出される。
【0035】一方、各ボード100では、並列動作ID
有効指定部41に対して並列動作が解除されているた
め、アドレス判別手段34は、スロットID番号発生部
21より得られるスロットID番号(これは各ボード1
00のアドレス領域の上位2桁であり、ボード100-
1,100-2,100-3,100-4に対してはそれぞれ
“FA",“FB",“FC",“FD"であった)と、ホ
ストCPU11から出力された、制御データに対する書
き込みアドレスとが一致するかがステップS23で判定
されるが、書き込みアドレスが“FA"の時は、ボード
100-1においてのみ、双方のアドレスが一致するため
にステップS23からステップS26に進み、前記書き
込みアドレス“FA"に伴って出力された前記の“メイ
ンボードの指定"の制御データがステップS26にて取
り込まれ、ステップS22戻り、次のデータ出力を待
つ。一方、他のボード100-2〜100-4では、自身の
スロットIDがそれぞれ“FB",“FC",“FD"で
あり、ホストCPU11よりの書き込みアドレス“F
A"と一致しないためにステップS23からステップS
22に戻るだけで、前記の“メインボードの指定"の制
御データは、ボード100-2,100-3,100-4には
取り込まれない。
有効指定部41に対して並列動作が解除されているた
め、アドレス判別手段34は、スロットID番号発生部
21より得られるスロットID番号(これは各ボード1
00のアドレス領域の上位2桁であり、ボード100-
1,100-2,100-3,100-4に対してはそれぞれ
“FA",“FB",“FC",“FD"であった)と、ホ
ストCPU11から出力された、制御データに対する書
き込みアドレスとが一致するかがステップS23で判定
されるが、書き込みアドレスが“FA"の時は、ボード
100-1においてのみ、双方のアドレスが一致するため
にステップS23からステップS26に進み、前記書き
込みアドレス“FA"に伴って出力された前記の“メイ
ンボードの指定"の制御データがステップS26にて取
り込まれ、ステップS22戻り、次のデータ出力を待
つ。一方、他のボード100-2〜100-4では、自身の
スロットIDがそれぞれ“FB",“FC",“FD"で
あり、ホストCPU11よりの書き込みアドレス“F
A"と一致しないためにステップS23からステップS
22に戻るだけで、前記の“メインボードの指定"の制
御データは、ボード100-2,100-3,100-4には
取り込まれない。
【0036】ステップS2にて、書き込みアドレスの上
位2桁“FA"を伴って次々に出力される制御データ
は、同様に、ボード100-1にだけ取り込まれる。これ
でわかるように、ホストCPU11から出力される書き
込みアドレスが“FA"の場合は、ボード100-1のみ
がアクセスされて、書き込みアドレスの上位2桁が“F
B"に切り替わると、今度は、ボード100-2のみがア
クセスされ。このようにホストCPU11よりの書き込
みアドレスが“FA",“FB",“FC",“FD"と順
に切り替えることで、ボード100-1,100-2,10
0-3,100-4が順にアクセスされ、アクセスされたボ
ード100に対して各種制御データが取り込まれる。こ
れですべてのボードに対して同じ制御データが設定され
たことになる。この動作は、図1で述べた従来の単独動
作と同じである。尚、現段階ではボード100はまだ単
独動作モードにある。
位2桁“FA"を伴って次々に出力される制御データ
は、同様に、ボード100-1にだけ取り込まれる。これ
でわかるように、ホストCPU11から出力される書き
込みアドレスが“FA"の場合は、ボード100-1のみ
がアクセスされて、書き込みアドレスの上位2桁が“F
B"に切り替わると、今度は、ボード100-2のみがア
クセスされ。このようにホストCPU11よりの書き込
みアドレスが“FA",“FB",“FC",“FD"と順
に切り替えることで、ボード100-1,100-2,10
0-3,100-4が順にアクセスされ、アクセスされたボ
ード100に対して各種制御データが取り込まれる。こ
れですべてのボードに対して同じ制御データが設定され
たことになる。この動作は、図1で述べた従来の単独動
作と同じである。尚、現段階ではボード100はまだ単
独動作モードにある。
【0037】次のステップS3ではCPUからの書き込
みアドレスを、“FA",“FB",“FC",“FD"の
順に切り替えながら“並列動作設定"の制御データを出
力することで、それぞれのボード100-1,100-2,
100-3,100-4において、ステップS23からステ
ップS24に進み、“並列動作設定"の制御データが取
り込まれ、これにより、各ボード100の並列動作ID
有効指定41に対して並列動作が設定される。これ以降
は以下に述べるように並列動作モードとなる。
みアドレスを、“FA",“FB",“FC",“FD"の
順に切り替えながら“並列動作設定"の制御データを出
力することで、それぞれのボード100-1,100-2,
100-3,100-4において、ステップS23からステ
ップS24に進み、“並列動作設定"の制御データが取
り込まれ、これにより、各ボード100の並列動作ID
有効指定41に対して並列動作が設定される。これ以降
は以下に述べるように並列動作モードとなる。
【0038】この後、ステップS4でホストCPU11
から、1画素分の画像データ(C11,M11,Y11,K11)
が、NuBus20の4本のバスライン(例えば後で参照する
図9に示したバスラインB1,B2,B3,B4)に対
しパラレルに出力されるが、この場合の並列動作モード
における書き込みアドレスは、前記の並列動作ID番号
であった“FC"に固定される。
から、1画素分の画像データ(C11,M11,Y11,K11)
が、NuBus20の4本のバスライン(例えば後で参照する
図9に示したバスラインB1,B2,B3,B4)に対
しパラレルに出力されるが、この場合の並列動作モード
における書き込みアドレスは、前記の並列動作ID番号
であった“FC"に固定される。
【0039】このようにしてステップS4で処理データ
が出力されると、各ボード100においては、ステップ
S22からステップS23に進み、アドレス判定が行わ
れる。この時点では、各ボード100の並列動作ID有
効指定部41に対して並列動作が設定されているので、
各アドレス判別手段34においては、並列動作ID番号
指定部42に設定されていた並列動作ID番号(FCで
あった)と、ホストCPU11から出力された書き込み
アドレスの上位2桁(これもFCであった)とが一致して
いるため、すべてのボード100において、ステップS
23からステップS27に進み、前記の1画素分の画像
データ(C11,M11,Y11,K11)がボード内に導かれ
る。
が出力されると、各ボード100においては、ステップ
S22からステップS23に進み、アドレス判定が行わ
れる。この時点では、各ボード100の並列動作ID有
効指定部41に対して並列動作が設定されているので、
各アドレス判別手段34においては、並列動作ID番号
指定部42に設定されていた並列動作ID番号(FCで
あった)と、ホストCPU11から出力された書き込み
アドレスの上位2桁(これもFCであった)とが一致して
いるため、すべてのボード100において、ステップS
23からステップS27に進み、前記の1画素分の画像
データ(C11,M11,Y11,K11)がボード内に導かれ
る。
【0040】このように、各ボード100に対して共通
の並列動作ID番号“FC"を設定し、ホストCPU1
1から出力する書き込みアドレスを“FC"にすれば、
ホストCPU11からの指令に対して全ボード100が
同時に同じ動作、即ち並列動作を行うようになり、NuBu
s20には単一のボード100が装着されたことと等価
になる。
の並列動作ID番号“FC"を設定し、ホストCPU1
1から出力する書き込みアドレスを“FC"にすれば、
ホストCPU11からの指令に対して全ボード100が
同時に同じ動作、即ち並列動作を行うようになり、NuBu
s20には単一のボード100が装着されたことと等価
になる。
【0041】さて、前記のステップS27において、各
ボード100に対して導かれた1画素分の画像データ
(C11,M11,Y11,K11)は、データ配置指定部45、
データ幅指定部46およびデータ配置手段50の制御に
より、色要素C11はボード100-1に、色要素M11,Y
11,K11はそれぞれ、100-2,100-3,100-4に
個々に取り込まれてデュアルポートメモリ60に取り込
まれるが、その取り込み動作を図9を用いて説明する。
ボード100に対して導かれた1画素分の画像データ
(C11,M11,Y11,K11)は、データ配置指定部45、
データ幅指定部46およびデータ配置手段50の制御に
より、色要素C11はボード100-1に、色要素M11,Y
11,K11はそれぞれ、100-2,100-3,100-4に
個々に取り込まれてデュアルポートメモリ60に取り込
まれるが、その取り込み動作を図9を用いて説明する。
【0042】ホストCPU11側のデータメモリ12よ
り読み出された第1行、第1列の画素に対する画像デー
タ(C11,M11,Y11,K11)が、NuBus20のバスラインB
1,B2,B3,B4に色要素毎にパラレルに出力さ
れ、その画像データ(C11,M11,Y11,K11)は、ホス
トCPU11により同時にアクセスされた全ボードに取
り込まれる(81で示すように4バイト長である)。
り読み出された第1行、第1列の画素に対する画像デー
タ(C11,M11,Y11,K11)が、NuBus20のバスラインB
1,B2,B3,B4に色要素毎にパラレルに出力さ
れ、その画像データ(C11,M11,Y11,K11)は、ホス
トCPU11により同時にアクセスされた全ボードに取
り込まれる(81で示すように4バイト長である)。
【0043】その後、ボード100-1では1バイト長の
色要素C11が、ボード100-2では色要素M11が、ボー
ド100-3では色要素Y11が、ボード100-4では色要
素K11がそれぞれ先頭に位置するように、データ配置指
定部45の指示により、データ配置手段50において並
び替えられる(82に示す)。次には、データ幅指定部4
6よりの指示により、デュアルポートメモリ60におい
て、並び替えた4バイト構成のデータから先頭の1バイ
ト長のデータが選択されて(83で示す)、再びデュアル
ポートメモリ60に書き込まれる。次には第1行、第2
列の画素に対する画像データ(C12,M12,Y12,K12)が
読み出され、同じような制御が繰替えされることでボー
ド100-1には色要素Cのみ、ボード100-2,100
-3,100-4にはそれぞれ色要素M,Y,Kのみがそれ
ぞれのデュアルポートメモリ60に書き込まれる。
色要素C11が、ボード100-2では色要素M11が、ボー
ド100-3では色要素Y11が、ボード100-4では色要
素K11がそれぞれ先頭に位置するように、データ配置指
定部45の指示により、データ配置手段50において並
び替えられる(82に示す)。次には、データ幅指定部4
6よりの指示により、デュアルポートメモリ60におい
て、並び替えた4バイト構成のデータから先頭の1バイ
ト長のデータが選択されて(83で示す)、再びデュアル
ポートメモリ60に書き込まれる。次には第1行、第2
列の画素に対する画像データ(C12,M12,Y12,K12)が
読み出され、同じような制御が繰替えされることでボー
ド100-1には色要素Cのみ、ボード100-2,100
-3,100-4にはそれぞれ色要素M,Y,Kのみがそれ
ぞれのデュアルポートメモリ60に書き込まれる。
【0044】尚、データ配置手段50において、マルチ
プレクサ等により所望のデータを直接選択すれば、デー
タ幅指定部46は不要となるが、これを設けた理由は、
各ボード100に共通のデータ、例えば画像データ処理
に用いる係数等のデータの設定の場合には、データ幅を
例えば4バイト長に指定すれば、4バイトのデータを一
度に取り込むことが可能になるためである。
プレクサ等により所望のデータを直接選択すれば、デー
タ幅指定部46は不要となるが、これを設けた理由は、
各ボード100に共通のデータ、例えば画像データ処理
に用いる係数等のデータの設定の場合には、データ幅を
例えば4バイト長に指定すれば、4バイトのデータを一
度に取り込むことが可能になるためである。
【0045】図8に戻り、各ボード100に画像データ
がすべて取り込まれると、ステップS27からステップ
S27からステップS28に進み、各ボード100内の
DSP70によって画像データの拡大、縮小等の処理が
各ボード100において並行して処理される。ボード1
00においてデータ処理が終了すれば、次に処理した画
像データの読み出しに移行する。
がすべて取り込まれると、ステップS27からステップ
S27からステップS28に進み、各ボード100内の
DSP70によって画像データの拡大、縮小等の処理が
各ボード100において並行して処理される。ボード1
00においてデータ処理が終了すれば、次に処理した画
像データの読み出しに移行する。
【0046】各ボード100でデータ処理が終了する
と、ステップS28からステップS29に進み、各ボー
ド100からは処理済の画像データ(C,M,Y,K)が
1画素づつ読み出されて例えば前記のバスラインB1,
B2,B3,B4にそれぞれ出力されるが、その読み出
し制御を図10を用いて説明する。
と、ステップS28からステップS29に進み、各ボー
ド100からは処理済の画像データ(C,M,Y,K)が
1画素づつ読み出されて例えば前記のバスラインB1,
B2,B3,B4にそれぞれ出力されるが、その読み出
し制御を図10を用いて説明する。
【0047】ボード100-1においては、デュアルポー
トメモリ60に格納された処理済データの読み出しの際
に、読み出しアドレスを第1行、第1列の画素とし、か
つ、データ幅指定部46により読み出しデータ幅を1バ
イトに指定することにより、色要素C11のみが読み出さ
れ、他のボード100-2,100-3,100-4において
も同様な制御が行われることにより、それぞれ色要素M
11,Y11,K11が読み出され(92で示す)、そして各々
のデータ配置手段50にセットされる(93で示す)。次
にボード100-1においては、データ配置指定部45に
より、前記色要素C11が先頭に来るように並び替えが行
われ、ボード100-2においては、色要素M11が先頭か
ら2番目に来るように並び替えられ、又、ボード100
-3,100-4においては、対応する色要素Y11,K11が
先頭からそれぞれ3番目および4番目に位置するように
並び替えられる(94で示す)。
トメモリ60に格納された処理済データの読み出しの際
に、読み出しアドレスを第1行、第1列の画素とし、か
つ、データ幅指定部46により読み出しデータ幅を1バ
イトに指定することにより、色要素C11のみが読み出さ
れ、他のボード100-2,100-3,100-4において
も同様な制御が行われることにより、それぞれ色要素M
11,Y11,K11が読み出され(92で示す)、そして各々
のデータ配置手段50にセットされる(93で示す)。次
にボード100-1においては、データ配置指定部45に
より、前記色要素C11が先頭に来るように並び替えが行
われ、ボード100-2においては、色要素M11が先頭か
ら2番目に来るように並び替えられ、又、ボード100
-3,100-4においては、対応する色要素Y11,K11が
先頭からそれぞれ3番目および4番目に位置するように
並び替えられる(94で示す)。
【0048】次に読出バイトレーン44により、それぞ
れ読み出しバイトレーンを指定することにより、各色要
素C11,M11,Y11,K11がNuBus20のデータバスB
1,B2,B3,B4にそれぞれ読み出されることで、
各ボード100で並び替えられていた各色要素C11,M
11,Y11,K11が4バイト長の1群のデータ(95で示
す)として読み出される。この読み出された画像データ
はホストCPU11にてステップS5で1画素分の画像
データ(C11,M11,Y11,K11)づつ取り込まれる。次
に読み出しアドレスを第1行、第2列の画素とすること
により、ボード100-2では色要素C12が読み出され、
他のボード100-2,100-3,100-4においても同
様に色要素M12,Y12,K12が読み出され、以下、同じ
動作が繰替えされる。
れ読み出しバイトレーンを指定することにより、各色要
素C11,M11,Y11,K11がNuBus20のデータバスB
1,B2,B3,B4にそれぞれ読み出されることで、
各ボード100で並び替えられていた各色要素C11,M
11,Y11,K11が4バイト長の1群のデータ(95で示
す)として読み出される。この読み出された画像データ
はホストCPU11にてステップS5で1画素分の画像
データ(C11,M11,Y11,K11)づつ取り込まれる。次
に読み出しアドレスを第1行、第2列の画素とすること
により、ボード100-2では色要素C12が読み出され、
他のボード100-2,100-3,100-4においても同
様に色要素M12,Y12,K12が読み出され、以下、同じ
動作が繰替えされる。
【0049】この読み出し時においても、例えばボード
100-1からのみデータを読み出す単独動作モードであ
れば、読み出しアドレスを第1行、第1列とし、データ
幅指定部46により4バイトを指定すれば、C11,
C12,C13,C14のデータを一度に読み出すことができ
る。
100-1からのみデータを読み出す単独動作モードであ
れば、読み出しアドレスを第1行、第1列とし、データ
幅指定部46により4バイトを指定すれば、C11,
C12,C13,C14のデータを一度に読み出すことができ
る。
【0050】処理済画像データの読み出しがすべて終了
すれば、図8のステップS30からステップS22に戻
り、次にホストCPU11からのデータ出力を待つ。
すれば、図8のステップS30からステップS22に戻
り、次にホストCPU11からのデータ出力を待つ。
【0051】上述したように、各ボード100を並列動
作モードに移行するためには最初、各ボード100は単
独動作モードにあることが必要である。そこで、ホスト
CPU11は、処理済み画像データをすべて取り込んだ
後、ステップS6にて、書き込みアドレスを再び“F
C”にして“並列動作解除”の制御データを出力する。
この制御データは、現在も並列動作モードにあるすべて
のボード100で取り込まれ、各ボードにおいて、ステ
ップS22、ステップS23からステップS25に進
み、その制御データが並列動作ID有効指定部41に取
り込まれることにより、並列動作モードが解除され単独
動作モードに戻される。
作モードに移行するためには最初、各ボード100は単
独動作モードにあることが必要である。そこで、ホスト
CPU11は、処理済み画像データをすべて取り込んだ
後、ステップS6にて、書き込みアドレスを再び“F
C”にして“並列動作解除”の制御データを出力する。
この制御データは、現在も並列動作モードにあるすべて
のボード100で取り込まれ、各ボードにおいて、ステ
ップS22、ステップS23からステップS25に進
み、その制御データが並列動作ID有効指定部41に取
り込まれることにより、並列動作モードが解除され単独
動作モードに戻される。
【0052】尚、上記実施例では拡張バスとしてNuBus
20(装着スロット位置に対応して自動的に固有のアド
レス領域が設定されるものであった)を採用したが、一
般の拡張バス(各ボードに設けられたディップスイッチ
の切り替えにより所望のアドレス領域を設定するもので
あった)に対しても本発明の並列動作ボードを装着する
ことができる。その場合には、そのディップスイッチの
切り替えにより、各ボードを図6のスロットAH,BH,
CH,DHに対して割り当てられたアドレス範囲を設定す
ればよい。
20(装着スロット位置に対応して自動的に固有のアド
レス領域が設定されるものであった)を採用したが、一
般の拡張バス(各ボードに設けられたディップスイッチ
の切り替えにより所望のアドレス領域を設定するもので
あった)に対しても本発明の並列動作ボードを装着する
ことができる。その場合には、そのディップスイッチの
切り替えにより、各ボードを図6のスロットAH,BH,
CH,DHに対して割り当てられたアドレス範囲を設定す
ればよい。
【0053】又、上記実施例では、1画素が4色の要素
からなる画像データを並列処理するために4枚のボード
を用いたが、従来技術で述べたように1画素が3色要素
(R,G,B)からなる画像データを並列処理するには本発
明のボードを3枚用いれば良い。
からなる画像データを並列処理するために4枚のボード
を用いたが、従来技術で述べたように1画素が3色要素
(R,G,B)からなる画像データを並列処理するには本発
明のボードを3枚用いれば良い。
【0054】
【発明の効果】以上説明したように、本発明は、ボード
の一つをメインボードに指定し、そして残りのボードの
アドレス領域を、メインボード固有のアドレス領域に一
致させたので、ホストCPU側から見れば、拡張バスに
唯一のボードが装着されたのと等価となり、従って各ボ
ードは並行して動作する並列動作モードとなる。この並
列動作モードであれば、ホストCPUより出力する処理
対象のデータをすべてのボードに取り込ますことがで
き、よって、各ボードで並列処理することが可能とな
り、高速でデータ処理が行える。
の一つをメインボードに指定し、そして残りのボードの
アドレス領域を、メインボード固有のアドレス領域に一
致させたので、ホストCPU側から見れば、拡張バスに
唯一のボードが装着されたのと等価となり、従って各ボ
ードは並行して動作する並列動作モードとなる。この並
列動作モードであれば、ホストCPUより出力する処理
対象のデータをすべてのボードに取り込ますことがで
き、よって、各ボードで並列処理することが可能とな
り、高速でデータ処理が行える。
【図1】 従来のシステムで並列動作処理を行わせた時
のボードの装着例を示した図
のボードの装着例を示した図
【図2】 パイプライン処理におけるボードの接続関係
を示した図
を示した図
【図3】 一つのボード内に複数のCPUを配したマル
チプロセッサ構成を示した図
チプロセッサ構成を示した図
【図4】 本発明の並列動作ボードを装着したシステム
図
図
【図5】 拡張バスの一種であるNuBusのメモリマ
ップ図
ップ図
【図6】 図5のメモリマップにおけるスロット空間の
詳細図
詳細図
【図7】 本発明の並列動作ボードの1実施例を示した
内部構成図
内部構成図
【図8】 本発明の並列動作ボードを装着したシステム
の制御動作を示したフローチャート
の制御動作を示したフローチャート
【図9】 図8のステップS27における処理データの
取り込みを詳細に示した図
取り込みを詳細に示した図
【図10】 図8のステップS29における処理済みデ
ータの出力を詳細に示した図
ータの出力を詳細に示した図
10 Mac 11 ホストCPU 12 データメモリ 20 NuBus 21 スロットID番号発生部 30 バスコントロール手段 31 読出制御手段 32 書込制御手段 34 アドレス判別手段 40 動作指定手段 41 並列動作ID有効指定部 42 並列動作ID番号指定部 43 メインボード指定部 44 読出しバイトレーン指定部 45 データ配置指定部 46 データ幅指定部 50 データ配置手段 60 デュアルポートメモリ 70 DSP 71 データメモリ 72 プログラムメモリ 80 並列コントロールバス 100 並列動作ボード
Claims (3)
- 【請求項1】 拡張バスに装着した他のボードと並列動
作を可能にするボードであって、 すべてのボードの中から一つのボードを、バスとの信号
のやり取りを担わせるメインボードとするメインボード
指定手段(43)と、 メインボード以外のすべてのボードにおける固有のアド
レス範囲を、メインボードのアドレス範囲に一致させる
アドレス範囲変更手段(41,42)と、 メインボードを含む各ボードでバスに対してデータの入
出力を司るデータ入出力手段(30)と、 すべてのボードのアドレス範囲をメインボードのアドレ
ス範囲に一致させた状態でホストCPUより、該アドレ
ス範囲にデータを送出することにより、全部のボードに
同時に導かれた1群のデータの中から、各ボード毎に所
定のデータを取り込むために設けられたデータ分配手段
(45,46,50)と、 各ボードで振り分けられ、該ボードで処理された各デー
タを、一つのバスに重複して出力しないよう、各ボード
毎に読み出しバイトレーンを設定する読み出しバイトレ
ーン指定手段(44)と、 各ボードより、前記処理済みのデータを1群のデータと
して読み出せるよう、各ボード間で読み出しを同期させ
る同期化手段(31,80)と、を備えたことを特徴とす
る並列動作ボード。 - 【請求項2】 各ボードにおける固有のアドレス範囲に
おける任意の複数ビットは、当該ボードの装着位置に対
応して割り当てられたスロットID番号である請求項1
記載の並列動作ボード。 - 【請求項3】 各ボードにおける固有のアドレス範囲に
おける任意の複数ビットは、当該ボードに設けられたデ
ィップスイッチにより設定されたスロットID番号であ
る請求項1記載の並列動作ボード。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4335824A JPH06187304A (ja) | 1992-12-16 | 1992-12-16 | 並列動作ボード |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4335824A JPH06187304A (ja) | 1992-12-16 | 1992-12-16 | 並列動作ボード |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH06187304A true JPH06187304A (ja) | 1994-07-08 |
Family
ID=18292817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4335824A Pending JPH06187304A (ja) | 1992-12-16 | 1992-12-16 | 並列動作ボード |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH06187304A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005134976A (ja) * | 2003-10-28 | 2005-05-26 | Hitachi High-Technologies Corp | 外観検査装置用画像処理装置 |
JP2007233554A (ja) * | 2006-02-28 | 2007-09-13 | National Institute Of Advanced Industrial & Technology | 高速パターンマッチング装置の探索方法 |
JP2008015798A (ja) * | 2006-07-06 | 2008-01-24 | Hitachi Kokusai Electric Inc | 映像発信装置 |
US7822315B2 (en) | 2003-03-04 | 2010-10-26 | Sony Corporation | Editing device, editing apparatus, and editing method for HDTV signal |
-
1992
- 1992-12-16 JP JP4335824A patent/JPH06187304A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7822315B2 (en) | 2003-03-04 | 2010-10-26 | Sony Corporation | Editing device, editing apparatus, and editing method for HDTV signal |
JP2005134976A (ja) * | 2003-10-28 | 2005-05-26 | Hitachi High-Technologies Corp | 外観検査装置用画像処理装置 |
JP2007233554A (ja) * | 2006-02-28 | 2007-09-13 | National Institute Of Advanced Industrial & Technology | 高速パターンマッチング装置の探索方法 |
JP2008015798A (ja) * | 2006-07-06 | 2008-01-24 | Hitachi Kokusai Electric Inc | 映像発信装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5056000A (en) | Synchronized parallel processing with shared memory | |
EP0243085B1 (en) | Coprocessor architecture | |
US3787673A (en) | Pipelined high speed arithmetic unit | |
US5586256A (en) | Computer system using multidimensional addressing between multiple processors having independently addressable internal memory for efficient reordering and redistribution of data arrays between the processors | |
US6081860A (en) | Address pipelining for data transfers | |
USRE41904E1 (en) | Methods and apparatus for providing direct memory access control | |
US5214769A (en) | Multiprocessor control system | |
EP0223413A2 (en) | Interrupt handling in a multiprocessor computing system | |
EP1381957A2 (en) | Data processing apparatus and system and method for controlling memory access | |
CA2018865C (en) | Multiprocessor system with vector pipelines | |
JP3523286B2 (ja) | 順次データ転送型メモリ及び順次データ転送型メモリを用いたコンピュータシステム | |
US6457121B1 (en) | Method and apparatus for reordering data in X86 ordering | |
JP2001084229A (ja) | Simd型プロセッサ | |
KR920006617B1 (ko) | 멀티프로세서시스템 | |
US6954869B2 (en) | Methods and apparatus for clock domain conversion in digital processing systems | |
JPH06187304A (ja) | 並列動作ボード | |
EP0323080B1 (en) | Multiprocessor memory access control system | |
US20040064662A1 (en) | Methods and apparatus for bus control in digital signal processors | |
JPH05282242A (ja) | バス制御方式 | |
Siegel et al. | Parallel memory system for a partitionable SIMD/MIMD machine | |
KR100327712B1 (ko) | 거대병렬컴퓨터장치 | |
JP2643116B2 (ja) | 主記憶制御装置 | |
JPH0646413B2 (ja) | デ−タ処理プロセッサ | |
JPH0586581B2 (ja) | ||
US20060064553A9 (en) | Data processing apparatus and system and method for controlling memory access |