JP2017174278A - Image processing device - Google Patents
Image processing device Download PDFInfo
- Publication number
- JP2017174278A JP2017174278A JP2016061593A JP2016061593A JP2017174278A JP 2017174278 A JP2017174278 A JP 2017174278A JP 2016061593 A JP2016061593 A JP 2016061593A JP 2016061593 A JP2016061593 A JP 2016061593A JP 2017174278 A JP2017174278 A JP 2017174278A
- Authority
- JP
- Japan
- Prior art keywords
- command
- buffer
- image data
- preload
- image processing
- 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
Links
Images
Landscapes
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Image Input (AREA)
- Image Processing (AREA)
- Information Transfer Systems (AREA)
Abstract
Description
本発明は、1フレーム分の画像データを記憶するフレームバッファを利用し、画像データの描画および表示を行う画像処理装置に関する。 The present invention relates to an image processing apparatus that draws and displays image data using a frame buffer that stores image data for one frame.
静止画や動画の画像データは圧縮符号化されてアミューズメント機器に実装されることが一般的である。各種画像データに圧縮符号化を施した圧縮データを格納したメモリを画像処理装置に接続し、画像表示を行う都度、メモリから圧縮データを読み出し、復号する。 In general, image data of still images and moving images is compression-coded and mounted on an amusement device. A memory storing compressed data obtained by performing compression encoding on various image data is connected to the image processing apparatus, and the compressed data is read from the memory and decoded each time an image is displayed.
アミューズメント機器における画像の表示性能は、メモリからの圧縮データの読み出しに要する時間に大きく依存する。このことは、フレームバッファ方式の画像処理装置において、特に顕著となる。 The image display performance in the amusement device largely depends on the time required to read out the compressed data from the memory. This is particularly noticeable in a frame buffer type image processing apparatus.
特許文献1および2には、メモリとCPU(Central Processing Unit)との間にデータバッファを配置し、データバッファをキャッシュメモリに見立てた疑似キャッシュシステムが開示されている。特許文献3および4には、複数のフレームバッファを設けた画像処理装置が開示されている。
特許文献1および2の疑似キャッシュシステム、ならびに特許文献3および4の画像処理装置によれば、メモリからの圧縮データの読み出しに起因するオーバーヘッドの削減が期待できる。
According to the pseudo cache systems of
本発明者は、フレームバッファ方式の画像処理装置における、メモリからの読み出しに要する時間に起因するオーバーヘッドのさらなる削減を実現すべく、鋭意検討を行った。その結果、本発明者は本発明を完成するに至った。 The present inventor has intensively studied to realize further reduction of overhead due to time required for reading from the memory in the frame buffer type image processing apparatus. As a result, the present inventor has completed the present invention.
本発明の目的は、メモリから画像データをプリロードすることにより、メモリからの画像データの読み出しに起因するオーバーヘッドを削減する画像処理装置を実現することにある。 An object of the present invention is to realize an image processing apparatus that reduces the overhead caused by reading image data from the memory by preloading the image data from the memory.
上記の課題を解決するために、本発明の一態様に係る画像処理装置は、格納先アドレスが含まれるコマンドに従い、メモリから画像データを読み出し、画像処理する画像処理装置であって、上記コマンドがフレーム単位で順次書き込まれる第1、第2および第3コマンドバッファと、上記メモリよりも読み出し速度が速く、且つ、上記メモリから読み出された画像データがフレーム単位で順次書き込まれる第1および第2プリロードバッファと、上記画像処理の前処理として、上記第1コマンドバッファに書き込まれた第1コマンドに含まれる第1格納先アドレスと、上記第2コマンドバッファに書き込まれた、上記第1コマンドの直後の第2コマンドに含まれる第2格納先アドレスとが一致する場合、上記第1コマンドに従って上記第1プリロードバッファに書き込まれた第1画像データを、上記第2コマンドに従って上記第2プリロードバッファに書き込まれる第2画像データとして設定する設定部とを備える。 In order to solve the above problem, an image processing apparatus according to an aspect of the present invention is an image processing apparatus that reads out image data from a memory and performs image processing in accordance with a command including a storage destination address. First, second, and third command buffers that are sequentially written in units of frames, and first and second that are faster in reading speed than the memory and in which image data read from the memories are sequentially written in units of frames. As a preload buffer and preprocessing of the image processing, the first storage destination address included in the first command written in the first command buffer and immediately after the first command written in the second command buffer If the second storage destination address included in the second command matches the first command according to the first command. The first image data written in the load buffer, and a setting unit for setting the second image data to be written into the second pre-load buffer in accordance with the second command.
ここで、「上記画像処理の前処理」は、メモリから画像データを予め読み出しておく「プリロード」の意である。 Here, “the preprocessing of the image processing” means “preloading” in which image data is read from the memory in advance.
上記構成によれば、第2格納先アドレスが第1格納先アドレスと一致すれば、メモリ内における格納先が同一であることから、第1画像データと第2画像データとは同一の画像データであるといえる。 According to the above configuration, if the second storage destination address matches the first storage destination address, the storage destination in the memory is the same. Therefore, the first image data and the second image data are the same image data. It can be said that there is.
この場合、設定部により、先に読み出された第1画像データを、第2コマンドに従って読み出される第2画像データとして設定されるので、メモリから第2画像を読み出す必要がなく、メモリよりも読み出し速度の速い第2プリロードバッファから第2画像を読み出すことが可能となる。 In this case, the first image data read out in advance is set as the second image data read out according to the second command by the setting unit, so there is no need to read the second image from the memory, and the reading is performed from the memory The second image can be read from the second preload buffer having a high speed.
このため、メモリからの画像データの読み出しに起因するオーバーヘッドを削減することができる。 For this reason, it is possible to reduce overhead caused by reading image data from the memory.
なお、本発明の各態様に係る画像処理装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記画像処理装置が備える各部として動作させることにより上記画像処理装置をコンピュータにて実現させる画像処理装置の制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。さらに、本発明の各態様に係る画像処理装置は集積回路(ICチップ)として実現してもよく、この場合には、上記集積回路を備えるチップ等も本発明の範疇に入る。 The image processing apparatus according to each aspect of the present invention may be realized by a computer. In this case, the image processing apparatus is realized by a computer by causing the computer to operate as each unit included in the image processing apparatus. A control program for the image processing apparatus to be executed and a computer-readable recording medium on which the control program is recorded also fall within the scope of the present invention. Furthermore, the image processing apparatus according to each aspect of the present invention may be realized as an integrated circuit (IC chip). In this case, a chip including the integrated circuit also falls within the scope of the present invention.
本発明によれば、メモリからの画像データの読み出しに起因するオーバーヘッドを削減することができる。 According to the present invention, it is possible to reduce overhead caused by reading image data from a memory.
まず、本発明に係る画像処理装置の前提となる構成について説明し、次に、本発明に係る画像処理装置について1つの実施形態で説明する。なお、以下の図面の記載において、同一または類似の部分には同一または類似の符号を付し、重複する説明を省略する。 First, a configuration that is a premise of the image processing apparatus according to the present invention will be described, and then the image processing apparatus according to the present invention will be described in one embodiment. In the following description of the drawings, the same or similar parts are denoted by the same or similar reference numerals, and redundant description is omitted.
図1は、本発明の画像処理装置の前提構成(以下、「前提装置」と称する。)を示すブロック図である。図1では、前提装置101と、前提装置101に接続された、CPU201、ROM202およびLCD203とから構成された画像表示装置100が図示されている。前提装置101は、CPU201から与えられるコマンドに従い、ROM202からスプライトの圧縮形式の画像データを読み出して復号し、またはROM202からスプライトの非圧縮形式の画像データを読み出して、LCD203に表示させる画像データを生成する。CPU201は、前提装置101が搭載される情報機器等の全体を制御するプロセッサであり、前提装置101に対しては、LCD203にスプライト、背景、フォント等の画像を表示させるためのコマンドやデータを供給する。ROM202には、各種のスプライト、背景、フォント等の表示対象についての圧縮形式または非圧縮形式の画像データやαブレンディングに用いる圧縮形式または非圧縮形式のαブレンド値等が記憶されている。
FIG. 1 is a block diagram showing a premise configuration (hereinafter referred to as “premise device”) of an image processing apparatus of the present invention. In FIG. 1, an image display device 100 including a
前提装置101は、コントローラ102と、コマンドバッファ103と、プリロードバッファ104と、DMAC(ダイレクト・メモリ・アクセス・コントローラ)105と、デコーダー106と、デコードバッファ107と、描画エンジン108と、フレームバッファ109と、表示制御部110と、を備えている。
The
前提装置101においては、CPU201により、コマンドバッファ103にコマンドが書き込まれる。コマンドバッファ103は、ダブルバッファリングを行うものであり、第1コマンドバッファ103aおよび第2コマンドバッファ103bを含んでいる。
In the
コントローラ102のプリロード部102aは、第1コマンドバッファ103aまたは第2コマンドバッファ103bに書き込まれたコマンドを読み取り、ROM202からの画像データの読み出しを指示するコマンドを特定する。プリロード部102aは、特定したコマンドに当該画像データのプリロードが指定されていれば、DMAC105に対し、ROM202からプリロードバッファ104への画像データの転送を設定する。
The
DMAC105は、設定された画像データを転送する。この転送に伴い、コマンドに含まれる、当該画像データの格納場所を示す格納先アドレスが、プリロード部102aにより、ROM202内のアドレスからプリロードバッファ104内のアドレスに書き換えられる。
The DMAC 105 transfers the set image data. Along with this transfer, the storage destination address indicating the storage location of the image data included in the command is rewritten from the address in the
コントローラ102のコマンド実行部102bは、第1コマンドバッファ103aまたは第2コマンドバッファ103bに書き込まれたコマンドに従い、デコーダー106に画像データを復号させる。
The
デコーダー106は、コマンドに含まれる、画像データの格納先アドレスが、プリロードバッファ104内のアドレスであれば、当該画像データをプリロードバッファ104から読み出す一方、ROM202内のアドレスであれば、当該画像データをROM202から読み出す。従来であれば、必要な画像データは画像表示を行う都度、ROM202から読み出されていた。前提装置101では、ユーザによりプリロードが指定された画像データは、上述したとおり、プリロード部102aによりプリロードされており、デコーダー106による当該画像データの読み出しは、ROM202からではなく、実際にはプリロードバッファ104から読み出される。プリロードバッファ104はDRAM等の高速アクセス可能なメモリを用いることができるので、ROM202から画像データを読み出す場合と比較し、当該画像データの読み出しに要する時間は短縮されることになる。
The
なお、ROM202に記憶されている画像データのうち、プリロード対象とする画像データの割合は、プリロードバッファ104の容量によって制限される。ROM202に記憶されている画像データの容量に対し、プリロードバッファ104の容量が十分大きければ、ROM202に記憶されている画像データの全てをプリロード対象とすることも可能となる。
Note that the ratio of image data to be preloaded among the image data stored in the
デコーダー106は、プリロードバッファ104またはROM202から読み出した画像データを復号し、復号した画像データをデコードバッファ107に書き込む。
The
コマンド実行部102bはさらに、第1コマンドバッファ103aまたは第2コマンドバッファ103bに書き込まれたコマンドに従い、描画エンジン108にLCD203に表示させる画像データの生成を実行させる。
The
描画エンジン108は、デコードバッファ107から画像データを1フレーム分ずつ読み出し、当該画像データに対し、拡縮・変形、カラー処理等を施した描画データを生成する。描画エンジン108は、生成した描画データをフレームバッファ109に書き込む。フレームバッファ109は、ダブルバッファリングを行うものであり、第1フレームバッファ109aおよび第2フレームバッファ109bを含んでいる。第1フレームバッファ109aおよび第2フレームバッファ109bは、交互にフレーム単位で、一方が描画のために画像データが書き込まれ、他方が表示のために画像データが読み出される。
The
表示制御部110は、第1フレームバッファ109aおよび第2フレームバッファ109bに書き込まれた描画データに基づいてLCD203への画像の表示制御を行う。
The
以上が前提装置101の構成および動作である。前提装置101では、上述したとおり、ユーザによりプリロードが指定された画像データに対し、プリロード部102aによるプリロードが実行される。このプリロードの指定は、CPU201から前提装置101に与えられるコマンドに定義される。例えば、アミューズメント機器の開発現場では、フレーム単位にコマンドバッファ103にコマンドを書きこむタイミング、フレーム単位にROM202からプリロードバッファ104にプリロードするタイミング等を予めコンピュータ上でテストした後、フレーム毎にCPU201から出力するコマンドが決められる。
The above is the configuration and operation of the
上記の作業は、オーサリングツールなどのソフトウェアを使って行われるが、プリロードバッファ104のサイズに特に影響され、試行錯誤を繰り返し、大変手間がかかる作業である。前提装置101内部で、処理が間に合わなければ、いわゆるフレーム落ちが生じ、希望する表示が得られないからである。
The above work is performed using software such as an authoring tool. However, the work is particularly affected by the size of the
そこで、本発明者は、さらに鋭意検討を重ね、プリロードすべき画像データをユーザによって予め選択することを不要とする構成、すなわち、画像表示を行いつつ、且つ、ユーザによることなく自動的に、プリロードすべき画像データを選択可能な構成を見出し、本発明を完成するに至った。本発明によれば、上述の作業は不要となり、ユーザの手間を省くことができる。 Accordingly, the present inventor has conducted further diligent studies, and has a configuration that eliminates the need for the user to pre-select image data to be preloaded, that is, automatically displays the image while displaying it and without the user. The present inventors have found a configuration in which image data to be selected can be selected, and have completed the present invention. According to the present invention, the above-described operation is unnecessary, and the user's trouble can be saved.
以下、本発明の一実施形態に係る画像処理装置について説明する。図2は、本発明の一実施形態に係る画像処理装置の構成を示すブロック図である。 Hereinafter, an image processing apparatus according to an embodiment of the present invention will be described. FIG. 2 is a block diagram showing a configuration of the image processing apparatus according to the embodiment of the present invention.
画像処理装置11は、前提装置101と同様、CPU201と、ROM(メモリ)202と、LCD203と接続され、画像表示装置1を構成する。画像処理装置11は、コントローラ12と、コマンドバッファ13と、プリロードバッファ14と、DMAC15と、デコーダー16と、デコードバッファ17と、描画エンジン18と、フレームバッファ19と、表示制御部20と、を備えている。
The
コントローラ12は、CPU201から与えられるコマンドに従い、ROM202から画像データを読み出し、読み出した画像データからLCD203に表示させる描画データを生成するための制御を行う回路である。CPU201から与えられるコマンドは、コマンドバッファ13に書き込まれる。
The
コマンドバッファ13は、トリプルバッファリングを行うものであり、第1コマンドバッファ13a、第2コマンドバッファ13bおよび第3コマンドバッファ13cを含んでいる。第1コマンドバッファ13a、第2コマンドバッファ13bおよび第3コマンドバッファ13cは、CPU201により、コマンドが書き込まれ、書き込まれたコマンドが読み取られる。
The
コマンドは、フレーム単位で、第1コマンドバッファ13a、第2コマンドバッファ13bおよび第3コマンドバッファ13cに書きこまれる。そして、第1コマンドバッファ13a、第2コマンドバッファ13bおよび第3コマンドバッファ13cは、この順で、フレーム単位で各々読み取られる。
Commands are written in the
例えば、現在描画しているコマンドが書きこまれたバッファが第1コマンドバッファ13aであれば、第2コマンドバッファ13bが読み取られ、プリロードされる。そして、第3コマンドバッファ13cにCPU201がコマンドを書き込む。
For example, if the buffer in which the command currently being drawn is written is the
コントローラ12は、プリロード部(設定部)12a、コマンド実行部(実行部)12b、およびアドレス比較部12cを含んでいる。プリロード部12aは、第1コマンドバッファ13a、第2コマンドバッファ13b、または第3コマンドバッファ13cに書き込まれたコマンドを読み取り、ROM202からの画像データの読み出しを指示するコマンドを特定する。
The
アドレス比較部12cは、プリロード部12aにより特定されたコマンドに含まれる、当該画像データの格納先アドレスと、書き込みの順番が当該コマンドの1つ前の順番のコマンドバッファに書き込まれたコマンドに含まれる、画像データの格納先アドレスとを比較し、両者が一致するか否かを判定する。プリロード部12aは、アドレス比較部12cによる一致しないとの判定結果に基づき、自身が特定したコマンドに従い、DMAC15に対し、ROM202からプリロードバッファ14への画像データの転送を設定する。
The
これに対し、プリロード部12aは、アドレス比較部12cが一致すると判定した場合には、DMAC15に対し、ROM202からプリロードバッファ14への画像データの転送を設定せずに、その代わりに、以下の設定を行う。
In contrast, if the
図2に示したとおり、プリロードバッファ14は、第1プリロードバッファ14aおよび第2プリロードバッファ14bを含んでいる。プリロードバッファ14は、第1プリロードバッファ14aおよび第2プリロードバッファ14bの各空き領域の管理等は行わず、単純なダブルバッファリングを行うものである。第1プリロードバッファ14aおよび第2プリロードバッファ14bは、交互にフレーム単位で、一方が、プリロードのために、DMAC15により、ROM202から画像データが書き込まれ、他方が、描画のために、デコーダー16により画像データが読み出される。
As shown in FIG. 2, the
また、プリロードバッファ14はDRAM等の高速アクセス可能なメモリを用いており、プリロードバッファ14の読み出し速度はROM202の読み出し速度よりも高速である。
The
再び、プリロード部12aの説明に戻る。アドレス比較部12cが一致すると判定した場合、プリロード部12aは、DMAC15に対し、書き込みの順番が先であった、第1プリロードバッファ14aおよび第2プリロードバッファ14bの一方から、他方への画像データの転送を設定する。
Returning to the description of the
この、第1プリロードバッファ14aと第2プリロードバッファ14bとの間における画像データの転送は、要は、プリロード対象の画像データが第1プリロードバッファ14a等に存在するのであれば、当該画像データをわざわざROM202からプリロードするのではなく、第1プリロードバッファ14a等に存在する当該画像データを利用し、ROM202からのプリロードを回避するためのものである。
The transfer of the image data between the
上述のアドレス比較部12cによる格納先アドレス比較は、プリロード対象の画像データが第1プリロードバッファ14a等に存在するか否かをチェックするために行われる。或るコマンド(後コマンド)に含まれる格納先アドレスが、書き込みの順番が後コマンドの1つ前の順番であったコマンド(先コマンド)に含まれる格納先アドレスと一致するということは、先コマンドに従って、一致した格納先アドレスに格納されている画像データがROM202から先にプリロードされていたことを示すものだからである。
The storage destination address comparison by the
ここで、コマンドバッファ13が、前提装置101のコマンドバッファ103とは異なり、トリプルバッファリングを行うものであるのは、上述のアドレス比較部12cによる格納先アドレス比較を行うためである。この格納先アドレス比較を行うためには、CPU201により書き込まれたコマンドよりも、書き込みの順番が1つ前の順番であったコマンドを保持するバッファがさらに必要となるからである。
Here, the
DMAC15は、ROM202からプリロードバッファ14への画像データ転送、または、第1プリロードバッファ14aと第2プリロードバッファ14bとの間における画像データ転送を行う。前者の転送であれば、コマンドに含まれる、当該画像データの格納場所を示す格納先アドレスが、プリロード部12aにより、ROM202内のアドレスからプリロードバッファ14内のアドレスに書き換えられる。
The
一方、後者の転送であれば、コマンドに含まれる、当該画像データの格納場所を示す格納先アドレスが、プリロード部12aにより、プリロードバッファ14内の新たなアドレスに書き換えられる。つまり、第1プリロードバッファ14aと第2プリロードバッファ14bと間における転送に伴う、プリロードバッファ14内における格納先アドレスの変更に起因するものである。
On the other hand, in the latter transfer, the storage destination address indicating the storage location of the image data included in the command is rewritten to a new address in the
コントローラ12のコマンド実行部12bは、第1コマンドバッファ13a、第2コマンドバッファ13bまたは第3コマンドバッファ13cに書き込まれたコマンドに従い、デコーダー16に画像データを復号させる。デコーダー16は、当該画像データをプリロードバッファ14から読み出す。
The
ここで、前提装置101であれば、プリロードされる画像データは、ユーザによりプリロードが予め指定された画像データのみであった。画像処理装置11では、プリロードされる画像データはユーザ指定のものではない。コマンドバッファ13への書き込みの順番が連続する、2つのコマンド間において、先コマンドに従いプリロードされた画像データが、後コマンドに従いプリロードすべき画像と同一であった場合には、ROM202から読み出すのではなく、先にプリロードされた画像データを利用するものである。
Here, in the case of the
これにより、プリロードすべき画像データをユーザによって予め選択することが不要となり、画像表示を行いつつ、且つ、プリロードすべき画像データを選択することが可能となる。 As a result, it is not necessary for the user to select in advance the image data to be preloaded, and the image data to be preloaded can be selected while performing image display.
デコーダー16は、プリロードバッファ14から読み出した画像データを復号し、復号した画像データをデコードバッファ17に書き込む。
The
コマンド実行部12bはさらに、第1コマンドバッファ13a、第2コマンドバッファ13b、または第3コマンドバッファ13cに書き込まれたコマンドに従い、描画エンジン18にLCD203に表示させる画像データの生成を実行させる。第1コマンドバッファ13a、第2コマンドバッファ13b、および第3コマンドバッファ13cは、決められた順番で、フレーム単位で切り替わり、読み出される。
The
なお、描画エンジン18、フレームバッファ19および表示制御部20の構成および動作については、前提装置101の描画エンジン108、フレームバッファ109および表示制御部110のものと同様であるので、ここでは説明を省略する。以上が画像処理装置11の構成および動作である。
Note that the configurations and operations of the
最後に、図3を用いて、画像処理装置11による画像処理の手順について説明する。図3は、画像処理装置11による画像処理の手順を示すタイミングチャートである。
Finally, the procedure of image processing by the
V_BLANK信号VB0に同期して、CPU201は、画像処理装置11に対し、コマンドを与える(S01、S02)。S01にて、コマンドCMD#3が与えられ、S02にて、コマンドバッファCbuff2に書き込まれている。
In synchronization with the V_BLANK signal VB0, the
なお、図3において、「コマンドCMD#n」はn番目のフレームを構成するために用いられる複数のコマンドからなるコマンド群を意味する。 In FIG. 3, “command CMD # n” means a command group including a plurality of commands used to configure the nth frame.
プリロード部12aは、コマンドバッファ13に書き込まれたコマンドを読み取り、ROM202からの画像データの読み出しを指示するコマンドを特定する(S02)。S02にて、コマンドバッファCbuff1に書き込まれたコマンドCMD#2が読み取られ、ROM202からの画像データの読み出しを指示するコマンドであると特定されている。
The
アドレス比較部12cは、当該コマンドに含まれる格納先アドレスと、書き込みの順番が1つ前の順番のコマンドバッファに書き込まれたコマンドに含まれる格納先アドレスとを比較し、両者が一致するか否かを判定する(S03)。S03にて、コマンドバッファCbuff1に書き込まれたコマンドCMD#2の格納先アドレスと、コマンドバッファCbuff0に書き込まれたコマンドCMD#1の格納先アドレスとが比較されている。
The
プリロード部12aは、アドレス比較部12cによる一致しないとの判定結果に基づき、自身が特定したコマンドに従い、DMAC15に対し、ROM202からプリロードバッファ14への画像データの転送を設定する。一方、プリロード部12aは、アドレス比較部12cが一致すると判定した場合には、DMAC15に対し、書き込みの順番が先であった、第1プリロードバッファ14aおよび第2プリロードバッファ14bの一方から他方への画像データの転送を設定する(S03)。DMAC15は、ROM202からプリロードバッファ14への画像データ転送、または、第1プリロードバッファ14aと第2プリロードバッファ14bとの間における画像データ転送を行う(S04)。S03、S04にて、アドレス比較部12cによる判定結果に基づき、プリロードバッファPBuff1への画像データData#2の転送が行われている。
The
コマンド実行部12bは、コマンドバッファ13に書き込まれたコマンドに従い、デコーダー16に画像データを復号させる。デコーダー16は、当該画像データをプリロードバッファ14から読み出す(S06)。デコーダー16は、プリロードバッファ14から読み出した画像データを復号し、復号した画像データをデコードバッファ17に書き込む(S07)。S06にて、コマンドバッファCbuff0に書き込まれたコマンドCMD#1に従い、プリロードバッファPBuff0から画像データData#1が読み出され、S07にて、復号された画像データData#1がデコードバッファ17に書き込まれている。
The
コマンド実行部12bは、コマンドバッファ13に書き込まれたコマンドに従い、描画エンジン18にLCD203に表示させる画像データの生成を実行させる(S05)。描画エンジン18は、デコードバッファ17から画像データを1フレーム分ずつ読み出し、当該画像データに対し、拡縮・変形、カラー処理等を施した描画データを生成する(S08)。S05にて、コマンドバッファCbuff0に書き込まれたコマンドCMD#1に従い、S08にて、描画エンジン18が描画データ#1を生成している。
The
描画エンジン18は、生成した描画データをフレームバッファ19に書き込む(S09)。S09にて、フレームバッファ19に描画データ#1が書き込まれている。
The
表示制御部20は、第1フレームバッファ19aおよび第2フレームバッファ19bに書き込まれた描画データに基づいてLCD203への画像の表示制御を行う(S10)。S10にて、フレームバッファ19に書き込まれた描画データ#0に基づき、LCD203への画像の表示制御が行われている。
The
このようにして、画像処理が行われ、LCD203に画像表示(#0)される(S11)。 In this way, image processing is performed, and an image is displayed (# 0) on the LCD 203 (S11).
V_BLANK信号VB1、VB2、VB3に同期して、上記のS01〜S11と同様の処理であるS21〜S30、S41〜S50、S61〜S70が実行され、LCD203に画像表示(#1、#2、#3)される(S31、S51、S71)。 In synchronization with the V_BLANK signals VB1, VB2, and VB3, the same processes S21 to S30, S41 to S50, and S61 to S70 as the above S01 to S11 are executed, and the image is displayed on the LCD 203 (# 1, # 2, # 3) (S31, S51, S71).
画像処理装置11は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
The
後者の場合、画像処理装置11は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
In the latter case, the
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、実施形態に開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。 The present invention is not limited to the above-described embodiment, and various modifications are possible within the scope shown in the claims, and the present invention is also applied to an embodiment obtained by appropriately combining technical means disclosed in the embodiment. It is included in the technical scope of the invention.
上述の実施形態では、コマンドバッファ13がトリプルバッファリング、プリロードバッファ14がダブルバッファリングを、それぞれ行うものであったが、本発明は、それらバッファの数に限られるものではない。コマンドバッファ13が4つ以上のバッファを、プリロードバッファ14が3つ以上のバッファを備えるものであってもよい。
In the above embodiment, the
例えば、ROM202からプリロードバッファ14への転送が1周期(図3に示したV_BLANK信号間の間隔)以上かかる場合、プリロードバッファ14が3つ以上のバッファを備えることにより、瞬間的な負荷増加を吸収することが可能となる。また、コマンドバッファ13に関しても、同様に、アドレス比較部12cによる格納先アドレス比較に1周期以上かかる場合、コマンドバッファ13が4つ以上のバッファを備えることにより、瞬間的な負荷増加を吸収することが可能となる。
For example, when the transfer from the
なお、上述の実施形態において、第1コマンドバッファ13a、第2コマンドバッファ13b、および第3コマンドバッファ13cの各々に書き込まれるコマンド数は1つに限られるものではなく、各フレームを構成するために用いられる複数のコマンドからなるコマンド群が書き込まれてもよいことはいうまでもない。
In the above-described embodiment, the number of commands written to each of the
11 画像処理装置、12、102 コントローラ、12a、102a プリロード部(設定部)、12b、102b コマンド実行部(実行部)、12c アドレス比較部、13、103 コマンドバッファ、13a、103a 第1コマンドバッファ、13b、103b 第2コマンドバッファ、13c 第3コマンドバッファ、14、104 プリロードバッファ、14a 第1プリロードバッファ、14b 第2プリロードバッファ、15、105 DMAC、16、106 デコーダー、17、107 デコードバッファ、18、108 描画エンジン、19、109 フレームバッファ、20、110 表示制御部、101 前提装置、109a 第1フレームバッファ、109b 第2フレームバッファ、201 CPU、202 ROM(メモリ)、203 LCD。
11
Claims (6)
上記コマンドがフレーム単位で順次書き込まれる第1、第2および第3コマンドバッファと、
上記メモリよりも読み出し速度が速く、且つ、上記メモリから読み出された画像データがフレーム単位で順次書き込まれる第1および第2プリロードバッファと、
上記画像処理の前処理として、上記第1コマンドバッファに書き込まれた第1コマンドに含まれる第1格納先アドレスと、上記第2コマンドバッファに書き込まれた、上記第1コマンドの直後の第2コマンドに含まれる第2格納先アドレスとが一致する場合、上記第1コマンドに従って上記第1プリロードバッファに書き込まれた第1画像データを、上記第2コマンドに従って上記第2プリロードバッファに書き込まれる第2画像データとして設定する設定部と
を備えることを特徴とする画像処理装置。 An image processing apparatus that reads out image data from a memory and performs image processing according to a command including a storage destination address,
First, second, and third command buffers in which the commands are sequentially written in units of frames;
A first preload buffer and a second preload buffer in which image data read out from the memory are sequentially written in units of frames;
As preprocessing of the image processing, a first storage destination address included in the first command written in the first command buffer and a second command immediately after the first command written in the second command buffer If the second storage destination address included in the first image data matches the first image data written to the first preload buffer according to the first command, the second image written to the second preload buffer according to the second command. An image processing apparatus comprising: a setting unit configured as data.
上記第1プリロードバッファから上記第2プリロードバッファへ上記第1画像データを転送し、
上記第2格納先アドレスを上記第2プリロードバッファ内のアドレスに書き換えることを特徴とする請求項2に記載の画像処理装置。 When the first storage destination address matches the second storage destination address, the setting unit
Transferring the first image data from the first preload buffer to the second preload buffer;
The image processing apparatus according to claim 2, wherein the second storage destination address is rewritten to an address in the second preload buffer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016061593A JP6693215B2 (en) | 2016-03-25 | 2016-03-25 | Image processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016061593A JP6693215B2 (en) | 2016-03-25 | 2016-03-25 | Image processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017174278A true JP2017174278A (en) | 2017-09-28 |
JP6693215B2 JP6693215B2 (en) | 2020-05-13 |
Family
ID=59971273
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016061593A Active JP6693215B2 (en) | 2016-03-25 | 2016-03-25 | Image processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6693215B2 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005018428A (en) * | 2003-06-26 | 2005-01-20 | Nec Corp | Information processor |
JP2014225089A (en) * | 2013-05-15 | 2014-12-04 | オリンパス株式会社 | Arithmetic unit |
-
2016
- 2016-03-25 JP JP2016061593A patent/JP6693215B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005018428A (en) * | 2003-06-26 | 2005-01-20 | Nec Corp | Information processor |
JP2014225089A (en) * | 2013-05-15 | 2014-12-04 | オリンパス株式会社 | Arithmetic unit |
Also Published As
Publication number | Publication date |
---|---|
JP6693215B2 (en) | 2020-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6768928B2 (en) | Methods and devices for compressing addresses | |
US9489763B2 (en) | Techniques for setting up and executing draw calls | |
US11222240B2 (en) | Data processing method and apparatus for convolutional neural network | |
US20140292771A1 (en) | Techniques for locally modifying draw calls | |
TWI335512B (en) | Technique for using memory attributes | |
KR101552079B1 (en) | Execution of graphics and non-graphics applications on a graphics processing unit | |
TWI524176B (en) | Method and apparatus for display power management | |
US9881592B2 (en) | Hardware overlay assignment | |
CN110888521B (en) | Mobile terminal and application program running method thereof | |
US7948498B1 (en) | Efficient texture state cache | |
US20170091127A1 (en) | Techniques to Couple with a Storage Device via Multiple Communication Ports | |
US9830731B2 (en) | Methods of a graphics-processing unit for tile-based rendering of a display area and graphics-processing apparatus | |
CN111080761B (en) | Scheduling method and device for rendering tasks and computer storage medium | |
JP2008047124A (en) | Method and unit for processing computer graphics data | |
US20150189012A1 (en) | Wireless display synchronization for mobile devices using buffer locking | |
JP2011154681A (en) | Signal processing system, and game machine | |
CN108024116B (en) | Data caching method and device | |
JP2017174278A (en) | Image processing device | |
JP2004234280A (en) | Memory device | |
JP2019204485A (en) | Machine learning device, and machine learning system using the same | |
WO2017011021A1 (en) | Systems and methods facilitating reduced latency via stashing in systems on chips | |
US20190108814A1 (en) | Method for improving system performance, device for improving system performance, and display apparatus | |
CN110347463B (en) | Image processing method, related device and computer storage medium | |
US20170039676A1 (en) | Graphics system and associated method for generating dirtiness information in image having multiple frames | |
JP2005190487A (en) | Graphics processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190124 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190710 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190820 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191018 |
|
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: 20200317 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200330 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6693215 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |