JP2006072658A - Image processing device - Google Patents

Image processing device Download PDF

Info

Publication number
JP2006072658A
JP2006072658A JP2004254781A JP2004254781A JP2006072658A JP 2006072658 A JP2006072658 A JP 2006072658A JP 2004254781 A JP2004254781 A JP 2004254781A JP 2004254781 A JP2004254781 A JP 2004254781A JP 2006072658 A JP2006072658 A JP 2006072658A
Authority
JP
Japan
Prior art keywords
image processing
processing apparatus
clock
clock frequency
thinning
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
JP2004254781A
Other languages
Japanese (ja)
Other versions
JP4569227B2 (en
Inventor
Katsuji Shimura
勝治 志村
Katsuhiko Yamanaka
克彦 山中
Yoshihiro Suzuki
義弘 鈴木
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2004254781A priority Critical patent/JP4569227B2/en
Publication of JP2006072658A publication Critical patent/JP2006072658A/en
Application granted granted Critical
Publication of JP4569227B2 publication Critical patent/JP4569227B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To issue access requests at a frequency depending on a throughput requested by a client without complicating hardware (client) that issues access requests. <P>SOLUTION: An image processing device has a clock thinning control block 10 for optimizing a bandwidth request for access requests to a memory by distributing the frequency of access requests within a specified period according to the size of image data to be processed by the access requests and processing time allowable to complete the processing. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、画像データを記憶したメモリに対してアクセス要求処理を行なう画像プロセッサなどの画像処理装置に関する。   The present invention relates to an image processing apparatus such as an image processor that performs access request processing for a memory that stores image data.

従来においては、メモリに対してアクセス要求処理を行なう場合には、メモリコントローラ側で各アクセス要求に対してプライオリティ付けして、そのアクセス要求を待たせるようにして、各アクセス要求間でアービトレーションを行い、アクセス要求を発行している個々のクライアントの処理が破綻をきたす前にアクセス要求を受け付けるようにして、タイミングと容量を制御するようにしていた。   Conventionally, when processing an access request to a memory, the memory controller prioritizes each access request and waits for the access request, and arbitrates between the access requests. The access request is accepted before the processing of the individual client issuing the access request fails, and the timing and capacity are controlled.

また、特許文献1に示されるように、並列に存在するメモリアクセスを要求するクライアントから不定期に発生するリクエストに対しデータ供給を行なう場合、メモリコントローラ側の処理の問題であった。   Further, as disclosed in Patent Document 1, when data is supplied in response to a request that occurs irregularly from a client requesting memory access that exists in parallel, there is a problem in processing on the memory controller side.

例えば特許文献2では、一時的なアクセスの集中を避ける解決手段としては、「メモリに対する複数のアクセスを、該各アクセスの優先順位をその時の状態に応じて変更し、該変更された優先順位に応じてメモリアクセスの調停およびスケジューリングを行って、特定のメモリアクセスへの集中や無効期間の発生等を防止するように構成する。」と提示している。   For example, in Patent Document 2, as a solution for avoiding temporary concentration of access, “a plurality of accesses to a memory are changed according to the status of each access, and the changed priority is changed. Accordingly, arbitration and scheduling of memory access is performed to prevent concentration on a specific memory access, occurrence of an invalid period, and the like. "

つまり上記特許文献2では、メモリコントローラ側で持っているアクセス調停(アービトレーション)側の機能によってバンド幅の増加を抑制しようとしたもので、「クライアント側の方にも、特定のメモリアクセスへの集中を避けるような工夫を施す。」というようなことはしていなかった。   That is, in the above-mentioned Patent Document 2, an attempt is made to suppress the increase in bandwidth by the function of the arbitration side possessed on the memory controller side, and “concentration on a specific memory access is also made on the client side. I was n’t doing something like that. ”

また、特許文献3においては、処理に応じて画像プロセッサに入力されるクロック周波数を制御するものであるが、その生成方法は、複数種類供給されるクロックの元の周波数と、それら複数のクロック入力を選択する回路を制御することにより、画像プロセッサに供給するクロック周波数を制御できるようにするものであった。
特開平8-50651号公報 特開平8-314793号公報 特開平7-5864号公報
Further, in Patent Document 3, the clock frequency input to the image processor is controlled according to processing, but the generation method is based on the original frequency of a plurality of types of clocks supplied and the plurality of clock inputs. The clock frequency supplied to the image processor can be controlled by controlling a circuit that selects the image processor.
JP-A-8-50651 JP-A-8-314793 Japanese Patent Laid-Open No. 7-5864

上述したように従来の技術では、一時的なアクセスの集中を避けるように、平均的な時間間隔でリクエストが発生するような機能をクライアント側に持たせるような構成にはなっていなかった。   As described above, in the conventional technique, the client side is not configured to have a function for generating requests at an average time interval so as to avoid temporary concentration of access.

さらに、クロックの供給元、つまり発振子やPLL(Phase Locked Loop)でクロック周波数を変更した場合、変更後のクロック出力が安定するまでの過渡期間を要するのが一般的で、これが経過するまでは所望のクロック周波数が得られない可能性がある。   Furthermore, when the clock frequency is changed by the clock supply source, that is, the oscillator or PLL (Phase Locked Loop), it is generally necessary to have a transition period until the clock output after the change becomes stable. There is a possibility that a desired clock frequency cannot be obtained.

そこで、本発明では、元となるクロックは常に最高処理能力を発揮できる設定としておき、その後段部分のクロックイネーブラーに間引きの制御を与えることで、結果的に最適な周波数が画像プロセッサに供給されるようにする。このメリットとしては、まず供給元のクロックを変更することは無いので、発振子やPLLのクロック周波数を変更する際に発生する、周波数変更後のクロック出力が安定するまでの過渡期間というものを考慮する必要がなくなる。つまり、処理しようとする画像1枚ごとに、連続的に画像プロセッサへ供給するクロックの周波数(元クロックに対する間引き率)が変更されたとしても何等問題なく処理することができる。   Therefore, in the present invention, the original clock is always set so that the maximum processing capability can be exhibited, and thinning control is given to the clock enabler in the subsequent stage, so that the optimum frequency is supplied to the image processor as a result. Like that. As an advantage of this, there is no need to change the source clock first, so consider the transient period that occurs when changing the clock frequency of the oscillator or PLL until the clock output after the frequency change is stabilized. No need to do. That is, even if the frequency of the clock supplied continuously to the image processor (decimation rate with respect to the original clock) is changed for each image to be processed, the image can be processed without any problem.

本発明は、メモリインターフェースを経由したメモリバスに複数のブロックが接続され、それぞれが個別のメモリアクセス要求を持つようなシステムにおいて、動作状態に応じたバンド幅の最適化を実現するための施策として、アクセス要求を発行する側のハードウェア(クライアント)を複雑にすることなく、クライアントに要求される処理能力に応じた頻度でアクセス要求を発行することが可能な、画像処理装置としてのハードウェア構成を提供するものである。
以降、メモリコントローラに対してアクセス要求を発行する個々のハードウェアモジュールを「クライアント」と定義する。
The present invention is a measure for realizing the optimization of the bandwidth according to the operation state in a system in which a plurality of blocks are connected to a memory bus via a memory interface and each has an individual memory access request. Hardware configuration as an image processing apparatus capable of issuing an access request at a frequency according to the processing capability required of the client without complicating the hardware (client) on the side of issuing the access request Is to provide.
Hereinafter, each hardware module that issues an access request to the memory controller is defined as a “client”.

上記課題を解決し、本発明の目的を達成するため、本発明の画像処理装置は、アクセス要求処理を行なう画像データのサイズ及びその処理の完了に許容される処理時間により、アクセス要求の頻度を規定の期間内に分散させることにより、メモリへのアクセス要求におけるバンド幅要求を最適化する最適化手段を設けたものである。   In order to solve the above problems and achieve the object of the present invention, the image processing apparatus of the present invention determines the frequency of access requests according to the size of image data to be subjected to access request processing and the processing time allowed for completion of the processing. By distributing within a specified period, an optimization means for optimizing the bandwidth request in the access request to the memory is provided.

アクセス要求の頻度を分散させることにより、例えば、「30msというような時間間隔で見た場合のアクセスレートは低いものの、ある時間、例えば1msで見た場合にはそこにアクセス要求が集中してしまい、システムとして確保する必要のあるバンド幅が高まる。」というような自体を回避することが可能となる。   By distributing the frequency of access requests, for example, although the access rate when viewed at a time interval of 30 ms is low, access requests are concentrated there when viewed at a certain time, for example, 1 ms. The bandwidth that needs to be secured as a system is increased. ”Itself can be avoided.

上記機能の実現にあたっては、画像プロセッサである画像処理装置自身の構成は、最高処理能力を発揮できる状態(処理データ量が最も多い、すなわち、最もバンド幅要求が高い状態)を満たすように設計されており、大元から供給されるクロック周波数も、この要求に対応できる周波数となっている。   In realizing the above functions, the configuration of the image processing apparatus itself, which is an image processor, is designed to satisfy a state where the maximum processing capability can be exhibited (the amount of processing data is the largest, that is, the state where the bandwidth requirement is the highest). The clock frequency supplied from the source is also a frequency that can meet this requirement.

上述のように、画像プロセッサ自身および供給されるクロック周波数は、ピーク時に合わせて設計されている。ピークを下回る状態でのバンド幅要求の最適化、即ち、アクセス要求の平均化は、「画像のサイズ」「許容される処理時間」に応じて、画像プロセッサへ供給するクロック周波数の制御を行なうことで実現する。   As described above, the image processor itself and the supplied clock frequency are designed for peak times. The optimization of the bandwidth requirement under the peak state, that is, the averaging of the access request is to control the clock frequency supplied to the image processor in accordance with “image size” and “allowable processing time”. Realize with.

クロック周波数の制御は、クロックを供給する原発振、たとえば、外部からの入力クロック、発振子、PLLの出力クロック、を変動させるのではなく、これらからの原発振周波数は、最高処理能力を満足できる周波数が供給されている。   Control of the clock frequency does not fluctuate the source oscillation that supplies the clock, for example, the input clock from the outside, the oscillator, and the output clock of the PLL, but the source oscillation frequency from these can satisfy the maximum processing capacity The frequency is supplied.

クロック周波数の制御は、例えば、供給されるクロックに対し、クロックイネーブラー(ゲーテッドクロック)を挟むことにより行なう。すなわち供給されるクロックからクロックを間引くような構成としている。クロックの間引き制御は、ソフトウェアにより制御可能なレジスタに設定値を書き込むことで行なう。ハードウェアは設定された値(間引き率)に応じ、クロック間引きを行なう制御パルスを生成する。   The clock frequency is controlled, for example, by inserting a clock enabler (gated clock) between the supplied clocks. That is, the clock is thinned out from the supplied clock. The clock thinning control is performed by writing a set value in a register that can be controlled by software. The hardware generates a control pulse for performing clock thinning according to a set value (thinning rate).

クロック周波数を落とす制御によりメモリへのアクセス頻度を低減することで、メモリコントローラ側のアービトレーション(メモリへのアクセス振り分けと、アクセス要求を出してきているソースモジュール(クライアント)同士の調停)を簡素化できる。   By reducing the access frequency to the memory by controlling the clock frequency to be reduced, the arbitration on the memory controller side (allocation of access to the memory and arbitration between the source modules (clients) that have issued access requests) can be simplified. .

ここで、クロック間引き率の設定は、ある決まった単位時間(例えば、1/60秒)あたりのアクセスデータ量、間引き前のクロック周波数による計算式で決定される。   Here, the setting of the clock decimation rate is determined by a calculation formula based on the access data amount per predetermined unit time (for example, 1/60 seconds) and the clock frequency before decimation.

本発明によれば、クロック周波数を落とす制御によりメモリへのアクセス頻度を平均化することで、メモリコントローラ側のアービトレーション(メモリへのアクセス振り分けと、アクセス要求を出してきているソースモジュール(クライアント]同士の調停)を簡素化することができる。   According to the present invention, by averaging the frequency of access to the memory by controlling to reduce the clock frequency, the arbitration on the memory controller side (allocation of access to the memory and source modules (clients) that have issued access requests) Mediation) can be simplified.

また、メモリコントローラは、1回のリクエストに対し、データのアンダーフロー または オーバーフローが起こらないようなバッファを備えておくことで、アンダーフロー や オーバーフローが発生した際に必要となるクライアントとのハンドシェイクを排除できる。これにより、メモリコントローラとクライアント間のI/F仕様を簡略化できるが、その容量は、各クライアントが要求するデータI/Fに耐えられるだけの大きさを持つ必要がある。   In addition, the memory controller provides a buffer that prevents data underflow or overflow for a single request, so that a handshake with the client that is required when underflow or overflow occurs is possible. Can be eliminated. This simplifies the I / F specification between the memory controller and the client, but the capacity must be large enough to withstand the data I / F required by each client.

また、各画像プロセッサである画像処理装置からメモリコントローラに対して発行されるアクセス要求は、その画像プロセッサに許容される処理時間内に分散・平均化されることによって、システム上に複数個存在する他のクライアントに対し、アクセス要求が発生した際にウエイトさせる期間を低減させることが可能なため、ウエイト期間中のデータI/Fを保証するためのバッファメモリを削減することができる。   In addition, a plurality of access requests issued from the image processing apparatus which is each image processor to the memory controller exist in the system by being distributed and averaged within the processing time allowed for the image processor. Since it is possible to reduce the waiting period when an access request is issued to another client, the buffer memory for guaranteeing the data I / F during the waiting period can be reduced.

