直接存储器存取传送装置的制作方法

文档序号:6571283阅读:294来源:国知局
专利名称:直接存储器存取传送装置的制作方法
技术领域
本发明涉及一种包括多个处理器的多处理器系统,具体上涉及一种用于执行处理器到处理器的直接存储器存取(DMA)传送的DMA传送装置。
背景技术
在多处理器系统中,多个处理器可以并行地执行计算。具体上,在图像处理领域中,经常执行高并行度的处理,因此如果存在大量的处理器,则可以相应地缩短图像处理所需的时间。但是,在执行并行计算之前,要处理的数据需要被划分以分布到多个处理器。当划分数据时,作为开销,向处理时间新增加处理器到处理器的数据传送。因此,如何能够以高速执行处理器到处理器的传送以提高最终的计算效率成为一个关键问题。
一种已知的作为加速处理器到处理器传送的现有技术是称为DMA的功能,其对要由处理器传送的数据执行与处理器无关的直接传送。当执行DMA传送时,处理器可以继续不同的处理,因此可以增加处理速度。在DMA传送中,主处理器监视DMA传送的开始和完成,并且在完成DMA传送时,主处理器使用在处理器之间提供的通信部件向从处理器发送完成通知。
图9是示出DMA传送序列的图。例如,为了执行向预定区域DMA传送由主处理器10管理的数据并且在完成所述DMA传送后由从处理器11使用所述数据来执行处理,所述主处理器10向DMA传送装置13发出传送请求,其用于启动DMA传送装置13,DMA传送装置13在DMA传送结束后向主处理器10发出传送结束通知,主处理器10使用处理器到处理器通信向从处理器11发出因为DMA传送结束而可以开始数据处理的通知(处理开始OK),并且接收所述通知的从处理器11执行数据处理。如果在从处理器11中的数据处理需要被划分为几个部分以便执行(如图10中所示),则多次执行在图9中所示的DMA传送序列。
顺便提及,在多处理器系统中,每个处理器可以成为主处理器,因此在每个处理器的控制程序中实现了对于DMA传送结束通知的确定处理功能。因此,在完成DMA传送后,向所有处理器发出传送结束通知,因此,在根本不需要所述通知的处理器中也需要进行对于传送结束通知的确定。(例如参见JP-A-2002-163239)因为在如上所述的现有技术的DMA传送中每个处理器必须确定从DMA控制器向所有处理器发出的传送结束通知,因此存在所述处理器上的负荷增加的问题。因为主处理器必须在每次DMA传送结束时向每个从处理器发出通知(处理开始OK),因此存在所述处理器上的负荷增加的问题。

发明内容
因此,本发明的目的是提供一种可以在DMA传送中减轻在处理器上的负荷的DMA控制器。
按照本发明,提供了一种DMA传送装置,用于在每个处理器具有的本地存储器和由多个处理器共享的全局存储器之间执行DMA传送,所述DMA传送装置包括表格,用于管理DMA传送结束通知要被发送至的目的地;以及,控制部件,用于向通过查询(reference)所述表格而确定的目的地发出所述DMA传送结束通知。按照所述配置,DMA传送装置直接向特定目的地发出传送结束通知,而没有主处理器的干预,以便可以减少在所述处理器上的负荷。因为仅仅向特定从处理器发出所述传送结束通知,因此消除了对于任何其他从处理器确定传送结束通知的需要,因此可以减少在所述处理器上的负荷。
在本发明中,所述表格管理要发送DMA传送结束通知的时间,并且所述控制部件在通过查询所述表格而确定的定时发出DMA传送结束通知。按照所述配置,可以改变DMA传送结束通知的定时,以便可以在不等待每个DMA传送的结束的情况下而开始对于传送数据的处理。
在本发明中,所述表格管理作为DMA传送结束通知要被发送至的目的地的从处理器或者作为DMA传送结束通知要被发送至的目的地的表格。按照所述配置,如果DMA传送结束通知要被发送至的目的地被设置为包含所述表格的DMA传送装置,则使得有可能连续地执行DMA传送,并且可以有效地执行多个DMA传送。
按照本发明,所述DMA传送装置向特定目的地直接发出传送结束通知,而没有主处理器的干预。因此可以减少在所述处理器上的负荷。因为仅仅向特定从处理器发出传送结束通知,因此消除了对于任何其他从处理器确定传送结束通知的需要,因此可以减少在所述处理器上的负荷。


在附图中图1是用于示出包含本发明的多处理器系统的配置的方框图;图2是用于示出管理表的图;图3是用于示出DMA传送序列的图;图4是用于示出DMA传送序列的图;图5是用于示出DMA传送序列的图;图6是用于示出DMA传送序列的图;图7是用于示出流数据的结构的图;图8是示出存储器到存储器的数据复制的图;图9是示出在现有技术中的DMA传送序列的图;以及图10是示出多次执行DMA传送的序列的图。
具体实施例方式
图1是示出包含本发明的多处理器系统的配置的方框图。如图1中所示,所述多处理器系统包括通过总线17连接的主处理器10、从处理器11、从处理器12、全局存储器15和DMA传送装置13。处理器的数量不限于三,但是,在所述实施例中,作为例子,描述了三个处理器。
每个处理器具有在执行处理器适当的处理时用作数据存储器的本地存储器16。不能从任何其他处理器直接访问本地存储器16,并且将处理器到处理器的数据传送执行为通过全局存储器15的DMA传送。所述全局存储器15是可以由多个处理器共同使用的共享存储器,并且被用作可以由多个处理器使用的公共缓冲区域以及被用作在多个处理器彼此进行通信时的公共数据的存储器。
图2是用于示出DMA传送装置13具有的管理表14的图。在管理表14中将目的地地址、源地址和DMA传送结束通知目的地ID设置为参数。而且,设置通知定时、DMA传送完成标记和DMA通道(后述)。管理表14存储多条记录,每条记录包含一组参数。
图3是用于示出DMA传送序列的图。主处理器10向DMA传送装置13发出DMA传送请求。在完成所述DMA传送时,DMA传送装置13查询管理表14,并且向确定对应于DMA传送参数(目的地地址和源地址)的从处理器集的目的地ID发出传送结束通知。在DMA传送后执行处理时,从处理器11向主处理器10发出结束通知。可以省略向主处理器10发出结束通知。可以设置传送结束通知要发送至的多个从处理器以便向所述多个从处理器中的每一个从处理器发出传送结束通知。
图4是示出DMA传送序列的另一个示例的图。例如,将讨论下列操作序列执行向全局存储器15DMA传送在主处理器10的本地存储器16中存储的数据,以及处理在从处理器11中的数据。主处理器10向DMA传送装置13发出第一DMA传送请求。在完成第一DMA传送时,DMA传送装置13查询管理表14,并且向确定对应于第一DMA传送参数(目的地地址和源地址)的从处理器集的目的地ID发出传送结束通知。接着,主处理器10向DMA传送装置13发出第二DMA传送请求。在完成第二DMA传送时,DMA传送装置13查询管理表14,并且向确定对应于第二DMA传送参数(目的地地址和源地址)的从处理器集的目的地ID发出传送结束通知。在DMA传送后执行处理时,从处理器11向主处理器10发出结束通知。将上述的DMA传送重复N次,由此可以执行所述处理序列。
图5是示出DMA传送序列的另一个示例的图。在图5中所示的传送序列中,从从处理器发出从主处理器发出的DMA传送请求。主处理器10向从处理器11发出处理开始请求。在执行必要的处理后,从处理器11向DMA传送装置13发出DMA传送请求。在完成所述DMA传送后,DMA传送装置13查询管理表14,并且向确定对应于DMA传送参数(目的地地址和源地址)的从处理器集的目的地ID发出传送结束通知。随后的处理类似于在前面参照图4描述的DMA传送序列中的处理。
按照所述实施例,所述DMA传送装置直接向特定从处理器发出传送结束通知,而没有主处理器的干预,因此可以减少在DMA传送中在处理器上的负荷。
图6是示出DMA传送序列的另一个示例的图。发出DMA传送请求的主处理器10在DMA传送装置13具有的管理表14中设置通知定时(,参见图2)。DMA传送装置13查询管理表14,并且向确定对应于DMA传送参数(目的地地址和源地址)的从处理器集的目的地ID发出传送结束通知。所述发出定时被定义为在管理表14中设置的通知定时。因此,如果按照未传送的数据段的数量定义通知定时,则当未传送的数据段的数量变得等于或小于按照其来定义在DMA传送期间的通知定时的数据段的数量时,发出传送结束通知。DMA传送装置13继续未传送的数据的DMA传送,并且在完成所有数据的DMA传送时,设置完成标记(参见图2)。从处理器11将处理提前到与DMA传送并行。从处理器11可以通过查询在管理表14中的完成标记来确认所有数据的DMA传送的完成。
当改变发出传送结束通知的定时时,为了处理具有首标部分和跟随首标部分的有效负荷部分的结构的流数据(例如如图7中所示),定义通知定时以便在当首标部分的DMA传送结束时发出传送结束通知,由此,从处理器11可以提前与首标相关的处理(首标分析等),而不等待所有数据的DMA传送的结束。可以按照已传送的数据段的数量而不是未传送的数据段的数量来定义通知定时。可以采用通知定时的定时器管理。
图8示出了如何通过全局存储器以存储块为单位将在主处理器具有的本地存储器中分配的存储块10、11、12和13中的数据复制到在从处理器具有的本地存储器中的存储块100、101、102和103。在这种情况下,需要执行从主处理器具有的本地存储器到全局存储器(1、3、5、7)的DMA传送以及从所述全局处理器到从处理器具有的本地存储器(2、4、6、8)的DMA传送。
DMA传送装置首先开始DMA传送1。在完成DMA传送1时,DMA传送装置向DMA传送装置发出传送结束通知。DMA传送装置向DMA传送2分配未使用的DMA通道,并且同时,开始DMA传送3。此后,同样,以流水线的方式来执行每个DMA传送。以DMA传送顺序在管理表中设置DMA传送参数。DMA传送装置接收DMA传送结束通知,并且执行DMA传送,由此,与在现有技术中的经由主处理器的DMA传送相比,可以减轻在处理器上的负荷。
本发明的DMA传送装置直接向特定目的地发出传送结束通知,而没有主处理器的干预,因此可以减少在所述处理器上的负荷。因为仅仅向特定从处理器发出传送结束通知,因此消除了对于任何其他从处理器确定传送结束通知的需要,因此可以减少在所述处理器上的负荷,并且作为用于在包括多个处理器的多处理器系统中执行处理器到处理器的DMA传送的DMA传送装置等,本发明的DMA传送装置十分有用。
权利要求
1.一种直接存储器存取DMA传送装置,用于在每个处理器具有的本地存储器和由多个处理器共享的全局存储器之间执行DMA传送,所述DMA传送装置包括表格,用于管理DMA传送结束通知要被发送至的目的地;以及控制器,用于向通过查询所述表格确定的目的地发出DMA传送结束通知。
2.按照权利要求1的DMA传送装置,其中,所述表格管理要发送DMA传送结束通知的定时,以及其中所述控制器在通过查询所述表格确定的定时发出DMA传送结束通知。
3.按照权利要求2的DMA传送装置,其中,所述表格管理按照未传送的数据段的数量或者已传送的数据段的数量定义的定时。
4.按照权利要求1的DMA传送装置,其中,所述表格管理作为DMA传送结束通知要被发送至的目的地的从处理器。
5.按照权利要求1的DMA传送装置,其中,所述表格按照DMA传送结束通知要被发送至的目的地管理所述表格。
全文摘要
为了减轻在DMA传送中在处理器上的负荷,DMA传送装置(13)用于执行在每个处理器具有的本地存储器(16)和由多个处理器共享的全局存储器(15)之间的DMA传送,其中,向通过查询表格(14)确定的目的地发出DMA传送结束通知,所述表(14)用于管理DMA传送结束通知要被发送至的目的地。
文档编号G06F13/20GK101013410SQ20071000672
公开日2007年8月8日 申请日期2007年2月2日 优先权日2006年2月2日
发明者浅田智司, 米津武纪, 永峰聪 申请人:松下电器产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1