专利名称:硬件开关及分布式处理系统的制作方法
技术领域:
本发明涉及硬件开关及分布式处理系统。
技术背景 在并行计算机系统中,有些系统利用纵横开关等开关将作为计算节点的多个处理 部件互相连接,进行节点之间的数据传输等,同时使这些处理部件协作来处理输入数据。这 些系统的目的在于,把作为处理对象的数据分割成互相之间不具有依赖关系,使用独立且 并行的节点间网络进行快速的数据传输,由此实现快速化。作为采用这种开关的并行计算 机系统,例如有日本特开2009-20797公报提出的系统。以往采用开关的并行计算机系统的目的在于,提高并行地处理应用的数据的处理 性能。另一方面,通过将多个特定功能的处理部件互相对接连接,在独立地并行实现数据流 处理时,开关比较有效。通过利用开关来形成特定功能的处理部件之间的处理路径,能够进 行应用的数据流处理。因此,开关不仅需要传输数据,而且需要管理路径信息和处理部件的 信息等的控制功能,但以往的开关以数据的传输为主要目的,例如,只要按照由处理部件指 定的传输目的地节点的信息来实现开关即可。即,难以根据来自处理部件的控制信息和数 据的识别及控制信息的解释,来形成遵从控制信息的处理路径。
发明内容
本发明就是鉴于上述情况而提出的,将来自所连接的处理部件的控制信息识别为 处理数据并进行解释,进行处理部件的自主管理、处理部件的信息提供、路径信息和处理部 件内部参数的设定。因此,本发明的目的在于,提供一种硬件开关及分布式处理系统,通过 管理并控制与开关连接的处理部件,同时互相参照与应用处理相对应的各个数据的识别符 和路径信息,形成最适合于应用处理的处理部件间的处理路径。为了解决上述课题并达到目的,本发明的硬件开关连接了多个处理部件,其中,对 于从多个处理部件中选择的发送侧处理部件、以及发送侧处理部件之外的另外的接收侧处 理部件,硬件开关将从发送侧处理部件具有的输出中选择的一个输出、与从接收侧处理部 件具有的输入中选择的一个输入互相连接,由此选择性地切换多个处理部件间的路径,并 对发送侧处理部件的输出和接收侧处理部件具有的输入中的至少一方进行多重连接。在本发明的硬件开关中,优选硬件开关进行互相连接的发送侧处理部件与接收侧 处理部件之间的数据流处理。在本发明的硬件开关中,优选硬件开关具有开关部,其具有连接多个处理部件的 输出及输入的多个通道;和控制部,其控制开关部。在本发明的硬件开关中,优选控制部识别从发送侧处理部件的输出接收到的数据 是处理数据还是控制命令。在本发明的硬件开关中,优选控制部通过硬件逻辑来识别从发送侧处理部件的输 出接收到的数据是处理数据还是控制命令。
在本发明的硬件开关中,优选在数据是控制命令的情况下,控制部按照控制命令 来设定路径信息。 在本发明的硬件开关中,优选在数据是处理数据的情况下,控制部按照与处理数 据相对应的路径选择信息和路径信息,确定下一个发送目的地。在本发明的硬件开关中,优选在数据是处理数据的情况下,控制部按照与处理数 据相对应的路径选择信息和路径信息,进行开关部的路径的切换。在本发明的硬件开关中,优选控制部识别从发送侧处理部件的输出接收到的数据 是要输入到接收侧处理部件的哪个输入通道的数据。在本发明的硬件开关中,优选路径选择信息包含与发送侧处理部件相关的信息。在本发明的硬件开关中,优选与发送侧处理部件相关的信息包含连接发送侧处理 部件的硬件开关的ID信息、发送侧处理部件自身的ID信息以及发送侧处理部件所连接的 通道的ID信息中的至少任一个ID信息,作为发送侧处理部件的ID信息。在本发明的硬件开关中,优选路径选择信息包含数据处理的会话的ID。在本发明的硬件开关中,优选在数据是控制命令的情况下,控制部按照控制命令 来进行多个处理部件的登记及登记的解除、处理部件的登记信息公开、或者处理部件设定 数据的传输。在本发明的硬件开关中,优选控制部识别开关部的输入输出通道、与和开关部连 接的多个处理部件的各个输入输出通道的连接关系。在本发明的硬件开关中,优选即使在系统执行过程中连接关系动态变化,控制部 也识别连接关系。在本发明的硬件开关中,优选同时存在多个路径。在本发明的硬件开关中,优选当在发送侧处理部件和接收侧处理部件之间进行通 信时,也能够执行路径的切换及新路径的追加。在本发明的硬件开关中,优选与开关部连接的处理部件只连接输出或输入中的任一方。在本发明的硬件开关中,优选存在多个包括与开关部连接的处理部件的会话。在本发明的硬件开关中,优选存在多个包括与开关部连接的处理部件的路径。在本发明的硬件开关中,优选硬件开关向另外的硬件开关传输分组。本发明的分布式处理系统的特征在于,该分布式处理系统包括多个处理部件; 和连接了多个处理部件的硬件开关,其中,硬件开关针对从多个处理部件中选择的发送侧 处理部件、和发送侧处理部件之外的另外的接收侧处理部件,将从发送侧处理部件具有的 输出中选择的一个输出、与从接收侧处理部件具有的输入中选择的一个输入互相连接,由 此选择性地切换多个处理部件间的路径,并对发送侧处理部件的输出和接收侧处理部件具 有的输入中的至少一方进行多重连接。在本发明的分布式处理系统中,优选分布式处理系统进行互相连接的发送侧处理 部件和接收侧处理部件之间的数据流处理。
图1是表示本发明的第1实施方式涉及的分布式处理系统的结构的图。
图2是表示本发明的第1实施方式涉及的硬件开关的结构的图。图3A是表示本发明的实施方式的处理部件的通道的示例的图。图3B是表示本发明的实施方式的处理部件的通道的示例的图。图3C是表示本发明的实施方式的处理部件的通道的示例的图。图3D是表示本发明的实施方式的处理部件的通道的示例的图。图4是表示本发明的第1实施方式涉及的分布式处理系统的结构示例的图。图5是表示在本发明的第1实施方式涉及的开关部中,切换从输入通道向输出通 道的连接的示例的图。图6是表示在本发明涉及的第1实施方式的PE、⑶、硬件开关之间收发的分组的 结构的图。图7是左列表示消息的示例,右列表示对应的消息的内容的图。图8是左列表示状态的示例,右列表示对应的状态的内容的图。图9是分别表示PE登记请求时的信息的示例和各个信息的数据示例的表。图10是分别表示针对登记请求的响应时的信息的示例和各个信息的数据示例的表。图11是表示与图9、图10所示的示例对应的连接示例的图。图12是分别表示登记PE询问的响应时的信息的示例和各个信息的数据示例的表。图13是表示与图12所示的示例对应的连接示例的图。图14是分别表示路径信息设定请求时的信息的示例和各个信息的数据示例的表。图15是表示与图14所示的示例对应的连接示例的图。图16是表示与图14所示的示例对应的连接示例的图。图17是表示⑶、PE、开关之间的协议程序的一例的图。图18是表示开关的控制部的处理流程的流程图。图19是表示硬件开关的开关动作的流程的流程图。图20是表示硬件开关的开关动作的流程的流程图。图21是表示硬件开关的安装示例的图。图22是表示作为本发明的第2实施方式涉及的应用的JPEG解码处理的流程的流 程图。图23是表示作为本发明的第2实施方式涉及的应用的图像二值化处理的流程的 流程图。图24是表示第2实施方式涉及的开关及PE的通道设定的图。图25是表示在执行JPEG解码处理时形成的路径的图像的图。图26是表示在执行图像二值化处理时形成的路径的图像的图。图27是分别表示PE登记请求时的分组的信息的示例和各个信息的数据示例的表。图28是分别表示针对PE登记请求的回复时的分组的信息的示例和各个信息的数 据示例的表。
图29是分别表示PE登记请求时的分组的信息示例和各个信息的数据示例的表。图30是分别表示针对PE登记请求的回复时的分组的信息示例和各个信息的数据 示例的表。图31是分别表示登记PE询问时的分组的头部的信息示例和各个信息的数据示例 的表。图32是分别表示登记PE询问的回复时的分组的信息示例和各个信息的数据示例 的表。图33是分别表示JPEG解码处理用的路径信息设定时的分组的信息示例和各个信 息的数据示例的表。图34是分别表示图像二值化处理用的路径信息设定时的分组的信息示例和各个 信息的数据示例的表。图35是分别表示参数设定时的分组的信息示例和各个信息的数据示例的表。图36是表示与图35所示的示例对应的连接示例的图。图37是表示在JPEG解码处理中,从PE-13 (逆量化)向PE-14 (IDCT)发送N字节 的图像数据时的分组结构的图。图38是表示从PE_17(亮度图像生成)向PE_18( 二值化)发送M字节的图像数 据时的分组结构的图。图39是表示针对个别的PE形成多个路径时的连接示例的图。图40是表示针对共同的PE形成多个路径时的连接示例的图。
具体实施例方式下面,根据附图具体说明本发明的硬件开关及分布式处理系统的实施方式。另外, 本发明不限定于下述的实施方式。首先,说明第1实施方式的分布式处理系统的结构概况。如图1所示,第1实施方式的分布式处理系统具有多个PE、硬件开关和⑶。图1 是表示第1实施方式的分布式处理系统的结构的图。PE(处理部件,processing element)是提供特定用途的功能的计算模块。⑶(控 制单元,controle unit)生成针对硬件开关和PE的控制命令,尤其生成硬件开关的路径信 息。硬件开关(以下有时简称为开关)是形成将PE彼此互相接合的网络的动态开关电路。硬件开关由控制部、存储部和开关部构成(参照图2)。图2是表示第1实施方式 的硬件开关的结构的图。在图2中省略了存储部的图示,其可以构成为设置在控制部内。来自CU的路径信息经由控制部被保存在存储部中。控制部使用来自各个PE的路 径选择信息和存储部的路径信息,进行开关部的开关切换(开关)。把开关部的输入输出接口称为通道。进行开关指将输入通道和输出通道一对一对 应起来,将它们互相连接。在图2中,利用空白框表示输入通道,利用带斜线框表示输出通 道,在除图2之外的附图中,对输入通道和输出通道也进行相同表示。PE和⑶与硬件开关相同,也具有作为输入输出接口的通道(参照图3A、3B、3C、 3D)。图3A、3B、3C、3D是表示本实施方式的处理部件的通道的示例的图。在图3A、3B、3C、3D 中,对将要使用的输入输出通道附加箭头。
一个PE对于输入、输出分别具有至少一个通道。输入输出通道基本上是如PE-1 (图3A)那样成对使用的,但也可以如PE_2(图 3B)、PE-3(图3C)那样只使用输入侧或输出侧,还可以如PE-4(图3D)那样使输入和输出 的通道序号不同。图4是表示该实施方式的分布式处理系统的结构示例的图。如图4所示,⑶和PE的各个通道与硬件开关的各个通道一对一地连接,由此构成 分布式处理系统。各个PE的输入通道和输出通道的ID也可以不同,并与具有相同ID的硬 件开关的通道连接。图5是表示在开关部中切换从输入通道向输出通道的连接的示例的图。在图5中,表示将连接由从输入通道1向输出通道6的路径A切换为从输入通道 1向输出通道4的路径B的情况。下面,说明本实施方式的分组结构。图6是表示在本实施方式的PE、CU、硬件开关之间收发的信息的分组结构的图。分组由头部和数据部构成。头部由PE的ID信息、会话ID、当前索引值、表示数据 及控制命令等分组内容的消息、存储数据的处理结果等的状态、和数据部的数据尺寸等构 成。数据部除了存储处理数据外,也存储PE的设定数据和控制命令的设定参数。分组的各个字段及其概况如下所述。SWID是PE的ID信息之一,表示PE所连接的硬件开关的ID。在与硬件开关连接、 登记时被通知该ID。PEID是PE的ID信息之一,表示PE自身的ID。在与硬件开关连接、登记时被唯一 地且动态地分配给各个PE。通道ID是PE的ID信息之一,表示PE所连接的通道的ID。把针对各个任务请求的数据处理称为会话。会话ID被分配给各个处理会话。例 如,如果在相同的图像处理中成为对象的图像不同,则被分配不同的会话ID。当前索引值表示与处理已结束的PE对应的路径信息上的处理顺序。通过设定当 前索引值,能够在路径上反复使用相同PE。消息表示处理数据和控制命令等分组的内容。图7表示其示例。图7是左列表示 消息的示例,右列表示对应的消息的内容的图。状态用于存储数据的处理结果等。图8表示其示例。图8是左列表示状态的示例, 右列表示对应的状态的内容的图。数据尺寸是数据部的尺寸。关于数据,除了处理数据之外,也存储PE的设定数据和控制命令的设定参数。下面,说明实施数据示例。下面示出与各个消息对应的数据部的具体示例。在头部的消息字段存储各个消 肩、o在下面的说明中,有效通道映射图表示通道对于一个PE的输入输出有效的通道 序号。在该实施例中,选择8个通道中的一个通道。各位与各个通道相对应,如果最下位即 第1位是1(00000001),则表示通道1,如果第2为是1(00000010),则表示通道2。功能序号是识别模块提供的功能的序号。例如,功能序号FN-2提供16位精度的DCT 等。以后如前面所述,也把通道ID为1的通道表述为通道1,把通道ID为2的通道表 述为通道2。(1)PE 登记请求(REG_PE)图9是分别表示PE登记请求时的信息的示例和各个信息的数据示例的表。图10 是分别表示针对登记请求的响应时的信息的示例和各个信息的数据示例的表。图11是表示与图9、图10所示的示例对应的连接示例的图。如图9所示,在进行登记请求时,不向数据部分配SWID、PEID,由控制部通知将要 登记的功能的序号和有效通道映射图。与此相对,如图10所示,在进行响应时,向数据部分配了 SWID、PEID。(2)登记 PE 询问(QUERY_PE)图12是分别表示登记PE询问的响应时的信息的示例和各个信息的数据示例的 表。在图12所示的示例中,已登记PE的数量为4。图13是表示与图12所示的示例对应的 连接示例的图。在进行登记PE的询问时,只发送存储了消息的头部。在进行响应时,如图12所示, 返回在数据部中登记的全部PE的信息。(3)路径信息设定请求(SET_PATH)图14是分别表示路径信息设定请求时的信息的示例和各个信息的数据示例的 表。由CU对每个会话确定路径信息。图14表示与会话ID为SS-10的会话对应的路径信 息的数据示例。图15是表示与图14所示的示例对应的连接示例的图。在图15中,利用箭 头表示所连接的路径。如图14所示,在进行路径信息设定请求时,各个PE的输入输出通道信息作为路径 信息被写入到数据部中。另外,针对路径信息设定请求的响应时的数据部与请求时相比没
有变化。图16是表示与图14所示的示例对应的连接示例的图,是改写图15得到的。如图 16所示,构成输入与输出一对一对应的路径。下面,参照图17说明有关上述消息示例(PE登记请求、登记PE询问、路径信息设 定请求)的⑶、PE、硬件开关之间的协议程序。图17是表示⑶、PE、开关(硬件开关)之间 的协议程序的一例的图。首先,步骤S100 步骤S180(图17中的步骤S100+)是有关REG_PE (PE登记)的程序。在步骤S100,在PE1起动后,把消息设为REG_PE(PE登记),向开关的控制部发送 分组并请求PE的登记,该分组在数据部中存储了本PE能够提供的功能、和能够在该功能的 输入输出中使用的通道映射图的信息。其中,头部的ID信息(SWID、PEID、会话ID、通道ID) 不是特别需要的。并且,当PE1、PE2在系统使用过程中事后起动或再起动时,也能够请求登记。在步骤S110,开关的控制部识别所接收到的消息,对PE1分配SWID和PEID并存储 在分组中。然后,将其与分组的功能信息一起复制到存储部中。另外,在步骤S120,把分组的状态设为0K,将分组与SWID、PEID—起回送给PE1。
在步骤S130,与PE1相同,对于PE2也发布分组作为PE登记请求。在步骤S140,开关控制部发布ID,将状态改写,然后在步骤S150,将分组回送给 PE2。在步骤S160,与PE1相同,对于⑶也发布分组作为PE登记请求。在步骤S170,开关控制部发布ID,并将状态改写,然后在步骤S180,将分组回送给 CU。下面,步骤S200 步骤S220(图17中的步骤S200+)是有关QUERY_PE (登记PE 询问)的程序。在步骤S200,⑶为了询问在开关中所登记的PE的消息而发送把消息设为QUERY_ PE的分组。在步骤S210,开关的控制部读出登记在信息部中的PE的信息,并复制到分组的数 据部中,将状态改写为0K。在步骤S220,开关的控制部向⑶回送分组作为响应。另外,步骤S300 步骤S320 (图17中的步骤S300+)是有关SET_PATH (路径信息 设定)的程序。在步骤S300,⑶向开关的控制部发送把消息设为SET_PATH、并且在数据部中写入 了路径信息的分组,请求路径信息设定。在步骤S310,开关的控制部把路径信息复制到存储部中,把分组的状态设为0K。在步骤S320,开关的控制部向⑶回送分组,作为响应。其中,在路径信息中包含与图17所图示的硬件开关之外的硬件开关连接的PE时, 将路径信息传输给该硬件开关。步骤S400 步骤S470 (图17中的步骤S400+)是有关NATIVE (PE设定参数)的 程序。首先说明步骤S400。例如,在PE提供JPEG编码处理的一部分即量化的功能的情 况下,把量化所需要的量化表称为参数。在对PE提供的功能设定固有的参数的情况下,把 消息设为NATIVE,把设定参数和成为设定对象的PE的ID信息(SWID、PEID)写入到数据部 中,并从CU发送给开关。当前索引值被设为0。在该示例中,说明对PE1设定参数的情况。 在头部中存储发送源ID信息。会话ID是由CU任意设定的。在步骤S410,在⑶识别出消息是NATIVE时,形成通过全部PE的路径,传输分组。 例如,形成⑶一PE1 — PE2 —⑶的路径。在这种情况下,对分组不做任何处理即形成至 PE1的路径,并传输分组。在步骤S420,PE1在确认了消息是NATIVE、并且数据部的参数设定对象PE的ID信 息与自身ID信息一致后,设定参数并把分组的状态设为0K。然后,把分组的头部的ID信息 改写为自身ID信息。并且,将当前索引值加1。在步骤S430,将分组回送给开关。在步骤S440,开关再次识别出消息是NATIVE,通过开关建立至下一个PE即PE2的 传输路径,并传输数据。在步骤S450,虽然消息是NATIVE,但由于数据部的参数设定对象PE的ID信息与 自身ID信息不一致,所以PE2把头部的ID信息改写为自身ID信息,将当前索引值加1,并直接传输分组。在步骤S460,开关识别出消息是NATIVE,通过开关来建立至⑶的传输路径,并传 输数据。在步骤S470,⑶接收分组作为PE设定的响应。其中,如果是与图17所示的硬件开关之外的开关连接的PE的设定信息,则传输给 该开关。下面的步骤S500 步骤S560(图17中的步骤S500+)是有关DATA (处理数据) 的程序。其中,在步骤S500,说明从⑶发布处理数据、并由PE1、PE2进行数据处理后将处 理结果回送给⑶的示例。⑶向开关发送消息是DATA、并在数据部中存储了处理数据的分 组。关于头部的ID信息,预先存储作为发送源的⑶的ID信息。并且,把当前索引值设为 0o在步骤S510,开关确认了消息是DATA后,把头部的ID信息和当前索引值设为路径 选择信息,并参照先前设定并存储在存储部中的路径信息,确定传输目的地的下一个PE,进 行开关来传输数据。在步骤S520,由PE1对数据进行处理,并将头部的ID信息改写为本PE的ID信息。 此时,把状态设为0K,将当前索引值加1。并且,向开关发送分组。在步骤S530,与步骤S510相同,开关在确认消息是DATA后,把头部的ID信息和当 前索引值设为路径选择信息,并参照先前设定并存储在存储部中的路径信息,确定传输目 的地的下一个PE (PE2),进行开关来传输数据。在步骤S540,由PE2对数据进行处理,并将头部的ID信息改写为本PE的ID信息。 此处,把状态设为0K,将当前索引值加1。并且,向开关发送分组。在步骤S550,与步骤S510相同,开关在确认消息是DATA后,把头部的ID信息和当 前索引值设为路径选择信息,并参照先前设定并存储在存储部中的路径信息,确定传输目 的地的下一个PE,进行开关来传输数据。在步骤S560,将处理结果传输给⑶。其中,在路径信息中,如果需要对与图17所示的硬件开关之外的开关连接的PE进 行开关,则将数据传输给该开关。下面,步骤S600 步骤S620(图17中的步骤S600+)是有关UNREG_PE (PE登记解 除)的程序。在步骤S600,⑶向开关发送把消息设为UNREG_PE,在数据部中存储了成为登记解 除对象的PE的ID信息的分组,发布PE登记解除请求。在步骤S610,开关从存储部中删除相应的PE的信息,在删除成功后,把分组的状 态改写为0K。在步骤S620,开关的控制部向⑶回送分组,作为响应。下面,参照图18,说明有关上述消息示例(PE登记请求、登记PE询问、路径信息设 定请求)的硬件开关的控制部中的处理。其中,图18是表示开关的控制部的处理流程的流 程图。开关的控制部在步骤S800从⑶或PE及其他⑶接收到分组后,在步骤S810读取消息,在步骤S820识别消息的内容。当在步骤S820识别出为REG_PE(PE登记)消息时,在步骤S830,向分 组中写入 SffID和PEID,在步骤S840,将PE的信息复制到存储部中。另外,在步骤S850,把分组的状 态设为0K,将分组回送给发送源。当在步骤S820识别出为UNREG_PE (ΡΕ登记解除)消息时,在步骤S860,从存储部 中删除在数据部中指定的PE的信息,把分组的状态设为0Κ,将分组回送给发送源(步骤 S850)。当在步骤S820识别出为SET_PATH(路径信息设定)消息时,在步骤S870,将路径 信息复制到存储部中,把分组的状态设为0K,将分组回送给发送源(步骤S850)。 当在步骤S820识别出为QUERY_PE (登记PE询问)消息时,在步骤S880,从存储部 中读出所登记的PE的全部信息。另外,在步骤S890,将信息写入到分组中。然后,把分组的 状态设为0K,将分组回送给发送源(步骤S850)。当在步骤S820识别出为DATA (处理数据)消息时,在步骤S900,互相参照成为路 径选择信息的分组头部的ID信息和存储部的路径信息,确定将要发送数据的下一个PE,形 成(开关)路径。然后,在步骤S910,按照所形成的路径向下一个PE传输数据。当在步骤S820识别出为NATIVE (ΡΕ设定数据)消息时,在步骤S920,互相参照成 为路径选择信息的分组头部的ID信息和确定成通过全部PE的路径信息,确定将要传输设 定信息的下一个ΡΕ,形成(开关)路径。根据NATIVE消息而形成的路径是通过全部PE各 一次的唯一路径。路径信息是自动生成的。然后,在步骤S930,按照所形成的路径向下一个PE传输数据。下面,说明硬件开关中的处理数据的开关动作。与PE设定数据相关的开关动作也 是相同的流程。首先,参照图19说明开关动作的流程的概况。图19是表示硬件开关的开关动作 的流程的流程图。在步骤S1000,开关的控制部从通信侧PE接收包含发送侧PE的ID信息(SWID、 PEID、通道ID、会话ID)和当前索引值的分组的头部。在步骤S1010,从头部中提取消息,并确认是DATA (处理数据)。在步骤S1020,从头部中提取发送侧PE的ID信息和当前索引值。在步骤S1030,根据发送侧PE的ID信息和当前索引值从存储部中检索具有下一个 索引值的接收侧PE的ID信息。在步骤S1040,确定与发送侧和接收侧PE的ID信息对应的开关部的输入输出通道。在步骤S1050,形成连接在步骤S1040确定的输入通道和输出通道的路径,并进行开关。在步骤S1060,向发送侧PE请求分组的数据部的发送。在步骤S1070,按照开关部的路径,从发送侧PE向接收侧PE传输数据分组。下面,参照图20更具体地说明开关动作的流程。图20是表示硬件开关的开关动 作的流程的流程图。在图20中,把硬件开关的控制部划分为(1)接收部、(2)检索部、(3)信息保存部、(4)路径形成部这4个子模块进行说明。信息保存部和路径形成部是成对动作的,对于开关 部的每个输出通道是独立的子模块。即,存在输出通道数量的信息保存部和路径形成部。在步骤S3000,在发送侧PE如果有待发送的数据(步骤S3000 是),则转入步骤 S3010。当在步骤S3000为否时,待机直到具有待发送的数据。在步骤S3010,在发送侧PE将头部发送给开关控制部的接收部。然后,转入步骤 S3020。在步骤S3010之后,在接收部接收到头部后(步骤S3100 是),转入步骤S3110。 当在步骤S3100为否时,待机直到接收到头部。在步骤S3110,在接收部中,从头部中提取消息字段,并确认是DATA(处理数据)。在步骤S3120,在接收部中,从头部中读出ID信息和当前索引值,并与通道检索请 求一起发送给检索部。然后,转入步骤S3130。在步骤S3120之后,在检索部中接收到通道检索请求后(步骤S3200 是),转入步 骤S3210。当在步骤S3200为否时,待机直到接收到通道检索请求。在步骤S3210,在检索部中,根据接收到的发送侧PE的ID信息和当前索引值,检索 与下一个索引值对应的接收侧PE的输入通道,并确定对应的开关部的输入输出通道。然后在步骤S3220,在检索部中,将开关部的输入通道的信息发送给与开关部的输 出通道对应的信息保存部。另外,在步骤S3230,在检索部中,向接收部发布检索完成通知,并返回步骤 S3200。在步骤S3130,在接收部中接收到检索完成通知后(步骤S3130 是),转入步骤 S3140。当在步骤S3130为否时,待机直到接收到检索完成通知。在步骤S3140,在接收部中解除通道检索请求,并返回步骤S3100,等待接收头部。在步骤S3220之后,在信息保存部中,在接收到输入通道信息后(步骤S3300 是),转入步骤S3310。当在步骤S3300为否时,待机直到接收到输入通道信息。在步骤S3310,在信息保存部中将输入通道信息按照接收到的顺序保存,并返回步 骤S3300待机。在步骤S3310之后,在路径形成部中,如果信息保存部中存在输入通道信息(步骤 S3400 是),则转入步骤S3410。如果没有输入通道信息(步骤S3400 否),则直接待机。在步骤S3410,在路径形成部中,确认有无使用当前对应的输出通道形成的路径、即输出通道是否正在使用中。如果没有使用(步骤S3410:是),则转入步骤S3420。如果 正在使用中(步骤S3410 否),则待机直到使用结束,然后转入步骤S3420。在步骤S3420,在路径形成部中,读出最早保存在信息保存部中的输入通道信息 (最老的信息),在与路径形成部对应的开关部的输出通道和与输入通道信息对应的输入 通道之间形成(开关)开关部上的路径。在步骤S3430,在路径形成部中,通过与所形成的路径成对的信号线,向发送侧PE 发送数据请求。然后,返回步骤S3400。在步骤S3430之后,在步骤S3020,在发送侧PE中在接收到数据请求后(步骤 S3020 是),转入步骤S3030。当在步骤S3020为否时,待机直到接收到数据请求。在步骤S3030,在发送侧PE中,向形成于硬件开关的开关部的路径发送分组的数据部。其中,如果在步骤S3140解除了通道检索请求,则受理下一个请求,即使数据发送 没有完成,也受理其他路径。即,能够在保留路径1的状态下形成其他路径2,并进行并行式 数据传输。并且,也可以进行无阻塞处理,即按照接收到的顺序存储头部,在步骤S3120之 后马上进行请求的解除,并等待下一次的接收。图21是表示硬件开关的安装示例的图。如图21所示,能够实现作为八入八出的开关的安装。各个输入通道能够与全部输 出通道中的任一个输出通道一对一地形成路径。在输出通道侧存在路径形成部,通过与从 通道部的输出通道到输入通道的数据处理路径成对的信号线,向输入通道发布数据请求, 进行开关。即使所连接的处理部件的连接信息在系统执行过程中发生变化,开关的控制部也 能够 将PE的输入输出通道和开关部的输入输出通道相对应地进行管理,将发送侧PE的输 入通道和接收侧PE的输入通道一对一地对应连接,并进行开关。关于数据的发送,不管同步、或不同步均可。能够在输入输出通道的一方或双方设 置寄存器等来进行同步通信,也能够设置FIFO等来进行不同步通信。下面,说明本发明的第2实施方式。在第2实施方式的硬件开关和分布式处理系统中,存在两个将发送侧PE和接收侧 PE连接的路径,并同时执行两个处理,这一点与第1实施方式的硬件开关和分布式处理系 统不同。在下面的说明中,省略有关与第1实施方式重复的结构、作用、效果的具体说明。首先,参照图22、图23说明应用。图22是表示作为第2实施方式的应用的JPEG 解码处理的流程的流程图。图23是表示作为第2实施方式的应用的图像二值化处理的流 程的流程图。在第2实施方式的分布式处理系统中,使用与硬件开关连接的PE实现(I)JPEG解 码处理和(2)图像二值化处理。JPEG 解码处理由(1-1)熵解码(FN-12), (1-2)逆量化(FN-13), (1-3) IDCT(逆 离散余弦转换)(FN-14)、(1-4)包含上取样(up-sampling)、颜色信号转换等的后处理 (FN-15)这5种功能构成。另一方面,图像二值化处理由颜色信号转换(FN-16)、亮度图像生成(FN-17)、二 值化(FN-18)这3种功能构成。括号内的FN-12 FN-18是对应的功能ID。并且,各个处 理的会话ID分别是SS-1、SS-2。下面,说明第2实施方式的系统设定。图24是表示第2实施方式的开关及PE的 通道设定的图。图24所示的开关SW-3具有通道1 通道8的各8个输入输出通道,各个通道对应 于PE的输入输出通道。PE的通道虽然能够指定1-8,但被与开关的1个通道对应起来。其 中,即使有效通道的ID在PE之间重复,也能够利用PE的ID进行识别,所以没有问题。例 如,对于PE-16,使输入通道2与SW-3的输出通道6相对应、使输出通道1与SW-3的输入通 道6相对应。图25是表示在执行JPEG解码处理时形成的路径的图像的图。图26是表示在执 行图像二值化处理时形成的路径的图像的图。在图25、图26中,也将输入输出与⑶连接而形成路径,但省略了图示。下面说明实施数据示例。(I)PE 登记(REG_PE)在系统起动后,与开关连接的8个PE进行自身功能的登记。⑶也被视为是PE的 一种。例如,在登记具有FN-H(IDCT)(图22)功能的PE时,将图27所示的分组与REG_PE 消息一起通过开关部发送给控制部。图27是分别表示PE登记请求时的分组的信息示例和 各个信息的数据示例的表。在分组的数据部中存储功能序号和有效通道的映射图。该示例的有效通道的映射 图把LSB侧记述为通道1、把MSB侧记述为通道8。在图27中,有效输入通道由于从LSB侧 起第4位是1,所以通道4作为输入通道有效。有效输出通道由于从LSB侧起第7位是1, 所以通道7作为输出通道有效。各个数据被设为1字节,数据尺寸被设为5字节。
将上述的消息发送给控制部,在PE的登记完成后,被回复图28所示的分组。图28 是分别表示针对PE登记请求的回复时的分组的信息示例和各个信息的数据示例的表。在图28所示的分组中,通过控制部分别将SWID和PEID分配为SW_3、PE-14。由 于登记成功,所以状态是0K。同样,在登记具有FN_18( 二值化)(图23)功能的PE时,发送图29所示的分组。 图29是分别表示PE登记请求时的分组的信息示例和各个信息的数据示例的表。该情况时 的有效输入通道和输出通道分别是1。结果,如图30所示,回复SWID和PEID同样被分配、 且状态被设为OK的分组。其中,图30是分别表示针对PE登记请求的回复时的分组的信息 示例和各个信息的数据示例的表。(2)登记 PE 询问(QUERY_PE)在PE的登记完成后,⑶进行登记PE的询问,作为构成路径的主要信息。此时,如 图31所示,被分配SWID和PEID,由于自身的输出通道的ID也是已知的,所以存储在头部。 不需要对路径分配会话ID和当前索引值。在询问时也不需要数据部。图31是分别表示登 记PE询问时的分组的头部的信息示例和各个信息的数据示例的表。关于询问,如图32所示,被回复8个PE的信息。图32是分别表示登记PE询问的 回复时的分组的信息示例和各个信息的数据示例的表。在图32所示的分组中,作为第4个PE(PE4),如登记的那样存储PE-14的信息。作 为第7个PE (PE7),如登记的那样存储PE-18的信息。关于其他PE,也能够获得登记时的 SWID、PEID、功能序号、有效输入输出通道映射图的信息。(3)路径信息设定(SET_PATH)CU使用询问到的PE的信息构成路径信息。下面,示出用于进行(a) JPEG解码处理 (会话ID = SS-1)和(b)图像二值化处理(会话ID = SS-2)的路径信息。(a) JPEG 解码处理(会话 ID = SS-1)图33是分别表示JPEG解码处理用的路径信息设定时的分组的信息示例和各个信 息的数据示例的表。其中,着眼于第2个PE (PE2)来进行说明。在JPEG解码处理中,PE-13 (逆量化) 是第2个进行数据处理的,但由于索引值是从0开始,所以索引值为1。PE-13在对数据进 行了逆量化的处理后,从输出通道5输出数据。输出数据被发送到输出目的地PE即PE-14的输入通道4。S卩,表示硬件开关将PE-13的输出通道5和PE-14的输入通道4互相连接。 并且,第4个PE是最后一级,由于在其后面不存在处理PE,所以把输出通道设为O。在该示 例中,路径信息中不包含与第1级和最后一级连接的⑶的信息,但也可以把规格设计为包 含CU在内来构成路径信息。(b)图像二值化处理(会话ID = SS-2)
图34是分别表示图像二值化处理用的路径信息设定时的分组的信息示例和各个 信息的数据示例的表。图像二值化处理也能够与上述的JPEG解码处理同样地构成路径,所以省略具体 说明。(4) PE 设定参数(NATIVE)在第2实施方式的分布式处理系统中,能够根据需要对PE的功能设定固有的参 数。在数据部中存储成为设定对象的PE的各种ID信息。还存储参数的数量、字节数、类别 ID。图35是分别表示参数设定时的分组的信息示例和各个信息的数据示例的表。图 36是表示与图35所示的示例对应的连接示例的图。该示例表示对PE_18( 二值化)设定二值化的阈值的情况。当设阈值的参数类别 ID为P-181,阈值的值为53时,形成图35所示的分组的结构。在进行参数设定时,如图36所示,开关自主地构成通过包括⑶在内的全部PE的 路径。参照消息和成为数据部的对象的PE的信息,各个PE进行参数的设定,或判定是否直 接传输给下一个PE。(5)处理数据(DATA)在路径信息的设定完成后,并且根据需要在参数的设定完成后,发送处理数据。图37是表示在JPEG解码处理中,从PE-13 (逆量化)向PE-14 (IDCT)发送N字节 的图像数据时的分组结构的图。在头部存储发送源的PE即PE-13的信息。PE-13与SW-3 连接,关于会话SS-I的处理,从输出通道5输出数据。由于当前索引值是2、状态为0K,所 以得知在会话SS-I中完成了第2个处理。关于处理数据的分组,每当各个PE中的处理完 成时就更新状态。图38与图37相同,是表示从PE_17(亮度图像生成)向PE-18 ( 二值化)发送M 字节的图像数据时的分组结构的图。图37、图38所示的分组的输入输出通道是分别独立的,所以能够同时传输数据。 当控制部在分别互不相关的定时接收了上述分组时,分析头部,并按照图20所示的具体流 程构成路径。在通道内部,将PE的输入输出通道的ID和硬件开关的开关部的输入输出通 道的ID —对一对应起来管理。例如,在处理数据分组按照PE-13、PE-17的顺序到达时,首先,分析来自PE-13的 处理分组,从路径信息中检索下一个PE的输入通道。结果,确定将与PE-13的输出通道5 和PE-14的输入通道4相对应的开关部的输入通道5和输出通道4连接。在确定了待连接 的开关部的通道、并解除了通道检索请求后,即可分析来自PE-17的处理数据分组,而不需 等待路径的形成和数据的传输。即,如图39所示,能够同时实现从PE-13向PE-14的数据 传输、和从PE-17向PE-18的数据传输。图39是表示针对不同的PE形成多个路径时的连接示例的图。另一方面,图40是表示针对共同的PE形成多个路径时的连接示例的图。如图40 所示,在多个路径共用同一个PE的情况下,先形成从PE-25到PE-24的路径,在来自PE-27 的处理数据分组到达的情况下,在确认从PE-25向PE-24的数据传输完成后,形成从PE-27 向PE-24的数据传输路径,并进行开关。但是,如在图20的具体流程中说明的那样,在输出 通道侧存在按照到达顺序来存储保存输入通道的信息的信息保存部,接收部能够受理下一 个路径形成的请求,而不需等待路径形成。如上所述,本发明的硬件开关及分布式处理系统适合于管理并控制与开关连接的 处理部件,同时互相参照与应用处理相对应的各个数据的识别符和路径信息,由此形成最 适合于应用处理的处理部件之间的处理路径的硬件开关及分布式 处理系统。本发明的硬件开关及分布式处理系统管理并控制与开关连接的处理部件,同时互 相参照与应用处理相对应的各个数据的识别符和路径信息,由此获得能够形成最适合于应 用处理的处理部件之间的处理路径的效果。
权利要求
一种硬件开关,其连接了多个处理部件,其中,对于从所述多个处理部件中选择的发送侧处理部件、以及所述发送侧处理部件之外的接收侧处理部件,所述硬件开关将从所述发送侧处理部件具有的输出中选择的一个输出、与从所述接收侧处理部件具有的输入中选择的一个输入互相连接,由此选择性地切换所述多个处理部件间的路径,并对所述发送侧处理部件的输出和所述接收侧处理部件具有的输入中的至少一方进行多重连接。
2.根据权利要求1所述的硬件开关,其中,所述硬件开关进行互相连接的所述发送侧 处理部件与所述接收侧处理部件之间的数据流处理。
3.根据权利要求1所述的硬件开关,其中,所述硬件开关具有开关部,其具有连接所 述多个处理部件的输出及输入的多个通道;和控制部,其控制所述开关部。
4.根据权利要求3所述的硬件开关,其中,所述控制部识别从所述发送侧处理部件的 输出接收到的 数据是处理数据还是控制命令。
5.根据权利要求4所述的硬件开关,其中,所述控制部通过硬件逻辑来识别从所述发 送侧处理部件的输出接收到的数据是处理数据还是控制命令。
6.根据权利要求4所述的硬件开关,其中,在所述数据是控制命令的情况下,所述控制 部按照所述控制命令来设定路径信息。
7.根据权利要求4所述的硬件开关,其中,在所述数据是处理数据的情况下,所述控制 部按照与处理数据相对应的路径选择信息和路径信息,确定下一个发送目的地。
8.根据权利要求7所述的硬件开关,其中,在所述数据是处理数据的情况下,所述控制 部按照与处理数据相对应的路径选择信息和路径信息,进行所述开关部的路径的切换。
9.根据权利要求3所述的硬件开关,其中,所述控制部识别从所述发送侧处理部件的 输出接收到的数据是针对所述接收侧处理部件的哪个输入通道的数据。
10.根据权利要求7所述的硬件开关,其中,所述路径选择信息包含与所述发送侧处理 部件相关的信息。
11.根据权利要求10所述的硬件开关,其中,与所述发送侧处理部件相关的信息包含 连接了所述发送侧处理部件的所述硬件开关的ID信息、所述发送侧处理部件自身的ID信 息以及所述发送侧处理部件所连接的通道的ID信息中的至少任一项,作为所述发送侧处 理部件的ID信息。
12.根据权利要求7所述的硬件开关,其中,所述路径选择信息包含所述数据处理的会 话的ID。
13.根据权利要求4所述的硬件开关,其中,在所述数据是控制命令的情况下,所述控 制部按照所述控制命令来进行所述多个处理部件的登记及登记的解除、处理部件的登记信 息公开、或者处理部件设定数据的传输。
14.根据权利要求3所述的硬件开关,其中,所述控制部识别所述开关部的输入输出通 道、与连接在所述开关部上的所述多个处理部件的各个输入输出通道之间的连接关系。
15.根据权利要求14所述的硬件开关,其中,即使在系统执行过程中所述连接关系动 态变化,所述控制部也识别所述连接关系。
16.根据权利要求1所述的硬件开关,其中,在所述硬件开关中,同时存在多个所述路径。
17.根据权利要求1所述的硬件开关,其中,当在发送侧处理部件和接收侧处理部件之 间进行通信时,也能够执行所述路径的切换及新路径的追加。
18.根据权利要求1所述的硬件开关,其中,与所述开关部连接的处理部件只连接输出 或输入中的任一方。
19.根据权利要求1所述的硬件开关,其中,存在多个包括与所述开关部连接的处理部 件的会话。
20.根据权利要求19所述的硬件开关,其中,存在多个包括与所述开关部连接的处理 部件的路径。
21.根据权利要求1所述的硬件开关,其中,所述硬件开关向另外的硬件开关传输分组。
22.—种分布式处理系统,该分布式处理系统包括 多个处理部件;和连接了所述多个处理部件的硬件开关,其中,所述硬件开关针对从所述多个处理部件中选择的发送侧处理部件、和所述发送 侧处理部件之外的接收侧处理部件,将从所述发送侧处理部件具有的输出中选择的一个输 出、与从所述接收侧处理部件具有的输入中选择的一个输入互相连接,由此选择性地切换 所述多个处理部件间的路径,并对所述发送侧处理部件的输出和所述接收侧处理部件具有 的输入中的至少一方进行多重连接。
23.根据权利要求22所述的分布式处理系统,其中,所述分布式处理系统进行互相连 接的所述发送侧处理部件和所述接收侧处理部件之间的数据流处理。
全文摘要
本发明提供一种硬件开关和分布式处理系统。一种连接了多个处理部件的硬件开关,针对从多个处理部件中选择的发送侧处理部件、和发送侧处理部件之外的另外的接收侧处理部件,将从发送侧处理部件具有的输出中选择的一个输出、和从接收侧处理部件具有的输入中选择的一个输入互相连接,由此选择性地切换多个处理部件间的路径,并将发送侧处理部件的输出和接收侧处理部件具有的输入中的至少一方进行多个连接。
文档编号H04L12/56GK101840392SQ201010135489
公开日2010年9月22日 申请日期2010年3月17日 优先权日2009年3月18日
发明者中富高之, 久保允则, 篠崎新 申请人:奥林巴斯株式会社