JP2022011993A - Circuit reconfiguration device, control method, and program - Google Patents

Circuit reconfiguration device, control method, and program Download PDF

Info

Publication number
JP2022011993A
JP2022011993A JP2020113461A JP2020113461A JP2022011993A JP 2022011993 A JP2022011993 A JP 2022011993A JP 2020113461 A JP2020113461 A JP 2020113461A JP 2020113461 A JP2020113461 A JP 2020113461A JP 2022011993 A JP2022011993 A JP 2022011993A
Authority
JP
Japan
Prior art keywords
image processing
circuit
buffer
buffers
pixels
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.)
Pending
Application number
JP2020113461A
Other languages
Japanese (ja)
Inventor
剛 早川
Takeshi Hayakawa
浩明 小川
Hiroaki Ogawa
浩祐 中村
Kosuke Nakamura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Solution Innovators Ltd
Original Assignee
NEC Solution Innovators Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Solution Innovators Ltd filed Critical NEC Solution Innovators Ltd
Priority to JP2020113461A priority Critical patent/JP2022011993A/en
Publication of JP2022011993A publication Critical patent/JP2022011993A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)
  • Memory System (AREA)

Abstract

To provide a circuit reconfiguration device, a control method, and a program capable of efficiently utilizing a memory.SOLUTION: A circuit reconfiguration device includes: a selection section that selects a plurality of target areas, which are set to a frame on the basis of the preset number of pixels in row and column directions, in a preset order; and a control section that performs control for writing image data included in the selected target area into a buffer that is not used in image processing among a plurality of buffers set in a memory provided in the circuit reconfiguration device.SELECTED DRAWING: Figure 1

Description

本発明は、メモリを有する回路再構成装置、制御方法、及びプログラムに関する。 The present invention relates to a circuit reconstructor having a memory, a control method, and a program.

画像処理において、フレームを高速で処理する場合、プログラマブルに回路を構成できるデバイス(回路再構成装置)を用いていることが知られている。プログラマブルなデバイスとしては、例えば、FPGA(Field Programmable Gate Array)などが知られている。ところが、そのようなデバイスは、フレームに対応する画像データをすべて記憶できるほど大きなメモリを有していない。 In image processing, it is known that a device (circuit reconstructing device) capable of programmablely configuring a circuit is used when processing a frame at high speed. As a programmable device, for example, FPGA (Field Programmable Gate Array) and the like are known. However, such devices do not have enough memory to store all the image data corresponding to the frame.

そこで、特許文献1、2などに開示されているような、ラインメモリを用いた技術が提案されている。ラインメモリを用いた技術では、従来のように、フレームに対応する画像データをすべてデバイスのメモリに記憶してから画像処理をするのではなく、画像処理に必要なライン分の画像データを順次デバイスのメモリに記憶しながら画像処理をする。そのため、デバイスのメモリが小さくても、画像処理を円滑に実行できる。 Therefore, a technique using a line memory as disclosed in Patent Documents 1 and 2 has been proposed. In the technology using the line memory, instead of storing all the image data corresponding to the frame in the memory of the device and then performing the image processing as in the conventional case, the image data for the lines required for the image processing is sequentially stored in the device. Image processing is performed while storing in the memory of. Therefore, even if the memory of the device is small, the image processing can be smoothly executed.

特開2008-113295号公報Japanese Unexamined Patent Publication No. 2008-11395 特開2007-140643号公報Japanese Unexamined Patent Publication No. 2007-140643

しかしながら、フレームの解像度が高い場合や、階層的に複数の画像データを処理する場合には、ラインの画素数が多くなるので、それにともないラインメモリの容量も大きくしなければならない。そうすると、デバイスの小さな容量のメモリに、ライン分の画像データを記憶することができない。 However, when the resolution of the frame is high or when a plurality of image data are processed hierarchically, the number of pixels of the line increases, so that the capacity of the line memory must be increased accordingly. Then, the image data for the line cannot be stored in the memory of the small capacity of the device.

一つの側面として、回路再構成装置に設けられたメモリを効率よく利用する回路再構成装置、制御方法、及びプログラムを提供することを目的とする。 As one aspect, it is an object of the present invention to provide a circuit reconstructing device, a control method, and a program that efficiently utilize the memory provided in the circuit reconstructing device.

上記目的を達成するため、一つの側面における回路再構成装置は、
あらかじめ設定された行方向と列方向の画素数に基づいて前記フレームに設定された複数の対象領域を、あらかじめ設定された順序で選択する、選択部と、
選択された前記対象領域に含まれる画像データを、回路再構成装置に設けられたメモリに設定された複数のバッファのうち画像処理で利用していないバッファに書き込む制御をする、制御部と、
を有することを特徴とする。
In order to achieve the above objectives, the circuit reconstructor in one aspect is
A selection unit that selects a plurality of target areas set in the frame based on the number of pixels in the preset row direction and column direction in a preset order.
A control unit that controls to write the image data included in the selected target area to a buffer that is not used in image processing among a plurality of buffers set in the memory provided in the circuit reconstruction device.
It is characterized by having.

また、上記目的を達成するため、一側面における、回路再構成装置に設けられたメモリに画像データを書き込むための制御方法は、
あらかじめ設定された行方向と列方向の画素数に基づいてフレームに設定された複数の対象領域を、あらかじめ設定された順序で選択する、選択ステップと、
選択された前記対象領域に含まれる画像データを、前記メモリに設定された複数のバッファのうち画像処理で利用していないバッファに書き込む制御をする、制御ステップと、
を有することを特徴とする。
Further, in order to achieve the above object, the control method for writing the image data to the memory provided in the circuit reconstructing device on one aspect is as follows.
A selection step that selects multiple target areas set in the frame based on the number of pixels in the preset row direction and column direction in a preset order.
A control step that controls to write the image data included in the selected target area to a buffer that is not used in image processing among a plurality of buffers set in the memory.
It is characterized by having.

さらに、上記目的を達成するため、一側面における、回路再構成装置に設けられたメモリに画像データを書き込ませるためのプログラムは、
前記回路再構成装置に、
あらかじめ設定された行方向と列方向の画素数に基づいてフレームに設定された複数の対象領域を、あらかじめ設定された順序で選択する、選択ステップと、
選択された前記対象領域に含まれるデータを、前記メモリに設定された複数のバッファのうち画像処理で利用していないバッファに書き込む制御をする、制御ステップと、
を実行させることを特徴とする。
Further, in order to achieve the above object, the program for writing the image data to the memory provided in the circuit reconstructing device on one aspect is
In the circuit reconstructor
A selection step that selects multiple target areas set in the frame based on the number of pixels in the preset row direction and column direction in a preset order.
A control step that controls to write the data included in the selected target area to a buffer that is not used in image processing among a plurality of buffers set in the memory.
Is characterized by executing.

一つの側面として、回路再構成装置のメモリを効率よく利用することができる。 As one aspect, the memory of the circuit reconstructor can be efficiently used.

図1は、フレームと局所領域との関係を説明するための図である。FIG. 1 is a diagram for explaining the relationship between a frame and a local region. 図2は、回路再構成装置の一例を示す図である。FIG. 2 is a diagram showing an example of a circuit reconstructing device. 図3は、回路再構成装置を有するシステムの一例を示す図である。FIG. 3 is a diagram showing an example of a system having a circuit reconstructing device. 図4は、局所領域と対象領域との関係を説明するための図である。FIG. 4 is a diagram for explaining the relationship between the local region and the target region. 図5は、バッファに記憶するタイミングを説明するための図である。FIG. 5 is a diagram for explaining the timing of storage in the buffer. 図6は、局所領域が二つのバッファに跨った場合の画像処理を説明するための図である。FIG. 6 is a diagram for explaining image processing when a local region straddles two buffers. 図7は、回路再構成装置の動作の一例を説明するための図である。FIG. 7 is a diagram for explaining an example of the operation of the circuit reconstructing device. 図8は、回路再構成装置の動作の一例を説明するための図である。FIG. 8 is a diagram for explaining an example of the operation of the circuit reconstructing device. 図9は、回路再構成装置を有するハードウェアの一例を示す図である。FIG. 9 is a diagram showing an example of hardware having a circuit reconstructing device.

はじめに、以降で説明する実施形態の理解を容易にするために概要を説明する。
図1は、フレームと局所領域との関係を説明するための図である。図1の例は、複数の局所領域をフレームFに設定し、局所領域ごとに、局所領域に含まれる画素に対して所定の画像処理を実行する場合の例である。画像処理は、例えば、フィルタ処理などである。
First, an outline will be given to facilitate understanding of the embodiments described below.
FIG. 1 is a diagram for explaining the relationship between a frame and a local region. The example of FIG. 1 is an example in which a plurality of local regions are set in the frame F and predetermined image processing is executed for the pixels included in the local region for each local region. The image processing is, for example, a filter processing.

フレームFは、撮像装置により撮像された一つの画面に対応するデータである。図1に示すフレームFは、M×N個の画素を有する。Mは行方向の画素数、Nは列方向の画素数を示している。 The frame F is data corresponding to one screen imaged by the image pickup apparatus. The frame F shown in FIG. 1 has M × N pixels. M indicates the number of pixels in the row direction, and N indicates the number of pixels in the column direction.

フレームFに対応するデータは、回路再構成装置の外部に設けられたメモリに記憶される。以降において、このメモリを外部メモリと表記する。 The data corresponding to the frame F is stored in a memory provided outside the circuit reconstructing device. Hereinafter, this memory will be referred to as an external memory.

局所領域Tは、フレームFにおいて所定の順序で選択される。また、選択された局所領域に対して所定の画像処理が実行される。 The local regions T are selected in the frame F in a predetermined order. In addition, predetermined image processing is executed on the selected local area.

局所領域には、画像処理に必要な画素が含まれている。図1の例では、局所領域Tは、画像処理に必要なm1×n個の画素を有する。m1は行方向の画素数、nは列方向の画素数を示している。なお、画素数m1、nは、画像処理の種類に応じて異なる値が設定される。 The local area contains pixels necessary for image processing. In the example of FIG. 1, the local region T has m1 × n pixels required for image processing. m1 indicates the number of pixels in the row direction, and n indicates the number of pixels in the column direction. The number of pixels m1 and n are set to different values depending on the type of image processing.

局所領域の選択は、対象の局所領域に対して画像処理が終了すると、次に対象とする局所領域を選択する。例えば、対象の局所領域から、あらかじめ設定された画素数ずれた領域を、次の対象とする局所領域として選択する。 In the selection of the local area, when the image processing for the target local area is completed, the target local area is selected next. For example, a region deviated from the target local region by a preset number of pixels is selected as the next target local region.

図1の例では、最初に、局所領域T1が対象として選択される。次に、局所領域T1に対して画像処理が終了すると、局所領域T1から行方向(水平方向)に、あらかじめ設定された画素数step1ずれたm1×n個の画素数を有する局所領域T1´(破線範囲)が選択される。このように、局所領域を行方向に画素数step1ずつずらして選択し、選択した局所領域ごとに画像処理をしていくと、局所領域T1と反対側にある局所領域T2に辿り着く。 In the example of FIG. 1, the local region T1 is first selected as the target. Next, when the image processing for the local region T1 is completed, the local region T1'(the number of pixels of m1 × n) deviated from the local region T1 by the preset number of pixels step1 in the row direction (horizontal direction). Dashed line range) is selected. In this way, when the local region is selected by shifting the number of pixels by step 1 in the row direction and image processing is performed for each selected local region, the local region T2 on the opposite side of the local region T1 is reached.

局所領域T2が選択された場合、すなわちフレームFの最終列(M列)に辿り着いた場合、局所領域T2に対する画像処理が終了すると、次の対象として局所領域T1から列方向(垂直方向)にあらかじめ設定された画素数step2ずれた位置の局所領域T3(破線・斜線範囲)が選択される。 When the local region T2 is selected, that is, when the final column (M column) of the frame F is reached, when the image processing for the local region T2 is completed, the next target is the column direction (vertical direction) from the local region T1. A preset local area T3 (dashed line / diagonal line range) at a position shifted by the number of pixels step2 is selected.

次に、局所領域T3に対して画像処理が終了すると、局所領域T3から行方向に画素数step1ずつずらして局所領域を選択し、選択した局所領域ごとに画像処理をしていく。そして、最終列の局所領域T4に辿り着くと、局所領域T4に対して画像処理をし、局所領域T4に対して画像処理が終了すると、次の対象領域として、局所領域T3から列方向に画素数step2ずれた局所領域が選択される。 Next, when the image processing for the local region T3 is completed, the local region is selected by shifting the local region T3 by the number of pixels step1 in the row direction, and the image processing is performed for each selected local region. Then, when the local region T4 in the final column is reached, image processing is performed on the local region T4, and when the image processing on the local region T4 is completed, the pixels in the column direction from the local region T3 as the next target region. A local region that is off by a few steps 2 is selected.

このように、図1に示した局所領域の選択と、画像処理を繰り返す。最終的に、対象となる局所領域T6が選択され、選択された局所領域T6に対して画像処理が実行されると、図1のフレームFに対する処理を終了する。 In this way, the selection of the local region shown in FIG. 1 and the image processing are repeated. Finally, when the target local region T6 is selected and image processing is executed for the selected local region T6, the processing for the frame F in FIG. 1 is terminated.

しかし、上述したように局所領域を順次選択し、選択した局所領域に対して画像処理を実行する場合に、外部メモリに記憶されているフレームFに対応する画像データの容量が大きいと、回路再構成装置のメモリに、フレームFに対応する画像データをすべて記憶することができないことがある。 However, when the local areas are sequentially selected as described above and the image processing is executed for the selected local areas, if the capacity of the image data corresponding to the frame F stored in the external memory is large, the circuit is re-used. It may not be possible to store all the image data corresponding to the frame F in the memory of the configuration device.

画像データの容量が大きい場合として、例えば、解像度が高い画像、ピラミッド画像を扱う場合などに、フレームFに対応する画像データの容量が大きくなる。 As a case where the capacity of the image data is large, for example, when handling a high-resolution image or a pyramid image, the capacity of the image data corresponding to the frame F becomes large.

そこで、上述したようにラインメモリを用いた方法が提案されているが、この方法においても、フレームFの行方向の画素数が多い場合、回路再構成装置のメモリに必要な画像データを記憶することができないことがある。 Therefore, as described above, a method using a line memory has been proposed, but even in this method, when the number of pixels in the row direction of the frame F is large, the image data required for the memory of the circuit reconstructing device is stored. Sometimes you can't.

また、他の方法としてフレームFから局所領域に対応する分だけ画像データを逐次取得し、取得した局所領域に対して画像処理を実行する方法が提案されている。しかし、外部メモリから回路再構成装置のメモリへ、頻繁に、局所領域に対応する画像データを転送しなければならないため、データ転送待ちによる画像処理速度の低下の原因になる。 Further, as another method, a method has been proposed in which image data is sequentially acquired from the frame F by the amount corresponding to the local region, and image processing is executed on the acquired local region. However, since the image data corresponding to the local area must be frequently transferred from the external memory to the memory of the circuit reconstructing device, it causes a decrease in the image processing speed due to waiting for data transfer.

このようなプロセスを経て、発明者は、上述したような方法では、フレームFのデータ容量が大きい場合、回路再構成装置に設けられた小さなメモリを用いても、効率よく画像処理を実行することができないという課題を見出し、それとともに係る課題を解決する手段を導出するに至った。 Through such a process, in the above-mentioned method, when the data capacity of the frame F is large, the inventor can efficiently execute the image processing even if a small memory provided in the circuit reconstructing device is used. We found the problem that we couldn't do it, and came to derive the means to solve the problem.

すなわち、発明者は、フレームのデータ容量が大きい場合でも、回路再構成装置に設けられた小さなメモリを用いて、効率よく画像処理を実行できる手段を導出するに至った。 That is, the inventor has come to derive a means capable of efficiently executing image processing by using a small memory provided in the circuit reconstructing device even when the data capacity of the frame is large.

以下、図面を参照して実施形態について説明する。なお、以下で説明する図面において、同一の機能又は対応する機能を有する要素には同一の符号を付し、その繰り返しの説明は省略することもある。 Hereinafter, embodiments will be described with reference to the drawings. In the drawings described below, elements having the same function or corresponding functions are designated by the same reference numerals, and the repeated description thereof may be omitted.

(実施形態)
図2を用いて、本実施形態における回路再構成装置10の構成について説明する。図2は、回路再構成装置の一例を示す図である。回路再構成装置10は、例えば、FPGAなどのプログラマブルなデバイスである。
(Embodiment)
The configuration of the circuit reconstructing device 10 in the present embodiment will be described with reference to FIG. 2. FIG. 2 is a diagram showing an example of a circuit reconstructing device. The circuit reconstructor 10 is a programmable device such as an FPGA.

[装置構成]
図2に示す回路再構成装置10は、回路再構成装置10に設けられたメモリを効率よく利用できる。また、図1に示すように、回路再構成装置10は、選択部11と、制御部12と、メモリ13(バッファ14-1、14-2)とを有する。
[Device configuration]
The circuit reconstruction device 10 shown in FIG. 2 can efficiently use the memory provided in the circuit reconstruction device 10. Further, as shown in FIG. 1, the circuit reconstructing device 10 includes a selection unit 11, a control unit 12, and a memory 13 (buffers 14-1 and 14-2).

選択部11は、あらかじめ設定された行方向と列方向の画素数に基づいてフレームに設定された対象領域を、あらかじめ設定された順序で選択する。対象領域の大きさは、画像処理の種類(画像処理で用いる局所領域の大きさ)に基づいて、あらかじめ設定される。また、画像処理の種類が変更された場合、対象領域の大きさは、変更された画像処理の種類に基づいて、自動で変更される。また、選択部11は、現時点において選択されている局所領域の位置に基づいて、次の対象領域を選択する。 The selection unit 11 selects the target area set in the frame based on the number of pixels in the row direction and the column direction set in advance in the preset order. The size of the target area is preset based on the type of image processing (the size of the local area used in the image processing). Further, when the type of image processing is changed, the size of the target area is automatically changed based on the changed type of image processing. Further, the selection unit 11 selects the next target area based on the position of the local area currently selected.

制御部12は、選択された対象領域に含まれる画像データを、回路再構成装置10に設けられたメモリ13に設定された複数のバッファ14-1、14-2のうち画像処理で利用していないバッファに書き込む制御をする。 The control unit 12 uses the image data included in the selected target area for image processing among the plurality of buffers 14-1 and 14-2 set in the memory 13 provided in the circuit reconstruction device 10. Controls writing to no buffer.

このように、本実施形態においては、対象領域を順次選択して、選択した対象領域の画像データを、画像処理で利用していないバッファ14-1又は14-2に記憶するので、上述したようにフレームのデータ容量が大きく、かつライン分の画素数が多い場合でも、回路再構成装置10に設けられたメモリを用いて、効率よく画像処理が実行できる。 As described above, in the present embodiment, the target area is sequentially selected and the image data of the selected target area is stored in the buffer 14-1 or 14-2 that is not used in the image processing. Even when the data capacity of the frame is large and the number of pixels for the line is large, the image processing can be efficiently executed by using the memory provided in the circuit reconstructing device 10.

また、外部メモリから回路再構成装置10のメモリ13への画像データの転送回数を抑制できるため、データ転送待ちによる画像処理速度の低下を防止できる。 Further, since the number of times of image data transfer from the external memory to the memory 13 of the circuit reconstructing device 10 can be suppressed, it is possible to prevent a decrease in the image processing speed due to waiting for data transfer.

[システム構成]
続いて、図3を用いて、本実施形態における回路再構成装置10の構成をより具体的に説明する。図3は、回路再構成装置を有するシステムの一例を示す図である。図3に示すシステムは、回路再構成装置10と、外部メモリ20と、撮像装置30とを有する。
[System configuration]
Subsequently, the configuration of the circuit reconstructing device 10 in the present embodiment will be described more specifically with reference to FIG. FIG. 3 is a diagram showing an example of a system having a circuit reconstructing device. The system shown in FIG. 3 has a circuit reconstructing device 10, an external memory 20, and an image pickup device 30.

回路再構成装置10は、選択部11と、制御部12と、メモリ13(バッファ14-1、14-2)と、処理部15とを有する。回路再構成装置10は、例えば、FPGAなどのプログラマブルなデバイスである。 The circuit reconstructing device 10 includes a selection unit 11, a control unit 12, memories 13 (buffers 14-1, 14-2), and a processing unit 15. The circuit reconstructor 10 is a programmable device such as an FPGA.

外部メモリ20は、回路再構成装置10の外部に設けられる、例えば、各種のRAM(Random Access Memory)などである。 The external memory 20 is, for example, various RAMs (Random Access Memory) provided outside the circuit reconstructing device 10.

撮像装置30は、高画質の画像を撮像するカメラなどである。なお、撮像装置30以外に、録画機器、映像機器などの画像処理装置を、外部メモリ20に接続してもよい。高画質とは、例えば、HD(High Definition)、Full-HD、4K UHD(Ultra High Definition)、8K UHDなどの解像度の画像である。 The image pickup device 30 is a camera or the like that captures a high-quality image. In addition to the image pickup device 30, an image processing device such as a recording device or a video device may be connected to the external memory 20. The high image quality is an image having a resolution such as HD (High Definition), Full-HD, 4K UHD (Ultra High Definition), 8K UHD, or the like.

回路再構成装置について説明する。
回路再構成装置10は、回路構成部を有する。回路構成部は、例えば、回路機能を実装する部分、論理ブロック間の配線部分、スイッチ・マトリックス、入出力ブロック、入出力ブロックと論理ブロックの間の配線部分などを有するハードウェアである。
The circuit reconstructing device will be described.
The circuit reconstructing device 10 has a circuit component. The circuit configuration unit is, for example, hardware having a part for implementing a circuit function, a wiring part between logic blocks, a switch matrix, an input / output block, a wiring part between an input / output block and a logic block, and the like.

回路再構成装置10の回路構成部には、上述した選択部11と、制御部12と、処理部15とを構成する。 The circuit configuration unit of the circuit reconstruction device 10 includes the selection unit 11, the control unit 12, and the processing unit 15 described above.

選択部11は、上述したように現時点において選択されている局所領域の位置に基づいて、次に選択する対象領域を選択する。 The selection unit 11 selects the target area to be selected next based on the position of the local area currently selected as described above.

制御部12は、上述したように選択された対象領域に含まれる画像データを、回路再構成装置10に設けられたメモリ13に設定された複数のバッファ14-1、14-2のうち画像処理で利用していないバッファに書き込む制御をする。また、制御部12は、外部メモリ20に、対象領域のアドレスが連続するように記憶された画像データを、外部メモリ20から取得する。 The control unit 12 processes the image data included in the target area selected as described above into image processing among the plurality of buffers 14-1 and 14-2 set in the memory 13 provided in the circuit reconstructing device 10. Controls writing to a buffer that is not used in. Further, the control unit 12 acquires image data stored in the external memory 20 so that the addresses of the target areas are continuous from the external memory 20.

処理部15は、バッファ14-1、又はバッファ14-2、又は両方を用いて、現時点で選択されている局所領域に対して画像処理を実行する。 The processing unit 15 performs image processing on the currently selected local region using buffer 14-1, buffer 14-2, or both.

なお、処理部15は、画像処理で利用していないバッファに書き込み中であっても、画像処理で利用しているバッファの画像データを利用して画像処理を実行する。 Note that the processing unit 15 executes image processing using the image data of the buffer used in the image processing even while writing to the buffer not used in the image processing.

また、処理部15は、画像処理の処理対象の画素を含む局所領域が、二つのバッファに跨っている(分割されている)場合、二つのバッファの局所領域に対応する画像データを用いて画像処理をする。 Further, when the local region including the pixel to be processed for image processing extends (divided) over the two buffers, the processing unit 15 uses the image data corresponding to the local regions of the two buffers to image. Do the processing.

図4を用いて対象領域の選択を具体的に説明する。
図4は、局所領域と対象領域との関係を説明するための図である。図4の例は、図1で説明した局所領域Tに対する画像処理をする場合に、効果的に対象領域Rを選択する方法について説明する。
The selection of the target area will be specifically described with reference to FIG.
FIG. 4 is a diagram for explaining the relationship between the local region and the target region. The example of FIG. 4 describes a method of effectively selecting the target region R when performing image processing on the local region T described with reference to FIG. 1.

対象領域Rは、あらかじめ設定された行方向と列方向の画素数に基づいてフレームFに設定される領域である。図4の例では、対象領域Rは、m2×n個の画素を有する。m2は行方向の画素数(グリッド幅)、nは列方向の画素数(ライン幅)を示している。 The target area R is an area set in the frame F based on the preset number of pixels in the row direction and the column direction. In the example of FIG. 4, the target area R has m2 × n pixels. m2 indicates the number of pixels in the row direction (grid width), and n indicates the number of pixels in the column direction (line width).

また、画素数m2、nは、例えば、画像処理の種類、メモリインタフェースの仕様などに応じて値を変更する。例えば、画像処理の種類により局所領域の大きさが変わるので、局所領域の大きさに応じて、画素数m2、nの値を変更する。また、外部メモリ20とメモリ13との間のメモリインタフェースの仕様により、ビット幅、バースト長、データ転送速度などが変わるので、メモリインタフェースの仕様に応じて、画素数m2、nの値を変更する。ただし、画素数m2は、画素数m1より大きい値で、メモリ13への割り当て可能なサイズ(容量)を考慮して設定するものとする。 Further, the values of the number of pixels m2 and n are changed according to, for example, the type of image processing, the specifications of the memory interface, and the like. For example, since the size of the local region changes depending on the type of image processing, the values of the number of pixels m2 and n are changed according to the size of the local region. Further, since the bit width, burst length, data transfer speed, etc. change depending on the specifications of the memory interface between the external memory 20 and the memory 13, the values of the number of pixels m2 and n are changed according to the specifications of the memory interface. .. However, the number of pixels m2 is a value larger than the number of pixels m1 and is set in consideration of the size (capacity) that can be allocated to the memory 13.

対象領域の設定について、具体的に、次の(1)(2)の方法について説明する。
(1)の方法では、制御部12は、回路再構成装置10に設けられている記憶部にあらかじめ記憶されている、メモリインタフェースのデータ幅のビット数、最大バースト転送長、バスのクロック周波数、局所画像に関する解像度情報などを用いて、対象領域の画素数m2、nを算出する。
The following methods (1) and (2) will be specifically described for setting the target area.
In the method (1), the control unit 12 has the number of bits of the data width of the memory interface, the maximum burst transfer length, the clock frequency of the bus, which are stored in advance in the storage unit provided in the circuit reconstruction device 10. The number of pixels m2 and n in the target area are calculated by using the resolution information related to the local image.

(1)の方法では、対象領域の画素数m2、nを算出する場合、(1-A)対象領域の縦の画素数nと局所画像の縦の画素数hとが同じ場合(n=h)と、(1-B)対象領域の縦の画素数nと局所画像の縦の画素数hとが異なる場合(n≠h)とが想定される。 In the method (1), when the number of pixels m2 and n of the target area are calculated, (1-A) the number of vertical pixels n of the target area and the number h of the vertical pixels of the local image are the same (n = h). ) And (1-B) the case where the number of vertical pixels n in the target area and the number h in the vertical pixels of the local image are different (n ≠ h) is assumed.

(1-A)対象領域の縦の画素数nと局所画像の縦の画素数hとが同じ場合(n=h)について説明する。処理部15は、数1を満たす、対象領域内の局所画像の横方向数N0の整数の最小値N0_min、及び、対象領域分の画像データの転送にかかるバースト転送回数N1の整数の最小値N1_minを算出する。 (1-A) A case where the number of vertical pixels n of the target area and the number of vertical pixels h of the local image are the same (n = h) will be described. The processing unit 15 has a minimum value N0_min of an integer of the number N0 in the horizontal direction of the local image in the target area satisfying the equation 1, and a minimum value N1_min of an integer of the number of burst transfers N1 for transferring the image data for the target area. Is calculated.

(数1)
(w+step_w×N0)×bpp=bw×len×N1
w :局所画像の横の画素数
step_w:画像処理のstepの横の画素数
N0 :対象領域内の局所画像の横方向の画素数
bpp :一画素のデータ量(bits)
bw :メモリインタフェースのデータ幅のビット数
len :最大バースト転送長(回)
N1 :対象領域分の画像データの転送にかかるバースト転送回数
(Number 1)
(W + step_w × N0) × bpp = bw × len × N1
w: Number of pixels next to the local image step_w: Number of pixels next to the step of image processing N0: Number of pixels in the horizontal direction of the local image in the target area bpp: Data amount of one pixel (bits)
bw: Number of bits in the data width of the memory interface len: Maximum burst transfer length (times)
N1: Number of burst transfers required to transfer image data for the target area

次に、数2を用いて、対象領域の横の画素数m2を算出する。 Next, using the number 2, the number of pixels m2 beside the target area is calculated.

(数2)
m2=w+step_w×N0_min
m2 :対象領域の横の画素数
n :対象領域の縦の画素数
N0_min:N0の整数の最小値
N1_min:N1の整数の最小値
h :局所画像の縦の画素数
step_h:画像処理のstepの縦の画素数
(Number 2)
m2 = w + step_w × N0_min
m2: Number of pixels horizontal to the target area n: Number of vertical pixels in the target area N0_min: Minimum value of the integer of N0 N1_min: Minimum value of the integer of N1 h: Number of vertical pixels of the local image step_h: Step of image processing Number of vertical pixels

(1-B)対象領域の縦の画素数nと局所画像の縦の画素数hとの関係が数3の場合(n≠h)には、処理部15は、数3、数4を用いて、対象領域の横の画素数m2と、対象領域の縦の画素数nを算出する。 (1-B) When the relationship between the number of vertical pixels n in the target area and the number h in the vertical pixels of the local image is the number 3 (n ≠ h), the processing unit 15 uses the numbers 3 and 4. Then, the number of pixels m2 in the horizontal direction of the target area and the number of pixels n in the vertical direction of the target area are calculated.

(数3)
n=h+step_h×N2
step_h:画像処理のstepの縦の画素数
N2 :対象領域内の局所画像の縦方向の画素数
(Number 3)
n = h + step_h × N2
step_h: Number of vertical pixels of the step of image processing N2: Number of pixels in the vertical direction of the local image in the target area

(数4)
(w+step_w×N0)×(h+step_h×N2)×bpp
=bw×len×N1
(Number 4)
(W + step_w × N0) × (h + step_h × N2) × bpp
= Bw x len x N1

ただし、数3、数4に示した関係が成立するように設定を行う場合、N0、N1、N2は一意に決定できないため、例えば、N0とN2の比率(N0/N2)を制約条件とする。又は、N2を最初に決定し、その後N0、N1を算出する。 However, when the setting is made so that the relationship shown in the numbers 3 and 4 is established, N0, N1 and N2 cannot be uniquely determined. Therefore, for example, the ratio of N0 and N2 (N0 / N2) is used as a constraint condition. .. Alternatively, N2 is determined first, and then N0 and N1 are calculated.

(2)の方法では、外部メモリ20からメモリ13へデータ転送が効率よく実行できるような、対象領域の横の画素数m2と、対象領域の縦の画素数nとを算出する。 In the method (2), the number of pixels m2 horizontal to the target area and the number n vertical pixels n of the target area so that data transfer from the external memory 20 to the memory 13 can be efficiently executed are calculated.

具体的には、制御部12は、回路再構成装置10に設けられている記憶部にあらかじめ記憶されている、メモリインタフェースのデータ幅のビット数、最大バースト転送長、バスのクロック周波数、(数4)に含まれるN0、N1及びN2間の制約条件を参照し、対象領域の画素数m2、nを算出する。 Specifically, the control unit 12 has the number of bits of the data width of the memory interface, the maximum burst transfer length, the clock frequency of the bus, which are stored in advance in the storage unit provided in the circuit reconstruction device 10. With reference to the constraint condition between N0, N1 and N2 included in 4), the number of pixels m2 and n in the target area is calculated.

また、制御部12は、一つのフレームF全体の処理に要したクロック数を計数(カウント)する機能と、その計数値を一時的に保存する機能とを有するとともに、当該フレームの処理に掛かった計数値と、その前のフレームに処理に掛かった計数値とを比較する機能を有する。さらに、制御部12は、(数4)を満たしながら、N0、N1、N2に変更を加える機能と、上述した計数値の比較結果を参照して、N0、N1、N2への変更を適用するかどうかを判断する機能とを有する。 Further, the control unit 12 has a function of counting the number of clocks required for processing the entire frame F and a function of temporarily storing the counted value, and is engaged in the processing of the frame. It has a function to compare the count value with the count value applied to the processing in the previous frame. Further, the control unit 12 applies the change to N0, N1 and N2 with reference to the function of making changes to N0, N1 and N2 while satisfying (Equation 4) and the comparison result of the count values described above. It has a function to judge whether or not.

すなわち、制御部12は、あるフレーム番号F0において設定したN0、N1及びN2を、N0_0、N1_0、N2_0とし、このときの計数値をCOUNT_0とする。また、次のフレーム番号F1の処理を開始する前に、N0、N1、N2に変更を加えてN0_1、N1_1、N2_1とする。 That is, the control unit 12 sets N0, N1 and N2 set in a certain frame number F0 to N0_0, N1_0 and N2_0, and sets the count value at this time to COUNT_0. Further, before starting the processing of the next frame number F1, N0, N1 and N2 are changed to N0_1, N1_1 and N2_1.

また、制御部12は、フレーム番号F1の処理に掛かったクロック数の計数値がCOUNT_1としたときに、計数値COUNT_1が計数値COUNT_0より小さい場合(COUNT_1<COUNT_0)、N0_1、N1_1、N2_1を基準として、N0_1とN0_0の差分Δ(=N0_1-N0_0)をN0_1に加え(N0_1+Δ)、N0_1+ΔをN0_2とする。 Further, when the count value of the number of clocks applied to the processing of the frame number F1 is COUNT_1, the control unit 12 refers to N0_1, N1-1, and N2_1 when the count value COUNT_1 is smaller than the count value COUNT_1 (COUNT_1 <COUNT_1). As a result, the difference Δ (= N0_1-N0_0) between N0_1 and N0_1 is added to N0_1 (N0_1 + Δ), and N0_1 + Δ is set to N0_2.

