WO2017203656A1 - 演算装置、画像処理装置および画像処理方法 - Google Patents

演算装置、画像処理装置および画像処理方法 Download PDF

Info

Publication number
WO2017203656A1
WO2017203656A1 PCT/JP2016/065589 JP2016065589W WO2017203656A1 WO 2017203656 A1 WO2017203656 A1 WO 2017203656A1 JP 2016065589 W JP2016065589 W JP 2016065589W WO 2017203656 A1 WO2017203656 A1 WO 2017203656A1
Authority
WO
WIPO (PCT)
Prior art keywords
pipeline
clock
output
control signal
input
Prior art date
Application number
PCT/JP2016/065589
Other languages
English (en)
French (fr)
Inventor
友紀 米本
上野 晃
Original Assignee
オリンパス株式会社
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 オリンパス株式会社 filed Critical オリンパス株式会社
Priority to PCT/JP2016/065589 priority Critical patent/WO2017203656A1/ja
Priority to JP2018519514A priority patent/JPWO2017204128A1/ja
Priority to PCT/JP2017/018923 priority patent/WO2017204128A1/ja
Publication of WO2017203656A1 publication Critical patent/WO2017203656A1/ja
Priority to US16/197,744 priority patent/US20190094904A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/06Clock generators producing several clock signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew

Definitions

  • the present invention relates to an arithmetic device, an image processing device, and an image processing method.
  • a pipeline register is inserted to adjust the timing of the arithmetic circuit. Since this pipeline register is inserted in accordance with the maximum operating frequency, in a mode operating at a low frequency, there are places where the pipeline register becomes unnecessary, and wasteful power consumption occurs.
  • the present invention has been made in consideration of the above circumstances, and is capable of performing a pipeline operation with an appropriate number of pipeline stages according to a clock frequency and suppressing power consumption due to unnecessary pipeline registers, etc., and an image
  • An object is to provide a processing device and an image processing method.
  • the arithmetic device includes a plurality of arithmetic circuits, a plurality of pipeline registers, and a plurality of data selection units, each of which is pipeline-connected, performs arithmetic on input data, A pipeline arithmetic processing unit for outputting a result, and clock outputs of at least two systems, the clock outputs of one or a plurality of the systems selected by associating each system with one of the pipeline registers A clock supply unit that supplies the pipeline register of the corresponding system, and the clock supply unit switches the state of the clock output for each system based on the input control signal, The plurality of data selection units select either the output of the pipeline register or the output of the arithmetic circuit according to the control signal. To output Te.
  • the arithmetic device is the arithmetic device according to the first aspect, wherein the control for controlling the clock output of the clock supply unit and the plurality of data selection units based on the input parameters.
  • a control signal output unit that generates and outputs a signal is further provided, and the clock supply unit stops the clock supply of any one of the systems according to the control signal.
  • the parameter includes first information corresponding to a processing amount per unit time of the arithmetic operation on the input data, and the control The signal output unit generates and outputs the control signal based on at least the first information.
  • An image processing apparatus includes a scene recognition unit that recognizes a scene of input image data and outputs the recognized result as scene information, and a plurality of arithmetic circuits each connected in a pipeline.
  • a pipeline operation processing unit that includes a plurality of pipeline registers and a plurality of data selection units, performs an operation on the image data, and outputs an operation result; and at least two clock outputs,
  • a clock supply unit that supplies a clock output of one or more selected systems to the corresponding pipeline register in association with one of the pipeline registers, and based on the scene information And generating and outputting a control signal for controlling the clock output of the clock supply unit and the plurality of data selection units And the clock supply unit switches the state of the clock output for each of the systems based on the control signal, and the plurality of data selection units are connected to the pipeline register according to the control signal. Or the output of the arithmetic circuit is selected and output.
  • the clock supply unit stops the clock supply of any of the systems in accordance with the control signal.
  • An image processing method includes a scene recognition unit that recognizes a scene of input image data and outputs the recognized result as scene information, and a plurality of arithmetic circuits each connected in a pipeline.
  • a pipeline operation processing unit that includes a plurality of pipeline registers and a plurality of data selection units, performs an operation on the image data, and outputs an operation result; and at least two clock outputs,
  • a clock supply unit that supplies a clock output of one or more selected systems to the corresponding pipeline register in association with one of the pipeline registers, and based on the scene information And generating and outputting a control signal for controlling the clock output of the clock supply unit and the plurality of data selection units
  • the clock supply unit switches the state of the clock output for each of the systems based on the control signal, and the plurality of data selection units are connected to the pipeline register according to the control signal. Or the output of the arithmetic circuit is selected and output.
  • FIG. 1 is a configuration diagram according to a first embodiment of the present invention. It is a block diagram of the pipeline arithmetic processing part 11 shown in FIG. It is a figure for demonstrating the operation example of the pipeline arithmetic processing part 11 shown in FIG. 4 is a timing chart for explaining an operation example of the pipeline arithmetic processing unit 11 shown in FIG. 3. It is a figure for demonstrating the operation example of the pipeline arithmetic processing part 11 shown in FIG. 6 is a timing chart for explaining an operation example of the pipeline arithmetic processing unit 11 shown in FIG. 5. It is a block diagram which concerns on the 2nd Embodiment of this invention. It is a block diagram of the pipeline arithmetic processing part 11a shown in FIG.
  • FIG. 16 is a diagram for describing an operation example of the image processing apparatus 100b illustrated in FIG. 15. It is a block diagram which concerns on the 5th Embodiment of this invention. It is a block diagram which concerns on the 6th Embodiment of this invention.
  • FIG. 1 is a diagram illustrating a configuration example of an image processing unit 1 (arithmetic apparatus) and an image processing apparatus 100 according to the first embodiment of the present invention.
  • An image processing apparatus 100 illustrated in FIG. 1 includes an image processing unit 1, a CPU (central processing unit) 2, a clock generation unit 3, an external memory 4, and a bus 5.
  • the CPU 2 controls each unit in the image processing apparatus 100.
  • the CPU 2 supplies, for example, a control signal used by the image processing unit 1 in various arithmetic processes and signals indicating parameters to the image processing unit 1 as a CPU input signal, or the clock generation unit 3 generates a control signal.
  • the clock generation unit 3 generates and outputs a predetermined clock signal, and generates and outputs a control signal under the control of the CPU 2.
  • the external memory 4 is a volatile or non-volatile storage device. Under the control of the CPU 2, the data input via the bus 5 is written to the storage area and stored, or the data stored in the storage area is stored. Read out and output via the bus 5.
  • the external memory 4 stores, for example, image data captured by an imaging unit of a camera (not shown) or results obtained by the image processing unit 1 performing predetermined arithmetic processing on the image data captured by the imaging unit. Or the stored image data is output to a display unit (not shown).
  • the bus 5 includes a plurality of address lines, a plurality of data lines, and the like, and is used for transferring data input / output between the image processing unit 1 and the external memory 4, for example.
  • data input to and output from the image processing unit 1 is image data.
  • the image processing unit 1 includes an ASIC (Application Specific Integrated Circuit) and the like, and includes a pipeline arithmetic processing unit 11, a clock supply unit 12, and a CPU I / F (interface) 13.
  • ASIC Application Specific Integrated Circuit
  • the image processing unit 1 includes a pipeline arithmetic processing unit 11, a clock supply unit 12, and a CPU I / F (interface) 13.
  • the pipeline arithmetic processing unit 11 inputs a CPU input signal from the CPU 2 via the CPU I / F 13.
  • the pipeline arithmetic processing unit 11 also receives a clock A and a clock B that are two clock outputs from the clock supply unit 12 and a control signal from the clock generation unit 3.
  • a plurality of clock outputs may be referred to as a clock output A, a clock output B, or the like.
  • the pipeline arithmetic processing unit 11 inputs input data to be processed from the external memory 4 via the bus 5.
  • the pipeline arithmetic processing unit 11 performs predetermined arithmetic processing on input data to be processed input from the external memory 4 via the bus 5, outputs a calculation result as output data, and outputs the output data to the external memory 4. To remember.
  • FIG. 2 shows a configuration example of the pipeline arithmetic processing unit 11 shown in FIG. 2 includes a pipeline register (1) 61, a pipeline register (2) 62, a pipeline register (3) 63, a pipeline register (4) 64, and a pipeline register (5 ) 65.
  • the pipeline arithmetic processing unit 11 also includes an arithmetic circuit (1) 71, an arithmetic circuit (2) 72, an arithmetic circuit (3) 73, and an arithmetic circuit (4) 74.
  • the pipeline arithmetic processing unit 11 also includes a selector 81 and a selector 82.
  • the pipeline register (1) 61 to the pipeline register (5) 65 are configured to include flip-flops (D latches) for a plurality of bits.
  • the pipeline register (1) 61 to the pipeline register (5) 65 are synchronized with the rising edge of the clock signal input to the clock input terminal. Then, the data input to the input terminal is taken in, held and output, and the output is held until the next rise of the clock signal.
  • the arithmetic circuit (1) 71 to the arithmetic circuit (4) 74 perform a predetermined operation on the input data and output the operation result.
  • the arithmetic circuit (1) 71 to the arithmetic circuit (4) 74 use, for example, parameters supplied from the CPU 2, predetermined parameters, parameters stored in a register (not shown), past calculation results, and the like. Then, arithmetic processing such as addition / subtraction processing and remainder calculation processing is performed on the input data.
  • the selectors 81 and 82 include an input terminal 0, an input terminal 1, and an input terminal for a control signal.
  • data input to the input terminal 0 is output from the output terminal.
  • the data input to the input terminal 1 is output from the output terminal.
  • input data is input to the pipeline register (1) 61 via the bus 5.
  • the output of the pipeline register (1) 61 is input to the arithmetic circuit (1) 71.
  • the output of the arithmetic circuit (1) 71 is input to the input terminal of the pipeline register (2) 62 and the input terminal 0 of the selector 81.
  • the output of the pipeline register (2) 62 is input to the input terminal 1 of the selector 81.
  • the output of the selector 81 is input to the input terminal of the arithmetic circuit (2) 72.
  • the output of the arithmetic circuit (2) 72 is input to the input terminal of the pipeline register (3) 63.
  • the output of the arithmetic circuit (3) 73 is input to the input terminal of the pipeline register (4) 64 and the input terminal 0 of the selector 82.
  • the output of the pipeline register (4) 64 is input to the input terminal 1 of the selector 82.
  • the output of the selector 82 is input to the input terminal of the arithmetic circuit (4) 74.
  • the output of the arithmetic circuit (4) 74 is input to the input terminal of the pipeline register (5) 65.
  • the output of the pipeline register (5) 65 is input to the external memory 4 or the like via the bus 5.
  • the clock A output from the clock supply unit 12 is supplied to the clock input terminals of the odd-numbered pipeline register (1) 61, pipeline register (3) 63, and pipeline register (5) 65.
  • the clock B output from the clock supply unit 12 is supplied to the clock input terminals of the even-numbered pipeline register (2) 62 and the pipeline register (4) 64.
  • the pipeline arithmetic processing unit 11 shown in FIG. 2 includes a plurality of arithmetic circuits (1) 71 to (4) 74 and a plurality of pipeline registers (1) 61 to (5) each connected in a pipeline. 65 and a plurality of selectors 81 and 82. Then, the pipeline arithmetic processing unit 11 performs an operation on the input data by a pipeline method, and outputs an operation result.
  • the two clocks A and B output from the clock supply unit 12 are selectively supplied to any one of the pipeline registers (1) 61 to (5) 65 associated with each system.
  • the clock A is supplied to the odd-numbered pipeline registers (1) 61, (3) 63, and (5) 65 in the connection order from the input.
  • the clock B is supplied to the even-numbered pipeline registers (2) 62 and (4) 64.
  • clock A and the clock B are connected to the odd-numbered stages of the pipeline register with the clock A and the clock B to the even-numbered stages.
  • the present invention is not limited to this. May be.
  • the pipeline arithmetic processing unit 11 operates in one of two types of operation modes: a high-speed mode in which each of the pipeline registers (1) 61 to (5) 65 is operated at high speed and a low-speed mode in which each pipeline register (1) 61 to (5) 65 is operated at low speed.
  • the high-speed mode corresponds to, for example, a moving image shooting mode in which image data captured by the imaging unit of the camera and stored in the external memory 4 is processed and stored in the external memory 4.
  • the image data captured by the imaging unit of the camera and stored in the external memory 4 is subjected to image processing, stored in the external memory 4, and displayed on a display unit (not shown) in real time.
  • the moving image shooting mode has a higher frame rate and resolution of each frame than the live view shooting mode.
  • the operation mode is one piece of information corresponding to the processing amount per unit time of the calculation by the pipeline arithmetic processing unit 11 for the input data.
  • the clock generation unit 3 (control signal output unit) shown in FIG. 1 generates and outputs a control signal using information representing an operation mode supplied from the CPU 2 or the like as a parameter.
  • the control signal is a signal for controlling the clock output of the clock supply unit 12 and the plurality of selectors 81 and 82 (data selection unit).
  • ⁇ Movie shooting mode (high-speed mode)>
  • the frequency of the clock A and the clock B is 500 MHz
  • the pipeline registers (1) 61, (3) 63, and (5) 65 of the pipeline arithmetic processing unit 11 are directed to.
  • Clock A is supplied (clock A is "ON")
  • clock B is supplied to even-numbered pipeline registers (2) 62 and (4) 64 (clock B is "ON”).
  • Clock A and clock B are synchronized signals having the same period.
  • the output stage of the clock signal of the clock supply unit 12 and the wiring from the output stage to the pipeline registers (1) 61 to (5) 65 are different for each system.
  • the control signal is “1”.
  • each pipeline register (1) 61 to (5) 65 changes input / output data as shown in FIG.
  • FIG. 4 shows time changes of the control signal, clock A, clock B, input data, and outputs of the pipeline registers (1) 61 to (5) 65.
  • Data D1a to D5a are data obtained by delaying input data D1 to D5 by one clock.
  • Data D1b to D5b are the results of arithmetic processing of the data D1a to D5a by the arithmetic circuit (1) 71.
  • Data D1c to D5c are the results of the arithmetic processing of the data D1b to D5b by the arithmetic circuit (2) 72.
  • Data D1d to D5d are the results of arithmetic processing of the data D1c to D5c by the arithmetic circuit (3) 73.
  • the data D1e to D5e are the results of arithmetic processing of the data D1d to D5d by the arithmetic circuit (4) 74.
  • a clock A having a frequency of 250 MHz is supplied to the odd-numbered pipeline registers (1) 61, (3) 63 and (5) 65 of the pipeline arithmetic processing unit 11 (clock The clock B is not supplied to the even-numbered pipeline registers (2) 62 and (4) 64 (clock B is “OFF”).
  • the control signal is “0”.
  • the selectors 81 and 82 output the arithmetic circuit (1) 71 input to the input terminal 0 and the arithmetic circuit (3) 73 as shown in FIG. Since the output is output from each output terminal, the data flow is indicated by a thick arrow, as shown by the thick line arrows: pipeline register (1) 61, arithmetic circuit (1) 71, arithmetic circuit (2) 72, pipeline register (3 ) 63, arithmetic circuit (3) 73, arithmetic circuit (4) 74, and pipeline register (5) 65.
  • the pipeline supply (2) 62 and (4) 64 which do not require any operation shown by shading is stopped from the root of the clock B as shown by the broken arrow, Power consumption by the tree can be reduced.
  • Each pipeline register (1) 61 to (5) 65 changes input / output data as shown in FIG. FIG. 6 shows changes over time of the control signal, clock A, clock B, input data, and outputs of the pipeline registers (1) 61 to (5) 65.
  • Data D1a to D4a is data obtained by delaying input data D1 to D4 by one clock.
  • the data D1a to D4a are sequentially processed by the arithmetic circuit (1) 71 and the arithmetic circuit (2) 72, and the results are the data D1c to D4c (however, the data D4c is not shown).
  • Data D1e to D3e are obtained by sequentially calculating the data D1c to D3c by the arithmetic circuit (3) 73 and the arithmetic circuit (4) 74 (however, the data D3e is not shown).
  • the clock supply unit 12 shown in FIG. 1 has two clock outputs A and B, and each system is selected in association with any one of the pipeline registers (1) 61 to (5) 65.
  • the clock output A or clock outputs A and B of one or a plurality of systems are connected to the pipeline registers (1) 61, (3) 63 and (5) 65 or pipeline registers (2) 62 and (4) of the corresponding system. ) 64.
  • the clock supply unit 12 switches the clock output state for each system based on the control signal input from the clock generation unit 3.
  • switching of the state of the clock output includes changing the output of the clock signal to ON or OFF, and changing the clock frequency.
  • the clock supply unit 12 turns off the clock output, that is, when the supply of the clock output is stopped, for example, the power to charge / discharge the capacity of the clock input stage of the pipeline register of the stopped system and the wiring of the clock signal is reduced. can do.
  • the pipeline operation can be performed with an appropriate number of pipeline stages according to the clock frequency supplied to the pipeline arithmetic processing unit 11, and consumption by an unnecessary pipeline register or the like is possible. Electric power can be easily suppressed.
  • FIG. 7 is a diagram illustrating a configuration example of the image processing unit 1a (arithmetic apparatus) and the image processing apparatus 100a according to the second embodiment of the present invention.
  • the same or corresponding components as those shown in FIG. 1 are denoted by the same numerical symbols or the same numerals with alphabetic characters, and the description thereof is omitted as appropriate.
  • the image processing apparatus 100a shown in FIG. 7 includes an image processing unit 1a, a CPU 2, a clock generation unit 3a, an external memory 4, and a bus 5.
  • the clock generation unit 3a generates and outputs a predetermined clock signal, and generates and outputs a control signal under the control of the CPU 2 using, for example, information representing an operation mode supplied from the CPU 2 or the like as a parameter.
  • the control signal output by the clock generation unit 3a includes two types of control signals, that is, the control signal (1) and the control signal (2).
  • input / output data is image data.
  • the image processing unit 1a includes a pipeline arithmetic processing unit 11a, a clock supply unit 12a, and a CPU I / F 13.
  • the clock supply unit 12a switches three states of clock signals A, B, and C based on the control signal and the clock input from the clock generation unit 3a and outputs the clock signals.
  • the pipeline arithmetic processing unit 11a is provided with a new selector 83 for the data input / output path as compared with the pipeline arithmetic processing unit 11 of the first embodiment shown in FIG. Is the same except for. That is, in the pipeline arithmetic processing unit 11a, a selector 83 is newly provided between the output of the pipeline register (3) 63 and the input terminal of the arithmetic circuit (3) 73. The output of the arithmetic circuit (2) 72 is connected to the input terminal 0 of the selector 83, and the output of the pipeline register (3) 63 is connected to the input terminal 1 of the selector 83.
  • control signal (1) is input to the control signal input terminals of the selectors 81 and 82
  • control signal (2) is input to the control signal input terminal of the selector 83.
  • the clock A is input to each clock input terminal of the pipeline register (1) 61 and the pipeline register (5) 65.
  • the clock B is input to the clock input terminal of the pipeline register (3) 63.
  • the clock C is input to each clock input terminal of the pipeline register (2) 62 and the pipeline register (4) 64.
  • the pipeline arithmetic processing unit 11a has a high speed mode in which each of the pipeline registers (1) 61 to (5) 65 is operated at a high speed, a medium speed mode in which the pipeline registers (1) 61 to (5) 65 are operated at a medium speed, and a low speed mode in which the pipeline registers (1) 61 to (5) 65 are operated at a low speed. Operates in one of three operating modes.
  • the high-speed mode corresponds to, for example, a moving image shooting mode in which the image capturing unit of the camera captures an image with a resolution of 4K and performs image processing on image data stored in the external memory 4 and stores the image data in the external memory 4.
  • a moving image shooting mode in which the image capturing unit of the camera captures images with a resolution of Full HD (Full High Definition) and performs image processing on image data stored in the external memory 4 and storing the image data in the external memory 4.
  • Full HD Full Definition
  • the low-speed mode for example, live view shooting is performed in which image data captured by the imaging unit of the camera and stored in the external memory 4 is subjected to image processing, stored in the external memory 4, and displayed on the display unit in real time.
  • the moving image shooting mode has a higher frame rate and resolution of each frame than the live view shooting mode.
  • the resolution is different between the two types of video shooting modes. Therefore, in this case, the operation mode including the high speed mode, the medium speed mode, and the low speed mode is one piece of information corresponding to the processing amount per unit time of the calculation by the pipeline arithmetic processing unit 11a for the input data. be able to.
  • the clock generation unit 3a control signal output unit shown in FIG.
  • the control signal is a signal for controlling the clock output of the clock supply unit 12a and the plurality of selectors 81, 82, and 83 (data selection unit).
  • the frequencies of the clock A, the clock B, and the clock C are 500 MHz, and the clocks A to C are all “ON”.
  • Clocks A to C are synchronized signals having the same period.
  • Control signals (1) and (2) are both “1”.
  • the processing size is 3840 pixels ⁇ 2160 pixels.
  • the selectors 81 to 83 output the data input to the input terminal 1 as shown in FIG. Therefore, the flow of data is a flow through all the pipeline registers (1) 61 to (5) 65, as indicated by the bold arrows.
  • ⁇ Movie shooting mode (Full HD) (Medium speed mode)>
  • the frequency of the clock A and the clock B is 350 MHz
  • the clocks A and B are “ON”
  • the clock C is “OFF”.
  • Clocks A and B are synchronized signals having the same period.
  • the control signal (1) is “0” and the control signal (2) is “1”.
  • the processing size is 1920 pixels ⁇ 1080 pixels.
  • the selectors 81 to 83 are input by the selectors 81 and 82 as shown in FIG.
  • the data input to the terminal 0 is output, and the selector 83 outputs the data input to the input terminal 1. Therefore, as indicated by the bold arrows, the data flow is pipeline register (1) 61, arithmetic circuit (1) 71, arithmetic circuit (2) 72, pipeline register (3) 63, arithmetic circuit (3) 73.
  • the arithmetic circuit (4) 74 and the pipeline register (5) 65 are arranged in this order.
  • the pipeline supply (2) 62 and (4) 64 which are unnecessary for operation indicated by shading, is stopped from being supplied from the root of the clock C as indicated by the broken arrow. Power consumption by the tree can be reduced.
  • the frequency of the clock A is 250 MHz
  • the clock A is “ON”
  • the clocks B and C are “OFF”.
  • Control signals (1) and (2) are both “0”.
  • the processing size is 640 pixels ⁇ 480 pixels.
  • the selectors 81 to 83 output the data input to the input terminal 0 as shown in FIG. Therefore, as shown by the bold arrows, the data flow is pipeline register (1) 61, arithmetic circuit (1) 71, arithmetic circuit (2) 72, arithmetic circuit (3) 73, arithmetic circuit (4) 74, And pipeline register (5) 65.
  • the pipeline registers (2) 62, (3) 63, and (4) 64 that do not require any operation shown by shading are supplied with clocks from the roots of the clocks B and C, as indicated by the dashed arrows. Since it is stopped, power consumption by the clock tree can be reduced.
  • three clock systems can be used, and a pipeline operation can be performed with an appropriate number of pipeline stages according to the clock frequency supplied to the pipeline arithmetic processing unit 11a. Power consumption due to unnecessary pipeline registers and the like can be easily suppressed.
  • FIG. 12 shows a configuration example of the pipeline arithmetic processing unit 11b.
  • the pipeline arithmetic processing unit 11b has a configuration obtained by modifying a part of the pipeline arithmetic processing unit 11 according to the first embodiment shown in FIG.
  • the input / output signals (data, clock and control signal) of the pipeline arithmetic processing unit 11b shown in FIG. 12 are the same as the input / output signals of the pipeline arithmetic processing unit 11 shown in FIG.
  • the pipeline arithmetic processing unit 11b shown in FIG. 12 newly has three selectors 801 to 803 and three pipeline registers (11 ) 811 to (13) 813.
  • input data is input to the input terminal of the pipeline register (11) 811.
  • the output of the pipeline register (11) 811 is input to the input terminal 0 of the selector 801, and the output of the pipeline register (1) 61 is input to the input terminal 1 of the selector 801.
  • the output of the selector 801 is input to the input terminal of the arithmetic circuit (1) 71.
  • the output of the arithmetic circuit (1) 71 is input to the input terminal of the pipeline register (2) 62 and also to the input terminal 0 of the selector 81.
  • the output of the pipeline register (2) 62 is input to the input terminal 1 of the selector 81.
  • the output of the selector 81 is input to the input terminal of the arithmetic circuit (2) 72.
  • the output of the arithmetic circuit (2) 72 is input to the input terminal of the pipeline register (12) 812.
  • the output of the pipeline register (12) 812 is input to the input terminal 0 of the selector 802, and the output of the pipeline register (3) 63 is input to the input terminal 1 of the selector 802.
  • the output of the selector 802 is input to the input terminal of the arithmetic circuit (3) 73.
  • the output of the arithmetic circuit (3) 73 is input to the input terminal of the pipeline register (4) 64 and also to the input terminal 0 of the selector 82.
  • the output of the pipeline register (4) 64 is input to the input terminal 1 of the selector 82.
  • the output of the selector 82 is input to the input terminal of the arithmetic circuit (4) 74.
  • the output of the arithmetic circuit (4) 74 is input to the input terminal of the pipeline register (13) 813.
  • the output of the pipeline register (13) 813 is input to the input terminal 0 of the selector 803, and the output of the pipeline register (5) 65 is input to the input terminal 1 of the selector 803.
  • the output of the selector 803 is output data.
  • the control signals output from the clock generator 3 shown in FIG. 1 are input to the input terminals of the control signals of the selectors 801 to 803.
  • the clock A is supplied from the clock supply unit 12 shown in FIG. 1 to each clock input terminal of the pipeline registers (1) 61 to (5) 65.
  • the clock B is supplied from the clock supply unit 12 shown in FIG. 1 to each clock input terminal of the pipeline registers (11) 811 to (13) 813.
  • the pipeline arithmetic processing unit 11b shown in FIG. 12 supplies the clock A in common to the pipeline registers (1) 61 to (5) 65 included in the pipeline arithmetic processing unit 11 shown in FIG.
  • the clock B is supplied to all the pipeline registers (11) 811 to (13) 813 provided in common.
  • the pipeline arithmetic processing unit 11b shown in FIG. 12 operates in one of two types of operation modes, for example, a moving image shooting mode or a live view shooting mode.
  • the pipeline arithmetic processing unit 11b of the third embodiment and the pipeline arithmetic processing unit 11 of the first embodiment are different in the control of turning on or off the clocks A and B.
  • ⁇ Movie shooting mode (high-speed mode)>
  • the frequency of the clock A and the clock B is 500 MHz
  • the clock A is supplied to the pipeline registers (1) 61 to (5) 65 of the pipeline arithmetic processing unit 11b (clock A is “ON”), and supply of the clock B to the pipeline registers (11) 811 to (13) 813 is stopped (clock B is “OFF”).
  • the control signal is “1”.
  • the selectors 81 and 82 and the selectors 801 to 803 output the data input to the input terminal 1 as shown in FIG. Therefore, the data flow is through the pipeline registers (1) 61 to (5) 65, as indicated by the thick arrows. At this time, the supply of the pipeline registers (11) 811 to (13) 813 which do not require any operation shown by shading is stopped from the root of the clock B as indicated by the broken line arrow. Power consumption by the tree can be reduced.
  • ⁇ Live view shooting mode (low speed mode)> As shown in Table 5, a clock B having a frequency of 250 MHz is supplied to the pipeline registers (11) 811 to (13) 813 of the pipeline arithmetic processing unit 11b (clock B is “ON”), The clock A is not supplied to the line registers (1) 61 to (5) 65 (clock A is “OFF”). The control signal is “0”.
  • the selectors 81 and 82 and the selectors 801 to 803 respectively output the data input to the input terminal 0 as shown in FIG. Therefore, as indicated by the bold arrows, the data flow is as follows: pipeline register (11) 811, arithmetic circuit (1) 71, arithmetic circuit (2) 72, pipeline register (12) 812, arithmetic circuit (3) 73.
  • the operation circuit (4) 74 and the pipeline register (13) 813 are arranged in this order.
  • the pipeline registers (1) 61 to (5) 65 that are unnecessary for operation shown by shading are not supplied from the root of the clock A, as shown by the dashed arrows, Power consumption by the tree can be reduced.
  • pipeline operation can be performed with an appropriate number of pipeline stages according to the clock frequency supplied to the pipeline arithmetic processing unit 11b, and consumption by unnecessary pipeline registers and the like. Electric power can be easily suppressed.
  • FIG. 15 is a diagram illustrating a configuration example of an image processing unit 1b (arithmetic apparatus) and an image processing apparatus 100b according to the fourth embodiment of the present invention.
  • the same or corresponding components as those shown in FIG. 1 are denoted by the same numerical symbols or the same numerals with alphabetic characters, and the description thereof is omitted as appropriate.
  • the image processing apparatus 100b shown in FIG. 15 includes an image processing unit 1b, a CPU 2, a clock generation unit 3b, an external memory 4, a bus 5, and a scene recognition unit 9.
  • the scene recognition unit 9 is a configuration newly provided in the fourth embodiment, inputs image data stored in the external memory 4 as input data, generates scene information for each frame or a plurality of frames, Write back to the external memory 4 in association with the image data.
  • the scene information is information for identifying, for example, four types of scenes shown in Table 6.
  • the four types of scenes are a landscape (city), an animal, a landscape (sky), and a still life scene.
  • the scene (city) scene is characterized by high frequency components.
  • the feature of the animal scene is that the subject moves a lot.
  • the scene recognition unit 9 extracts the features of the image data by recognizing the type of the scene by analyzing the motion vector between the frames or analyzing the frequency component.
  • the scene recognition unit 9 generates and outputs information for identifying the recognized scene type as scene information. Note that the types of scenes are not limited to those shown in Table 6.
  • the image processing unit 1b includes a pipeline arithmetic processing unit 11, a clock supply unit 12b, and a CPU I / F 13.
  • the pipeline arithmetic processing unit 11 is the same as the pipeline arithmetic processing unit 11 of the first embodiment shown in FIGS. 1 and 2.
  • the clock supply unit 12b generates and outputs the clock generated by the clock generation unit 3b and also receives scene information from the external memory 4 to generate the clock A and the clock B. And supplied to the pipeline arithmetic processing unit 11b.
  • the clock supply unit 12 b inputs the scene information generated by the scene recognition unit 9 and written in the external memory 4.
  • the control signal is generated and output, and the clocks A and B are generated and output, or stopped.
  • the image processing apparatus 100b shown in FIG. 15 executes arithmetic processing by repeating the following two-step procedures (1) and (2). That is, (1) First, the scene recognition unit 9 acquires input data from the external memory 4, generates scene information, and writes it back to the external memory 4. In this case, data flows as indicated by a thick broken line arrow in FIG. (2) Next, the image processing unit 1 b acquires scene information and input data from the external memory 4.
  • the clock supply unit 12b supplies the clock generated and output by the clock generation unit 3b to the pipeline arithmetic processing unit 11 as clocks A and B according to the scene information, or stops the supply, Generate and output a control signal.
  • the pipeline arithmetic processing unit 11 executes arithmetic processing in the same manner as in the first embodiment based on the clocks A and B supplied from the clock supply unit 12b and the control signal. In this case, data is input to the image processing unit 1b as indicated by a thick arrow in FIG.
  • the clock supply unit 12b (clock supply unit and control signal output unit) itself controls the clock output of the clock supply unit 12b and the plurality of selectors 81 and 82 based on the scene information.
  • a control signal for generating is generated and output.
  • the pipeline operation can be performed with an appropriate number of pipeline stages according to the clock frequency supplied to the pipeline arithmetic processing unit 11, and an unnecessary pipeline is used. Power consumption due to a register or the like can be easily suppressed.
  • the clock supply unit 12b generates and outputs a control signal using the scene information input from the external memory 4 as a parameter, and controls the state of the clock output.
  • FIG. 17 is a diagram illustrating a configuration example of an image processing unit 1c (arithmetic apparatus) and an image processing apparatus 100c according to the fifth embodiment of the present invention.
  • the image processing apparatus 100c according to the fifth embodiment is different from the image processing apparatus 100b according to the fourth embodiment in the configuration of the image processing unit 1c that is a configuration corresponding to the image processing unit 1b illustrated in FIG. That is, the image processing unit 1c illustrated in FIG. 17 newly includes a clock frequency determination unit 14 (control signal output unit).
  • the clock frequency determination unit 14 generates a control signal based on the scene information acquired from the external memory 4 and various parameters supplied from the CPU 2 and supplies the control signal to the clock supply unit 12 and the pipeline arithmetic processing unit 11.
  • the configurations of the clock supply unit 12 and the pipeline arithmetic processing unit 11 are the same as the configurations of the clock supply unit 12 and the pipeline arithmetic processing unit 11 of the first embodiment shown in FIGS.
  • the clock output of the clock supply unit 12 and the control signal for controlling the plurality of selectors 81 and 82 are generated and output based on the scene information.
  • the pipeline operation can be performed with an appropriate number of pipeline stages according to the clock frequency supplied to the pipeline arithmetic processing unit 11 and is unnecessary. Power consumption by a pipeline register or the like can be easily suppressed.
  • FIG. 18 is a diagram illustrating a configuration example of an image processing unit 1d (arithmetic apparatus) and an image processing apparatus 100d according to the sixth embodiment of the present invention.
  • the image processing apparatus 100d of the sixth embodiment has a configuration corresponding to the image processing unit 1c shown in FIG. 17 while omitting the scene recognition unit 9.
  • the configuration of the image processing unit 1d is different. That is, in the image processing unit 1d shown in FIG.
  • the clock frequency determination unit 14d (control signal output unit) generates a control signal based on various parameters supplied from the CPU 2, and performs a pipeline operation with the clock supply unit 12.
  • the parameter supplied from the CPU 2 includes first information corresponding to the processing amount per unit time of the calculation performed by the pipeline arithmetic processing unit 11 on the input data.
  • the first information is information representing an operation mode of the imaging unit as shown in Table 3, for example.
  • the clock frequency determination unit 14d can generate and output a control signal based on at least the first information.
  • the configurations of the clock supply unit 12 and the pipeline arithmetic processing unit 11 are the same as the configurations of the clock supply unit 12 and the pipeline arithmetic processing unit 11 of the first embodiment shown in FIGS. 1 and 2.
  • the clock frequency determination unit 14 d provides the clock supply unit 12 and the pipeline arithmetic processing unit 11 with the clock output and the plurality of selectors 81 and 82. Generate and output a control signal for controlling. Further, according to the sixth embodiment, as in the first embodiment, the pipeline operation can be performed with an appropriate number of pipeline stages according to the clock frequency supplied to the pipeline arithmetic processing unit 11 and is unnecessary. Power consumption by a pipeline register or the like can be easily suppressed.
  • control signal the control signal may be changed in units of frames or in units of small blocks obtained by dividing the frame into small blocks according to the operation mode and the bus band, not the number of processing pixels.
  • the control signal can be determined by a parameter in the image processing unit.
  • the control signal is not limited thereto, and the control signal may be generated by determining the frequency division ratio of the clock in the clock generation unit.
  • At least pipeline operation can be performed with an appropriate number of pipeline stages according to the clock frequency, and power consumption by unnecessary pipeline registers and the like can be suppressed. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Image Processing (AREA)
  • Advance Control (AREA)
  • Power Sources (AREA)
  • Complex Calculations (AREA)

Abstract

実施形態の演算装置は、それぞれがパイプライン接続された複数の演算回路、複数のパイプラインレジスタおよび複数のデータ選択部から構成され、入力されたデータに演算を行い、演算結果を出力するパイプライン演算処理部と、少なくとも2系統のクロック出力を有し、前記各系統を前記各パイプラインレジスタのいずれかに対応づけて、選択された1または複数の前記系統のクロック出力を、対応する前記系統の前記パイプラインレジスタに供給するクロック供給部と、を具備し、前記クロック供給部は、入力された制御信号に基いて、前記クロック出力の状態を前記系統毎に切り替え、前記複数のデータ選択部は、前記制御信号により、前記パイプラインレジスタの出力または前記演算回路の出力のいずれかを選択して出力する。

Description

演算装置、画像処理装置および画像処理方法
 本発明は、演算装置、画像処理装置および画像処理方法に関する。
 画像処理パイプライン等のパイプライン演算処理部では、演算回路のタイミング調整を行うため、パイプラインレジスタが挿入される。このパイプラインレジスタは最大動作周波数に合わせて挿入されるため、低周波数で動作するモードにおいては、パイプラインレジスタが不要となる箇所があり、無駄な電力消費が発生する。
 特許文献1に記載されているパイプライン演算処理部では、前段の演算回路の演算結果を後段の演算回路に供給する際に、セレクタを用いて、両者の間にパイプラインレジスタを介在させるか否かが切り替え制御される。この構成によれば、クロック周波数に応じて適切なパイプライン段数を選択することができる。
 なお、特許文献1に記載されている構成では、各パイプライレジスタに対して共通のクロック信号が供給される。また、使用されないパイプラインレジスタへはリセット信号が供給されて、当該パイプラインレジスタの動作がリセット動作に制御される。
日本国特開平6-83583号公報
 しかしながら、特許文献1に記載されている構成では、リセット動作を行っているパイプラインレジスタに対してもクロックが供給され続けている。そのため、当該パイプラインレジスタのクロック入力回路や配線部によって不要な電力が消費される。
 本発明は、上記事情を考慮してなされたものであり、クロック周波数に応じて適切なパイプライン段数でパイプライン動作させると共に不要なパイプラインレジスタ等による消費電力を抑えることができる演算装置、画像処理装置および画像処理方法を提供することを目的とする。
 本発明の第1の態様に係る演算装置は、それぞれがパイプライン接続された複数の演算回路、複数のパイプラインレジスタおよび複数のデータ選択部から構成され、入力されたデータに演算を行い、演算結果を出力するパイプライン演算処理部と、少なくとも2系統のクロック出力を有し、前記各系統を前記各パイプラインレジスタのいずれかに対応づけて、選択された1または複数の前記系統のクロック出力を、対応する前記系統の前記パイプラインレジスタに供給するクロック供給部と、を具備し、前記クロック供給部は、入力された制御信号に基いて、前記クロック出力の状態を前記系統毎に切り替え、前記複数のデータ選択部は、前記制御信号により、前記パイプラインレジスタの出力または前記演算回路の出力のいずれかを選択して出力する。
 本発明の第2の態様に係る演算装置は、上記第1の態様において、入力されたパラメータに基いて、前記クロック供給部のクロック出力と前記複数のデータ選択部とを制御するための前記制御信号を生成して出力する制御信号出力部をさらに備え、前記クロック供給部は、前記制御信号に応じて、いずれかの前記系統のクロック供給を停止する。
 本発明の第3の態様に係る演算装置は、上記第2の態様において、前記パラメータは、前記入力されたデータに対する前記演算の単位時間当たりの処理量に対応する第1情報を含み、前記制御信号出力部は、少なくとも前記第1情報に基いて前記制御信号を生成して出力する。
 本発明の第4の態様に係る画像処理装置は、入力された画像データのシーンを認識し、認識した結果をシーン情報として出力するシーン認識部と、それぞれがパイプライン接続された複数の演算回路、複数のパイプラインレジスタおよび複数のデータ選択部から構成され、前記画像データに演算を行い、演算結果を出力するパイプライン演算処理部と、少なくとも2系統のクロック出力を有し、前記各系統を前記各パイプラインレジスタのいずれかに対応づけて、選択された1または複数の前記系統のクロック出力を、対応する前記系統の前記パイプラインレジスタに供給するクロック供給部と、前記シーン情報に基いて、前記クロック供給部のクロック出力と前記複数のデータ選択部とを制御するための制御信号を生成して出力する制御信号出力部とを具備し、前記クロック供給部は、前記制御信号に基いて、前記クロック出力の状態を前記系統毎に切り替え、前記複数のデータ選択部は、前記制御信号により、前記パイプラインレジスタの出力または前記演算回路の出力のいずれかを選択して出力する。
 本発明の第5の態様に係る画像処理装置は、上記第4の態様において、前記クロック供給部は、前記制御信号に応じて、いずれかの前記系統のクロック供給を停止する。
 本発明の第6の態様に係る画像処理方法は、入力された画像データのシーンを認識し、認識した結果をシーン情報として出力するシーン認識部と、それぞれがパイプライン接続された複数の演算回路、複数のパイプラインレジスタおよび複数のデータ選択部から構成され、前記画像データに演算を行い、演算結果を出力するパイプライン演算処理部と、少なくとも2系統のクロック出力を有し、前記各系統を前記各パイプラインレジスタのいずれかに対応づけて、選択された1または複数の前記系統のクロック出力を、対応する前記系統の前記パイプラインレジスタに供給するクロック供給部と、前記シーン情報に基いて、前記クロック供給部のクロック出力と前記複数のデータ選択部とを制御するための制御信号を生成して出力する制御信号出力部とを用いて、前記クロック供給部は、前記制御信号に基いて、前記クロック出力の状態を前記系統毎に切り替え、前記複数のデータ選択部は、前記制御信号により、前記パイプラインレジスタの出力または前記演算回路の出力のいずれかを選択して出力する。
 本発明の各態様によれば、クロック周波数に応じて適切なパイプライン段数でパイプライン動作させると共に不要なパイプラインレジスタ等による消費電力を抑えることができる。
本発明の第1の実施形態に係る構成図である。 図1に示すパイプライン演算処理部11の構成図である。 図2に示すパイプライン演算処理部11の動作例を説明するための図である。 図3に示すパイプライン演算処理部11の動作例を説明するためのタイミングチャートである。 図2に示すパイプライン演算処理部11の動作例を説明するための図である。 図5に示すパイプライン演算処理部11の動作例を説明するためのタイミングチャートである。 本発明の第2の実施形態に係る構成図である。 図7に示すパイプライン演算処理部11aの構成図である。 図8に示すパイプライン演算処理部11aの動作例を説明するための図である。 図8に示すパイプライン演算処理部11aの動作例を説明するための図である。 図8に示すパイプライン演算処理部11aの動作例を説明するための図である。 本発明の第3の実施形態に係る構成図である。 図12に示すパイプライン演算処理部11bの構成図である。 図12に示すパイプライン演算処理部11bの動作例を説明するための図である。 本発明の第4の実施形態に係る構成図である。 図15に示す画像処理装置100bの動作例を説明するための図である。 本発明の第5の実施形態に係る構成図である。 本発明の第6の実施形態に係る構成図である。
<第1の実施形態>
 以下、本発明の第1の実施形態について図面を参照して説明する。図1は、本発明の第1の実施形態に係る画像処理部1(演算装置)および画像処理装置100の構成例を示す図である。図1に示す画像処理装置100は、画像処理部1と、CPU(中央処理装置)2と、クロック生成部3と、外部メモリ4と、バス5とを備える。CPU2は画像処理装置100内の各部を制御する。CPU2は、例えば、画像処理部1が各種演算処理等で使用する制御用の信号やパラメータを示す信号をCPU入力信号として画像処理部1へ供給したり、クロック生成部3が制御信号を生成する際にパラメータとして用いるデータをクロック生成部3へ供給したりする。クロック生成部3は、所定のクロック信号を生成して出力するとともに、CPU2の制御の下、制御信号を生成して出力する。外部メモリ4は、揮発性または不揮発性の記憶装置であり、CPU2の制御の下、バス5を介して入力されたデータを記憶領域に書き込んで記憶したり、記憶領域に記憶しているデータを読み出してバス5を介して出力したりする。外部メモリ4は、例えば、図示していないカメラの撮像部が撮像した画像データを記憶したり、画像処理部1が撮像部が撮像した画像データに対して所定の演算処理を行った結果を記憶したり、図示していない表示部に対して記憶している画像データを出力したりする。バス5は、複数のアドレス線、複数のデータ線等を含み、例えば、画像処理部1と外部メモリ4との間で入出力されるデータを転送するために用いられる。本実施形態では、一例として、画像処理部1へ入出力されるデータが画像データであるとする。
 画像処理部1は、ASIC(Application Specific Integrated Circuit)等から構成されていて、パイプライン演算処理部11と、クロック供給部12と、CPU I/F(インタフェース)13とを備える。
 パイプライン演算処理部11は、CPU2からCPU I/F13を介してCPU入力信号を入力する。パイプライン演算処理部11は、また、クロック供給部12から2系統のクロック出力であるクロックAとクロックBとを入力するとともに、クロック生成部3から制御信号を入力する。なお、以下では、複数系統のクロック出力(あるいはクロック信号)を、クロック出力A、クロック出力B等と称する場合がある。パイプライン演算処理部11は、バス5を介して外部メモリ4から処理対象の入力データを入力する。パイプライン演算処理部11は、バス5を介して外部メモリ4から入力した処理対象の入力データに対して、所定の演算処理を行い、演算結果を出力データとして出力し、出力データを外部メモリ4に記憶する。
 ここで、図2を参照して図1に示すパイプライン演算処理部11の構成例について説明する。図2は、図1に示すパイプライン演算処理部11の構成例を示す。図2に示すパイプライン演算処理部11は、パイプラインレジスタ(1)61、パイプラインレジスタ(2)62、パイプラインレジスタ(3)63、パイプラインレジスタ(4)64、およびパイプラインレジスタ(5)65を備える。パイプライン演算処理部11は、また、演算回路(1)71、演算回路(2)72、演算回路(3)73、および演算回路(4)74を備える。パイプライン演算処理部11は、また、セレクタ81およびセレクタ82を備える。
 パイプラインレジスタ(1)61~パイプラインレジスタ(5)65は、複数ビット分のフリップフロップ(Dラッチ)を備えて構成されていて、例えばクロック入力端子に入力されたクロック信号の立ち上がりに同期して入力端子に入力されたデータを取り込んで保持および出力し、次にクロック信号が立ち上がるまでの期間、その出力を保持する。
 演算回路(1)71~演算回路(4)74は、入力されたデータに対して所定の演算を行い、演算結果を出力する。演算回路(1)71~演算回路(4)74は、例えば、CPU2から供給されたパラメータ、予め決められたパラメータ、図示していないレジスタ等に格納されているパラメータや過去の演算結果等を用いて、入力データに対して加減算処理、剰余算処理等の演算処理を行う。
 セレクタ81および82は、入力端子0と入力端子1と制御信号の入力端子とを備え、制御信号が「0」(=Lレベル)の場合に入力端子0に入力されたデータを出力端子から出力し、制御信号が「1」(=Hレベル)の場合に入力端子1に入力されたデータを出力端子から出力する。このように、演算回路(1)71、演算回路(3)73の出力を、パイプラインレジスタ(2)62、パイプラインレジスタ(4)64で処理しない場合には、制御信号により、セレクタ81、セレクタ82を切り換え、制御信号により、クロック供給部12が、クロックB出力しないようにすることで、上記処理をスキップすることができ、このことにより消費電流の削減と、処理の高速化を行うことができる。
 図2に示す例では、パイプラインレジスタ(1)61へはバス5を介して入力データが入力される。パイプラインレジスタ(1)61の出力は、演算回路(1)71へ入力される。演算回路(1)71の出力はパイプラインレジスタ(2)62の入力端子とセレクタ81の入力端子0へ入力される。パイプラインレジスタ(2)62の出力はセレクタ81の入力端子1へ入力される。セレクタ81の出力は演算回路(2)72の入力端子へ入力される。演算回路(2)72の出力はパイプラインレジスタ(3)63の入力端子へ入力される。演算回路(3)73の出力はパイプラインレジスタ(4)64の入力端子とセレクタ82の入力端子0へ入力される。パイプラインレジスタ(4)64の出力はセレクタ82の入力端子1へ入力される。セレクタ82の出力は演算回路(4)74の入力端子へ入力される。演算回路(4)74の出力はパイプラインレジスタ(5)65の入力端子へ入力される。パイプラインレジスタ(5)65の出力はバス5を介して外部メモリ4等へ入力される。
 また、奇数段のパイプラインレジスタ(1)61、パイプラインレジスタ(3)63およびパイプラインレジスタ(5)65の各クロック入力端子へは、クロック供給部12が出力したクロックAが供給される。偶数段のパイプラインレジスタ(2)62およびパイプラインレジスタ(4)64の各クロック入力端子へは、クロック供給部12が出力したクロックBが供給される。
 以上のように図2に示すパイプライン演算処理部11は、それぞれがパイプライン接続された複数の演算回路(1)71~(4)74、複数のパイプラインレジスタ(1)61~(5)65および複数のセレクタ81および82から構成されている。そして、パイプライン演算処理部11は、パイプライン方式で、入力されたデータに演算を行い、演算結果を出力する。
 上述したように、クロック供給部12が出力した2系統のクロックAおよびBは、各系統に対応づけられたパイプラインレジスタ(1)61~(5)65のいずれかに選択的に供給される。この場合、クロックAは、入力からの接続順で奇数段のパイプラインレジスタ(1)61、(3)63および(5)65へ供給される。また、クロックBは、偶数段のパイプラインレジスタ(2)62および(4)64へ供給される。
 なお、クロックAおよびクロックBの接続は、パイプラインレジスタの奇数段にクロックAを、偶数段にクロックBを接続しているが、これに限らず、それぞれのクロックをどのパイプラインレジスタに接続してもよい。
 ここで、図3~図6を参照して、図2に示すパイプライン演算処理部11の動作例について説明する。この場合、パイプライン演算処理部11は、各パイプラインレジスタ(1)61~(5)65を高速で動作させる高速モードと、低速で動作させる低速モードの2種類の動作モードのいずれかで動作する。高速モードは、例えば、カメラの撮像部が撮像して外部メモリ4に記憶した画像データを画像処理して外部メモリ4に記憶する処理を行う動画撮影モードに対応する。一方、低速モードは、例えば、カメラの撮像部が撮像して外部メモリ4に記憶した画像データを画像処理して外部メモリ4に記憶し、図示していない表示部にリアルタイムに表示させる処理を行うライブビュー撮影モードに対応する。この場合、動画撮影モードは、ライブビュー撮影モードに比較して、フレームレートおよび各フレームの解像度が高い。この場合、動作モードは、入力されたデータに対するパイプライン演算処理部11による演算の単位時間当たりの処理量に対応する情報の1つであるということができる。また、本実施形態において図1に示すクロック生成部3(制御信号出力部)は、CPU2等から供給される動作モードを表す情報をパラメータとして制御信号を生成して出力する。制御信号は、クロック供給部12のクロック出力と複数のセレクタ81および82(データ選択部)とを制御するための信号である。
<動画撮影モード(高速モード)>
 この場合、表1に示すように、クロックAおよびクロックBの周波数は500MHzであり、パイプライン演算処理部11の奇数段のパイプラインレジスタ(1)61、(3)63および(5)65へクロックAが供給され(クロックAが「ON」)、偶数段のパイプラインレジスタ(2)62および(4)64へクロックBが供給される(クロックBが「ON」)。クロックAとクロックBは同一周期の同期した信号である。ただし、クロック供給部12のクロック信号の出力段と当該出力段からパイプラインレジスタ(1)61~(5)65までの配線とは系統毎に異なる。また、制御信号は「1」である。
Figure JPOXMLDOC01-appb-T000001
 動画撮影モードでは、制御信号が「1」なので、セレクタ81および82は、図3に示すように、入力端子1に入力されたデータを出力するので、データの流れは太線の矢印で示すように、奇数段および偶数段のすべてのパイプラインレジスタ(1)61~(5)65を通る流れとなる。また、各パイプラインレジスタ(1)61~(5)65は、図4に示すように入出力データを変化させる。図4は、制御信号、クロックA、クロックB、入力データおよび各パイプラインレジスタ(1)61~(5)65の各出力の時間変化を示す。クロックAおよびクロックBの1周期T1は2ns(=1/(500MHz))である。データD1a~D5aは、入力データD1~D5を1クロック遅延したデータである。データD1a~D5aを演算回路(1)71で演算処理した結果がデータD1b~D5bである。データD1b~D5bを演算回路(2)72で演算処理した結果がデータD1c~D5cである。データD1c~D5cを演算回路(3)73で演算処理した結果がデータD1d~D5dである。そして、データD1d~D5dを演算回路(4)74で演算処理した結果がデータD1e~D5eである。
<ライブビュー撮影モード(低速モード)>
 この場合、表2に示すように、パイプライン演算処理部11の奇数段のパイプラインレジスタ(1)61、(3)63および(5)65へは周波数が250MHzのクロックAが供給され(クロックAが「ON」)、偶数段のパイプラインレジスタ(2)62および(4)64へはクロックBは供給されない(クロックBが「OFF」)。また、制御信号は「0」である。
 ライブビュー撮影モードでは、制御信号が「0」なので、セレクタ81および82は、図5に示すように、入力端子0に入力された演算回路(1)71の出力および演算回路(3)73の出力を各出力端子からそれぞれ出力するので、データの流れは太線の矢印で示すように、パイプラインレジスタ(1)61、演算回路(1)71、演算回路(2)72、パイプラインレジスタ(3)63、演算回路(3)73、演算回路(4)74、およびパイプラインレジスタ(5)65の順となる。その際、網掛けして示す動作不要なパイプラインレジスタ(2)62および(4)64については、破線の矢印で示したように、クロックBの根元からクロック供給が停止しているため、クロックツリーによる電力消費を削減することができる。
 また、各パイプラインレジスタ(1)61~(5)65は、図6に示すように入出力データを変化させる。図6は、制御信号、クロックA、クロックB、入力データおよび各パイプラインレジスタ(1)61~(5)65の各出力の時間変化を示す。クロックAの1周期T1は4ns(=1/(250MHz))である。データD1a~D4aは、入力データD1~D4を1クロック遅延したデータである。データD1a~D4aを演算回路(1)71および演算回路(2)72で順次演算処理した結果がデータD1c~D4cである(ただし、データD4cは不図示)。データD1c~D3cを演算回路(3)73および演算回路(4)74で順次演算処理した結果がデータD1e~D3eである(ただし、データD3eは不図示)。
 なお、図1に示すクロック供給部12は、2系統のクロック出力AおよびBを有し、各系統を各パイプラインレジスタ(1)61~(5)65のいずれかに対応づけて、選択された1または複数の系統のクロック出力Aまたはクロック出力AおよびBを、対応する系統のパイプラインレジスタ(1)61、(3)63および(5)65またはパイプラインレジスタ(2)62および(4)64に供給する。その際、クロック供給部12は、クロック生成部3から入力した制御信号に基いて、クロック出力の状態を系統毎に切り替える。ここで、クロック出力の状態の切り替えとは、クロック信号の出力をオンまたはオフに変化させることや、クロック周波数を変化させることを含む。また、クロック供給部12がクロック出力をオフすることすなわちクロック出力の供給を停止した場合、例えば停止した系統のパイプラインレジスタのクロック入力段やクロック信号の配線が持つ容量を充放電する電力を削減することができる。
 以上のように第1の実施形態によれば、パイプライン演算処理部11に供給されるクロック周波数に応じて適切なパイプライン段数でパイプライン動作させることができると共に不要なパイプラインレジスタ等による消費電力を容易に抑えることができる。
<第2の実施形態>
 次に、本発明の第2の実施形態について図面を参照して説明する。図7は、本発明の第2の実施形態に係る画像処理部1a(演算装置)および画像処理装置100aの構成例を示す図である。なお、図7において図1に示す構成と同一あるいは対応する構成には同一の数字の符号または同一の数字に英字を付加した符号を付けて説明を適宜省略する。
 図7に示す画像処理装置100aは、画像処理部1aと、CPU2と、クロック生成部3aと、外部メモリ4と、バス5とを備える。クロック生成部3aは、所定のクロック信号を生成して出力するとともに、CPU2の制御の下、例えば、CPU2等から供給される動作モードを表す情報をパラメータとして制御信号を生成して出力する。この場合、クロック生成部3aが出力する制御信号は、制御信号(1)と制御信号(2)の2種類の制御信号を含む。本実施形態では、入出力されるデータは画像データである。
 画像処理部1aは、パイプライン演算処理部11aと、クロック供給部12aと、CPU I/F13とを備える。クロック供給部12aは、クロック生成部3aから入力される制御信号とクロックとに基づいて、クロック出力A、BおよびCの3系統のクロック信号を状態を切り替えて出力する。
 パイプライン演算処理部11aは、図8に示すように、図2に示す第1の実施形態のパイプライン演算処理部11と比べ、データの入出力経路については新たにセレクタ83を設けている点を除いて同一である。すなわち、パイプライン演算処理部11aでは、パイプラインレジスタ(3)63の出力と演算回路(3)73の入力端子との間に新たにセレクタ83を設けている。セレクタ83の入力端子0には演算回路(2)72の出力が接続され、セレクタ83の入力端子1にはパイプラインレジスタ(3)63の出力が接続されている。
 また、セレクタ81および82の制御信号の各入力端子へは制御信号(1)が入力され、セレクタ83の制御信号の入力端子へは制御信号(2)が入力される。また、パイプラインレジスタ(1)61およびパイプラインレジスタ(5)65の各クロック入力端子にはクロックAが入力される。パイプラインレジスタ(3)63のクロック入力端子にはクロックBが入力される。そして、パイプラインレジスタ(2)62およびパイプラインレジスタ(4)64の各クロック入力端子にはクロックCが入力される。
 ここで、図9~図11を参照して、図8に示すパイプライン演算処理部11aの動作例について説明する。この場合、パイプライン演算処理部11aは、各パイプラインレジスタ(1)61~(5)65を高速で動作させる高速モードと、中速で動作させる中速モードと、低速で動作させる低速モードの3種類の動作モードのいずれかで動作する。高速モードは、例えば、カメラの撮像部が4Kの解像度で撮像して外部メモリ4に記憶された画像データを画像処理して外部メモリ4に記憶する処理を行う動画撮影モードに対応する。中速モードは、例えば、カメラの撮像部がフルHD(Full High Definition)の解像度で撮像して外部メモリ4に記憶された画像データを画像処理して外部メモリ4に記憶する処理を行う動画撮影モードに対応する。また、低速モードは、例えば、カメラの撮像部が撮像して外部メモリ4に記憶された画像データを画像処理して外部メモリ4に記憶し、表示部にリアルタイムに表示させる処理を行うライブビュー撮影モードに対応する。この場合、動画撮影モードは、ライブビュー撮影モードに比較して、フレームレートおよび各フレームの解像度が高い。また、2種類の動画撮影モードは解像度が異なる。したがって、この場合、高速モード、中速モードおよび低速モードを含む動作モードは、入力されたデータに対するパイプライン演算処理部11aによる演算の単位時間当たりの処理量に対応する情報の1つであるということができる。また、本実施形態において図7に示すクロック生成部3a(制御信号出力部)は、CPU2等から入力した動作モードを表す情報をパラメータとして制御信号を生成して出力する。制御信号は、クロック供給部12aのクロック出力と複数のセレクタ81、82および83(データ選択部)とを制御するための信号である。
<動画撮影モード(4K)(高速モード)>
 この場合、表3に示すように、クロックA、クロックBおよびクロックCの周波数は500MHzであり、クロックA~Cはすべて「ON」である。クロックA~Cは互いに同一周期の同期した信号である。また、制御信号(1)および(2)はともに「1」である。なお、処理サイズは、3840画素×2160画素である。
Figure JPOXMLDOC01-appb-T000003
 動画撮影モード(4K)では、制御信号(1)および(2)が「1」なので、セレクタ81~83は、図9に示すように、入力端子1に入力されたデータを出力する。したがって、データの流れは太線の矢印で示すように、すべてのパイプラインレジスタ(1)61~(5)65を通る流れとなる。
<動画撮影モード(フルHD)(中速モード)>
 この場合、表3に示すように、クロックAおよびクロックBの周波数は350MHzであり、クロックAおよびBは「ON」で、クロックCは「OFF」である。クロックAおよびBは互いに同一周期の同期した信号である。また、制御信号(1)は「0」であり、制御信号(2)は「1」である。なお、処理サイズは、1920画素×1080画素である。
 動画撮影モード(フルHD)では、制御信号(1)が「0」でおよび制御信号(2)が「1」なので、セレクタ81~83は、図10に示すように、セレクタ81および82が入力端子0に入力されたデータを出力し、セレクタ83が入力端子1に入力されたデータを出力する。したがって、データの流れは太線の矢印で示すように、パイプラインレジスタ(1)61、演算回路(1)71、演算回路(2)72、パイプラインレジスタ(3)63、演算回路(3)73、演算回路(4)74、およびパイプラインレジスタ(5)65の順となる。その際、網掛けして示す動作不要なパイプラインレジスタ(2)62および(4)64については、破線の矢印で示したように、クロックCの根元からクロック供給が停止しているため、クロックツリーによる電力消費を削減することができる。
<ライブビュー撮影モード(低速モード)>
 この場合、表3に示すように、クロックAの周波数は250MHzであり、クロックAは「ON」で、クロックBおよびCは「OFF」である。また、制御信号(1)および(2)はともに「0」である。なお、処理サイズは、640画素×480画素である。
 ライブビュー撮影モードでは、制御信号(1)および(2)が「0」なので、セレクタ81~83は、図11に示すように、入力端子0に入力されたデータを出力する。したがって、データの流れは太線の矢印で示すように、パイプラインレジスタ(1)61、演算回路(1)71、演算回路(2)72、演算回路(3)73、演算回路(4)74、およびパイプラインレジスタ(5)65の順となる。その際、網掛けして示す動作不要なパイプラインレジスタ(2)62、(3)63および(4)64については、破線の矢印で示したように、クロックBおよびCの根元からクロック供給が停止しているため、クロックツリーによる電力消費を削減することができる。
 以上のように第2の実施形態によれば、クロックの系統を3系統にし、パイプライン演算処理部11aに供給されるクロック周波数に応じて適切なパイプライン段数でパイプライン動作させることができると共に不要なパイプラインレジスタ等による消費電力を容易に抑えることができる。
<第3の実施形態>
 次に、本発明の第3の実施形態について図面を参照して説明する。図12は、パイプライン演算処理部11bの構成例を示す。パイプライン演算処理部11bは、図2に示す第1の実施形態に係るパイプライン演算処理部11の一部を変形した構成を有する。なお、図12に示すパイプライン演算処理部11bの入出力信号(データ、クロックおよび制御信号)は、図2に示すパイプライン演算処理部11の入出力信号と同一である。図12に示すパイプライン演算処理部11bは、図2に示す第1の実施形態のパイプライン演算処理部11と比べ、新たに3個のセレクタ801~803と、3個のパイプラインレジスタ(11)811~(13)813とを備える。
 パイプラインレジスタ(11)811の入力端子へは、パイプラインレジスタ(1)61と同じく、入力データが入力される。パイプラインレジスタ(11)811の出力はセレクタ801の入力端子0へ入力され、パイプラインレジスタ(1)61の出力はセレクタ801の入力端子1へ入力される。セレクタ801の出力は演算回路(1)71の入力端子へ入力される。
 演算回路(1)71の出力は、パイプラインレジスタ(2)62の入力端子へ入力されるとともに、セレクタ81の入力端子0へ入力される。パイプラインレジスタ(2)62の出力は、セレクタ81の入力端子1へ入力される。セレクタ81の出力は演算回路(2)72の入力端子へ入力される。
 パイプラインレジスタ(12)812の入力端子へは、パイプラインレジスタ(3)63と同じく、演算回路(2)72の出力が入力される。パイプラインレジスタ(12)812の出力はセレクタ802の入力端子0へ入力され、パイプラインレジスタ(3)63の出力はセレクタ802の入力端子1へ入力される。セレクタ802の出力は演算回路(3)73の入力端子へ入力される。
 演算回路(3)73の出力は、パイプラインレジスタ(4)64の入力端子へ入力されるとともに、セレクタ82の入力端子0へ入力される。パイプラインレジスタ(4)64の出力は、セレクタ82の入力端子1へ入力される。セレクタ82の出力は演算回路(4)74の入力端子へ入力される。
 パイプラインレジスタ(13)813の入力端子へは、パイプラインレジスタ(5)65と同じく、演算回路(4)74の出力が入力される。パイプラインレジスタ(13)813の出力はセレクタ803の入力端子0へ入力され、パイプラインレジスタ(5)65の出力はセレクタ803の入力端子1へ入力される。セレクタ803の出力が出力データである。
 セレクタ801~803の制御信号の各入力端子へは、セレクタ81および82と同じく、図1に示すクロック生成部3が出力した制御信号が入力される。パイプラインレジスタ(1)61~(5)65の各クロック入力端子には図1に示すクロック供給部12からクロックAが供給される。パイプラインレジスタ(11)811~(13)813の各クロック入力端子には図1に示すクロック供給部12からクロックBが供給される。
 図12に示すパイプライン演算処理部11bは、図2に示すパイプライン演算処理部11が有するパイプラインレジスタ(1)61~(5)65に対してすべて共通にクロックAを供給し、新たに設けたパイプラインレジスタ(11)811~(13)813に対してすべて共通にクロックBを供給する。
 次に、図13および図14を参照して、図12に示すパイプライン演算処理部11bの動作例について説明する。この動作例では、第1の実施形態と同様、パイプライン演算処理部11bは、例えば、動画撮影モードまたはライブビュー撮影モードの2種類の動作モードのいずれかで動作する。ただし、第3の実施形態のパイプライン演算処理部11bと第1の実施形態のパイプライン演算処理部11とではクロックAおよびBのオンまたはオフの制御が異なる。
<動画撮影モード(高速モード)>
 この場合、表4に示すように、クロックAおよびクロックBの周波数は500MHzであり、パイプライン演算処理部11bのパイプラインレジスタ(1)61~(5)65へはクロックAが供給され(クロックAが「ON」)、パイプラインレジスタ(11)811~(13)813へはクロックBの供給が停止される(クロックBが「OFF」)。また、制御信号は「1」である。
Figure JPOXMLDOC01-appb-T000004
 動画撮影モードでは、制御信号が「1」なので、セレクタ81および82ならびにセレクタ801~803は、図13に示すように、入力端子1に入力されたデータを出力する。したがって、データの流れは太線の矢印で示すように、パイプラインレジスタ(1)61~(5)65を通る流れとなる。その際、網掛けして示す動作不要なパイプラインレジスタ(11)811~(13)813については、破線の矢印で示したように、クロックBの根元からクロック供給が停止しているため、クロックツリーによる電力消費を削減することができる。
<ライブビュー撮影モード(低速モード)>
 この場合、表5に示すように、パイプライン演算処理部11bのパイプラインレジスタ(11)811~(13)813へは周波数が250MHzのクロックBが供給され(クロックBが「ON」)、パイプラインレジスタ(1)61~(5)65へはクロックAは供給されない(クロックAが「OFF」)。また、制御信号は「0」である。
Figure JPOXMLDOC01-appb-T000005
 ライブビュー撮影モードでは、制御信号が「0」なので、セレクタ81および82ならびにセレクタ801~803は、図14に示すように、入力端子0に入力されたデータをそれぞれ出力する。したがって、データの流れは太線の矢印で示すように、パイプラインレジスタ(11)811、演算回路(1)71、演算回路(2)72、パイプラインレジスタ(12)812、演算回路(3)73、演算回路(4)74、およびパイプラインレジスタ(13)813の順となる。その際、網掛けして示す動作不要なパイプラインレジスタ(1)61~(5)65については、破線の矢印で示したように、クロックAの根元からクロック供給が停止しているため、クロックツリーによる電力消費を削減することができる。
 以上のように第3の実施形態によれば、パイプライン演算処理部11bに供給されるクロック周波数に応じて適切なパイプライン段数でパイプライン動作させることができると共に不要なパイプラインレジスタ等による消費電力を容易に抑えることができる。
<第4の実施形態>
 次に、本発明の第4の実施形態について図面を参照して説明する。図15は、本発明の第4の実施形態に係る画像処理部1b(演算装置)および画像処理装置100bの構成例を示す図である。なお、図15において図1に示す構成と同一あるいは対応する構成には同一の数字の符号または同一の数字に英字を付加した符号を付けて説明を適宜省略する。
 図15に示す画像処理装置100bは、画像処理部1bと、CPU2と、クロック生成部3bと、外部メモリ4と、バス5と、シーン認識部9とを備える。シーン認識部9は、第4の実施形態で新たに設けられた構成であり、外部メモリ4に記憶されている画像データを入力データとして入力し、1または複数フレーム毎にシーン情報を生成し、画像データに対応づけて外部メモリ4へ書き戻す。シーン情報は、例えば表6に示す4種類のシーンを識別する情報である。この場合、4種類のシーンは、風景(街)、動物、風景(空)および静物のシーンである。風景(街)のシーンの特徴は高周波成分が多いことである。動物のシーンの特徴は被写体の動きが多いことである。風景(空)および静物のシーンの特徴は被写体の動きが少ないことである。シーン認識部9は、フレーム間で動きベクトルを分析したり、周波数成分を分析したりすることで、画像データの特徴を抽出し、シーンの種類を認識する。シーン認識部9は、認識したシーンの種類を識別する情報をシーン情報として生成および出力する。なお、シーンの種類は、表6に示すものに限定されない。
Figure JPOXMLDOC01-appb-T000006
 一方、画像処理部1bは、パイプライン演算処理部11と、クロック供給部12bと、CPU I/F13とを備える。パイプライン演算処理部11は、図1および図2に示す第1の実施形態のパイプライン演算処理部11と同一である。クロック供給部12bは、図1に示すクロック供給部12と同様にクロック生成部3bが生成し、出力したクロックを入力するとともに、シーン情報を外部メモリ4から入力し、クロックAおよびクロックBを生成してパイプライン演算処理部11bへ供給する。その際、クロック供給部12bは、図1に示すクロック供給部12と異なり、シーン認識部9が生成して外部メモリ4に書き込んだシーン情報を入力し、入力したシーン情報に基づいて表6に示すように、制御信号を生成して出力するとともに、クロックAおよびBを生成して出力したり、停止したりする。
 次に、図16を参照して、図15に示す画像処理装置100bの動作例について説明する。図15に示す画像処理装置100bは、次の2段階の手順(1)および(2)を繰り返すことで演算処理を実行する。すなわち、(1)まず、シーン認識部9が外部メモリ4から入力データを取得し、シーン情報を生成して外部メモリ4に書き戻す。この場合、図16で太線の破線の矢印で示すようにデータが流れる。(2)次に、画像処理部1bが、外部メモリ4からシーン情報および入力データを取得する。クロック供給部12bは、クロック生成部3bが生成し、出力したクロックを、シーン情報に応じてクロックAおよびBとしてパイプライン演算処理部11に対して供給したりあるいは供給を停止したりするとともに、制御信号を生成して出力する。パイプライン演算処理部11がクロック供給部12bから供給されたクロックAおよびBと制御信号に基づいて第1の実施形態と同様に演算処理を実行する。この場合、図16で太線の矢印で示すようにデータが画像処理部1bに対して入力される。
 以上のように第4の実施形態では、クロック供給部12b(クロック供給部かつ制御信号出力部)自身が、シーン情報に基いて、クロック供給部12bのクロック出力と複数のセレクタ81および82を制御するための制御信号を生成して出力する。また、第4の実施形態では、第1の実施形態と同様、パイプライン演算処理部11に供給されるクロック周波数に応じて適切なパイプライン段数でパイプライン動作させることができると共に不要なパイプラインレジスタ等による消費電力を容易に抑えることができる。
 また、第4の実施形態においてクロック供給部12bは、外部メモリ4から入力したシーン情報をパラメータとして制御信号を生成して出力するとともに、クロック出力の状態を制御する。
<第5の実施形態>
 次に、本発明の第5の実施形態について図17を参照して説明する。図17は、本発明の第5の実施形態に係る画像処理部1c(演算装置)および画像処理装置100cの構成例を示す図である。なお、図17において図15に示す構成と同一あるいは対応する構成には同一の符号を付けて説明を省略する。第5の実施形態の画像処理装置100cは、第4の実施形態の画像処理装置100bと比較し、図15に示す画像処理部1bに対応する構成である画像処理部1cの構成が異なる。すなわち、図17に示す画像処理部1cは、新たにクロック周波数判定部14(制御信号出力部)を備える。クロック周波数判定部14は、外部メモリ4から取得したシーン情報とCPU2から供給される各種パラメータとに基づいて制御信号を生成し、クロック供給部12とパイプライン演算処理部11へ供給する。クロック供給部12とパイプライン演算処理部11の構成は、図1および図2に示す第1の実施形態のクロック供給部12とパイプライン演算処理部11の構成と同一である。
 第5の実施形態によれば、第4の実施形態と同様、シーン情報に基いて、クロック供給部12のクロック出力と複数のセレクタ81および82を制御するための制御信号が生成および出力される。また、第5の実施形態によれば、第1の実施形態と同様、パイプライン演算処理部11に供給されるクロック周波数に応じて適切なパイプライン段数でパイプライン動作させることができると共に不要なパイプラインレジスタ等による消費電力を容易に抑えることができる。
<第6の実施形態>
 次に、本発明の第6の実施形態について図18を参照して説明する。図18は、本発明の第6の実施形態に係る画像処理部1d(演算装置)および画像処理装置100dの構成例を示す図である。なお、図18において図17に示す構成と同一あるいは対応する構成には同一の符号を付けて説明を省略する。第6の実施形態の画像処理装置100dは、第5の実施形態の画像処理装置100cと比較し、シーン認識部9が省略されるとともに、図17に示す画像処理部1cに対応する構成である画像処理部1dの構成が異なる。すなわち、図18に示す画像処理部1dは、クロック周波数判定部14d(制御信号出力部)が、CPU2から供給される各種パラメータとに基づいて制御信号を生成し、クロック供給部12とパイプライン演算処理部11へ供給する。CPU2から供給されるパラメータは、入力されたデータに対するパイプライン演算処理部11による演算の単位時間当たりの処理量に対応する第1情報を含む。第1情報は、例えば、表3に示すような撮像部の動作モードを表す情報である。クロック周波数判定部14dは、少なくともこの第1情報に基いて制御信号を生成して出力することができる。なお、クロック供給部12とパイプライン演算処理部11の構成は、図1および図2に示す第1の実施形態のクロック供給部12とパイプライン演算処理部11の構成と同一である。
 第6の実施形態によれば、CPU2から供給される各種パラメータに基いて、クロック周波数判定部14dは、クロック供給部12と、パイプライン演算処理部11に、クロック出力と複数のセレクタ81および82を制御するための制御信号を生成および出力する。また、第6の実施形態によれば、第1の実施形態と同様、パイプライン演算処理部11に供給されるクロック周波数に応じて適切なパイプライン段数でパイプライン動作させることができると共に不要なパイプラインレジスタ等による消費電力を容易に抑えることができる。
 以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。例えば、画像処理部1、パイプライン演算処理部11等で処理するデータは画像データに限定されない。また、例えば、クロックの系統は、高速、中速、低速の3系統までを実施形態として説明したが、それに限らず、クロックの系統は4系統以上でもよい。また、制御信号について、制御信号は処理画素数ではなく、動作モードやバス帯域に応じて、フレーム単位やフレームを小ブロックに分割した小ブロック単位で変更してもよい。また、制御信号は画像処理部内のパラメータで判定することができるが、それに限らずクロック生成部内でクロックの分周比で判別して制御信号を生成してもよい。
 上記各態様の演算装置、画像処理装置および画像処理方法によれば、少なくとも、クロック周波数に応じて適切なパイプライン段数でパイプライン動作させると共に不要なパイプラインレジスタ等による消費電力を抑えることができる。
1、1a、1b、1c、1d  画像処理部(演算装置)
100、100a、100b、100c、100d 画像処理装置
2 CPU
3、3a クロック生成部(制御信号出力部)
3b クロック生成部
4 外部メモリ
5 バス
9 シーン認識部
11、11a、11b パイプライン演算処理部
12、12a クロック供給部
12b クロック供給部(制御信号出力部)
13 CPU I/F
14、14d クロック周波数判定部(制御信号出力部)
61 パイプラインレジスタ(1)
62 パイプラインレジスタ(2)
63 パイプラインレジスタ(3)
64 パイプラインレジスタ(4)
65 パイプラインレジスタ(5)
811 パイプラインレジスタ(11)
812 パイプラインレジスタ(12)
813 パイプラインレジスタ(13)
71 演算回路(1)
72 演算回路(2)
73 演算回路(3)
74 演算回路(4)
81、82、83、801、802、803 セレクタ(データ選択部)

Claims (6)

  1.  それぞれがパイプライン接続された複数の演算回路、複数のパイプラインレジスタおよび複数のデータ選択部から構成され、入力されたデータに演算を行い、演算結果を出力するパイプライン演算処理部と、
     少なくとも2系統のクロック出力を有し、前記各系統を前記各パイプラインレジスタのいずれかに対応づけて、選択された1または複数の前記系統のクロック出力を、対応する前記系統の前記パイプラインレジスタに供給するクロック供給部と、
     を具備し、
     前記クロック供給部は、入力された制御信号に基いて、前記クロック出力の状態を前記系統毎に切り替え、
     前記複数のデータ選択部は、前記制御信号により、前記パイプラインレジスタの出力または前記演算回路の出力のいずれかを選択して出力する
     演算装置。
  2.  入力されたパラメータに基いて、前記クロック供給部のクロック出力と前記複数のデータ選択部とを制御するための前記制御信号を生成して出力する制御信号出力部をさらに備え、
     前記クロック供給部は、前記制御信号に応じて、いずれかの前記系統のクロック供給を停止する
     請求項1に記載の演算装置。
  3.  前記パラメータは、前記入力されたデータに対する前記演算の単位時間当たりの処理量に対応する第1情報を含み、
     前記制御信号出力部は、少なくとも前記第1情報に基いて前記制御信号を生成して出力する
     請求項2に記載の演算装置。
  4.  入力された画像データのシーンを認識し、認識した結果をシーン情報として出力するシーン認識部と、
     それぞれがパイプライン接続された複数の演算回路、複数のパイプラインレジスタおよび複数のデータ選択部から構成され、前記画像データに演算を行い、演算結果を出力するパイプライン演算処理部と、
     少なくとも2系統のクロック出力を有し、前記各系統を前記各パイプラインレジスタのいずれかに対応づけて、選択された1または複数の前記系統のクロック出力を、対応する前記系統の前記パイプラインレジスタに供給するクロック供給部と、
     前記シーン情報に基いて、前記クロック供給部のクロック出力と前記複数のデータ選択部とを制御するための制御信号を生成して出力する制御信号出力部と
     を具備し、
     前記クロック供給部は、前記制御信号に基いて、前記クロック出力の状態を前記系統毎に切り替え、
     前記複数のデータ選択部は、前記制御信号により、前記パイプラインレジスタの出力または前記演算回路の出力のいずれかを選択して出力する
     画像処理装置。
  5.  前記クロック供給部は、前記制御信号に応じて、いずれかの前記系統のクロック供給を停止する
     請求項4に記載の画像処理装置。
  6.  入力された画像データのシーンを認識し、認識した結果をシーン情報として出力するシーン認識部と、
     それぞれがパイプライン接続された複数の演算回路、複数のパイプラインレジスタおよび複数のデータ選択部から構成され、前記画像データに演算を行い、演算結果を出力するパイプライン演算処理部と、
     少なくとも2系統のクロック出力を有し、前記各系統を前記各パイプラインレジスタのいずれかに対応づけて、選択された1または複数の前記系統のクロック出力を、対応する前記系統の前記パイプラインレジスタに供給するクロック供給部と、
     前記シーン情報に基いて、前記クロック供給部のクロック出力と前記複数のデータ選択部とを制御するための制御信号を生成して出力する制御信号出力部と
     を用いて、
     前記クロック供給部は、前記制御信号に基いて、前記クロック出力の状態を前記系統毎に切り替え、
     前記複数のデータ選択部は、前記制御信号により、前記パイプラインレジスタの出力または前記演算回路の出力のいずれかを選択して出力する
     画像処理方法。
PCT/JP2016/065589 2016-05-26 2016-05-26 演算装置、画像処理装置および画像処理方法 WO2017203656A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/JP2016/065589 WO2017203656A1 (ja) 2016-05-26 2016-05-26 演算装置、画像処理装置および画像処理方法
JP2018519514A JPWO2017204128A1 (ja) 2016-05-26 2017-05-19 演算装置、画像処理装置および画像処理方法
PCT/JP2017/018923 WO2017204128A1 (ja) 2016-05-26 2017-05-19 演算装置、画像処理装置および画像処理方法
US16/197,744 US20190094904A1 (en) 2016-05-26 2018-11-21 Calculation device, image-processing device, and image-processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/065589 WO2017203656A1 (ja) 2016-05-26 2016-05-26 演算装置、画像処理装置および画像処理方法

Publications (1)

Publication Number Publication Date
WO2017203656A1 true WO2017203656A1 (ja) 2017-11-30

Family

ID=60411154

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/JP2016/065589 WO2017203656A1 (ja) 2016-05-26 2016-05-26 演算装置、画像処理装置および画像処理方法
PCT/JP2017/018923 WO2017204128A1 (ja) 2016-05-26 2017-05-19 演算装置、画像処理装置および画像処理方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/018923 WO2017204128A1 (ja) 2016-05-26 2017-05-19 演算装置、画像処理装置および画像処理方法

Country Status (3)

Country Link
US (1) US20190094904A1 (ja)
JP (1) JPWO2017204128A1 (ja)
WO (2) WO2017203656A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2018029782A1 (ja) * 2016-08-09 2019-06-06 オリンパス株式会社 演算処理装置、画像処理装置、および撮像装置
US11256657B2 (en) * 2019-03-26 2022-02-22 Intel Corporation System, apparatus and method for adaptive interconnect routing

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005516227A (ja) * 2002-01-28 2005-06-02 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 複数のクロックドメインを有する回路のテスト
JP2015072583A (ja) * 2013-10-02 2015-04-16 オリンパス株式会社 画像処理装置、画像処理方法、および撮像装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005516227A (ja) * 2002-01-28 2005-06-02 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 複数のクロックドメインを有する回路のテスト
JP2015072583A (ja) * 2013-10-02 2015-04-16 オリンパス株式会社 画像処理装置、画像処理方法、および撮像装置

Also Published As

Publication number Publication date
JPWO2017204128A1 (ja) 2019-03-22
WO2017204128A1 (ja) 2017-11-30
US20190094904A1 (en) 2019-03-28

Similar Documents

Publication Publication Date Title
JP2004007337A5 (ja)
JP5247568B2 (ja) 撮像装置及び撮像装置の制御方法
US11182887B2 (en) Method of processing images using high dynamic range while preserving frame rate and image processing device performing the same
WO2017204128A1 (ja) 演算装置、画像処理装置および画像処理方法
JP2004040260A (ja) 画素ブロックデータ生成装置および画素ブロックデータ生成方法
JP2024045292A (ja) パルス信号ベースの表示方法及び装置、電子デバイス、並びに媒体
JP6263025B2 (ja) 画像処理装置及びその制御方法
US10771681B2 (en) Imaging pickup apparatus of which display start timing and display quality are selectable, method of controlling the same
US10853919B2 (en) Image processing apparatus, image processing method, and program
JP2006303621A (ja) 撮像装置、映像出力方法および映像再生プログラム
JP2006094225A (ja) 画像処理装置、画像処理方法、およびそのプログラム
JP2021057824A (ja) 画像処理装置及び方法、及び撮像装置
JP5362137B2 (ja) 撮像装置及びその制御方法
JP2020076863A (ja) 表示装置および電子機器
US20190238812A1 (en) Image processing apparatus, image capturing apparatus, and image processing method
US20190149734A1 (en) Arithmetic processing device, image processing device, and imaging device
JP5278497B2 (ja) 画像処理装置及び画像処理方法
JP4802482B2 (ja) 画像処理装置及び画像処理方法
JP6320652B2 (ja) データ処理装置、データ処理方法及びデータ処理プログラム
JP2018005389A (ja) 画像変形回路、画像処理装置、及び画像変形方法
JP6399891B2 (ja) 撮像装置
JP2020102789A (ja) 表示装置
JP2018195891A (ja) 撮像装置
CN112514360A (zh) 图像处理装置
JPH0676051A (ja) 並列画像処理装置

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16903137

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16903137

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP