JP5539051B2 - レンダリングプロセッサ - Google Patents

レンダリングプロセッサ Download PDF

Info

Publication number
JP5539051B2
JP5539051B2 JP2010135509A JP2010135509A JP5539051B2 JP 5539051 B2 JP5539051 B2 JP 5539051B2 JP 2010135509 A JP2010135509 A JP 2010135509A JP 2010135509 A JP2010135509 A JP 2010135509A JP 5539051 B2 JP5539051 B2 JP 5539051B2
Authority
JP
Japan
Prior art keywords
processor
rendering
sub
output
information
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 - Fee Related
Application number
JP2010135509A
Other languages
English (en)
Other versions
JP2012003345A5 (ja
JP2012003345A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2010135509A priority Critical patent/JP5539051B2/ja
Priority to US13/108,085 priority patent/US8633935B2/en
Publication of JP2012003345A publication Critical patent/JP2012003345A/ja
Publication of JP2012003345A5 publication Critical patent/JP2012003345A5/ja
Priority to US14/105,415 priority patent/US9773291B2/en
Application granted granted Critical
Publication of JP5539051B2 publication Critical patent/JP5539051B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5017Task decomposition

Description

本発明は、画像のレンダリング技術に関するものである。
ベクタグラフィックス言語で記述された描画命令を処理するレンダラにおいて、処理の高速化や負荷分散を目的として描画命令を並列に処理する方法が、特許文献1,2に開示されている。特許文献1には、共有バスを介して各レンダラに描画命令を転送し、各レンダラで画像を並列に処理する方法が開示されている。特許文献2には、描画領域をバンド単位に分割し、バンド毎に並列に処理する方法が開示されている。
特許03809284号公報 特開平09−167243号公報
グラフィックスの高解像度化に伴い、描画命令を並列に処理する手法が用いられている。しかし従来の手法では、描画命令の処理タイミングや描画結果の出力順を制御し、正しい順序でグラフィックスを出力する為の構成が複雑であり、そのためのコストもかかっていた。
特許文献1に開示されている手法では、各レンダラがメインメモリに対して、描画命令の獲得要求を行う。そして、この要求が衝突した場合には、先に処理すべき優先度の高い描画命令から共有バスに出力し、該当するレンダラに転送するように制御している。同様に、各レンダラで処理した描画結果を共有バスへ出力する際にも、衝突が起きないように出力順を制御している。そのため、ハードウェアの処理負荷が大きかった。また、あるレンダラにおいて後で出力する優先度の低い画像処理が、別のレンダラにおいて先に出力すべき優先度の高い画像処理よりも先に完了した場合、生成した画像を一旦ローカルメモリに格納しておかなければならず、その為のメモリコストが大きかった。
特許文献2に開示されている手法では、1フレーム分の描画領域を水平方向に区切って複数のバンド画像に分割し、それぞれのバンド画像を並列に処理し、前段のバンド画像の描画結果から順次出力していく。しかし、バンド画像の描画所要時間は複雑度に応じて異なるため、状況によっては、前段のバンド画像の処理が終了するまで、生成したバンド画像を保持しておかなければならなかった。また、バンド画像毎に処理を行うので、メモリコストは1フレーム単位のデータを保持するものに比べて幾分小さくはなるが、代わりにバンド画像に対する処理の割り当てや順序制御が1フレーム単位のものに比べて複雑であった。
本発明は以上の問題に鑑みてなされたものであり、複数のレンダラを用いて画像の描画処理を行う場合に、より簡便な方法でもってこの描画処理を実現するための技術を提供することを目的とする。
本発明の目的を達成するために、例えば、本発明のレンダリングプロセッサは以下の構成を備える。即ち、メインプロセッサと、該メインプロセッサから出力された情報を処理する第1サブプロセッサと、該第1サブプロセッサから出力された情報を処理する第2サブプロセッサと、を備えるレンダリングプロセッサであって、
前記メインプロセッサは、
描画対象画像を2つの領域に分割した場合に、一方の領域を描画するための情報である第1の情報と、他方の領域を描画するための情報である第2の情報と、を前記第1サブプロセッサに出力する出力手段
を備え、
前記第1サブプロセッサは、
前記出力手段が出力した前記第2の情報を前記第2サブプロセッサに転送する第1転送手段と、
前記出力手段が出力した前記第1の情報を用いて、前記一方の領域のレンダリングを行う第1レンダリング手段と、
前記第1レンダリング手段によるレンダリング結果を前記第2サブプロセッサに出力する第1出力手段と
を備え、
前記第2サブプロセッサは、
前記第1サブプロセッサから出力された前記第2の情報を用いて、前記他方の領域のレンダリングを行う第2レンダリング手段と、
前記第1サブプロセッサから出力されたレンダリング結果、及び前記第2レンダリング手段によるレンダリング結果を、出力する第2出力手段と
を備えることを特徴とする。
本発明の構成によれば、複数のレンダラを用いて画像の描画処理を行う場合に、より簡便な方法でもってこの描画処理を実現することができる。
レンダリングプロセッサ100の機能構成例を示すブロック図。 それぞれのサブプロセッサへの矩形領域の割り当てを説明する図。 メインプロセッサ102、サブプロセッサ103,104の動作のフローチャート。
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の1つである。
[第1の実施形態]
先ず、本実施形態に係るレンダリングプロセッサ100の構成例について、図1のブロック図を用いて説明する。図1に示す如く、レンダリングプロセッサ100は、メインプロセッサ102と、このメインプロセッサ102から出力された情報を処理するサブプロセッサ103と、サブプロセッサ103から出力された情報を処理するサブプロセッサ104と、を備える。更に、メインプロセッサ102、サブプロセッサ103、サブプロセッサ104はパイプライン処理を行うために、この順で直列に接続されている。
先ず、メインプロセッサ102について説明する。メインプロセッサ102には、ベクタグラフィックス言語等のグラフィックス言語で記述された、描画対象画像の描画命令101が入力される。メインプロセッサ102は、この描画命令101を用いて、描画対象画像を構成する各画素のエッジ情報及び色情報を収集し、収集したそれぞれの画素のエッジ情報及び色情報を、後段のサブプロセッサ103に送出する。
次に、サブプロセッサ103及びサブプロセッサ104の動作について説明する。本実施形態では、サブプロセッサの数は2(サブプロセッサ103、サブプロセッサ104)である。従って、本実施形態では、描画対象画像を垂直ライン方向に2個の矩形領域に区分し、右方の矩形領域をサブプロセッサ103にレンダリングさせ、左方の矩形領域をサブプロセッサ104にレンダリングさせる。
サブプロセッサ103、サブプロセッサ104への矩形領域の割り当てについて、図2を用いて説明する。上記の通り、描画対象画像を垂直ライン方向に2つの矩形領域200,201に区分した場合に、右方の矩形領域201をサブプロセッサ103に割り当て、左方の矩形領域200をサブプロセッサ104に割り当てる。
然るにサブプロセッサ103は矩形領域201を構成する各画素のエッジ情報及び色情報を用いて矩形領域201をレンダリングし、サブプロセッサ104は矩形領域200を構成する各画素のエッジ情報及び色情報を用いて矩形領域200をレンダリングする。
次に、メインプロセッサ102、サブプロセッサ103、サブプロセッサ104、のそれぞれの動作について、図3のフローチャートを用いて説明する。先ず、メインプロセッサ102の動作について、図3(a)のフローチャートを用いて説明する。
ステップS301ではメインプロセッサ102は、外部の機器(外部の装置やメモリなど)から、描画対象画像を描画するための様々な命令等が記述された描画命令を取得するのであるが、メインプロセッサ102は、この取得処理が完了したか否かを判断する。係る判断の結果、完了した場合には処理はステップS302に進み、未だ完了していない場合には、ステップS301に戻り、未だ取得していない命令を取得する。
ステップS302では、メインプロセッサ102は、取得した描画命令を用いて、描画対象画像を構成するそれぞれの画素のエッジ情報及び色情報を収集する。例えばメインプロセッサ102は、取得した描画命令に基づいて、メインプロセッサ102が有するメモリ上に描画対象画像をレンダリングし、このレンダリングした描画対象画像を構成するそれぞれの画素のエッジ情報及び色情報を収集する。もちろん、エッジ情報及び色情報の収集方法はこれに限るものではなく、描画命令に直接それぞれの画素のエッジ情報及び色情報が記されている場合には、この記されているそれぞれの画素のエッジ情報及び色情報を収集する。なお、エッジ情報とは、描画対象画像内のオブジェクトのエッジを構成している画素であるか否かを示す情報である。
ステップS303では、メインプロセッサ102は、ステップS302で収集したそれぞれの画素のエッジ情報及び色情報を、描画対象画像の水平ライン毎にグループ化する。即ち、水平ラインを構成する各画素のエッジ情報及び色情報を、水平ライン毎に管理する。
ステップS304では、メインプロセッサ102は、描画対象画像を垂直ライン方向に2個の矩形領域に区分する。ここで、区分したそれぞれの矩形領域を、右端の矩形領域から左端の矩形領域に向かって第1矩形領域、第2矩形領域、とする。この場合に、描画対象画像の最上水平ラインからl番目の水平ライン(水平ラインl)を、第1矩形領域に属する第1区分ライン、第2矩形領域に属する第2区分ラインに分割する。ここで、変数lは、最初は1に初期化されているものとするので、最初のステップS304では、描画対象画像の最上水平ラインを、第1矩形領域に属する第1区分ライン、第2矩形領域に属する第2区分ラインに分割する。
即ち、本ステップでは、水平ラインlを構成する画素群を、第1矩形領域に属する画素群(第1区分ラインを構成する画素群)と、第2矩形領域に属する画素群(第2区分ラインを構成する画素群)とに分割している。そして更に、水平ラインlを構成する各画素のエッジ情報及び色情報を、水平ラインlの第1区分ラインを構成する画素のエッジ情報及び色情報と、水平ラインlの第2区分ラインを構成する画素のエッジ情報及び色情報と、にグループ分割する。
ステップS305では、メインプロセッサ102は、メインプロセッサ102の直接の後段としてのサブプロセッサ103から、出力許可を示す信号(処理待ち信号)を受信したか否かを判断する。この判断の結果、受信した場合には処理はステップS306に進み、受信していない場合には処理はステップS305に戻り、処理待ち信号の受信を待機する。
ステップS306では、メインプロセッサ102は、サブプロセッサ103に対して、水平ラインlの第1区分ラインを構成する各画素のエッジ情報及び色情報、水平ラインlの第2区分ラインを構成する各画素のエッジ情報及び色情報、を出力する。ここで、水平ラインlの第1区分ラインを構成する各画素のエッジ情報及び色情報を描画データ1、水平ラインlの第2区分ラインを構成する各画素のエッジ情報及び色情報を描画データ2と呼称する場合がある。
ステップS307では、メインプロセッサ102は、描画対象画像を構成する全ての水平ラインについてステップS304〜ステップS306の処理を行ったか否かを判断する。これは、上記の変数lの値が、描画対象画像の総水平ライン数Lに等しいか否かを判断すればよい。この判断の結果、l<Lの場合には、変数lの値を1つインクリメントしてステップS304以降の処理を行い、l=Lの場合には処理はステップS301に戻って、次の描画命令の取得を行う。
次に、サブプロセッサ103の動作について、図3(b)のフローチャートを用いて説明する。先ず、ステップS311においてサブプロセッサ103は、サブプロセッサ103の直接の前段としてのメインプロセッサ102に対して、出力許可を示す信号を出力する。この信号出力により、メインプロセッサ102はステップS306で描画データ1、描画データ2を出力するので、サブプロセッサ103は、この出力された描画データ1、描画データ2を取得する。
ステップS312では、サブプロセッサ103は、メインプロセッサ102から出力された描画データ1、描画データ2の取得が完了したか否かを判断する。この判断の結果、完了した場合には処理はステップS313に進み、完了していない場合には、処理はステップS312に戻り、未だ取得していない部分を取得する。
ステップS313ではサブプロセッサ103は、メインプロセッサ102から取得した描画データ2を、サブプロセッサ103の直接の後段としてのサブプロセッサ104に転送する(第1転送)。
ステップS314ではサブプロセッサ103は、メインプロセッサ102から取得した描画データ1を用いて、水平ラインlの第1区分ラインをレンダリングする(第1レンダリング)。このレンダリング結果を描画結果1と呼称する場合がある。
ステップS315ではサブプロセッサ103は、サブプロセッサ104から出力許可を示す信号を受信したか否かを判断する。この判断の結果、受信していない場合には処理はステップS315に戻り、受信を待機する。一方、この判断の結果、受信した場合には、処理はステップS316に進む。
ステップS316では、サブプロセッサ103は、サブプロセッサ104に対して描画結果1を出力する(第1出力)。描画結果1は、水平ラインlを2つの分割したうちの一方のレンダリング結果であるので、描画結果1を保持するためのメモリコストは非常に小さい。
次に、サブプロセッサ104の動作について、図3(c)のフローチャートを用いて説明する。ステップS322では、サブプロセッサ104は、サブプロセッサ103から出力された描画データ2の取得が完了したか否かを判断する。この判断の結果、完了した場合には処理はステップS323に進み、完了していない場合には、処理はステップS322に戻り、未だ取得していない部分を取得する。
ステップS323ではサブプロセッサ104は、サブプロセッサ103から取得した描画データ2を用いて、水平ラインlの第2区分ラインをレンダリングする(第2レンダリング)。このレンダリング結果を描画結果2と呼称する場合がある。
ステップS324ではサブプロセッサ104は、レンダリングプロセッサ100の外部に対して、描画結果2を出力する(第2出力)。ステップS325では、サブプロセッサ104は、サブプロセッサ104の直接の前段としてのサブプロセッサ103に対して、出力許可を示す信号を出力する。この信号出力によりサブプロセッサ103はステップS316で描画結果1を出力するので、ステップS326でサブプロセッサ104は、出力された描画結果1を取得し、取得した描画データ1をレンダリングプロセッサ100の外部に出力する(第2出力)。
即ち、ステップS324とステップS326とにより、描画データ1と描画データ2とが、描画結果105として出力されることになる。この描画結果105は、水平ラインlのレンダリング結果に相当するので、描画対象画像の全ての水平ラインについて描画結果105を出力することで、描画対象画像のレンダリング結果を出力することができる。
このように、レンダリングプロセッサ100は、水平ライン毎に並列に処理し、正しい順序で描画結果105を出力する制御を実現している。パイプラインを構成する各段の描画データ、描画結果の授受を処理待ち信号制御で行う事により各段の状態を監視、制御することを不要とし、単純な制御構成で多段パイプライン構成を可能とする。
描画領域を縦短冊に分割し、描画処理を水平ラインを分割した処理容量毎に行うことにより、パイプライン各段のローカルメモリ容量の最小化を可能とする。本実施形態では、サブプロセッサが2つの場合について説明したが、描画処理を行うサブプロセッサをスケーラブルに構成することにより、様々な解像度のグラフィックスに対して同様な制御で実現できる。
[第2の実施形態]
第1の実施形態では、メインプロセッサ102の後に2つのサブプロセッサが直列に接続されている場合のレンダリングプロセッサ100の動作について説明した。本実施形態では、メインプロセッサ、メインプロセッサからの出力情報を処理する第1サブプロセッサ、第i(i=1,2,…,N−1)サブプロセッサからの出力情報を処理する第(i+1)サブプロセッサ、を備えるレンダリングプロセッサについて説明する。
この場合、メインプロセッサは先ず、第1の実施形態と同様に、描画対象画像の描画命令を取得し、描画命令を用いて、描画対象画像を構成するそれぞれの画素のエッジ情報及び色情報を収集する。ここで、描画対象画像を垂直ライン方向にN個の矩形領域に区分し、区分したそれぞれの矩形領域を、右端の矩形領域から左端の矩形領域に向かって第1矩形領域、第2矩形領域、…、第N矩形領域とする。この場合、メインプロセッサは、描画対象画像を構成する各水平ラインを、第1矩形領域に属する第1区分ライン、第2矩形領域に属する第2区分ライン、…、第N矩形領域に属する第N区分ライン、に分割する。そしてメインプロセッサは、第1サブプロセッサから出力許可を示す信号を受けると、次のように動作する。即ち、描画対象画像を構成する水平ライン毎に、第1区分ラインを構成する各画素のエッジ情報及び色情報、…、第N区分ラインを構成する各画素のエッジ情報及び色情報、を第1サブプロセッサに出力する。
第1サブプロセッサは、出力許可を示す信号をメインプロセッサに対して送信することでメインプロセッサから出力された第1乃至N区分ラインのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報を取得する。そして第1サブプロセッサは、そのうち、第2乃至N区分ラインのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報を第2サブプロセッサに出力する。一方で第1サブプロセッサは、第1乃至N区分ラインのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報のうち、第1区分ラインを構成する各画素のエッジ情報及び色情報を用いて、第1区分ラインのレンダリングを行う。そして第1サブプロセッサは、第2サブプロセッサから出力許可を示す信号を受けると、第1区分ラインのレンダリング結果を第2サブプロセッサに出力する。
第i(≠N)サブプロセッサは、第(i−1)サブプロセッサから出力された第i乃至N区分ラインのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報を入力する。そして、第(i+1)乃至N区分ラインのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報を第(i+1)サブプロセッサに出力する(第2転送)。そして第iサブプロセッサは、第i区分ラインを構成する各画素のエッジ情報及び色情報を用いて、第i区分ラインのレンダリングを行う(第2レンダリング)。そして、第iサブプロセッサは、第(i+1)サブプロセッサから出力許可を示す信号を受けると次のように動作する。即ち、出力許可を示す信号を第(i−1)サブプロセッサに対して送信することで第(i−1)サブプロセッサから出力されたレンダリング結果と、第i区分ラインのレンダリング結果と、を第(i+1)サブプロセッサに出力する(第2出力)。なお、第(i−1)サブプロセッサから出力されたレンダリング結果には、第1乃至(i−1)サブプロセッサのそれぞれによるレンダリング結果が含まれている。
そして第Nサブプロセッサは、第(N−1)サブプロセッサから出力された第N区分ラインを構成する各画素のエッジ情報及び色情報を用いて、第N区分ラインのレンダリングを行う(第3レンダリング)。そして第Nサブプロセッサは、出力許可を示す信号を第(N−1)サブプロセッサに対して送信することで第(N−1)サブプロセッサから出力されたレンダリング結果と、第N区分ラインのレンダリング結果と、を出力する(第3出力)。
そして第2乃至Nサブプロセッサが、描画対象画像の全ての水平ラインについて処理を行うことで、第Nサブプロセッサからは、描画対象画像のレンダリング結果が出力されることになる。

Claims (15)

  1. メインプロセッサと、該メインプロセッサから出力された情報を処理する第1サブプロセッサと、該第1サブプロセッサから出力された情報を処理する第2サブプロセッサと、を備えるレンダリングプロセッサであって、
    前記メインプロセッサは、
    描画対象画像を2つの領域に分割した場合に、一方の領域を描画するための情報である第1の情報と、他方の領域を描画するための情報である第2の情報と、を前記第1サブプロセッサに出力する出力手段
    を備え、
    前記第1サブプロセッサは、
    前記出力手段が出力した前記第2の情報を前記第2サブプロセッサに転送する第1転送手段と、
    前記出力手段が出力した前記第1の情報を用いて、前記一方の領域のレンダリングを行う第1レンダリング手段と、
    前記第1レンダリング手段によるレンダリング結果を前記第2サブプロセッサに出力する第1出力手段と
    を備え、
    前記第2サブプロセッサは、
    前記第1サブプロセッサから出力された前記第2の情報を用いて、前記他方の領域のレンダリングを行う第2レンダリング手段と、
    前記第1サブプロセッサから出力されたレンダリング結果、及び前記第2レンダリング手段によるレンダリング結果を、出力する第2出力手段と
    を備えることを特徴とするレンダリングプロセッサ。
  2. 前記第1の情報及び前記第2の情報は、前記描画対象画像を構成するそれぞれの画素のエッジ情報又は色情報であることを特徴とする請求項1に記載のレンダリングプロセッサ。
  3. 前記メインプロセッサは更に、
    前記描画対象画像の描画命令を取得する手段と、
    前記描画命令を用いて、前記描画対象画像を構成するそれぞれの画素のエッジ情報又は色情報を収集する収集手段と
    を備えることを特徴とする請求項2に記載のレンダリングプロセッサ。
  4. 前記メインプロセッサは、前記描画対象画像を垂直ライン方向に2個の矩形領域に区分することを特徴とする請求項1に記載のレンダリングプロセッサ。
  5. 前記メインプロセッサは、前記描画対象画像を垂直ライン方向に2個の矩形領域に区分し、区分したそれぞれの矩形領域を、画像の右端の矩形領域から左端の矩形領域に向かって第1矩形領域、第2矩形領域とした場合に、前記描画対象画像を構成する各水平ラインを、前記第1矩形領域に属する第1区分ライン、前記第2矩形領域に属する第2区分ラインに分割することを特徴とする請求項4に記載のレンダリングプロセッサ。
  6. 前記出力手段は、前記描画対象画像を構成する水平ライン毎に、前記第1区分ライン及び前記第2区分ラインを構成する各画素のエッジ情報又は色情報を前記第1サブプロセッサに出力することを特徴とする請求項5に記載のレンダリングプロセッサ。
  7. メインプロセッサと、該メインプロセッサから出力された情報を処理する第1サブプロセッサと、第i(i=1,2,…,N−1)サブプロセッサから出力された情報を処理する第(i+1)サブプロセッサと、を備えるレンダリングプロセッサであって、
    前記メインプロセッサは、
    描画対象画像を第1乃至Nの領域に分割した場合に、該第1乃至Nの領域を描画するための情報である第1乃至Nの情報を前記第1サブプロセッサに出力する出力手段
    を備え、
    前記第1サブプロセッサは、
    前記出力手段が出力した第1乃至Nの情報のうち第2乃至Nの情報を第2サブプロセッサに出力する第1転送手段と、
    前記出力手段が出力した前記第1の情報を用いて、前記第1の領域のレンダリングを行う第1レンダリング手段と、
    前記第1レンダリング手段によるレンダリング結果を前記第2サブプロセッサに出力する第1出力手段と
    を備え、
    前記第i(≠N)サブプロセッサは、
    第(i−1)サブプロセッサから出力された前記第i乃至Nの情報のうち第(i+1)乃至Nの情報を第(i+1)サブプロセッサに転送する第2転送手段と、
    第(i−1)サブプロセッサから出力された第iの情報を用いて、前記第iの領域のレンダリングを行う第2レンダリング手段と、
    第(i−1)サブプロセッサから出力されたレンダリング結果、及び前記第2レンダリング手段によるレンダリング結果を前記第(i+1)サブプロセッサに出力する第2出力手段と
    を備え、
    前記第Nサブプロセッサは、
    第(N−1)サブプロセッサから出力された第Nの情報を用いて、前記第Nの領域のレンダリングを行う第3レンダリング手段と、
    第(N−1)サブプロセッサから出力されたレンダリング結果、及び前記第3レンダリング手段によるレンダリング結果を、出力する第3出力手段と
    を備えることを特徴とするレンダリングプロセッサ。
  8. 前記第1乃至Nの情報は、前記描画対象画像を構成するそれぞれの画素のエッジ情報又は色情報であることを特徴とする請求項7に記載のレンダリングプロセッサ。
  9. 前記メインプロセッサは更に、
    前記描画対象画像の描画命令を取得する手段と、
    前記描画命令を用いて、前記描画対象画像を構成するそれぞれの画素のエッジ情報又は色情報を収集する収集手段と
    を備えることを特徴とする請求項8に記載のレンダリングプロセッサ。
  10. 前記メインプロセッサは、前記描画対象画像を垂直ライン方向にN個の矩形領域に区分することを特徴とする請求項7に記載のレンダリングプロセッサ。
  11. 前記メインプロセッサは、前記描画対象画像を垂直ライン方向にN個の矩形領域に区分し、区分したそれぞれの矩形領域を、右端の矩形領域から左端の矩形領域に向かって第1矩形領域、第2矩形領域、…、第N矩形領域とした場合に、前記描画対象画像を構成する各水平ラインを、前記第1矩形領域に属する第1区分ライン、前記第2矩形領域に属する第2区分ライン、…、前記第N矩形領域に属する第N区分ライン、に分割することを特徴とする請求項10に記載のレンダリングプロセッサ。
  12. 前記出力手段は、前記第1サブプロセッサから出力許可を示す信号を受けると、前記描画対象画像を構成する水平ライン毎に、前記第1区分ラインを構成する各画素のエッジ情報又は色情報、前記第2区分ラインを構成する各画素のエッジ情報又は色情報、…、前記第N区分ラインを構成する各画素のエッジ情報又は色情報、を前記第1サブプロセッサに出力することを特徴とする請求項11に記載のレンダリングプロセッサ。
  13. 前記第1転送手段は、前記第1転送手段が最初に前記出力手段からの出力を入力する前、及び前記第1出力手段が出力の動作を行う毎に、前記出力手段に対する出力許可を示す信号を前記メインプロセッサに対して送信することを特徴とする請求項に記載のレンダリングプロセッサ。
  14. 前記第2出力手段は、前記第2転送手段が最初に第(i−1)サブプロセッサからの出力を入力する前、及び前記第2出力手段が出力の動作を行う毎に、前記第(i−1)サブプロセッサの第2出力手段に対する出力許可を示す信号を前記第(i−1)サブプロセッサに対して送信することを特徴とする請求項に記載のレンダリングプロセッサ。
  15. 前記第3出力手段は、前記第3出力手段が出力の動作を行う前に、前記第(N−1)サブプロセッサの第2出力手段に対する出力許可を示す信号を前記第(N−1)サブプロセッサに対して送信することを特徴とする請求項に記載のレンダリングプロセッサ。
JP2010135509A 2010-06-14 2010-06-14 レンダリングプロセッサ Expired - Fee Related JP5539051B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010135509A JP5539051B2 (ja) 2010-06-14 2010-06-14 レンダリングプロセッサ
US13/108,085 US8633935B2 (en) 2010-06-14 2011-05-16 Rendering processor
US14/105,415 US9773291B2 (en) 2010-06-14 2013-12-13 Rendering processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010135509A JP5539051B2 (ja) 2010-06-14 2010-06-14 レンダリングプロセッサ

Publications (3)

Publication Number Publication Date
JP2012003345A JP2012003345A (ja) 2012-01-05
JP2012003345A5 JP2012003345A5 (ja) 2013-10-03
JP5539051B2 true JP5539051B2 (ja) 2014-07-02

Family

ID=45095899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010135509A Expired - Fee Related JP5539051B2 (ja) 2010-06-14 2010-06-14 レンダリングプロセッサ

Country Status (2)

Country Link
US (2) US8633935B2 (ja)
JP (1) JP5539051B2 (ja)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3382441B2 (ja) 1995-12-18 2003-03-04 株式会社リコー 画像形成装置
JP3809284B2 (ja) 1998-11-06 2006-08-16 キヤノン株式会社 画像生成装置及びその制御方法及び印刷装置
US6701420B1 (en) * 1999-02-01 2004-03-02 Hewlett-Packard Company Memory management system and method for allocating and reusing memory
US7075541B2 (en) * 2003-08-18 2006-07-11 Nvidia Corporation Adaptive load balancing in a multi-processor graphics processing system
US7522167B1 (en) * 2004-12-16 2009-04-21 Nvidia Corporation Coherence of displayed images for split-frame rendering in multi-processor graphics system
US7561163B1 (en) * 2005-12-16 2009-07-14 Nvidia Corporation Detecting connection topology in a multi-processor graphics system
JP5173578B2 (ja) * 2008-05-15 2013-04-03 キヤノン株式会社 画像処理方法及び印刷装置とその制御方法
US8300056B2 (en) * 2008-10-13 2012-10-30 Apple Inc. Seamless display migration
JP5245713B2 (ja) * 2008-10-24 2013-07-24 株式会社リコー 画像処理装置、画像処理方法およびプログラム
US8605081B2 (en) * 2008-10-26 2013-12-10 Zebra Imaging, Inc. Converting 3D data to hogel data
AU2008258132B2 (en) * 2008-12-15 2011-11-10 Canon Kabushiki Kaisha Load balancing in multiple processor rendering systems

Also Published As

Publication number Publication date
US8633935B2 (en) 2014-01-21
US20110304635A1 (en) 2011-12-15
US20140098112A1 (en) 2014-04-10
JP2012003345A (ja) 2012-01-05
US9773291B2 (en) 2017-09-26

Similar Documents

Publication Publication Date Title
EP1147489B1 (en) Method and apparatus for synchronizing graphics pipelines
US20060161720A1 (en) Image data transmission method and system with DMAC
CN103608776A (zh) 异构型处理设备上的动态工作划分
EP1581908A2 (en) System, method, and computer program product for near-real time load balancing across multiple rendering pipelines
US9378533B2 (en) Central processing unit, GPU simulation method thereof, and computing system including the same
JP5895840B2 (ja) マルチプロセッサシステム、実行制御方法、実行制御プログラム
US8368704B2 (en) Graphic processor and information processing device
US7793012B2 (en) Information processing unit, system and method, and processor
US9542127B2 (en) Image processing method and image processing apparatus
CN110245024B (zh) 静态存储块的动态分配系统及其方法
JPH05189549A (ja) マルチプロセッサによる画像データ処理装置
CN103262039A (zh) 用于处理装置的同步操作的方法和系统
JP3030490B2 (ja) 同期制御方法及び装置
JP5539051B2 (ja) レンダリングプロセッサ
CN103582877A (zh) 计算机系统中断处理
JPWO2016199735A1 (ja) 画像処理システム
JP5327482B2 (ja) 画像処理装置及び画像処理方法
US10649938B2 (en) Information processing apparatus and method of transferring data
US11431872B2 (en) Buffer management for plug-in architectures in computation graph structures
EP3321793A1 (en) Method and system for real-time slide displaying of scanned image
JP2024501454A (ja) 高スループット及び低オーバーヘッドカーネルローンチのための圧縮されたコマンドパケット
JP5271567B2 (ja) 画像前処理装置
JP5968497B2 (ja) 制御方法、システム及びプログラム
CN116681575B (zh) 图形处理单元、图形渲染方法、存储介质、终端设备
CN110716750A (zh) 用于部分波前合并的方法和系统

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130613

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130613

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130820

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140311

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140404

R151 Written notification of patent or utility model registration

Ref document number: 5539051

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140430

LAPS Cancellation because of no payment of annual fees