その後、NO_2及び上述した制約条件に基づいてN1_2及びN2_2を算出し、新しいパラメータとする。続いて、新しいパラメータN1_2及びN2_2を用いて、次のフレームF2の処理を実行し、再度、クロック数の計数を行う。 After that, N1_2 and N2_2 are calculated based on NO_2 and the above-mentioned constraints, and used as new parameters. Subsequently, the processing of the next frame F2 is executed using the new parameters N1_2 and N2_2, and the number of clocks is counted again.

対して、計数値COUNT_1が計数値COUNT_0以上の場合(COUNT_1≧COUNT_0)である場合、N0_0、N1_0、N2_0を基準とし、差分ΔをN0_0から減算した値(=N0_0-Δ)をN0_2とする。そして、N0_2及び制約条件に基づいてN1_2及びN2_2を算出し、(数2)及び(数3)により対象領域の横の画素数m2と、対象領域の縦の画素数nとを算出する。 On the other hand, when the count value COUNT_1 is greater than or equal to the count value COUNT_1 (COUNT_1 ≧ COUNT_1), N0_0, N1_0, and N2_0 are used as a reference, and the value obtained by subtracting the difference Δ from N0_0 (= N0_0-Δ) is defined as N0_2. Then, N1_2 and N2_2 are calculated based on N0_2 and the constraint conditions, and the number of pixels m2 horizontal to the target area and the number n vertical pixels n of the target area are calculated by (Equation 2) and (Equation 3).

ここで、データ転送を効率よく実行するとは、例えば、(2-A)データ転送に要する処理時間を短縮する(処理速度を高くする)、又は、(2-B)データ転送において画像入力から画像処理結果を得るまでの画像処理時間を短縮する(遅延を小さくする)ことなどである。 Here, to efficiently execute data transfer means, for example, (2-A) shortening the processing time required for data transfer (increasing the processing speed), or (2-B) data transfer from image input to image. For example, the image processing time until the processing result is obtained is shortened (the delay is reduced).

(2-A)データ転送に要する処理時間の短縮、又は、(2-B)画像処理時間の短縮は、上述したクロック数の計数方法を変更することにより実現できる。なお、上述した(2)の方法は、(2-A)処理速度を高くすることを目的とした計数方法である。 (2-A) The processing time required for data transfer can be shortened, or (2-B) the image processing time can be shortened by changing the above-mentioned clock number counting method. The method (2) described above is a counting method for the purpose of increasing the processing speed (2-A).

また、(2-B)遅延を小さくすることを目的とする場合には、クロック数を計数する条件をフレームの最初の対象領域のデータ転送開始から最初の局所画像に対する処理完了までとする。 Further, when the purpose is to reduce the delay (2-B), the condition for counting the number of clocks is from the start of data transfer in the first target area of the frame to the completion of processing for the first local image.

なお、後述する図8の例では、(2-A)では「Start」から「End」までの処理時間(=クロック数)を計測するのに対し、(2-B)ではステップB1からステップB2までの処理時間を計測する。 In the example of FIG. 8 described later, in (2-A), the processing time (= number of clocks) from “Start” to “End” is measured, whereas in (2-B), steps B1 to B2 are measured. Measure the processing time up to.

なお、上述した処理時間又は画像処理時間は、記憶部にあらかじめ設定し、動作中に外部のイベントを契機に、処理時間又は画像処理時間を変更できるようにしてもよい。 The above-mentioned processing time or image processing time may be set in advance in the storage unit so that the processing time or image processing time can be changed in the wake of an external event during operation.

続いて、対象領域の選択について説明をする。
まず、処理部15が局所領域T1に対して画像処理を実行するので、選択部11は、図4に示す対象領域R11を選択する。そして、制御部12は、対象領域R11の画像データを、まだ画像処理で用いられていないバッファ14-1に記憶する。
Next, the selection of the target area will be described.
First, since the processing unit 15 executes image processing on the local region T1, the selection unit 11 selects the target region R11 shown in FIG. Then, the control unit 12 stores the image data of the target area R11 in the buffer 14-1 which has not been used in the image processing yet.

図5は、バッファに記憶するタイミングを説明するための図である。具体的には、フレームFに対して画像処理を開始すると、図5に示すようにデータ取得タイミングt1において、選択部11は対象領域R11を選択し、制御部12が対象領域R11の画像データをバッファ14-1に記憶する。 FIG. 5 is a diagram for explaining the timing of storage in the buffer. Specifically, when image processing is started for the frame F, the selection unit 11 selects the target area R11 at the data acquisition timing t1 as shown in FIG. 5, and the control unit 12 selects the image data of the target area R11. Store in buffer 14-1.

次に、対象領域R11に含まれる局所領域Tに対して、処理部15が画像処理をしている期間に、選択部11が対象領域R21を選択し、制御部12が対象領域R21の画像データを、画像処理で用いられていないバッファ14-2に記憶する。すなわち、図5のデータ取得タイミングt2において、対象領域R21の画像データをバッファ14-2に記憶する。 Next, while the processing unit 15 is performing image processing on the local area T included in the target area R11, the selection unit 11 selects the target area R21, and the control unit 12 selects the image data of the target area R21. Is stored in buffer 14-2, which is not used in image processing. That is, at the data acquisition timing t2 of FIG. 5, the image data of the target area R21 is stored in the buffer 14-2.

このように、局所領域Tに対して順次行方向に画像処理を実行していくと、図5のデータ取得タイミングt5において、選択部11が対象領域R51を選択し、制御部12が対象領域R51の画像データをバッファ14-1に記憶する。 In this way, when image processing is sequentially executed in the row direction for the local area T, the selection unit 11 selects the target area R51 at the data acquisition timing t5 in FIG. 5, and the control unit 12 selects the target area R51. Image data is stored in the buffer 14-1.

次に、対象領域R51に含まれる局所領域Tに対して、処理部15が画像処理をしている期間に、図5のデータ取得タイミングt6において、選択部11が対象領域R11から列方向に画素数step2ずれた対象領域R12を選択し、制御部12が選択した対象領域R12の画像データを、画像処理で用いられていないバッファ14-2に記憶する。 Next, during the period in which the processing unit 15 is performing image processing on the local area T included in the target area R51, at the data acquisition timing t6 of FIG. 5, the selection unit 11 pixels in the column direction from the target area R11. The target area R12 deviated by several steps 2 is selected, and the image data of the target area R12 selected by the control unit 12 is stored in the buffer 14-2 not used in the image processing.

上述したように、選択した対象領域Rを、画像処理で用いていないバッファ14-1、14-2に記憶する処理を繰り返すことで、処理部15は局所領域Tに対する画像処理を円滑に継続することができる。 As described above, by repeating the process of storing the selected target area R in the buffers 14-1 and 14-2 not used in the image processing, the processing unit 15 smoothly continues the image processing for the local area T. be able to.

図6を用いて、画像処理の対象となる局所領域Tが、二つのバッファ14-1、14-2に跨っている場合について説明する。図6は、局所領域が二つのバッファに跨った場合の処理を説明するための図である。 A case where the local region T to be image-processed straddles the two buffers 14-1 and 14-2 will be described with reference to FIG. FIG. 6 is a diagram for explaining processing when a local area straddles two buffers.

図6の例は、バッファ14-1に対象領域R31の画像データが記憶され、バッファ14-2に対象領域R21の画像データが記憶されている場合に、局所領域T7の画像データが、二つのバッファ14-1、14-2に跨っている場合を示している。 In the example of FIG. 6, when the image data of the target area R31 is stored in the buffer 14-1 and the image data of the target area R21 is stored in the buffer 14-2, the image data of the local area T7 is two. The case where the buffers 14-1 and 14-2 are straddled is shown.

このような場合、処理部15は、バッファ14-2の局所領域T7の分割領域T7-1と、バッファ14-1の分割領域T7-2を取得し、局所領域T7に対して画像処理を実行する。 In such a case, the processing unit 15 acquires the divided region T7-1 of the local region T7 of the buffer 14-2 and the divided region T7-2 of the buffer 14-1, and executes image processing on the local region T7. do.

[装置動作]
次に、本発明の実施形態における回路再構成装置の動作について図7を用いて説明する。図7、図8は、回路再構成装置の動作の一例を説明するための図である。以下の説明においては、適宜図面を参照する。また、本実施形態では、回路再構成装置を動作させることによって、画像データの書き込み方法が実施される。よって、本実施形態における画像データの書き込み方法の説明は、以下の回路再構成装置の動作説明に代える。
[Device operation]
Next, the operation of the circuit reconstructing device according to the embodiment of the present invention will be described with reference to FIG. 7. 7 and 8 are diagrams for explaining an example of the operation of the circuit reconstructing device. In the following description, the drawings will be referred to as appropriate. Further, in the present embodiment, the method of writing image data is implemented by operating the circuit reconstructing device. Therefore, the description of the method of writing the image data in the present embodiment is replaced with the following description of the operation of the circuit reconstructing device.

最初に、図7を用いて、選択部11と制御部12の動作について説明する。選択部11は、現時点において、画像処理が実行されている局所領域の位置に基づいて対象領域を選択する(ステップA1)。図4、図5の例で説明したように、選択部11は、局所領域Tに対する画像処理が途切れないように、対象領域を選択する。 First, the operations of the selection unit 11 and the control unit 12 will be described with reference to FIG. 7. The selection unit 11 selects the target area based on the position of the local area in which the image processing is currently executed (step A1). As described in the examples of FIGS. 4 and 5, the selection unit 11 selects the target area so that the image processing for the local area T is not interrupted.

次に、制御部12は、バッファ14-1、14-2に記憶されている局所領域に対して画像処理が終了しているバッファを選択する(ステップA2)。その後、制御部12は、選択したバッファ14-1又はバッファ14-2に、選択した対象領域の画像データを記憶する(ステップA3)。 Next, the control unit 12 selects a buffer for which image processing has been completed for the local area stored in the buffers 14-1 and 14-2 (step A2). After that, the control unit 12 stores the image data of the selected target area in the selected buffer 14-1 or buffer 14-2 (step A3).

具体的には、ステップA2において、バッファ14-2の画像データを用いた画像処理が終了した後、処理部15が、バッファ14-1に記憶されている対象領域の画像データだけを用いて、局所領域に対する画像処理をしている場合、ステップA3において、制御部12は、選択された対象領域の画像データをバッファ14-2に記憶させる。 Specifically, in step A2, after the image processing using the image data of the buffer 14-2 is completed, the processing unit 15 uses only the image data of the target area stored in the buffer 14-1 to be used. When image processing is performed on the local area, in step A3, the control unit 12 stores the image data of the selected target area in the buffer 14-2.

また、ステップA2において、バッファ14-1の画像データを用いた画像処理が終了した後、処理部15が、バッファ14-2に記憶されている対象領域の画像データだけを用いて、局所領域に対する画像処理をしている場合、ステップA3において、制御部12は、選択された対象領域の画像データを、バッファ14-1に記憶させる。 Further, in step A2, after the image processing using the image data of the buffer 14-1 is completed, the processing unit 15 uses only the image data of the target area stored in the buffer 14-2 for the local area. When image processing is performed, in step A3, the control unit 12 stores the image data of the selected target area in the buffer 14-1.

さらに、ステップA2において、バッファ14-1とバッファ14-2に跨って対象となる局所領域が記憶されている場合、ステップA3において、制御部12は、バッファ14-1とバッファ14-2双方にまだ処理中のデータが存在していることを処理部15が処理中の局所領域の位置(座標)から判断し、バッファ14への画像データの記憶を行わないように制御を行う。 Further, in step A2, when the target local area is stored straddling the buffer 14-1 and the buffer 14-2, in the step A3, the control unit 12 sends the control unit 12 to both the buffer 14-1 and the buffer 14-2. The processing unit 15 determines from the position (coordinates) of the local area being processed that the data being processed still exists, and controls so that the image data is not stored in the buffer 14.

次に、制御部12が対象としているフレームに設定されている対象領域をすべて選択した場合(ステップA4:Yes)、対象のフレームに対する処理を終了する。次に対象となるフレームがある場合には、そのフレームに対してステップA1からA4の処理を再度実行する。また、制御部12がフレームに設定されている対象領域をすべて選択していない場合(ステップA4:No)、ステップA1の処理に移行して、次の対象領域を選択する。 Next, when all the target areas set in the target frame are selected by the control unit 12 (step A4: Yes), the processing for the target frame is terminated. Next, if there is a target frame, the processes of steps A1 to A4 are executed again for that frame. If the control unit 12 has not selected all the target areas set in the frame (step A4: No), the process proceeds to step A1 and the next target area is selected.

次に、図8を用いて、処理部15の動作について説明する。処理部15は、バッファ14-1又は14-2から局所領域に対応する画像データを取得する(ステップB1)。次に、処理部15は、取得した局所領域に対して画像処理を実行する(ステップB2)。 Next, the operation of the processing unit 15 will be described with reference to FIG. The processing unit 15 acquires image data corresponding to the local region from the buffer 14-1 or 14-2 (step B1). Next, the processing unit 15 executes image processing on the acquired local area (step B2).

次に、処理部15は、対象のフレームにおいて、すべての局所領域に対して画像処理を実行した場合(ステップB3:Yes)、対象のフレームに対する処理を終了する。次に対象となるフレームがある場合には、そのフレームに対してステップB1からB3の処理を再度実行する。また、処理部15がフレームに設定されている局所領域をすべて選択していない場合(ステップB3:No)、ステップB1の処理に移行して、次の局所領域を選択する。 Next, when the image processing is executed for all the local regions in the target frame (step B3: Yes), the processing unit 15 ends the processing for the target frame. Next, if there is a target frame, the processes of steps B1 to B3 are executed again for that frame. If the processing unit 15 has not selected all the local areas set in the frame (step B3: No), the process proceeds to the processing of step B1 and the next local area is selected.

なお、図7に示したステップA1からA4の処理と、図8に示したステップB1からB3の処理とは、連動して動作する。 The processes of steps A1 to A4 shown in FIG. 7 and the processes of steps B1 to B3 shown in FIG. 8 operate in conjunction with each other.

[本実施形態の効果]
以上のように本実施形態によれば、対象領域を順次選択して、選択した対象領域の画像データを、画像処理で利用していないバッファ14-1又は14-2に記憶するので、上述したようにフレームのデータ容量が大きく、かつライン分の画素数が多い場合でも、回路再構成装置10に設けられたメモリを用いて、効率よく画像処理が実行できる。
[Effect of this embodiment]
As described above, according to the present embodiment, the target area is sequentially selected and the image data of the selected target area is stored in the buffer 14-1 or 14-2 that is not used in the image processing. Even when the data capacity of the frame is large and the number of pixels for the line is large, the image processing can be efficiently executed by using the memory provided in the circuit reconstructing device 10.

また、外部メモリから回路再構成装置10のメモリ13への画像データの転送回数を抑制できるため、データ転送待ちによる画像処理速度の低下を防止できる。 Further, since the number of times of image data transfer from the external memory to the memory 13 of the circuit reconstructing device 10 can be suppressed, it is possible to prevent a decrease in the image processing speed due to waiting for data transfer.

なお、フレームに対応する画像データをライン分連続して外部メモリ20に記憶した場合、アドレスを指定した読み出しをすると、アドレスジャンプが頻繁に発生し、大きなオーバヘッドが生じてしまい、画像処理の処理性能が低下する。 When image data corresponding to a frame is continuously stored in the external memory 20 for a line, when reading with a specified address, address jumps frequently occur and a large overhead occurs, resulting in image processing performance. Decreases.

そこで、制御部12は、外部メモリ20に画像データを記憶する場合、対象領域のアドレスが連続するように記憶する。そうすることで、大きなオーバヘッドが生じないようにできるため、画像処理の処理性能を向上させることができる。 Therefore, when the image data is stored in the external memory 20, the control unit 12 stores the images so that the addresses of the target areas are continuous. By doing so, it is possible to prevent a large overhead from occurring, so that the processing performance of image processing can be improved.

[プログラム]
本発明の実施形態におけるプログラムは、回路再構成装置に、図7に示すステップA1からA4、図8に示すステップB1からB3を実行させるプログラムであればよい。このプログラムを回路再構成装置にインストールし、実行することによって、本実施形態における回路再構成装置と画像データの書き込み方法とを実現することができる。この場合、回路再構成装置のFPGAなどのプログラマブルなデバイスは、選択部11、制御部12、処理部15として機能し、処理を行なう。
[program]
The program according to the embodiment of the present invention may be any program that causes the circuit reconstructor to execute steps A1 to A4 shown in FIG. 7 and steps B1 to B3 shown in FIG. By installing and executing this program in the circuit reconstructing device, the circuit reconstructing device and the image data writing method in the present embodiment can be realized. In this case, a programmable device such as an FPGA of the circuit reconstructing device functions as a selection unit 11, a control unit 12, and a processing unit 15 to perform processing.

また、本実施形態におけるプログラムは、複数の回路再構成装置によって構築されて実行されてもよい。この場合は、例えば、各回路再構成装置が、それぞれ、選択部11、制御部12、処理部15のいずれかとして機能してもよい。 Further, the program in the present embodiment may be constructed and executed by a plurality of circuit reconstructing devices. In this case, for example, each circuit reconstructing device may function as any of the selection unit 11, the control unit 12, and the processing unit 15, respectively.

[物理構成]
図9は、回路再構成装置を有するハードウェアの一例を示す図である。図9に示すように、回路再構成装置10と、周辺回路120と、記憶部130とを有する。周辺回路120は、例えば、CPU(Central Processing Unit)に加えて、又はCPUに代えて、GPU(Graphics Processing Unit)、又はFPGA、又は通信装置などを有する回路である。
[Physical configuration]
FIG. 9 is a diagram showing an example of hardware having a circuit reconstructing device. As shown in FIG. 9, it has a circuit reconstructing device 10, a peripheral circuit 120, and a storage unit 130. The peripheral circuit 120 is a circuit having, for example, a GPU (Graphics Processing Unit), an FPGA, a communication device, or the like in addition to or in place of the CPU (Central Processing Unit).

記憶部130は、典型的には、ROM(Read Only Memory)などの不揮発性の記憶装置である。また、本実施形態におけるプログラムは、コンピュータ読み取り可能な記録媒体140に格納された状態で提供してもよい。なお、本実施の形態におけるプログラムは、通信インタフェースを介して接続されたインターネット上で流通するものでもよい。また、記録媒体140の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記録媒体、又はCD-ROM(Compact Disk Read Only Memory)などの光学記録媒体があげられる。 The storage unit 130 is typically a non-volatile storage device such as a ROM (Read Only Memory). Further, the program in the present embodiment may be provided in a state of being stored in a computer-readable recording medium 140. The program in the present embodiment may be distributed on the Internet connected via a communication interface. Specific examples of the recording medium 140 include a general-purpose semiconductor storage device such as CF (Compact Flash (registered trademark)) and SD (Secure Digital), a magnetic recording medium such as a flexible disk, or a CD-. Examples include optical recording media such as ROM (Compact Disk Read Only Memory).

なお、本実施形態における回路再構成装置10は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、回路再構成装置10は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。 The circuit reconstructing device 10 in the present embodiment can also be realized by using the hardware corresponding to each part instead of the computer in which the program is installed. Further, the circuit reconstructing device 10 may be partially realized by a program and the rest may be realized by hardware.

[付記]
以上の実施形態に関し、更に以下の付記を開示する。上述した実施形態の一部又は全部は、以下に記載する(付記1)から(付記15)により表現することができるが、以下の記載に限定されるものではない。
[Additional Notes]
Further, the following additional notes will be disclosed with respect to the above embodiments. A part or all of the above-described embodiments can be expressed by the following descriptions (Appendix 1) to (Appendix 15), but the description is not limited to the following.

(付記1)
あらかじめ設定された行方向と列方向の画素数に基づいてフレームに設定された複数の対象領域を、あらかじめ設定された順序で選択する、選択部と、
選択された前記対象領域に含まれる画像データを、回路再構成装置に設けられたメモリに設定された複数のバッファのうち画像処理で利用していないバッファに書き込む制御をする、制御部と、
を有する回路再構成装置。
(Appendix 1)
A selection unit that selects multiple target areas set in the frame based on the number of pixels in the preset row direction and column direction in the preset order.
A control unit that controls to write the image data included in the selected target area to a buffer that is not used in image processing among a plurality of buffers set in the memory provided in the circuit reconstruction device.
Circuit reconstructor with.

(付記2)
付記1に記載の回路再構成装置であって、
画像処理で利用していない前記バッファに書き込み中であっても、画像処理で利用しているバッファの画像データを利用して画像処理をする、処理部と、
を有する回路再構成装置。
(Appendix 2)
The circuit reconstructing device according to Appendix 1.
A processing unit that performs image processing using the image data of the buffer used in image processing even while writing to the buffer that is not used in image processing.
Circuit reconstructor with.

(付記3)
付記2に記載の回路再構成装置であって、
画像処理の処理対象の画素を含む局所領域が、二つの前記バッファに分割されている場合、前記処理部は、二つの前記バッファを利用して画像処理をする
回路再構成装置。
(Appendix 3)
The circuit reconstructing device according to Appendix 2.
When the local area including the pixel to be processed for image processing is divided into the two buffers, the processing unit is a circuit reconstructing device that performs image processing using the two buffers.

(付記4)
付記3に記載の回路再構成装置であって、
前記対象領域の大きさは、前記局所領域の大きさに応じて変更する
回路再構成装置。
(Appendix 4)
The circuit reconstructing device according to Appendix 3.
A circuit reconstructing device that changes the size of the target area according to the size of the local area.

(付記5)
付記1に記載の回路再構成装置であって、
前記制御部は、前記回路再構成装置の外部に設けられた外部メモリに、前記対象領域のアドレスが連続するように記憶された前記画像データを、前記外部メモリから取得する
回路再構成装置。
(Appendix 5)
The circuit reconstructing device according to Appendix 1.
The control unit is a circuit reconstructing device that acquires the image data stored in an external memory provided outside the circuit reconstructing device so that the addresses of the target areas are continuous from the external memory.

(付記6)
回路再構成装置に設けられたメモリに画像データを書き込むための制御方法であって、
あらかじめ設定された行方向と列方向の画素数に基づいてフレームに設定された複数の対象領域を、あらかじめ設定された順序で選択する、選択ステップと、
選択された前記対象領域に含まれるデータを、前記メモリに設定された複数のバッファのうち画像処理で利用していないバッファに書き込む制御をする、制御ステップと、
を有する制御方法。
(Appendix 6)
It is a control method for writing image data to a memory provided in a circuit reconstruction device.
A selection step that selects multiple target areas set in the frame based on the number of pixels in the preset row and column directions in a preset order.
A control step that controls to write the data included in the selected target area to a buffer that is not used in image processing among a plurality of buffers set in the memory.
Control method having.

(付記7)
付記6に記載の制御方法であって、
画像処理で利用していない前記バッファに書き込み中であっても、画像処理で利用しているバッファの画像データを利用して画像処理をする、処理ステップ
を有する制御方法。
(Appendix 7)
The control method described in Appendix 6
A control method having a processing step that performs image processing using the image data of the buffer used in image processing even while writing to the buffer that is not used in image processing.

(付記8)
付記7に記載の制御方法であって、
前記処理ステップにおいて、画像処理における処理対象の画素を含む局所領域が、二つの前記バッファに分割されている場合、二つの前記バッファを利用して画像処理をする
制御方法。
(Appendix 8)
The control method described in Appendix 7.
A control method for performing image processing using the two buffers when the local region including the pixel to be processed in the image processing is divided into the two buffers in the processing step.

(付記9)
付記8に記載の制御方法であって、
前記対象領域の大きさは、前記局所領域の大きさに応じて変更する
制御方法。
(Appendix 9)
The control method according to Appendix 8.
A control method in which the size of the target area is changed according to the size of the local area.

(付記10)
付記6に記載の制御方法であって、
前記制御ステップにおいて、前記回路再構成装置の外部に設けられた外部メモリに、前記対象領域のアドレスが連続するように記憶された画像データを、前記外部メモリから取得する
制御方法。
(Appendix 10)
The control method described in Appendix 6
A control method for acquiring image data stored in an external memory provided outside the circuit reconstruction apparatus so that the addresses of the target areas are continuous in the control step.

(付記11)
回路再構成装置に設けられたメモリに画像データを書き込ませるためのプログラムであって、
前記回路再構成装置に、
あらかじめ設定された行方向と列方向の画素数に基づいてフレームに設定された複数の対象領域を、あらかじめ設定された順序で選択する、選択ステップと、
選択された前記対象領域に含まれるデータを、前記メモリに設定された複数のバッファのうち画像処理で利用していないバッファに書き込む制御をする、制御ステップと、
を実行させる命令を含むプログラム。
(Appendix 11)
It is a program for writing image data to the memory provided in the circuit reconstructor.
In the circuit reconstructor
A selection step that selects multiple target areas set in the frame based on the number of pixels in the preset row direction and column direction in a preset order.
A control step that controls to write the data included in the selected target area to a buffer that is not used in image processing among a plurality of buffers set in the memory.
A program that contains instructions to execute.

(付記12)
付記11に記載のプログラムであって、
前記プログラムが、前記回路再構成装置に、
画像処理で利用していない前記バッファに書き込み中であっても、画像処理で利用しているバッファの画像データを利用して画像処理をする、処理ステップ
を実行させる命令を含むプログラム。
(Appendix 12)
The program described in Appendix 11
The program is applied to the circuit reconstructor.
A program including an instruction to execute a processing step that performs image processing using the image data of the buffer used in image processing even while writing to the buffer that is not used in image processing.

(付記13)
付記12記載のプログラムであって、
前記処理ステップにおいて、画像処理における処理対象の画素を含む局所領域が、二つの前記バッファに分割されている場合、二つの前記バッファを利用して画像処理を実行させる
プログラム。
(Appendix 13)
The program described in Appendix 12
In the processing step, when the local area including the pixel to be processed in the image processing is divided into the two buffers, a program for executing the image processing using the two buffers.

(付記14)
付記13に記載のプログラムであって、
前記対象領域の大きさを、前記局所領域の大きさに応じて変更する
プログラム。
(Appendix 14)
The program described in Appendix 13
A program that changes the size of the target area according to the size of the local area.

(付記15)
付記11に記載のプログラムであって、
前記制御ステップにおいて、前記回路再構成装置の外部に設けられた外部メモリに、前記対象領域のアドレスが連続するように記憶された画像データを、前記外部メモリから取得する
プログラム。
(Appendix 15)
The program described in Appendix 11
In the control step, a program for acquiring image data stored in an external memory provided outside the circuit reconstructing device so that the addresses of the target areas are continuous from the external memory.

以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 Although the invention of the present application has been described above with reference to the embodiments, the invention of the present application is not limited to the above-described embodiment. Various changes that can be understood by those skilled in the art can be made within the scope of the present invention in terms of the configuration and details of the present invention.

以上のように本発明によれば、回路再構成装置のメモリを効率よく利用することができる。本発明は、回路再構成装置を用いる分野において有用である。 As described above, according to the present invention, the memory of the circuit reconstructing device can be efficiently used. The present invention is useful in the field of using a circuit reconstructor.

10 回路再構成装置
11 選択部
12 制御部
13 メモリ
14-1、14-2 バッファ
15 処理部
20 外部メモリ
30 撮像装置
110 回路構成部
120 周辺回路
130 記憶部
140 記録媒体
10 Circuit reconfiguration device 11 Selection unit 12 Control unit 13 Memory 14-1, 14-2 Buffer 15 Processing unit 20 External memory 30 Imaging device 110 Circuit configuration unit 120 Peripheral circuit 130 Storage unit 140 Recording medium

Claims (10)

あらかじめ設定された行方向と列方向の画素数に基づいてフレームに設定された複数の対象領域を、あらかじめ設定された順序で選択する、選択手段と、
選択された前記対象領域に含まれる画像データを、回路再構成装置に設けられたメモリに設定された複数のバッファのうち画像処理で利用していないバッファに書き込む制御をする、制御手段と、
を有する回路再構成装置。
A selection means that selects a plurality of target areas set in a frame based on the number of pixels in the preset row direction and column direction in a preset order.
A control means for controlling the image data included in the selected target area to be written to a buffer not used in image processing among a plurality of buffers set in a memory provided in the circuit reconstruction apparatus.
Circuit reconstructor with.
請求項1に記載の回路再構成装置であって、
画像処理で利用していない前記バッファに書き込み中であっても、画像処理で利用しているバッファの画像データを利用して画像処理をする、処理手段と、
を有する回路再構成装置。
The circuit reconstructing device according to claim 1.
A processing means that performs image processing using the image data of the buffer used in image processing even while writing to the buffer that is not used in image processing.
Circuit reconstructor with.
請求項2に記載の回路再構成装置であって、
画像処理の処理対象の画素を含む局所領域が、二つの前記バッファに分割されている場合、前記処理手段は、二つの前記バッファを利用して画像処理をする
回路再構成装置。
The circuit reconstructing device according to claim 2.
When the local area including the pixel to be processed for image processing is divided into the two buffers, the processing means is a circuit reconstructing device that performs image processing using the two buffers.
請求項1に記載の回路再構成装置であって、
前記制御手段は、前記回路再構成装置の外部に設けられた外部メモリに、前記対象領域のアドレスが連続するように記憶された画像データを、前記外部メモリから取得する
回路再構成装置。
The circuit reconstructing device according to claim 1.
The control means is a circuit reconstructing device that acquires image data stored in an external memory provided outside the circuit reconstructing device so that the addresses of the target areas are continuous from the external memory.
回路再構成装置に設けられたメモリに画像データを書き込むための制御方法であって、
あらかじめ設定された行方向と列方向の画素数に基づいてフレームに設定された複数の対象領域を、あらかじめ設定された順序で選択し、
選択された前記対象領域に含まれるデータを、前記メモリに設定された複数のバッファのうち画像処理で利用していないバッファに書き込む制御をする
制御方法。
It is a control method for writing image data to a memory provided in a circuit reconstruction device.
Select multiple target areas set in the frame based on the number of pixels in the preset row direction and column direction in the preset order.
A control method for controlling to write data included in the selected target area to a buffer not used in image processing among a plurality of buffers set in the memory.
請求項5に記載の制御方法であって、
画像処理で利用していない前記バッファに書き込み中であっても、画像処理で利用しているバッファの画像データを利用して画像処理をする
制御方法。
The control method according to claim 5.
A control method that performs image processing using the image data of the buffer used in image processing even while writing to the buffer that is not used in image processing.
請求項6に記載の制御方法であって、
画像処理において処理対象の画素を含む局所領域が、二つの前記バッファに分割されている場合、二つの前記バッファ内のデータを利用して画像処理をする
制御方法。
The control method according to claim 6.
A control method for performing image processing using the data in the two buffers when the local area including the pixel to be processed is divided into the two buffers in the image processing.
回路再構成装置に設けられたメモリに画像データを書き込ませるためのプログラムであって、
前記回路再構成装置に、
あらかじめ設定された行方向と列方向の画素数に基づいてフレームに設定された複数の対象領域を、あらかじめ設定された順序で選択し、
選択された前記対象領域に含まれるデータを、前記メモリに設定された複数のバッファのうち画像処理で利用していないバッファに書き込む制御をする
処理を実行させる命令を含むプログラム。
It is a program for writing image data to the memory provided in the circuit reconstructor.
In the circuit reconstructor
Select multiple target areas set in the frame based on the number of pixels in the preset row direction and column direction in the preset order.
A program including an instruction for executing a process of controlling to write data contained in the selected target area to a buffer not used in image processing among a plurality of buffers set in the memory.
請求項8に記載のプログラムであって、
前記プログラムが、前記回路再構成装置に、
画像処理で利用していない前記バッファに書き込み中であっても、画像処理で利用しているバッファの画像データを参照して画像処理を実行させる命令を含む
プログラム。
The program according to claim 8.
The program is applied to the circuit reconstructor.
A program that includes an instruction to execute image processing by referring to the image data in the buffer used in image processing even while writing to the buffer that is not used in image processing.
請求項9に記載のプログラムであって、
前記プログラムが、前記回路再構成装置に、
画像処理において処理対象の画素を含む局所領域が、二つの前記バッファに分割されている場合、二つの前記バッファを利用して画像処理を実行させる命令を含む
プログラム。
The program according to claim 9.
The program is applied to the circuit reconstructor.
A program including an instruction to execute image processing using the two buffers when the local area including the pixel to be processed is divided into the two buffers in the image processing.
JP2020113461A 2020-06-30 2020-06-30 Circuit reconfiguration device, control method, and program Pending JP2022011993A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020113461A JP2022011993A (en) 2020-06-30 2020-06-30 Circuit reconfiguration device, control method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020113461A JP2022011993A (en) 2020-06-30 2020-06-30 Circuit reconfiguration device, control method, and program

Publications (1)

Publication Number Publication Date
JP2022011993A true JP2022011993A (en) 2022-01-17

Family

ID=80147685

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020113461A Pending JP2022011993A (en) 2020-06-30 2020-06-30 Circuit reconfiguration device, control method, and program

Country Status (1)

Country Link
JP (1) JP2022011993A (en)

Similar Documents

Publication Publication Date Title
US20180253641A1 (en) Arithmetic processing apparatus and control method therefor
US8904069B2 (en) Data processing apparatus and image processing apparatus
US10225425B2 (en) Information processing apparatus and method for controlling the same
US8665282B2 (en) Image generating apparatus and image generating method and reading of image by using plural buffers to generate computer readable medium
US20150163370A1 (en) Image processing apparatus
US20190079881A1 (en) Memory access control device, image processing device, and imaging device
US9591170B2 (en) Image processing apparatus, and control method and program of image processing apparatus
US9026697B2 (en) Data processing apparatus
US11775809B2 (en) Image processing apparatus, imaging apparatus, image processing method, non-transitory computer-readable storage medium
JPWO2017179099A1 (en) Image processing device
JP2022011993A (en) Circuit reconfiguration device, control method, and program
TWI391911B (en) Memory access apparatus and display using the same
US9723231B2 (en) Image data processing apparatus and method therefor for pixel data
JP5675278B2 (en) Data processing apparatus and image processing apparatus
US7928987B2 (en) Method and apparatus for decoding video data
JP5583563B2 (en) Data processing device
JP2003304481A (en) Image processor and image processing method
JP2021158490A (en) Imaging apparatus and control method
JP6564625B2 (en) Data transfer apparatus and data transfer method
JP5392060B2 (en) Image data processing device
US20140009478A1 (en) Image processing apparatus and control method
KR101540300B1 (en) System and method for image warping using cache memory
US20230342230A1 (en) Data processing apparatus and method thereof
JP6543517B2 (en) Image processing method, image processing apparatus and program
JP6205980B2 (en) Image transfer apparatus and image transfer method