CN103441915A - Information processing apparatus and operation method thereof - Google Patents

Information processing apparatus and operation method thereof Download PDF

Info

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
Application number
CN2013104092559A
Other languages
Chinese (zh)
Other versions
CN103441915B (en
Inventor
高坂三千聪
石川尚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of CN103441915A publication Critical patent/CN103441915A/en
Application granted granted Critical
Publication of CN103441915B publication Critical patent/CN103441915B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/72Routing based on the source address
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow 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

信息处理装置及其操作方法Information processing device and operating method thereof

本申请是申请日为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 data processor 104;

图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 data transmission unit 303 and the reception unit 311;

图6是表示处理数据接收单元305和传送单元312中的处理的例子的流程图;FIG. 6 is a flowchart showing an example of processing in the processing data reception unit 305 and the transmission unit 312;

图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 data transmission unit 303 and the reception unit 311 .

具体实施方式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 CPU 101 is a control unit having a function of controlling the overall operation of the data processing system. The RAM 102 is a readable/writable memory that stores input data to be processed by the CPU 101 , output data after processing, preset parameter data for the data processor 104 , and the like. The ROM 103 is a readable memory that can hold the processing sequence of the CPU 101 and constants such as preset parameters. Data processor 104 comprises the arrangements and modules disclosed herein. The modules are connected to the ring bus. A programmable custom IC chip can implement the data processor 104 . The chips contain eg ASICs (Application Specific Integrated Circuits) or FPGAs (Field Programmable Gate Arrays).

以下将参照图2来描述数据处理器104的布置。数据处理器104包含多个模块201~204。环形总线205被用于在模块之间传送包。模块201~204与环形总线205连接。各模块被配置为从一个相邻模块接收数据包,并且在预定的处理之后将该数据包传送给另一个相邻模块。通过模块交换的包在环形总线上沿一个方向移动。在以下的描述中,数据(或包)在其上沿单方向流传的环状总线将被简称为环形总线。The arrangement of the data processor 104 will be described below with reference to FIG. 2 . The data processor 104 includes a plurality of modules 201-204. A ring bus 205 is used to transfer packets between modules. The modules 201 to 204 are connected to the ring bus 205 . Each module is configured to receive a data packet from one neighboring module and transmit the data packet to another neighboring module after predetermined processing. Packets switched by the modules move in one direction on the ring bus. In the following description, a ring bus on which data (or packets) flow in one direction will be simply referred to as a ring bus.

输入/输出缓冲器206被用于输入/输出数据。本实施例的模块201~204中的每一个具有被用于识别自身模块的数据处理器识别信息,并且为了简化起见,在图2中被标记为“ID”。在对于本发明的实施例的以下描述中,该信息也被描述为“ID”。注意,ID=1的模块201与输入/输出缓冲器206连接以管理输入和输出数据。The input/output buffer 206 is used to input/output data. Each of the modules 201 to 204 of the present embodiment has data processor identification information used to identify its own module, and is labeled "ID" in FIG. 2 for simplicity. In the following description of the embodiments of the present invention, this information is also described as "ID". Note that the module 201 with ID=1 is connected to the input/output buffer 206 to manage input and output data.

以下将参照图3来描述数据处理器中的各模块201~204的布置。参照图3,包识别单元301检查是否要取得来自另一模块的包。当包识别单元301接收到保存了与自己等待的ID匹配的传送源ID的包时,它将该包输出到包接收单元302。The arrangement of the modules 201 to 204 in the data processor will be described below with reference to FIG. 3 . Referring to FIG. 3 , the packet identification unit 301 checks whether to acquire a packet from another module. When the packet identification unit 301 receives a packet storing a transfer source ID that matches the ID that it waits for, it outputs the packet to the packet reception unit 302 .

包接收单元302执行包接收处理。处理数据传送单元303将处理数据传送到处理单元304。处理单元304执行实际的数据处理。处理数据接收单元305从处理单元304接收处理后的数据。包产生单元306基于从处理单元304接收的处理后的数据和来自包修改单元308的输出而产生包。The packet reception unit 302 performs packet reception processing. The processing data transfer unit 303 transfers the processing data to the processing unit 304 . The processing unit 304 performs actual data processing. The processed data receiving unit 305 receives processed data from the processing unit 304 . The packet generation unit 306 generates packets based on the processed data received from the processing unit 304 and the output from the packet modification unit 308 .

包传送单元307将包输出到环形总线上。包修改单元308根据来自包接收单元302的指令而修改将在后面参照图4描述的包的数据有效标记401和保留(stall)标记404的值。选择器309基于来自包传送单元307的指令而选择来自包传送单元307的包和来自包修改单元308的包中的一个。如果没有来自包传送单元307的指令,那么选择器309选择从包修改单元308输出的包并且输出该包。缓冲器310被用于接连地(one after another)传送包。The packet transfer unit 307 outputs the packets onto the ring bus. The packet modifying unit 308 modifies the values of a data valid flag 401 and a stall flag 404 of a packet which will be described later with reference to FIG. 4 in accordance with an instruction from the packet receiving unit 302 . The selector 309 selects one of the packet from the packet transfer unit 307 and the packet from the packet modification unit 308 based on an instruction from the packet transfer unit 307 . If there is no instruction from the packet transfer unit 307, the selector 309 selects the packet output from the packet modification unit 308 and outputs the packet. Buffer 310 is used to transmit packets one after another.

在上面的布置中,模块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 modules 201 , 202 , 203 and 204 contains a processing unit 304 and a communication unit 313 . The communication unit 313 includes a processing data transmitting unit 303 , a processing data receiving unit 305 , a selector 309 , a buffer 310 , a receiving unit 311 , and a transmitting unit 312 . In addition, the receiving unit 311 includes a packet identifying unit 301 , a packet receiving unit 302 and a packet modifying unit 308 . Furthermore, the transmission unit 312 includes a packet generation unit 306 and a packet transmission unit 307 .

在以下的描述中,本实施例将解释处理单元304通过处理一个输入数据而输出一个输出数据的情况。在这种情况下,假定从输入数据被输入到处理单元304到获得输出数据为止不能输入另一输入数据。出于该原因,包接收单元302必须根据处理单元304的状态来暂停包的接收。In the following description, this embodiment will explain the case where the processing unit 304 outputs an output data by processing an input data. In this case, it is assumed that another input data cannot be input from when input data is input to the processing unit 304 to when output data is obtained. For this reason, the packet reception unit 302 must suspend reception of packets according to the state of the processing unit 304 .

图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 hold flag 404 is second flag information that is set to "1" when the module suspends packet processing. That is, if the reserved flag 404 is "1," it indicates that packet processing is suspended. Note that processing is suspended, for example, when a module receives data but cannot process the data because the processing unit 304 is busy. The reserved flag 404 is set to "0" as an initial value. That is, when the reserved flag has an initial value, it means that the module on the ring bus to receive the packet has not processed the corresponding packet.

各模块可设定等待包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 packet identification unit 301 acquires the packet. For example, a case where data paths are arranged in the order of module 1, module 4, module 2, module 3, and module 1 will be considered below. In this case, the waiting packet ID of module 1 is set to "3", the waiting packet ID of module 2 is set to "4", the waiting packet ID of module 3 is set to "2", and the waiting packet ID of module 4 is set to "2". The waiting packet ID is set to "1". By setting the waiting packet ID of each module in this way, a data path can be formed. It is assumed that a waiting packet ID is set in advance for each module, and its information is stored in the packet identification unit 301 .

以下将描述通信单元313中的数据接收方法。例如,以下将考虑图2中的从ID=1的模块1到ID=3的模块3执行数据传送的情况。此时,模块3的包识别单元301获取数据有效标记401有效的包,并且将该包的传送源ID402与自己的等待包ID相比较。如果这两个ID彼此相等,那么包识别单元301将该包传送到包接收单元302。The data receiving method in the communication unit 313 will be described below. For example, a case where data transfer is performed from module 1 with ID=1 to module 3 with ID=3 in FIG. 2 will be considered below. At this time, the packet identification unit 301 of the module 3 acquires the packet whose data validity flag 401 is valid, and compares the transmission source ID 402 of the packet with its own waiting packet ID. If the two IDs are equal to each other, the packet identifying unit 301 transfers the packet to the packet receiving unit 302 .

处理数据传送单元303确定处理单元304是否准备好执行处理。如果处理数据传送单元303确定处理单元304已准备好,那么包接收单元302从所获取的包中提取要被处理的数据,并且将要被处理的数据传送到处理数据传送单元303。在这种情况下,由于该包已没有用,因此包接收单元302指令包修改单元308将包的数据有效标记401设定为无效(0)。The processing data transfer unit 303 determines whether the processing unit 304 is ready to execute processing. If the processing data transfer unit 303 determines that the processing unit 304 is ready, the packet receiving unit 302 extracts the data to be processed from the acquired packet, and transfers the data to be processed to the processing data transfer unit 303 . In this case, since the packet is useless, the packet receiving unit 302 instructs the packet modifying unit 308 to set the data valid flag 401 of the packet to invalid (0).

另一方面,如果处理数据传送单元303确定处理单元304繁忙,那么包接收单元302指令包修改单元308将包的保留标记404设定为“1”。包修改单元308根据来自包接收单元302的指令来修改数据有效标记401或保留标记404,并且将该包传送到选择器309。选择器309选择从包修改单元308输入的包和从包传送单元307输入的包中的一个,并且将其传送到缓冲器310。On the other hand, if the processing data transfer unit 303 determines that the processing unit 304 is busy, the packet receiving unit 302 instructs the packet modification unit 308 to set the reservation flag 404 of the packet to "1". The packet modifying unit 308 modifies the data valid flag 401 or the reserved flag 404 according to an instruction from the packet receiving unit 302 , and transfers the packet to the selector 309 . The selector 309 selects one of the packet input from the packet modification unit 308 and the packet input from the packet transfer unit 307 , and transfers it to the buffer 310 .

以下将参照图5来描述处理数据传送单元303和接收单元311中的处理。在步骤S501中,包识别单元301从位于前一级的模块获取包。包识别单元301在步骤S502中检查包的数据有效标记401是否有效(1)。如果数据有效标记401有效(在步骤S502中为“是”),那么处理前进到步骤S503。另一方面,如果数据有效标记401无效(在步骤S502中为“否”),那么该处理结束。Processing in the processing data transmission unit 303 and the reception unit 311 will be described below with reference to FIG. 5 . In step S501, the packet identification unit 301 acquires a packet from a module located at the previous stage. The packet identifying unit 301 checks in step S502 whether the data valid flag 401 of the packet is valid (1). If the data valid flag 401 is valid (YES in step S502 ), the process advances to step S503 . On the other hand, if the data valid flag 401 is invalid ("No" in step S502), the process ends.

包识别单元301在步骤S503中检查包的传送源ID402是否等于在模块中设定的等待包ID。如果确定两个ID彼此相等(在步骤S503中为“是”),那么处理前进到步骤S504。另一方面,如果确定两个ID彼此不相等(在步骤S503中为“否”),那么该处理结束。The packet identifying unit 301 checks in step S503 whether the transfer source ID 402 of the packet is equal to the waiting packet ID set in the module. If it is determined that the two IDs are equal to each other (YES in step S503 ), the process advances to step S504 . On the other hand, if it is determined that the two IDs are not equal to each other (NO in step S503 ), the process ends.

处理数据传送单元303在步骤S504中检查处理单元304是否准备好交换数据。如果确定处理单元304准备好交换数据(在步骤S504中为“是”),那么处理前进到步骤S505。另一方面,如果确定处理单元304没有准备好接收数据(在步骤S504中为“否”),那么处理前进到步骤S506。The processing data transfer unit 303 checks in step S504 whether the processing unit 304 is ready to exchange data. If it is determined that the processing unit 304 is ready to exchange data (YES in step S504 ), the process advances to step S505 . On the other hand, if it is determined that the processing unit 304 is not ready to receive data (NO in step S504 ), the process advances to step S506 .

在步骤S505中,包接收单元302从包中提取处理数据,并且将其传送到处理数据传送单元303,处理数据传送单元303将数据转送到处理单元304。处理然后前进到步骤S507。在步骤S506中,包接收单元302指令包修改单元308将包的保留标记404设定为“1”。然后,保留标记404从初始值(0)被修改为(1)。在步骤S507中,包接收单元302指令包修改单元308将包的数据有效标记401设定为“0”。In step S505 , the packet reception unit 302 extracts the processing data from the packet, and transfers it to the processing data transfer unit 303 , and the processing data transfer unit 303 transfers the data to the processing unit 304 . The process then proceeds to step S507. In step S506, the packet receiving unit 302 instructs the packet modifying unit 308 to set the reservation flag 404 of the packet to "1". Then, the reserved flag 404 is modified from the initial value (0) to (1). In step S507, the packet receiving unit 302 instructs the packet modifying unit 308 to set the data valid flag 401 of the packet to "0".

以下将描述处理数据接收单元305和传送单元312中的数据传送序列。例如,以下将解释图2中的从ID=1的模块1到ID=3的模块3执行数据传送的情况。此时,模块1的包产生单元306从包修改单元308获取其中数据有效标记401无效(0)的包。The data transfer sequence in the processing data reception unit 305 and the transfer unit 312 will be described below. For example, a case where data transfer is performed from module 1 with ID=1 to module 3 with ID=3 in FIG. 2 will be explained below. At this time, the packet generation unit 306 of the module 1 acquires the packet in which the data validity flag 401 is invalid (0) from the packet modification unit 308 .

然后,包产生单元306在该包的数据存储字段303中存储从处理数据接收单元305获得的传送数据,并且在传送源ID402中存储作为模块1的ID的“1”。此外,包产生单元306将保留标记404设定为初始值(0),并且将数据有效标记401设定为“1”。然后,包产生单元306将该包传送到包传送单元307。包传送单元307将从包产生单元306获取的包输出到选择器309。此时,包传送单元307同时将选择信号输出到选择器309以选择其输出。Then, the packet generating unit 306 stores the transfer data obtained from the processed data receiving unit 305 in the data storage field 303 of the packet, and stores “1” which is the ID of the module 1 in the transfer source ID 402 . Furthermore, the packet generating unit 306 sets the reserved flag 404 to an initial value (0), and sets the data valid flag 401 to "1". Then, the packet generation unit 306 transfers the packet to the packet transfer unit 307 . The packet transfer unit 307 outputs the packet acquired from the packet generation unit 306 to the selector 309 . At this time, the packet transfer unit 307 simultaneously outputs a selection signal to the selector 309 to select its output.

包产生单元306监视包的保留标记404。当由自己输出的包在没有将保留标记设定为“1”的情况下返回时,数据有效标记401被设定为“0”以避免没有接收模块的包占据环形总线。相反,当保留标记404被设定为“1”时,该包被原样输出到环形总线上。The packet generation unit 306 monitors the reservation flag 404 of the packet. When a packet output by itself is returned without setting the reserved flag to "1", the data valid flag 401 is set to "0" to prevent packets without receiving modules from occupying the ring bus. On the contrary, when the reserved flag 404 is set to "1", the packet is output onto the ring bus as it is.

以下将参照图6来描述处理数据接收单元305和传送单元312中的处理。参照图6,包产生单元306在步骤S601中获取来自接收单元311的包修改单元308的包。包产生单元306在步骤S602中检查所接收包的数据有效标记401是否为“0”。如果确定数据有效标记401不是“0”(在步骤S602中为“否”),那么处理前进到步骤S603。另一方面,如果确定数据有效标记401为“0”(在步骤S602中为“是”),那么处理前进到步骤S606。Processing in the processing data receiving unit 305 and the transmitting unit 312 will be described below with reference to FIG. 6 . Referring to FIG. 6, the packet generation unit 306 acquires a packet from the packet modification unit 308 of the reception unit 311 in step S601. The packet generating unit 306 checks in step S602 whether the data valid flag 401 of the received packet is "0". If it is determined that the data valid flag 401 is not "0" (NO in step S602), the process advances to step S603. On the other hand, if it is determined that the data valid flag 401 is "0" (YES in step S602 ), the process advances to step S606 .

包产生单元306在步骤S603中检查包的保留标记404是否为“1”。如果确定保留标记404为“1”(在步骤S603中为“是”),那么处理结束。在这种情况下,来自包修改单元308的包经由选择器309和缓冲器310被传送到下一个模块。另一方面,如果确定保留标记404不是“1”,即,它仍具有初始值(在步骤S603中为“否”),那么处理前进到步骤S604。The packet generation unit 306 checks in step S603 whether the reserved flag 404 of the packet is "1". If it is determined that the reserve flag 404 is "1" (YES in step S603 ), the processing ends. In this case, the packet from the packet modification unit 308 is transferred to the next module via the selector 309 and the buffer 310 . On the other hand, if it is determined that the reserved flag 404 is not "1", that is, it still has the initial value ("No" in step S603), then the process advances to step S604.

包产生单元306在步骤S604中检查包的传送源ID402是否等于自身模块的ID。如果确定这两个ID彼此相等(在步骤S604中为“是”),那么处理前进到步骤S605。在步骤S605中,包产生单元306将包的数据有效标记401设定为“0”,并且处理然后跳到步骤S611。另一方面,如果确定这两个ID彼此不相等(在步骤S604中为“否”),那么该处理结束。在这种情况下,同样,来自包修改单元308的包经由选择器309和缓冲器310被传送到下一个模块。The packet generating unit 306 checks in step S604 whether the transfer source ID 402 of the packet is equal to the ID of the own module. If it is determined that the two IDs are equal to each other (YES in step S604), the process advances to step S605. In step S605, the packet generating unit 306 sets the data valid flag 401 of the packet to "0", and the process then jumps to step S611. On the other hand, if it is determined that the two IDs are not equal to each other (NO in step S604 ), the process ends. In this case, too, the packet from the packet modification unit 308 is transferred to the next module via the selector 309 and the buffer 310 .

包产生单元306在步骤S606中检查是否从处理单元304获得有效的处理数据。如果获得了有效的处理数据(在步骤S606中为“是”),那么处理前进到步骤S607。另一方面,如果没有获得有效的处理数据(在步骤S606中为“否”),那么该处理结束。The packet generating unit 306 checks in step S606 whether valid processing data is obtained from the processing unit 304 . If valid processing data is obtained (YES in step S606 ), the process proceeds to step S607 . On the other hand, if valid processing data has not been obtained ("NO" in step S606), the processing ends.

在步骤S607中,包产生单元306将从处理单元304获取的处理数据复制到包的数据存储字段403。在步骤S608中,包产生单元306将包的数据有效标记401设定为“1”。此外,在步骤S609中,包产生单元306将包的保留标记404设定为初始值(0)。此外,在步骤S610中,包产生单元306在包的传送源ID402中设定自身ID。在步骤S611中,包产生单元306指令选择器309优先选择来自包传送单元307的输入。In step S607, the package generation unit 306 copies the processing data acquired from the processing unit 304 to the data storage field 403 of the package. In step S608, the packet generation unit 306 sets the data valid flag 401 of the packet to "1". Furthermore, in step S609 , the packet generating unit 306 sets the reserved flag 404 of the packet to an initial value (0). Furthermore, in step S610, the packet generating unit 306 sets its own ID in the transfer source ID 402 of the packet. In step S611 , the packet generation unit 306 instructs the selector 309 to preferentially select the input from the packet transfer unit 307 .

如上所述,根据本实施例,当接收模块可处理所接收包的数据时,它使包无效;当接收模块不能处理数据时,它将包的保留标记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 reservation flag 404 of the packet to "1" and The packets are recast on the ring bus. The receiving module may manage packets to be received to prevent retransmission request packets to the transmitting module from being output on the ring bus. Since the transfer module monitors the reserved flag 404 of the outgoing packet and invalidates the packet as necessary, unnecessary packets can be prevented from being circulated on the ring bus, thereby improving the efficiency of data transfer between modules.

在本实施例中,包的目的地模块的数量是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 modules 3 and 4 are waiting for an output packet from module 2. That is, the data path after module 2 branches.

在以上的实施例中,当数据被成功地传送到处理单元304时,所接收的包被无效化。但是,如果由于模块3成功地接收到包而类似地使包无效化,那么模块4不能再接收包。In the above embodiments, when the data is successfully transmitted to the processing unit 304, the received packet is invalidated. However, if the packet is similarly invalidated because module 3 successfully received the packet, then module 4 can no longer receive the packet.

由此,根据与本发明的另一个方面对应的实施例的各模块的特征在于,还包括包无效化处理指令寄存器,所述包无效化处理指令寄存器可指定当数据被成功传送到处理单元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 processing unit 304 Whether to allow invalidation of packets.

图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 unit 311 further includes an invalidation instruction register 701 . In this embodiment, when the preset value of the register is "1", it is allowed to invalidate the received packet by setting the value of the data valid flag 401 when the processing unit 304 receives it successfully. On the other hand, if the preset value is "0", invalidation of the received packet by setting the value of the data valid flag 401 upon successful reception by the processing unit 304 is not allowed. However, the setting specification of the packet invalidation processing command register is not limited to the above.

无效化指令寄存器701被设定如下。当假定数据路径不分岔时,所有模块的包无效化处理指令寄存器被设定为“1”。在这种情况下,在成功接收时,包被无效化。The invalidation command register 701 is set as follows. When it is assumed that the data paths do not branch, the packet invalidation processing instruction registers of all modules are set to "1". In this case, upon successful reception, the packet is invalidated.

另一方面,当多个模块等待来自某模块的输出包时,先规定输出所述多个模块等待的包的传送源模块,并且,类似地规定等待该包的多个目的地模块。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 invalidation instruction register 701 of this module is set to "1". The invalidation command register 701 of the modules other than this module is set to "0".

例如,当如图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 modules 3 and 4 in FIG. 2 waiting for an output packet from module 2, the ring bus is traced in the forward direction from module 2 which is the transfer source module . Among modules 3 and 4 waiting for packets, module 4 is deployed at a position farthest from module 2 . Thereby, the invalidation command register 701 of the module 3 is set to "0", and the invalidation command register 701 of the module 4 is set to "1".

以下将参照图8来描述本实施例中的处理数据传送单元303和接收单元311中的处理。参照图8,包识别单元301在步骤S801中从位于前一级中的模块获取包。包识别单元301在步骤S802中检查包的数据有效标记401是否为“1”。如果数据有效标记401是“1”(在步骤S802中为“是”),那么处理前进到步骤S803。另一方面,如果数据有效标记401不为“1”(在步骤S802中为“否”),那么该处理结束。Processing in the processing data transmitting unit 303 and receiving unit 311 in this embodiment will be described below with reference to FIG. 8 . Referring to FIG. 8 , the package identification unit 301 acquires a package from a module located in the previous stage in step S801 . The packet identifying unit 301 checks in step S802 whether the data valid flag 401 of the packet is "1". If the data valid flag 401 is "1" (YES in step S802 ), the process advances to step S803 . On the other hand, if the data valid flag 401 is not "1" ("No" in step S802), the process ends.

包识别单元301在步骤S803中检查包的传送源ID402是否等于预设的等待包ID。如果确定这两个ID彼此相等(在步骤S803中为“是”),那么处理前进到步骤S804。另一方面,如果确定这两个ID彼此不相等(在步骤S803中为“否”),那么该处理结束。The packet identifying unit 301 checks in step S803 whether the transmission source ID 402 of the packet is equal to a preset waiting packet ID. If it is determined that the two IDs are equal to each other (YES in step S803), the process advances to step S804. On the other hand, if it is determined that the two IDs are not equal to each other (NO in step S803 ), the process ends.

处理数据传送单元303在步骤S804中检查处理单元304是否准备好交换数据。如果确定处理单元304准备好交换数据(在步骤S804中为“是”),那么处理前进到步骤S805。另一方面,如果确定处理单元304没有准备好交换数据(在步骤S804中为“否”),那么处理前进到步骤S806。The processing data transfer unit 303 checks in step S804 whether the processing unit 304 is ready to exchange data. If it is determined that the processing unit 304 is ready to exchange data (YES in step S804 ), the process advances to step S805 . On the other hand, if it is determined that the processing unit 304 is not ready to exchange data (NO in step S804), the process advances to step S806.

在步骤S805中,包接收单元302从包中提取处理数据,并且将其传送到处理数据传送单元303,处理数据传送单元303将该数据转送到处理单元304。然后,处理前进到步骤S807。在步骤S806中,包接收单元302指令包修改单元308将包的保留标记404设定为“1”。In step S805 , the packet reception unit 302 extracts the processing data from the packet, and transfers it to the processing data transfer unit 303 , which transfers the data to the processing unit 304 . Then, the process advances to step S807. In step S806, the packet reception unit 302 instructs the packet modification unit 308 to set the reservation flag 404 of the packet to "1".

另一方面,包接收单元302在步骤S807中检查无效化指令寄存器701的预设值是否为“1”。如果确定预设值为“1”(在步骤S807中为“是”),那么处理前进到步骤S808。另一方面,如果确定预设值不为“1”(在步骤S807中为“否”),那么该处理结束。在步骤S808中,包接收单元302指令包修改单元308将数据有效标记401设定为“0”。On the other hand, the packet receiving unit 302 checks in step S807 whether the preset value of the invalidation command register 701 is "1". If it is determined that the preset value is "1" (YES in step S807), the process proceeds to step S808. On the other hand, if it is determined that the preset value is not "1" ("No" in step S807), the process ends. In step S808, the packet receiving unit 302 instructs the packet modifying unit 308 to set the data valid flag 401 to "0".

如上所述,即使当数据路径分岔时,由于模块包含根据需要被设定的无效化指令寄存器701,因此包可被传送到所有的多个等待模块。As described above, even when the data path is branched, since the module includes the invalidation instruction register 701 set as necessary, the packet can be transferred to all the plurality of waiting modules.

其它的实施例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)

1. an information processor, described information processor comprises a plurality of modules, described a plurality of module is connected with ring bus, and each in described a plurality of module is configured to receive the bag of storage data and after predetermined processing, this bag be sent to another adjacent block from an adjacent block, wherein, at least one in described a plurality of module comprises:
Recognition unit, whether be configured to bag that bag that identification receives from described adjacent block received to determine and be will be by the bag of self resume module;
Receiver is configured to: if described recognition unit is determined the bag receive, be by the bag of self resume module, to receive and to want processed data;
Processor, be configured to process the data that receive;
Setup unit is configured to: if described processor is not ready for deal with data, at least one that set in received bag in being used to indicate processor is not ready for processing the reservation mark of the data in the bag received; And
Conveyer, the bag that is configured to have described reservation mark is sent to another module.
2. according to the device of claim 1, wherein, in the situation that received bag is by self module output and have described reservation mark, the described conveyer bag that transmission receives with changing.
3. according to the device of claim 1, wherein, if described processor processes data, described setup unit is set as having the value that designation data is invalid by the significant notation of the validity of the designation data in received bag.
4. according to the device of claim 3, wherein, if described receiver receives the data and the bag with reservation mark of initial value that comprise by self resume module, described setup unit is set as having the value that designation data is invalid by the significant notation of the validity of the designation data in received bag.
5. the method for operation of an information processor, described information processor comprises a plurality of modules, described a plurality of module is connected with ring bus, and each in described a plurality of module is configured to receive the bag of storage data and after predetermined processing, this bag be sent to another adjacent block from an adjacent block, wherein, at least one execution in described a plurality of modules of described method comprise following steps:
Whether the bag that the bag that identification receives from described adjacent block is received to determine is will be by the bag of self resume module;
Data in the bag that control processor is identified with processing;
If described processor is not ready for deal with data, at least one that set in received bag in being used to indicate processor is not ready for processing the reservation mark of the data in the bag received; And
The bag that will have described reservation mark is sent to another module.
6. according to the method for claim 5, wherein, in the situation that received bag is by self module output and have described reservation mark, the conveyer bag that transmission receives with changing.
7. according to the method for claim 5, wherein, in setting step, if described processor processes data is set as the significant notation of the validity of the designation data in received bag having the value that designation data is invalid.
8. according to the method for claim 7, wherein, in setting step, if receiver receives the data and the bag with reservation mark of initial value that comprise by self resume module, the significant notation of the validity of the designation data in received bag is set as to there is the value that designation data is invalid.
CN201310409255.9A 2009-02-25 2010-02-17 Information processor and its operational approach Expired - Fee Related CN103441915B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (3)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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