JPH06105450B2 - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH06105450B2
JPH06105450B2 JP63135890A JP13589088A JPH06105450B2 JP H06105450 B2 JPH06105450 B2 JP H06105450B2 JP 63135890 A JP63135890 A JP 63135890A JP 13589088 A JP13589088 A JP 13589088A JP H06105450 B2 JPH06105450 B2 JP H06105450B2
Authority
JP
Japan
Prior art keywords
processor
memory
processors
bus
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
Application number
JP63135890A
Other languages
English (en)
Other versions
JPH01304571A (ja
Inventor
光郎 大内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP63135890A priority Critical patent/JPH06105450B2/ja
Publication of JPH01304571A publication Critical patent/JPH01304571A/ja
Publication of JPH06105450B2 publication Critical patent/JPH06105450B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、複数のプロセッサを複数のメモリ・ユニット
に接続したいわゆるマルチ・プロセッサ構成のデータ処
理装置に関し、特にグラフィックス処理に最適化したデ
ータ処理装置に関する。
〔従来の技術〕
一般に、グラフィックス処理は、おもにBITBLT(BIT BL
ock Transfer)処理、線図形描画、多角形内塗りつぶし
の3種類が基本となる。
これらのグラフィックス処理を行う従来のマルチ・プロ
セッサ構成のシステムは、つぎのような考え方で処理を
高速化していた。
従来のシステムは、1画素を構成する複数ビットの色情
報のうちある色情報ばかりを格納したいいわゆるプレー
ン構成メモリを複数プレーンもたせて各プレーンごとに
プロセッサを接続し、全プロセッサに同じ処理をさせる
ことで高速化するものである。グラフィックス基本処理
の多くは、プレーン単位での処理の独立性が高いため、
このような構成が可能である。
たとえば、画面上(プレーン・メモリに対応している)
のある矩形領域から別の位置の矩形領域へのデータ転
送、いわゆるBITBLT処理は、各プロセッサに同じ領域指
定パラメータを与えれば独立に処理することが可能であ
る。また、単純な線図形描画を行う場合にも、各プロセ
ッサは1ビットずつ処理しなければならないが、全プロ
セッサが同時に動作できるので全体としては1画素ずつ
処理されていく。さらに、多角形内塗りつぶしを実行す
る際にも、プレーンごとの処理により高速化が可能であ
る。
しかしながら、グラフィックス処理には1画素の情報を
すべて1ワード内に格納した、いわゆるパックト・プク
セル構成メモリにした方が高速処理できる場合がある。
たとえば、線図形描画はプレーン構成の場合、1つのプ
ロセッサの処理は1ビット単位であるが、パックト・ピ
クセル構成の場合は1つのプロセッサで1画素単位の処
理が可能となる。したがって、線図形描画に限っていえ
ば、同じ性能を実現するためにパックト・ピクセル構成
の場合、1個のプロセッサしか必要でないのに対して、
プレーン構成の場合はN個(Nは1画素のピット数)必
要となる。また、多角形内塗りつぶし処理においても、
3次元グラフィックスでよく使用されるスムーズ・シェ
ーディング(塗りつぶすデータ値を1画素ごとに少しず
つ変えていく処理)処理にも同様なことがいえる。
〔発明が解決しようとする課題〕
さて、より少ない個数のプロセッサで最高の性能を引出
すためには、パックト・ピクセル構成メモリを対象とし
たマルチ・プロセッサ・システムが最適である。しかし
ながら、従来から次のような問題点があったため十分な
ものではなかった。
線図形描画や多角形内塗りつぶし処理は、1画素ごとに
画素アドレスを計算しながら前のアドレスをもとに次の
画素アドレスを求める遂次処理が必須であったために、
複数のプロセッサで画素単位の処理分担を行うのが困難
だからであった。疑似的なマルチ・プロセッサ・システ
ムとして、画面をN個の矩形領域に大分割してそれぞれ
の領域に1個のプロセッサを割り当てるという方法は提
案されているが、性能が画面上に描画される図形位置の
分布に依存してしまうものであった。例えば、描画すべ
き直線が分割されたある矩形領域に局所的に集中した場
合などは、1個のプロセッサだけが動作することになり
マルチ・プロセッサの効果がでない。また、領域間にま
たがった直線を各領域ごとに分割するという面倒な前処
理も必要となっていた。
〔発明の従来技術に対する相違点〕
本発明は、上述したような従来のシステムの欠点を排除
し、効率のよいマルチ・プロセッサ・システムを提供す
るために次のような新しい概念を取り入れた。
第1に複数個のプロセッサをメモリ・ユニットに接続す
る方法を局所的にしたこと、第2にこの接続方法は1行
単位あるいは1列単位のうずれにも対応できること、第
3に1個のプロセッサ処理をN行あるいはN列どとの画
素に対応できるようにすることである。なお、メモリ・
ユニットはパックト・ピクセル構成になっており、1個
のメモリ・ユニットから1画素のすべての情報をアクセ
スすることができる。
1行単位の接続方法においては、各1行のN個のメモリ
・ユニットそれぞれ1個のプロセッサを割り当てる。た
とえば、4個のプロセッサを使用するシステムを前提と
すると、4×4のメモリ・ユニットを使用する。この4
×4のメモリ・ユニットに格納される画素データと表示
画面との対応は、あるアドレスでアクセスされる4×4
のデータがアドレスごとにこの単位で繰り返され表示さ
れるものである。したがって、1個のプロセッサがアク
セスできる画素データは表示画面上では4行ごとにな
る。
一方、1列単位の接続方法においては、各1列のN個の
メモリ・ユニットそれぞれに1個のプロセッサを割り当
てる。上述したシステムを考えると、1個のプロセッサ
がアクセスできる画素データは表示画面上では4列ごと
になる。
こうしたハードウェアをもつことを前提として、N行あ
るいはN列単位のグラフィックス処理を行う方法を利用
するものである。
〔課題を解決するための手段〕
従来の欠点を排除し、処理性能を使用するプロセッサの
個数に比例して均一に向上させるために本発明は、 複数のプロセッサを複数のメモリ・ユニットに接続して
前記メモリ・ユニットに格納されたデータを処理するデ
ータ処理装置において、 前記メモリ・ユニットを少なくとN×N個行列状に配置
し、各1行のN個の前記メモリ・ユニットを1個のプロ
セッサに割り当てるようにN個の前記プロセッサを接続
する第1の接続手段と、 各1列のN個の前記メモリ・ユニットを1個のプロセッ
サに割り当てるように前記N個のプロセッサを接続する
第2の接続手段とを有し、 前記プロセッサの指示により前記第1あるいは第2の接
続手段のいずれかを有効にする手段を有して構成され
る。
別のデータ処理装置においては、前記メモリ・ユニット
に、前記プロセッサの表示指示により表示データを出力
する手段を備えて構成される。
さらに別のデータ処理装置においては、前記プロセッサ
に少なくとも直線描画手段と、前記N個のプロセッサ間
の処理開始を同期化する手段を備えて構成される。
〔実施例1〕 次に本発明の第1の実施例について図面を参照して詳細
に説明する。第1の実施例は、16個のメモリ・ユニット
と4個のプロセッサを使用したシステムである。
第1図は本発明の第1の実施例を示すブロック図、第3
図は表示画面とメモリ・ユニットの対応図、第4図はメ
モリ・ユニットのアドレッシング方法を説明する図、第
5図はプロセッサとメモリ・ユニットの接続を示す図、
第6図は第1の実施例におけるメモリ・ユニットの内部
構成図である。
第1図において1〜4はプロセッサ、5はメモリ制御
部、10〜25はメモリ・ユニット、100はシステム・バ
ス、101〜104はプロセッサ1〜4のインタフェース・バ
ス、105〜108はメモリ・データ・バス、109はプロセッ
サ制御バス、110はメモリ制御バス、111はメモリ・アド
レス・バス、112は同期信号バスである。
まず、第3図を参照して表示画面とメモリ・ユニットの
対応関係について説明する。各メモリ・ユニットは1Mビ
ット、全体で16Mビットのメモリ容量を有している。表
示画面上では1024×1024画素で各画素が16ビットで構成
される。第3図(A)は、プロセッサ1〜4をそれぞれ
メモリ・ユニット10〜13、14〜17、18〜21、22〜25に接
続した場合の対応図である。以降この接続関係をとるモ
ードをAモードと呼ぶ。図中の丸囲みの数字は16個のメ
モリ・ユニットが接続されるプロセッサの番号である。
第3図(C)の斜線部は第3図(A)に対応し、全体と
してこの16個のメモリ・ユニットに格納されているデー
タの内容が、供給するアドレスによって繰り返されて読
み出され表示画面を構成していることを示している。一
方、第4図(B)は、プロセッサ1をメモリ・ユニット
10、14、18、22に接続し、同様にプロセッサ2はメモリ
・ユニット11、15、19、23、プロセッサ3はメモリ・ユ
ニット12、16、20、24、プロセッサ4はメモリ・ユニッ
ト13、17、21、25に接続される。このモードをBモード
と呼ぶ。Aモードと同様に第3図(C)のように表示画
面を構成することができる。
このようなメモリ構成を使用するために、第4図に示し
たようなアドレッシング方法を採用した。すなわち、プ
ロセッサから供給されるアドレスの中位2ビット(ビッ
ト11,10)及び下位2ビット(ビット1,0)をメモリ・ユ
ニットの選択のためにもちいるため、実際にメモリ・ユ
ニットに入力されるアドレスは16ビットとなる。したが
って、たとえばプロセッサの出力アドレスが“1000H"、
“1001H"、“1002H"、“1003H"(Hは16進数を示す)の
いずれであってもメモリ・ユニットに供給されるアドレ
スは、“0100H"である。プロセッサとメモリ・ユニット
の接続を第5図に示した。Aモードでは下位2ビットの
情報、これはすなわちX座標の下位2ビットに対応する
が、各行の4つのメモリ・ユニットのうちメモリ・ユニ
ットを選択するかの情報として使用する。これに対しB
モードでは、プロセッサから供給されるアドレスの中位
2ビットを使用してメモリ・ユニットを選択する。これ
は各行のメモリのアドレスの関係が1ラインのアドレス
値ずつずれているために、Y座標の下位2ビットに対応
するのが中位の2ビットだからである。本実施例では、
1ラインの幅は10ビットすなわち1行あたり1024ドット
である。
さて、第1図を参照して本実施例の動作について説明す
る。
まず、システム全体の動作について説明する。プロセッ
サはホスト・コンピュータ(図示せず)からシステム・
バス100を介して、コマンド/パラメータを受け取って
から動作を開始するものである。システム・バス100に
は、アドレス情報、データ情報、リード要求やライト要
求などの制御情報が含まれる。これらの情報に基づい
て、プロセッサに対するコマンド/パラメータを設定す
る。コマンド/パラメータが設定されると、プロセッサ
が処理を開始する。プロセッサは描画手順にしたがっ
て、メモリ・ユニットに対してA/Bモード情報、アドレ
ス情報、リード要求、ライト要求などをプロセッサ制御
バス109を介してメモリ制御部5へ出力する。プロセッ
サから出力されたアドレス情報は、メモリ制御部5で前
述した変換を施してメモリ・アドレス・バス111を介し
て各メモリ・ユニットに入力される。メモリ制御部5で
はさらに、前述したアドレスの下位2ビット、中位2ビ
ットのメモリ・ユニット選択情報とA/Bモード情報をも
とに、16個のメモリ・ユニットのうち各プロセッサあた
り1個、合計4個のメモリ・ユニットをアクティブする
Aモード選択信号、Bモード選択信号及びリード要求信
号、ライト要求信号を各メモリ・ユニットごとに生成し
メモリ制御バス110を介して各メモリ・ユニットに出力
する。
メモリ・ユニットの動作について第6図を用いて説明す
る。第6図は第1図のメモリ・ユニット11の構成を示し
た図で、200はメモリ、201はマルチプレクサ、2202、20
3はバッファ、204〜206は内部データ・バス、207はライ
ト要求信号、208はリード要求信号、209はAモード選択
信号、210はBモード選択信号で、207〜210はメモリ制
御バス110を介して入力される。なお、他の数字で示し
たブロック、バスは第1図と同じである。
メモリ200に対するアドレスは、メモリ・アドレス・バ
ス11を介して入力される。ライト、リードの要求は、ラ
イト要求信号207あれいはリード要求信号208によって入
力されるので、これに従ってデータをアクセスする。デ
ータに関しての扱いは次のようになっている。まず、リ
ードかライトかによって、バッファ202、203のデータ転
送方向がかわる。さらにAモードかBモードかによって
そのバッファを出力イネーブルにするかが決る。従っ
て、たとえばAモードのリードの場合、メモリ200から
リードされたデータが内部データ・バス206を介してマ
ルチプレクサ201に入力され、マルチプレクサ201に別に
入力されるAモード選択信号209が“1"なので、データ
を内部データ・バス204に出力する。さらに、バッファ2
02はAモード選択信号209が“1"なので出力イネーブル
になり、方向は図上で下向き、すなわちデータをメモリ
・データ・バス105を介して出力する。ライトの場合
も、リードの場合の逆のデータ転送経路でメモリ200に
データが書込まれる。
次に、本実施例のプロセッサでは直線描画を行うので、
この描画手順について説明する。ホスト・コンピュータ
から与えられた始点、終点のXY座標をパラメータとして
入力する。この始点、終点から両点を結ぶ直線の傾きを
求めるのだが、傾きが45゜以上か以下かで処理がわか
る。
傾きが45゜以下の場合、“y=a×x+b"に従ってxを
4ずつ増加させて対応するyを遂次求める。この場合モ
ードはBモードとなる。プロセッサはプロセッサ制御バ
ス109等を介してBモード選択信号210を出力する。傾き
が45゜以上の場合は、“x=c×y+d"に従ってyを4
ずつ増加させてxを求める。この場合のモードはAモー
ドとなる。プロセッサはプロセッサ制御バス109等を介
してAモード選択信号209を出力する。これが基本的な
アルゴリズムであるが、4個のプロセッサを並列して動
作させるために、つぎのような前処理を施しておく。
各プロセッサが処理すべきメモリ・ユニットは、XY座標
上の4行おき、4列おきにマッピングされているため、
各プロセッサも割り当てられた座標だけを処理する必要
がある。そのために、直線描画を開始する初期値をあら
かじめ求める。まず、始点のX(あるいはY)座標の下
位2ビットを検査し、各プロセッサの位置によって自分
が処理すべき座標になるまで計算だけをすすめておく。
すなわち、プロセッサ1は“00B"(Bは2進数を示
す)、プロセッサ2から4はそれぞれ“01B"、“10B"、
“11B"になるまで座標計算を進めるのである。この処理
以降、終点のX座標(あるいはY座標)を越えるまで上
述したアルゴリズムで直線描画処理を繰り返す。
なお、本実施例ではプロセッサ1からしかアドレスや制
御情報が出力されないが、これれは同期信号バス112に
よって全プロセッサが同時に描画を行うように制御して
いるからである。つまり、前処理終了をプロセッサ2〜
4から同期信号バス112を介してプロセッサ1に通知
し、プロセッサ1が全プロセッサに対して、描画処理を
開始する許可信号を同期信号バスを介して出力する。
〔実施例2〕 次に本発明の第2の実施例について図面を参照して詳細
に説明する。
第2図は本発明の第2の実施例を示すブロック図、第7
図は第2図の実施例におけるメモリ・ユニットの構成図
である。第2の実施例は第1の実施例に表示機能を追加
したものである。したがって、表示のための動作を中心
に説明する。
第2図において、6は表示制御部、310〜312は表示デー
タ・バス、313は表示信号である。表示データ・バス31
0、311、312はそれぞれメモリ・ユニット10、11、25か
ら一定時間間隔で出力された表示データを転送するバス
で、メモリ・ユニット12〜24についても同様のバスが表
示制御部に接続されている。表示制御部6に入力された
表示データは、表示時間軸にあわせた形で、選択されて
表示信号313として出力される。つまり第3図に示した
ように表示画面に対応するように各メモリ・ユニットの
表示データを選択するようになっている。
さて、表示データを出力する手順について第7図をもと
に説明する。第7図において、311は表示データ・バ
ス、301はシフト用クロック、302は表示タイミング信
号、303はデュアル・ポート・メモリである。他のブロ
ック、信号については第6図と同じである。従って、表
示にかかわる機能以外のリード/ライト手順については
第1の実施例と同じである。
まず、デュアル・ポート・メモリ303について説明す
る。これは、メモリ・セルとは別に256ビット×4本の
シフト・レジスタを内蔵したもので周知のものである。
表示タイミング信号302が入力されると、その時メモリ
・アドレス・バス111を介して入力されたアドレスをス
タート・ポイントとして後続するアドレスから合計256
×16ビットのデータを読み出すものである。つぎに、シ
フト用クロック301が入力されると16ビットずつ表示テ
ーダ・バス311を介して表示データが出力される。した
がって、1度表示のためのアクセス、すなわち表示タイ
ミング信号302がアクティブになると、以降シフト・レ
ジスタの内容がすべて出力し終わるまでランダム・リー
ドあるいはライトが行えるため、描画処理を高速化する
ことができる。なお、表示タイミング信号302および表
示アドレスはプロセッサ1がプロセッサ制御バス109に
出力し、メモリ制御部5およびメモリ制御バス110、メ
モリ・アドレス・バス111を介して全メモリ・ユニット
に入力される。
〔発明の効果〕
以上説明したように、本発明によれば、直線描画に要す
る処理性能を、使用するプロセッサの個数に比例して向
上させることができた。しかも、直線の傾きに依存せ
ず、また直線の描画位置に依存せず、均一のパフォーマ
ンスが得られる。さらに、単純な直線描画だけではな
く、画素値を徐々に変えていくデプス・キューイングと
呼ばれる処理、直線描画を応用した単純な多角形塗りつ
ぶし、スムーズ・シェーディングを施した多角形塗りつ
ぶし塗りつぶしなどの高度なグラフィックス処理をも高
速処理できることは容易に推測できる。
なお、本実施例では4×4のメモリ・ユニットを使用し
たが、本発明の主旨によれば、N×N個であってもシス
テムを容易に組むことができるほか、N×N個のメモリ
・ユニットを1個とブロックとして、これを複数個接続
し、よりマクロなユニット・セレクトをおこなえば、メ
モリ空間の拡張が容易であることは明白である。
さらに、各メモリ・ユニットおよびプロセッサは1チッ
プLSIであってもよく、上述した機能を有するものであ
れば、大幅なコスト低減が図れるものである。
【図面の簡単な説明】
第1図は本発明の第1の実施例を示すブロック図、第2
図は本発明の第2の実施例を示すブロック図、第3図は
表示画面とメモリ・ユニットの対応図、第4図はメモリ
・ユニットのアドレッシング方法を説明する図、第5図
はプロセッサとメモリ・ユニットの接続を示す図、第6
図は第1の実施例におけるメモリ・ユニットの内部構成
図、第7図は第2の実施例におけるメモリ・ユニットの
内部構成図である。 第1図において、 1〜4……プロセッサ、5……メモリ制御部、10〜25…
…メモリ・ユニット、100……システム・バス、101〜10
4……インタフェース・バス、105〜108……メモリ・デ
ータ・バス、109……プロセッサ制御バス、110……メモ
リ制御バス、111……メモリ・アドレス・バス、112……
同期信号バス。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】複数のプロセッサを複数のメモリ・ユニッ
    トに接続して前記メモリ・ユニットに格納されたデータ
    を処理するデータ処理装置において、前記メモリ・ユニ
    ットをN×N個行列状に配置し、n行目(1≦n≦N)
    のN個の前記メモリ・ユニットを第n番目のプロセッサ
    に割り当てるようにN個の前記プロセッサを接続する第
    1の接続手段と、n列目のN個の前記メモリ・ユニット
    を第n番目のプロセッサに割り当てるようにN個の前記
    プロセッサを接続する第2の接続手段とを有し、前記プ
    ロセッサの指示により直線描画の際にその直線の傾きに
    応じて前記第1あるいは第2の接続手段のいずれかを有
    効にすることを特徴とするデータ処理装置。
JP63135890A 1988-06-01 1988-06-01 データ処理装置 Expired - Lifetime JPH06105450B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63135890A JPH06105450B2 (ja) 1988-06-01 1988-06-01 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63135890A JPH06105450B2 (ja) 1988-06-01 1988-06-01 データ処理装置

Publications (2)

Publication Number Publication Date
JPH01304571A JPH01304571A (ja) 1989-12-08
JPH06105450B2 true JPH06105450B2 (ja) 1994-12-21

Family

ID=15162191

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63135890A Expired - Lifetime JPH06105450B2 (ja) 1988-06-01 1988-06-01 データ処理装置

Country Status (1)

Country Link
JP (1) JPH06105450B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2746129B2 (ja) * 1994-08-10 1998-04-28 日本電気株式会社 描画装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60103390A (ja) * 1983-11-11 1985-06-07 富士ゼロックス株式会社 画像メモリ

Also Published As

Publication number Publication date
JPH01304571A (ja) 1989-12-08

Similar Documents

Publication Publication Date Title
US6005592A (en) Image processing apparatus having improved memory access for high speed 3-dimensional image processing
US5129059A (en) Graphics processor with staggered memory timing
EP0318259B1 (en) Software configurable memory architecture for data processing system having graphics capability
US5815169A (en) Frame memory device for graphics allowing simultaneous selection of adjacent horizontal and vertical addresses
US5170468A (en) Graphics system with shadow ram update to the color map
US20080150951A1 (en) 3-d rendering engine with embedded memory
US5319603A (en) Multiport semiconductor memory device having RAM blocks and SAM blocks
JPH06175646A (ja) グラフィックス・システム用フレーム・バッファおよびラスタ・プロセッサならびにピクセル変数のバッファリング方法
JPS6330632B2 (ja)
US20020083266A1 (en) Image data organization into pixel tile memory matrix
US4647971A (en) Moving video special effects system
EP0456394B1 (en) Video memory array having random and serial ports
JP2000293432A (ja) バンク可変メモリ
JPH06105450B2 (ja) データ処理装置
JP2001243771A (ja) メモリ・チップ及びデータ記憶方法
US5895502A (en) Data writing and reading method for a frame memory having a plurality of memory portions each having a plurality of banks
KR100297716B1 (ko) 높은멀티비트자유도의반도체메모리장치
JPH03109654A (ja) 画像メモリ
JP2633251B2 (ja) 画像メモリ素子
JPH02148237A (ja) データのブロツクを記憶させ且つ操作を加えるための方法
JP2745957B2 (ja) 画像回転処理装置
JPH08202324A (ja) 画像データ記憶制御装置
JP2695265B2 (ja) マルチポートメモリ
JP2000123157A (ja) 画像処理装置
JPH07118006B2 (ja) 画像処理装置