CN108701029A - 图像处理装置 - Google Patents
图像处理装置 Download PDFInfo
- Publication number
- CN108701029A CN108701029A CN201680082706.4A CN201680082706A CN108701029A CN 108701029 A CN108701029 A CN 108701029A CN 201680082706 A CN201680082706 A CN 201680082706A CN 108701029 A CN108701029 A CN 108701029A
- Authority
- CN
- China
- Prior art keywords
- output
- image processing
- data
- input
- module
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 1732
- 238000000034 method Methods 0.000 claims abstract description 400
- 230000008569 process Effects 0.000 claims abstract description 393
- 239000000872 buffer Substances 0.000 claims description 613
- 238000003860 storage Methods 0.000 claims description 72
- 230000005540 biological transmission Effects 0.000 claims description 28
- 241001269238 Data Species 0.000 claims description 12
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 4
- 238000007726 management method Methods 0.000 description 153
- 230000006870 function Effects 0.000 description 44
- 230000009471 action Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 26
- 238000012544 monitoring process Methods 0.000 description 18
- 238000013502 data validation Methods 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 13
- 230000003139 buffering effect Effects 0.000 description 11
- 230000008859 change Effects 0.000 description 11
- 238000012546 transfer Methods 0.000 description 9
- 238000010276 construction Methods 0.000 description 8
- 238000003384 imaging method Methods 0.000 description 8
- 208000019901 Anxiety disease Diseases 0.000 description 6
- 230000036506 anxiety Effects 0.000 description 6
- 238000012937 correction Methods 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000014759 maintenance of location Effects 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005693 optoelectronics Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 241001672694 Citrus reticulata Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000011094 buffer selection Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004080 punching Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Processing (AREA)
- Advance Control (AREA)
Abstract
图像处理装置在数据总线上连接有图像处理部,该图像处理部串联连接对所输入的数据进行预定处理的多个处理模块而构成流水线,各个处理模块依次进行处理,由此进行流水线处理,该图像处理装置对经由数据总线从与数据总线连接的数据存储部读出的数据进行图像处理,其中,图像处理部具有输入输出用模块,该输入输出用模块作为进行与处理模块分别进行的处理不同的处理的处理模块而组入流水线内,输入输出用模块将第1处理模块进行了处理后的处理数据不经由数据总线而直接输出到图像处理部的外部的外部处理部,将通过外部处理部对处理数据进行外部处理而输入的外部处理数据不经由数据总线而直接输出到第2处理模块,该第1处理模块是流水线中位于被组入的位置的前级的处理模块,该第2处理模块是流水线中位于第1处理模块的后级的处理模块。
Description
技术领域
本发明涉及图像处理装置。
背景技术
在静态图像用照相机、动态图像用照相机、医疗用内窥镜照相机或工业用内窥镜照相机等摄像装置中,通过所搭载的系统LSI等图像处理装置进行各种图像处理。并且,摄像装置根据要搭载的功能、处理能力(速度)或其价格,展开了各种机型。因此,期望在图像处理装置中具有用于实现摄像装置中搭载的功能的图像处理功能。但是,从图像处理装置的开发期间和成本的观点来看,按照摄像装置中展开的各个机型开发具有必要图像处理功能的图像处理装置并不是有益的手段。并且,仅开发具有多个图像处理功能的图像处理装置而共通地搭载于全部摄像装置成为在搭载了较少功能的摄像装置中阻碍实现低价格化的要因。
因此,以往,提出了使要执行的图像处理功能具有扩展性的结构的各种图像处理装置的技术。例如,在专利文献1中公开了利用多个ASIC实现功能和处理能力不同的各种图像处理装置的技术。在专利文献1中,仅使用具有图像处理所需要的最低限度的功能的基本功能ASIC,以最优成本实现低功能图像处理装置,使用基本功能ASIC和具有多个功能的高功能ASIC,实现多功能的高性能图像处理装置。通过将专利文献1所公开的技术应用于摄像装置,认为能够展开各种机型的摄像装置。即,认为通过仅搭载低功能的图像处理装置,能够实现低成本的摄像装置,通过搭载低功能的图像处理装置和高功能的图像处理装置双方,能够实现高功能且处理能力较高的摄像装置。
现有技术文献
专利文献
专利文献1:日本特开2008-301090号公报
发明内容
发明要解决的课题
但是,在摄像装置中搭载的多个图像处理装置中,在内置的多个处理块中共享所连接的一个DRAM(Dynamic Random Access Memory:动态随机存取存储器)。在这种图像处理装置中,内置的多个处理块与图像处理装置内部的数据总线连接,各个处理块通过经由数据总线的DMA(Direct Memory Access:直接内存访问)访问DRAM。
并且,在这种结构的图像处理装置所具有的处理块中,还存在通过构成为串联连接多个处理模块而进行流水线处理的处理块。例如,在图像处理装置中,摄像装置中的进行一连串图像处理的图像处理部是进行流水线处理的结构的处理块。在这种结构的图像处理装置中,通过串联连接进行各个图像处理的多个图像处理模块而得到的图像处理部中的流水线处理,实现摄像装置中的一连串图像处理的高速化。并且,在这种结构的图像处理装置中,除了图像处理部所具有的数据输入侧和输出侧的处理模块以外,不存在进行流水线处理的各个图像处理模块针对DRAM的访问,因此,避免了进行图像处理时的DRAM的总线带宽的紧张,还减少了图像处理装置的消耗电力。
但是,在摄像装置中,以功能的扩展为目的,有时请求在构成流水线进行的任意一个图像处理之间插入用于扩展功能的其他图像处理。
但是,在专利文献1所公开的技术中,公开了接着低功能图像处理装置而由高性能图像处理装置进行处理的结构、利用与低功能图像处理装置和高性能图像处理装置分开设置的CPU和存储器的结构,但是,没有公开在低功能图像处理装置进行处理的中途由高性能图像处理装置进行处理、并再次由低功能图像处理装置进行处理的结构。即,在专利文献1所公开的技术中,没有公开用于在低功能图像处理装置进行处理的中途插入高性能图像处理装置的处理的技术。因此,在专利文献1所公开的技术中,无法实现满足为了扩展功能而在进行流水线处理的任意一个图像处理之间插入其他图像处理这样的摄像装置中进行的请求的结构。
假设在应用专利文献1所公开的技术的图像处理装置中,当考虑在通过流水线处理进行的任意一个图像处理之间插入其他图像处理来扩展功能的结构时,考虑经由DRAM进行数据的交接的结构。在该结构的情况下,需要以下步骤的处理。
(步骤1):低功能图像处理装置所具有的图像处理部将插入要扩展的功能之前进行了图像处理的数据存储在DRAM中。更具体而言,低功能图像处理装置所具有的图像处理部通过经由数据总线的DMA从与低功能图像处理装置连接的DRAM取得要进行处理的对象的数据,通过流水线处理,通过经由数据总线的DMA将插入用于扩展功能的其他图像处理之前进行了图像处理的数据存储在与低功能图像处理装置连接的DRAM中。
(步骤2):从低功能图像处理装置向高性能图像处理装置转送数据。更具体而言,低功能图像处理装置所具有的外部接口部通过经由数据总线的DMA从与低功能图像处理装置连接的DRAM取得步骤1中存储的数据,将其转送到高性能图像处理装置所具有的外部接口部。高性能图像处理装置所具有的外部接口部通过经由数据总线的DMA将从低功能图像处理装置所具有的外部接口部转送的数据存储在与高性能图像处理装置连接的DRAM中。
(步骤3):高性能图像处理装置所具有的图像处理部将进行了要扩展的功能的图像处理的数据存储在DRAM中。更具体而言,高性能图像处理装置所具有的图像处理部通过经由数据总线的DMA从与高性能图像处理装置连接的DRAM取得从低功能图像处理装置转送的数据,通过经由数据总线的DMA将进行了用于扩展功能的图像处理的数据存储在与高性能图像处理装置连接的DRAM中。
(步骤4):从高性能图像处理装置向低功能图像处理装置转送数据。更具体而言,高性能图像处理装置所具有的外部接口部通过经由数据总线的DMA从与高性能图像处理装置连接的DRAM取得步骤3中存储的数据,将其转送到低功能图像处理装置所具有的外部接口部。低功能图像处理装置所具有的外部接口部通过经由数据总线的DMA将从高性能图像处理装置所具有的外部接口部转送的数据存储在与低功能图像处理装置连接的DRAM中。
(步骤5):低功能图像处理装置所具有的图像处理部对进行了要扩展的功能的图像处理的数据进行后续图像处理。更具体而言,低功能图像处理装置所具有的图像处理部通过经由数据总线的DMA从与低功能图像处理装置连接的DRAM取得从高性能图像处理装置转送的数据,进行要进行流水线处理的后续图像处理,通过经由数据总线的DMA将完成了流水线处理中的全部图像处理的数据存储在与低功能图像处理装置连接的DRAM中。
这样,当考虑在构成流水线的图像处理装置中应用专利文献1所公开的技术而在任意一个图像处理之间插入其他图像处理的情况时,需要进行与各个图像处理装置连接的DRAM之间的数据转送,图像处理装置中构成的流水线处理被切断,无法高速进行一连串图像处理。
因此,在进行流水线处理的结构的图像处理装置中,很难应用专利文献1所公开的技术。即,在专利文献1所公开的技术中,很难实现在构成流水线而进行一连串图像处理的任意一个图像处理模块之间插入进行其他图像处理的图像处理模块来扩展图像处理的功能的结构。
另外,认为在不进行流水线处理的结构的图像处理装置中能够应用专利文献1所公开的技术,但是,该情况下,需要进行与各个图像处理装置连接的DRAM之间的数据转送,因此,无法避免进行图像处理时的DRAM的总线带宽的紧张,无法减少图像处理装置的消耗电力。这是因为,在进行流水线处理的结构的图像处理装置中,在进行流水线处理的全部图像处理模块的图像处理完成之前不访问DRAM,由此,实现由于减少访问DRAM所需要的处理时间而成的图像处理的高速化、进行图像处理时的DRAM的总线带宽的紧张的避免、图像处理装置的消耗电力的减少等。
本发明是根据上述课题认识而完成的,其目的在于,提供在进行流水线处理的结构的图像处理装置中能够在通过流水线进行的一连串图像处理之间插入其他图像处理的图像处理装置。
用于解决课题的手段
根据本发明的第1方式,图像处理装置在数据总线上连接有图像处理部,该图像处理部串联连接对所输入的数据进行预定处理的多个处理模块而构成流水线,各个所述处理模块依次进行所述处理,由此进行流水线处理,该图像处理装置对经由所述数据总线从与所述数据总线连接的数据存储部读出的数据进行图像处理,其中,所述图像处理部具有输入输出用模块,该输入输出用模块作为进行与所述处理模块分别进行的所述处理不同的处理的所述处理模块而组入所述流水线内,所述输入输出用模块将第1处理模块进行了所述处理后的处理数据不经由所述数据总线而直接输出到所述图像处理部的外部的外部处理部,将通过所述外部处理部对所述处理数据进行外部处理而输入的外部处理数据不经由所述数据总线而直接输出到第2处理模块,该第1处理模块是所述流水线中位于被组入的位置的前级的所述处理模块,该第2处理模块是所述流水线中位于所述第1处理模块的后级的所述处理模块。
根据本发明的第2方式,图像处理装置在数据总线上连接有图像处理部,该图像处理部串联连接对所输入的数据进行预定处理的多个处理模块而构成流水线,各个所述处理模块依次进行所述处理,由此进行流水线处理,该图像处理装置对经由所述数据总线从与所述数据总线连接的数据存储部读出的数据进行图像处理,其中,所述图像处理部具有输入输出用模块,该输入输出用模块作为进行与所述处理模块分别进行的所述处理不同的处理的所述处理模块而组入所述流水线内,所述输入输出用模块将第1处理模块进行了所述处理后的处理数据不经由所述数据总线而直接输出到所述图像处理部的外部的外部处理部,或者,将从所述图像处理部的外部的外部处理部输入的外部处理数据不经由所述数据总线而直接输出到第2处理模块,或者,进行将所述处理数据不经由所述数据总线而直接输出到所述图像处理部的外部的外部处理部和将通过所述外部处理部对所述处理数据进行外部处理而输入的外部处理数据不经由所述数据总线而直接输出到所述第2处理模块这双方的处理,该第1处理模块是所述流水线中位于被组入的位置的前级的所述处理模块,该第2处理模块是所述流水线中位于被组入的位置的后级的所述处理模块。
根据本发明的第3方式,在上述第1方式或上述第2方式的图像处理装置中,也可以是,所述输入输出用模块具有:输出缓冲器部,其暂时存储所述处理数据;以及输入缓冲器部,其暂时存储所述外部处理数据,在所述输出缓冲器部中临时存储所述第1处理模块输出的所述处理数据,根据来自所述外部处理部的请求而输出所述输出缓冲器部中存储的所述处理数据,在所述输入缓冲器部中临时存储所述外部处理部输出的所述外部处理数据,根据来自所述第2处理模块的请求而输出所述输入缓冲器部中存储的所述外部处理数据。
根据本发明的第4方式,在上述第3方式的图像处理装置中,也可以是,所述输入输出用模块还具有:处理模块输入控制部,其根据所述输出缓冲器部的存储容量,控制对所述输出缓冲器部的所述处理数据的写入;外部输出控制部,其根据所述输出缓冲器部中存储的所述处理数据的数据量,控制从所述输出缓冲器部的所述处理数据的读出;外部输入控制部,其根据所述输入缓冲器部的存储容量,控制对所述输入缓冲器部的所述外部处理数据的写入;以及处理模块输出控制部,其根据所述输入缓冲器部中存储的所述外部处理数据的数据量,控制从所述输入缓冲器部的所述外部处理数据的读出。
根据本发明的第5方式,在上述第4方式的图像处理装置中,也可以是,所述处理模块输入控制部按照所述第1处理模块进行所述处理的每个单位,对所述输出缓冲器部写入所述处理数据,所述外部输出控制部按照所述外部处理部进行所述外部处理的每个单位,读出所述输出缓冲器部中存储的所述处理数据,所述外部输入控制部按照所述外部处理部进行所述外部处理的每个单位,对所述输入缓冲器部写入所述外部处理数据,所述处理模块输出控制部按照所述第2处理模块进行所述处理的每个单位,读出所述输入缓冲器部中存储的所述外部处理数据。
根据本发明的第6方式,在上述第5方式的图像处理装置中,也可以是,所述外部输出控制部将输出目的地信息附加于所述处理数据,该输出目的地信息表示对多个所述外部处理部中的哪个所述外部处理部输出所述处理数据。
根据本发明的第7方式,在上述第6方式的图像处理装置中,也可以是,在所述外部处理部对所述处理数据进行的所述外部处理的设定信息所表示的附加信息中包含所述输出目的地信息。
根据本发明的第8方式,在上述第1方式~上述第7方式中的任意一个方式的图像处理装置中,也可以是,所述输入输出用模块被组入于所述流水线的开头、中途和最末尾中的至少一个位置。
根据本发明的第9方式,在上述第1方式或上述第2方式的图像处理装置中,也可以是,所述图像处理装置还具有外部接口部,该外部接口部在与所述外部处理部之间进行数据的输入输出,所述输入输出用模块经由所述外部接口部在与所述外部处理部之间进行数据传送。
根据本发明的第10方式,在上述第5方式的图像处理装置中,也可以是,所述处理数据和所述外部处理数据是图像数据,所述第1处理模块和所述第2处理模块进行所述处理的单位以及所述外部处理部进行所述外部处理的单位分别是将1帧的所述图像数据分割成预定的多个块的尺寸,所述输出缓冲器部的存储容量和所述输入缓冲器部的存储容量小于用于存储1帧的所述图像数据中包含的像素数据的存储容量。
发明效果
根据上述各方式,得到能够提供在进行流水线处理的结构的图像处理装置中能够在通过流水线进行的一连串图像处理之间插入其他图像处理的图像处理装置这样的效果。
附图说明
图1是示出本发明的第1实施方式中的图像处理装置的概略结构的框图。
图2是说明本发明的第1实施方式中的图像处理装置内的图像处理部所具有的输入输出用模块的结构的概念的框图。
图3是示出本发明的第1实施方式中的图像处理装置内的图像处理部所具有的输入输出用模块的概略结构的框图。
图4是示出本发明的第1实施方式中的图像处理装置内的图像处理部所具有的输入输出用模块中的外部输出部的动作的一例的时序图。
图5是示出本发明的第1实施方式中的图像处理装置内的图像处理部所具有的输入输出用模块中的外部输入部的动作的一例的时序图。
图6是示意地示出包含本发明的第1实施方式中的图像处理装置内的图像处理部所具有的输入输出用模块的像素数据流的图。
图7是示出本发明的第2实施方式中的图像处理装置的概略结构的框图。
图8是示出本发明的第2实施方式中的图像处理装置内的图像处理部所具有的输入输出用模块的概略结构的框图。
图9是示出本发明的第2实施方式中的图像处理装置内的图像处理部所具有的输入输出用模块输出的外部输出数据的结构的一例的图。
图10是示意地示出包含本发明的第2实施方式中的图像处理装置内的图像处理部所具有的输入输出用模块的像素数据流的图。
图11是示出本发明的第3实施方式中的图像处理装置的概略结构的框图。
图12是示意地示出包含本发明的第3实施方式中的图像处理装置内的图像处理部所具有的输入输出用模块的像素数据流的图。
图13是示出搭载了本发明的第1实施方式的图像处理装置的第1应用例的概略结构的框图。
图14是示意地示出包含本发明的第1应用例中的图像处理装置内的图像处理部所具有的输入输出用模块的像素数据流的图。
图15是示出搭载了本发明的第1实施方式的图像处理装置的第2应用例的概略结构的框图。
图16是示意地示出包含本发明的第2应用例中的图像处理装置内的图像处理部所具有的输入输出用模块的像素数据流的图。
具体实施方式
(第1实施方式)
下面,参照附图对本发明的实施方式进行说明。另外,在以下的说明中,对本发明的第1实施方式的图像处理装置例如搭载于静态图像用照相机等摄像装置(以下称为“摄像装置100”)的情况进行说明。图1是示出本发明的第1实施方式中的图像处理装置的概略结构的框图。另外,在图1中,作为与本发明的第1实施方式的图像处理装置1相关联的摄像装置100内的结构要素,一并示出DRAM500、外部扩展处理装置600、DRAM700,该外部扩展处理装置600具有DMA总线610、扩展处理模块620和外部接口(I/F)部630。
图1所示的图像处理装置1具有DMA总线10、图像处理部20、外部接口(I/F)部30。并且,图像处理部20具有连接切换部21、输入DMA模块22、3个图像处理模块23-1~图像处理模块23-3、输入输出用模块24、输出DMA模块25。
另外,在图1中,省略摄像装置100所具有的各个结构要素和图像处理装置1中与DMA总线10连接的其他结构要素的图示。另外,作为图像处理装置1所具有的其他结构要素,例如存在以下部分等:摄像处理部,其控制对由摄像装置100所具有的镜头成像的被摄体的光学像进行光电转换的固体摄像元件;记录处理部,其进行用于记录由图像处理部20处理后的图像的数据的记录处理;以及显示处理部,其用于使图像处理装置1所具有的显示部显示由图像处理部20处理后的图像的数据。并且,例如,作为摄像装置100所具有的其他结构要素,还存在对图像处理装置1或外部扩展处理装置600所具有的各个结构要素进行控制的系统控制部等。
DRAM500是与图像处理装置1内的DMA总线10连接、且存储摄像装置100中处理的各种数据的数据存储部。例如,DRAM500存储从摄像装置100所具有的未图示的固体摄像元件输出的静态图像的数据。在图像处理装置1中,将DRAM500中存储的1帧的静态图像的数据分割成预定的多个小块,图像处理部20按照各个块进行图像处理。在以下的说明中,将对1帧的静态图像的数据进行分割后的各个块中包含的数据称为“块图像数据”。
图像处理部20是对所输入的块图像数据进行图像处理装置1中预定的各种图像处理的流水线处理部。更具体而言,图像处理部20通过串联连接输入DMA模块22、图像处理模块23-1~图像处理模块23-3和输出DMA模块25而得到的流水线处理,依次进行图像处理装置1中的图像处理。图像处理部20例如按照预定数量的列从DRAM500读出块图像数据中包含的各个像素的数据(以下称为“像素数据”),将所读出的像素数据作为一个处理单位进行图像处理。在以下说明中,将图像处理部20进行图像处理的一个处理单位的像素数据中、相同列中包含的连续的多个像素数据称为“单元行”。
并且,图像处理部20具有选择流水线处理中包含的图像处理的功能、变更通过流水线处理进行的图像处理的顺序的功能、即变更流水线的结构的功能。更具体而言,图像处理部20能够构成依次进行分别基于图像处理模块23-1~图像处理模块23-3的图像处理的流水线,但是,还能够构成通过图像处理模块23-1~图像处理模块23-3中的任意一个或多个进行图像处理的流水线、变更图像处理模块23-1~图像处理模块23-3的顺序来进行图像处理的流水线。在以下的说明中,在不进行区分来表示各个图像处理模块23-1~图像处理模块23-3时,称为“图像处理模块23”。另外,图像处理部20中的流水线的结构例如通过未图示的系统控制部进行变更(设定)。
并且,图像处理部20具有将与图像处理模块23-1~图像处理模块23-3分别执行的图像处理不同的图像处理组入流水线处理中的功能。这里,组入流水线处理中的图像处理是图像处理模块23-1~图像处理模块23-3中的任意一个图像处理模块23中均不执行的图像处理,是由图像处理部20的外部所具有的结构要素执行的图像处理(以下称为“外部图像处理”)。
在图1所示的摄像装置100的结构中,能够将图像处理装置1的外部所具有的外部扩展处理装置600执行的图像处理作为外部图像处理而组入流水线处理中。在图像处理部20中,通过将输入输出用模块24作为执行外部图像处理的图像处理模块而组入流水线的结构内,外部扩展处理装置600执行的外部图像处理被组入流水线处理中。另外,如上所述,图像处理部20中的流水线的结构例如通过未图示的系统控制部进行变更(设定)。因此,在图像处理部20中,例如,通过未图示的系统控制部,与上述变更流水线的结构的功能的设定一起,进行是否将输入输出用模块24组入流水线中的设定、以及组入流水线中时的输入输出用模块24的位置的设定等。
图1中示出如下结构:通过在图像处理模块23-2与图像处理模块23-3之间组入输入输出用模块24,由外部扩展处理装置600执行的外部图像处理被组入流水线中。即,在图1所示的图像处理部20中,示出构成依次进行基于图像处理模块23-1的图像处理、基于图像处理模块23-2的图像处理、基于外部扩展处理装置600的图像处理和基于图像处理模块23-3的图像处理的流水线的状态。
另外,如上所述,将输入输出用模块24组入流水线中的位置例如通过未图示的系统控制部进行设定。即,将输入输出用模块24组入流水线中的位置不限于图1所示的位置,能够组入流水线内的任意位置。即,输入输出用模块24能够组入流水线的开头、中途、最末尾等任意位置。
连接切换部21对图像处理部20所具有的各个结构要素输出的像素数据的输出目的地进行切换,即,对图像处理部20所具有的各个结构要素彼此的连接进行切换。换言之,连接切换部21对图像处理部20进行的图像处理的顺序、以及组入流水线中的外部图像处理的位置进行变更。
例如,在通过图像处理部20仅进行图像处理模块23-2的图像处理的情况下,连接切换部21对各个结构要素的连接进行切换,以连接输入DMA模块22的输出端子和图像处理模块23-2的输入端子,并连接图像处理模块23-2的输出端子和输出DMA模块25的输入端子。并且,例如,在通过图像处理部20按照图像处理模块23-3、图像处理模块23-1的顺序进行图像处理的情况下,连接切换部21对各个结构要素的连接进行切换,以连接输入DMA模块22的输出端子和图像处理模块23-3的输入端子,并连接图像处理模块23-3的输出端子和图像处理模块23-1的输入端子,并连接图像处理模块23-1的输出端子和输出DMA模块25的输入端子。并且,例如,在通过图像处理部20按照图像处理模块23-2、外部扩展处理装置600的顺序进行图像处理的情况下,连接切换部21对各个结构要素的连接进行切换,以连接输入DMA模块22的输出端子和图像处理模块23-2的输入端子,并连接图像处理模块23-2的输出端子和输入输出用模块24的输入端子,并连接输入输出用模块24的输出端子和输出DMA模块25的输入端子。另外,连接切换部21例如根据来自未图示的系统控制部的控制,进行图像处理部20所具有的各个结构要素的连接的切换。
另外,在图像处理部20中,如上所述,输入输出用模块24还能够组入流水线的开头、中途、最末尾等任意位置。例如,在通过图像处理部20按照外部扩展处理装置600、图像处理模块23-1的顺序进行图像处理的情况下,即,将输入输出用模块24组入流水线的开头的情况下,连接切换部21对各个结构要素的连接进行切换,以连接输入DMA模块22的输出端子和输入输出用模块24的输入端子,并连接输入输出用模块24的输出端子和图像处理模块23-1的输入端子,并连接图像处理模块23-1的输出端子和输出DMA模块25的输入端子。并且,例如,在通过图像处理部20按照图像处理模块23-2、外部扩展处理装置600、图像处理模块23-3的顺序进行图像处理的情况下,即,将输入输出用模块24组入流水线的中途的情况下,连接切换部21对各个结构要素的连接进行切换,以连接输入DMA模块22的输出端子和图像处理模块23-2的输入端子,并连接图像处理模块23-2的输出端子和输入输出用模块24的输入端子,并连接输入输出用模块24的输出端子和图像处理模块23-3的输入端子,并连接图像处理模块23-3的输出端子和输出DMA模块25的输入端子。并且,例如,在通过图像处理部20按照图像处理模块23-3、外部扩展处理装置600的顺序进行图像处理的情况下,即,将输入输出用模块24组入流水线的最末尾的情况下,连接切换部21对各个结构要素的连接进行切换,以连接输入DMA模块22的输出端子和图像处理模块23-3的输入端子,并连接图像处理模块23-3的输出端子和输入输出用模块24的输入端子,并连接输入输出用模块24的输出端子和输出DMA模块25的输入端子。
另外,在图像处理部20中,还能够仅将输入输出用模块24组入流水线中。更具体而言,连接切换部21对各个结构要素的连接进行切换,以连接输入DMA模块22的输出端子和输入输出用模块24的输入端子,并连接输入输出用模块24的输出端子和输出DMA模块25的输入端子。由此,在图像处理部20中,能够仅进行输入输出用模块24、即基于外部扩展处理装置600的外部图像处理作为流水线处理。
输入DMA模块22是如下的处理模块:通过经由DMA总线10的DMA,按照每个单元行读出DRAM500中存储的块图像数据中包含的各个像素数据,经由连接切换部21将所读出的像素数据输出到作为接着进行图像处理的处理模块的任意一个图像处理模块23或输入输出用模块24。输入DMA模块22例如根据来自未图示的系统控制部的控制,经由DMA总线10从DRAM500读出像素数据,将所读出的像素数据输出到通过连接切换部21切换了连接后的连接目的地的任意一个图像处理模块23或输入输出用模块24。
另外,输入DMA模块22也可以构成为具有能够暂时存储预定数量的单元行的像素数据的数据缓冲器。在该结构的情况下,输入DMA模块22可以在数据缓冲器中暂时存储经由DMA总线10从DRAM500读出的像素数据,将数据缓冲器中暂时存储的像素数据输出到通过连接切换部21切换了连接后的连接目的地的任意一个图像处理模块23或输入输出用模块24。
图像处理模块23-1~图像处理模块23-3分别是如下的处理模块:对从通过连接切换部21切换了连接后的连接目的地的输入DMA模块22、其他图像处理模块23或输入输出用模块24经由连接切换部21输入的像素数据,进行预定的各种数字图像处理。在图像处理模块23-1~图像处理模块23-3分别进行的图像处理中,存在各种图像处理。在图像处理模块23进行的图像处理中,例如包含生成与各个像素数据对应的Y(亮度)信号和C(颜色)信号的YC处理、降低各个像素数据中包含的噪声的噪声降低处理、抑制由各个像素数据表示的图像中的高频成分的LPF处理、对图像中的被摄体的轮廓进行强调的边缘强调处理等。图像处理模块23-1~图像处理模块23-3分别例如根据来自未图示的系统控制部的控制,对经由连接切换部21输入的像素数据实施图像处理,将实施了图像处理的像素数据输出到通过连接切换部21切换了连接后的连接目的地的其他图像处理模块23、输入输出用模块24或输出DMA模块25。
另外,也可以构成为在图像处理模块23-1~图像处理模块23-3中分别具有能够暂时存储预定数量的单元行的像素数据的数据缓冲器。在该结构的情况下,图像处理模块23-1~图像处理模块23-3可以分别在数据缓冲器中暂时存储经由连接切换部21输入的像素数据,将对数据缓冲器中暂时存储的像素数据实施了图像处理后的像素数据输出到通过连接切换部21切换了连接后的连接目的地的其他图像处理模块23、输入输出用模块24或输出DMA模块25。或者,图像处理模块23-1~图像处理模块23-3可以分别对经由连接切换部21输入的像素数据实施图像处理后,将其暂时存储在数据缓冲器中,将数据缓冲器中暂时存储的像素数据输出到通过连接切换部21切换了连接后的连接目的地的其他图像处理模块23、输入输出用模块24或输出DMA模块25。
另外,在以下的说明中,在与DRAM500中存储的进行图像处理的对象的像素数据进行区分来表示实施了图像处理后的像素数据的情况下,将其称为“处理像素数据”。
输入输出用模块24是用于将由图像处理部20的外部所具有的结构要素执行的外部图像处理组入流水线处理中的接口模块。输入输出用模块24例如根据来自未图示的系统控制部的控制,不经由DMA总线10而将从通过连接切换部21切换了连接后的连接目的地的输入DMA模块22、图像处理模块23中的任意一方经由连接切换部21输入的像素数据直接输出到所连接的外部接口部30。并且,输入输出用模块24例如根据来自未图示的系统控制部的控制,将不经由DMA总线10而从所连接的外部接口部30直接输入的实施了外部图像处理后的像素数据输出到通过连接切换部21切换了连接后的连接目的地的图像处理模块23中的任意一方或输出DMA模块25。
另外,与输入输出用模块24的结构、以及输入输出用模块24将外部图像处理组入图像处理部20的流水线处理中时的动作等有关的详细说明在后面叙述。另外,在以下的说明中,在与DRAM500中存储的进行图像处理的对象的像素数据、以及图像处理模块23中的任意一方实施了图像处理后的像素数据(处理像素数据)进行区分来表示实施了外部图像处理后的像素数据的情况下,将实施了外部图像处理后的像素数据称为“外部处理像素数据”。
输出DMA模块25是如下的处理模块:用于通过经由DMA总线10的DMA,将从通过连接切换部21切换了连接后的连接目的地的图像处理模块23中的任意一方经由连接切换部21输入的处理像素数据或从输入输出用模块24经由连接切换部21输入的外部处理像素数据写入(存储)到DRAM500中。输出DMA模块25例如根据来自未图示的系统控制部的控制,经由DMA总线10将经由连接切换部21输入的处理像素数据或外部处理像素数据输出到DRAM500。
另外,输出DMA模块25也可以构成为具有能够暂时存储预定数量的单元行的处理像素数据或外部处理像素数据的数据缓冲器。在该结构的情况下,输出DMA模块25可以在数据缓冲器中暂时存储经由连接切换部21输入的处理像素数据或外部处理像素数据,经由DMA总线10将数据缓冲器中暂时存储的处理像素数据或外部处理像素数据输出到DRAM500。
另外,在以下的说明中,在不进行区分来表示图像处理模块23分别输出的处理像素数据和输入输出用模块24输出的外部处理像素数据的情况下,简称为“处理像素数据”。
这样,在图像处理部20中,各个图像处理模块23将1帧的静态图像的数据分割成块图像数据,例如,针对各个块图像数据中包含的像素数据,按照每个单元行依次进行与来自未图示的系统控制部的控制对应的图像处理,由此,对各个块图像数据进行基于流水线处理的一连串图像处理。并且,在图像处理部20中,例如,根据来自未图示的系统控制部的控制,使图像处理部20的外部所具有的结构要素(图1中为外部扩展处理装置600)执行任意一个图像处理模块23中均不执行的外部图像处理,而将其组入流水线处理中。此时,在图像处理部20中,将输入输出用模块24作为执行外部图像处理的图像处理模块而组入流水线的结构中。由此,在图像处理装置1中,即使是无法由图像处理部20执行的图像处理,图像处理部20也能够与进行流水线处理的情况同样进行处理。即,在图像处理装置1中,能够扩展图像处理部20中的流水线处理。
外部接口部30是如下的连接部:连接图像处理装置1和组入流水线的结构中的图像处理装置1的外部所具有的外部扩展处理装置600,在图像处理装置1与外部扩展处理装置600之间进行数据的交接。外部接口部30不经由DMA总线10而直接将从输入输出用模块24输入的像素数据传送到外部扩展处理装置600。并且,外部接口部30不经由DMA总线10而将从外部扩展处理装置600传送的外部处理像素数据直接输出到输入输出用模块24。
另外,关于外部接口部30中的针对外部扩展处理装置600的数据的传送方式,采用多个系统LSI之间的数据传送中使用的、例如基于AXI(Advanced eXtensible Interface)规格、PCI-Express(Peripheral Component Interconnect-Express)等高速串行总线规格等预定的各种规格的方式。另外,用于在外部接口部30中向外部扩展处理装置600传送数据的规格和方式不限于上述规格和方式。即,外部接口部30中的数据的传送方式能够采用多个系统LSI之间的数据传送中使用的现有各种规格和方式。并且,外部接口部30也可以构成为采用多个系统LSI之间的数据传送中使用的多个规格和方式,根据与图像处理装置1连接的系统LSI(图1中为外部扩展处理装置600)中采用的数据传送的规格和方式,对传送数据的方式进行变更。
另外,外部接口部30也可以具有如下功能:在与外部扩展处理装置600之间进行数据的交接时,使从输入输出用模块24输出的像素数据的形式和外部扩展处理装置600进行处理的数据的形式一致。例如,外部接口部30也可以具有如下功能:在向外部扩展处理装置600传送像素数据时,将从输入输出用模块24输出的像素数据的形式转换为与向外部扩展处理装置600传送时的规格对应的形式。并且,外部接口部30也可以具有如下功能:在从外部扩展处理装置600接收外部处理像素数据时,将以与外部扩展处理装置600的规格对应的形式传送的数据转换为输入输出用模块24进行处理的形式、即图像处理模块23接着进行图像处理的像素数据的形式。
外部扩展处理装置600是如下的图像处理装置(系统LSI):在摄像装置100中设置在图像处理装置1的外部,进行在图像处理装置1所具有的图像处理部20内构成的流水线中组入的图像处理。外部扩展处理装置600执行图像处理装置1所具有的图像处理部20内的任意一个图像处理模块23均不执行的图像处理、即用于对图像处理装置1中执行的图像处理进行扩展的外部图像处理。外部扩展处理装置600对经由外部接口部630从图像处理装置1输入的像素数据实施预定的数字外部图像处理,经由外部接口部630将实施了外部图像处理后的像素数据(外部处理像素数据)输出到图像处理装置1。
另外,图1中示出在外部扩展处理装置600中的外部图像处理以外的各种处理和动作中使用所连接的DRAM700的结构的外部扩展处理装置600。但是,外部扩展处理装置600也可以构成为在执行外部图像处理时使用DRAM700。
外部接口部630是如下的连接部:与图像处理装置1所具有的外部接口部30连接,在外部扩展处理装置600与图像处理装置1之间进行数据的交接。外部接口部630将从图像处理装置1传送的像素数据、即从图像处理装置1所具有的外部接口部30输出的像素数据(从图像处理装置1所具有的图像处理部20内的输入输出用模块24输出的像素数据)输出到扩展处理模块620。并且,外部接口部630将从扩展处理模块620输出的实施了外部图像处理后的外部处理像素数据传送到图像处理装置1,即传送到图像处理装置1所具有的外部接口部30。由此,外部扩展处理装置600执行了外部图像处理的外部处理像素数据被输出到图像处理装置1所具有的图像处理部20内的输入输出用模块24。即,外部扩展处理装置600被组入图像处理装置1所具有的图像处理部20内构成的流水线中。
另外,外部接口部630也可以代替图像处理装置1所具有的外部接口部30而具有如下功能:在与图像处理装置1所具有的外部接口部30之间进行数据的交接时,使从输入输出用模块24输出的像素数据的形式和外部扩展处理装置600进行处理的数据的形式一致。例如,外部接口部630也可以具有如下功能:在从图像处理装置1接收像素数据时,将以与图像处理装置1的规格对应的形式传送的数据转换为扩展处理模块620进行处理的像素数据的形式。并且,外部接口部630也可以具有如下功能:在向图像处理装置1传送外部处理像素数据时,将从扩展处理模块620输出的外部处理像素数据的形式转换为与向图像处理装置1传送时的规格对应的形式、即图像处理模块23接着进行图像处理的形式。
扩展处理模块620是对经由DMA总线610从外部接口部630输入的像素数据进行预定的外部图像处理的处理模块。在扩展处理模块620进行的外部图像处理中,存在各种图像处理。在扩展处理模块620进行的外部图像处理中,例如还包含伴随着块图像数据中包含的各个像素的位置(坐标)的转换的图像插值处理等。在该图像插值处理中,例如包含对图像的大小(尺寸)进行变更(放大或缩小)的尺寸调整处理、进行图像中包含的倍率色差或畸变像差等变形的校正的变形校正处理、进行梯形校正等图像的形状校正的形状校正处理等各种处理。扩展处理模块620例如根据来自未图示的系统控制部的控制,对经由外部接口部630输入的像素数据实施外部图像处理,将实施了外部图像处理后的外部处理像素数据输出到外部接口部630。
另外,在扩展处理模块620对所输入的像素数据实施外部图像处理时,也能够使用与外部扩展处理装置600连接的DRAM700。
DRAM700是如下的数据存储部:与外部扩展处理装置600内的DMA总线610连接,存储摄像装置100中执行外部图像处理时的各种数据。例如,DRAM700暂时存储经由外部接口部630从图像处理装置1输入的像素数据、扩展处理模块620进行外部图像处理的中途或完成了处理的结果(外部处理像素数据)等。
根据这种结构,在摄像装置100中,在图像处理装置1所具有的图像处理部20内的图像处理模块23分别执行的图像处理的流水线处理中,组入外部扩展处理装置600执行的外部图像处理。由此,在摄像装置100中,即使是仅通过图像处理装置1无法执行的图像处理,通过将外部扩展处理装置600与图像处理装置1连接,也能够与图像处理装置1所具有的图像处理部20进行流水线处理同样,对图像处理进行扩展。
接着,对图像处理装置1中的图像处理部20所具有的输入输出用模块24的结构和动作进行说明。另外,如上所述,输入输出用模块24能够组入流水线内的任意位置,但是,在以下的说明中,设为将输入输出用模块24组入2个图像处理模块23之间的位置、即在输入输出用模块24的前级和后级分别连接图像处理模块23来进行说明。
首先,对图像处理部20所具有的输入输出用模块24中的与外部接口部30之间的像素数据的交接动作的概念进行说明。如上所述,图像处理部20中用于进行外部图像处理的像素数据经由与输入输出用模块24连接的外部接口部30输出到外部扩展处理装置600。另外,如上所述,在图像处理部20中,各个图像处理模块23将多个单元行作为一个处理单位进行图像处理。因此,图像处理部20中进行外部图像处理的像素数据也按照一个处理单位输入到输入输出用模块24,实施了外部图像处理后的外部处理像素数据也按照一个处理单位从输入输出用模块24输出。即,在图像处理部20中,输入输出用模块24和与输入输出用模块24的前级和后级连接的图像处理模块23之间的像素数据的交接也按照一个处理单位进行。但是,与图像处理部20所具有的各个图像处理模块23同样,与图像处理装置1连接的外部扩展处理装置600不一定必须按照一个处理单位进行外部图像处理。因此,输入输出用模块24按照一个处理单位受理从在前级连接的图像处理模块23输出的像素数据,按照进行外部图像处理的处理单位将所受理的像素数据输出到外部扩展处理装置600。并且,输入输出用模块24按照外部图像处理的处理单位受理从外部扩展处理装置600输出的外部处理像素数据,按照各个图像处理模块23进行图像处理的一个处理单位将所受理的外部处理像素数据输出到在后级连接的图像处理模块23。
图2是说明本发明的第1实施方式中的图像处理装置1内的图像处理部20所具有的输入输出用模块24的结构的概念的框图。图2中示出用于说明输入输出用模块24的概念动作的基本结构。如图2所示,输入输出用模块24具有图像处理模块输入控制部241、输出缓冲器部242、外部输出控制部243、外部输入控制部244、输入缓冲器部245、图像处理模块输出控制部246。
图像处理模块输入控制部241进行如下控制:在输出缓冲器部242中暂时存储从与输入输出用模块24的前级连接的图像处理模块23输出的输入数据(像素数据)、即经由外部接口部30输出到外部扩展处理装置600的像素数据。
输出缓冲器部242是暂时存储输入到输入输出用模块24的输入数据(像素数据)的数据缓冲器。输出缓冲器部242例如由SRAM(Static Random Access Memory)等存储器构成。输出缓冲器部242具有能够暂时存储从与输入输出用模块24的前级连接的图像处理模块23输出的预定数量的单元行的像素数据的存储容量。输出缓冲器部242根据来自图像处理模块输入控制部241的控制,暂时存储所输入的输入数据(像素数据)。并且,输出缓冲器部242根据来自外部输出控制部243的控制,将所存储的像素数据作为外部输出数据输出到外部接口部30。由此,所存储的像素数据经由外部接口部30传送到外部扩展处理装置600。
外部输出控制部243进行如下控制:读出输出缓冲器部242中存储的输入数据(像素数据),将其输出到与输入输出用模块24连接的外部接口部30。
外部输入控制部244进行如下控制:在输入缓冲器部245中暂时存储从外部接口部30输出的外部输入数据(外部处理像素数据)、即经由外部接口部30从外部扩展处理装置600输出的外部处理像素数据。
输入缓冲器部245是暂时存储输入到输入输出用模块24的外部输入数据(外部处理像素数据)的数据缓冲器。与输出缓冲器部242同样,输入缓冲器部245例如也由SRAM等存储器构成。输入缓冲器部245具有能够暂时存储经由外部接口部30从外部扩展处理装置600输出的预定数量的单元行的外部处理像素数据作为输出数据的存储容量。输入缓冲器部245根据来自外部输入控制部244的控制,暂时存储所输入的输入数据(外部处理像素数据)。并且,输入缓冲器部245根据来自图像处理模块输出控制部246的控制,将所存储的外部处理像素数据作为输出数据输出到与输入输出用模块24的后级连接的图像处理模块23。
图像处理模块输出控制部246进行如下控制:读出输入缓冲器部245中存储的外部输入数据(外部处理像素数据),将其输出到与输入输出用模块24的后级连接的图像处理模块23。
根据这种结构,输入输出用模块24对与图像处理装置1连接的外部扩展处理装置600和在前级和后级连接的图像处理模块23之间的像素数据的交接定时进行控制。即,输入输出用模块24对外部扩展处理装置600与图像处理模块23之间的像素数据的交接定时进行控制,以使得外部扩展处理装置600好像是图像处理部20内具有的图像处理模块23那样。
另外,在外部扩展处理装置600中,进行外部图像处理所需要的输入数据(像素数据)的数量即单元行的数量根据外部扩展处理装置600执行的外部图像处理的内容而不同。因此,优选输出缓冲器部242和输入缓冲器部245的存储容量是如下的存储容量:至少能够存储外部扩展处理装置600进行外部图像处理时要求的数量、即满足外部扩展处理装置600中的外部图像处理的处理单位且顺畅进行图像处理部20中的流水线处理的数量的像素数据或外部处理像素数据。例如,优选根据假设的外部图像处理的内容、从假设在前级连接的图像处理模块23输出处理像素数据后到向假设在后级连接的图像处理模块23输出外部处理像素数据为止的延迟时间等,将输出缓冲器部242和输入缓冲器部245的存储容量预先决定为正常进行流水线处理的存储容量。并且,在假设在前级和后级连接的图像处理模块23具有数据缓冲器的情况下,优选根据各个图像处理模块23所具有的数据缓冲器的存储容量和延迟时间等,将输出缓冲器部242和输入缓冲器部245的存储容量预先决定为正常进行流水线处理的存储容量。另外,输出缓冲器部242和输入缓冲器部245的存储容量也可以决定为具有预定余量的存储容量。
接着,对图像处理装置1中的图像处理部20所具有的输入输出用模块24的结构进行说明。图3是示出本发明的第1实施方式中的图像处理装置1内的图像处理部20所具有的输入输出用模块24的概略结构的框图。图3中示出输入输出用模块24中的基本结构。与图2所示的说明概念动作的结构同样,图3所示的输入输出用模块24具有图像处理模块输入控制部241、输出缓冲器部242、外部输出控制部243、外部输入控制部244、输入缓冲器部245、图像处理模块输出控制部246。
在输入输出用模块24中,根据图像处理模块输入控制部241、输出缓冲器部242和外部输出控制部243的结构,在输出缓冲器部242中暂时存储从在前级连接的图像处理模块23输出的输入数据(像素数据),根据来自所连接的外部接口部30的数据输出的请求,输出输出缓冲器部242中暂时存储的像素数据作为外部输出数据。并且,在输入输出用模块24中,根据外部输入控制部244、输入缓冲器部245和图像处理模块输出控制部246的结构,在输入缓冲器部245中暂时存储从外部接口部30输出的外部输入数据(外部处理像素数据),根据来自在后级连接的图像处理模块23的数据输出的请求,输出输入缓冲器部245中暂时存储的外部处理像素数据作为输出数据。在以下的说明中,将图像处理模块输入控制部241、输出缓冲器部242和外部输出控制部243的结构称为“外部输出部”,将外部输入控制部244、输入缓冲器部245和图像处理模块输出控制部246的结构称为“外部输入部”。
首先,对输入输出用模块24中的外部输出部进行说明。
如上所述,输出缓冲器部242是暂时存储输入到输入输出用模块24的输入数据(像素数据)的数据缓冲器。图3中示出所谓的双缓冲器的结构的输出缓冲器部242,该输出缓冲器部242具有2个数据缓冲器,进行动作,以使得通过在相反的动作中交替切换各个数据缓冲器中的像素数据的存储(写入)和输出(读出),能够同时进行一个处理单位的像素数据的写入和读出。图3所示的输出缓冲器部242具有选择器2421、2个输出缓冲器2422-1和输出缓冲器2422-2、选择器2423。
选择器2421是在输出缓冲器部242中选择写入像素数据的数据缓冲器的选择部。选择器2421根据从图像处理模块输入控制部241输出的输出缓冲器写入选择信号OBWS,选择输出缓冲器2422-1或输出缓冲器2422-2中的任意一个输出缓冲器2422作为写入像素数据的数据缓冲器。然后,选择器2421将输入到输入输出用模块24的输入数据(像素数据)输出到选择出的输出缓冲器2422-1或输出缓冲器2422-2中的任意一个输出缓冲器2422。
选择器2423是在输出缓冲器部242中选择读出所存储的像素数据的数据缓冲器的选择部。选择器2423根据从外部输出控制部243输出的输出缓冲器读出选择信号OBRS,选择输出缓冲器2422-1或输出缓冲器2422-2中的任意一个输出缓冲器2422作为读出所存储的像素数据的数据缓冲器。然后,选择器2423将从选择出的输出缓冲器2422-1或输出缓冲器2422-2中的任意一个输出缓冲器2422读出的像素数据作为外部输出数据输出到外部接口部30。由此,外部输出数据(像素数据)通过外部接口部30传送到外部扩展处理装置600。
输出缓冲器2422-1和输出缓冲器2422-2分别是暂时存储预定数量的单元行的像素数据的存储容量的数据缓冲器。由选择器2421选择为写入像素数据的数据缓冲器的输出缓冲器2422-1或输出缓冲器2422-2中的任意一个输出缓冲器2422根据从图像处理模块输入控制部241输出的输出缓冲器写入信号OBW,写入(存储)经由选择器2421输入的输入数据(像素数据)。另一方面,由选择器2421选择为读出所存储的像素数据的数据缓冲器的输出缓冲器2422-1或输出缓冲器2422-2中的任意一个输出缓冲器2422根据从外部输出控制部243输出的输出缓冲器读出信号OBR,读出所存储的像素数据并将其输出到选择器2423。
如上所述,图像处理模块输入控制部241控制对输出缓冲器部242存储(写入)从与输入输出用模块24的前级连接的图像处理模块23输出的输入数据(像素数据)。图3所示的图像处理模块输入控制部241具有输出缓冲器空闲容量管理部2411、输出缓冲器写入管理部2412。
输出缓冲器空闲容量管理部2411监视输出缓冲器部242所具有的输出缓冲器2422-1和输出缓冲器2422-2各自的存储容量,根据监视存储容量的结果,将表示输入输出用模块24的动作状态的状态通知信号输出到在前级连接的图像处理模块23。并且,输出缓冲器空闲容量管理部2411指示输出缓冲器写入管理部2412对输出缓冲器2422存储(写入)输入数据(像素数据)。
更具体而言,输出缓冲器空闲容量管理部2411监视在与存储未由外部输出控制部243读出的像素数据的输出缓冲器2422不同的另一个输出缓冲器2422中,是否存在用于写入(暂时存储)从在前级连接的图像处理模块23输出的输入数据(像素数据)的空闲的存储容量。然后,输出缓冲器空闲容量管理部2411监视空闲的存储容量的结果为,在与已经存储了应该由外部输出控制部243读出的像素数据的输出缓冲器2422不同的另一个输出缓冲器2422中存在空闲的存储容量的情况下,该输出缓冲器2422判定为处于能够写入从在前级连接的图像处理模块23输出的输入数据(像素数据)的状态。该情况下,输出缓冲器空闲容量管理部2411将请求输出输入数据(像素数据)的数据请求信号作为表示处于能够受理输入数据的状态的状态通知信号输出到在前级连接的图像处理模块23。然后,输出缓冲器空闲容量管理部2411在输入数据确认信号后,将指示接收与数据确认信号对应的输入数据(像素数据)并进行写入(暂时存储)的输出缓冲器写入控制信号OBWC输出到输出缓冲器写入管理部2412,其中,该数据确认信号表示根据所输出的数据请求信号而从在前级连接的图像处理模块23输出输入数据(像素数据)。另外,在输出缓冲器空闲容量管理部2411输出的输出缓冲器写入控制信号OBWC中包含判定为存在空闲的存储容量的输出缓冲器2422的信息。
另一方面,输出缓冲器空闲容量管理部2411在监视空闲的存储容量的结果为输出缓冲器2422中不存在空闲的存储容量的情况下,判定为处于无法对任意一个输出缓冲器2422写入从在前级连接的图像处理模块23输出的输入数据(像素数据)的状态。该情况下,输出缓冲器空闲容量管理部2411将表示不请求输出输入数据(像素数据)的数据请求信号作为表示处于无法受理输入数据的状态的状态通知信号输出到在前级连接的图像处理模块23。另外,输出缓冲器空闲容量管理部2411也可以利用与数据请求信号不同的信号表示不请求输出输入数据(像素数据)。
输出缓冲器写入管理部2412根据从输出缓冲器空闲容量管理部2411输出的输出缓冲器写入控制信号OBWC,将用于控制写入输入数据(像素数据)的控制信号输出到输出缓冲器部242。
更具体而言,输出缓冲器写入管理部2412根据输出缓冲器写入控制信号OBWC中包含的、判定为存在空闲的存储容量的输出缓冲器2422的信息,将输出缓冲器写入选择信号OBWS输出到输出缓冲器部242所具有的选择器2421,其中,该输出缓冲器写入选择信号OBWS用于选择写入(暂时存储)从在前级连接的图像处理模块23输出的输入数据(像素数据)的输出缓冲器2422。并且,输出缓冲器写入管理部2412根据从输出缓冲器空闲容量管理部2411输出的输出缓冲器写入控制信号OBWC,将输出缓冲器写入信号OBW输出到输出缓冲器部242内的选择出的输出缓冲器2422,该输出缓冲器写入信号OBW表示写入从在前级连接的图像处理模块23输出的输入数据(像素数据)的定时。此时,输出缓冲器写入管理部2412根据与输入数据(像素数据)一起从在前级连接的图像处理模块23输出的、表示单元行中包含的各个像素数据是否是有效像素数据的数据有效信号,判定当前输入的输入数据是否是有效像素数据。然后,输出缓冲器写入管理部2412将仅写入有效输入数据(像素数据)的定时的输出缓冲器写入信号OBW输出到输出缓冲器2422。由此,输出缓冲器部242仅将有效输入数据(像素数据)写入(暂时存储)到选择出的输出缓冲器2422中。
如上所述,外部输出控制部243控制输出(读出)输出缓冲器部242中存储的输入数据(像素数据)。图3所示的外部输出控制部243具有输出缓冲器数据量管理部2431、输出缓冲器读出管理部2432。
输出缓冲器数据量管理部2431监视输出缓冲器部242所具有的输出缓冲器2422-1和输出缓冲器2422-2各自的存储容量,根据监视存储容量的结果,指示输出缓冲器读出管理部2432输出(读出)输出缓冲器2422中存储的像素数据。
更具体而言,输出缓冲器数据量管理部2431监视在与由图像处理模块输入控制部241写入输入数据(像素数据)的输出缓冲器2422不同的另一个输出缓冲器2422中完成写入的输入数据(像素数据)的数据量。然后,输出缓冲器数据量管理部2431在监视像素数据的数据量的结果为在输出缓冲器2422中已经存储了作为外部输出数据而输出到外部接口部30的像素数据的情况下,该输出缓冲器2422判定为处于能够读出像素数据并将其输出到外部接口部30的状态。该情况下,输出缓冲器数据量管理部2431在从所连接的外部接口部30输入了请求输出外部输出数据(像素数据)的数据输出请求信号后,将输出缓冲器读出控制信号OBRC输出到输出缓冲器读出管理部2432,该输出缓冲器读出控制信号OBRC指示读出(输出)与数据输出请求信号对应的外部输出数据(像素数据)。另外,在输出缓冲器数据量管理部2431输出的输出缓冲器读出控制信号OBRC中包含判定为像素数据的写入完成的输出缓冲器2422的信息。另外,输出缓冲器数据量管理部2431也可以将数据输出受理信号输出到外部接口部30,该数据输出受理信号表示受理了基于数据输出请求信号的外部输出数据(像素数据)的输出。
另一方面,输出缓冲器数据量管理部2431在监视像素数据的数据量的结果为未在输出缓冲器2422中存储作为外部输出数据而输出的像素数据的情况下,判定为处于无法从任意一个输出缓冲器2422读出像素数据的状态。该情况下,输出缓冲器数据量管理部2431也可以将如下的数据输出受理信号输出到外部接口部30,该数据输出受理信号表示是处于无法受理基于数据输出请求信号的外部输出数据(像素数据)的输出的状态。另外,此时的数据输出受理信号可以利用数据输出受理信号的逻辑电平来表示是处于无法受理外部输出数据(像素数据)的输出的状态,也可以利用与数据输出受理信号不同的信号来表示。
输出缓冲器读出管理部2432根据从输出缓冲器数据量管理部2431输出的输出缓冲器读出控制信号OBRC,将如下的控制信号输出到输出缓冲器部242,该控制信号用于控制读出(输出)输出缓冲器部242中存储的输入数据(像素数据)。
更具体而言,输出缓冲器读出管理部2432根据输出缓冲器读出控制信号OBRC中包含的、判定为像素数据的写入完成的输出缓冲器2422的信息,将用于选择读出(输出)所存储的像素数据的输出缓冲器2422的输出缓冲器读出选择信号OBRS输出到输出缓冲器部242所具有的选择器2423。并且,输出缓冲器读出管理部2432根据从输出缓冲器数据量管理部2431输出的输出缓冲器读出控制信号OBRC,将表示读出所存储的像素数据并将其输出到所连接的外部接口部30的定时的输出缓冲器读出信号OBR输出到输出缓冲器部242内的选择出的输出缓冲器2422。由此,输出缓冲器部242根据输出缓冲器读出信号OBR,读出所存储的像素数据并将其作为外部输出数据输出到外部接口部30。此时,输出缓冲器读出管理部2432将输出数据有效信号输出到外部接口部30,该输出数据有效信号表示从输出缓冲器2422作为外部输出数据读出(输出)的单元行中包含的各个像素数据是否是有效像素数据。
这里,对输入输出用模块24中的外部输出部的动作进行说明。图4是示出本发明的第1实施方式中的图像处理装置1内的图像处理部20所具有的输入输出用模块24中的外部输出部(图像处理模块输入控制部241、输出缓冲器部242和外部输出控制部243)的动作的一例的时序图。图4中示出输入输出用模块24从在前级连接的图像处理模块23向所连接的外部接口部30交接像素数据的一例。即,图4中示出如下动作的一例:输入输出用模块24向在前级连接的图像处理模块23请求输入数据(像素数据),在输出缓冲器部242中暂时存储像素数据,根据来自所连接的外部接口部30即外部扩展处理装置600的数据输出的请求,输出输出缓冲器部242中存储的像素数据作为外部输出数据。
图4示出在在前级连接的图像处理模块23与输入输出用模块24之间交换的数据请求信号、数据确认信号、数据有效信号和输入数据的定时。并且,图4中示出输出缓冲器部242所具有的输出缓冲器2422-1和输出缓冲器2422-2各自的动作的状态。并且,图4示出在外部接口部30与输入输出用模块24之间交换的数据输出请求信号、输出数据有效信号和外部输出数据的定时。
另外,在图4的说明中,设为将4个单元行作为一个处理单位而在与外部接口部30之间进行像素数据的交接来进行说明。并且,在图4的说明中,对从如下状态起的动作进行说明,该状态是输出缓冲器部242所具有的输出缓冲器2422-1和输出缓冲器2422-2的任意一方中均未暂时存储从在前级连接的图像处理模块23输出的输入数据(像素数据)、即两个输出缓冲器2422的存储容量都空闲的状态。
在上述状态时,图像处理模块输入控制部241所具有的输出缓冲器空闲容量管理部2411将请求输出第一个单元行的输入数据(像素数据)的数据请求信号输出到在前级连接的图像处理模块23。然后,输出缓冲器空闲容量管理部2411在从在前级连接的图像处理模块23输入了表示根据所输出的数据请求信号而输出第一个单元行的像素数据的数据确认信号后,使数据请求信号成为不请求输出输入数据(像素数据)的状态。然后,输出缓冲器空闲容量管理部2411将输出缓冲器写入控制信号OBWC输出到输出缓冲器写入管理部2412,该输出缓冲器写入控制信号OBWC指示接收从在前级连接的图像处理模块23输出的第一个单元行的输入数据(像素数据)并将其写入(暂时存储)到输出缓冲器2422-1中。另外,在前级连接的图像处理模块23在从输入输出用模块24输出的数据请求信号成为不请求输出第一个单元行的输入数据(像素数据)的状态后,判定为输入输出用模块24识别到数据确认信号,使数据确认信号成为不输出像素数据的状态。
另外,在图4中,数据请求信号的“High”电平表示处于输入输出用模块24能够受理输入数据(像素数据)的状态,数据请求信号的“Low”电平表示处于无法受理输入数据(像素数据)的状态。并且,在图4中,数据确认信号的“High”电平表示在前级连接的图像处理模块23根据数据请求信号输出像素数据,数据确认信号的“Low”电平表示不输出像素数据。
然后,在前级连接的图像处理模块23根据输入输出用模块24输出的数据请求信号依次输出第一个单元行的像素数据。此时,在前级连接的图像处理模块23在输出的像素数据是有效像素数据时,输出数据有效信号。
另外,在图4中,数据有效信号的“High”电平表示在前级连接的图像处理模块23输出的像素数据是有效像素数据,数据有效信号的“Low”电平表示像素数据不是有效像素数据,即,表示像素数据是无效像素数据。
图像处理模块输入控制部241所具有的输出缓冲器写入管理部2412根据从输出缓冲器空闲容量管理部2411输出的输出缓冲器写入控制信号OBWC,将表示选择输出缓冲器2422-1的输出缓冲器写入选择信号OBWS输出到输出缓冲器部242所具有的选择器2421。由此,输出缓冲器部242成为将从在前级连接的图像处理模块23输出的第一个单元行的输入数据(像素数据)写入(暂时存储)到输出缓冲器2422-1中的状态。然后,输出缓冲器写入管理部2412根据从在前级连接的图像处理模块23输出的数据有效信号,将用于依次写入从图像处理模块23依次输出的有效像素数据的输出缓冲器写入信号OBW输出到输出缓冲器2422-1。由此,在输出缓冲器2422-1中写入并暂时存储从在前级连接的图像处理模块23依次输出的第一个单元行的有效像素数据。
此时,输出缓冲器空闲容量管理部2411在监视输出缓冲器2422-1中空闲的存储容量的结果为在写入了当前输入的输入数据(像素数据)的情况下也依然判定为在输出缓冲器2422-1中存在空闲的存储容量的情况下,再次将请求输出输入数据(像素数据)的数据请求信号输出到在前级连接的图像处理模块23。即,输出缓冲器空闲容量管理部2411在处于输出缓冲器2422-1能够写入(暂时存储)第2个单元行的输入数据(像素数据)的状态的情况下,将请求输出第2个单元行的输入数据(像素数据)的数据请求信号输出到在前级连接的图像处理模块23。由此,在前级连接的图像处理模块23根据再次输出的数据请求信号(第2个单元行的数据请求信号),使数据确认信号成为表示输出第2个单元行的像素数据的状态。
然后,在前级连接的图像处理模块23在当前输出的第一个单元行的输入数据(像素数据)的输出结束后,接着,根据从输入输出用模块24再次输出的数据请求信号,输出第2个单元行的像素数据和数据有效信号。然后,输出缓冲器写入管理部2412接着将从在前级连接的图像处理模块23依次输出的第2个单元行的有效像素数据写入输出缓冲器2422-1中。
这样,输出缓冲器空闲容量管理部2411和输出缓冲器写入管理部2412反复在输出缓冲器2422-1中写入从在前级连接的图像处理模块23依次输出的各个单元行的输入数据(像素数据),直到在输出缓冲器2422-1中不存在空闲的存储容量为止,即,直到写入第4个单元行的输入数据(像素数据)为止。然后,当在输出缓冲器2422-1中不存在空闲的存储容量时,输出缓冲器空闲容量管理部2411和输出缓冲器写入管理部2412接着同样在输出缓冲器2422-2中写入从在前级连接的图像处理模块23依次输出的有效像素数据。即,输出缓冲器空闲容量管理部2411和输出缓冲器写入管理部2412在4个单元行的输入数据(像素数据)针对输出缓冲器2422-1的写入完成后,接着同样在输出缓冲器2422-2中写入从在前级连接的图像处理模块23依次输出的第5个以后的单元行的有效像素数据。
并且,当从所连接的外部接口部30输入数据输出请求信号后,外部输出控制部243所具有的输出缓冲器数据量管理部2431监视通过图像处理模块输入控制部241写入到输出缓冲器2422-1中的有效像素数据的数据量。然后,输出缓冲器数据量管理部2431在针对输出缓冲器2422-1的4个单元行的像素数据的写入完成、即输出缓冲器2422-1中不存在空闲的存储容量时,将指示读出(输出)输出缓冲器2422-1中存储的像素数据的输出缓冲器读出控制信号OBRC输出到输出缓冲器读出管理部2432。
另外,在图4中,数据输出请求信号的“High”电平表示处于外部接口部30请求输出外部输出数据(像素数据)的状态,数据输出请求信号的“Low”电平表示处于不请求输出外部输出数据(像素数据)的状态。
外部输出控制部243所具有的输出缓冲器读出管理部2432根据从输出缓冲器数据量管理部2431输出的输出缓冲器读出控制信号OBRC,将表示选择输出缓冲器2422-1的输出缓冲器读出选择信号OBRS输出到输出缓冲器部242所具有的选择器2423。由此,输出缓冲器部242成为读出输出缓冲器2422-1中存储的4个单元行的像素数据并将其输出到外部接口部30的状态。然后,输出缓冲器读出管理部2432将用于从输出缓冲器2422-1依次读出像素数据的输出缓冲器读出信号OBR输出到输出缓冲器2422-1。由此,依次读出输出缓冲器2422-1中存储的4个单元行的像素数据,作为外部输出数据依次输出到外部接口部30。此时,输出缓冲器读出管理部2432在从输出缓冲器2422-1读出并作为外部输出数据输出的像素数据是有效像素数据时,输出输出数据有效信号。
另外,在图4中,输出数据有效信号的“High”电平表示输出到外部接口部30的外部输出数据是有效像素数据,输出数据有效信号的“Low”电平表示像素数据不是有效外部输出数据,即表示像素数据是无效外部输出数据。
然后,当从外部接口部30再次输入数据输出请求信号后,输出缓冲器数据量管理部2431和输出缓冲器读出管理部2432在针对输出缓冲器2422-2的像素数据的写入完成后,接着同样依次读出输出缓冲器2422-2中存储的像素数据,作为外部输出数据依次输出到外部接口部30。即,输出缓冲器数据量管理部2431和输出缓冲器读出管理部2432在针对输出缓冲器2422-2的下一个(第5个以后的)4个单元行的像素数据的写入完成后,接着同样依次读出输出缓冲器2422-2中存储的第5个以后的4个单元行的像素数据,作为外部输出数据依次输出到外部接口部30。
这样,输入输出用模块24中的外部输出部在输出缓冲器2422中临时存储从在前级连接的图像处理模块23输出的输入数据(像素数据),根据来自所连接的外部接口部30的数据输出的请求,读出输出缓冲器2422中存储的像素数据,作为外部输出数据进行输出。
接着,返回图3对输入输出用模块24中的外部输入部进行说明。
如上所述,输入缓冲器部245是暂时存储输入到输入输出用模块24的外部输入数据(外部处理像素数据)的数据缓冲器。在图3中,与输出缓冲器部242同样,示出具有2个数据缓冲器的双缓冲器的结构的输入缓冲器部245。在输入缓冲器部245中,进行动作,以使得通过在相反的动作中交替切换各个数据缓冲器中的外部处理像素数据的存储(写入)和输出(读出),能够同时进行一个处理单位的外部处理像素数据的写入和读出。图3所示的输入缓冲器部245具有选择器2451、2个输入缓冲器2452-1和输入缓冲器2452-2、选择器2453。
选择器2451是在输入缓冲器部245中选择写入外部处理像素数据的数据缓冲器的选择部。选择器2451根据从外部输入控制部244输出的输入缓冲器写入选择信号IBWS,选择输入缓冲器2452-1或输入缓冲器2452-2中的任意一个输入缓冲器2452作为写入外部处理像素数据的数据缓冲器。然后,选择器2451将输入到输入输出用模块24的外部输入数据(外部处理像素数据)输出到选择出的输入缓冲器2452-1或输入缓冲器2452-2中的任意一个输入缓冲器2452。
选择器2453是在输入缓冲器部245中选择读出所存储的外部处理像素数据的数据缓冲器的选择部。选择器2453根据从图像处理模块输出控制部246输出的输入缓冲器读出选择信号IBRS,选择输入缓冲器2452-1或输入缓冲器2452-2中的任意一个输入缓冲器2452作为读出所存储的外部处理像素数据的数据缓冲器。然后,选择器2453将从选择出的输入缓冲器2452-1或输入缓冲器2452-2中的任意一个输入缓冲器2452读出的外部处理像素数据作为输出数据输出到在后级连接的图像处理模块23。
输入缓冲器2452-1和输入缓冲器2452-2分别是暂时存储预定数量的单元行的外部处理像素数据的存储容量的数据缓冲器。由选择器2451选择为写入外部处理像素数据的数据缓冲器的输入缓冲器2452-1或输入缓冲器2452-2中的任意一个输入缓冲器2452根据从外部输入控制部244输出的输入缓冲器写入信号IBW,写入(存储)经由选择器2451输入的外部输入数据(外部处理像素数据)。另一方面,由选择器2453选择为读出所存储的外部处理像素数据的数据缓冲器的输入缓冲器2452-1或输入缓冲器2452-2中的任意一个输入缓冲器2452根据从图像处理模块输出控制部246输出的输入缓冲器读出信号IBR,读出所存储的外部处理像素数据并将其输出到选择器2453。
如上所述,外部输入控制部244控制对输入缓冲器部245存储(写入)从外部接口部30输出的外部输入数据(外部处理像素数据)。图3所示的外部输入控制部244具有输入缓冲器空闲容量管理部2441、输入缓冲器写入管理部2442。
输入缓冲器空闲容量管理部2441监视输入缓冲器部245所具有的输入缓冲器2452-1和输入缓冲器2452-2各自的存储容量,根据监视存储容量的结果,指示输入缓冲器写入管理部2442对输入缓冲器2452存储(写入)外部输入数据(外部处理像素数据)。
更具体而言,输入缓冲器空闲容量管理部2441监视在与存储未由图像处理模块输出控制部246读出的外部处理像素数据的输入缓冲器2452不同的另一个输入缓冲器2452中,是否存在用于写入(暂时存储)从所连接的外部接口部30输出的外部输入数据(外部处理像素数据)的空闲的存储容量。然后,输入缓冲器空闲容量管理部2441监视空闲的存储容量的结果为在与已经存储了应该由图像处理模块输出控制部246读出的外部处理像素数据的输入缓冲器2452不同的另一个输入缓冲器2452中存在空闲的存储容量的情况下,该输入缓冲器2452判定为处于能够写入从外部接口部30输出的外部输入数据(外部处理像素数据)的状态。该情况下,输入缓冲器空闲容量管理部2441在从外部接口部30输入了请求输入外部输入数据(外部处理像素数据)的数据输入请求信号后,将指示接收与数据输入请求信号对应的外部输入数据(外部处理像素数据)并进行写入(暂时存储)的输入缓冲器写入控制信号IBWC输出到输入缓冲器写入管理部2442。另外,在输入缓冲器空闲容量管理部2441输出的输入缓冲器写入控制信号IBWC中包含判定为存在空闲的存储容量的输入缓冲器2452的信息。
另外,输入缓冲器空闲容量管理部2441也可以将表示受理了基于数据输入请求信号的外部输入数据(外部处理像素数据)的输入的数据输入受理信号输出到外部接口部30。另外,输入缓冲器空闲容量管理部2441在监视空闲的存储容量的结果为输入缓冲器2452中不存在空闲的存储容量的情况下,判定为处于无法对任意一个输入缓冲器2452写入从外部接口部30输出的外部输入数据(外部处理像素数据)的状态。该情况下,输入缓冲器空闲容量管理部2441也可以将表示处于无法受理外部输入数据的状态的数据输入受理信号输出到所连接的外部接口部30。另外,输入缓冲器空闲容量管理部2441也可以利用与数据输入受理信号不同的信号(例如外部数据输出请求信号等)来表示请求或不请求输出外部输入数据(外部处理像素数据)。
输入缓冲器写入管理部2442根据从输入缓冲器空闲容量管理部2441输出的输入缓冲器写入控制信号IBWC,将用于控制写入外部输入数据(外部处理像素数据)的控制信号输出到输入缓冲器部245。
更具体而言,输入缓冲器写入管理部2442根据输入缓冲器写入控制信号IBWC中包含的、判定为存在空闲的存储容量的输入缓冲器2452的信息,将用于选择写入(暂时存储)从外部接口部30输出的外部输入数据(外部处理像素数据)的输入缓冲器2452的输入缓冲器写入选择信号IBWS输出到输入缓冲器部245所具有的选择器2451。并且,输入缓冲器写入管理部2442根据从输入缓冲器空闲容量管理部2441输出的输入缓冲器写入控制信号IBWC,将表示写入从外部接口部30输出的外部输入数据(外部处理像素数据)的定时的输入缓冲器写入信号IBW输出到输入缓冲器部245内的选择出的输入缓冲器2452。此时,输入缓冲器写入管理部2442根据与外部输入数据(外部处理像素数据)一起从外部接口部30输出的、表示单元行中包含的各个外部处理像素数据是否是有效外部处理像素数据的输入数据有效信号,判定当前输入的外部输入数据是否是有效外部处理像素数据。然后,输入缓冲器写入管理部2442将仅写入有效外部输入数据(外部处理像素数据)的定时的输入缓冲器写入信号IBW输出到输入缓冲器2452。由此,输入缓冲器部245仅将有效外部输入数据(外部处理像素数据)写入(暂时存储)到选择出的输入缓冲器2452中。
如上所述,图像处理模块输出控制部246控制输出(读出)输入缓冲器部245中存储的外部输入数据(外部处理像素数据)。图3所示的图像处理模块输出控制部246具有输入缓冲器数据量管理部2461、输入缓冲器读出管理部2462。
输入缓冲器数据量管理部2461监视输入缓冲器部245所具有的输入缓冲器2452-1和输入缓冲器2452-2各自的存储容量,根据监视存储容量的结果,指示输入缓冲器读出管理部2462输出(读出)输入缓冲器2452中存储的外部处理像素数据。
更具体而言,输入缓冲器数据量管理部2461监视在与由外部输入控制部244写入外部输入数据(外部处理像素数据)的输入缓冲器2452不同的另一个输入缓冲器2452中完成写入的外部输入数据(外部处理像素数据)的数据量。然后,输入缓冲器数据量管理部2461在监视外部处理像素数据的数据量的结果为在输入缓冲器2452中已经存储了作为输出数据输出到在后级连接的图像处理模块23的外部处理像素数据的情况下,该输入缓冲器2452判定为处于能够读出外部处理像素数据并将其输出到在后级连接的图像处理模块23的状态。该情况下,输入缓冲器数据量管理部2461在从在后级连接的图像处理模块23输入了请求输出输出数据(外部处理像素数据)的数据请求信号后,将指示读出(输出)与数据请求信号对应的输出数据(外部处理像素数据)的输入缓冲器读出控制信号IBRC输出到输入缓冲器读出管理部2462。另外,在输入缓冲器数据量管理部2461输出的输入缓冲器读出控制信号IBRC中包含判定为外部处理像素数据的写入完成的输入缓冲器2452的信息。并且,输入缓冲器数据量管理部2461将表示受理了基于数据请求信号的输出数据(外部处理像素数据)的输出的数据确认信号输出到在后级连接的图像处理模块23。
另一方面,输入缓冲器数据量管理部2461在监视外部处理像素数据的数据量的结果为未在输入缓冲器2452中存储作为输出数据而输出的外部处理像素数据的情况下,判定为处于无法从任意一个输入缓冲器2452读出外部处理像素数据的状态。该情况下,输入缓冲器数据量管理部2461将表示处于无法受理基于数据请求信号的输出数据(外部处理像素数据)的输出的状态的数据确认信号输出到在后级连接的图像处理模块23。另外,此时的数据确认信号可以利用数据确认信号的逻辑电平表示处于无法受理输出数据(外部处理像素数据)的输出状态,也可以利用与数据确认信号不同的信号来表示。
输入缓冲器读出管理部2462根据从输入缓冲器数据量管理部2461输出的输入缓冲器读出控制信号IBRC,将用于控制读出(输出)输出输入缓冲器部245中存储的外部输入数据(外部处理像素数据)的控制信号输出到输入缓冲器部245。
更具体而言,输入缓冲器读出管理部2462根据输入缓冲器读出控制信号IBRC中包含的、判定为外部处理像素数据的写入完成的输入缓冲器2452的信息,将用于选择读出(输出)所存储的外部处理像素数据的输入缓冲器2452的输入缓冲器读出选择信号IBRS输出到输入缓冲器部245所具有的选择器2453。并且,输入缓冲器读出管理部2462根据从输入缓冲器数据量管理部2461输出的输入缓冲器读出控制信号IBRC,将表示读出所存储的外部处理像素数据并将其输出到在后级连接的图像处理模块23的定时的输入缓冲器读出信号IBR输出到输入缓冲器部245内的选择出的输入缓冲器2452。由此,输入缓冲器部245根据输入缓冲器读出信号IBR,读出所存储的外部处理像素数据并将其作为输出数据输出到在后级连接的图像处理模块23。此时,输入缓冲器读出管理部2462将表示从输入缓冲器2452作为输出数据读出(输出)的单元行中包含的各个外部处理像素数据是否是有效外部处理像素数据的数据有效信号输出到在后级连接的图像处理模块23。
这里,对输入输出用模块24中的外部输入部的动作进行说明。图5是示出本发明的第1实施方式中的图像处理装置1内的图像处理部20所具有的输入输出用模块24中的外部输入部(外部输入控制部244、输入缓冲器部245和图像处理模块输出控制部246)的动作的一例的时序图。图5中示出输入输出用模块24从所连接的外部接口部30向在后级连接的图像处理模块23交接外部处理像素数据的一例。即,图5中示出如下动作的一例:输入输出用模块24暂时存储从所连接的外部接口部30输出的外部输入数据(外部处理像素数据),根据来自在后级连接的图像处理模块23的数据输出的请求,输出输入缓冲器部245中存储的外部处理像素数据作为输出数据。
图5示出在所连接的外部接口部30与输入输出用模块24之间交换的数据输入请求信号、输入数据有效信号和外部输入数据的定时。并且,图5中示出输入缓冲器部245所具有的输入缓冲器2452-1和输入缓冲器2452-2各自的动作的状态。并且,图5示出在在后级连接的图像处理模块23与输入输出用模块24之间交换的数据请求信号、数据确认信号、数据有效信号和输出数据的定时。
另外,在图5的说明中,设为将4个单元行作为一个处理单位而在在后级连接的图像处理模块23之间进行外部处理像素数据的交接来进行说明。并且,在图5的说明中对从如下状态起的动作进行说明,该状态是输入缓冲器部245所具有的输入缓冲器2452-1和输入缓冲器2452-2的任意一方中均未暂时存储从外部接口部30输出的外部输入数据(外部处理像素数据)、即两个输入缓冲器2452的存储容量都空闲的状态。
在上述状态时,在从所连接的外部接口部30输入请求输入第一个处理单位的外部输入数据(外部处理像素数据)的数据输入请求信号后,外部输入控制部244所具有的输入缓冲器空闲容量管理部2441监视输入缓冲器2452-1中是否存在用于写入(暂时存储)外部输入数据(外部处理像素数据)的空闲的存储容量。然后,输入缓冲器空闲容量管理部2441将指示接收与数据输入请求信号对应的第一个处理单位的外部输入数据(外部处理像素数据)并将其写入(暂时存储)到输入缓冲器2452-1中的输入缓冲器写入控制信号IBWC输出到输入缓冲器写入管理部2442。
另外,在图5中,数据输入请求信号的“High”电平表示外部接口部30请求输入外部输入数据(外部处理像素数据),外部接口部30的“Low”电平表示不请求输入外部输入数据(外部处理像素数据)。
然后,外部接口部30与表示是有效外部处理像素数据的输入数据有效信号一起,输出第一个处理单位的外部处理像素数据。
另外,在图5中,输入数据有效信号的“High”电平表示外部接口部30输出的外部处理像素数据是有效外部处理像素数据,输入数据有效信号的“Low”电平表示外部处理像素数据不是有效外部处理像素数据,即表示外部处理像素数据是无效外部处理像素数据。
外部输入控制部244所具有的输入缓冲器写入管理部2442根据从输入缓冲器空闲容量管理部2441输出的输入缓冲器写入控制信号IBWC,将表示选择输入缓冲器2452-1的输入缓冲器写入选择信号IBWS输出到输入缓冲器部245所具有的选择器2451。由此,输入缓冲器部245成为将从外部接口部30输出的第一个处理单位的外部输入数据(外部处理像素数据)写入(暂时存储)到输入缓冲器2452-1中的状态。然后,输入缓冲器写入管理部2442根据从外部接口部30输出的输入数据有效信号,将用于依次写入从外部接口部30依次输出的有效外部处理像素数据的输入缓冲器写入信号IBW输出到输入缓冲器2452-1。由此,在输入缓冲器2452-1中写入并暂时存储从外部接口部30依次输出的第一个处理单位的有效外部处理像素数据。
然后,外部接口部30在当前输出的第一个处理单位的外部输入数据(外部处理像素数据)的输出结束后,接着,输出请求输入第2个处理单位的外部输入数据(外部处理像素数据)的数据输入请求信号,与表示是有效外部处理像素数据的输入数据有效信号一起,输出第2个处理单位的外部处理像素数据。
此时,输入缓冲器空闲容量管理部2441将指示接收与从外部接口部30输出的数据输入请求信号对应的第2个处理单位的外部输入数据(外部处理像素数据)并将其写入(暂时存储)到输入缓冲器2452-2中的输入缓冲器写入控制信号IBWC输出到输入缓冲器写入管理部2442。然后,输入缓冲器写入管理部2442根据从输入缓冲器空闲容量管理部2441输出的第2个处理单位的输入缓冲器写入控制信号IBWC,接着接收从外部接口部30依次输出的第2个处理单位的有效外部处理像素数据,写入并暂时存储在输入缓冲器2452-2中。
这样,输入缓冲器空闲容量管理部2441和输入缓冲器写入管理部2442在输入缓冲器2452-1和输入缓冲器2452-2中写入从所连接的外部接口部30依次输出的外部输入数据(外部处理像素数据)。
并且,在从在后级连接的图像处理模块23输入了请求输出第一个单元行的输出数据(外部处理像素数据)的数据请求信号后,图像处理模块输出控制部246所具有的输入缓冲器数据量管理部2461监视通过外部输入控制部244写入到输入缓冲器2452-1中的有效外部处理像素数据的数据量。然后,输入缓冲器数据量管理部2461在针对输入缓冲器2452-1的第一个处理单位的外部处理像素数据的写入完成、即输入缓冲器2452-1中不存在空闲的存储容量时,将表示受理了基于数据请求信号的第一个单元行的外部处理像素数据的输出的数据确认信号输出到在后级连接的图像处理模块23。由此,在后级连接的图像处理模块23使请求输出第一个单元行的外部处理像素数据的数据请求信号成为不请求输出输出数据(外部处理像素数据)的状态。然后,输入缓冲器数据量管理部2461将指示读出并输出输入缓冲器2452-1中存储的第一个单元行的外部处理像素数据的输入缓冲器读出控制信号IBRC输出到输入缓冲器读出管理部2462。
另外,在图5中,数据请求信号的“High”电平表示处于在后级连接的图像处理模块23请求输出输出数据(外部处理像素数据)的状态,数据请求信号的“Low”电平表示处于不请求输出输出数据(外部处理像素数据)的状态。
图像处理模块输出控制部246所具有的输入缓冲器读出管理部2462根据从输入缓冲器数据量管理部2461输出的输入缓冲器读出控制信号IBRC,将表示选择输入缓冲器2452-1的输入缓冲器读出选择信号IBRS输出到输入缓冲器部245所具有的选择器2453。由此,输入缓冲器部245成为读出输入缓冲器2452-1中存储的外部处理像素数据并将其输出到在后级连接的图像处理模块23的状态。然后,输入缓冲器读出管理部2462将用于从输入缓冲器2452-1依次读出第一个单元行的外部处理像素数据的输入缓冲器读出信号IBR输出到输入缓冲器2452-1。由此,依次读出输入缓冲器2452-1中存储的第一个单元行的外部处理像素数据,作为第一个单元行的输出数据依次输出到在后级连接的图像处理模块23。此时,输入缓冲器读出管理部2462在从输入缓冲器2452-1读出并作为输出数据输出的第一个单元行的外部处理像素数据是有效外部处理像素数据时,输出数据有效信号。
另外,在图5中,数据有效信号的“High”电平表示输出到在后级连接的图像处理模块23的输出数据是有效外部处理像素数据,数据有效信号的“Low”电平表示外部处理像素数据不是有效输出数据,即表示外部处理像素数据是无效输出数据。
然后,当从在后级连接的图像处理模块23输入请求输出第2个单元行的输出数据(外部处理像素数据)的数据请求信号后,输入缓冲器数据量管理部2461将表示受理了第2个单元行的外部处理像素数据的输出的数据确认信号输出到在后级连接的图像处理模块23。然后,输入缓冲器数据量管理部2461在当前输出的第一个单元行的外部处理像素数据的读出完成后,接着将指示读出并输出输入缓冲器2452-1中存储的第2个单元行的外部处理像素数据的输入缓冲器读出控制信号IBRC输出到输入缓冲器读出管理部2462。由此,输入缓冲器读出管理部2462接着从输入缓冲器2452-1依次读出第2个单元行的外部处理像素数据,作为第2个单元行的输出数据,与数据有效信号一起依次输出到在后级连接的图像处理模块23。
这样,输入缓冲器数据量管理部2461和输入缓冲器数据量管理部2461根据从在后级连接的图像处理模块23输入的数据请求信号,反复读出输入缓冲器2452-1中存储的外部处理像素数据,直到全部外部处理像素数据的读出完成为止,即,直到第4个单元行的输出数据(外部处理像素数据)的输出结束为止。然后,当输入缓冲器2452-1中存储的外部处理像素数据的读出完成后,输入缓冲器数据量管理部2461和输入缓冲器数据量管理部2461根据从在后级连接的图像处理模块23输入的数据请求信号,接着同样读出输入缓冲器2452-2中存储的外部处理像素数据。即,输入缓冲器数据量管理部2461和输入缓冲器数据量管理部2461在来自输入缓冲器2452-1的4个单元行的输出数据(外部处理像素数据)的输出完成后,接着同样将来自输入缓冲器2452-2的第5个以后的单元行的输出数据(外部处理像素数据)输出到在后级连接的图像处理模块23。
这样,输入输出用模块24中的外部输入部在输入缓冲器部245中临时存储从所连接的外部接口部30输出的外部输入数据(外部处理像素数据),根据来自在后级连接的图像处理模块23的数据输出的请求,读出输入缓冲器部245中存储的外部处理像素数据,作为输出数据进行输出。
根据这种结构,图像处理部20所具有的输入输出用模块24将从在前级连接的图像处理模块23输出的输入数据(像素数据)输出到所连接的外部接口部30,并且将从外部接口部30输出的外部输入数据(外部处理像素数据)输出到在后级连接的图像处理模块23。由此,输入输出用模块24能够在图像处理部20中构成流水线的在前级连接的图像处理模块23和在后级连接的图像处理模块23之间,组入基于通过外部接口部30连接的外部扩展处理装置600的外部图像处理。
另外,在图3所示的输入输出用模块24的结构中,示出通过请求信号、确认信号和有效信号在在前级或后级连接的图像处理模块23和外部接口部30之间交换像素数据的结构。但是,输入输出用模块24在在前级或后级连接的图像处理模块23和外部接口部30之间交换像素数据的方法不限于基于请求信号、确认信号和有效信号的方法,也可以采用基于其他各种方法的数据传送方法。
接着,对通过输入输出用模块24组入了基于外部扩展处理装置600的外部图像处理的流水线处理中的数据流进行说明。图6是示意地示出包含本发明的第1实施方式的图像处理装置1内的图像处理部20所具有的输入输出用模块24的像素数据流的图。图6中,示出在图像处理部20中构成的流水线处理中组入了基于外部扩展处理装置600的外部图像处理时的像素数据流。更具体而言,在图1所示的摄像装置100的结构中,示出通过在图像处理装置1内的图像处理部20所具有的图像处理模块23-2与图像处理模块23-3之间组入输入输出用模块24从而将基于外部扩展处理装置600的外部图像处理组入基于流水线处理的一连串图像处理中时的像素数据流。
在图像处理装置1所具有的图像处理部20中的流水线处理中,图像处理模块23和外部扩展处理装置600分别并列地对从前级的图像处理模块23或外部扩展处理装置600输出的像素数据进行预定图像处理,由此顺畅地进行流水线处理。换言之,图像处理模块23和外部扩展处理装置600分别在相同时期进行不同的图像处理。但是,在图6所示的像素数据流的说明中,为了容易说明,着眼于一个处理单位的像素数据来说明数据流。在图6所示的像素数据流中,按照以下这种流程进行处理。
(流程F1):首先,输入DMA模块22通过经由DMA总线10的DMA,按照每个单元行读出DRAM500中存储的块图像数据中包含的各个像素数据。然后,输入DMA模块22经由连接切换部21将所读出的像素数据输出到接着进行图像处理的连接目的地的图像处理模块23-1。
(流程F2):接着,图像处理模块23-1对经由连接切换部21从连接目的地的输入DMA模块22输出的像素数据实施预定的图像处理,经由连接切换部21将实施了图像处理后的处理像素数据输出到接着进行图像处理的连接目的地的图像处理模块23-2。
(流程F3):接着,图像处理模块23-2对经由连接切换部21从连接目的地的图像处理模块23-1输出的处理像素数据实施预定的图像处理,经由连接切换部21将进一步实施了图像处理后的处理像素数据输出到接着进行图像处理的外部扩展处理装置600。此时,连接切换部21将从图像处理模块23-2输出的处理像素数据输出到输入输出用模块24。
(流程F4):接着,输入输出用模块24不经由DMA总线10,而是将经由连接切换部21从连接目的地的图像处理模块23-2输出的处理像素数据直接输出到外部接口部30,经由外部接口部30传送到外部扩展处理装置600。
(流程F5):接着,外部扩展处理装置600通过外部接口部630接收经由图像处理装置1所具有的外部接口部30传送的处理像素数据,经由DMA总线610输出到扩展处理模块620。然后,扩展处理模块620对经由DMA总线610从外部接口部630输出的处理像素数据实施预定的外部图像处理,经由DMA总线610将实施了外部图像处理后的处理像素数据(外部处理像素数据)输出到外部接口部630。
(流程F6):接着,外部接口部630将经由DMA总线610从扩展处理模块620输出的外部处理像素数据传送到图像处理装置1。然后,图像处理装置1通过外部接口部30接收经由外部扩展处理装置600所具有的外部接口部630传送的外部处理像素数据,外部接口部30不经由DMA总线10而是将接收到的外部处理像素数据直接输出到输入输出用模块24。
(流程F7):接着,输入输出用模块24经由连接切换部21将经由外部接口部30从外部扩展处理装置600传送的外部处理像素数据输出到接着进行图像处理的连接目的地的图像处理模块23-3。
(流程F8):接着,图像处理模块23-3对经由连接切换部21从连接目的地的输入输出用模块24输出的外部处理像素数据实施预定的图像处理,经由连接切换部21将进一步实施了图像处理后的外部处理像素数据(处理像素数据)输出到输出DMA模块25。
(流程F9):接着,输出DMA模块25通过经由DMA总线10的DMA在DRAM500中写入(存储)经由连接切换部21从连接目的地的图像处理模块23-3输出的处理像素数据。
这样,在图像处理装置1中,执行在图像处理部20中构成的流水线处理中组入了基于外部扩展处理装置600的外部图像处理的一连串图像处理。
根据本第1实施方式,构成如下的图像处理装置(图像处理装置1):在数据总线(DMA总线10)上连接有图像处理部(图像处理部20),该图像处理部(图像处理部20)串联连接对所输入的数据(像素数据)进行预定处理的多个处理模块(图像处理模块23-1~图像处理模块23-3)而构成流水线,图像处理模块23-1~图像处理模块23-3分别依次进行处理,由此进行流水线处理,该图像处理装置1对经由DMA总线10从与DMA总线10连接的数据存储部(DRAM500)读出的像素数据进行图像处理,其中,图像处理部20具有输入输出用模块(输入输出用模块24),该输入输出用模块(输入输出用模块24)作为进行与图像处理模块23-1~图像处理模块23-3分别进行的处理不同的处理的处理模块而组入流水线内,输入输出用模块24将流水线中位于被组入的位置的前级的处理模块即第1处理模块(例如图像处理模块23-2)进行了处理后的处理数据(输入数据、像素数据、处理像素数据)(作为外部输出数据)不经由DMA总线10而直接输出到图像处理部20的外部的外部处理部(外部扩展处理装置600),将通过外部扩展处理装置600对处理数据(输入数据、像素数据、处理像素数据)进行外部处理(外部图像处理)而输入的外部处理数据(外部输入数据、外部处理像素数据)(作为输出数据)不经由DMA总线10而直接输出到流水线中位于第1处理模块(例如图像处理模块23-2)的后级的处理模块即第2处理模块(例如图像处理模块23-3)。
并且,根据本第1实施方式,构成如下的图像处理装置1:输入输出用模块24具有暂时存储处理数据(输入数据、像素数据、处理像素数据)的输出缓冲器部(输出缓冲器部242)、以及暂时存储外部处理数据(外部输入数据、外部处理像素数据)的输入缓冲器部(输入缓冲器部245),在输出缓冲器部242中临时存储第1处理模块(例如图像处理模块23-2)输出的处理数据(处理像素数据),根据来自外部扩展处理装置600的请求而输出输出缓冲器部242中存储的处理数据(处理像素数据)(作为外部输出数据),在输入缓冲器部245中临时存储外部扩展处理装置600输出的外部处理数据(外部输入数据、外部处理像素数据),根据来自第2处理模块的请求而输出输入缓冲器部245中存储的外部处理数据(外部输入数据、外部处理像素数据)(作为输出数据)。
并且,根据本第1实施方式,构成如下的图像处理装置1:输入输出用模块24还具有:处理模块输入控制部(图像处理模块输入控制部241),其根据输出缓冲器部242的存储容量,控制对输出缓冲器部242写入处理数据(输入数据、像素数据、处理像素数据);外部输出控制部(外部输出控制部243),其根据输出缓冲器部242中存储的处理数据(输入数据、像素数据、处理像素数据)的数据量,控制从输出缓冲器部242读出处理数据(输入数据、像素数据、处理像素数据);外部输入控制部(外部输入控制部244),其根据输入缓冲器部245的存储容量,控制对输入缓冲器部245写入外部处理数据(外部输入数据、外部处理像素数据);以及处理模块输出控制部(图像处理模块输出控制部246),其根据输入缓冲器部245中存储的外部处理数据(外部输入数据、外部处理像素数据)的数据量,控制从输入缓冲器部245读出外部处理数据(外部输入数据、外部处理像素数据)。
并且,根据本第1实施方式,构成如下的图像处理装置1:图像处理模块输入控制部241按照第1处理模块(例如图像处理模块23-2)进行处理的每个单位(例如单元行),对输出缓冲器部242写入处理数据(输入数据、像素数据、处理像素数据),外部输出控制部243按照外部扩展处理装置600进行外部图像处理的每个单位(例如4个单元行),读出输出缓冲器部242中存储的处理数据(输入数据、像素数据、处理像素数据),外部输入控制部244按照外部扩展处理装置600进行外部图像处理的每个单位(例如4个单元行),对输入缓冲器部245写入外部处理数据(外部输入数据、外部处理像素数据),图像处理模块输出控制部246按照第2处理模块(例如图像处理模块23-3)进行处理的每个单位(例如单元行),读出输入缓冲器部245中存储的外部处理数据(外部输入数据、外部处理像素数据)。
并且,根据本第1实施方式,构成如下的图像处理装置1:输入输出用模块24被组入流水线的开头、中途和最末尾中的至少一个位置。
并且,根据本第1实施方式,构成如下的图像处理装置1:还具有在与外部扩展处理装置600之间进行数据(输入数据、像素数据、处理像素数据、外部输出数据、外部输入数据、外部处理像素数据、输出数据)的输入输出的外部接口部(外部接口部30),输入输出用模块24经由外部接口部30在与外部扩展处理装置600之间进行数据传送。
并且,根据本第1实施方式,构成如下的图像处理装置1:处理数据(输入数据、像素数据、处理像素数据)和外部处理数据(外部输入数据、外部处理像素数据)是图像数据(例如静态图像的数据),第1处理模块(例如图像处理模块23-2)和第2处理模块(例如图像处理模块23-3)进行处理的单位(例如单元行)以及外部扩展处理装置600进行外部图像处理的单位(例如4个单元行)分别是将1帧的图像数据(例如静态图像的数据)分割成预定的多个块(例如块图像数据)后的尺寸,输出缓冲器部242的存储容量和输入缓冲器部245的存储容量比用于存储1帧的图像数据(例如静态图像的数据)中包含的像素数据的存储容量少。
如上所述,在第1实施方式的图像处理装置1中,在进行流水线处理的图像处理部20内具有不经由DMA总线10而直接连接外部接口部30的输入输出用模块24。由此,在第1实施方式的图像处理装置1中,能够将流水线处理的中途的处理像素数据传送到与图像处理装置1的外部连接的外部扩展处理装置600。而且,在第1实施方式的图像处理装置1中,能够对由外部扩展处理装置600实施了图像处理后的处理像素数据(外部处理像素数据)进行流水线处理中的后续的图像处理。由此,在第1实施方式的图像处理装置1中,能够在基于已经构成的流水线处理的图像处理中组入用于具有扩展性的基于外部扩展处理装置600的图像处理。
而且,在第1实施方式的图像处理装置1中,通过外部接口部30,能够在与外部扩展处理装置600之间传送要扩展的图像处理中使用的像素数据,而不使用DRAM500等存储部。因此,在第1实施方式的图像处理装置1中,已经构成的流水线处理不会被切断,能够在组入了要扩展的图像处理的状态下进行一连串图像处理。由此,在第1实施方式的图像处理装置1中,不会引起DRAM的总线带宽的紧张、图像处理装置1的消耗电力的增大等,不会使搭载了第1实施方式的图像处理装置1的摄像装置100的性能降低,能够扩展图像处理。
另外,在第1实施方式的图像处理装置1中,说明了在图像处理装置1内的图像处理部20所具有的图像处理模块23-2与图像处理模块23-3之间组入基于外部扩展处理装置600的外部图像处理的结构。但是,如上所述,在第1实施方式的图像处理装置1中,能够通过连接切换部21来变更图像处理部20进行的图像处理的顺序、以及组入流水线中的外部图像处理的位置。因此,在第1实施方式的图像处理装置1中,在流水线处理中组入外部图像处理的位置不限于第1实施方式中说明的位置。例如,通过连接切换部21的设定,还能够在图像处理模块23-1与图像处理模块23-2之间组入基于外部扩展处理装置600的外部图像处理。
并且,在第1实施方式的图像处理装置1中,示出图像处理部20所具有的输入输出用模块24与图像处理装置1所具有的外部接口部30连接、并经由外部接口部30在与图像处理装置1的外部所具有的外部扩展处理装置600之间交换像素数据的结构。但是,输入输出用模块24的结构不限于第1实施方式中所示的结构。例如,也可以构成为在输入输出用模块24中具有外部接口部30的功能,在输入输出用模块24与外部扩展处理装置600之间直接交换像素数据。并且,在该结构的输入输出用模块24中,例如,在外部扩展处理装置600是为了进行预先假设的外部图像处理而专门与图像处理装置1连接的图像处理装置(系统LSI)的情况下等,也可以仅具有以预定的特定的数据传送的规格和方式进行数据的传送的功能,作为外部接口部30的功能。该情况下,在专用于图像处理装置1的外部扩展处理装置600中,从输入像素数据到进行外部图像处理并输出外部处理像素数据为止的延迟时间预先可知。因此,在顺畅地进行图像处理部20中的流水线处理的情况下,也可以使输入输出用模块24的结构构成为不具有输出缓冲器部242和输入缓冲器部245,即,不进行各个像素数据的缓冲。另外,在假设在前级和后级连接的图像处理模块23中具有数据缓冲器的情况下,输入输出用模块24也可以构成为将各个图像处理模块23所具有的数据缓冲器兼用作输出缓冲器部242和输入缓冲器部245的数据缓冲器,由此不进行各个像素数据的缓冲。
另外,在第1实施方式的图像处理装置1中,说明了组入流水线处理中执行要扩展的图像处理的结构要素是与图像处理装置1的外部连接的外部扩展处理装置600的结构。但是,根据图像处理装置1的结构,还考虑将执行组入于流水线处理中而扩展的图像处理的结构要素设置在图像处理装置1中。该情况下,输入输出用模块24代替外部接口部30而在与图像处理装置1中设置的执行要扩展的图像处理的结构要素之间交换像素数据,由此,同样,能够在基于图像处理部20中已经构成的流水线处理的图像处理中组入用于具有扩展性的图像处理。
(第2实施方式)
接着,对本发明的第2实施方式进行说明。另外,在以下的说明中,也对本发明的第2实施方式的图像处理装置例如搭载于静态图像用照相机等摄像装置(以下称为“摄像装置200”)的情况进行说明。图7是示出本发明的第2实施方式中的图像处理装置的概略结构的框图。另外,在图7中,作为与本发明的第2实施方式的图像处理装置2相关联的摄像装置200内的结构要素,一并示出DRAM500。
图7所示的图像处理装置2具有DMA总线10、图像处理部40、外部接口(I/F)部30、数字信号处理器(DSP)50、选择器部60。并且,图像处理部40具有连接切换部21、输入DMA模块22、3个图像处理模块23-1~图像处理模块23-3、输入输出用模块44、输出DMA模块25。
图7所示的图像处理装置2的结构构成为,图1所示的第1实施方式的图像处理装置1所具有的图像处理部20代替图像处理部40还具有数字信号处理器50、选择器部60。并且,图7所示的图像处理装置2所具有的图像处理部40构成为将图1所示的第1实施方式的图像处理装置1所具有的图像处理部20所具有的输入输出用模块24变成输入输出用模块44。
另外,图像处理装置2和图像处理装置2所具有的图像处理部40中的其他结构要素与图1所示的第1实施方式的图像处理装置1或图像处理装置1所具有的图像处理部20中的结构要素相同。因此,在以下的说明中,在图像处理装置2和图像处理装置2所具有的图像处理部40的结构要素中,对与图1所示的第1实施方式的图像处理装置1或图像处理装置1所具有的图像处理部20的结构要素相同的结构要素标注相同标号,省略与各个结构要素有关的详细说明。另外,在图7中,与图1所示的摄像装置100同样,也省略摄像装置200所具有的各个结构要素和图像处理装置2中与DMA总线10连接的其他结构要素的图示。
与图1所示的第1实施方式的图像处理装置1所具有的图像处理部20同样,图像处理部40针对所输入的块图像数据,在图像处理装置2中使预定的各种图像处理成为流水线处理。并且,与第1实施方式的图像处理装置1所具有的图像处理部20同样,图像处理部40也具有对流水线的结构进行变更的功能。
并且,与第1实施方式的图像处理装置1所具有的图像处理部20同样,图像处理部40也具有将与图像处理模块23-1~图像处理模块23-3分别执行的图像处理不同的图像处理组入流水线处理中的功能。但是,在图像处理装置2中,还能够将由数字信号处理器50执行的图像处理(以下称为“DSP图像处理”)作为对图像处理部40中的图像处理进行扩展的图像处理组入流水线处理中。这里,数字信号处理器50中执行的组入流水线处理中的图像处理(DSP图像处理)是图像处理模块23-1~图像处理模块23-3中的任意一个图像处理模块23中均不执行的图像处理。
在图7所示的摄像装置200的结构中,能够将图像处理装置2的外部所具有的系统LSI等结构要素(图1所示的第1实施方式中为外部扩展处理装置600)执行的外部图像处理或数字信号处理器50执行的DSP图像处理中的任意一个图像处理组入图像处理部40中的流水线处理中。在以下的说明中,为了容易说明,设为图像处理装置2的外部所具有的结构要素是图1所示的第1实施方式中的图像处理装置1的外部所具有的外部扩展处理装置600来进行说明。并且,在以下的说明中,在不进行区分来表示各个外部图像处理和DSP图像处理时,称为“扩展图像处理”。在图像处理部40中,通过将输入输出用模块44作为执行扩展图像处理的图像处理模块组入流水线的结构内,外部扩展处理装置600或数字信号处理器50执行的扩展图像处理被组入流水线处理中。
另外,在图像处理装置2中,与第1实施方式的图像处理装置1所具有的图像处理部20同样,图像处理部40中的流水线的结构例如通过未图示的系统控制部进行变更(设定)。
图7中示出如下结构:通过在图像处理模块23-2与图像处理模块23-3之间组入输入输出用模块44,由外部扩展处理装置600或数字信号处理器50执行的扩展图像处理被组入流水线中。即,在图7所示的图像处理部40中,示出构成依次进行基于图像处理模块23-1的图像处理、基于图像处理模块23-2的图像处理、基于外部扩展处理装置600或数字信号处理器50的图像处理和基于图像处理模块23-3的图像处理的流水线的状态。
另外,在图像处理装置2中,与第1实施方式的图像处理装置1所具有的图像处理部20同样,将输入输出用模块44组入流水线中的位置例如通过未图示的系统控制部进行设定。因此,在图像处理装置2中,与第1实施方式的图像处理装置1所具有的图像处理部20同样,将输入输出用模块44组入流水线中的位置不限于图7所示的位置,能够组入流水线内的任意位置。
与第1实施方式的图像处理装置1所具有的图像处理部20的输入输出用模块24同样,输入输出用模块44是用于将由图像处理部40的外部所具有的结构要素执行的扩展图像处理组入流水线处理中的接口模块。另外,在第1实施方式中,输入输出用模块24和外部接口部30不经由DMA总线10而直接连接,但是,在输入输出用模块44中,选择器部60不经由DMA总线10而直接连接。输入输出用模块44例如根据来自未图示的系统控制部的控制,将从通过连接切换部21切换了连接后的连接目的地的输入DMA模块22、图像处理模块23中的任意一方经由连接切换部21而输入的像素数据,经由选择器部60而输出到与外部接口部30连接的外部扩展处理装置600或数字信号处理器50。并且,输入输出用模块44例如根据来自未图示的系统控制部的控制,将经由选择器部60从与外部接口部30连接的外部扩展处理装置600或数字信号处理器50输入的实施了扩展图像处理后的像素数据,输出到通过连接切换部21切换了连接后的连接目的地的图像处理模块23中的任意一方或输出DMA模块25。
如上所述,输入输出用模块44将与外部接口部30连接的外部扩展处理装置600执行的外部图像处理或数字信号处理器50执行的DSP图像处理中的任意一个扩展图像处理组入图像处理部40中的流水线处理中。因此,在输入输出用模块44中,作为表示将外部图像处理或DSP图像处理中的哪个扩展图像处理组入流水线处理中的信息,将表示对图像处理部40的外部所具有的哪个结构要素输出扩展图像处理中使用的像素数据的输出目的地的信息(以下称为“输出目的地信息”)附加给像素数据进行输出。该输出目的地信息是表示将扩展图像处理中使用的像素数据输出到图像处理部40的外部所具有的与外部接口部30连接的外部扩展处理装置600或数字信号处理器50中的哪个结构要素的信息。
另外,输入输出用模块44也可以对扩展图像处理中使用的像素数据附加输出目的地信息,例如,也可以作为被输入扩展图像处理中使用的像素数据的结构要素在执行各个图像处理时使用的图像处理的设定等的信息,包含在对像素数据的开头或末尾附加的所谓头信息或标记信息等附加信息中而进行附加。
另外,输入输出用模块44的结构、输入输出用模块44进行交换的像素数据的结构、以及与输入输出用模块44将扩展图像处理组入图像处理部40的流水线处理中时的动作等有关的详细说明在后面叙述。另外,在以下的说明中,在与DRAM500中存储的进行图像处理的对象的像素数据、图像处理模块23中的任意一方实施了图像处理后的处理像素数据、外部扩展处理装置600实施了外部图像处理后的外部处理像素数据进行区分来表示实施了DSP图像处理后的像素数据的情况下,将实施了DSP图像处理后的像素数据称为“DSP处理像素数据”。并且,在以下的说明中,在不进行区分来表示外部处理像素数据、DSP处理像素数据的情况下,称为“扩展处理像素数据”。并且,在以下的说明中,在不进行区分来表示处理像素数据、外部处理像素数据、DSP处理像素数据、扩展处理像素数据的情况下,简称为“处理像素数据”。
这样,在图像处理部40中,与第1实施方式的图像处理装置1所具有的图像处理部20同样,各个图像处理模块23例如根据来自未图示的系统控制部的控制,进行基于流水线处理的一连串图像处理。而且,在图像处理部40中,与第1实施方式的图像处理装置1所具有的图像处理部20同样,例如根据来自未图示的系统控制部的控制,使图像处理部40的外部所具有的结构要素执行任意一个图像处理模块23中均不执行的扩展图像处理,将其组入流水线处理中。此时,在图像处理部40中,与第1实施方式的图像处理装置1所具有的图像处理部20同样,将输入输出用模块44作为执行扩展图像处理的图像处理模块组入流水线的结构中。
由此,在图像处理装置2中,与第1实施方式的图像处理装置1同样,即使是无法由图像处理部40执行的图像处理,图像处理部40也能够与进行流水线处理的情况同样进行处理,能够扩展图像处理部40中的流水线处理。但是,在图像处理装置2中,与第1实施方式的图像处理装置1不同,选择外部扩展处理装置600执行的外部图像处理或数字信号处理器50执行的DSP图像处理中的任意一个扩展图像处理,组入流水线处理中。因此,如上所述,对输入输出用模块44输出的在扩展图像处理中使用的像素数据附加表示对外部扩展处理装置600或数字信号处理器50中的哪个结构要素进行输出的输出目的地信息。
选择器部60是如下的选择部:根据输入输出用模块44输出的扩展图像处理中使用的像素数据中附加的输出目的地信息,选择像素数据的输入输出目的地的结构要素。在输入输出用模块44输出的扩展图像处理中使用的像素数据中附加的输出目的地信息表示对图像处理装置2的外部所具有的外部扩展处理装置600进行输出的情况下,选择器部60不经由DMA总线10而直接将从输入输出用模块44输入的像素数据输出到外部接口部30。由此,从输入输出用模块44输出的像素数据通过外部接口部30传送到图像处理装置2的外部所具有的外部扩展处理装置600。然后,选择器部60将经由外部接口部30从图像处理装置2的外部所具有的外部扩展处理装置600传送的外部处理像素数据不经由DMA总线10而直接输出到输入输出用模块44。
另外,在输入输出用模块44输出的在扩展图像处理中使用的像素数据中附加的输出目的地信息表示对图像处理装置2的外部所具有的外部扩展处理装置600进行输出的情况下,输入输出用模块44将外部图像处理组入图像处理部40的流水线处理中时的动作与第1实施方式的图像处理装置1所具有的图像处理部20的输入输出用模块24相同。因此,省略与输入输出用模块44将外部图像处理组入图像处理部40的流水线处理中时的动作有关的详细说明。
另一方面,在输入输出用模块44输出的在扩展图像处理中使用的像素数据中附加的输出目的地信息表示对数字信号处理器50进行输出的情况下,选择器部60不经由DMA总线10而直接将从输入输出用模块44输入的像素数据输出到数字信号处理器50。然后,选择器部60将从数字信号处理器50传送的外部处理像素数据不经由DMA总线10而直接输出到输入输出用模块44。由此,在图像处理部40中,数字信号处理器50执行的DSP图像处理被组入图像处理部40内构成的流水线中。
数字信号处理器50设置在图像处理装置2的内部,是进行组入图像处理装置2所具有的图像处理部40内构成的流水线中的DSP图像处理的信号处理部。数字信号处理器50执行图像处理装置2所具有的图像处理部40内的任意一个图像处理模块23中均不执行的图像处理、即用于对图像处理装置2中执行的图像处理进行扩展的DSP图像处理。数字信号处理器50对摄像装置200中不经由DMA总线10而从输入输出用模块44直接输入的在扩展图像处理中使用的像素数据实施预定的数字DSP图像处理,并且将实施了DSP图像处理后的像素数据(DSP处理像素数据)不经由DMA总线10而直接输出到输入输出用模块44。
另外,数字信号处理器50在组入图像处理部40内构成的流水线中的DSP图像处理以外,还进行各种信号处理。因此,如图7所示,数字信号处理器50还与DMA总线10连接。因此,数字信号处理器50还能够使用与DMA总线10连接的DRAM500执行各种信号处理。在图7所示的图像处理装置2的结构中,数字信号处理器50假设执行DSP图像处理而不使用DRAM500的结构。但是,数字信号处理器50在对扩展图像处理中使用的像素数据实施DSP图像处理时,也可以使用DRAM500。
根据这种结构,在摄像装置200中,在基于图像处理装置2所具有的图像处理部40内的图像处理模块23分别执行的图像处理的流水线处理中,组入外部扩展处理装置600执行的外部图像处理或数字信号处理器50执行的DSP图像处理中的任意一个扩展图像处理。由此,在摄像装置200中,即使是仅通过图像处理装置2无法执行的图像处理,通过外部扩展处理装置600或数字信号处理器50,也能够与图像处理装置2所具有的图像处理部40进行流水线处理同样,对图像处理进行扩展。
接着,对图像处理装置2中的图像处理部40所具有的输入输出用模块44的结构、输入输出用模块44进行交换的像素数据的结构和输入输出用模块44的动作进行说明。另外,与第1实施方式的图像处理装置1所具有的图像处理部20的输入输出用模块24同样,输入输出用模块44也能够组入流水线内的任意位置。在以下的说明中,与第1实施方式的图像处理装置1所具有的图像处理部20的输入输出用模块24同样,设为在输入输出用模块44的前级和后级分别连接图像处理模块23来进行说明。另外,关于图像处理部40所具有的输入输出用模块44中的与外部接口部30或数字信号处理器50之间的像素数据的交接动作的概念,除了经由选择器部60进行以外,与图2所示的第1实施方式的图像处理装置1所具有的图像处理部20的输入输出用模块24中的像素数据的交接的概念动作相同。因此,省略与输入输出用模块44中的像素数据的交接的概念动作有关的详细说明。
图8是示出本发明的第2实施方式中的图像处理装置2内的图像处理部40所具有的输入输出用模块44的概略结构的框图。图8中示出输入输出用模块44中的基本结构。图8所示的输入输出用模块44具有图像处理模块输入控制部241、输出缓冲器部242、外部输出控制部443、外部输入控制部244、输入缓冲器部245、图像处理模块输出控制部246。图8所示的输入输出用模块44构成为将第1实施方式的图像处理装置1所具有的图像处理部20的输入输出用模块24所具有的外部输出控制部243变成外部输出控制部443。外部输出控制部443在第1实施方式的图像处理装置1所具有的图像处理部20的输入输出用模块24所具有的外部输出控制部243的功能中,追加对扩展图像处理中使用的像素数据附加表示输出目的地的结构要素的输出目的地信息的功能。
另外,输入输出用模块44中的其他结构要素与图3所示的第1实施方式的图像处理装置1所具有的图像处理部20的输入输出用模块24中的结构要素相同。因此,在以下的说明中,在输入输出用模块44所具有的结构要素中,对与图3所示的第1实施方式中的输入输出用模块24所具有的结构要素相同的结构要素标注相同标号,省略与各个结构要素有关的详细说明。
在输入输出用模块44中,与输入输出用模块24同样,图像处理模块输入控制部241、输出缓冲器部242和外部输出控制部443的结构是外部输出部。在输入输出用模块44中,与输入输出用模块24同样,通过外部输出部的结构,在输出缓冲器部242中暂时存储从在前级连接的图像处理模块23输出的输入数据(像素数据),根据来自像素数据的输出目的地的结构要素的数据输出的请求,读出输出缓冲器部242中暂时存储的像素数据,作为外部输出数据进行输出。另外,在输入输出用模块44中,外部输入部的结构与输入输出用模块24相同。即,在输入输出用模块44中,外部输入控制部244、输入缓冲器部245和图像处理模块输出控制部246的结构是外部输入部。
与第1实施方式中的输入输出用模块24所具有的外部输出控制部243同样,外部输出控制部443控制输出(读出)输出缓冲器部242中存储的输入数据(像素数据)。图8所示的外部输出控制部443具有输出缓冲器数据量管理部2431、输出缓冲器读出管理部4432。外部输出控制部443构成为将第1实施方式中的输入输出用模块24所具有的外部输出控制部243内的输出缓冲器读出管理部2432变成输出缓冲器读出管理部4432。
输出缓冲器数据量管理部2431监视输出缓冲器部242所具有的输出缓冲器2422-1和输出缓冲器2422-2各自的存储容量,根据监视存储容量的结果,将指示输出(读出)输出缓冲器2422中存储的像素数据的输出缓冲器读出控制信号OBRC输出到输出缓冲器读出管理部4432。
输出缓冲器读出管理部4432根据从输出缓冲器数据量管理部2431输出的输出缓冲器读出控制信号OBRC,将用于读出(输出)输出缓冲器部242中存储的输入数据(像素数据)的输出缓冲器读出选择信号OBRS和输出缓冲器读出信号OBR输出到输出缓冲器部242。由此,输出缓冲器部242根据输出缓冲器读出信号OBR读出所存储的像素数据。
在输入输出用模块44中,从输出缓冲器部242读出的像素数据不作为外部输出数据进行输出,而是输入到输出缓冲器读出管理部4432。然后,输出缓冲器读出管理部4432对从输出缓冲器部242读出(输出)的像素数据附加输出目的地信息,将附加了输出目的地信息的像素数据作为外部输出数据输出到选择器部60。此时,输出缓冲器读出管理部4432还将表示作为外部输出数据输出的单元行中包含的各个像素数据是否是有效像素数据的输出数据有效信号输出到选择器部60。
这里,对输出缓冲器读出管理部4432附加了输出目的地信息的外部输出数据的结构、即输入输出用模块44进行交换的像素数据的结构进行说明。图9是示出本发明的第2实施方式中的图像处理装置2内的图像处理部40所具有的输入输出用模块44输出的外部输出数据的结构的一例的图。在图9中,示出输出缓冲器读出管理部4432以包含在附加信息(更具体而言为头信息)中的方式附加输出目的地信息的情况的一例。
外部输出数据对扩展图像处理中使用的像素数据之前的区域、即外部输出数据的开头侧的区域附加头信息。输出缓冲器读出管理部4432以包含在该头信息中的方式附加输出目的地信息。在图9中,示出包含“输出目的地”、“图像处理参数”、“图像尺寸”、“左上坐标”的信息的头信息的结构。
这里,头信息中包含的“输出目的地”的信息是输出缓冲器读出管理部4432附加的输出目的地信息。根据该输出目的地信息,选择器部60在存在多个输出从输入输出用模块44输出的外部输出数据的输出目的地的情况下,也能够将外部输出数据输出到适当的结构要素中的任意一方。在图像处理装置2中,头信息中包含的“输出目的地”的信息(输出目的地信息)是示出与外部接口部30连接的外部扩展处理装置600或数字信号处理器50作为输出目的地的输出目的地信息。因此,选择器部60根据头信息中包含的“输出目的地”的信息(输出目的地信息),将外部输出数据中包含的在扩展图像处理中使用的像素数据输出到输出目的地信息所表示的结构要素。
并且,头信息中包含的“图像处理参数”、“图像尺寸”、和“左上坐标”的信息是执行扩展图像处理的各个结构要素(图像处理装置2中为外部扩展处理装置600或数字信号处理器50)在执行各个扩展图像处理时使用的图像处理的设定等的信息(附加信息)。
更具体而言,头信息中包含的“图像处理参数”的信息是对外部输出数据中包含的像素数据实施的扩展图像处理(外部图像处理或DSP图像处理)的设定(参数)的信息。作为该“图像处理参数”的信息,例如存在滤波处理中的滤波系数的值、图像插值处理中的设定值、尺寸调整处理中的尺寸调整率的值、变形校正处理中的变形系数的值等的参数等信息。
并且,头信息中包含的“图像尺寸”的信息是与外部输出数据中包含的图像数据的尺寸有关的信息。作为该“图像尺寸”的信息,例如存在像素数据的数据量(像素数)、块图像数据的尺寸(水平方向的像素数和垂直方向的像素数)、1帧的静态图像的尺寸(水平方向的像素数和垂直方向的像素数)等信息。
并且,头信息中包含的“左上坐标”的信息是与外部输出数据中包含的像素数据相对于基准位置(坐标)的位置(坐标)有关的信息。作为该“左上坐标”的信息,例如存在如下坐标等信息,该坐标用于示出与外部输出数据中包含的像素数据所表示的图像的区域中位于左上方的像素对应的像素数据(例如开头的像素数据)相对于基准坐标(0,0)处于何种位置关系,该基准坐标(0,0)是对1帧的静态图像进行图像处理时一般作为基准位置进行处理的左上方的像素的坐标。
被输入外部输出数据即扩展图像处理中使用的像素数据的结构要素(外部扩展处理装置600或数字信号处理器50)通过使用与像素数据同时输入的头信息中包含的“图像处理参数”、“图像尺寸”和“左上坐标”的信息,能够进行适合于所输入的像素数据的扩展图像处理。并且,在“图像处理参数”、“图像尺寸”和“左上坐标”中的任意一个信息中,例如可以包含表示外部输出数据中包含的像素数据是1帧的静态图像内的哪个位置的块图像数据、换言之是表示针对1帧的静态图像的图像处理开始的最初的块图像数据还是针对1帧的静态图像的图像处理结束的最后的块图像数据的信息等。由此,能够进行考虑了针对1帧的静态图像的图像处理的状况的扩展图像处理。
另外,一般而言,在图像处理装置中,还考虑不将执行扩展图像处理时使用的信息作为头信息而与扩展图像处理中使用的像素数据同时输出的结构。但是,在该结构的情况下,例如,需要通过未图示的系统控制部对执行扩展图像处理的各个结构要素单独进行与头信息中包含的信息相同的设定,在流水线处理中,认为很难进行执行扩展图像处理的各个结构要素和图像处理部40所具有的各个图像处理模块23的同步。因此,在流水线处理中,为了容易进行执行扩展图像处理的各个结构要素和图像处理部40所具有的各个图像处理模块23的同步,认为将执行扩展图像处理时使用的信息作为头信息而与扩展图像处理中使用的像素数据同时输出是有效的方法。
另外,输出缓冲器读出管理部4432附加输出目的地信息并进行输出的外部输出数据的结构不限于图9所示的结构,考虑各种结构。并且,执行扩展图像处理时使用的图像处理的设定等信息不限于图9所示的信息,考虑各种信息和设定。
另外,除了外部输出数据的结构不同以外,可以认为输入输出用模块44中的外部输出部和外部输入部的动作的定时与图4和图5所示的第1实施方式的图像处理装置1所具有的图像处理部20的输入输出用模块24中的外部输出部和外部输入部的动作的定时相同。因此,省略与输入输出用模块44中的外部输出部和外部输入部的动作的定时有关的详细说明。
根据这种结构,图像处理部40所具有的输入输出用模块44将从在前级连接的图像处理模块23输出的输入数据(像素数据)输出到图像处理部40的外部所具有的任意一个结构要素,并且将从图像处理部40的外部所具有的任意一个结构要素输出的外部输入数据(外部处理像素数据)输出到在后级连接的图像处理模块23。由此,输入输出用模块44能够在图像处理部40中构成流水线的在前级连接的图像处理模块23和在后级连接的图像处理模块23之间,组入基于图像处理部40的外部所具有的任意一个结构要素的扩展图像处理。
另外,在图8所示的输入输出用模块44的结构中,与图3所示的第1实施方式中的输入输出用模块24同样,示出通过请求信号、确认信号和有效信号来交换像素数据的结构,但是,在输入输出用模块44中,也可以通过其他各种数据的传送方法交换像素数据。
接着,对通过输入输出用模块44组入了基于图像处理部40的外部所具有的任意一个结构要素的扩展图像处理的流水线处理中的数据流进行说明。图10是示意地示出包含本发明的第2实施方式中的图像处理装置2内的图像处理部40所具有的输入输出用模块44的像素数据流的图。图10中,示出在图像处理部40中构成的流水线处理中组入了基于数字信号处理器50的DSP图像处理时的像素数据流。更具体而言,在图7所示的摄像装置200的结构中,示出通过在图像处理装置2内的图像处理部40所具有的图像处理模块23-2与图像处理模块23-3之间组入输入输出用模块44从而将基于数字信号处理器50的DSP图像处理组入基于流水线处理的一连串图像处理中时的像素数据流。
在图像处理装置2所具有的图像处理部40中的流水线处理中,与第1实施方式的图像处理装置1所具有的图像处理部20中的流水线处理同样,图像处理模块23和数字信号处理器50分别并列地对从前级的图像处理模块23或数字信号处理器50输出的像素数据进行预定图像处理,由此顺畅地进行流水线处理。换言之,图像处理模块23和数字信号处理器50分别在相同时期进行不同的图像处理。但是,在图10所示的像素数据流的说明中,为了容易说明,与第1实施方式的图像处理装置1中的像素数据流的说明同样,着眼于一个处理单位的像素数据来说明数据流。在图10所示的像素数据流中,按照以下这种流程进行处理。
(流程F11):首先,输入DMA模块22通过经由DMA总线10的DMA,按照每个单元行读出DRAM500中存储的块图像数据中包含的各个像素数据,经由连接切换部21将所读出的像素数据输出到接着进行图像处理的连接目的地的图像处理模块23-1。
(流程F12):接着,图像处理模块23-1对经由连接切换部21从连接目的地的输入DMA模块22输出的像素数据实施预定的图像处理,经由连接切换部21将实施了图像处理后的处理像素数据输出到接着进行图像处理的连接目的地的图像处理模块23-2。
(流程F13):接着,图像处理模块23-2对经由连接切换部21从连接目的地的图像处理模块23-1输出的处理像素数据实施预定的图像处理,经由连接切换部21将进一步实施了图像处理后的处理像素数据输出到接着进行图像处理的数字信号处理器50。此时,连接切换部21将从图像处理模块23-2输出的处理像素数据输出到输入输出用模块44。
(流程F14):接着,输入输出用模块44对经由连接切换部21从连接目的地的图像处理模块23-2输出的处理像素数据附加表示数字信号处理器50的输出目的地信息。然后,输入输出用模块44将附加了输出目的地信息的处理像素数据不经由DMA总线10而直接输出到选择器部60。
(流程F15):接着,选择器部60根据从输入输出用模块44输入的处理像素数据中附加的输出目的地信息,选择数字信号处理器50作为处理像素数据的输入输出目的地的结构要素。然后,选择器部60将不经由DMA总线10而从输入输出用模块44直接输入的处理像素数据传送到选择出的数字信号处理器50。
(流程F16):接着,数字信号处理器50对经由图像处理装置2所具有的选择器部60传送的处理像素数据实施预定的DSP图像处理,将实施了DSP图像处理后的处理像素数据(DSP处理像素数据)输出到选择器部60。
(流程F17):接着,选择器部60不经由DMA总线10而将从数字信号处理器50输出的DSP处理像素数据直接输出到输入输出用模块44。
(流程F18):接着,输入输出用模块44经由连接切换部21将从选择器部60不经由DMA总线10而直接输出的DSP处理像素数据输出到接着进行图像处理的连接目的地的图像处理模块23-3。
(流程F19):接着,图像处理模块23-3对经由连接切换部21从连接目的地的输入输出用模块44输出的DSP处理像素数据实施预定的图像处理,经由连接切换部21将进一步实施了图像处理后的DSP处理像素数据(处理像素数据)输出到输出DMA模块25。
(流程F20):接着,输出DMA模块25通过经由DMA总线10的DMA在DRAM500中写入(存储)经由连接切换部21从连接目的地的图像处理模块23-3输出的处理像素数据。
这样,在图像处理装置2中,执行在图像处理部40中构成的流水线处理中组入了基于数字信号处理器50的DSP图像处理的一连串图像处理。
根据本第2实施方式,构成如下的图像处理装置(图像处理装置2):外部输出控制部(外部输出控制部443)将输出目的地信息附加给处理数据(扩展图像处理中包含使用的输入数据、像素数据、处理像素数据),该输出目的地信息表示对多个外部处理部(外部扩展处理装置600和数字信号处理器50)中的哪个外部处理部(外部扩展处理装置600或数字信号处理器50)输出处理数据(输入数据、像素数据、处理像素数据)。
并且,根据本第2实施方式,构成如下的图像处理装置2:输出目的地信息包含在附加信息中,该附加信息表示外部处理部(外部扩展处理装置600或数字信号处理器50)对处理数据(输入数据、像素数据、处理像素数据)进行的外部处理(扩展图像处理、外部图像处理或DSP图像处理)的设定(图像处理的设定)的信息。
如上所述,在第2实施方式的图像处理装置2中,在进行流水线处理的图像处理部40内具有不经由DMA总线10而直接连接选择器部60的输入输出用模块44。此时,在第2实施方式的图像处理装置2中,输入输出用模块44将用于供选择器部60选择传送像素数据的结构要素的输出目的地信息附加给像素数据进行输出。由此,在第2实施方式的图像处理装置2中,选择器部60根据像素数据中附加的输出目的地信息来选择像素数据的输入输出目的地的结构要素,能够将流水线处理的中途的处理像素数据传送到输出目的地信息所表示的图像处理部40的外部所具有的结构要素。而且,在第2实施方式的图像处理装置2中,能够对由输出目的地信息所表示的图像处理部40的外部所具有的结构要素实施了图像处理后的扩展处理像素数据(外部处理像素数据或DSP处理像素数据)进行流水线处理中的后续的图像处理。由此,在第2实施方式的图像处理装置2中,与第1实施方式的图像处理装置1同样,能够在基于已经构成的流水线处理的图像处理中组入基于图像处理部40的外部所具有的结构要素的图像处理,以具有扩展性。
而且,在第2实施方式的图像处理装置2中,与第1实施方式的图像处理装置1同样,能够在与图像处理部40的外部所具有的结构要素之间传送在扩展的图像处理中使用的像素数据,而不使用DRAM500等存储部。因此,在第2实施方式的图像处理装置2中,与第1实施方式的图像处理装置1同样,已经构成的流水线处理不会被切断,能够在组入了要扩展的图像处理的状态下进行一连串图像处理。由此,在第2实施方式的图像处理装置2中,与第1实施方式的图像处理装置1同样,不会引起DRAM的总线带宽的紧张、图像处理装置2的消耗电力的增大等,不会使搭载了第2实施方式的图像处理装置2的摄像装置200的性能降低,能够扩展图像处理。
另外,在第2实施方式的图像处理装置2中,说明了在图像处理装置2内的图像处理部40所具有的图像处理模块23-2与图像处理模块23-3之间组入基于数字信号处理器50的DSP图像处理的结构。但是,如上所述,在第2实施方式的图像处理装置2中,能够通过选择器部60选择像素数据的输入输出目的地的结构要素。因此,在第2实施方式的图像处理装置2中,与第1实施方式的图像处理装置1同样,能够实现组入基于外部扩展处理装置600的外部图像处理的结构。
另外,在第2实施方式的图像处理装置2中,通过连接切换部21变更图像处理部40进行的图像处理的顺序、组入流水线中的扩展图像处理的位置的思路与第1实施方式的图像处理装置1相同。
并且,在第2实施方式的图像处理装置2中,示出图像处理部40所具有的输入输出用模块44与图像处理装置2所具有的选择器部60连接、并经由选择器部60在与图像处理部40的外部所具有的结构要素之间交换像素数据的结构。但是,输入输出用模块44的结构不限于第2实施方式中所示的结构。例如,也可以构成为在输入输出用模块44中具有选择器部60和外部接口部30的功能。而且,在该结构的输入输出用模块44中,与第1实施方式中的输入输出用模块24同样,考虑图像处理部40的外部所具有的结构要素中的像素数据的从输入到输出的延迟时间,可以兼用输出缓冲器部242和输入缓冲器部245的结构。即,可以构成为不进行输入输出用模块44中的各个像素数据的缓冲。
另外,说明了如下结构:在第1实施方式的图像处理装置1中,在图像处理部20中具有一个输入输出用模块24,在第2实施方式的图像处理装置2中,在图像处理部40中具有一个输入输出用模块44。但是,在本发明的图像处理装置中,图像处理部所具有的输入输出用模块的数量不限于第1实施方式和第2实施方式中所示的数量即一个。即,在本发明的图像处理装置中,也可以构成为在图像处理部中具有多个输入输出用模块。通过在图像处理部中具有多个输入输出用模块,能够将由图像处理部的外部所具有的结构要素执行的图像处理组入图像处理部中已经构成的流水线内的多个位置。
(第3实施方式)
接着,对本发明的第3实施方式进行说明。另外,在以下的说明中,也对本发明的第3实施方式的图像处理装置例如搭载于静态图像用照相机等摄像装置(以下称为“摄像装置300”)的情况进行说明。图11是示出本发明的第3实施方式中的图像处理装置的概略结构的框图。另外,图11所示的本发明的第3实施方式的图像处理装置3构成为在图7所示的第2实施方式的图像处理装置2所具有的图像处理部40中具有多个(2个)输入输出用模块44。
另外,在图11中,作为与本发明的第3实施方式的图像处理装置3相关联的摄像装置300内的结构要素,一并示出DRAM500、外部扩展处理装置600、DRAM700、外部扩展处理装置800、DRAM900,该外部扩展处理装置800具有DMA总线810、扩展处理模块820和外部接口(I/F)部830。另外,除了对所输入的像素数据实施的预定的数字外部图像处理不同以外,外部扩展处理装置800是与外部扩展处理装置600相同的图像处理装置(系统LSI)。并且,除了与外部扩展处理装置800连接以外,DRAM900也是与DRAM700相同的数据存储部。
图11所示的图像处理装置3具有DMA总线10、图像处理部70、2个外部接口(I/F)部30(外部接口部30-1和外部接口部30-2)、数字信号处理器(DSP)50、选择器部80。并且,图像处理部70具有连接切换部21、输入DMA模块22、3个图像处理模块23-1~图像处理模块23-3、2个输入输出用模块44(输入输出用模块44-1和输入输出用模块44-2)、输出DMA模块25。
在图11所示的图像处理装置3的结构中,伴随着在图7所示的第2实施方式的图像处理装置2所具有的图像处理部40中具有2个输入输出用模块44,将第2实施方式的图像处理装置2所具有的图像处理部40和选择器部60变成图像处理部70和选择器部80。
另外,图像处理装置3和图像处理装置3所具有的图像处理部70中的其他结构要素与图7所示的第2实施方式的图像处理装置2或图像处理装置2所具有的图像处理部40中的结构要素相同。因此,在以下的说明中,在图像处理装置3和图像处理装置3所具有的图像处理部70的结构要素中,对与图7所示的第2实施方式的图像处理装置2或图像处理装置2所具有的图像处理部40的结构要素相同的结构要素标注相同标号,省略与各个结构要素有关的详细说明。另外,在图11中,与图7所示的摄像装置200同样,也省略摄像装置300所具有的各个结构要素和图像处理装置3中与DMA总线10连接的其他结构要素的图示。
与图7所示的第2实施方式的图像处理装置2所具有的图像处理部40同样,图像处理部70针对所输入的块图像数据,在图像处理装置3中使预定的各种图像处理成为流水线处理。并且,与第2实施方式的图像处理装置2所具有的图像处理部40同样,图像处理部70也具有对流水线的结构进行变更的功能。
并且,与第2实施方式的图像处理装置2所具有的图像处理部40同样,图像处理部70也具有将与图像处理模块23-1~图像处理模块23-3分别执行的图像处理不同的图像处理组入流水线处理中的功能。但是,在图像处理装置3中,能够将数字信号处理器50执行的DSP图像处理、外部扩展处理装置600执行的外部图像处理和外部扩展处理装置800执行的外部图像处理中的任意2个扩展图像处理作为对图像处理部70中的图像处理进行扩展的图像处理而组入流水线处理中。另外,在图像处理装置3中,与第2实施方式的图像处理装置2所具有的图像处理部40同样,例如通过未图示的系统控制部进行变更(设定)图像处理部70中的流水线的结构。
图11中示出如下结构:通过在图像处理模块23-1与图像处理模块23-2之间组入输入输出用模块44-1,外部扩展处理装置800执行的外部图像处理被组入流水线中,通过在图像处理模块23-2与图像处理模块23-3之间组入输入输出用模块44-2,外部扩展处理装置600执行的外部图像处理被组入流水线中。即,在图11所示的图像处理部70中,示出构成依次进行基于图像处理模块23-1的图像处理、基于外部扩展处理装置800的图像处理、基于图像处理模块23-2的图像处理、基于外部扩展处理装置600的图像处理、和基于图像处理模块23-3的图像处理的流水线的状态。
另外,在图像处理装置3中,与第2实施方式的图像处理装置2所具有的图像处理部40同样,将输入输出用模块44组入流水线中的位置例如通过未图示的系统控制部进行设定。因此,在图像处理装置3中,与第2实施方式的图像处理装置2所具有的图像处理部40同样,将输入输出用模块44组入流水线中的位置不限于图11所示的位置,能够组入流水线内的任意位置。
输入输出用模块44-1和输入输出用模块44-2分别与第2实施方式的图像处理装置2所具有的图像处理部40的输入输出用模块44相同。但是,在图像处理装置3中,在流水线的2处组入由图像处理部70的外部所具有的结构要素执行的扩展图像处理,因此,各个输入输出用模块44输出的外部输出数据中包含的输出目的地信息表示不同的结构要素。因此,各个输入输出用模块44输出的外部输出数据通过选择器部80输出到与输出目的地信息对应的结构要素即数字信号处理器50、外部扩展处理装置600或外部扩展处理装置800中的任意一方。并且,输入到各个输入输出用模块44的外部输入数据经由选择器部80从与外部输出数据中包含的输出目的地信息对应的结构要素输入。
与第2实施方式的图像处理装置2所具有的选择器部60同样,选择器部80根据输入输出用模块44分别输出的外部输出数据中包含的输出目的地信息,选择传送扩展图像处理中使用的像素数据的结构要素并输出。然后,选择器部80将从选择出的结构要素传送的外部输入数据(扩展处理像素数据)输出到对应的输入输出用模块44中的任意一方。
根据这种结构,在摄像装置300中,在基于图像处理装置3所具有的图像处理部70内的图像处理模块23分别执行的流水线处理的一连串图像处理中,组入数字信号处理器50执行的DSP图像处理、外部扩展处理装置600执行的外部图像处理和外部扩展处理装置800执行的外部图像处理中的任意2个扩展图像处理。由此,在摄像装置300中,针对仅通过图像处理装置3无法执行的2个图像处理,通过数字信号处理器50、外部扩展处理装置600或外部扩展处理装置800,与图像处理部70进行流水线处理同样,能够对基于图像处理部70的流水线处理的一连串图像处理进行扩展。
接着,对通过2个输入输出用模块44而组入了基于图像处理部70的外部所具有的任意一个结构要素的扩展图像处理的流水线处理中的数据流进行说明。图12是示意地示出包含本发明的第3实施方式中的图像处理装置3内的图像处理部70所具有的输入输出用模块44的像素数据流的图。图12中,示出在图像处理部70中构成的流水线处理中组入了基于外部扩展处理装置800的外部图像处理和基于外部扩展处理装置600的外部图像处理时的像素数据流。更具体而言,在图11所示的摄像装置300的结构中,示出通过在图像处理装置3内的图像处理部70所具有的图像处理模块23-1与图像处理模块23-2之间组入输入输出用模块44-1从而将基于外部扩展处理装置800的外部图像处理组入基于流水线处理的一连串图像处理中、并通过在图像处理模块23-2与图像处理模块23-3之间组入输入输出用模块44-2从而将基于外部扩展处理装置800的外部图像处理组入基于流水线处理的一连串图像处理中时的像素数据流。
在图像处理装置3所具有的图像处理部70中的流水线处理中,与第2实施方式的图像处理装置2所具有的图像处理部40中的流水线处理同样,图像处理模块23、外部扩展处理装置800、外部扩展处理装置600分别针对所输入的像素数据在相同时期并列进行预定的不同的图像处理,由此顺畅地进行流水线处理。但是,在图12所示的像素数据流的说明中,为了容易说明,与第2实施方式的图像处理装置2中的像素数据流的说明同样,着眼于一个处理单位的像素数据来说明数据流。在图10所示的像素数据流中,按照以下这种流程进行处理。
(流程F21):首先,输入DMA模块22通过经由DMA总线10的DMA,按照每个单元行读出DRAM500中存储的块图像数据中包含的各个像素数据,经由连接切换部21将所读出的像素数据输出到接着进行图像处理的连接目的地的图像处理模块23-1。
(流程F22):接着,图像处理模块23-1对经由连接切换部21从连接目的地的输入DMA模块22输出的像素数据实施预定的图像处理,经由连接切换部21将实施了图像处理后的处理像素数据输出到接着进行图像处理的外部扩展处理装置800。此时,连接切换部21将从图像处理模块23-1输出的处理像素数据输出到输入输出用模块44-1。
(流程F23):接着,输入输出用模块44-1对经由连接切换部21从连接目的地的图像处理模块23-1输出的处理像素数据附加表示外部扩展处理装置800的输出目的地信息。然后,输入输出用模块44-1将附加了输出目的地信息的处理像素数据不经由DMA总线10而直接输出到选择器部80。
(流程F24):接着,选择器部80根据从输入输出用模块44-1输入的处理像素数据中附加的输出目的地信息,选择外部接口部30-1作为处理像素数据的输入输出目的地的结构要素。然后,选择器部80将不经由DMA总线10而从输入输出用模块44-1直接输入的处理像素数据输出到选择出的外部接口部30-1。由此,经由选择器部80从输入输出用模块44-1输出的处理像素数据进一步经由外部接口部30-1传送到外部扩展处理装置800。
(流程F25):接着,外部扩展处理装置800通过外部接口部830接收经由图像处理装置3所具有的外部接口部30-1传送的处理像素数据,经由DMA总线810输出到扩展处理模块820。然后,扩展处理模块820对经由DMA总线810从外部接口部830输出的处理像素数据实施预定的外部图像处理,经由DMA总线810将实施了外部图像处理后的处理像素数据(外部处理像素数据)输出到外部接口部830。
(流程F26):接着,外部接口部830将经由DMA总线810从扩展处理模块820输出的外部处理像素数据传送到图像处理装置3。然后,图像处理装置3通过外部接口部30-1接收经由外部扩展处理装置800所具有的外部接口部830传送的外部处理像素数据,外部接口部30-1将接收到的外部处理像素数据输出到选择器部80。
(流程F27):接着,选择器部80不经由DMA总线10而将从外部接口部30-1输出的外部处理像素数据直接输出到输入输出用模块44-1。
(流程F28):接着,输入输出用模块44-1经由连接切换部21将不经由DMA总线10而从选择器部80直接输出的外部处理像素数据输出到接着进行图像处理的连接目的地的图像处理模块23-2。
(流程F29):接着,图像处理模块23-2对经由连接切换部21从连接目的地的输入输出用模块44-1输出的外部处理像素数据实施预定的图像处理,经由连接切换部21将进一步实施了图像处理后的外部处理像素数据(处理像素数据)输出到接着进行图像处理的外部扩展处理装置600。此时,连接切换部21将从图像处理模块23-2输出的处理像素数据输出到输入输出用模块44-2。
(流程F30):接着,输入输出用模块44-2对经由连接切换部21从连接目的地的图像处理模块23-2输出的处理像素数据附加表示外部扩展处理装置600的输出目的地信息。然后,输入输出用模块44-2将附加了输出目的地信息的处理像素数据不经由DMA总线10而直接输出到选择器部80。
(流程F31):接着,选择器部80根据从输入输出用模块44-2输入的处理像素数据中附加的输出目的地信息,选择外部接口部30-2作为处理像素数据的输入输出目的地的结构要素。然后,选择器部80将不经由DMA总线10而从输入输出用模块44-2直接输入的处理像素数据输出到选择出的外部接口部30-2。由此,经由选择器部80从输入输出用模块44-2输出的处理像素数据进一步经由外部接口部30-2传送到外部扩展处理装置600。
(流程F32):接着,外部扩展处理装置600通过外部接口部630接收经由图像处理装置3所具有的外部接口部30-2传送的处理像素数据,经由DMA总线610输出到扩展处理模块620。然后,扩展处理模块620对经由DMA总线610从外部接口部630输出的处理像素数据实施预定的外部图像处理,经由DMA总线610将实施了外部图像处理后的处理像素数据(外部处理像素数据)输出到外部接口部630。
(流程F33):接着,外部接口部630将经由DMA总线610从扩展处理模块620输出的外部处理像素数据传送到图像处理装置3。然后,图像处理装置3通过外部接口部30-2接收经由外部扩展处理装置600所具有的外部接口部630传送的外部处理像素数据,外部接口部30-2将接收到的外部处理像素数据输出到选择器部80。
(流程F34):接着,选择器部80将从外部接口部30-2输出的外部处理像素数据不经由DMA总线10而直接输出到输入输出用模块44-2。
(流程F35):接着,输入输出用模块44-2经由连接切换部21,将不经由DMA总线10而从选择器部80直接输出的外部处理像素数据输出到接着进行图像处理的连接目的地的图像处理模块23-3。
(流程F36):接着,图像处理模块23-3对经由连接切换部21从连接目的地的输入输出用模块44-2输出的外部处理像素数据实施预定的图像处理,经由连接切换部21将进一步实施了图像处理后的外部处理像素数据(处理像素数据)输出到输出DMA模块25。
(流程F37):接着,输出DMA模块25通过经由DMA总线10的DMA,在DRAM500中写入(存储)经由连接切换部21从连接目的地的图像处理模块23-3输出的处理像素数据。
这样,在图像处理装置3中,执行在图像处理部70中构成的流水线处理中组入了基于外部扩展处理装置800的外部图像处理和基于外部扩展处理装置600的外部图像处理的一连串图像处理。
如上所述,在第3实施方式的图像处理装置3中,在进行流水线处理的图像处理部70内具有不经由DMA总线10而直接连接选择器部80的2个输入输出用模块44。此时,在第3实施方式的图像处理装置3中,各个输入输出用模块44将用于供选择器部80选择传送像素数据的结构要素的输出目的地信息附加给像素数据进行输出。由此,在第3实施方式的图像处理装置3中,选择器部80根据像素数据中附加的输出目的地信息分别选择与各个输入输出用模块44对应的像素数据的输入输出目的地的结构要素,能够将各个输入输出用模块44的位置处的流水线处理的中途的处理像素数据传送到输出目的地信息所表示的图像处理部70的外部所具有的各个结构要素。而且,在第3实施方式的图像处理装置3中,能够针对在各个输入输出用模块44的位置处由图像处理部70的外部所具有的结构要素实施了图像处理后的扩展处理像素数据(外部处理像素数据或DSP处理像素数据),进行各个输入输出用模块44的位置处的后续的流水线处理的图像处理。由此,在第3实施方式的图像处理装置3中,与第2实施方式的图像处理装置2同样,能够在基于已经构成的流水线处理的图像处理中组入基于图像处理部70的外部所具有的多个结构要素的多个图像处理,以具有扩展性。
而且,在第3实施方式的图像处理装置3中,与第2实施方式的图像处理装置2同样,能够在与图像处理部70的外部所具有的多个结构要素之间传送在扩展的图像处理中使用的像素数据,而不使用DRAM500等存储部。因此,在第3实施方式的图像处理装置3中,与第2实施方式的图像处理装置2同样,已经构成的流水线处理不会被切断,能够在组入了要扩展的多个图像处理的状态下进行一连串图像处理。由此,在第3实施方式的图像处理装置3中,与第2实施方式的图像处理装置2同样,不会引起DRAM的总线带宽的紧张、图像处理装置3的消耗电力的增大等,不会使搭载了第3实施方式的图像处理装置3的摄像装置300的性能降低,能够扩展图像处理。
另外,在第3实施方式的图像处理装置3中,说明了在图像处理装置3内的图像处理部70所具有的图像处理模块23-1与图像处理模块23-2之间、以及图像处理模块23-2与图像处理模块23-3之间的各个位置组入基于外部扩展处理装置800或外部扩展处理装置600的外部图像处理的结构。但是,如上所述,在第3实施方式的图像处理装置3中,能够通过选择器部80选择像素数据的输入输出目的地的结构要素,因此,能够实现在图像处理部70中的流水线内的任意位置组入基于数字信号处理器50的DSP图像处理的结构。
并且,在第3实施方式的图像处理装置3中,说明了在图像处理装置3内的图像处理部70所具有的图像处理模块23-1与图像处理模块23-2之间组入输入输出用模块44-1、并在图像处理模块23-2与图像处理模块23-3之间组入输入输出用模块44-2的结构。但是,如上所述,在第3实施方式的图像处理装置3中,也能够通过连接切换部21变更图像处理部70进行的图像处理的顺序、组入流水线中的输入输出用模块44的位置。因此,能够构成为将输入输出用模块44-1和输入输出用模块44-2连续组入流水线中。例如,能够构成为在图像处理模块23-1与图像处理模块23-2之间连续组入基于外部扩展处理装置800的外部图像处理和基于外部扩展处理装置600的外部图像处理。
另外,在第3实施方式的图像处理装置3中,通过连接切换部21变更图像处理部70进行的图像处理的顺序、组入流水线中的扩展图像处理的位置的变更的思路与第2实施方式的图像处理装置2相同。
另外,在第3实施方式的图像处理装置3中,示出外部接口部30-1向外部扩展处理装置800传送处理像素数据、并且外部接口部30-2向外部扩展处理装置600传送处理像素数据的结构。即,说明了外部接口部30是与图像处理装置3的外部所具有的一个结构要素对应的结构的情况。但是,外部接口部30对应的外部的结构要素不限于一个结构要素,也可以是与外部的多个结构要素对应的结构。例如,外部接口部30可以是与多个通道对应的PCI-Express规格的连接部。该情况下,外部接口部30也可以构成为根据所输入的处理像素数据中附加的输出目的地信息,选择对该处理像素数据执行图像处理的外部的结构要素,向选择出的结构要素传送处理像素数据。
另外,在第1实施方式的图像处理装置1中,说明了在图像处理装置1所具有的图像处理部20中的一连串流水线处理中组入基于与图像处理装置1的外部连接的外部扩展处理装置600的外部图像处理的结构。并且,在第2实施方式的图像处理装置2中,说明了在图像处理装置2所具有的图像处理部40中的一连串流水线处理中组入基于与图像处理部40的外部连接的数字信号处理器50的DSP图像处理的结构。进而,在第3实施方式的图像处理装置3中,说明了在图像处理装置3所具有的图像处理部70中的一连串流水线处理中组入基于与图像处理装置3的外部连接的外部扩展处理装置800的外部图像处理和基于外部扩展处理装置600的外部图像处理的结构。即,在第1实施方式~第3实施方式中,说明了如下结构:向图像处理部的外部临时传送图像处理部中执行到流水线处理的中途的处理像素数据,并在被传送了在图像处理部的外部实施了图像处理后的处理像素数据(扩展处理像素数据)后,在图像处理部中进行流水线处理的后续的图像处理。
但是,根据搭载了图像处理装置的例如摄像装置的结构,还考虑如下结构:在图像处理装置所具有的图像处理部中从中途起执行流水线处理。更具体而言,例如,考虑摄像装置中搭载的固体摄像元件输出的像素数据的构造与输入到图像处理部中构成的流水线处理的像素数据的构造不同的情况等。该情况下,考虑在摄像装置中,搭载与输出构造不同的像素数据的固体摄像元件对应的外部的摄像处理装置,外部的摄像处理装置执行与图像处理装置所具有的图像处理部中构成的流水线处理中的前级的图像处理不同方法的图像处理,然后,接着基于外部的摄像处理装置的图像处理,进行图像处理装置所具有的图像处理部中构成的流水线处理中的后级的图像处理。
并且,根据搭载了图像处理装置的例如摄像装置的结构,还考虑如下结构:在图像处理装置所具有的图像处理部中将流水线处理执行到中途为止。更具体而言,例如,考虑输入到摄像装置中搭载的显示部的像素数据的构造与从图像处理部中构成的流水线处理输出的像素数据的构造不同的情况等。该情况下,考虑在摄像装置中,搭载与输入构造不同的像素数据的显示部对应的外部的显示处理装置,由图像处理装置执行图像处理部中构成的流水线处理中的前级的图像处理,然后,接着基于图像处理装置的前级的图像处理,由外部的显示处理装置进行与图像处理部中构成的流水线处理中的后级的图像处理不同方法的图像处理,输出到显示部。
即,在图像处理装置中,还考虑如下结构:仅向图像处理部的外部传送(输出)图像处理部中执行了流水线处理后的处理像素数据,或者,仅传送(输入)图像处理装置(或图像处理部)的外部的结构要素中实施了扩展图像处理后的扩展处理像素数据。该情况下,能够实现如下结构:在图像处理部所具有的输入输出用模块中,通过使与对图像处理部的外部传送(输出)处理像素数据相关联的结构要素、或与从图像处理部的外部传送(输入)扩展处理像素数据相关联的结构要素中的任意一进行动作,仅对外部的结构要素传送(输出)处理像素数据、或仅从外部的结构要素传送(输入)扩展处理像素数据。
(第1应用例)
接着,对本发明的第1应用例进行说明。第1应用例是如下结构的一例:在图像处理部所具有的输入输出用模块中,通过仅使与从图像处理部的外部传送(输入)扩展处理像素数据相关联的结构要素进行动作,从而仅实现从外部的结构要素传送(输入)扩展处理像素数据。另外,在以下的说明中,对本发明的第1实施方式的图像处理装置1例如搭载于静态图像用照相机等摄像装置(以下称为“摄像装置400”)的情况进行说明。另外,能够认为在第2实施方式的图像处理装置2和第3实施方式的图像处理装置3中也是同样的。
图13是示出搭载了本发明的第1实施方式的图像处理装置1的第1应用例的概略结构的框图。另外,在图13中,在第1应用例的结构的摄像装置400中,作为与图像处理装置1相关联的结构要素,一并示出DRAM500、外部扩展处理装置1000、图像传感器1100、DRAM2000,该外部扩展处理装置1000具有DMA总线1010、摄像处理部1020和外部接口(I/F)部1030。另外,在图13中,与图1所示的摄像装置100同样,省略摄像装置400所具有的各个结构要素和图像处理装置1中与DMA总线10连接的其他结构要素的图示。
图像传感器1100是输出对由摄像装置400所具有的镜头成像的被摄体的光学像进行光电转换后的像素信号的固体摄像元件。并且,外部扩展处理装置1000是如下的摄像处理装置(系统LSI):进行图像传感器1100的控制,输出对从图像传感器1100输入的像素信号实施预定的摄像处理、进而实施了预定的数字外部图像处理的数字信号的像素数据。并且,DRAM2000是存储外部扩展处理装置1000中处理的各种数据的数据存储部。另外,DRAM2000也可以是和图1所示的摄像装置100中与外部扩展处理装置600连接的DRAM700相同的数据存储部。即,除了与外部扩展处理装置1000连接以外,DRAM2000可以与DRAM700相同。
在图13所示的图像处理装置1中,对由外部扩展处理装置1000实施了外部图像处理后的处理像素数据(外部处理像素数据)进行后续的图像处理。更具体而言,在图13所示的图像处理装置1中,在图像处理部20中,针对从外部扩展处理装置1000输出的外部处理像素数据,使图像处理模块23-2以后的预定的各种图像处理成为流水线处理,在DRAM500中写入(存储)处理像素数据。因此,在图像处理部20中,使输入输出用模块24与图像处理模块23-2的前级连接。即,在图像处理部20中,连接切换部21切换各个结构要素的连接,以使得连接输入输出用模块24的输出端子和图像处理模块23-2的输入端子。而且,在图像处理部20中,仅使与从外部扩展处理装置1000传送(输入)外部处理像素数据相关联的结构要素、即输入输出用模块24所具有的外部输入控制部244、输入缓冲器部245和图像处理模块输出控制部246进行动作。由此,在图13所示的图像处理装置1中,针对从外部扩展处理装置1000输出的外部处理像素数据,接着进行依次进行基于图像处理模块23-2的图像处理和基于图像处理模块23-3的图像处理的流水线处理,在DRAM500中写入(存储)处理像素数据。
接着,说明对从外部扩展处理装置1000输出的外部处理像素数据进行后续的图像处理的流水线处理中的数据流。图14是示意地示出包含本发明的第1应用例中的图像处理装置1内的图像处理部20所具有的输入输出用模块24的像素数据流的图。在图14中,示出接着基于外部扩展处理装置1000的外部图像处理、从中途起进行图像处理部20中构成的流水线处理时的像素数据流。更具体而言,示出在图13所示的摄像装置400的结构中、通过在图像处理装置1内的图像处理部20所具有的图像处理模块23-2的前级组入输入输出用模块24而进行基于外部扩展处理装置1000的外部图像处理的后续的流水线处理时的像素数据流。
在图13所示的图像处理装置1所具有的图像处理部20中的流水线处理中,外部扩展处理装置1000和各个图像处理模块23分别针对所输入的像素信号和像素数据在相同时期并列进行预定的不同的图像处理,由此顺畅地进行流水线处理。但是,在图14所示的像素数据流的说明中,为了容易说明,与图6所示的图像处理装置1中的像素数据流的说明同样,着眼于一个处理单位的像素数据来说明数据流。在图14所示的像素数据流中,按照以下这种流程进行处理。
(流程F41):首先,在外部扩展处理装置1000中,摄像处理部1020对从图像传感器1100输入的像素信号实施预定的摄像处理和外部图像处理,经由DMA总线1010在DRAM2000中临时写入(存储)实施了外部图像处理后的外部处理像素数据。然后,外部扩展处理装置1000读出DRAM2000中存储的外部处理像素数据,经由DMA总线1010输出到外部接口部1030。
(流程F42):接着,外部接口部1030将经由DMA总线1010从DRAM2000输出(读出)的外部处理像素数据传送到图像处理装置1。然后,图像处理装置1通过外部接口部30接收经由外部扩展处理装置1000所具有的外部接口部1030传送的外部处理像素数据,外部接口部30不经由DMA总线10而将接收到的外部处理像素数据直接输出到输入输出用模块24。
(流程F43):接着,输入输出用模块24经由连接切换部21将经由外部接口部30从外部扩展处理装置1000传送的外部处理像素数据输出到接着进行图像处理的连接目的地的图像处理模块23-2。
(流程F44):接着,图像处理模块23-2对经由连接切换部21从连接目的地的输入输出用模块24输出的外部处理像素数据实施预定的图像处理,经由连接切换部21将实施了图像处理后的外部处理像素数据(处理像素数据)输出到接着进行图像处理的连接目的地的图像处理模块23-3。
(流程F45):接着,图像处理模块23-3对经由连接切换部21从连接目的地的图像处理模块23-2输出的处理像素数据实施预定的图像处理,经由连接切换部21将进一步实施了图像处理后的处理像素数据输出到输出DMA模块25。
(流程F46):接着,输出DMA模块25通过经由DMA总线10的DMA在DRAM500中写入(存储)经由连接切换部21从连接目的地的图像处理模块23-3输出的处理像素数据。
这样,在图像处理装置1中,也能够针对由外部扩展处理装置1000实施了外部图像处理后的处理像素数据(外部处理像素数据),从图像处理部20中构成的流水线处理的中途起进行后续的图像处理。即,在图像处理装置1中,能够仅将输入输出用模块24用于从外部扩展处理装置1000传送(输入)外部处理像素数据。换言之,在图像处理装置1中,能够从中途起进行图像处理部20中构成的流水线处理,以使得好像对DRAM500中存储的块图像数据中包含的各个像素数据进行流水线处理那样。
(第2应用例)
接着,对本发明的第2应用例进行说明。第2应用例是如下结构的一例:在图像处理部所具有的输入输出用模块中,通过仅使与对图像处理部的外部传送(输出)处理像素数据相关联的结构要素进行动作,仅实现对外部的结构要素传送(输出)处理像素数据。另外,在以下的说明中,对本发明的第1实施方式的图像处理装置1例如搭载于静态图像用照相机等摄像装置(以下称为“摄像装置450”)的情况进行说明。另外,能够认为在第2实施方式的图像处理装置2和第3实施方式的图像处理装置3中也是同样的。
图15是示出搭载了本发明的第1实施方式的图像处理装置1的第2应用例的概略结构的框图。另外,在图15中,在第2应用例的结构的摄像装置450中,作为与图像处理装置1相关联的结构要素,一并示出DRAM500、外部扩展处理装置3000、显示设备3100、DRAM4000,该外部扩展处理装置3000具有DMA总线3010、显示处理部3020和外部接口(I/F)部3030。另外,在图15中,与图1所示的摄像装置100和图13所示的摄像装置400同样,省略摄像装置450所具有的各个结构要素和图像处理装置1中与DMA总线10连接的其他结构要素的图示。
显示设备3100是显示由外部扩展处理装置3000处理后的摄像装置450中的图像的数据的例如液晶显示器(LCD:Liquid Crystal Display)等显示装置。并且,外部扩展处理装置3000是输出对从图像处理装置1输入的像素数据实施了用于使显示设备3100进行显示的预定的显示处理后的图像的数据的显示处理装置(系统LSI)。并且,DRAM4000是存储外部扩展处理装置3000中处理的各种数据的数据存储部。另外,DRAM4000也可以是和图1所示的摄像装置100中与外部扩展处理装置600连接的DRAM700、或图13所示的摄像装置400中与外部扩展处理装置1000连接的DRAM2000相同的数据存储部。即,除了与外部扩展处理装置3000连接以外,DRAM4000可以与DRAM700和DRAM2000相同。
在图15所示的图像处理装置1中,将图像处理部20中的图像处理的流水线处理实施到中途为止的处理像素数据输出到外部扩展处理装置3000。更具体而言,在图15所示的图像处理装置1中,在图像处理部20中,将针对从DRAM500读出的像素数据进行了图像处理模块23-2以前的预定的各种图像处理的流水线处理后的处理像素数据输出到外部扩展处理装置3000。因此,在图像处理部20中,使输入输出用模块24与图像处理模块23-2的后级连接。即,在图像处理部20中,连接切换部21切换各个结构要素的连接,以使得连接图像处理模块23-2的输出端子和输入输出用模块24的输入端子。而且,在图像处理部20中,仅使与对外部扩展处理装置3000传送(输出)处理像素数据相关联的结构要素、即输入输出用模块24所具有的图像处理模块输入控制部241、输出缓冲器部242和外部输出控制部243进行动作。由此,在图15所示的图像处理装置1中,将针对从DRAM500读出的像素数据进行了依次进行基于图像处理模块23-1的图像处理和基于图像处理模块23-2的图像处理的流水线处理后的处理像素数据输出到外部扩展处理装置3000。
接着,对图像处理部20将图像处理的流水线处理实施到中途为止的处理像素数据输出到外部扩展处理装置3000时的流水线处理中的数据流进行说明。图16是示意地示出包含本发明的第2应用例中的图像处理装置1内的图像处理部20所具有的输入输出用模块24的像素数据流的图。在图16中,示出图像处理部20中构成的流水线处理进行到中途为止而输出到外部扩展处理装置3000时的像素数据流。更具体而言,示出在图15所示的摄像装置450的结构中、通过在图像处理装置1内的图像处理部20所具有的图像处理模块23-2的后级组入输入输出用模块24而进行到图像处理模块23-2为止的流水线处理并输出到外部扩展处理装置3000时的像素数据流。
在图15所示的图像处理装置1所具有的图像处理部20中的流水线处理中,图像处理模块23和外部扩展处理装置3000分别针对所输入的像素数据和处理像素数据在相同时期并列进行预定的不同的图像处理,由此顺畅地进行流水线处理。但是,在图16所示的像素数据流的说明中,为了容易说明,与图6所示的摄像装置100中搭载的图像处理装置1中的像素数据流的说明和图14所示的摄像装置400中搭载的图像处理装置1中的像素数据流的说明同样,着眼于一个处理单位的像素数据来说明数据流。在图16所示的像素数据流中,按照以下这种流程进行处理。
(流程F51):首先,输入DMA模块22通过经由DMA总线10的DMA,按照每个单元行读出DRAM500中存储的块图像数据中包含的各个像素数据,经由连接切换部21将所读出的像素数据输出到接着进行图像处理的连接目的地的图像处理模块23-1。
(流程F52):接着,图像处理模块23-1对经由连接切换部21从连接目的地的输入DMA模块22输出的像素数据实施预定的图像处理,经由连接切换部21将实施了图像处理后的处理像素数据输出到接着进行图像处理的连接目的地的图像处理模块23-2。
(流程F53):接着,图像处理模块23-2对经由连接切换部21从连接目的地的图像处理模块23-1输出的处理像素数据实施预定的图像处理,经由连接切换部21将进一步实施了图像处理后的处理像素数据输出到输出目的地的外部扩展处理装置3000。此时,连接切换部21将从图像处理模块23-2输出的处理像素数据输出到输入输出用模块24。
(流程F54):接着,输入输出用模块24不经由DMA总线10而将经由连接切换部21从连接目的地的图像处理模块23-2输出的处理像素数据直接输出到外部接口部30,经由外部接口部30传送到外部扩展处理装置3000。
(流程F55):接着,外部扩展处理装置3000通过外部接口部3030接收经由图像处理装置1所具有的外部接口部30传送的处理像素数据,经由DMA总线3010临时写入(存储)在DRAM4000中。然后,外部扩展处理装置3000读出DRAM4000中存储的处理像素数据,经由DMA总线3010输出到显示处理部3020,显示处理部3020将对所读出的处理像素数据实施了预定的显示处理后的图像的数据输出到显示设备3100。由此,显示设备3100显示基于从外部扩展处理装置3000输出的图像的数据的图像。
这样,在图像处理装置1中,还能够将图像处理部20中构成的流水线处理进行到中途为止的处理像素数据输出到外部扩展处理装置3000。即,在图像处理装置1中,能够仅将输入输出用模块24用于对外部扩展处理装置3000传送(输出)处理像素数据。换言之,在图像处理装置1中,能够将图像处理部20中构成的流水线处理进行到中途,以使得好像在DRAM500中写入(存储)进行了流水线处理后的处理像素数据那样。
根据本第1应用例和第2应用例,构成如下的图像处理装置(图像处理装置1):在数据总线(DMA总线10)上连接有图像处理部(图像处理部20),该图像处理部(图像处理部20)串联连接对所输入的数据(像素数据)进行预定处理的多个处理模块(图像处理模块23-1~图像处理模块23-3)而构成流水线,图像处理模块23-1~图像处理模块23-3分别依次进行处理,由此进行流水线处理,该图像处理装置1对经由DMA总线10从与DMA总线10连接的数据存储部(DRAM500)读出的像素数据进行图像处理,其中,图像处理部20具有输入输出用模块(输入输出用模块24),该输入输出用模块(输入输出用模块24)作为进行与图像处理模块23-1~图像处理模块23-3分别进行的处理不同的处理的处理模块而组入流水线内,输入输出用模块24将流水线中位于被组入的位置的前级的处理模块即第1处理模块(例如图像处理模块23-2)进行了处理后的处理数据(输入数据、像素数据、处理像素数据)(作为外部输出数据)不经由DMA总线10而直接输出到图像处理部20的外部的外部处理部(例如外部扩展处理装置3000),或者,将从图像处理部20的外部的外部处理部(例如外部扩展处理装置1000)输入的外部处理数据(外部输入数据、外部处理像素数据)不经由DMA总线10而直接输出到流水线中位于被组入的位置的后级的处理模块即第2处理模块(例如图像处理模块23-2),或者,进行不经由DMA总线10而将处理数据(输入数据、像素数据、处理像素数据)(作为外部输出数据)直接输出到图像处理部20的外部的外部处理部(例如外部扩展处理装置600)和不经由DMA总线10而将通过外部扩展处理装置600对处理数据(输入数据、像素数据、处理像素数据)进行外部处理(外部图像处理)而输入的外部处理数据(外部输入数据、外部处理像素数据)(作为输出数据)直接输出到第2处理模块(例如图像处理模块23-3)双方。
如上所述,在第1应用例的图像处理装置1中,通过仅使输入输出用模块24所具有的外部输入控制部244、输入缓冲器部245和图像处理模块输出控制部246进行动作,外部扩展处理装置1000能够针对实施了外部图像处理后的处理像素数据(外部处理像素数据),从图像处理部20中构成的流水线处理的中途起进行后续的图像处理。并且,如上所述,在第2应用例的图像处理装置1中,通过仅使输入输出用模块24所具有的图像处理模块输入控制部241、输出缓冲器部242和外部输出控制部243进行动作,能够将图像处理部20中构成的流水线处理进行到中途的处理像素数据输出到外部扩展处理装置3000。由此,在第1应用例的图像处理装置1和第2应用例的图像处理装置1中,能够在基于已经构成的流水线处理的图像处理中组入基于图像处理装置1的开发时未想到的外部的结构要素(外部扩展处理装置1000或外部扩展处理装置3000)的图像处理。
另外,在第1应用例的图像处理装置1中,说明了将与外部扩展处理装置1000连接的DRAM2000中临时写入(存储)的外部处理像素数据传送(输入)到图像处理装置1的结构。但是,外部扩展处理装置1000也可以构成为不经由DRAM2000来传送(输入)外部处理像素数据。即,外部扩展处理装置1000也可以构成为经由DMA总线1010和外部接口部1030将摄像处理部1020输出的外部处理像素数据传送(输入)到第1应用例的图像处理装置1。并且,在第2应用例的图像处理装置1中,说明了在与外部扩展处理装置3000连接的DRAM4000中临时写入(存储)图像处理装置1传送(输出)的处理像素数据后实施显示处理的结构。但是,外部扩展处理装置3000也可以构成为不经由DRAM4000来接收图像处理装置1传送(输出)的处理像素数据。即,外部扩展处理装置3000也可以构成为经由外部接口部3030和DMA总线3010将图像处理装置1传送(输出)的处理像素数据输出到显示处理部3020。
如上所述,根据本发明的各实施方式,在图像处理装置所具有的图像处理部中具有用于不经由DMA总线而直接连接图像处理部的外部所具有的结构要素的输入输出用模块。即,在本发明的各实施方式中,为了对图像处理部中执行的图像处理进行扩展,具有用于不经由DMA总线而与进行图像处理部所具有的任意一个图像处理模块中均不执行的图像处理的图像处理装置直接连接的输入输出用模块。并且,在本发明的各实施方式中,具有用于切换图像处理部所具有的各个处理模块的连接、即用于切换图像处理部中构成的流水线的连接的连接切换部。而且,在本发明的各实施方式中,在对图像处理装置中执行的图像处理进行扩展的情况下,在图像处理部中构成的流水线中组入输入输出用模块作为图像处理模块。由此,在本发明的各实施方式中,能够在基于图像处理部所具有的各个图像处理模块执行的流水线处理的一连串图像处理中组入图像处理部的外部所具有的结构要素执行的图像处理。由此,在本发明的各实施方式中,与图像处理部所具有的各个图像处理模块进行流水线处理同样,能够对基于图像处理部的流水线处理的一连串图像处理进行扩展。
而且,在本发明的各实施方式中,图像处理装置所具有的输入输出用模块不经由DMA总线而向图像处理部的外部所具有的结构要素直接传送要扩展的图像处理中使用的像素数据。因此,在本发明的各实施方式中,由图像处理部所具有的各个图像处理模块已经构成的流水线处理不会被切断,能够在组入了要扩展的图像处理的状态下进行一连串图像处理。由此,在本发明的各实施方式中,不会引起DMA总线的总线带宽的紧张、图像处理装置的消耗电力的增大等,不会使搭载了图像处理装置的摄像装置的性能降低,能够扩展图像处理。例如,通过搭载第1实施方式的图像处理装置1,能够实现进行基本图像处理的摄像装置,通过搭载图像处理装置1和外部扩展处理装置600双方,能够实现进行高功能图像处理的摄像装置。
另外,在本发明的各实施方式中,说明了在图像处理装置所具有的图像处理部内具有构成流水线的各个处理模块的结构。但是,关于通过流水线结构进行一连串处理的处理装置,除了图像处理装置以外,还考虑各种处理装置。并且,关于要求扩展基于流水线结构的一连串处理的系统,除了摄像装置以外,还考虑各种系统。因此,能够应用本发明的思路的处理装置和系统不限于本发明的各实施方式所示的图像处理装置和摄像装置,只要是搭载了通过串联连接多个处理模块构成流水线并进行流水线处理的处理装置的系统,则能够同样应用本发明的思路,能够得到与本发明相同的效果。
以上说明了本发明的优选实施方式,但是,本发明不限于这些实施方式及其变形例。能够在不脱离本发明主旨的范围内进行结构的附加、省略、置换和其他变更。
并且,本发明不由所述说明进行限定,仅由附加的权利要求书进行限定。
产业上的可利用性
根据上述各实施方式,在进行流水线处理的结构的图像处理装置中,能够在通过流水线进行的一连串图像处理之间插入其他图像处理。
标号说明
1、2、3:图像处理装置(图像处理装置);10:DMA总线(数据总线);20:图像处理部(图像处理部);21:连接切换部(图像处理部);22:输入DMA模块(图像处理部);23-1、23-2、23-3:图像处理模块(图像处理部、处理模块);24:输入输出用模块(图像处理部、输入输出用模块);241:图像处理模块输入控制部(图像处理部、输入输出用模块、处理模块输入控制部);2411:输出缓冲器空闲容量管理部(图像处理部、输入输出用模块、处理模块输入控制部);2412:输出缓冲器写入管理部(图像处理部、输入输出用模块、处理模块输入控制部);242:输出缓冲器部(图像处理部、输入输出用模块、输出缓冲器部);2421:选择器(图像处理部、输入输出用模块、输出缓冲器部);2422-1、2422-2:输出缓冲器(图像处理部、输入输出用模块、输出缓冲器部);2423:选择器(图像处理部、输入输出用模块、输出缓冲器部);243:外部输出控制部(图像处理部、输入输出用模块、外部输出控制部);2431:输出缓冲器数据量管理部(图像处理部、输入输出用模块、外部输出控制部);2432:输出缓冲器读出管理部(图像处理部、输入输出用模块、外部输出控制部);244:外部输入控制部(图像处理部、输入输出用模块、外部输入控制部);2441:输入缓冲器空闲容量管理部(图像处理部、输入输出用模块、外部输入控制部);2442:输入缓冲器写入管理部(图像处理部、输入输出用模块、外部输入控制部);245:输入缓冲器部(图像处理部、输入输出用模块、输入缓冲器部);2451:选择器(图像处理部、输入输出用模块、输入缓冲器部);2452-1、2452-2:输入缓冲器(图像处理部、输入输出用模块、输入缓冲器部);2453:选择器(图像处理部、输入输出用模块、输入缓冲器部);246:图像处理模块输出控制部(图像处理部、输入输出用模块、处理模块输出控制部);2461:输入缓冲器数据量管理部(图像处理部、输入输出用模块、处理模块输出控制部);2462:输入缓冲器读出管理部(图像处理部、输入输出用模块、处理模块输出控制部);25:输出DMA模块(图像处理部);30、30-1、30-2:外部接口部(外部处理部);40:图像处理部(图像处理部);44、44-1、44-2:输入输出用模块(图像处理部、输入输出用模块);443:外部输出控制部(图像处理部、输入输出用模块、外部输出控制部);4432:输出缓冲器读出管理部(图像处理部、输入输出用模块、外部输出控制部);50:数字信号处理器(外部处理部);60:选择器部(外部处理部);70:图像处理部(图像处理部);80:选择器部(外部处理部);100、200、300:摄像装置;500:DRAM(数据存储部);600、800:外部扩展处理装置(外部处理部);610、810:DMA总线(外部处理部);620、820:扩展处理模块(外部处理部);630、830:外部接口部(外部处理部);700、900:DRAM;OBWC:输出缓冲器写入控制信号;OBWS:输出缓冲器写入选择信号;OBW:输出缓冲器写入信号;OBRC:输出缓冲器读出控制信号;OBRS:输出缓冲器读出选择信号;OBR:输出缓冲器读出信号;IBWC:输入缓冲器写入控制信号;IBWS:输入缓冲器写入选择信号;IBW:输入缓冲器写入信号;IBRC:输入缓冲器读出控制信号;IBRS:输入缓冲器读出选择信号;IBR:输入缓冲器读出信号;400:摄像装置;1000:外部扩展处理装置(外部处理部);1010:DMA总线(外部处理部);1020:摄像处理部(外部处理部);1030:外部接口部(外部处理部);1100:图像传感器;2000:DRAM;450:摄像装置;3000:外部扩展处理装置(外部处理部);3010:DMA总线(外部处理部);3020:显示处理部(外部处理部);3030:外部接口部(外部处理部);3100:显示设备;4000:DRAM。
Claims (10)
1.一种图像处理装置,其在数据总线上连接有图像处理部,该图像处理部串联连接对所输入的数据进行预定处理的多个处理模块而构成流水线,各个所述处理模块依次进行所述处理,由此进行流水线处理,该图像处理装置对经由所述数据总线从与所述数据总线连接的数据存储部读出的数据进行图像处理,其中,
所述图像处理部具有输入输出用模块,该输入输出用模块作为进行与所述处理模块分别进行的所述处理不同的处理的所述处理模块而组入所述流水线内,
所述输入输出用模块将第1处理模块进行了所述处理后的处理数据不经由所述数据总线而直接输出到所述图像处理部的外部的外部处理部,将通过所述外部处理部对所述处理数据进行外部处理而输入的外部处理数据不经由所述数据总线而直接输出到第2处理模块,该第1处理模块是所述流水线中位于被组入的位置的前级的所述处理模块,该第2处理模块是所述流水线中位于所述第1处理模块的后级的所述处理模块。
2.一种图像处理装置,其在数据总线上连接有图像处理部,该图像处理部串联连接对所输入的数据进行预定处理的多个处理模块而构成流水线,各个所述处理模块依次进行所述处理,由此进行流水线处理,该图像处理装置对经由所述数据总线从与所述数据总线连接的数据存储部读出的数据进行图像处理,其中,
所述图像处理部具有输入输出用模块,该输入输出用模块作为进行与所述处理模块分别进行的所述处理不同的处理的所述处理模块而组入所述流水线内,
所述输入输出用模块将第1处理模块进行了所述处理后的处理数据不经由所述数据总线而直接输出到所述图像处理部的外部的外部处理部,或者,将从所述图像处理部的外部的外部处理部输入的外部处理数据不经由所述数据总线而直接输出到第2处理模块,或者,进行将所述处理数据不经由所述数据总线而直接输出到所述图像处理部的外部的外部处理部和将通过所述外部处理部对所述处理数据进行外部处理而输入的外部处理数据不经由所述数据总线而直接输出到所述第2处理模块这双方的处理,该第1处理模块是所述流水线中位于被组入的位置的前级的所述处理模块,该第2处理模块是所述流水线中位于被组入的位置的后级的所述处理模块。
3.根据权利要求1或2所述的图像处理装置,其中,
所述输入输出用模块具有:
输出缓冲器部,其暂时存储所述处理数据;以及
输入缓冲器部,其暂时存储所述外部处理数据,
在所述输出缓冲器部中临时存储所述第1处理模块输出的所述处理数据,根据来自所述外部处理部的请求而输出所述输出缓冲器部中存储的所述处理数据,
在所述输入缓冲器部中临时存储所述外部处理部输出的所述外部处理数据,根据来自所述第2处理模块的请求而输出所述输入缓冲器部中存储的所述外部处理数据。
4.根据权利要求3所述的图像处理装置,其中,
所述输入输出用模块还具有:
处理模块输入控制部,其根据所述输出缓冲器部的存储容量,控制对所述输出缓冲器部的所述处理数据的写入;
外部输出控制部,其根据所述输出缓冲器部中存储的所述处理数据的数据量,控制从所述输出缓冲器部的所述处理数据的读出;
外部输入控制部,其根据所述输入缓冲器部的存储容量,控制对所述输入缓冲器部的所述外部处理数据的写入;以及
处理模块输出控制部,其根据所述输入缓冲器部中存储的所述外部处理数据的数据量,控制从所述输入缓冲器部的所述外部处理数据的读出。
5.根据权利要求4所述的图像处理装置,其中,
所述处理模块输入控制部按照所述第1处理模块进行所述处理的每个单位,对所述输出缓冲器部写入所述处理数据,
所述外部输出控制部按照所述外部处理部进行所述外部处理的每个单位,读出所述输出缓冲器部中存储的所述处理数据,
所述外部输入控制部按照所述外部处理部进行所述外部处理的每个单位,对所述输入缓冲器部写入所述外部处理数据,
所述处理模块输出控制部按照所述第2处理模块进行所述处理的每个单位,读出所述输入缓冲器部中存储的所述外部处理数据。
6.根据权利要求5所述的图像处理装置,其中,
所述外部输出控制部将输出目的地信息附加于所述处理数据,该输出目的地信息表示对多个所述外部处理部中的哪个所述外部处理部输出所述处理数据。
7.根据权利要求6所述的图像处理装置,其中,
在所述外部处理部对所述处理数据进行的所述外部处理的设定信息所表示的附加信息中包含所述输出目的地信息。
8.根据权利要求1~7中的任意一项所述的图像处理装置,其中,
所述输入输出用模块被组入于所述流水线的开头、中途和最末尾中的至少一个位置。
9.根据权利要求1或2所述的图像处理装置,其中,
所述图像处理装置还具有外部接口部,该外部接口部在与所述外部处理部之间进行数据的输入输出,
所述输入输出用模块经由所述外部接口部在与所述外部处理部之间进行数据传送。
10.根据权利要求5所述的图像处理装置,其中,
所述处理数据和所述外部处理数据是图像数据,
所述第1处理模块和所述第2处理模块进行所述处理的单位以及所述外部处理部进行所述外部处理的单位分别是将1帧的所述图像数据分割成预定的多个块后的尺寸,
所述输出缓冲器部的存储容量和所述输入缓冲器部的存储容量小于用于存储1帧的所述图像数据中包含的像素数据的存储容量。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2016/056015 WO2017149591A1 (ja) | 2016-02-29 | 2016-02-29 | 画像処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108701029A true CN108701029A (zh) | 2018-10-23 |
Family
ID=59743553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680082706.4A Pending CN108701029A (zh) | 2016-02-29 | 2016-02-29 | 图像处理装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20180365796A1 (zh) |
JP (1) | JPWO2017149591A1 (zh) |
CN (1) | CN108701029A (zh) |
DE (1) | DE112016006516T5 (zh) |
WO (1) | WO2017149591A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109492549A (zh) * | 2018-10-24 | 2019-03-19 | 杭州睿琪软件有限公司 | 一种训练样本集处理、模型训练方法及系统 |
CN111221762A (zh) * | 2020-02-25 | 2020-06-02 | 深圳市春盛海科技有限公司 | 图像控制器及图像系统 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6722278B2 (ja) * | 2016-04-11 | 2020-07-15 | オリンパス株式会社 | 画像処理装置 |
US9992467B2 (en) * | 2016-06-30 | 2018-06-05 | Apple Inc. | Parallel computer vision and image scaling architecture |
WO2019021344A1 (ja) * | 2017-07-24 | 2019-01-31 | オリンパス株式会社 | 画像処理装置および撮像装置 |
JP2020008926A (ja) * | 2018-07-03 | 2020-01-16 | 株式会社リコー | データパス制御装置、画像処理装置、データパス制御装置の制御方法およびプログラム |
JP7070187B2 (ja) * | 2018-07-13 | 2022-05-18 | 株式会社リコー | データ処理装置、画像処理装置、データ処理方法、及びプログラム |
JP7176355B2 (ja) * | 2018-10-31 | 2022-11-22 | 株式会社リコー | 画像処理装置、画像処理装置の制御方法およびプログラム |
JP7374505B2 (ja) * | 2021-03-30 | 2023-11-07 | 株式会社モルフォ | 画像処理装置、画像処理プログラム、及び、画像処理方法 |
WO2023053356A1 (ja) * | 2021-09-30 | 2023-04-06 | 株式会社アイ・エル・シー | 通信制御オブジェクトを有する機器、通信制御方法および通信制御プログラム |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5126845A (en) * | 1989-09-29 | 1992-06-30 | Imagica Corp. | Pipeline bus having registers and selector for real-time video signal processing |
CN1434380A (zh) * | 2002-01-22 | 2003-08-06 | 株式会社东芝 | 图像处理装置和方法以及用于该装置的编译程序 |
US20030179927A1 (en) * | 2002-03-20 | 2003-09-25 | Fuji Xerox Co., Ltd. | Image processing apparatus and image processing method |
US20100328690A1 (en) * | 2009-06-25 | 2010-12-30 | Canon Kabushiki Kaisha | Image processing device and image processing apparatus |
US20110317938A1 (en) * | 2010-06-25 | 2011-12-29 | Canon Kabushiki Kaisha | Image processing apparatus |
US20140099046A1 (en) * | 2012-10-04 | 2014-04-10 | Olympus Corporation | Image processing apparatus |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6331856B1 (en) * | 1995-11-22 | 2001-12-18 | Nintendo Co., Ltd. | Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing |
CN1338090A (zh) * | 1998-12-15 | 2002-02-27 | 因坦塞斯公司 | 使用编程的并行计算机实现图像处理功能和控制的数字摄像机 |
JP3740379B2 (ja) * | 2000-04-19 | 2006-02-01 | キヤノン株式会社 | 画像処理装置及び画像処理方法 |
JP4093741B2 (ja) * | 2001-10-03 | 2008-06-04 | シャープ株式会社 | 外部メモリ制御装置およびそれを含んだデータ駆動型情報処理装置 |
EP1573514A2 (en) * | 2002-10-31 | 2005-09-14 | Lockheed Martin Corporation | Pipeline accelerator and related computer and method |
JP5738618B2 (ja) * | 2011-02-08 | 2015-06-24 | オリンパス株式会社 | データ処理装置 |
-
2016
- 2016-02-29 DE DE112016006516.7T patent/DE112016006516T5/de not_active Withdrawn
- 2016-02-29 JP JP2018502865A patent/JPWO2017149591A1/ja active Pending
- 2016-02-29 CN CN201680082706.4A patent/CN108701029A/zh active Pending
- 2016-02-29 WO PCT/JP2016/056015 patent/WO2017149591A1/ja active Application Filing
-
2018
- 2018-08-23 US US16/110,083 patent/US20180365796A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5126845A (en) * | 1989-09-29 | 1992-06-30 | Imagica Corp. | Pipeline bus having registers and selector for real-time video signal processing |
CN1434380A (zh) * | 2002-01-22 | 2003-08-06 | 株式会社东芝 | 图像处理装置和方法以及用于该装置的编译程序 |
US20030179927A1 (en) * | 2002-03-20 | 2003-09-25 | Fuji Xerox Co., Ltd. | Image processing apparatus and image processing method |
US20100328690A1 (en) * | 2009-06-25 | 2010-12-30 | Canon Kabushiki Kaisha | Image processing device and image processing apparatus |
US20110317938A1 (en) * | 2010-06-25 | 2011-12-29 | Canon Kabushiki Kaisha | Image processing apparatus |
US20140099046A1 (en) * | 2012-10-04 | 2014-04-10 | Olympus Corporation | Image processing apparatus |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109492549A (zh) * | 2018-10-24 | 2019-03-19 | 杭州睿琪软件有限公司 | 一种训练样本集处理、模型训练方法及系统 |
CN111221762A (zh) * | 2020-02-25 | 2020-06-02 | 深圳市春盛海科技有限公司 | 图像控制器及图像系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2017149591A1 (ja) | 2017-09-08 |
US20180365796A1 (en) | 2018-12-20 |
DE112016006516T5 (de) | 2018-11-15 |
JPWO2017149591A1 (ja) | 2018-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108701029A (zh) | 图像处理装置 | |
CN1993709B (zh) | 信号处理设备 | |
CN102572279B (zh) | 针对数字图像稳定优化的旋转内插像素的光栅输出 | |
RU2623806C1 (ru) | Способ и устройство обработки стереоизображений | |
US6693640B2 (en) | Image processing apparatus and image processing system using the apparatus | |
CN102263880A (zh) | 一种图像缩放的方法和装置 | |
KR102128534B1 (ko) | 화상 처리 장치 및 화상 처리 방법 | |
CN107333062A (zh) | 一种视频图像处理的方法、系统及装置 | |
US20170034471A1 (en) | Semiconductor device and image processing method | |
US10803589B2 (en) | Image processing device | |
JP2014238769A (ja) | データ処理装置およびデータ転送制御装置 | |
JP4189252B2 (ja) | 画像処理装置及びカメラ | |
CN110366740A (zh) | 图像处理装置和摄像装置 | |
WO2010064374A1 (ja) | 画像処理装置 | |
US7039242B2 (en) | Image processing device and image processing method | |
CN107710274A (zh) | 图像处理装置和图像处理方法 | |
CN105702233B (zh) | 一种图像数据取窗方法及装置 | |
JP2017016285A (ja) | 複数のデータ処理部でバッファを共有するデータ制御装置、制御方法 | |
JP3544146B2 (ja) | Dma制御付fifo、並びに、それを用いたdma転送システム | |
RU168781U1 (ru) | Устройство обработки стереоизображений | |
JP2010118058A (ja) | トリプル・バッファリングを使用するデータを処理する方法 | |
JP2004356673A (ja) | 動きベクトル検出方法及び同方法を用いた画像処理装置 | |
JPH0471060A (ja) | 半導体集積回路 | |
JP2012123465A (ja) | データ処理装置 | |
JP4379964B2 (ja) | 電子カメラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20181023 |
|
WD01 | Invention patent application deemed withdrawn after publication |