因此,本发明最主要的目的是提供一种可以有效率地处理数据的数字照相机。
根据本发明,该数字照相机包括:一个用于提取一个摄影主体的图象并输出图象数据的照片获取装置;一个用于显示相应于图象数据的一幅图象的显示装置;一个用于压缩图象数据并输出压缩的图象数据的压缩装置;一个用于在所述照片获取装置,所述显示装置和所述压缩装置之间进行连接的第一总线;一个主存储器;一个连接到所述第一装置和用于经由DMA访问所述主存储器以写入\读取图象数据和压缩的图象数据的访问装置;第二总线;一个用于按要求地在所述第一总线和所述第二总线之间连接的总线桥;和一个连接到所述第二总线并根据一个程序对压缩的图象数据进行预定处理的CPU。
将照片获取装置输出的图象数据经由第一总线提供给访问装置,并由访问装置经DMA写入主存储器。此后也可由同一个访问装置经由DMA读取写入在主存储器上的图象数据,并经由第一总线提供给该显示设备。结果,显示了相应于图象数据的图象。由访问装置读取的图象数据也经由第一总线提供给压缩装置。该压缩装置压缩给出的图象数据压缩以输出压缩的图象数据。输出的压缩图象数据经由第一总线提供给访问装置,并经由DMA写入主存储器。此后,压缩的图象数据由访问装置读取,并经由第二总线提供给CPU。CPU根据一个预定程序对给出的压缩图象数据进行处理。
根据本发明,用第一总线传输DMA处理数据,同时用第二总线传输CPU处理数据,从而可以有效率地处理数据。
在本发明的一个方面,如果记录指令输入装置输入一条记录图象数据的指令,则CPU相应于这条记录指令使照片获取装置不工作而使压缩装置工作。CPU进一步开启总线桥以将压缩的图象数据取到第二总线端并将压缩的图象数据记录到记录介质中。
在本发明的另一方面,第二总线与焦距控制装置和闪光控制装置相连接。焦距控制装置根据CPU的一条指令来控制聚焦,而闪光控制装置也根据CPU的一条指令来控制闪光。
在本发明的另一个方面,输出装置连接到第二总线,这样数据输出装置根据一条CPU指令将压缩的图象数据输出到外部。
在本发明的另外一个方面,照片获取装置所提取的图象数据经由连接于第一缓存的DMA存储在第一缓存中。从主存储器读取的图象数据也暂时保持在第二缓存中,而此后经由DMA读出。所读取的图象数据输出到监视器上,使得在监视器上显示相应的图象。从主存储器中读取的图象数据也经由第三缓存提供给压缩处理装置,在此对它进行预定的压缩处理。所得到的压缩图象数据经由第四缓存提供给一个访问装置,以便将它存储在主存储器中。
在本发明的一个实施例中,访问装置包括一个缓存访问装置和一个主存储器访问装置。该缓存访问装置经由DMA对第一到第四缓存进行访问。该主存储器访问装置也经由DMA对主存储器进行访问。也即,该缓存访问装置响应于照片获取装置的一个读取请求从第一缓存中读取图象数据,并响应于显示装置的一条写指令将图象数据写入第二缓存中。缓存访问装置也响应于压缩装置中包括的第三请求输出装置的写入请求,将图象数据写入第三缓存中,并响应于第四请求输出装置的一个读取请求,从第四缓存中读取压缩的图象数据。
访问装置还包括一个用于开启/关闭总线桥的开/关装置。如果记录指令输入装置输入一个图象数据记录指令,则CPU相应于记录指令,使得第一请求输出装置不工作而使得第三请求输出装置工作。CPU进一步使得开/关装置开启总线桥,并请求访问装置读取压缩的图象数据。由访问装置从主存储器中读取的压缩图象数据经由第二总线提供给CPU。
通过下面结合附图对本发明的详细描述,使得本发明的上述目的和其他目的、特征和优点变得更加明了。
参照图1,本实施例的数字照相机包括一个CCD成象器12。在该CCD成象器12的前端安装有一个原色滤波器(未示)使得可以通过该原色滤波器,在CCD成象器12中获得一个主体光学图象。
CCD成象器12由一个定时信号发生器(TG)13根据所设置的照相机模式输出的定时信号来驱动。也即,如果操作者将一个模式设置开关86设置到照相机端,则系统控制器84通过一个中断端子68a提供一个控制信号给CPU68。由此,CPU68使得信号发生器(SG)15开启,使得信号发生器(SG)15输出水平同步信号和垂直同步信号。TG13基于水平同步信号和垂直同步信号而产生一个定时信号以一种渐进扫描方式驱动CCD成象器12。也即,仅仅通过由CPU68启动SG15就以一种渐进扫描机制开始从CCD成象器12读取照相信号。
从CCD成象器12输出的照相信号对于每一象素是色度分量R,G和B组成的原色信号。CDS/AGC电路14对输出的照相信号进行公知的噪声消除和电平调整处理,并由以时钟频率12MHz工作的A/D转换器16将其转换为数字-信号照相机数据。一个信号处理电路18对A/D转换器16输出的照相机数据以4∶2∶2的比例进行YUV变换,从而产生图象信号,称为YUV数据。
信号处理电路18也影响以上述基于SG15所提供的水平同步信号和垂直同步信号的时钟频率12MHz进行的信号处理。结果,图5(B)中的Y数据和图5(C)中的UV信号经由两个不同的信号路由同时输出。每一个Y数据,U数据和V数据为8比特/每一象素。
将Y数据逐个象素地输入串联的四个D-FF电路20a-20d。D-FF电路20a-20d使其输出同时输入一个D-FF电路24。也即,4个象素或32比特的Y数据同时输入一个D-FF电路24。另一方面,每8比特交替地输出U数据和V数据。每个U数据和V数据为Y数据的一半数据量。因此,在两个象素的U数据和V数据经另一信号总线输出期间,4个象素的Y数据经一条总线输出。该二-象素U和V数据也同时经D-FF电路22a-22d输入到D-FF电路26。
D-FF电路24和26以时钟频率3MHz工作。结果,Y数据和UV数据分别在32bits的间隔由D-FF电路24和26以图5(D)和图5(E)的定时输出。由此,在D-FF电路24和26的输出上形成时分复用。时分复用的YUV信号由开关SW1输出,如图5(G)所示。该YUV信号具有6MHz的传输频率。而,D-FF电路20a-20d,22a-22d,24和26以及开关SW1根据TG13给出的定时信号而工作。
如图2所示,一个双端SRAM构成缓存28。该缓存具有分为两个存储体的存储区域。每一存储体具有一定数量的字“32”,其中每个字具有32bits的容量。因此,每一存储体可以存储64个象素的YUV数据。经由开关SW1输出的YUV信号输入到如上所构成的缓存28中。信号处理电路18与YUV数据同步地提供了一个图5(H)所示的寻址信号和一个图5(I)所示的存储体交换信号给缓存28。结果,64个象素的YUV数据以一个交替的形式写在存储体上。同时,Y数据存储在每一个存储体的前半部分的16个字中,而UV数据存储在后半部分的16个字中。以此方式,经SW1输出的YUV数据经DMA(直接存储访问)写在缓存28上。
在后续的YUV数据写在存储体上之前,存储器控制电路32通过DMA读取每一个存储体中的YUV数据。具体地,信号处理电路18与存储体交换信号的上升和下降所同步地发出一个图5(J)所示的读取请求给存储控制电路32,使得存储控制电路32响应于读取请求并读取存储体所输出的YUV数据。存储器控制电路32如图5(K)所示地,输出一个24MHz速率的寻址信号,并如图5(L)所示地,读取缓存28输出的YUV数据。而对缓存28的读取和写入操作以一种完全的方式实施,其中,当将数据写入一个存储体时,从另一个存储体上进行数据读取。
参照图3,如果设置为照相机模式,则CPU68提供一个控制脉冲给信号处理电路18。该控制脉冲被RS-FF电路18b锁存,这样RS-FF电路18b提供一个高电平门信号给AND电路18a。随着该信号,AND门电路打开使得信号处理电路18输出读取请求。该读取请求经存储器控制电路32中的一个RS-FF电路32b输入到调停电路32a。该调停电路32a接收来自RS-FF电路32c-32g的另一个请求,从而传导在各请求之间的调停。为了响应任何一个请求,将一个预定启动信号输出到处理电路32W。
该处理电路32W具有图4所示的结构。一个总线30包括数据总线30a-30d,地址总线30e和控制总线30f和30g。数据总线30a和30b连接到三态缓存器32i和32j的各个输入端。数据总线30c和30d共同连接到三态缓存器32i,32j和32v的输出端和连接到D-FF电路32k的输出端。该地址总线30e和控制总线30f和30g连接到缓存控制电路32x。
D-FF电路32k-32p串联连接,其中D-FF电路32p的一个输出端连接到三态缓存器32q的一个输入端。三态缓存器32q的一个输出端经包括在总线33中的数据总线33a连接到SDRAM34。D-FF电路32r-32u串联地插入到三态缓存器32q的输出端与三态缓存器32v的输入端之间。由缓存控制电路32x开启/关闭三态缓存器32i,32j和32v,而由DRAM控制电路32h开启/关闭三态缓存器32q。
在处理来自信号处理电路18的读取请求的基础上,该处理电路32W响应图6(A)所示的启动信号并将一个图6(B)所示的寻址信号输出缓存器28,由缓存器28中取得图6(C)所示的YUV数据。通过DMA将所取得的YUV数据写入SDRAM34中。此时,处理电路32W以24MHz的时钟频率执行处理过程。
下面更详细地进行解释,缓存控制电路将上述寻址信号经一个地址总线30e输出,并使得芯片选择信号CS1处于低电平以开启该三态缓存器32j。此外,SDRAM控制电路32h开启三态缓存器32q。由此,由缓存器28所取得的YUV数据根据图6(H)所示的定时信号经D-FF电路32k-32p输出到SDRAM34。也即,由于在三态缓存器32i和32j之间插入了四个D-FF电路32k-32p,所取得的YUV数据延迟4个时钟输出到SDRAM34中。
该SDRAM控制电路32h也输入一个寻址信号,图6(D)-(F)所示的RAS信号和CAS信号,到SDRAM34。该地址信号经一个地址总线33b输出到SDRAM34,而RAS信号和CAS信号经控制总线33c和33d输出到SDRAM34。该地址信号首先指明一个行地址,然后在后续的4个时钟周期中,指明一个列地址。RAS信号与指明行地址同时地下落,而CAS信号在指明列地址的时刻下落。这使得SDRAM34可识别四个地址并将图6(H)所示的32bits的YUV数据写入四个期望地址的每一个中。执行这种操作,直至64个象素。在每次已写完YUV数据时,该处理电路32W提供一个结束信号给调停电路32a,然后调停电路32a进入下一个请求的处理过程中。以此方式,对来自信号处理电路38的读取请求进行多次处理,结果是将一屏幕的YUV数据写入SDRAM34中。
基于NSTC编码器50的一个请求以隔行扫描方式由SDRAM34中读出写在SDRAM34中的YUV数据,并将它们写入缓存36中。
更具体地,NTSC编码器50将一个写入请求输出到存储器控制电路32,指令以基于SG15所输出的水平和垂直同步信号的图7(C)所示定时写入缓存器36。在此情形中,NTSC编码器50接收来自CPU68的一个控制脉冲。图3所示的RS-FF电路50b由该控制脉冲产生一个高电平选通信号。由此,一个写入请求经一个AND电路50a写入存储控制电路32。
调停电路32响应写入请求并将一个预定启动信号输出到处理电路32W。作为响应,图4所示的SDRAM控制电路32h提供一个图7(D)所示的24-MHz信号给SDRAM34。以图7(E)所示的24MHz时钟速率由SDRAM34中读取YUV数据。另一方面,缓存控制电路32x使芯片选择信号CS处于低电平,并将一个地址信号和可写信号WE2经地址总线30e和控制总线30g输出到缓存36。
缓存器36的结构如图2所示,也即,它与缓存器28类似地由一个双端SDRAM构成,以具有一个分为两个存储体的存储区域。由于有这样一个结构,NTSC编码器50与图7(B)所示的写入请求同步地交换一个存储体交换信号的电平。因此,存储器控制电路32输入到缓存器36的YUV数据通过缓存交换信号写入一个特定的存储体中。以此方式,YUV数据经DMA由SDRAM34中读取,并由DMA写入缓存器36。
参照图8,NTSC编码器50与存储体上的交换相同步地提供一个图8(C)所示的6-MHz地址信号经过缓存器36。由此,以图8(D)所示的6MHz时钟频率读取存储于缓存器36中的YUV数据。也由DMA进行对缓存器36的读取。从而读取的YUV信号被D-FF电路38和40以互不相同的定时锁存。由TG13所给出的D-FF电路38和40的时钟频率为3MHz。因此,在D-FF电路40以图8(F)所示的定时输出UV数据的同时,D-FF电路38以图8(E)所示的定时输出Y数据。
TG13也提供图8(G)所示的一个SW信号到开关SW2,和提供图8(J)所示的一个SW信号到开关SW3和SW4。与12-MHz时钟同步地控制图8(G)的SW信号,同时与6-MHz时钟同步地控制图8(J)的SW信号。当SW信号分别假定为值“0”-“3”时,开关SW2连接到端子S1-S4。当SW信号处于“0”时,开关SW3和SW4也连接到各自的端子S5和S7,当SW信号处于“1”时,开关SW3和SW4连接端子S6和S8。因此,Y数据经由开关SW2以图8(H)所示的12-MHz时钟速率输出。U数据也经由开关SW3以图8(K)所示的6-MHz时钟速率输出,同时,V数据也经由开关SW3以图8(L)所示的6-MHz时钟速率输出。
经由开关SW2输出的Y数据经一个D-FF电路42以图8(I)所示的定时提供给一个D/A转换器48,其中它被转换为一个模拟Y信号。另一方面,分别经开关SW3和SW4输出的U和V数据经D-FF电路44和46以图8(M)和(N)所示的定时提供给一个NTSC编码器50。D/A转换器54将NTSC编码器50的编码信号转换为一个模拟信号。D/A转换器48和54的输出在一个加法器52中相加,使得相加信号输出到监视器56上。结果,在监视器56上实时地显示运动图象。
如上所述,在照相机模式中,是经由DMA到缓存器28和36和SDRAM34对图象进行访问。也即,CPU68不承担图象数据处理过程,除了在设为照相机模式的基础上开启SG15以提供一个控制脉冲该信号处理电路18和NTSC编码器50。
如果操作者操纵快门按钮88,该CPU68提供一个选通信号给信号处理电路18输出的读取请求。具体地,CPU68重置图3所示的RS-FF电路18b以使输入到AND电路18a的门信号电平为低。而调停电路32a以一个预定间隔对配置在调停电路32a前级的RS-FF电路32b进行重置,结果是RS-FF电路32b具有一个维持于低电平的输出。因此,当读取请求被选通时,图5(K)和(L)和图6的操作暂停,而不从缓存器28中读取图象数据。响应于操作的暂停,总线30保持开通。
存储器控制电路32具有24MHz的处理速率,它比信号处理电路18的处理速度快四倍。由此,在照相机模式中,总线在总时间的1/4时间中被占据以传输由缓存器28读取的图象数据。然而,该操作通过按下快门按钮88而暂停,从而总线在总时间的1/4中被释放而开通。CPU68使用该总线-释放持续时间以压缩存于SDRAM34中的图象数据,从而将压缩的图象数据取到总线66端。而写入缓存器36的操作继续,从而在监视器56上显示一个基于快门按下操作所得的静止图象。
CPU68也提供一个控制脉冲给图3所示的配置在JPEG压缩/解压缩电路60中的RS-FF电路60c和60d,打开AND电路60c和60d的门。结果,读取和写入请求以预定的定时由JPEG压缩/解压缩电路60输入到存储器控制电路32。而写入请求命令将SDRAM34的图象数据写入缓存器58中,而读取请求命令读取存储于缓存器52中的压缩数据。因此,在输入读取请求之前先输入一个写入请求。
调停电路32a首先响应于写入请求而提供一个启动信号给处理电路32w。图4所示的缓存器控制电路32x使得芯片选择信号CS3电平为低。SDRAM控制电路32h在与照相机模式中的过程相同的过程中,从SDRAM34中读出图象数据。结果,由SDRAM34中以24MHz的时钟速率读出图象数据,该数据通过D-FF电路32r-32u和三态缓存器32v输出到缓存器58。该缓存器控制电路32x也与图象数据的输出相同步地输出一个地址信号和可写入信号WE3到缓存器58。这使得图象数据被写入缓存器58的预定地址。
CPU68进一步指令JPEG压缩/解压缩电路60对图象数据进行压缩。由此,JPEG压缩/解压缩电路60从缓存器58中读取图象数据,用JPEG方式进行压缩,并将压缩的图象数据写入缓存器62中。从而,存储器控制电路32响应于JPEG压缩/解压缩电路60的读取请求而读出存储于缓存器62中的压缩图象数据,并将其再次写入SDRAM34中。
也即,调停电路32a响应于读取请求而将预定的启动信号输入处理电路32w。图4的缓存器32x接收到该信号,就使得芯片选择信号CS4的电平为低并输出一个地址信号到缓存器62中。SDRAM控制电路34也开启三态缓存器32q并以预定的定时将地址信号,RSA信号和CAS信号输入SDRAM34中。由此,存于缓存器62中的压缩图象数据存储在SDRAM34的预定地址中。
如果以此方式逐帧地在SDRAM34中获得压缩图象数据,则CPU64通过总线桥取得该压缩图象数据,并将其写入DRAM70中。具体地,CPU68提供一个读取请求给配置存储器控制电路32中的RSFF电路32f。调停电路32a响应于该读取请求,提供一个预定的启动信号给处理电路32w并用一个总线桥控制信号使总线桥工作。由此,压缩的图象数据由SDRAM34中读出,而总线30和66相互连接。读出的压缩图象数据经总线30和总线桥64传到总线66一端。
而在上述的总线30被释放开通的1/4期间,在总线66一端对图象数据和压缩的图象数据进行提取。在将所有压缩的图象数据传到总线66一端之后,调停电路32a使到总线桥64停止工作,以去除在总线30和66之间连接。
CPU68提供一个预定的地址信号和可写入信号给DRAM70,以将由总线66一端取得的压缩图象数据写入DRAM70中。在写完一帧压缩图象数据之后,该压缩图象数据被读取并经总线66和I/F电路78写入存储卡80。也即,CPU68根据一个程序来访问DRAM70和存储卡80,从而将DRAM70中的压缩图象数据记录在存储卡80中。以此方式,在作为边界的总线桥64的两端的图象数据处理方式互不相同。在总线30一端,图象数据处理是由DMA完成,而在总线66一端,图象数据处理是由CPU68完成。
除了CPU68,DRAM70和I/F电路78,总线66还与PWM信号发生电路72,PIO电路74,闪存76和异步电路(UART)82相连接。该PWM信号发生电路72输出一个PWM信号以自动控制一个聚焦透镜(未示)。PIO电路74按要求输出一个闪光控制信号到闪光灯(未示)。闪存76保持一个将被CPU68处理的程序。异步电路82经由RS232C将图象数据输出到外端。CPU68由闪存76中读取一个程序并根据一个读取程序控制PWM信号发生电路72,PIO电路74和异步电路82。
如果操作者将模式设置开关86设置到再现端,CPU68由存储卡80中再现未压缩的图象数据。在保持在DRAM70中一次以后,该数据输出到存储控制电路。注意的是,CPU68在由DRAM70中读取压缩图象数据之前,提供一个写入请求到RS-FF电路32g。作为响应,调停电路32a使总线桥64工作,并提供一个预定的启动信号到处理电路32w。由此,由DRAM70中读取的压缩图象数据经总线66,总线桥64和总线30输入处理电路32w,并由DMA写入SDRAM34。
CPU68也指令JPEG压缩/解压缩电路60将存储于SDRAM34中的压缩数据解压缩。由此,JPEG压缩/解压缩电路60以类似于上述情形的方式来提供读取和写入请求到存储控制电路32。存储控制电路32响应于读取请求读取存储于SDRAM34中的压缩图象数据,其后经缓存器58将其输入到JPEG压缩/解压缩电路60。JPEG压缩/解压缩电路60将总线输入的压缩图象数据解压缩,并将解压缩的图象数据写入缓存器62。存储控制电路32响应写入请求并由缓存器62中读取图象数据并将其写入SDRAM34。也即,对存储于SDRAM34中的压缩图象数据进行解压缩和将解压缩的图象数据写入SDRAM34中的操作也由DMA实施。
也处于再现模式的CPU68提供一个控制脉冲给图3所示的RS-FF电路50b。由此,NTSC编码器50与照相机模式类似地输入一个写入请求给存储器控制电路32,而存储器控制电路32又由SDRAM34中读出图象数据。在再现模式中,无控制脉冲提供给信号处理电路18,而SDRAM34也未被照相图象数据更新。因此,从SDRAM34中重复读取相同的图象数据,从而在监视器56上显示一个与由存储卡80中再现的图象数据相对应的静止图象。而如果操作者操纵一个帧馈给开关90,则由存储卡80再现另一个压缩图象数据,并在监视器56上显示另一幅静止图象。
CPU68具体根据图9和图10所示的流程图进行处理。如果模式设置开关86设为照相机端,则CPU68进行一个图9的中断例程的处理。如果模式设置开关86设为再现端,则CPU68进行一个图10的中断例程的处理。
参照图9,在步骤S1中,将DMA启动到照相信号处理模块。也即,SG15启动以提供一个控制脉冲给信号处理电路18。作为响应,信号处理电路18处理照片图象数据以将其写入缓存器28,并提供一个读取请求给存储控制电路32。结果,照片图象数据被写入SDRAM34。然后在步骤S3中,CPU68将DMA启动到编码模块。也即,提供一个控制脉冲给NTSC编码器50。由此,NTSC编码器50提供一个写入请求给存储控制电路32。该存储控制电路32依次又从SDRAM32中读取图象数据并将其写入缓存器36。NTSC编码器50进一步处理写入缓存器36的图象数据并将它输出到监视器56上。结果在监视器56上实时地显示运动图象。
如果操作者操纵快门按钮88,则在步骤S5中,CPU确定为“YES”。在步骤S7,将DMA停止到照相信号处理模块,而在步骤S9,启动DMA到压缩处理模块。也即,信号处理电路18的RS-FF电路18b被重置而JPEG压缩/解压缩电路60的RS-FF电路60c和60d被提供一个控制脉冲。这将由信号处理电路18到存储器控制电路32的输出的读取请求暂停。替代地,读取和写入请求由JPEG压缩/解压缩电路60输入到存储控制电路32。在步骤S9中,也提供一个压缩指令给JPEG压缩/解压缩电路60,结果是压缩图象数据写入SDRAM34中。
此后,在步骤S11中,CPU68将一个读取请求写入存储控制电路32以由SDRAM34中取得压缩的图象数据并将其暂时保持在DRAM70中。然后在步骤S13中,DRAM70中的压缩图象数据被记录在存储卡80中。
在再现模式中,首先在图10所示的步骤15中,由存储卡80中读出压缩的图象数据并暂时将其写入DRAM70中。接着在步骤S17中,将DRAM70中的压缩图象数据与写入请求一起提供给存储控制电路32。存储控制电路32将压缩图象数据存储在SDRAM34中。接着在步骤S19中,CPU68将DMA启动到一个解压缩处理模块。也即,将解压缩指令和控制脉冲提供给JPEG压缩/解压缩电路60。由此,JPEG压缩/解压缩电路60对SDRAM34的压缩图象数据进行解压缩,而解压缩的图象数据又再次被写入SDRAM34中。
其后,在步骤S21中,CPU68将DMA启动到编码模块。此时,执行与步骤S3类似的处理步骤,从而在监视器56上显示再现的图象。如果操作者操纵帧馈给开关90,在步骤S23中,CPU确定为“YES”,并转到步骤S15,以由存储卡80产生另一个压缩数据。结果,更新了监视器56上的显示画面。
根据本实施例,DMA在相对于作为边界的总线桥64的总线30一端处理图象数据。在另一端,CPU68以软件方式处理图象数据,透镜聚焦和闪光。换句话说,DMA处理数据经总线30(高速总线)传输,而CPU处理数据经总线66J(低速总线)传输。此外,总线30和66按照需要,通过总线桥64相互连接。由此,DMA处理数据和CPU处理数据可以有效率地传输,从而提高了总的处理速度。
而在此实施例中,由总线30端传输到总线66端的图象数据或由存储卡再现的图象数据被写入DRAM70中。另外,可以配置SRAM取代DRAM70。在此方式中,SRAM要求连接到CPU68上。
虽然上面详细描述了本发明,应清楚地理解,上面参照附图和实施例的描述仅仅是示例性而非限制性,本发明的范围仅仅由所附权利要求来限制。