さらに、アクセス頻度の平均化はクロックの間引き制御で行なっているが、この制御のための複雑な設定は不要で、間引き率を決めるパラメータ“N”を設定するだけで良い。“N”は、供給されるクロック(CLKIN)の周波数、単位時間(例えば1/60秒)で処理しなければいけないデータ数、から算出できる値であり、制御側はこの算出式を実装するだけでよい。   Further, the access frequency is averaged by clock thinning control, but complicated setting for this control is not required, and it is only necessary to set the parameter “N” that determines the thinning rate. “N” is a value that can be calculated from the frequency of the supplied clock (CLKIN) and the number of data that must be processed in unit time (for example, 1/60 seconds). The control side only implements this calculation formula. It's okay.

以下に、本発明の実施の形態について、適宜、図面を参照しながら説明する。
図2は、システム構成図である。具体的な構成図として、まず図2は、本実施の形態のクロック間引き制御ブロック10の盛り込まれた画像プロセッサ13を含む、全体システムの例である。システム内には、画像プロセッサ3の他にも、機能ブロック14〜18が含まれており、これらはいずれも大容量メモリ11とのデータI/Fのためのアクセス要求を出す可能性を持っている。
Embodiments of the present invention will be described below with reference to the drawings as appropriate.
FIG. 2 is a system configuration diagram. As a specific configuration diagram, FIG. 2 is an example of the entire system including the image processor 13 in which the clock thinning control block 10 according to the present embodiment is incorporated. In addition to the image processor 3, the system includes functional blocks 14 to 18, all of which have a possibility of issuing an access request for data I / F with the large capacity memory 11. Yes.

13〜18の各機能ブロック(クライアント)は、いずれも不定期にリード又はライトのアクセス要求を発行する。12のメモリコントローラは、これらの不定期に発生するアクセス要求を受け、各クライアントへのデータ送出(メモリ11からのリード要求だった場合)及びデータ受領(メモリへのライト要求だった場合)を行なうためのバッファメモリを持っており、それぞれのアクセス要求に答えるのと並行して、入ってきたアクセス要求に応じた、メモリ11へのアクセス(リード/ライト)を順次行なってゆく。   Each of the functional blocks 13 to 18 (client) issues a read or write access request irregularly. The memory controller 12 receives these irregular access requests and sends data to each client (when the read request is from the memory 11) and receives data (when it is a write request to the memory). In parallel with answering each access request, access (read / write) to the memory 11 is sequentially performed in response to the incoming access request.

ここで、本実施の形態の対象である3の画像プロセッサの詳細を説明すると、このブロックは、様々なサイズの画像を扱うことが要求されている。たとえばそれは、MPEG2 MP@HLに含まれる画像サイズである。またこれらは1/60秒単位または1/30単位で決まったデータ量の処理を完了するのが必須となっている。本件の画像プロセッサで1/60秒以内に処理しなければならない画像サイズとしては、1280×720、1920×540、720×480、720×240などが、代表的なものとして挙げられる。(これらは例であり、上記以外にもある。)   Here, the details of the three image processors that are objects of the present embodiment will be described. This block is required to handle images of various sizes. For example, it is the image size included in MPEG2 MP @ HL. In addition, it is indispensable to complete the processing of the data amount determined in units of 1/60 second or 1/30. Typical image sizes that must be processed within 1/60 second by the image processor in this case are 1280 × 720, 1920 × 540, 720 × 480, 720 × 240, and the like. (These are examples and other than the above.)

この例に則って説明を続けると、本件の画像プロセッサでは、上記サイズの画像データを、Y/C それぞれ8bitずつのデータとして取り扱うので、1/60あたりのデータアクセス量としては、
・1280×720×16=14745600[bit]
・1920×540×16=16588800[bit]
・720×480×16=5529600[bit]
・720×240×16=2764800[bit]
となる。
Continuing the explanation based on this example, the image processor in this case handles the image data of the above size as data of 8 bits each for Y / C, so the data access amount per 1/60 is as follows:
・ 1280 x 720 x 16 = 14745600 [bit]
・ 1920 x 540 x 16 = 16588800 [bit]
・ 720 x 480 x 16 = 5529600 [bit]
・ 720 x 240 x 16 = 2764800 [bit]
It becomes.

上記の例では、画像プロセッサ自体としては、最高処理能力としては1/60秒で16588800[bit]のデータを扱えるようになっており、必然的に、メモリコントローラへのアクセス要求も、上記データ量のリード/ライト要求を発行することになる。
また、画像プロセッサへは、この最高処理能力&アクセスを満足できるような周波数のクロックが供給されていなければならない。
In the above example, the image processor itself can handle 16588800 [bit] data in 1/60 second as the maximum processing capacity. The read / write request is issued.
The image processor must be supplied with a clock having a frequency that can satisfy the highest processing capability and access.

図1は、本発明のクロック間引き制御ブロックを示す図である。
図1において、クロック間引き制御ブロック10は、端子7に供給されるクロック周波数をカウントするカウンター1と、端子6に予め設定された間引き率に応じてカウンター1からのカウント出力を組み合わせることによりクロックイネーブル信号を生成する組み合わせ回路2と、組み合わせ回路2からのクロックイネーブル信号により供給されるクロック周波数を有効にして端子8にクロックを出力するクロックイネーブラー3とを備えて構成される。ここで、クロックイネーブラー3は、ラッチ4とアンド回路5とを備えている。
FIG. 1 is a diagram showing a clock thinning control block according to the present invention.
In FIG. 1, the clock decimation control block 10 combines a counter 1 that counts the clock frequency supplied to the terminal 7 and a count output from the counter 1 in accordance with a decimation rate preset in the terminal 6. A combinational circuit 2 that generates a signal and a clock enabler 3 that enables a clock frequency supplied by a clock enable signal from the combinational circuit 2 and outputs a clock to the terminal 8 are configured. Here, the clock enabler 3 includes a latch 4 and an AND circuit 5.

以下に、本発明のクロック間引き制御ブロックの動作を説明する。
図3は、アクセス要求頻度を示す図であり、図3Aは1920×540処理時のアクセス要求イメージ、図3Bは720×240処理時のアクセス要求イメージである。
メモリコントローラ12へのライト要求の発行頻度を図示したものが図3であるが、上記の、最高処理能力を発揮しているとき(以降、「ピーク時」と表現する)のイメージが、図中のAとなる。ここでは、1920×540のサイズを扱う場合、T0時点で処理を開始して、T1~処理を終了するT36まで、1/60秒間で36回のアクセス要求を示している。
The operation of the clock thinning control block according to the present invention will be described below.
3A and 3B are diagrams showing the access request frequency. FIG. 3A is an access request image at the time of 1920 × 540 processing, and FIG. 3B is an access request image at the time of 720 × 240 processing.
FIG. 3 shows the issuance frequency of write requests to the memory controller 12, but the image when the maximum processing capacity is exhibited (hereinafter referred to as “peak time”) is shown in the figure. A. Here, when a size of 1920 × 540 is handled, 36 access requests are shown in 1/60 second from T1 to T36 when the process is started and T1 is terminated.

次に、720×240のサイズを扱う場合、単純に画像プロセッサ13に与える画像サイズの条件のみ変更、つまり、供給するクロック周波数はピーク時のスペックのまま処理を行なった場合のイメージが図中のBとなる。ここでは、T0時点で処理を開始して、T1~処理を終了するT6まで、1/360秒間で6回のアクセス要求を示している。図3Bでわかるように、画像プロセッサ13としては処理すべきデータ量が1/6となっているので、図3Aに比べて1/6の時間で処理を終える。   Next, when handling a size of 720 × 240, only the image size condition given to the image processor 13 is simply changed, that is, an image when processing is performed with the supplied clock frequency at the peak specification is shown in the figure. B. Here, six access requests are shown in 1/360 seconds from T1 to T6 when processing is started and T1 is terminated. As can be seen from FIG. 3B, the amount of data to be processed by the image processor 13 is 1/6, so that the processing is completed in 1/6 as compared with FIG. 3A.

しかしながら、この図3Bの処理の場合、まさに処理を行なっている最中(図中の1/360秒の期間内)のデータ転送レートは図3Aと変わりなく、つまりこれは、その先のアクセス制御を行なっているメモリコントローラから見れば、この1/360秒間のバンド幅は、ピーク時の状態と全く変わっていない。   However, in the case of the process of FIG. 3B, the data transfer rate during the process (within a period of 1/360 seconds in the figure) is the same as that of FIG. 3A. From the perspective of the memory controller that is doing this, the bandwidth for 1/360 seconds has not changed at all from the peak state.

一方で、他の機能ブロック14〜18も、画像プロセッサ13と同様に、メモリ11へのアクセス要求を有している。ここで、他の機能ブロック14〜18の要求がリアルタイム性を持たないものであれば、画像プロセッサ13の処理が終わるまでデータI/Fを待たせておくことができるが、リアルタイム性を保証しなければいけない機能ブロックである場合、画像プロセッサ13と並列して、データI/Fを行なう必要がある。ここで例えば、システム的にメモリコントローラ12が処理できるデータレートが画像プロセッサ13のピーク時と同等だったとするならば、他の機能ブロック14〜18からのアクセスリクエストを待たせている間、その機能ブロックとのデータI/Fを吸収するようなバッファメモリが必要となる。   On the other hand, the other functional blocks 14 to 18 also have access requests to the memory 11 in the same manner as the image processor 13. Here, if the requests of the other functional blocks 14 to 18 do not have real time property, the data I / F can be kept waiting until the processing of the image processor 13 is finished, but the real time property is guaranteed. If it is a functional block that must be present, it is necessary to perform data I / F in parallel with the image processor 13. Here, for example, if the data rate that can be processed systematically by the memory controller 12 is equivalent to the peak time of the image processor 13, the function can be performed while waiting for access requests from the other functional blocks 14 to 18. A buffer memory that absorbs the data I / F with the block is required.

図4は、アクセス要求平均化を示す図であり、図4Aは1920×540処理時のアクセス要求イメージ、図4Bは720×240処理時のアクセス要求イメージである。
そこで、図3BのT1~T6までのアクセス要求を、図4BのようにT1、T8、T15、T22、T29、T36に分散化させた場合、ピーク時の処理能力を発揮している時に比べアクセス要求の間隔(実線矢印)が広がることによって、画像プロセッサ13の処理のために確保しておかなければいけないバンド幅が、平均的に1/6となっている。この結果、余裕の出たアクセス要求を受け入れられる分を、他の機能ブロック14〜18からのリクエストに割り当てることができる。(点線の矢印)
4A and 4B are diagrams illustrating access request averaging. FIG. 4A is an access request image at the time of 1920 × 540 processing, and FIG. 4B is an access request image at the time of 720 × 240 processing.
Therefore, when the access requests from T1 to T6 in FIG. 3B are distributed to T1, T8, T15, T22, T29, and T36 as shown in FIG. 4B, the access is more effective than when the peak processing capacity is exhibited. As the request interval (solid arrow) increases, the bandwidth that must be reserved for processing by the image processor 13 is 1/6 on average. As a result, it is possible to allocate a portion that can accept an access request with a margin to requests from other functional blocks 14 to 18. (Dotted arrow)

他の機能ブロック14〜18としては、図3Bの場合に比べ、リクエストが待機させられる時間が減っているため、データI/Fを保証するためのバッファメモリを少なくすることができる。   As the other functional blocks 14 to 18, compared with the case of FIG. 3B, since the time for which the request is kept waiting is reduced, the buffer memory for guaranteeing the data I / F can be reduced.

つまり、画像プロセッサ13のアクセス要求の発生頻度を、画像プロセッサ13が処理するデータ量に応じて平均化して出すようにすることで、他の機能ブロック14〜18のリクエストに割り振ることができ、その結果として、バッファメモリの低減を図ることができる。   That is, by generating the access request occurrence frequency of the image processor 13 in accordance with the amount of data processed by the image processor 13, it can be allocated to requests of other functional blocks 14 to 18. As a result, the buffer memory can be reduced.

画像プロセッサ13のアクセス要求の発生頻度を平均化する手段には様々な手法が考えられるが、本発明では、画像プロセッサ13に供給するクロックを制御することで、アクセス要求の発生頻度を制御できるようにしている。   Various means can be considered as means for averaging the frequency of occurrence of access requests of the image processor 13, but in the present invention, the frequency of access requests can be controlled by controlling the clock supplied to the image processor 13. I have to.

図5は、アクセス要求発生タイミング及びクロック数を示す図であり、図5Aはアクセス要求、図5Bは供給クロックである。
画像プロセッサ13は、図5Aに示されるように、処理中にアクセス要求が発生する際の間隔は、図5Bに示す画像プロセッサ13に供給されているクロック数で何クロックなのかが概ね決まっている。図5の例では、ピーク時の例であり、クロックは間引かれていない状態で供給されており、この例では、6クロック毎に、T1、T7、T13、T19時点でアクセス要求が発生している。
FIG. 5 is a diagram showing access request generation timing and the number of clocks, FIG. 5A is an access request, and FIG. 5B is a supply clock.
As shown in FIG. 5A, the image processor 13 generally determines how many clocks are supplied by the number of clocks supplied to the image processor 13 shown in FIG. 5B when an access request is generated during processing. . The example of FIG. 5 is an example at the peak time, and the clock is supplied in a state where it is not thinned out. In this example, an access request is generated at the time of T1, T7, T13, and T19 every 6 clocks. ing.

図6は、アクセス要求発生タイミング及びクロック制御を示す図であり、図6Aはアクセス要求、図6Bは供給クロックである。
これに対し図6Bでは、T2~T4、T4~T6、T9~T11、T11~T13、T13~T15、T16~T18、T18~T19時点で供給されているクロックに間引き制御を加えて、画像プロセッサ13の処理能力を落とした状態である。T1、T11時点でアクセス要求が発生しているのは6クロック毎、というのは、図5のピーク時と変わらないが、クロックが間引かれていることにより、アクセス要求の発生頻度が下がっていることがわかる。
FIG. 6 is a diagram showing access request generation timing and clock control. FIG. 6A shows an access request, and FIG. 6B shows a supply clock.
On the other hand, in FIG. 6B, image processing is performed by adding thinning-out control to the clocks supplied at times T2 to T4, T4 to T6, T9 to T11, T11 to T13, T13 to T15, T16 to T18, and T18 to T19. 13 is a state in which the processing capacity is reduced. The access request is generated every 6 clocks at the time of T1 and T11, which is the same as the peak time in FIG. 5, but the frequency of access requests is reduced because the clock is thinned out. I understand that.

最高処理能力を発揮できるスペックのクロック供給に対し、クロックイネーブラーによるクロックの間引き、間引き率の設定、間引き率の制御、を行なっている具体例を示したものが、上述した図1の構成である。   The above-described configuration of FIG. 1 shows a specific example in which clock thinning, setting of a thinning rate, and control of a thinning rate are performed with respect to a clock supply having a specification capable of exhibiting the maximum processing capability. .

また、このクロック間引き制御ブロック10でのクロックの間引き制御のタイミングチャートの例を、図7に示す。図7Aは入力クロック、図7Bはクロック間引きカウンター、図7Cはクロック間引き率設定値、図7Dは組み合わせ回路出力、図7Eは出力クロックである。   FIG. 7 shows an example of a timing chart of clock thinning control in the clock thinning control block 10. 7A is an input clock, FIG. 7B is a clock decimation counter, FIG. 7C is a clock decimation rate setting value, FIG. 7D is a combinational circuit output, and FIG. 7E is an output clock.

図1に示したクロック間引き制御ブロック10の端子7に入力された図7Aに示すクロックCLKINは、本実施の形態の例であれば、画像プロセッサ13に要求されている最高処理能力を満たす周波数で供給されている。   The clock CLKIN shown in FIG. 7A input to the terminal 7 of the clock thinning control block 10 shown in FIG. 1 is a frequency satisfying the maximum processing capability required for the image processor 13 in the example of the present embodiment. Have been supplied.

図7Aに示すクロック・CLKINは、図1のクロックイネーブラー3により、クロックの間引き制御が行なわれ、図7Eに示す出力クロックCLKOUT として後段に出力されている。本実施の形態の例では、この先に画像プロセッサ13の本体となる回路が構成されている。   The clock CLKIN shown in FIG. 7A is controlled to be thinned out by the clock enabler 3 shown in FIG. 1, and output to the subsequent stage as the output clock CLKOUT shown in FIG. 7E. In the example of the present embodiment, a circuit that is the main body of the image processor 13 is configured earlier.

クロックイネーブラー3でのクロック間引きは、図7Dに示す組み合わせ回路出力であるクロックイネーブル制御信号DDA_CKENによって制御される。この信号は、図1の組み合わせ回路2というブロックで生成されている。組み合わせ回路2は、図7Cに示すクロック間引き率設定値M,N および この2つの数値に対し比較を行なうカウンター値を入力することで、平均的にN/M の割合となるパルスを発生するモジュールである。本実施の形態の例では、M,N の上限を255(8bit幅)とし、M は255固定、N をレジスタ設定として外部から設定可能な値としている。   Clock decimation by the clock enabler 3 is controlled by a clock enable control signal DDA_CKEN which is an output of the combinational circuit shown in FIG. 7D. This signal is generated by a block called combinational circuit 2 in FIG. The combinational circuit 2 is a module that generates a pulse having an average N / M ratio by inputting a clock decimation rate setting value M, N shown in FIG. 7C and a counter value for comparing these two numerical values. It is. In the example of the present embodiment, the upper limit of M and N is 255 (8-bit width), M is fixed at 255, and N is a value that can be set from the outside as a register setting.

そして、図1のカウンター1は、比較に用いるカウンター値を生成するカウンターで、図7Bに示すクロック間引きカウンターから出力されたカウンター値が組み合わせ回路2に入力されている。図7Dに示す組み合わせ回路2から出力されるパルスは、図7Aに示すクロックCLKINクロックに対する間引き制御のパルスであるので、図1のカウンター1は、図7Aに示すクロックCLKINで駆動されている。   1 is a counter that generates a counter value used for comparison, and the counter value output from the clock thinning counter shown in FIG. 7B is input to the combinational circuit 2. Since the pulse output from the combinational circuit 2 shown in FIG. 7D is a thinning control pulse for the clock CLKIN clock shown in FIG. 7A, the counter 1 in FIG. 1 is driven by the clock CLKIN shown in FIG. 7A.

上記のクロック間引き制御ブロック10の回路構成により画像プロセッサ13は、処理すべきデータ量に応じた、「間引かれたクロック」が供給されることになり、結果的に、メモリコントローラ12に発行されるアクセス要求が、処理状態に応じて等間隔に発行することが可能となる。   With the circuit configuration of the clock thinning control block 10 described above, the image processor 13 is supplied with a “thinned clock” corresponding to the amount of data to be processed. As a result, it is issued to the memory controller 12. Can be issued at regular intervals according to the processing state.

また、間引き制御は、レジスタからの設定値“N”を設定するだけで可能となっている。
例えば、N/256 の N を設定した時、N の値に応じて平均的にクロックを発生できる
ようにイネーブルパルスを生成するための例として、図8のような「“設定値”81対“イネーブルパルスを発生するカウンター値”82」のイネーブル信号生成用テーブルを作成し、これを、組み合わせ回路2が、図7Aに示すクロックCLKINの0〜255中にN個クロックを均等に出力させるための図7Dに示すイネーブル信号を作るために用いるようにすれば良い。
Further, the thinning-out control is possible only by setting the set value “N” from the register.
For example, when N of N / 256 is set, as an example for generating an enable pulse so that a clock can be generated on the average according to the value of N, as shown in FIG. An enable signal generation table of the counter value “82” for generating the enable pulse is created, and this is used for the combinational circuit 2 to output N clocks equally among 0 to 255 of the clock CLKIN shown in FIG. 7A. What is necessary is just to use it in order to make the enable signal shown to FIG. 7D.

なお、N が129〜255 の値の際には、上記のN が0~128のテーブルを利用し、例えば、N=2 の時は、カウンター値が 0、128の場合に、イネーブルパルスを“H”とするが、N=254 の時は、カウンター値が 0、128の場合に、イネーブルパルスを“L”とするように、生成したイネーブル信号を反転すればよい。   When N is a value between 129 and 255, the above table with N between 0 and 128 is used. For example, when N = 2, when the counter value is 0 and 128, the enable pulse is “ However, when N = 254, the generated enable signal may be inverted so that the enable pulse is set to “L” when the counter value is 0 or 128.

これは、単純にこの例のような「テーブルに従って“H”を出すような回路」は、ゲート規模が著しく増大してしまうためである。   This is simply because the “circuit that outputs“ H ”according to the table” as in this example significantly increases the gate scale.

なお、上述した本発明の実施の形態に限らず、本発明の特許請求の範囲内であれば、適宜、その構成を変更してよいことは言うまでもない。   Needless to say, the configuration is not limited to the above-described embodiment of the present invention, and the configuration may be appropriately changed within the scope of the claims of the present invention.

本発明のクロック間引き制御ブロックを示す図である。It is a figure which shows the clock thinning-out control block of this invention. システム構成図である。It is a system configuration diagram. アクセス要求頻度を示す図であり、図3Aは1920×540処理時のアクセス要求イメージ、図3Bは720×240処理時のアクセス要求イメージである。FIGS. 3A and 3B show access request frequencies. FIG. 3A shows an access request image during 1920 × 540 processing, and FIG. 3B shows an access request image during 720 × 240 processing. アクセス要求平均化を示す図であり、図4Aは1920×540処理時のアクセス要求イメージ、図4Bは720×240処理時のアクセス要求イメージである。FIG. 4A is a diagram showing access request averaging, FIG. 4A is an access request image at the time of 1920 × 540 processing, and FIG. 4B is an access request image at the time of 720 × 240 processing. アクセス要求発生タイミング及びクロック数を示す図であり、図5Aはアクセス要求、図5Bは供給クロックである。FIG. 5A is a diagram showing access request generation timing and the number of clocks, FIG. 5A is an access request, and FIG. 5B is a supply clock. アクセス要求発生タイミング及びクロック制御を示す図であり、図6Aはアクセス要求、図6Bは供給クロックである。FIG. 6A shows access request generation timing and clock control. FIG. 6A shows an access request, and FIG. 6B shows a supply clock. クロックの間引き制御のタイミングチャートであり、図7Aは入力クロック、図7Bはクロック間引きカウンター、図7Cはクロック間引き率設定値、図7Dは組み合わせ回路出力、図7Eは出力クロックである。FIG. 7A is an input clock, FIG. 7B is a clock decimation counter, FIG. 7C is a clock decimation rate setting value, FIG. 7D is a combinational circuit output, and FIG. 7E is an output clock. イネーブル信号生成用テーブルである。It is an enable signal generation table.

符号の説明Explanation of symbols

1…カウンター、2…組み合わせ回路、3…クロックイネーブラー、10…クロック間引き制御ブロック、11…メモリ、12…メモリコントローラ、13…画像プロセッサ、14〜18…他の機能ブロック
DESCRIPTION OF SYMBOLS 1 ... Counter, 2 ... Combination circuit, 3 ... Clock enabler, 10 ... Clock thinning control block, 11 ... Memory, 12 ... Memory controller, 13 ... Image processor, 14-18 ... Other functional blocks

Claims (8)

画像データを記憶したメモリに対してアクセス要求処理を行なう画像処理装置において、
上記アクセス要求処理を行なう画像データのサイズ及びその処理の完了に許容される処理時間により、上記アクセス要求の頻度を規定の期間内に分散させることにより、上記メモリへのアクセス要求におけるバンド幅要求を最適化する最適化手段を設けた
ことを特徴とする画像処理装置。
In an image processing apparatus that performs access request processing for a memory that stores image data,
By distributing the frequency of the access requests within a specified period according to the size of the image data to be processed for the access request and the processing time allowed for the completion of the processing, the bandwidth request in the access request to the memory can be reduced. An image processing apparatus comprising an optimization means for optimizing.
請求項1記載の画像処理装置において、
上記最適化手段は、処理データ量が最も多く最もバンド幅要求が高い最高処理能力を発揮できる状態を満たすクロック周波数が供給される
ことを特徴とする画像処理装置。
The image processing apparatus according to claim 1.
The image processing apparatus according to claim 1, wherein the optimization means is supplied with a clock frequency that satisfies a state in which the maximum processing capacity can be exhibited with the largest amount of processing data and the highest bandwidth requirement.
請求項2記載の画像処理装置において、
上記最適化手段は、上記最高処理能力を発揮できる状態を下回る状態でのバンド幅要求の最適化を行うものであって、供給されるクロック周波数の制御を行なう
ことを特徴とする画像処理装置。
The image processing apparatus according to claim 2.
The image processing apparatus according to claim 1, wherein the optimization means optimizes a bandwidth requirement in a state below a state where the maximum processing capability can be exhibited, and controls a supplied clock frequency.
請求項3記載の画像処理装置において、
上記最適化手段の上記クロック周波数の制御は、供給されるクロック周波数を変動させることなく間引き制御を行なう
ことを特徴とする画像処理装置。
The image processing apparatus according to claim 3.
An image processing apparatus characterized in that the control of the clock frequency of the optimization means performs thinning-out control without changing the supplied clock frequency.
請求項4記載の画像処理装置において、
上記最適化手段の上記クロック周波数の制御は、予め設定された間引き率に応じて上記クロック周波数の間引き制御を行なう
ことを特徴とする画像処理装置。
The image processing apparatus according to claim 4.
The image processing apparatus according to claim 1, wherein the clock frequency of the optimization unit is controlled according to a preset thinning rate.
請求項5記載の画像処理装置において、
上記最適化手段は、上記クロック周波数に対して予め設定された間引き率に応じた上記クロック周波数の間引きを行なう制御パルスを生成することにより上記間引き制御を行なう
ことを特徴とする画像処理装置。
The image processing apparatus according to claim 5.
The image processing apparatus according to claim 1, wherein the optimization unit performs the thinning control by generating a control pulse for thinning the clock frequency in accordance with a thinning rate set in advance with respect to the clock frequency.
請求項1記載の画像処理装置において、
上記最適化手段は、供給されるクロック周波数をカウントするカウンターと、予め設定された間引き率に応じて上記カウンターからのカウント出力を組み合わせることによりクロックイネーブル信号を生成する組み合わせ回路と、上記組み合わせ回路からのクロックイネーブル信号により上記供給されるクロック周波数を有効にするクロックイネーブラーとを備えた
ことを特徴とする画像処理装置。
The image processing apparatus according to claim 1.
The optimization means includes a counter that counts a supplied clock frequency, a combinational circuit that generates a clock enable signal by combining the count output from the counter according to a preset thinning rate, and the combinational circuit An image processing apparatus comprising: a clock enabler that enables the clock frequency supplied by the clock enable signal.
請求項7記載の画像処理装置において、
上記間引き率の設定は、ある決まった単位時間当たりのアクセスデータ量、間引き前のクロック周波数に基づいて決定される
ことを特徴とする画像処理装置。
The image processing apparatus according to claim 7.
The thinning rate is set based on a predetermined access data amount per unit time and a clock frequency before thinning.
JP2004254781A 2004-09-01 2004-09-01 Image processing device Expired - Fee Related JP4569227B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004254781A JP4569227B2 (en) 2004-09-01 2004-09-01 Image processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004254781A JP4569227B2 (en) 2004-09-01 2004-09-01 Image processing device

Publications (2)

Publication Number Publication Date
JP2006072658A true JP2006072658A (en) 2006-03-16
JP4569227B2 JP4569227B2 (en) 2010-10-27

Family

ID=36153228

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004254781A Expired - Fee Related JP4569227B2 (en) 2004-09-01 2004-09-01 Image processing device

Country Status (1)

Country Link
JP (1) JP4569227B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013156924A (en) * 2012-01-31 2013-08-15 Naltec Inc Display control unit

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11205747A (en) * 1998-01-20 1999-07-30 Victor Co Of Japan Ltd Shuffling circuit and deshuffling circuit
JP2000307534A (en) * 1999-04-16 2000-11-02 Sony Corp Data processing unit and data transmitter
JP2002077546A (en) * 2000-08-30 2002-03-15 Canon Inc Image reader and reading method and storage medium
JP2004193911A (en) * 2002-12-10 2004-07-08 Sharp Corp Image processing apparatus, its method and digital still camera

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11205747A (en) * 1998-01-20 1999-07-30 Victor Co Of Japan Ltd Shuffling circuit and deshuffling circuit
JP2000307534A (en) * 1999-04-16 2000-11-02 Sony Corp Data processing unit and data transmitter
JP2002077546A (en) * 2000-08-30 2002-03-15 Canon Inc Image reader and reading method and storage medium
JP2004193911A (en) * 2002-12-10 2004-07-08 Sharp Corp Image processing apparatus, its method and digital still camera

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013156924A (en) * 2012-01-31 2013-08-15 Naltec Inc Display control unit

Also Published As

Publication number Publication date
JP4569227B2 (en) 2010-10-27

Similar Documents

Publication Publication Date Title
US7093256B2 (en) Method and apparatus for scheduling real-time and non-real-time access to a shared resource
US7350004B2 (en) Resource management device
US7054968B2 (en) Method and apparatus for multi-port memory controller
US6460125B2 (en) Dynamic memory clock control system and method
KR20000053380A (en) A port manager controller for connecting various function modules
EP2423824A1 (en) Data transfer device, method of transferring data, and image forming apparatus
US6499072B1 (en) Data bus bandwidth allocation apparatus and method
JP4659008B2 (en) Peripheral circuit with host load adjustment function
US7380027B2 (en) DMA controller and DMA transfer method
JP4569227B2 (en) Image processing device
JP5718305B2 (en) Image forming apparatus
JP2005085079A (en) Data transfer controller
JP2006099569A (en) Memory interface circuit and clock control method
EP1513069B1 (en) Resource management apparatus
US20060047866A1 (en) Computer system having direct memory access controller
US20090129214A1 (en) Memory control device
JP2006072597A (en) Data processor and data processing method
JP2000276437A (en) Dma controller
JPH0215357A (en) Data processor
JP2005004563A (en) Dma transfer controller
JP2000132505A (en) Bus access method and device therefor, and device and system using the bus access method and device
EP0341670B1 (en) Processing time allocation system and method
JP2003345455A (en) Data processor
JP2007128196A (en) Information processing system and method for controlling information processing system
JP2003280932A (en) Functional system, functional system management method, data processing device and computer program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070425

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100324

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100406

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100524

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: 20100713

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Effective date: 20100726

Free format text: JAPANESE INTERMEDIATE CODE: A61

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130820

Year of fee payment: 3

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130820

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees