数据处理设备和控制方法

文档序号:6539083阅读:152来源:国知局
数据处理设备和控制方法
【专利摘要】本发明涉及一种数据处理设备和控制方法。通过连结在从发出最初接收到的开头访问请求起执行连结的时间段内发出的访问请求,来生成连结访问请求。此时,对执行连结的时间段进行设置,以使得在从发出开头访问请求起、直到进行针对存储器装置的其它访问为止的时间内,针对与连结访问请求相对应的数据的访问完成。
【专利说明】数据处理设备和控制方法
【技术领域】
[0001]本发明涉及数据处理设备和控制方法,尤其涉及用于控制针对存储器装置的访问的技术。
【背景技术】
[0002]诸如数字照相机等的数据处理设备配备有各种信号处理功能。近年来,例如已出现诸如图像数据等的作为信号处理对象的数据的量不断增加的趋势,并且处理量响应于此也已增大。由于该原因,关于这些信号处理功能,要求响应性能的提高等以及高速化。此外,在图像处理等中,将作为处理对象的数据存储在诸如SDRAM等的经由总线所连接的存储器装置中,并且在读出所存储的数据的同时执行诸如应用处理等的操作。经由存储器装置来实现信号处理功能的处理电路(客户端)和该存储器装置经由总线主控和总线相连接。正在实现带宽较大的总线,以实现此时的用于将大量数据从总线主控写入或读出到存储器装置的存储器访问的高速化。
[0003]然而,关于宽带总线的带宽,有时无法使客户端的内部电路的设计最优化。在这种情况下,在总线主控将从客户端接收到的数据发送至宽带总线时发生不匹配,并且存在访问效率下降的可能性。
[0004]这里,参考图9A来说明访问效率下降的示例。该图示意性示出在图像处理设备(客户端)利用作为总线主控的DMAC(直接存储器访问控制器)经由总线对SDRAM执行写访问(写入)的情况下的处理。
[0005]在执行写访问的情况下,客户端首先将针对SDRAM的写请求发送至DMAC。此时,连同该写请求一起,客户端发送写地址和突发长度(传送长度)的信息。在接收到写请求时,DMAC将写确认信号返回至客户端。
[0006]在接收到来自DMAC的写确认信号时,客户端开始写访问。在图9A的示例中,客户端的一组数据的数据宽度为32位并且突发长度为8。在这种情况下,客户端将数据的突发长度、即连续8组数据发送至DMAC。换句话说,响应于一次写请求来将32X8=256位的数据经由DMAC发送至总线。
[0007]另一方面,针对SDRAM的访问所用的数据长度为128位。换句话说,通过DMAC针对SDRAM的一次访问,写入从客户端发送来的128 + 32=4组数据。
[0008]此外,根据所选择的SDRAM内的数据的处理方法来确定针对SDRAM的访问所用的突发长度。具体地,预先定义在SDRAM内在一个周期中可以处理的位数。例如,在DD2型SDRAM中,在一个周期中可以处理4位的数据,并且这被称为4位预取(prefetch)。也就是说,在4位预取的情况中,SDRAM的最小突发长度为4个突发,并且传送长度不能短于这4个突发。换句话说,在图9A的示例中,要从DMAC写入SDRAM的4个突发的数据长度128 X 4=512位是DMAC的一次写访问传送长度。
[0009]与此相对比,由于利用一次写请求而要从客户端发送的数据长度为256位,因此关于图9A的下部区域所示的SDRAM写数据,针对SDRAM的后半部分的两个突发的访问涉及无用的处理。应当注意,针对后半部分的两个突发的访问实际被掩码信号掩蔽并且没有进行针对SDRAM的写入。也就是说,由于DMAC的针对SDRAM的数据访问长度和一次写请求所用的数据访问长度之间的该差异,因此存在针对SDRAM的访问无用的问题。
[0010]日本特开2000-132497公开了用于在根据DMA传送要传送任意的数据量的情况下、通过减少来自DMAC的数据传送次数以缩短传送时间来改善针对总线的访问效率的方式。此外,以相同方式,例如在图9A的环境中,可考虑可以通过如图9B所示在将来自客户端的两次写请求发送至DMAC之前进行捆绑来避免从DMAC针对SDRAM的无用访问。
[0011]然而,如通过比较图9A和图9B显而易见,利用涉及考虑到针对SDRAM的传送长度来捆绑请求的方法,从发送与第一次写请求相对应的数据起直到将该数据写入SDRAM为止的时间(延迟)较长。此外,在如图9B所示、无法连续地执行写请求的情况下、即在从发出第一次写请求起直到发出第二次的写请求为止存在空闲时间的情况下,延迟进一步增大。
[0012]在从客户端发送数据起直到将数据写入SDRAM为止的延迟大的情况下,发生诸如以下等的问题。存在如下可能性:尽管针对SDRAM的写入没有完成,但通过读出已写入SDRAM的数据来进行处理的其它客户端或者执行了写入的实际客户端仍不期望地执行针对相同数据的读访问。也就是说,存在利用客户端的针对SDRAM的读访问将不期望地超过利用客户端的针对SDRAM的写访问的可能性。

【发明内容】

[0013]本发明是考虑到传统技术的这些问题而作出的。本发明提供一种可以良好地控制针对存储器装置的存储器访问的数据处理设备和控制方法。
[0014]本发明的第一方面提供一种数据处理设备,包括:处理部件,用于经由具有第一数据宽度的第一总线输出用于对存储器装置写入数据的第一访问请求;连结部件,用于通过对经由所述第一总线从所述处理部件输出的多个所述第一访问请求进行连结来生成一个第二访问请求,并且输出所述第二访问请求;控制部件,用于设置所述连结部件执行用于生成一个所述第二访问请求的连结处理的时间段,并且对所述连结部件进行控制,以使得对在一个所述时间段内输出的多个所述第一访问请求进行连结;以及存储器控制部件,用于经由具有比所述第一数据宽度大的第二数据宽度的第二总线来控制针对所述存储器装置的访问,其中,所述存储器控制部件接收从所述连结部件输出的所述第二访问请求,并且将所述第二访问请求经由所述第二总线输出至所述存储器装置。
[0015]本发明的第二方面提供一种数据处理设备的控制方法,包括以下步骤:处理步骤,用于经由具有第一数据宽度的第一总线输出用于对存储器装置写入数据的第一访问请求;连结步骤,用于通过对经由所述第一总线在所述处理步骤中输出的多个所述第一访问请求进行连结来生成一个第二访问请求,并且输出所述第二访问请求;控制步骤,用于设置所述连结步骤执行用于生成一个所述第二访问请求的连结处理的时间段,并且对所述连结步骤的操作进行控制,以使得对在一个所述时间段内输出的多个所述第一访问请求进行连结;以及存储器控制步骤,用于经由具有比所述第一数据宽度大的第二数据宽度的第二总线来控制针对所述存储器装置的访问,其中,在所述存储器控制步骤中,接收在所述连结步骤中输出的所述第二访问请求,并且将所述第二访问请求经由所述第二总线输出至所述存储器装直。[0016]通过以下(参考附图)对典型实施例的说明,本发明的其它特征将变得明显。
【专利附图】

【附图说明】
[0017]图1是示出根据本发明的实施例的数字照相机100的功能结构的框图。
[0018]图2是例示根据本发明的实施例的检测处理系统103的内部结构的框图。
[0019]图3是示出根据本发明的实施例1的写请求连结单元204的详细结构的框图。
[0020]图4是用于说明根据本发明的实施例的请求连结处理的图。
[0021]图5是用于说明根据本发明的实施例的请求连结处理中的超时时间的图。
[0022]图6是例示根据本发明的实施例1的数字照相机100所执行的处理系统访问处理的流程图。
[0023]图7是示出根据本发明的实施例2的写请求连结单元204的详细结构的框图。
[0024]图8是例示根据本发明的实施例2的数字照相机100所执行的处理系统访问处理的流程图。
[0025]图9A和9B是用于说明传统的存储器访问的图。
【具体实施方式】 [0026]第一实施例
[0027]以下将参考附图来详细说明本发明的例示实施例。应当注意,关于以下所述的一个实施例,将说明将本发明应用于多个处理系统在针对SDRAM进行数据的写入或读出的同时执行处理的数字照相机的示例,并且该数字照相机是数据处理设备的一个示例。然而,本发明还可应用于多个处理系统能够交替地访问存储器装置的任何装置。
[0028]数字照相机100的结构
[0029]图1是示出根据本发明的实施例的数字照相机100的功能结构的框图。
[0030]CPU105控制数字照相机100所配备的各块的操作。具体地,CPU105读出存储在未示出的ROM中的数字照相机100的操作程序,在未知的RAM中扩展该操作程序并且执行该操作程序以控制各块的操作。
[0031]SDRAMl 13是存储根据本实施例的数字照相机100的各处理系统的电路中的处理所要使用的数据的存储器装置。根据SDRAM控制器112来管理并执行相对于SDRAM113的数据的写入和读出。根据本实施例的数字照相机100具有摄像系统101、信号处理系统102、检测处理系统103和图像压缩/解压缩系统104这四个进行数据的发送和接收的处理系统(处理电路)。
[0032]摄像系统101执行摄像处理并且生成图像数据。摄像系统101例如配备有诸如(XD或CMOS传感器等的摄像装置。摄像装置对经由光学系统117已形成在该摄像装置上的光学图像进行光电转换,由此生成摄像信号。此外,摄像系统101执行与以下有关的处理:相关双采样,用于去除摄像信号中所包含的复位噪声;可变增益放大,用于将摄像信号的电平放大为可变增益;以及Α/D转换,其中在该Α/D转换中将模拟数据量化成数字数据。应当注意,光学系统117由诸如物镜、调焦透镜和光圈等的组件构成。
[0033]信号处理系统102对摄像系统101所生成的数字图像数据执行各种数字信号处理。具体地,信号处理系统102获得图中没有示出的图像评价值,并且基于这些评价值来执行适当的数字信号处理。
[0034]检测处理系统103对摄像系统101或信号处理系统102所生成的数字图像数据进行诸如图像的特征检测和动态物体追踪等的处理。在检测处理系统103中使用通过进行像素间隔剔除读出所获得的图像数据或者经过了块分割的一部分图像数据。
[0035]图像压缩/解压缩系统104通过对信号处理系统102所生成的图像数据执行符合例如JPEG格式等的预设图像压缩格式的编码处理来生成记录所用的图像数据。将所生成的记录所用的图像数据记录在后面所述的记录介质115上。此外,图像压缩/解压缩系统104对从记录介质115读出的压缩图像数据执行解压缩处理并且针对SDRAM113生成要显示的图像数据。
[0036]在存在与本实施例所配备的任何处理系统有关的数据传送的情况下,选择器106使该处理系统选择性地连接至后面所述的第一 DMAC107、第二 DMAC108或第三DMAC109。
[0037]第一 DMAC107、第二 DMAC108和第三DMAC109是根据本实施例的数字照相机100所配备的针对SDRAM113的DMA传送控制器。摄像系统101、信号处理系统102、检测处理系统103和图像压缩/解压缩系统104能够通过使用DMAC来在无需经由CPU的情况下访问SDRAM113。应当注意,在以下的说明中,在简称为“DMAC”的情况下,可以应用于第一DMAC107、第二 DMAC108 和第三 DMAC109 中的任一个。
[0038]显示装置111例如是诸如IXD等的数字照相机100所配备的显示装置。显示装置111通过对摄像系统101所拍摄到的图像数据进行直通显示来用作电子取景器。此外,显示装置111显示图像压缩/解压缩系统104解压缩后的、从记录介质115读出的图像数据。显示控制器110执行显示装置111的显示控制。
[0039]记录介质115例如是数字照相机100所配备的内部存储器、或者诸如存储卡或HDD等的可拆卸地连接至数字照相机100的记录装置。介质控制器114控制针对记录介质115的数据的写入和来自记录介质115的数据的读出。
[0040]应当注意,CPU105、各DMAC、显示控制器110、SDRAM控制器112和介质控制器114经由系统总线116相连接。系统总线116的带宽被设计成与数字照相机100相匹配并且是所谓的宽带总线。这里,CPU105和各DMAC是总线主控,并且显示控制器110、SDRAM控制器112和介质控制器114是总线从控。
[0041]各种处理系统的内部结构
[0042]接着,关于各种处理系统的内部结构,将参考图2使用检测处理系统103作为示例来进行说明。
[0043]各种处理系统具有执行相应处理的诸如芯片等的处理核。在检测处理系统103的情况下,检测处理核201执行检测处理。与DMAC的接口连接至检测处理核201,以使得该接口可以经由DMAC执行针对SDRAMl 13的写入或来自SDRAM113的读出。具体地,检测处理核201连接至数据写入所用的写IF202和数据读出所用的读IF203。
[0044]例如,在检测处理核201用于执行针对SDRAM113的数据写入的情况下,首先从检测处理核201向DMAC发出写请求信号。然后,在从DMAC接收到作为针对该请求的应答的写确认信号时,检测处理核201输出写数据。
[0045]这里,如前面所述,并非必须使本实施例中的各处理系统最优化为SDRAMl 13的数据宽度或系统总线116的带宽。这是因为不是所有新开发的数字照相机100中的处理系统的处理核都应改造。也就是说,尽管系统总线116的带宽可能已扩展,但存在从各处理核的接口向本地总线进行的输出所用的数据宽度不变的可能性。
[0046]在本实施例中,为了提高各处理系统和SDRAM113之间的数据传送的效率,该处理系统配备有用于对写请求或读请求进行连结的写请求连结单元204和读请求连结单元205。写IF202和写请求连结单元204以及读IF203和读请求连结单元205分别经由第一本地数据总线206和第二本地数据总线207相连接。在根据本实施例的检测处理系统103的第一本地数据总线206和第二本地数据总线207中,传输一组数据的数据宽度为32位的数据,从而与写IF202和读IF203相匹配。
[0047]写请求连结单元204和读请求连结单元205将从写IF202或读IF203接收到的请求连结,并且将这些请求作为一个连结请求发送至DMAC。此外,在存储了从写IF202或读IF203接收到的请求的信息的情况下,各连结单元将针对该请求的确认信号输出至写IF202 或读 IF203。
[0048]此外,写请求连结单元204将与从写IF202接收到的写请求相对应的数据堆叠在后面所述的内部数据缓冲器303中。在接收到针对连结写请求的连结写确认信号时,写请求连结单元204将与所接收到的连结写请求相对应的数据经由第三本地数据总线208输出至选择器106。也就是说,写请求连结单元204执行针对SDRAM113的数据的访问控制。此时,使要输出至第三本地数据总线208的一组数据的数据宽度最优化为SDRAM13的数据宽度或系统总线116的带宽。也就是说,根据本实施例的写请求连结单元204将一组数据的数据宽度从32位转换成128位。
[0049]另一方面,读请求连结单元205根据连结了来自读IF203的读请求的连结请求,经由DMAC接收从SDRAM113读取的数据。读请求连结单元205将所接收到的数据的数据宽度转换成读IF203所处理的数据宽度,并且将该数据宽度发送至第二本地数据总线207。也就是说,根据本实施例的读请求连结单元205将一组数据的数据宽度从128位转换成32位。
[0050]写请求连结单元204的详细结构
[0051]这里,关于根据本实施例的连结单元的详细结构,将使用图3来说明写请求连结单元204作为示例。
[0052]在写请求连结单元204中,将写IF202所发出的写请求输入至比较器301和请求队列缓冲器302。应当注意,写请求包括以下信息。
[0053].要写入数据的SDRAM13中的写地址(访问开始地址)的信息
[0054].利用一个写请求命令所进行的一次访问中的数据传送所用的突发长度(32位的数据的连续传送次数:第一数据长度)
[0055]请求队列缓冲器302保持已接收到的写请求中所包含的写地址和突发长度的信息。在将所接收到的写请求的信息存储在由所管理的指针值表示的地址时,请求队列缓冲器302返回作为接收完成通知的写确认信号。应当注意,可以仅将要连结的写请求的信息保持在请求队列缓冲器302中。在发送了连结写请求之后,利用后面要说明的请求发出控制单元306来重置根据本实施例的请求队列缓冲器302。
[0056]比较器301判断由所接收到的写请求指定的写地址是否与写入了与紧前接收到的写请求相对应的数据的SDRAM113中的最终地址连续。在如本实施例那样、要将多个请求转换成一个连结请求并且利用该一个连结请求来请求对SDRAM113写入数据的情况下,在SDRAMl 13中从由一个连结请求指定的开头地址起写入预定数据长度的数据。也就是说,需要根据一个连结请求所访问的SDRAMl 13的区域是连续的。因而,在本实施例中,在连结所接收到的写请求的情况下,比较器301判断要访问的地址是否连续。具体地,比较器301判断在由所接收到的写请求指定的最新开始地址与由最后接收到的写请求指定的紧前开始地址和紧前突发长度之间以下关系是否成立。
[0057](最新开始地址)-(紧前开始地址)=(紧前突发长度)
[0058]例如在如图4所示、要执行写请求的情况下,如以下所述,针对第一次发出的写请求和第二次发出的写请求,上述关系成立,
[0059]0x1008 - 0x1000=0x0008
[0060]并且这与突发长度8 (BLO)相对应。另一方面,如以下所述,针对第四次发出的写请求和第五次发出的写请求,上述关系不成立。
[0061]0x2000 - 0xl010=0x0FF0 幸 0x0004(BL3)
[0062]比较器301将判断结果作为连续地址判断信号输出至后面所述的请求发出控制单元306。
[0063]数据缓冲器303存储响应于写确认信号而从写IF202输入的数据。在存储该数据时,数据缓冲器303将例如存储有数据的最终地址的指针值输出至请求发出控制单元306。该指针值用于请求发出控制单元306保持追踪堆叠在数据缓冲器303中的数据量。
[0064]在将连结写请求发送至DMAC的情况下,加法器304对请求队列缓冲器302中所保持的所有请求的突发长度进行相加,并且将突发长度总和输出至请求发出控制单元306。
[0065]请求发出控制单元306控制针对DMAC的连结写请求的发出。具体地,请求发出控制单元306参考连续地址判断信号来连结在判断为发生了地址跳转之前所接收到的写请求,并且发出连结写请求。请求发出控制单元306发出如下连结写请求,其中该连结写请求包括保持在请求队列缓冲器302内的最初接收到的写请求中所包含的写地址信息、以及加法器304所输出的突发长度总和(第二数据长度)。应当注意,在判断为发生了地址跳转的情况下,请求发出控制单元306进行控制,以使得请求队列缓冲器302不执行所接收到的写请求信息的存储和写确认信号的返回。
[0066]此外,在接收到作为针对连结写请求的应答的连结写确认信号时,请求发出控制单元306使存储在数据缓冲器303中的与连结写请求相对应的数据发送至第三本地数据总线208。在本实施例中,从数据缓冲器303发送来的数据是一组数据的数据长度已被转换成128位的数据。例如在图4所示的示例中,在检测到写地址的地址跳转的情况下(在连续地址判断信号为高的情况下),将连结写请求发出并发送至DMAC。在图4的情况下,使用最初接收到的写请求的写地址(0x1000)和突发长度总和(8+4+4+4=20)来发出连结写请求。应当注意,在本实施例中,关于连结写请求中的突发长度的信息,将作为写入对象的一组数据的数据长度从作为写请求连结单元204之前的数据长度的32位转换成作为写请求连结单元204之后的数据长度的128位。因而,由于在一组数据为128位的情况下需要对突发长度进行转换,因此利用连结写请求所传输的突发长度的信息为20+ (128 + 32) =5。
[0067]此外,请求发出控制单元306确定与写请求的连结有关的其它条件,以使得在完成针对SDRAM113的数据的写入之前不对SDRAM113执行与该数据的读出有关的请求。具体地,请求发出控制单元306考虑到从发出要连结的写请求中的最初写请求(开头写请求)起、直到针对SDRAM113的连结数据的写入完成为止的时间,来连结这些写请求。
[0068]在本实施例中,写请求连结单元204配备有计时器305,其中该计数器305用于测量从发出开头写请求起的经过时间。在从发出开头写请求起经过了预设时间(超时时间)的情况下,计时器305将超时检测信号发送至请求发出控制单元306。然后,请求发出控制单元306将在接收到超时检测信号的时间点处已接收到的写请求确定为作为连结对象的写请求。应当注意,利用选择器106将超时时间供给至计时器305。
[0069]轺时时间
[0070]这里,关于用于确定要供给至计时器305的超时时间的方法,使用图5来进行详细说明。
[0071]如图5所示,在发出了开头写请求的情况下,计时器305开始计数。此时,如下确定用于确定要连结的写请求的超时时间T2。
[0072]首先,获得最短时间T0,其中该最短时间TO为从利用一个处理系统的写IF202发出针对一组数据的写请求起、直到利用同一或其它处理系统发出针对写入SDRAM113的该数据的读取请求为止的时间。根据在数字照相机100中执行的处理系统的并行操作等来定义最短时间T0。
[0073]此外,该图中示出的时间Tl表示从发出DMAC的写请求(连结写请求)起、直到该请求被SDRAM控制器112接受为止所需的最大所需时间。考虑到在数字照相机100中可以同时并行地发生的、从总线主控针对系统总线116的同时访问处理,可以如下定义最大所需时间Tl。应当注意,最大所需时间Tl可以响应于所设置的摄像模式或数字照相机100的状态而改变。在这种情况下,CPU105可以通过判断数字照相机100的当前状态来确定最大所需时间Tl,计算超时时间T2并且将该超时时间T2供给至计时器305。
[0074]例如,可考虑诸如本实施例等的、四个总线主控(CPU105、第一 DMAC107、第二DMAC108和第三DMAC109)同时对系统总线116进行访问以访问SDRAM113的情况。为了访问SDRAMl 13,根据本实施例,在SDRAM控制器112中可以保持(排队)这些总线主控所发出的前四个请求。此外,在本示例中,可以从四个总线主控向系统总线116进行同时并行访问。换句话说,利用根据本实施例的数字照相机100,在完成至少以下之后执行利用一个总线主控的针对SDRAMl 13的访问。
[0075].与四次排队请求(最大数量)有关的访问
[0076].根据利用系统总线116的总线仲裁的四次(最大数量)的访问
[0077]也就是说,在总共完成了 4+4=8次的针对SDRAM113的访问的情况下,接收到利用第一个总线主控的针对SDRAM113的请求并且能够进行访问。
[0078]这里,可以根据总线主控的最大突发长度来定义与针对SDRAM113的一次数据访问有关的最大时间Tacc。也就是说,在本示例中,可以将作为从一个总线主控发出连结写请求起直到接收到该连结写请求为止的保证时间的Tl定义为TaccX8。这样,通过从如此定义的最短时间TO中减去最大所需时间Tl,可以定义超时时间T2(T2=T0 - Tl)。CPU105将这样定义的超时时间Τ2供给至选择器106。
[0079]此外,写请求连结单元204的数据缓冲器303是有限区域。由于该原因,除上述条件以外,在利用要写入SDRAM113的数据而已使数据缓冲器303变满(接收到“数据缓冲器满”)的情况下,请求发出控制单元306中断要连结的写请求的接收。应当注意,例如可以将数据缓冲器303的容量设置为针对SDRAM113的最大突发长度。
[0080]也就是说,在以下任何情况中,根据本实施例的请求发出控制单元306连结直到此时为止所接收到的请求。
[0081]1.根据连续接收到的请求要访问的地址不连续的情况。
[0082]2.从发出最初请求起超过了超时时间的情况。
[0083]3.数据缓冲器303已进入满状态的情况。
[0084]处理系统的访问处理
[0085]关于具有该结构的根据本实施例的数字照相机100的处理系统的访问处理,将使用图6的流程图来说明具体处理。应当注意,假定以下来进行说明:在执行需要例如利用一个处理系统(对象处理系统)访问SDRAMl 13的处理的情况下,本处理系统的访问处理开始。
[0086]在S601中,CPU105在系统总线116中获得能够同时工作的总线主控的数量。如前面所述响应于数字照相机100的状态来预先定义能够同时工作的总线主控的数量的信息,并且例如将该信息存储在未示出的ROM中。CPU105读出该信息以获得能够同时工作的总线主控的数量。
[0087]在S602中,CPU105在能够同时工作的总线主控中指定用以执行最长的突发传送的总线主控,并且指定与一次数据访问有关的最长时间Tacc。
[0088]在S603中,CPU105根据预先确定的最短时间T0、与一次数据访问有关的最长时间Tacc和能够同时工作的总线主控的数量来计算超时时间T2,并且将该超时时间T2供给至对象处理系统的计时器305。
[0089]在S604中,对象处理系统根据CPU105的控制来开始处理。
[0090]在S605中,对象处理系统的请求发出控制单元306判断是否满足任何请求连结条件。在判断为满足请求连结条件的情况下,请求发出控制单元306使该过程进入S606,并且在判断为不满足请求连结条件的情况下,进入S607。
[0091]在S606中,请求发出控制单元306连结这些请求并且将连结请求输出至选择器106。此外,在接收到针对连结请求的确认信号时,请求连结单元开始针对SDRAM113的访问。例如,在写入操作的情况下,写请求连结单元204将堆叠在数据缓冲器303中的写数据输出至选择器106。
[0092]在步骤S607中,CPU105判断对象处理系统的处理是否完成。在判断为对象处理系统的处理完成的情况下,CPU105使该过程进入S608,并且在判断为对象处理系统的处理没有完成的情况下,进入S605。
[0093]在S608中,请求连结单元在CPU105的控制下执行与未发送的所接收到的请求有关的处理,然后结束本处理系统访问处理。例如,在写入操作的情况下,写请求连结单元204对残留在数据缓冲器303中的数据进行清空(flush)处理(强制写入SDRAMl 13)。具体地,CPU105通过将清空处理请求信号供给至请求发出控制单元306来执行该清空处理。
[0094]如上所述,根据本实施例的数据处理设备能够良好地控制针对存储器装置的存储器访问。具体地,该数据处理设备生成如下的连结访问请求,该连结访问请求是通过连结在从发出所最初接收到的开头访问请求起执行连结的时间段内所发出的访问请求而生成的。此时,设置执行连结的时间段,以使得在从发出开头访问请求起直到进行针对存储器装置的其它访问为止的时间内,完成针对与连结访问请求相对应的数据的访问。
[0095]通过以这种方式执行,可以确保例如在正在连结访问请求的时间段内不会发生由其它处理系统对根据连结访问请求所要访问的SDRAMl 13的数据进行访问。更具体地,可以防止针对根据连结访问请求写入SDRAM113的数据的读出处理在该数据的写入之前执行。
[0096]第二实施例
[0097]在上述实施例1中,假定预先设置了最短时间TO来进行说明,其中该最短时间为从发出来自一个处理系统的写请求起、直到发出针对由于该请求所写入的数据的下一读请求为止的时间。通常,在存在多个同时工作的总线主控、并且使用中的系统总线116的带宽宽的情况下发生写访问延迟。在本实施例中,以下说明这种处理:例如CPU105的处理所占据的系统总线116的带宽的一部分宽的情况等的、难以具体定义最短时间TC、即难以定义超时时间的情形。应当注意,关于本实施例的数字照相机100,将相同的附图标记分配至与上述实施例1的结构相同的结构,并且省略了针对这些结构的说明。
[0098]写请求连结单元204的详细结构
[0099]除了上述实施例1的结构以外,根据本实施例的写请求连结单元204还配备有第一选择器701和第二选择器702。
[0100]在本实施例中,在无法定义最短时间TO的情况、或者所使用的系统总线116的带宽为预定值以上的情况下,CPU105执行控制,以使得在针对SDRAM113的访问中不会发生不匹配。具体地,在满足上述条件的情况下,CPU105判断为发生了访问延迟,并且将不进行访问请求的连结的请求连结处理停止信号供给至第一选择器701和第二选择器702。
[0101]将输入至写请求连结单元204的写请求和从请求发出控制单元306输出的连结写请求输入至第一选择器701。在从CPU105供给了请求连结处理停止信号的情况下,第一选择器701在不进行连结的情况下输出输入至写请求连结单元204的写请求、即写IF202所输出的写请求。此外,在没有供给请求连结处理停止信号的情况下,第一选择器701输出请求发出控制单元306所输出的连结写请求。
[0102]将表示输入至写请求连结单元204的写请求的写确认信号存储在请求队列缓冲器302中,并且将DMAC所返回的写确认信号输入至第二选择器702。在从CPU105供给的请求连结处理停止信号的情况下,第二选择器702输出DMAC所返回的写确认信号作为写请求连结单元204的写确认信号。此时输出的写确认信号是第一选择器701所输出的、针对写IF202所输出的写请求的DMAC的应答信号。此外,在没有供给请求连结处理停止信号的清下,第二选择器702输出请求队列缓冲器302所输出的写确认信号。
[0103]也就是说,在CPU105输出请求连结处理停止信号的情况下,根据本实施例的写请求连结单元204将从写IF202输入的访问请求传递并输出至DMAC。此外,写请求连结单元204将从DMAC返回的确认信号传递并输出至写IF202。
[0104]处理系统的访问处理
[0105]关于具有该结构的根据本实施例的数字照相机100的处理系统的访问处理,将使用图8的流程图来说明具体处理。应当注意,假定以下来进行说明:在例如需要执行利用一个处理系统(对象处理系统)访问SDRAMl 13的处理的情况下,本处理系统的访问处理开始。应当注意,关于根据本实施例的处理系统的访问处理,将相同的附图标记分配至用于执行与上述实施例中的处理系统的访问处理等同的处理的步骤。[0106]在处理开始时,CPU105在S801中判断是否可以定义从利用对象处理系统发出写请求起直到下次读取与该请求相对应的写入SDRAM113的数据为止的最短时间TC。具体地,CPU105例如判断当前进行同时操作的总线主控的数量和执行中的处理,并且判断是否可以定义最短时间T0。在判断为可以定义最短时间TO的情况下,CPU105使该过程进入S601,并且在判断为不能定义最短时间TO的情况下,进入S802。
[0107]在S802中,CPU105判断使用中的系统总线106的带宽是否为预定阈值以下。带宽阈值可以是例如通过实验所获得的、在不能定义最短时间TO的状况下不会发生访问不匹配的值。在判断为使用中的带宽是阈值以下的情况下,CPU105将在不能定义最短时间TO的状况下不会发生访问不匹配时已获得的、直到下次访问为止所需的时间定义为最短时间TO,并且使该处理进入S601。此外,在判断为使用中的带宽大于阈值的情况下,CPU105使该处理进入S803。
[0108]在S803中,CPU105将请求连结处理停止信号供给至写请求连结单元204以使得不执行请求连结,并且使该处理进入S604。应当注意,在这种情况下,在S605中始终判断为不满足连结条件。
[0109]如此,可以响应于系统总线106的使用状况和利用各总线主控的处理来良好地控制针对存储器装置的存储器访问。
[0110]其它实施例
[0111]本发明的实施例还可以通过如下的方法来实现,即,通过网络或者各种存储介质将执行上述实施例的功能的软件(程序)提供给系统或装置,该系统或装置的计算机或是中央处理单元(CPU)、微处理单元(MPU)读出并执行程序的方法。
[0112]尽管已经参考典型实施例说明了本发明,但是应该理解,本发明不限于所公开的典型实施例。所附权利要求书的范围符合最宽的解释,以包含所有这类修改、等同结构和功倉泛。
【权利要求】
1.一种数据处理设备,包括: 处理部件,用于经由具有第一数据宽度的第一总线输出用于对存储器装置写入数据的第一访问请求; 连结部件,用于通过对经由所述第一总线从所述处理部件输出的多个所述第一访问请求进行连结来生成一个第二访问请求,并且输出所述第二访问请求; 控制部件,用于设置所述连结部件执行用于生成一个所述第二访问请求的连结处理的时间段,并且对所述连结部件进行控制,以使得对在一个所述时间段内输出的多个所述第一访问请求进行连结;以及 存储器控制部件,用于经由具有比所述第一数据宽度大的第二数据宽度的第二总线来控制针对所述存储器装置的访问, 其中,所述存储器控制部件接收从所述连结部件输出的所述第二访问请求,并且将所述第二访问请求经由所述第二总线输出至所述存储器装置。
2.根据权利要求1所述的数据处理设备,其中, 所述控制部件对所述连结部件进行控制,以使得不对在一个所述时间段内输出的所述第一访问请求和在另一所述时间段内输出的所述第一访问请求进行连结。
3.根据权利要求1所述的数据处理设备,其中, 所述控制部件设置所述 时间段,以使得在从所述处理部件输出所述第一访问请求起、直到请求读出根据所述第一访问请求而写入所述存储器装置的数据为止的间隔内,将所述第二访问请求输出至所述存储器装置。
4.根据权利要求1所述的数据处理设备,其中, 所述控制部件设置通过从第一时间段中减去第二时间段所获得的第三时间段,作为要执行所述连结处理的时间段,其中所述第一时间段是从所述处理部件输出所述第一访问请求起、直到请求读出根据所述第一访问请求而写入所述存储器装置的数据为止的时间段,以及所述第二时间段是从所述存储器控制部件向所述存储器装置输出访问请求起、直到接受所述访问请求为止的时间段。
5.根据权利要求4所述的数据处理设备,其中,还包括: 多个其它处理部件,用于分别输出针对所述存储器装置的访问请求, 其中,所述第三时间段是根据同时输出针对所述存储器装置的访问请求的所述其它处理部件的数量来确定的。
6.根据权利要求4所述的数据处理设备,其中, 所述存储器装置包括保持部件,所述保持部件用于保持经由所述第二总线所接收到的访问请求,以及 所述第三时间段是根据所述保持部件所保持的访问请求的数量来确定的。
7.根据权利要求1所述的数据处理设备,其中, 所述控制部件对所述连结部件进行控制,以使得在第一模式下,执行针对所述第一访问请求的连结处理,并且在第二模式中,不执行针对所述第一访问请求的连结处理。
8.根据权利要求7所述的数据处理设备,其中, 所述控制部件响应于针对所述存储器装置的传送所使用的所述第二总线的带宽来切换所述第一模式和所述第二模式。
9.根据权利要求1所述的数据处理设备,其中,在判断为由在一个所述时间段内从所述处理部件连续输出的两个所述第一访问请求指定的地址不连续的情况下,所述连结部件不对该连续输出的两个所述第一访问请求进行连结。
10.根据权利要求9所述的数据处理设备,其中, 所述第一访问请求包括写入开始地址和要写入的数据的数据长度,以及 所述连结部件通过将连续输出的两个所述第一访问请求中的先输出的所述第一访问请求的写入开始地址和后输出的所述第一访问请求的写入开始地址之间的差、与先输出的所述第一访问请求的数据长度进行比较,来判断由该连续输出的两个所述第一访问请求指定的地址是否连续。
11.一种数据处理设备的控制方法,包括以下步骤: 处理步骤,用于经由具有第一数据宽度的第一总线输出用于对存储器装置写入数据的第一访问请求; 连结步骤,用于通过对经由所述第一总线在所述处理步骤中输出的多个所述第一访问请求进行连结来生成一个第二访问请求,并且输出所述第二访问请求; 控制步骤,用于设置所述连结步骤执行用于生成一个所述第二访问请求的连结处理的时间段,并且对所述连结步骤的操作进行控制,以使得对在一个所述时间段内输出的多个所述第一访问请求进行连结;以及 存储器控制步骤,用于经由具有比所述第一数据宽度大的第二数据宽度的第二总线来控制针对所述存储器装置的访问, 其中,在所述存储器控制步骤中,接收在所述连结步骤中输出的所述第二访问请求,并且将所述第二访问请求经由所述第二总线输出至所述存储器装置。
【文档编号】G06F13/16GK104021095SQ201410071667
【公开日】2014年9月3日 申请日期:2014年2月28日 优先权日:2013年2月28日
【发明者】君岛裕一郎 申请人:佳能株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1