CN103441915A - Information processing apparatus and operation method thereof - Google Patents
Information processing apparatus and operation method thereof Download PDFInfo
- Publication number
- CN103441915A CN103441915A CN2013104092559A CN201310409255A CN103441915A CN 103441915 A CN103441915 A CN 103441915A CN 2013104092559 A CN2013104092559 A CN 2013104092559A CN 201310409255 A CN201310409255 A CN 201310409255A CN 103441915 A CN103441915 A CN 103441915A
- Authority
- CN
- China
- Prior art keywords
- data
- bag
- packet
- module
- received
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17337—Direct connection machines, e.g. completely connected computers, point to point communication networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/72—Routing based on the source address
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Multi Processors (AREA)
- Small-Scale Networks (AREA)
- Labeling Devices (AREA)
Abstract
本发明涉及信息处理装置及其操作方法。信息处理装置包含多个模块,所述多个模块与环形总线连接,并且每一个模块从一个相邻模块接收存储数据的包并且预定的处理之后将该包传送到另一个相邻模块。至少一个模块包含:识别单元,用于识别从所述一个相邻模块接收的包以确定所接收的包是否是要被自身模块处理的包;接收器,用于如果所述识别单元确定所接收的包是要被自身模块处理的包,则接收要被处理的数据;处理器,用于处理所接收的数据;设定单元,用于如果所述处理器没有准备好处理数据,则在所接收的包中设定用于指示处理器中的至少一个没有准备好处理所接收的包中的数据的保留标记;以及传送器,用于将具有所述保留标记的包传送到另一个模块。
The present invention relates to an information processing device and an operating method thereof. The information processing apparatus includes a plurality of modules connected to the ring bus, and each module receives a packet storing data from an adjacent module and transmits the packet to another adjacent module after predetermined processing. At least one module includes: an identification unit for identifying a packet received from the one adjacent module to determine whether the received packet is a packet to be processed by the own module; a receiver for if the identification unit determines that the received The package is a package to be processed by its own module, then receive the data to be processed; the processor is used to process the received data; the setting unit is used to if the processor is not ready to process data, then in the A reservation flag is set in the received packet to indicate that at least one of the processors is not ready to process data in the received packet; and a transmitter is configured to transmit the packet with the reservation flag to another module.
Description
本申请是申请日为2010年2月17日、国际申请号为PCT/JP2010/052805、国家申请号为201080008604.0、发明名称为“信息处理装置及其操作方法、计算机程序和存储介质”的专利申请的分案申请。This application is a patent application with an application date of February 17, 2010, an international application number of PCT/JP2010/052805, a national application number of 201080008604.0, and an invention title of "information processing device and its operating method, computer program and storage medium" divisional application.
技术领域technical field
本发明涉及信息处理装置及其操作方法、计算机程序和存储介质。The present invention relates to an information processing device, an operating method thereof, a computer program, and a storage medium.
背景技术Background technique
各种环形通信网络(电路网络)已被提出并且盛行。例如,LAN(局域网)规范包括所谓的令牌环(参见ISO/IEC8802-5:1998)。Various ring communication networks (circuit networks) have been proposed and prevailed. For example, the LAN (Local Area Network) specification includes the so-called Token Ring (see ISO/IEC8802-5:1998).
以下将简要描述令牌环系统中的数据传输。想要传送数据的节点获取没有被任何节点占据并且正在环形总线上流传(go around)的被称为自由令牌的令牌。获取了自由令牌的节点将目的地标识符和处理数据复制到该令牌,并且将该令牌输出到环形总线上以将其传送到目的地模块。如上所述,在令牌环系统中,被称为令牌的帧从一个节点依次被传送到另一个节点,并然后被传送到下一个节点(这些节点被部署于环形总线上),由此将该帧传送到目标端。Data transmission in the Token Ring system will be briefly described below. Nodes that want to transmit data acquire tokens called free tokens that are not occupied by any node and are going around on the ring bus. A node that has acquired a free token copies the destination identifier and processing data to the token, and outputs the token on the ring bus to transmit it to the destination module. As mentioned above, in a token ring system, frames called tokens are sequentially transmitted from one node to another node, and then to the next node (these nodes are deployed on the ring bus), thus Pass the frame to the destination.
另一方面,当接收节点接收到以自身节点作为目的地的令牌时,该接收节点复制处理数据并且将所接收的令牌再次投放到环形总线上,所述接收的令牌是用指示接收完成的接收完成标记被设定的。完成该投放,以将成功的数据传输通知给传送源节点,并且,如果返回的是没有设定有接收完成标记的令牌,那么传送源节点重新传送同样的令牌。以这种方式,接收节点在令牌中设定接收完成标记,并且使该令牌返回传送源节点,由此实现数据传输。On the other hand, when a receiving node receives a token destined for its own node, the receiving node duplicates the processing data and puts the received token on the ring bus again, said received token indicating the received Completed receive complete flag is set. This cast is completed to notify the transfer source node of successful data transfer, and, if a token with no reception completion flag set is returned, the transfer source node retransmits the same token. In this way, the receiving node sets the reception completion flag in the token, and returns the token to the transmission source node, thereby realizing data transmission.
发明内容Contents of the invention
当其中执行数据处理的多个模块与环形总线连接的信息处理系统采用上述的令牌环总线系统时,不管接收是成功还是失败,令牌都必须返回到传送源。即,即使当接收成功时,也不能在传送源释放返回的令牌之前将数据复制到令牌,从而导致效率低下。When an information processing system in which a plurality of modules performing data processing are connected to a ring bus adopts the token ring bus system described above, the token must be returned to the transmission source regardless of success or failure of reception. That is, even when reception is successful, data cannot be copied to the token before the transfer source releases the returned token, resulting in inefficiency.
本发明在其中执行数据处理的多个模块与环形总线连接的信息处理系统中实现高效的包(packet)传送。The present invention realizes efficient packet transfer in an information processing system in which a plurality of modules performing data processing are connected to a ring bus.
本发明的实施例的一个方面涉及信息处理装置,所述信息处理装置包含多个模块,所述多个模块与环形总线连接,并且所述多个模块中的每一个被配置为从一个相邻模块接收存储了数据的包并且在预定的处理之后将该包传送给另一个相邻模块,其特征在于,每个模块包含:识别部件,用于识别从另一个模块接收的包以确定所接收的包是否是要被自身模块处理的包;接收部件,用于当所述识别部件确定所接收的包是要被自身模块处理的包时从该包提取要被处理的数据;处理部件,用于处理所提取的数据;修改部件,用于当所述处理部件处理数据时将所接收的包中的指示数据的有效性的第一标记设定为具有指示所述数据无效的值;以及传送部件,用于将该包传送到另一模块。An aspect of an embodiment of the present invention relates to an information processing device, the information processing device includes a plurality of modules, the plurality of modules are connected to a ring bus, and each of the plurality of modules is configured to transmit data from an adjacent A module receives a packet storing data and transmits the packet to another adjacent module after predetermined processing, characterized in that each module contains: identification means for identifying a packet received from another module to determine the received Whether the package is a package to be processed by its own module; the receiving unit is used to extract data to be processed from the package when the identification unit determines that the received package is a package to be processed by its own module; the processing unit uses for processing the extracted data; modifying means for setting a first flag indicating the validity of the data in the received packet to have a value indicating that the data is invalid when said processing means processes the data; and transmitting Part to pass the package to another module.
(参照附图)阅读示例性实施例的以下描述,本发明的其它特征将变得清晰。Other features of the present invention will become apparent upon reading the following description of exemplary embodiments (with reference to the accompanying drawings).
附图说明Description of drawings
图1是表示数据处理系统的布置的例子的框图;Figure 1 is a block diagram representing an example of the arrangement of a data processing system;
图2是表示数据处理器104的布置的例子的框图;FIG. 2 is a block diagram showing an example of the arrangement of the
图3是表示模块的布置的例子的框图;FIG. 3 is a block diagram representing an example of the arrangement of modules;
图4是表示包的格式的例子的示图;FIG. 4 is a diagram representing an example of a format of a packet;
图5是表示处理数据传送单元303和接收单元311中的处理的例子的流程图;FIG. 5 is a flowchart showing an example of processing in the processing
图6是表示处理数据接收单元305和传送单元312中的处理的例子的流程图;FIG. 6 is a flowchart showing an example of processing in the processing
图7是表示模块的布置的例子的框图;以及FIG. 7 is a block diagram representing an example of the arrangement of modules; and
图8是表示处理数据传送单元303和接收单元311中的处理的例子的流程图。FIG. 8 is a flowchart showing an example of processing in the processing
具体实施方式Detailed ways
以下将描述本发明的实施例。本实施例涉及其中执行数据处理的多个模块与环形总线连接的数据处理系统。当然,下面要描述的实施例提供便于本领域技术人员实现本发明的公开,并且仅是包含于由权利要求的范围划定的本发明的技术范围中的一些实施例。因此,本领域技术人员明白,即使对于没有在本发明的说明书中直接描述的实施例,只要它们具有共同的技术思想,那么它们也包含于本发明的技术范围中。Embodiments of the present invention will be described below. The present embodiment relates to a data processing system in which a plurality of modules performing data processing are connected to a ring bus. Of course, the embodiments to be described below provide a disclosure that facilitates those skilled in the art to realize the present invention, and are only some embodiments included in the technical scope of the present invention defined by the scope of the claims. Therefore, those skilled in the art understand that even for embodiments not directly described in the specification of the present invention, they are included in the technical scope of the present invention as long as they have a common technical idea.
注意,为了方便起见,将描述多个实施例。但是,本领域技术人员容易理解的是,不仅这些实施例可形成独立的发明,而且多个实施例也可根据需要被组合来形成发明。Note that a number of embodiments will be described for convenience. However, it is easily understood by those skilled in the art that not only these embodiments can form independent inventions, but also a plurality of embodiments can be combined as necessary to form inventions.
以下将参照图1来描述根据与本发明的一个方面对应的实施例的信息处理系统的布置。CPU101是具有控制数据处理系统的总体操作的功能的控制单元。RAM102是存储要被CPU101处理的输入数据、处理之后的输出数据和对于数据处理器104的预设参数数据等的可读/可写存储器。ROM103是可保持CPU101的处理序列和诸如预设参数的常数等的可读存储器。数据处理器104包含本发明所公开的布置和模块。各模块与环形总线连接。可编程自定义(custom)IC芯片可实现数据处理器104。所述芯片包含例如ASIC(专用集成电路)或FPGA(现场可编程门阵列)。The arrangement of an information processing system according to an embodiment corresponding to an aspect of the present invention will be described below with reference to FIG. 1 . The
以下将参照图2来描述数据处理器104的布置。数据处理器104包含多个模块201~204。环形总线205被用于在模块之间传送包。模块201~204与环形总线205连接。各模块被配置为从一个相邻模块接收数据包,并且在预定的处理之后将该数据包传送给另一个相邻模块。通过模块交换的包在环形总线上沿一个方向移动。在以下的描述中,数据(或包)在其上沿单方向流传的环状总线将被简称为环形总线。The arrangement of the
输入/输出缓冲器206被用于输入/输出数据。本实施例的模块201~204中的每一个具有被用于识别自身模块的数据处理器识别信息,并且为了简化起见,在图2中被标记为“ID”。在对于本发明的实施例的以下描述中,该信息也被描述为“ID”。注意,ID=1的模块201与输入/输出缓冲器206连接以管理输入和输出数据。The input/
以下将参照图3来描述数据处理器中的各模块201~204的布置。参照图3,包识别单元301检查是否要取得来自另一模块的包。当包识别单元301接收到保存了与自己等待的ID匹配的传送源ID的包时,它将该包输出到包接收单元302。The arrangement of the
包接收单元302执行包接收处理。处理数据传送单元303将处理数据传送到处理单元304。处理单元304执行实际的数据处理。处理数据接收单元305从处理单元304接收处理后的数据。包产生单元306基于从处理单元304接收的处理后的数据和来自包修改单元308的输出而产生包。The
包传送单元307将包输出到环形总线上。包修改单元308根据来自包接收单元302的指令而修改将在后面参照图4描述的包的数据有效标记401和保留(stall)标记404的值。选择器309基于来自包传送单元307的指令而选择来自包传送单元307的包和来自包修改单元308的包中的一个。如果没有来自包传送单元307的指令,那么选择器309选择从包修改单元308输出的包并且输出该包。缓冲器310被用于接连地(one after another)传送包。The
在上面的布置中,模块201、202、203和204中的每一个包含处理单元304和通信单元313。通信单元313包含处理数据传送单元303、处理数据接收单元305、选择器309、缓冲器310、接收单元311和传送单元312。此外,接收单元311包含包识别单元301、包接收单元302和包修改单元308。此外,传送单元312包含包产生单元306和包传送单元307。In the above arrangement, each of the
在以下的描述中,本实施例将解释处理单元304通过处理一个输入数据而输出一个输出数据的情况。在这种情况下,假定从输入数据被输入到处理单元304到获得输出数据为止不能输入另一输入数据。出于该原因,包接收单元302必须根据处理单元304的状态来暂停包的接收。In the following description, this embodiment will explain the case where the
图4表示在模块之间交换数据所需的包格式。数据有效标记401是用于检查包中的数据的有效性的第一标记信息。例如,如果数据有效标记401是“1”,那么数据是有效的;如果数据有效标记401是“0”,那么数据是无效的。Figure 4 shows the packet format required to exchange data between modules. The data validity flag 401 is first flag information for checking the validity of data in the packet. For example, if the data valid flag 401 is "1", then the data is valid; if the data valid flag 401 is "0", then the data is invalid.
传送源ID402是存储传送包的模块的标识符的传送源的标识符。数据存储字段403存储处理数据主体。保留标记404是当模块暂停包处理时被设定为“1”的第二标记信息。即,如果保留标记404是“1”,那么它指示包处理被暂停。注意,例如,当某模块接收到数据但由于处理单元304繁忙而使得该模块不能处理所述数据时,处理被暂停。保留标记404作为初始值被设定为“0”。即,当保留标记具有初始值时,这意味着要接收该包的环形总线上的模块还没有处理相应的包。The transfer source ID 402 is the identifier of the transfer source storing the module identifier of the transfer package. The data storage field 403 stores the processing data body. The
各模块可设定等待包ID。当等待包ID与流过环形总线的包的传送源ID402匹配时,包识别单元301取得该包。例如,以下将考虑以模块1、模块4、模块2、模块3和模块1的次序配置数据路径的情况。在这种情况下,模块1的等待包ID被设定为“3”,模块2的等待包ID被设定为“4”,模块3的等待包ID被设定为“2”,模块4的等待包ID被设定为“1”。通过以这种方式分别设定模块的等待包ID,可以形成数据路径。假定对于各模块事先设定等待包ID,并且其信息被存储于包识别单元301中。Each module can set the waiting packet ID. When the waiting packet ID matches the transfer source ID 402 of a packet flowing through the ring bus, the
以下将描述通信单元313中的数据接收方法。例如,以下将考虑图2中的从ID=1的模块1到ID=3的模块3执行数据传送的情况。此时,模块3的包识别单元301获取数据有效标记401有效的包,并且将该包的传送源ID402与自己的等待包ID相比较。如果这两个ID彼此相等,那么包识别单元301将该包传送到包接收单元302。The data receiving method in the
处理数据传送单元303确定处理单元304是否准备好执行处理。如果处理数据传送单元303确定处理单元304已准备好,那么包接收单元302从所获取的包中提取要被处理的数据,并且将要被处理的数据传送到处理数据传送单元303。在这种情况下,由于该包已没有用,因此包接收单元302指令包修改单元308将包的数据有效标记401设定为无效(0)。The processing
另一方面,如果处理数据传送单元303确定处理单元304繁忙,那么包接收单元302指令包修改单元308将包的保留标记404设定为“1”。包修改单元308根据来自包接收单元302的指令来修改数据有效标记401或保留标记404,并且将该包传送到选择器309。选择器309选择从包修改单元308输入的包和从包传送单元307输入的包中的一个,并且将其传送到缓冲器310。On the other hand, if the processing
以下将参照图5来描述处理数据传送单元303和接收单元311中的处理。在步骤S501中,包识别单元301从位于前一级的模块获取包。包识别单元301在步骤S502中检查包的数据有效标记401是否有效(1)。如果数据有效标记401有效(在步骤S502中为“是”),那么处理前进到步骤S503。另一方面,如果数据有效标记401无效(在步骤S502中为“否”),那么该处理结束。Processing in the processing
包识别单元301在步骤S503中检查包的传送源ID402是否等于在模块中设定的等待包ID。如果确定两个ID彼此相等(在步骤S503中为“是”),那么处理前进到步骤S504。另一方面,如果确定两个ID彼此不相等(在步骤S503中为“否”),那么该处理结束。The
处理数据传送单元303在步骤S504中检查处理单元304是否准备好交换数据。如果确定处理单元304准备好交换数据(在步骤S504中为“是”),那么处理前进到步骤S505。另一方面,如果确定处理单元304没有准备好接收数据(在步骤S504中为“否”),那么处理前进到步骤S506。The processing
在步骤S505中,包接收单元302从包中提取处理数据,并且将其传送到处理数据传送单元303,处理数据传送单元303将数据转送到处理单元304。处理然后前进到步骤S507。在步骤S506中,包接收单元302指令包修改单元308将包的保留标记404设定为“1”。然后,保留标记404从初始值(0)被修改为(1)。在步骤S507中,包接收单元302指令包修改单元308将包的数据有效标记401设定为“0”。In step S505 , the
以下将描述处理数据接收单元305和传送单元312中的数据传送序列。例如,以下将解释图2中的从ID=1的模块1到ID=3的模块3执行数据传送的情况。此时,模块1的包产生单元306从包修改单元308获取其中数据有效标记401无效(0)的包。The data transfer sequence in the processing
然后,包产生单元306在该包的数据存储字段303中存储从处理数据接收单元305获得的传送数据,并且在传送源ID402中存储作为模块1的ID的“1”。此外,包产生单元306将保留标记404设定为初始值(0),并且将数据有效标记401设定为“1”。然后,包产生单元306将该包传送到包传送单元307。包传送单元307将从包产生单元306获取的包输出到选择器309。此时,包传送单元307同时将选择信号输出到选择器309以选择其输出。Then, the
包产生单元306监视包的保留标记404。当由自己输出的包在没有将保留标记设定为“1”的情况下返回时,数据有效标记401被设定为“0”以避免没有接收模块的包占据环形总线。相反,当保留标记404被设定为“1”时,该包被原样输出到环形总线上。The
以下将参照图6来描述处理数据接收单元305和传送单元312中的处理。参照图6,包产生单元306在步骤S601中获取来自接收单元311的包修改单元308的包。包产生单元306在步骤S602中检查所接收包的数据有效标记401是否为“0”。如果确定数据有效标记401不是“0”(在步骤S602中为“否”),那么处理前进到步骤S603。另一方面,如果确定数据有效标记401为“0”(在步骤S602中为“是”),那么处理前进到步骤S606。Processing in the processing
包产生单元306在步骤S603中检查包的保留标记404是否为“1”。如果确定保留标记404为“1”(在步骤S603中为“是”),那么处理结束。在这种情况下,来自包修改单元308的包经由选择器309和缓冲器310被传送到下一个模块。另一方面,如果确定保留标记404不是“1”,即,它仍具有初始值(在步骤S603中为“否”),那么处理前进到步骤S604。The
包产生单元306在步骤S604中检查包的传送源ID402是否等于自身模块的ID。如果确定这两个ID彼此相等(在步骤S604中为“是”),那么处理前进到步骤S605。在步骤S605中,包产生单元306将包的数据有效标记401设定为“0”,并且处理然后跳到步骤S611。另一方面,如果确定这两个ID彼此不相等(在步骤S604中为“否”),那么该处理结束。在这种情况下,同样,来自包修改单元308的包经由选择器309和缓冲器310被传送到下一个模块。The
包产生单元306在步骤S606中检查是否从处理单元304获得有效的处理数据。如果获得了有效的处理数据(在步骤S606中为“是”),那么处理前进到步骤S607。另一方面,如果没有获得有效的处理数据(在步骤S606中为“否”),那么该处理结束。The
在步骤S607中,包产生单元306将从处理单元304获取的处理数据复制到包的数据存储字段403。在步骤S608中,包产生单元306将包的数据有效标记401设定为“1”。此外,在步骤S609中,包产生单元306将包的保留标记404设定为初始值(0)。此外,在步骤S610中,包产生单元306在包的传送源ID402中设定自身ID。在步骤S611中,包产生单元306指令选择器309优先选择来自包传送单元307的输入。In step S607, the
如上所述,根据本实施例,当接收模块可处理所接收包的数据时,它使包无效;当接收模块不能处理数据时,它将包的保留标记404设定为“1”并且将该包重新投放到环形总线上。接收模块可管理要被接收的包,以防止对于传送模块的重新传送请求包被输出到环形总线上。由于传送模块监视输出包的保留标记404并且根据需要使包无效,因此可以防止不必要的包在环形总线上流传,由此提高模块之间的数据传送效率。As described above, according to this embodiment, when the receiving module can process the data of the received packet, it invalidates the packet; when the receiving module cannot process the data, it sets the
在本实施例中,包的目的地模块的数量是1。但是,目的地的数量不限于1,数据路径可以分岔(branch)。例如,在图2中,当模块3和4等待来自模块2的输出包时,就是这种情况。即,模块2之后的数据路径分岔。In this embodiment, the number of destination modules of a packet is one. However, the number of destinations is not limited to 1, and the data path may branch. This is the case, for example, in Figure 2 when
在以上的实施例中,当数据被成功地传送到处理单元304时,所接收的包被无效化。但是,如果由于模块3成功地接收到包而类似地使包无效化,那么模块4不能再接收包。In the above embodiments, when the data is successfully transmitted to the
由此,根据与本发明的另一个方面对应的实施例的各模块的特征在于,还包括包无效化处理指令寄存器,所述包无效化处理指令寄存器可指定当数据被成功传送到处理单元304时是否允许包的无效化。Therefore, each module according to the embodiment corresponding to another aspect of the present invention is characterized in that it further includes a packet invalidation processing instruction register, and the packet invalidation processing instruction register can specify when the data is successfully transmitted to the
图7是表示根据本实施例的模块的布置的例子的框图。图7所示的模块框图基本上与图3所示的相同。但是,与图3不同的是,接收单元311还包含无效化指令寄存器701。在本实施例中,当该寄存器的预设值为“1”时,允许通过在处理单元304成功接收时设定数据有效标记401的值来使接收的包无效化。另一方面,如果预设值为“0”,那么,不允许通过在处理单元304成功接收时设定数据有效标记401的值来使接收的包无效化。但是,包无效化处理指令寄存器的设定规范不限于以上情况。FIG. 7 is a block diagram showing an example of the arrangement of modules according to the present embodiment. The block diagram of the modules shown in FIG. 7 is basically the same as that shown in FIG. 3 . However, different from FIG. 3 , the receiving
无效化指令寄存器701被设定如下。当假定数据路径不分岔时,所有模块的包无效化处理指令寄存器被设定为“1”。在这种情况下,在成功接收时,包被无效化。The
另一方面,当多个模块等待来自某模块的输出包时,先规定输出所述多个模块等待的包的传送源模块,并且,类似地规定等待该包的多个目的地模块。On the other hand, when a plurality of modules wait for an output packet from a certain module, a transmission source module that outputs the packet that the plurality of modules waits for is first specified, and, similarly, a plurality of destination modules that wait for the packet are specified.
在所述多个目的地模块中,规定被部署在沿环形总线最远离传送源模块的位置处的模块,并且,该模块的无效化指令寄存器701被设定为“1”。除该模块以外的模块的无效化指令寄存器701被设定为“0”。Among the plurality of destination modules, a module disposed at a position farthest from the transfer source module along the ring bus is specified, and the
例如,当如图2中的模块3和4等待来自模块2的输出包的情况那样,数据路径在一个位置处分岔时,沿正向(forward)方向从作为传送源模块的模块2追踪环形总线。在等待包的模块3和模块4中,模块4被部署在最远离模块2的位置处。由此,模块3的无效化指令寄存器701被设定为“0”,并且,模块4的无效化指令寄存器701被设定为“1”。For example, when the data path is branched at one position as in the case of
以下将参照图8来描述本实施例中的处理数据传送单元303和接收单元311中的处理。参照图8,包识别单元301在步骤S801中从位于前一级中的模块获取包。包识别单元301在步骤S802中检查包的数据有效标记401是否为“1”。如果数据有效标记401是“1”(在步骤S802中为“是”),那么处理前进到步骤S803。另一方面,如果数据有效标记401不为“1”(在步骤S802中为“否”),那么该处理结束。Processing in the processing
包识别单元301在步骤S803中检查包的传送源ID402是否等于预设的等待包ID。如果确定这两个ID彼此相等(在步骤S803中为“是”),那么处理前进到步骤S804。另一方面,如果确定这两个ID彼此不相等(在步骤S803中为“否”),那么该处理结束。The
处理数据传送单元303在步骤S804中检查处理单元304是否准备好交换数据。如果确定处理单元304准备好交换数据(在步骤S804中为“是”),那么处理前进到步骤S805。另一方面,如果确定处理单元304没有准备好交换数据(在步骤S804中为“否”),那么处理前进到步骤S806。The processing
在步骤S805中,包接收单元302从包中提取处理数据,并且将其传送到处理数据传送单元303,处理数据传送单元303将该数据转送到处理单元304。然后,处理前进到步骤S807。在步骤S806中,包接收单元302指令包修改单元308将包的保留标记404设定为“1”。In step S805 , the
另一方面,包接收单元302在步骤S807中检查无效化指令寄存器701的预设值是否为“1”。如果确定预设值为“1”(在步骤S807中为“是”),那么处理前进到步骤S808。另一方面,如果确定预设值不为“1”(在步骤S807中为“否”),那么该处理结束。在步骤S808中,包接收单元302指令包修改单元308将数据有效标记401设定为“0”。On the other hand, the
如上所述,即使当数据路径分岔时,由于模块包含根据需要被设定的无效化指令寄存器701,因此包可被传送到所有的多个等待模块。As described above, even when the data path is branched, since the module includes the
其它的实施例other embodiments
也可通过读出并执行记录在存储设备上的程序以执行上述实施例的功能的系统或装置的计算机(或诸如CPU或MPU的设备),以及通过由系统或装置的计算机通过例如读出并执行记录在存储设备上的程序以执行上述实施例的功能来执行其各个步骤的方法,实现本发明的各方面。出于这种目的,例如经由网络或从用作存储设备的各种类型的记录介质(例如,计算机可读存储介质)向计算机提供程序。It is also possible to perform the functions of the above-described embodiments by reading and executing a program recorded on a storage device by a computer (or a device such as a CPU or an MPU) of a system or an apparatus, and by reading and executing a program by a computer of a system or an apparatus by, for example, reading and A method of executing a program recorded on a storage device to execute the functions of the above-described embodiments to perform the respective steps thereof realizes aspects of the present invention. For this purpose, the program is supplied to the computer, for example, via a network or from various types of recording media (for example, computer-readable storage media) serving as storage devices.
虽然已参照示例性实施例描述了本发明,但应理解,本发明不限于所公开的示例性实施例。所附权利要求的范围应被赋予最宽的解释以包含所有这样的变更方式以及等同的结构和功能。While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the appended claims should be accorded the broadest interpretation to encompass all such modifications and equivalent structures and functions.
本申请要求在2009年2月25日提交的日本专利申请No.2009-043148的权益,在此以引用方式将其全部内容并入本文。This application claims the benefit of Japanese Patent Application No. 2009-043148 filed on February 25, 2009, the entire contents of which are hereby incorporated by reference.
Claims (8)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009043148A JP5014362B2 (en) | 2009-02-25 | 2009-02-25 | Information processing apparatus, control method therefor, and computer program |
| JP2009-043148 | 2009-02-25 | ||
| CN201080008604.0A CN102326158B (en) | 2009-02-25 | 2010-02-17 | Information processing device and operating method thereof |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201080008604.0A Division CN102326158B (en) | 2009-02-25 | 2010-02-17 | Information processing device and operating method thereof |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN103441915A true CN103441915A (en) | 2013-12-11 |
| CN103441915B CN103441915B (en) | 2017-03-01 |
Family
ID=42232761
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201310409255.9A Expired - Fee Related CN103441915B (en) | 2009-02-25 | 2010-02-17 | Information processor and its operational approach |
| CN201080008604.0A Expired - Fee Related CN102326158B (en) | 2009-02-25 | 2010-02-17 | Information processing device and operating method thereof |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201080008604.0A Expired - Fee Related CN102326158B (en) | 2009-02-25 | 2010-02-17 | Information processing device and operating method thereof |
Country Status (6)
| Country | Link |
|---|---|
| US (2) | US8761013B2 (en) |
| EP (2) | EP3037978A3 (en) |
| JP (1) | JP5014362B2 (en) |
| KR (1) | KR101262751B1 (en) |
| CN (2) | CN103441915B (en) |
| WO (1) | WO2010098330A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107819969A (en) * | 2016-09-13 | 2018-03-20 | 佳能株式会社 | Information processor and semiconductor integrated circuit including ring bus system |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5014362B2 (en) * | 2009-02-25 | 2012-08-29 | キヤノン株式会社 | Information processing apparatus, control method therefor, and computer program |
| JP5538798B2 (en) * | 2009-03-17 | 2014-07-02 | キヤノン株式会社 | Data processing apparatus and data processing method or program |
| JP5600492B2 (en) * | 2010-06-28 | 2014-10-01 | キヤノン株式会社 | Data processing apparatus, data processing method, control apparatus, control method, and program |
| US8706936B2 (en) | 2011-11-14 | 2014-04-22 | Arm Limited | Integrated circuit having a bus network, and method for the integrated circuit |
| FR3040992B1 (en) * | 2015-09-11 | 2017-10-06 | Saint Gobain | LUMINOUS GLAZING OF VEHICLE AND ITS MANUFACTURE. |
| DE102021119467A1 (en) | 2021-07-27 | 2023-02-02 | Lenze Se | Method for the simultaneous monitoring of a transmission and processing of user data and a drive system |
| US12231498B2 (en) * | 2021-09-16 | 2025-02-18 | Vutility, Inc. | Systems and methods for adaptively collapsible data transmissions |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4809267A (en) * | 1986-06-27 | 1989-02-28 | Fujitsu Limited | Packet data communication system with ring type transmission line |
| US20050138254A1 (en) * | 2003-12-17 | 2005-06-23 | International Business Machines Corporation | Token swapping for hot spot management |
| CN1226690C (en) * | 2002-12-05 | 2005-11-09 | 国际商业机器公司 | Ring-topology based multiprocessor data access bus |
Family Cites Families (28)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4779087A (en) * | 1985-02-13 | 1988-10-18 | Fujitsu Limited | Loop transmission system with frame synchronization control |
| JPS61187445A (en) * | 1985-02-15 | 1986-08-21 | Fujitsu Ltd | Packet transmission control system |
| US5155858A (en) | 1988-10-27 | 1992-10-13 | At&T Bell Laboratories | Twin-threshold load-sharing system with each processor in a multiprocessor ring adjusting its own assigned task list based on workload threshold |
| JPH04192942A (en) * | 1990-11-27 | 1992-07-13 | Fujitsu Ltd | Loop type network communication system |
| JP2001511971A (en) * | 1997-02-17 | 2001-08-14 | コミュニケイション アンド コントロール エレクトロニクス リミテッド | Local communication system |
| US7480706B1 (en) * | 1999-12-30 | 2009-01-20 | Intel Corporation | Multi-threaded round-robin receive for fast network port |
| US7292597B2 (en) * | 2000-09-28 | 2007-11-06 | Teridian Semiconductor Corp. | Method and apparatus for transparent implementation of link-suspend capabilities in network devices |
| US20020191601A1 (en) * | 2001-06-15 | 2002-12-19 | Alcatel, Societe Anonyme | On-chip communication architecture and method |
| GB2378610B (en) * | 2001-08-09 | 2004-06-02 | Cambridge Broadband Ltd | Communications network |
| US7641131B2 (en) | 2002-10-02 | 2010-01-05 | Sbr Investments Company Llc | Vehicle windshield cleaning system |
| US7433307B2 (en) * | 2002-11-05 | 2008-10-07 | Intel Corporation | Flow control in a network environment |
| US7239645B2 (en) * | 2003-01-21 | 2007-07-03 | Applied Micro Circuits Corporation | Method and apparatus for managing payload buffer segments in a networking device |
| WO2005053237A1 (en) * | 2003-11-19 | 2005-06-09 | Honeywell International Inc. | High integrity data propagation in a braided ring |
| US7414984B2 (en) * | 2004-08-27 | 2008-08-19 | General Instrument Corporation | System and method for efficient addition of network resources |
| US7631131B2 (en) * | 2005-10-27 | 2009-12-08 | International Business Machines Corporation | Priority control in resource allocation for low request rate, latency-sensitive units |
| US8438239B2 (en) * | 2006-05-11 | 2013-05-07 | Vocollect, Inc. | Apparatus and method for sharing data among multiple terminal devices |
| US7710904B2 (en) * | 2006-12-27 | 2010-05-04 | Intel Corporation | Ring network with variable token activation |
| US8004966B2 (en) * | 2008-04-25 | 2011-08-23 | Calix, Inc. | Efficient management of ring networks |
| WO2010059150A1 (en) * | 2008-11-19 | 2010-05-27 | Lsi Corporation | Interconnects using self-timed time-division multiplexed bus |
| US8300535B2 (en) * | 2009-02-24 | 2012-10-30 | Canon Kabushiki Kaisha | Information processing apparatus, method thereof, and storage medium |
| JP5014362B2 (en) * | 2009-02-25 | 2012-08-29 | キヤノン株式会社 | Information processing apparatus, control method therefor, and computer program |
| JP4869369B2 (en) * | 2009-03-13 | 2012-02-08 | キヤノン株式会社 | Information processing apparatus, information processing method, and program |
| JP5538798B2 (en) * | 2009-03-17 | 2014-07-02 | キヤノン株式会社 | Data processing apparatus and data processing method or program |
| JP5528001B2 (en) * | 2009-04-08 | 2014-06-25 | キヤノン株式会社 | Information processing apparatus and information processing method |
| JP5432587B2 (en) | 2009-05-14 | 2014-03-05 | キヤノン株式会社 | Data processing apparatus, control method thereof, and program |
| JP5361567B2 (en) * | 2009-06-25 | 2013-12-04 | キヤノン株式会社 | Data processing apparatus, data processing method and program |
| JP5414506B2 (en) * | 2009-12-18 | 2014-02-12 | キヤノン株式会社 | Data processing apparatus, data processing method, and program |
| JP5600492B2 (en) | 2010-06-28 | 2014-10-01 | キヤノン株式会社 | Data processing apparatus, data processing method, control apparatus, control method, and program |
-
2009
- 2009-02-25 JP JP2009043148A patent/JP5014362B2/en active Active
-
2010
- 2010-02-17 CN CN201310409255.9A patent/CN103441915B/en not_active Expired - Fee Related
- 2010-02-17 KR KR1020117021448A patent/KR101262751B1/en not_active Expired - Fee Related
- 2010-02-17 US US13/141,382 patent/US8761013B2/en not_active Expired - Fee Related
- 2010-02-17 CN CN201080008604.0A patent/CN102326158B/en not_active Expired - Fee Related
- 2010-02-17 WO PCT/JP2010/052805 patent/WO2010098330A1/en not_active Ceased
- 2010-02-17 EP EP16150623.3A patent/EP3037978A3/en not_active Withdrawn
- 2010-02-17 EP EP10709293.4A patent/EP2401682B1/en active Active
-
2014
- 2014-05-05 US US14/269,301 patent/US9237097B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4809267A (en) * | 1986-06-27 | 1989-02-28 | Fujitsu Limited | Packet data communication system with ring type transmission line |
| CN1226690C (en) * | 2002-12-05 | 2005-11-09 | 国际商业机器公司 | Ring-topology based multiprocessor data access bus |
| US20050138254A1 (en) * | 2003-12-17 | 2005-06-23 | International Business Machines Corporation | Token swapping for hot spot management |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107819969A (en) * | 2016-09-13 | 2018-03-20 | 佳能株式会社 | Information processor and semiconductor integrated circuit including ring bus system |
| US10423557B2 (en) | 2016-09-13 | 2019-09-24 | Canon Kabushiki Kaisha | Information processing apparatus and semiconductor integrated circuit including ring bus system |
| CN107819969B (en) * | 2016-09-13 | 2020-04-28 | 佳能株式会社 | Information processing apparatus including ring bus system and semiconductor integrated circuit |
Also Published As
| Publication number | Publication date |
|---|---|
| US9237097B2 (en) | 2016-01-12 |
| EP2401682B1 (en) | 2017-05-03 |
| CN102326158A (en) | 2012-01-18 |
| US20110255547A1 (en) | 2011-10-20 |
| CN103441915B (en) | 2017-03-01 |
| CN102326158B (en) | 2014-11-19 |
| US8761013B2 (en) | 2014-06-24 |
| WO2010098330A1 (en) | 2010-09-02 |
| EP3037978A3 (en) | 2016-07-20 |
| KR20110127689A (en) | 2011-11-25 |
| KR101262751B1 (en) | 2013-05-09 |
| US20140241350A1 (en) | 2014-08-28 |
| JP5014362B2 (en) | 2012-08-29 |
| EP2401682A1 (en) | 2012-01-04 |
| JP2010200034A (en) | 2010-09-09 |
| EP3037978A2 (en) | 2016-06-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN103441915B (en) | Information processor and its operational approach | |
| US8774234B2 (en) | Data processing apparatus, data processing method, and computer-readable storage medium | |
| JP2005318495A (en) | Separating transactions into different virtual channels | |
| JP2003273911A5 (en) | ||
| US7613849B2 (en) | Integrated circuit and method for transaction abortion | |
| JP6847334B2 (en) | Network equipment, network systems, network methods, and network programs | |
| CN102299857B (en) | Multicast message processing method, line card and communication equipment | |
| JPH10228445A (en) | Ring bus I / O controller | |
| CN100592711C (en) | Integrated circuit and method for packet switching control | |
| JP6853479B2 (en) | Information processing system, information processing device, and control method of information processing system | |
| TW200540605A (en) | Packet exchange for controlling system power modes | |
| CN108701103B (en) | Direct memory access control device for a computing unit with a working memory | |
| JP4791341B2 (en) | Data transfer system | |
| JP4708901B2 (en) | Data processing module and method for preparing message transmission | |
| JP6013711B2 (en) | Semiconductor integrated circuit and semiconductor integrated circuit debugging method | |
| KR20060009292A (en) | Split protocol transmission method and processing system | |
| CN100424666C (en) | Processing system and method of transferring data | |
| CN104871504B (en) | Confirm forwarding |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant | ||
| CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170301 |
|
| CF01 | Termination of patent right due to non-payment of annual fee |