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

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

Info

Publication number
JP2012003345A
JP2012003345A JP2010135509A JP2010135509A JP2012003345A JP 2012003345 A JP2012003345 A JP 2012003345A JP 2010135509 A JP2010135509 A JP 2010135509A JP 2010135509 A JP2010135509 A JP 2010135509A JP 2012003345 A JP2012003345 A JP 2012003345A
Authority
JP
Japan
Prior art keywords
processor
output
sub
rendering
line
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.)
Granted
Application number
JP2010135509A
Other languages
English (en)
Other versions
JP5539051B2 (ja
JP2012003345A5 (ja
Inventor
Masayuki Iguchi
雅之 井口
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

Abstract

【課題】 複数のレンダラを用いて画像の描画処理を行う場合に、より簡便な方法でもってこの描画処理を実現するための技術を提供すること。
【解決手段】 メインプロセッサ102は描画命令101を用いて、描画対象画像を構成する各画素のエッジ情報及び色情報を収集し、収集したそれぞれの画素のエッジ情報及び色情報を、後段のサブプロセッサ103に送出する。サブプロセッサ103は左方の矩形領域のエッジ情報及び色情報をサブプロセッサ104に送出し、右方の矩形領域をレンダリングし、サブプロセッサ104から処理待ち信号を受けると、レンダリング結果をサブプロセッサ104に送出する。サブプロセッサ104は、左方の矩形領域をレンダリングし、レンダリング結果を外部に送出すると共に、サブプロセッサ103に処理待ち信号を送出することで取得した右方の矩形領域のレンダリング結果を外部に送出する。
【選択図】 図1

Description

本発明は、画像のレンダリング技術に関するものである。
ベクタグラフィックス言語で記述された描画命令を処理するレンダラにおいて、処理の高速化や負荷分散を目的として描画命令を並列に処理する方法が、特許文献1,2に開示されている。特許文献1には、共有バスを介して各レンダラに描画命令を転送し、各レンダラで画像を並列に処理する方法が開示されている。特許文献2には、描画領域をバンド単位に分割し、バンド毎に並列に処理する方法が開示されている。
特許03809284号公報 特開平09−167243号公報
グラフィックスの高解像度化に伴い、描画命令を並列に処理する手法が用いられている。しかし従来の手法では、描画命令の処理タイミングや描画結果の出力順を制御し、正しい順序でグラフィックスを出力する為の構成が複雑であり、そのためのコストもかかっていた。
特許文献1に開示されている手法では、各レンダラがメインメモリに対して、描画命令の獲得要求を行う。そして、この要求が衝突した場合には、先に処理すべき優先度の高い描画命令から共有バスに出力し、該当するレンダラに転送するように制御している。同様に、各レンダラで処理した描画結果を共有バスへ出力する際にも、衝突が起きないように出力順を制御している。そのため、ハードウェアの処理負荷が大きかった。また、あるレンダラにおいて後で出力する優先度の低い画像処理が、別のレンダラにおいて先に出力すべき優先度の高い画像処理よりも先に完了した場合、生成した画像を一旦ローカルメモリに格納しておかなければならず、その為のメモリコストが大きかった。
特許文献2に開示されている手法では、1フレーム分の描画領域を水平方向に区切って複数のバンド画像に分割し、それぞれのバンド画像を並列に処理し、前段のバンド画像の描画結果から順次出力していく。しかし、バンド画像の描画所要時間は複雑度に応じて異なるため、状況によっては、前段のバンド画像の処理が終了するまで、生成したバンド画像を保持しておかなければならなかった。また、バンド画像毎に処理を行うので、メモリコストは1フレーム単位のデータを保持するものに比べて幾分小さくはなるが、代わりにバンド画像に対する処理の割り当てや順序制御が1フレーム単位のものに比べて複雑であった。
本発明は以上の問題に鑑みてなされたものであり、複数のレンダラを用いて画像の描画処理を行う場合に、より簡便な方法でもってこの描画処理を実現するための技術を提供することを目的とする。
本発明の目的を達成するために、例えば、本発明のレンダリングプロセッサは以下の構成を備える。即ち、メインプロセッサと、該メインプロセッサから出力された情報を処理する第1サブプロセッサと、該第1サブプロセッサから出力された情報を処理する第2サブプロセッサと、を備えるレンダリングプロセッサであって、
前記メインプロセッサは、
描画対象画像の描画命令を取得する手段と、
前記描画命令を用いて、前記描画対象画像を構成するそれぞれの画素のエッジ情報及び色情報を収集する収集手段と、
前記描画対象画像を垂直ライン方向に2個の矩形領域に区分し、区分したそれぞれの矩形領域を、画像の右端の矩形領域から左端の矩形領域に向かって第1矩形領域、第2矩形領域とした場合に、前記描画対象画像を構成する各水平ラインを、前記第1矩形領域に属する第1区分ライン、前記第2矩形領域に属する第2区分ラインに分割する分割手段と、
前記描画対象画像を構成する水平ライン毎に、前記第1区分ライン及び前記第2区分ラインを構成する各画素のエッジ情報及び色情報を前記第1サブプロセッサに出力する出力手段と
を備え、
前記第1サブプロセッサは、
前記出力手段が出力した各画素のエッジ情報及び色情報のうち、前記第2区分ラインとしてのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報を前記第2サブプロセッサに出力する第1転送手段と、
前記出力手段が出力した各画素のエッジ情報及び色情報のうち、前記第1区分ラインを構成する各画素のエッジ情報及び色情報を用いて、該第1区分ラインのレンダリングを行う第1レンダリング手段と、
前記第1レンダリング手段によるレンダリング結果を前記第2サブプロセッサに出力する第1出力手段と
を備え、
前記第2サブプロセッサは、
前記第1サブプロセッサから出力された前記第2区分ラインを構成する各画素のエッジ情報及び色情報を用いて、該第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 (5)

  1. メインプロセッサと、該メインプロセッサから出力された情報を処理する第1サブプロセッサと、該第1サブプロセッサから出力された情報を処理する第2サブプロセッサと、を備えるレンダリングプロセッサであって、
    前記メインプロセッサは、
    描画対象画像の描画命令を取得する手段と、
    前記描画命令を用いて、前記描画対象画像を構成するそれぞれの画素のエッジ情報及び色情報を収集する収集手段と、
    前記描画対象画像を垂直ライン方向に2個の矩形領域に区分し、区分したそれぞれの矩形領域を、画像の右端の矩形領域から左端の矩形領域に向かって第1矩形領域、第2矩形領域とした場合に、前記描画対象画像を構成する各水平ラインを、前記第1矩形領域に属する第1区分ライン、前記第2矩形領域に属する第2区分ラインに分割する分割手段と、
    前記描画対象画像を構成する水平ライン毎に、前記第1区分ライン及び前記第2区分ラインを構成する各画素のエッジ情報及び色情報を前記第1サブプロセッサに出力する出力手段と
    を備え、
    前記第1サブプロセッサは、
    前記出力手段が出力した各画素のエッジ情報及び色情報のうち、前記第2区分ラインとしてのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報を前記第2サブプロセッサに出力する第1転送手段と、
    前記出力手段が出力した各画素のエッジ情報及び色情報のうち、前記第1区分ラインを構成する各画素のエッジ情報及び色情報を用いて、該第1区分ラインのレンダリングを行う第1レンダリング手段と、
    前記第1レンダリング手段によるレンダリング結果を前記第2サブプロセッサに出力する第1出力手段と
    を備え、
    前記第2サブプロセッサは、
    前記第1サブプロセッサから出力された前記第2区分ラインを構成する各画素のエッジ情報及び色情報を用いて、該第2区分ラインのレンダリングを行う第2レンダリング手段と、
    前記第1サブプロセッサから出力されたレンダリング結果、及び前記第2レンダリング手段によるレンダリング結果を、出力する第2出力手段と
    を備えることを特徴とするレンダリングプロセッサ。
  2. メインプロセッサと、該メインプロセッサから出力された情報を処理する第1サブプロセッサと、第i(i=1,2,…,N−1)サブプロセッサから出力された情報を処理する第(i+1)サブプロセッサと、を備えるレンダリングプロセッサであって、
    前記メインプロセッサは、
    グラフィックス言語で記述された、描画対象画像の描画命令を取得する手段と、
    前記描画命令を用いて、前記描画対象画像を構成するそれぞれの画素のエッジ情報及び色情報を収集する収集手段と、
    前記描画対象画像を垂直ライン方向にN個の矩形領域に区分し、区分したそれぞれの矩形領域を、右端の矩形領域から左端の矩形領域に向かって第1矩形領域、第2矩形領域、…、第N矩形領域とした場合に、前記描画対象画像を構成する各水平ラインを、前記第1矩形領域に属する第1区分ライン、前記第2矩形領域に属する第2区分ライン、…、前記第N矩形領域に属する第N区分ライン、に分割する分割手段と、
    前記第1サブプロセッサから出力許可を示す信号を受けると、前記描画対象画像を構成する水平ライン毎に、前記第1区分ラインを構成する各画素のエッジ情報及び色情報、前記第2区分ラインを構成する各画素のエッジ情報及び色情報、…、前記第N区分ラインを構成する各画素のエッジ情報及び色情報、を前記第1サブプロセッサに出力する出力手段と
    を備え、
    前記第1サブプロセッサは、
    出力許可を示す信号を前記メインプロセッサに対して送信することで前記出力手段が出力した前記第1乃至N区分ラインのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報のうち、第2乃至N区分ラインのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報を第2サブプロセッサに出力する第1転送手段と、
    前記出力手段が出力した前記第1乃至N区分ラインのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報のうち、第1区分ラインを構成する各画素のエッジ情報及び色情報を用いて、該第1区分ラインのレンダリングを行う第1レンダリング手段と、
    前記第2サブプロセッサから出力許可を示す信号を受けると、前記第1レンダリング手段によるレンダリング結果を前記第2サブプロセッサに出力する第1出力手段と
    を備え、
    前記第i(≠N)サブプロセッサは、
    第(i−1)サブプロセッサから出力された前記第i乃至N区分ラインのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報を入力し、第(i+1)乃至N区分ラインのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報を第(i+1)サブプロセッサに出力する第2転送手段と、
    第(i−1)サブプロセッサから出力された前記第i乃至N区分ラインのそれぞれの区分ラインを構成する各画素のエッジ情報及び色情報のうち、第i区分ラインを構成する各画素のエッジ情報及び色情報を用いて、該第i区分ラインのレンダリングを行う第2レンダリング手段と、
    前記第(i+1)サブプロセッサから出力許可を示す信号を受けると、出力許可を示す信号を第(i−1)サブプロセッサに対して送信することで第(i−1)サブプロセッサから出力されたレンダリング結果、及び前記第2レンダリング手段によるレンダリング結果を前記第(i+1)サブプロセッサに出力する第2出力手段と
    を備え、
    前記第Nサブプロセッサは、
    第(N−1)サブプロセッサから出力された第N区分ラインを構成する各画素のエッジ情報及び色情報を用いて、該第N区分ラインのレンダリングを行う第3レンダリング手段と、
    出力許可を示す信号を第(N−1)サブプロセッサに対して送信することで第(N−1)サブプロセッサから出力されたレンダリング結果、及び前記第3レンダリング手段によるレンダリング結果を、出力する第3出力手段と
    を備えることを特徴とするレンダリングプロセッサ。
  3. 前記第1転送手段は、前記第1転送手段が最初に前記出力手段からの出力を入力する前、及び前記第1出力手段が出力の動作を行う毎に、出力許可を示す信号を前記メインプロセッサに対して送信する請求項2に記載のレンダリングプロセッサ。
  4. 前記第2出力手段は、前記第2転送手段が最初に第(i−1)サブプロセッサからの出力を入力する前、及び前記第2出力手段が出力の動作を行う毎に、出力許可を示す信号を前記第(i−1)サブプロセッサに対して送信する請求項2又は3に記載のレンダリングプロセッサ。
  5. 前記第3出力手段は、前記第3出力手段が出力の動作を行う前に、出力許可を示す信号を前記第(N−1)サブプロセッサに対して送信する請求項2乃至4の何れか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 true JP2012003345A (ja) 2012-01-05
JP2012003345A5 JP2012003345A5 (ja) 2013-10-03
JP5539051B2 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)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007503059A (ja) * 2003-08-18 2007-02-15 エヌビディア・コーポレーション マルチプロセッサ・グラフィックス処理システムの適応型負荷分散
JP2009278468A (ja) * 2008-05-15 2009-11-26 Canon Inc 画像処理方法及び画像処理装置とその制御方法
WO2010045259A2 (en) * 2008-10-13 2010-04-22 Apple Inc. Seamless display migration
JP2010102569A (ja) * 2008-10-24 2010-05-06 Ricoh Co Ltd 画像処理装置、画像処理方法およびプログラム

Family Cites Families (7)

* 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
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
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007503059A (ja) * 2003-08-18 2007-02-15 エヌビディア・コーポレーション マルチプロセッサ・グラフィックス処理システムの適応型負荷分散
JP2009278468A (ja) * 2008-05-15 2009-11-26 Canon Inc 画像処理方法及び画像処理装置とその制御方法
WO2010045259A2 (en) * 2008-10-13 2010-04-22 Apple Inc. Seamless display migration
JP2010102569A (ja) * 2008-10-24 2010-05-06 Ricoh Co Ltd 画像処理装置、画像処理方法およびプログラム

Also Published As

Publication number Publication date
US20140098112A1 (en) 2014-04-10
US20110304635A1 (en) 2011-12-15
JP5539051B2 (ja) 2014-07-02
US9773291B2 (en) 2017-09-26
US8633935B2 (en) 2014-01-21

Similar Documents

Publication Publication Date Title
US20160057256A1 (en) Information processing apparatus, communication method and storage medium
US20060161720A1 (en) Image data transmission method and system with DMAC
JP5895840B2 (ja) マルチプロセッサシステム、実行制御方法、実行制御プログラム
US9378533B2 (en) Central processing unit, GPU simulation method thereof, and computing system including the same
CN103608776A (zh) 异构型处理设备上的动态工作划分
US8832712B2 (en) System and method for synchronizing threads using shared memory having different buffer portions for local and remote cores in a multi-processor system
EP3252604A2 (en) Scalable compute fabric
CN111562948A (zh) 在实时图像处理系统中实现串行任务并行化的系统及方法
US7793012B2 (en) Information processing unit, system and method, and processor
US9542127B2 (en) Image processing method and image processing apparatus
CN110245024B (zh) 静态存储块的动态分配系统及其方法
JP2018500649A (ja) データ転送方法及び装置
JP3030490B2 (ja) 同期制御方法及び装置
JP5539051B2 (ja) レンダリングプロセッサ
CN103582877A (zh) 计算机系统中断处理
US10649938B2 (en) Information processing apparatus and method of transferring data
CN115775199B (zh) 数据处理方法和装置、电子设备和计算机可读存储介质
JP2024501454A (ja) 高スループット及び低オーバーヘッドカーネルローンチのための圧縮されたコマンドパケット
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
JP5271567B2 (ja) 画像前処理装置
CN116681575B (zh) 图形处理单元、图形渲染方法、存储介质、终端设备
CN110716750A (zh) 用于部分波前合并的方法和系统
CN116339944A (zh) 任务处理方法、芯片、多芯片模块、电子设备和存储介质
JP6204313B2 (ja) 電子機器

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