Communication device and communication system

By designing the function of inserting and deleting data in the communication device and optimizing container data transmission, the problem of insufficient processing capabilities of existing communication systems in multi-device ring connection scenarios is solved, and more efficient data transmission and processing is achieved.

JP2025045204APending Publication Date: 2025-04-02KIOXIA CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023153116
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-09-20
Publication Date
2025-04-02

AI Technical Summary

Technical Problem

The existing communication systems have shortcomings in improving communication processing capabilities, especially in multi-device ring connection scenarios, data transmission efficiency and processing capabilities have not been effectively improved.

Method used

A communication device is designed that optimizes data transmission in a container by receiving and processing communication frames in a ring connection, utilizing the functions of inserting and deleting data, and updates the transmission targets when necessary, thereby improving data processing efficiency.

Benefits of technology

By optimizing container data transmission and updating transmission targets, the processing capability and data transmission efficiency of the communication system are improved, especially in multi-device ring connection scenarios, and the reduction in data transmission efficiency is avoided.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025045204000001_ABST
    Figure 2025045204000001_ABST
Patent Text Reader

Abstract

To improve processing capacity of communication.SOLUTION: A communication device is connected in a ring shape with a host controller and a plurality of devices via a communication path, and includes a receiving circuit for receiving a communication frame having a plurality of containers including a first container from the communication path, a first circuit that can insert and remove data into and from at least one container, and a transmitting circuit for transmitting a communication frame based on a processing result of the first circuit to the communication path. Each container is capable of transferring data to one or more of the host controller, the plurality of devices, and the communication device as a transmission destination. The transmitting circuit is configured to exclude the communication device from the transmission destination of the first container and transmit a second communication frame having the first container including the first device as a new transmission destination after the receiving circuit receives a first communication frame having the first container including the communication device and the first device of the plurality of devices as the transmission destination.SELECTED DRAWING: Figure 5
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] FIELD OF THE DISCLOSURE Embodiments of the present invention relate to a communication device and a communication system. [Background technology]

[0002] 2. Description of the Related Art A communication system in which a host controller and a plurality of communication devices are connected in a ring shape is known. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2021-150878 A Summary of the Invention [Problem to be solved by the invention]

[0004] A communication device and a communication system capable of improving communication processing capabilities are provided. [Means for solving the problem]

[0005] A communication device of an embodiment is a communication device connected in a ring shape via a communication path together with a host controller and a plurality of devices, and includes a receiving circuit that receives a communication frame of a serial signal having a plurality of containers including a first container from the communication path, a first circuit that is capable of inserting and removing data into and from at least one of the plurality of containers, and a transmitting circuit that transmits the communication frame based on a processing result of the first circuit to the communication path, wherein each of the plurality of containers is capable of transferring data to one or more of the host controller, the plurality of devices, and the communication device as a transmission destination, and after the receiving circuit receives a first communication frame having the first container that includes the communication device and a first device of the plurality of devices as a transmission destination, the transmitting circuit is configured to exclude the communication device from the transmission destinations of the first container and transmit a second communication frame having the first container that includes the first device as a new transmission destination. [Brief description of the drawings]

[0006] [Figure 1] 1 is a block diagram showing the overall configuration of a communication system according to a first embodiment. [Diagram 2] FIG. 2 is a block diagram of a communication device included in the communication system according to the first embodiment. [Diagram 3] FIG. 2 is a diagram showing an example of a communication frame in the communication system according to the first embodiment. [Figure 4] 5 is a flowchart illustrating an example of the operation of a communication device in the communication system according to the first embodiment. [Diagram 5] 4 is a diagram showing a first transmission example of a communication frame in a ring connection of the communication system according to the first embodiment. [Figure 6] 6 is a diagram showing a second transmission example of a communication frame in a ring connection of the communication system according to the first embodiment. [Figure 7] 10 is a flowchart illustrating an example of an operation of a communication device in a communication system according to a modified example of the first embodiment. [Figure 8]FIG. 11 is a diagram showing an example of transmission of a communication frame in a ring connection of a communication system according to a modified example of the first embodiment. [Figure 9] 10 is a flowchart illustrating an example of an operation of a communication device in a communication system according to the second embodiment. [Figure 10] 13 is a diagram showing a first transmission example of a communication frame in a ring connection of a communication system according to a second embodiment. [Figure 11] FIG. 11 is a diagram showing a second transmission example of a communication frame in a ring connection of the communication system according to the second embodiment. [Figure 12] FIG. 11 is a diagram showing a second transmission example of a communication frame in a ring connection of the communication system according to the second embodiment. [Figure 13] 13 is a flowchart illustrating an example of an operation of a communication device in a communication system according to the third embodiment. [Figure 14] 13 is a diagram showing an example of transmission of a communication frame in a ring connection of a communication system according to the third embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0007] Hereinafter, an embodiment will be described with reference to the drawings. In the following description, components having the same function and configuration are given a common reference symbol. When multiple components having a common reference symbol are to be distinguished from one another, a subscript is added to the common reference symbol. When no particular distinction is required between multiple components, the multiple components are given only the common reference symbol and no subscript is added. Subscripts include, for example, lowercase alphabets added to the end of a reference symbol, and indexes that indicate an array, etc.

[0008] 1. First embodiment The communication system according to the first embodiment will be described below.

[0009] 1.1 Configuration The configuration of the communication system according to the first embodiment will be described.

[0010] 1.1.1 Communication System Configuration An example of the configuration of a communication system 1 will be described with reference to Fig. 1. Fig. 1 is a block diagram showing the overall configuration of a communication system according to a first embodiment.

[0011] The communication system 1 includes a system board 2, a connector 3, a host controller 4, a plurality of device cards 5, and a plurality of communication paths 8. In the example of Fig. 1, the communication system 1 includes n (n is an integer equal to or greater than 1) device cards 5-1 to 5-n. The communication system 1 also includes n communication paths 8-1 to 8-n corresponding to the n device cards 5-1 to 5-n, respectively.

[0012] The system board 2 is, for example, an accelerator board that supports ultra-wideband and large capacity. Note that ultra-wideband means, for example, a bandwidth of 200 GB / s or more.

[0013] The connector 3 is provided on the system board 2. The connector 3 is used to connect the system board 2 to an external device such as a computer. The connector 3 connects the system board 2 to the external device by a wired connection, for example. The connector 3 is connected to a host controller 4.

[0014] The host controller 4 controls the entire communication system 1. The host controller 4 controls each communication device 6 mounted on the device card 5. For example, when the communication device 6 is a memory device, the host controller 4 requests or commands the communication device 6 to perform a data read operation, a data write operation, an erase operation, or the like. When the communication device 6 is a memory device, the communication system 1 may also be called a memory system. The host controller 4 includes a connector interface circuit 41 and a device interface circuit 42.

[0015] The connector interface circuit 41 transmits and receives information to and from an external device via the connector 3 .

[0016] The device interface circuit 42 transmits and receives information to and from the device card 5 via the communication path 8. The device interface circuit 42 is configured to be able to transmit and receive, for example, differential serial signals.

[0017] Each device card 5 includes a substrate 7 and multiple communication devices 6. In the example of Fig. 1, each device card 5 includes four communication devices 6-1 to 6-4. The communication devices 6-1 to 6-4 are mounted on the substrate 7 by soldering, sockets, or the like. The communication devices 6-1 to 6-4 are arranged side by side along the longitudinal direction of the substrate 7, for example.

[0018] The communication device 6 is a device that operates based on communication with the host controller 4. In the following, a case where the communication device 6 is a memory device equipped with a NAND type flash memory will be described. The communication device 6 is, for example, an SSD (Solid State Drive) equipped with a NAND type flash memory. Note that, when the communication device 6 is a memory device, the device card 5 may also be called a memory card. The communication device 6 is communicatively connected to the device interface circuit 42 via a communication path 8.

[0019] The communication paths 8-1 to 8-n correspond to the device cards 5-1 to 5-n, respectively. Each communication path 8 connects the device interface circuit 42 to the communication devices 6-1 to 6-4 included in the corresponding device card 5 by ring connection. More specifically, the data output terminal of the device interface circuit 42, the input terminals and output terminals of the communication devices 6-1, 6-2, 6-3, and 6-4, and the data input terminal of the device interface circuit 42 are connected in a ring shape via the communication path 8. Each communication path 8 is capable of transmitting a differential serial signal.

[0020] A plurality of communication devices 6 of one device card 5 transmit and receive communication frames of differential serial signals via a communication path 8. A communication frame is a unit (first unit) of data transmitted via the communication path 8. In the ring connection, a communication frame output from the host controller 4 is input to the host controller 4 via the communication device 6-1, the communication device 6-2, the communication device 6-3, and the communication device 6-4. A communication frame has a plurality of containers each of which may contain data. A container has a size smaller than a communication frame and is a unit (second unit) of data transmitted via the communication path 8. The configuration of a container will be described later. Each communication device 6 performs insertion and removal of data to and from a container of a communication frame according to a predetermined condition. Insertion and removal of data includes writing data to a container (insertion of data) and reading data from a container (extraction of data).

[0021] The communication system 1 may be configured without the system board 2. The connector interface circuit 41 may be directly connected to an external device without the connector 3. The system board 2 and the substrate 7 may be integrally formed.

[0022] 1.1.2 Configuring Communication Devices The configuration of the communication device 6 will be described with reference to Fig. 2. Fig. 2 is a block diagram of the communication device included in the communication system according to the first embodiment.

[0023] The communication device 6 includes a circuit 60, a dynamic random access memory (DRAM) 601, and a plurality of NAND type flash memories 602. Hereinafter, the NAND type flash memory 602 will also be referred to as a NAND memory 602.

[0024] The circuit 60 is an integrated circuit such as a System-on-a-Chip (SoC). The circuit 60 is a device that operates in response to a request from the host controller 4. The circuit 60 controls a DRAM 601 and a NAND memory 602. The circuit 60 issues commands to the NAND memory 602, such as a read operation, a write operation, or an erase operation. The circuit 60 includes a receiving unit (hereinafter also referred to as "Rx") 61, a transmitting unit (hereinafter also referred to as "Tx") 62, a protocol conversion unit (hereinafter also referred to as "PCS") 63, a communication control circuit (hereinafter also referred to as "CONT") 64, an internal bus 65, a CPU (Central Processing Unit) 66, a DRAM controller 67, a NAND controller 68, and a Static Random Access Memory (SRAM) 69. The circuit 60 is configured as a circuit device including these configurations.

[0025] The communication device 6, which includes a receiving unit 61, a transmitting unit 62, a protocol conversion unit 63, and a communication control circuit 64, functions as an interface circuit that controls transmission and reception of data between the host controller 4 and the communication device 6. The communication control circuit 64, the CPU 66, the DRAM controller 67, the NAND controller 68, and the SRAM 69 are connected to each other by an internal bus 65.

[0026] The receiving unit 61 is a receiving circuit. The receiving unit 61 corresponds to a physical layer. The receiving unit 61 is connected to the communication path 8 and the protocol conversion unit 63. The receiving unit 61 receives a communication frame from the host controller 4 or the preceding communication device 6 via the communication path 8. The receiving unit 61 performs physical processing such as waveform equalization on the received communication frame and supplies it to the protocol conversion unit 63.

[0027] The transmitting unit 62 is a transmitting circuit. The transmitting unit 62 corresponds to a physical layer. The transmitting unit 62 is connected to the communication path 8 and the protocol conversion unit 63. The transmitting unit 62 performs physical processing such as waveform equalization on the communication frame supplied from the protocol conversion unit 63. The transmitting unit 62 transmits the processed communication frame to the communication path 8 toward the downstream communication device 6 or the host controller 4.

[0028] The protocol conversion unit 63 performs protocol conversion of the communication frame. The protocol conversion unit 63 corresponds to a link layer. The protocol conversion unit 63 is connected to the communication control circuit 64. For example, the protocol conversion unit 63 converts the protocol of the processed communication frame received from the receiving unit 61 according to the protocol of the upper layer. The upper layer is a layer higher than the link layer when the communication layer structure in the communication between the host controller 4 and the communication device 6 is roughly divided. For example, the internal bus 65 and the CPU 66, the DRAM controller 67, the NAND controller 68, the SRAM 69, the DRAM 601, and the NAND memory 602 connected to the communication control circuit 64 via the internal bus 65 correspond to the upper layer. More specifically, the protocol conversion unit 63 converts the protocol of the processed communication frame received from the receiving unit 61 according to the bus protocol of the internal bus 65. The protocol conversion unit 63 transmits the communication frame that has been protocol-converted to match the upper layer to the communication control circuit 64.

[0029] Furthermore, the protocol conversion unit 63 converts the protocol of the communication frame received from the communication control circuit 64 in accordance with the protocol of the lower layer. The lower layer is a layer lower than the physical layer when the communication layer structure is roughly divided. More specifically, the protocol conversion unit 63 converts the protocol of the communication frame received from the communication control circuit 64 in accordance with the protocol corresponding to the communication path 8. The protocol conversion unit 63 transmits the communication frame, whose protocol has been converted to match the lower layer, to the transmission unit 62.

[0030] The communication control circuit 64 is configured to be able to insert and extract data into and from a container corresponding to the communication device 6 in each communication device 6. The communication control circuit 64 corresponds to a link layer. For example, the communication control circuit 64 extracts data (information) from a container corresponding to the communication device 6 among communication frames received from the protocol conversion unit 63. The communication control circuit 64 may also insert data into the container. The data inserted into the container is a response signal (response packet, response data) transmitted and received between the communication control circuit 64 and the upper layer in response to a read operation, a write operation, an erase operation, or the like executed in the upper layer. The response signal includes a data transmission unit (packet), or an acknowledgement (ACK) regarding these operations, or the like.

[0031] The CPU 66 is a processor. The CPU 66 controls the operation of the entire communication device 6 based on a request from the host controller 4. The CPU 66 controls the DRAM controller 67, the NAND controller 68, and the SRAM 69 via the internal bus 65. The CPU 66 commands the NAND controller 68 to perform, for example, a read operation, a write operation, an erase operation, or the like on the NAND memory 602.

[0032] The DRAM controller 67 controls the DRAM 601 based on a request from the CPU 66. The DRAM controller 67 transmits and receives data to and from the DRAM 601 via a signal line IOa.

[0033] The DRAM 601 is a volatile memory. Note that the communication device 6 may include other volatile or non-volatile memory instead of the DRAM 601. The DRAM 601 temporarily stores data read by the circuit 60 from the NAND memory 602, write data received from the host controller 4, and the like. Note that the DRAM 601 may be included inside the circuit 60.

[0034] The NAND controller 68 controls the NAND memory 602. One NAND controller 68 can control multiple NAND memories 602. The NAND controller 68 transmits and receives data to and from the NAND memory 602 via a signal line IOb. For example, the NAND controller 68 transmits data (such as a command, an address, and write data) corresponding to a read operation, a write operation, or an erase operation to the NAND memory 602. Furthermore, the NAND controller 68 receives read data from the NAND memory 602 during a read operation.

[0035] The NAND memory 602 is a non-volatile storage medium. In addition, the communication device 6 may include a non-volatile storage medium other than a NAND flash memory instead of the NAND memory 602. The NAND memory 602 stores data received from the NAND controller 68 in a non-volatile manner. In addition, the NAND memory 602 reads out the data stored in the non-volatile manner and transmits it to the NAND controller 68.

[0036] The SRAM 69 is a volatile memory. Instead of the SRAM 69, the communication device 6 may include another memory having a faster access speed than the DRAM 601. The SRAM 69 can be used as a working area for the CPU 66.

[0037] 1.1.3 Communication frame structure An example of the configuration of a communication frame will be described with reference to Fig. 3. Fig. 3 is a diagram showing an example of a communication frame in the communication system according to the first embodiment.

[0038] A plurality of communication frames FR are sequentially transmitted from the host controller 4. In the example of FIG. 3, a communication frame FR-1 and a part of a communication frame FR-2 among the plurality of communication frames FR are shown. Each communication frame FR includes, for example, a plurality of containers CT having the same fixed length. In the example of FIG. 3, each communication frame FR includes four containers CT (CT1 to CT4). Note that the number of containers CT included in each communication frame FR is not limited to four, and may be a number according to, for example, the bandwidth required for the communication system 1, the bandwidth of each communication device 6, the number of communication devices 6, etc.

[0039] Each container CT may store, for example, data to be inserted or removed from the host controller 4, or one or more of the multiple communication devices 6. That is, each container CT may store, for example, data corresponding to the host controller 4, or data corresponding to one or more of the multiple communication devices 6. Fig. 3 shows an example in which data corresponding to communication devices 6-1 and 6-2 is stored in container CT1. Note that each container CT may be in an empty (Null) state in which no data is stored.

[0040] The container CT includes a container header CH and a container payload CP.

[0041] The container header CH includes a CP identifier, destination information, and source information. The container header CH may not include source information. The CP identifier is an identifier that identifies the start of the container payload CP and the end of the container payload CP when multiple containers CT are transferred together. The destination information includes an identification information ID for specifying the destination. In the following description, the identification information IDs of the host controller 4, the communication device 6-1, the communication device 6-2, the communication device 6-3, and the communication device 6-4 are referred to as identification information ID0, ID1, ID2, ID3, and ID4, respectively. The destination information may include, for example, the identification information ID0 of the host controller 4, or the identification information ID of one or more communication devices 6 among the multiple communication devices 6-1 to 6-4. For example, when a data write operation is requested to multiple communication devices 6, the destination information of one container CT includes multiple identification information IDs. Also, for example, when requesting a write operation, read operation, or erase operation for one communication device 6, the destination information of one container CT includes one identification information ID. The example of FIG. 3 shows a case where the destination information includes two identification information items ID1 and ID2. The source information includes an identification information ID for identifying the source. The example of FIG. 3 shows a case where the source information includes one identification information item ID0.

[0042] The container payload CP includes data transmitted between a lower layer and a higher layer, and includes a packet header PH and a packet payload PP. The container payload CP may include, for example, a plurality of packet payloads PP.

[0043] The packet header PH includes a PP identifier, which is an identifier for identifying the start and end of a packet payload PP when multiple packet payloads PP are transferred collectively.

[0044] The packet payload PP includes, for example, data related to an operation performed in a higher layer, or a response signal. In other words, the packet payload PP includes data of the packet PK transmitted and received between the communication control circuit 64 and the higher layer, or data of the response packet. More specifically, when the packet payload PP includes data related to an operation performed in a higher layer, the packet payload PP includes, for example, information (address) indicating a destination, attribute information (command) such as a read operation, write operation, or erase operation performed in the higher layer, data (write data, read data, etc.), and packet length information. When a write operation is performed in the NAND memory 602, the packet payload PP transmitted from a lower layer to a higher layer includes, for example, a write command, an address, and write data. Also, when a read operation is performed in the NAND memory 602, the packet payload PP transmitted from a higher layer to a lower layer includes, for example, read data. Note that when the container header CH includes multiple destination information, the packet payload PP may include multiple destination addresses corresponding to the multiple destination information, respectively. This allows, for example, the write data included in the packet payload PP to be written to each of the NAND memories 602 of a plurality of communication devices 6 based on the addresses of a plurality of destinations.

[0045] 1.2 Operation Next, an operation example of the communication system 1 according to the first embodiment will be described. First, an example of extracting data of a container CT by each communication device 6 in the first embodiment will be described below. Also, a first transmission example and a second transmission example in the first embodiment will be described. These examples show an example when a container CT including data requesting a write operation is transmitted.

[0046] In the following description, the diagrams showing each transmission example show a host controller 4 and one device card 5 connected to the host controller 4. In the diagrams, the DRAM 601, the multiple NAND memories 602, the CPU 66, the DRAM controller 67, the NAND controller 68, and the SRAM 69 of the configuration of each communication device 6 are omitted.

[0047] 1.2.1 Communication Device Operation An example of the operation of the communication device 6 will be described with reference to Fig. 4. Fig. 4 is a flowchart for explaining an example of the operation of the communication device in the communication system according to the first embodiment. Specifically, Fig. 4 shows an example of processing performed by the communication device 6 on a communication frame FR.

[0048] In the communication device 6 that received the communication frame FR, the communication control circuit 64 determines (S0) whether or not the destination information in the container header CH of each container CT of the communication frame FR includes the identification information ID of the communication device 6. If the destination information does not include the identification information ID of the communication device 6 (S0; NO), the process proceeds to S6.

[0049] If the destination information includes the identification information ID of the communication device 6 (S0; YES), the communication control circuit 64 extracts data from the container payload CP (packet payload PP) of the container CT (S1). The communication control circuit 64 also transmits the extracted data to a higher layer as a packet PK. The CPU 66 then executes operations such as a write operation, a read operation, and an erase operation based on the extracted data (packet PK). Then, the process proceeds to S2.

[0050] The communication control circuit 64 determines whether the destination information of the container CT (target container CT) from which data extraction was performed includes an identification information ID other than the identification information ID of the communication device 6 (operating communication device 6) that performed the data extraction (S2).

[0051] When the destination information of the target container CT includes an identification information ID other than the identification information ID of the operating communication device 6 (S2; YES), the communication control circuit 64 converts the destination information of the target container CT into destination information in which the identification information ID of the operating communication device 6 is removed from the destination information of the target container CT received by the receiving unit 61 (S3). As a result, the data (container payload CP) included in the target container CT becomes data corresponding to the identification information ID included in the converted destination information. In addition, in the process of S3, not only the identification information ID but also the destination address in the operating communication device 6 may be deleted. In addition, since the destination address in the operating communication device 6 is not used in the subsequent communication device 6, in the process of S3, the destination information is updated but this address does not need to be deleted. Then, the process proceeds to S4.

[0052] The communication control circuit 64 adds, for example, a response signal for an operation based on the data extracted in S1 to the data waiting to be sent (S4). The data waiting to be sent is stored, for example, in the DRAM 601 or NAND memory 602 of the operating communication device 6. Note that when the data extraction is executed as described above, if there is no data waiting to be sent in the operating communication device 6, the communication control circuit 64 sets the response signal as data waiting to be sent. Then, the process proceeds to S6.

[0053] If the destination information of the target container CT does not include any identification information ID other than the identification information ID of the operating communication device 6 (S2; NO), the communication control circuit 64 erases (discards) the data of the target container CT and inserts a response signal regarding the operation based on the data extracted in S1 (S5). More specifically, the communication control circuit 64, for example, discards the data (container payload CP) of the target container CT and inserts the response signal into the container payload CP of the target container CT. In addition, the communication control circuit 64 converts the destination information of the target container CT into the identification information ID0 of the host controller 4. Then, the process proceeds to S6.

[0054] The communication control circuit 64 determines whether there is data waiting to be sent in the operational communication device 6 (S6). If there is data waiting to be sent (S6; YES), the process proceeds to S7. If there is no data waiting to be sent (S6; NO), the process for the communication frame FR ends. Note that if the identification information ID of the operational communication device 6 is not included (S0; NO) and there is no data waiting to be sent (S6; NO), the process for inserting or removing data from the communication frame FR by the operational communication device 6 is not executed. Also, if the destination information of the target container CT includes an identification information ID other than the identification information ID of the operational communication device 6 (S2; YES), the process of S4 is executed, and therefore the process (determination) of S6 does not need to be executed.

[0055] The communication control circuit 64 determines whether there is an empty container CT (S7). If there is an empty container CT (S7; YES), the process proceeds to S8. If there is no empty container CT (S7; NO), the process for the communication frame FR ends. Note that even if the identification information ID of the operational communication device 6 is not included (S0; NO), and even if there is data waiting to be sent (S6; YES) or there is no empty container CT (S7; NO), the process for inserting or removing data from the communication frame FR by the operational communication device 6 is not executed.

[0056] The communication control circuit 64 inserts the data waiting to be sent into the empty container CT (S8). More specifically, the communication control circuit 64 converts the destination information in the container header CH of the empty container CT into the identification information ID0 of the host controller 4. In addition, the communication control circuit 64 inserts the data waiting to be sent into the container payload CP of the empty container CT. Then, the processing for the communication frame FR ends.

[0057] In the above-described operation of the communications device 6, the process of S0 to S4 can be called an excerpt process, and the process of S5 to S8 can be called an insertion process.

[0058] The communication frame FR updated in the above manner is transmitted from the transmitting section 62. Then, the process ends.

[0059] 1.2.2 First Transmission Example of the First Embodiment A first transmission example of a communication frame FR in the ring connection according to the first embodiment will be described with reference to Fig. 5. Fig. 5 is a diagram showing a first transmission example of a communication frame in the ring connection of the communication system according to the first embodiment. Fig. 5 shows containers CT1 to CT4 included in the communication frame FR when the processes in each communication device 6 are executed in order.

[0060] The host controller 4 transmits a communication frame FR to the communication device 6-1, in which data corresponding to the identification information ID1 (communication device 6-1) and the identification information ID2 (communication device 6-2) is stored in the container CT1, data corresponding to the identification information ID3 (communication device 6-3) and the identification information ID4 (communication device 6-4) is stored in the container CT3, and the containers CT2 and CT4 are in an empty state (Null). For example, a command, an address, and write data for requesting the communication devices 6-1 and 6-2 to write the same write data are stored in the container CT1. For example, a command, an address, and write data for requesting the communication devices 6-3 and 6-4 to write the same write data are stored in the container CT3.

[0061] In the communication device 6-1, data of the container CT1 is extracted. Furthermore, the CPU 66 executes a write operation to the NAND memory 602 based on the extracted data. Furthermore, the communication control circuit 64 converts the destination information of the container header CH of the container CT1 from the identification information ID1 and ID2 to the identification information ID2. As a result, the data included in the container CT1 transmitted from the transmitting unit 62 of the communication device 6-1 becomes data corresponding to the identification information ID2 (communication device 6-2). Furthermore, the communication control circuit 64 inserts a response signal into the empty container CT2, with the host controller 4 as the destination. In this way, the communication frame FR is updated. Then, the communication device 6-1 transmits the updated communication frame FR to the communication device 6-2.

[0062] In the communication device 6-2, data extraction and writing operations for the container CT1 are performed by the same process as in the communication device 6-1. The communication control circuit 64 converts the destination information in the container header CH of the container CT1 from the identification information ID2 to the identification information ID0. The communication control circuit 64 also inserts a response signal into the container CT1 with the host controller 4 as the destination. In this manner, the communication frame FR is updated. Then, the communication device 6-2 transmits the updated communication frame FR to the communication device 6-3.

[0063] The processes in the communication devices 6-3 and 6-4 are substantially the same as those in the communication devices 6-1 and 6-2, except that the containers CT and the identification information ID are different. The communication device 6-4 transmits the communication frame FR updated as described above to the host controller 4.

[0064] This completes the process of the first transmission example of the first embodiment.

[0065] As a result of the above, the same write data is written to the communications devices 6-1 and 6-2, and the same write data is written to the communications devices 6-3 and 6-4.

[0066] Although not shown in FIG. 5, in the container CT into which the response signal is inserted by the communication control circuit 64 of each communication device 6, for example, the communication control circuit 64 may insert an identification information ID corresponding to the communication device 6 as source information.

[0067] 1.2.3 Second transmission example of the first embodiment In the above-described first transmission example, the destination information of each of the containers CT1 and CT3 includes two identification information IDs, but this is not limited thereto. The destination information of one container CT may include three or more identification information IDs.

[0068] A second transmission example of the communication frame FR in the ring connection according to the first embodiment will be described with reference to Fig. 6. Fig. 6 is a diagram showing a second transmission example of the communication frame in the ring connection of the communication system according to the first embodiment. Fig. 6 shows containers CT1 to CT4 included in the communication frame FR when the processes in each communication device 6 are executed in order.

[0069] The host controller 4 transmits, for example, to the communications device 6-1, a communications frame FR in which data corresponding to the identification information ID1 (communications device 6-1), the identification information ID2 (communications device 6-2), the identification information ID3 (communications device 6-3), and the identification information ID4 (communications device 6-4) are stored in the container CT1, and the containers CT2, CT3, and CT4 are in an empty state (Null). For example, a command, an address, and write data for requesting the communications devices 6-1, 6-2, 6-3, and 6-4 to write the same write data are stored in the container CT1.

[0070] The process by the communication device 6-1 is similar to the process by the communication device 6-1 in the first transmission example, except for the conversion of the destination information of the container CT1. The destination information of the container header CH of the container CT1 is converted from the identification information ID1, ID2, ID3, and ID4 to the identification information ID2, ID3, and ID4 by the communication control circuit 64. As a result, the data included in the container CT1 transmitted from the transmitter 62 of the communication device 6-1 becomes data corresponding to the identification information ID2, ID3, and ID4 (the communication devices 6-2, 6-3, and 6-4).

[0071] The process by the communication device 6-2 is similar to the process by the communication device 6-2 in the first transmission example, except for the conversion of the destination information of the container CT1. The destination information of the container header CH of the container CT1 is converted from the identification information ID2, ID3, and ID4 to the identification information ID3 and ID4 by the communication control circuit 64. As a result, the data included in the container CT1 transmitted from the transmitter 62 of the communication device 6-2 becomes data corresponding to the identification information ID3 and ID4 (communication devices 6-3 and 6-4). The response signal by the communication device 6-2 is inserted into the empty container CT3.

[0072] The process by the communication device 6-3 is similar to the process by the communication device 6-3 in the first transmission example, except for extracting data from the container CT1. The destination information of the container header CH of the container CT1 is converted from the identification information ID3 and ID4 to the identification information ID4 by the communication control circuit 64. As a result, the data included in the container CT1 transmitted from the transmitter 62 of the communication device 6-3 becomes data corresponding to the identification information ID4 (communication device 6-4). The response signal by the communication device 6-3 is inserted into the empty container CT3.

[0073] The process by the communication device 6-4 is similar to the process by the communication device 6-4 in the first transmission example, except for extracting data from the container CT1. The destination information in the container header CH of the container CT1 is converted from identification information ID4 to identification information ID0 by the communication control circuit 64. The response signal by the communication device 6-4 is inserted into the container CT1 from which the data was extracted.

[0074] This completes the process in the second transmission example of the first embodiment.

[0075] Furthermore, as a result of the above, the same write data is written to the communications devices 6-1, 6-2, 6-3, and 6-4.

[0076] 1.3 Effects According to the communication system 1 according to the first embodiment, it is possible to improve communication processing capacity. The effects of the communication system 1 according to the first embodiment will be described below.

[0077] According to the communication system 1 according to the first embodiment, the destination information of each container CT may include a plurality of communication devices 6. This makes it possible to suppress a decrease in the efficiency of use of the communication frame FR when the same data is transmitted from the host controller 4 to a plurality of communication devices 6, for example. This makes it possible to improve the communication processing capacity.

[0078] Additionally, in a communication system in which the destination information for each container includes only one communication device, in order to transmit the same data from the host controller to multiple communication devices, the same number of containers as the number of the multiple communication devices is required. As a result, for example, when applying the RAID (Redundant Arrays of Independent Disks) 1 method to write the same write data to multiple communication devices, multiple containers containing substantially the same data (commands and write data) but with different information regarding the destination are transmitted. This can reduce the efficiency of communication frame usage.

[0079] According to the first embodiment, each container CT can include multiple communication devices 6 as destination information. As a result, for example, when writing certain write data by applying the RAID 1 method, the host controller 4 can set the destination information of the container CT in which the write data is stored to multiple communication devices 6. Therefore, when writing the same write data to multiple communication devices 6, the transmission of multiple containers CT each containing approximately the same data is suppressed. Therefore, a decrease in the efficiency of use of the communication frame FR is suppressed.

[0080] 2. Modification of the First Embodiment Next, a modification of the first embodiment will be described.

[0081] In the above-described first embodiment, a case has been described in which one identification information ID is included as source information in the container header CH of each container CT. However, this is not limited to this. The container header CH of each container CT may include multiple identification information IDs as source information.

[0082] The configuration of the communication system 1 according to the modification of the first embodiment can be the same as the configuration of the communication system according to the first embodiment. In the following, a communication frame FR and a transmission example in the modification of the first embodiment will be described.

[0083] 2.1 Communication Frame In the communication frame FR according to the modification of the first embodiment, the source information of the container header CH may include, for example, identification information ID0 of the host controller 4, or identification information ID of one or more of the multiple communication devices 6. The destination information and CP identifier in the container header CH according to the modification of the first embodiment, and the configuration of the container payload CP are similar to those according to the first embodiment.

[0084] 2.2 Operation An operation example of the communication system 1 will be described below. First, extraction of data of the container CT by each communication device 6 in the modified example of the first embodiment will be described. Then, a transmission example in the modified example of the first embodiment will be described. Note that in the transmission example related to the modified example of the first embodiment, an example in which a container CT including data requesting a write operation is transmitted will be shown.

[0085] 2.2.1 Communication Device Operation An example of the operation of the communication device 6 will be described with reference to Fig. 7. Fig. 7 is a flowchart for explaining an example of the operation of a communication device in a communication system according to a modification of the first embodiment. Specifically, Fig. 7 is an example of processing on a communication frame FR by the communication device 6 according to the modification of the first embodiment.

[0086] The process of S10 is the same as the process of S0 in the first embodiment. If the destination information in the container header CH of each container CT of the communication frame FR includes the identification information ID of the communication device 6 that received the communication frame FR (S10; YES), the process proceeds to S11. If the destination information does not include the identification information ID of the communication device 6 (S10; NO), the process proceeds to S18.

[0087] The processes of S11 to S14 are respectively similar to the processes of S1 to S3 and S5 in the first embodiment. After the process of S13, the process proceeds to S15. After the process of S14, the process proceeds to S18.

[0088] The communication control circuit 64 determines whether or not there is a container CT included in the communication frame FR in which a response signal identical to the response signal of the communication device 6 (operating communication device 6) that performed the data extraction has already been inserted (S15).

[0089] If there is no container CT in which the same response signal as the response signal of the operational communication device 6 is inserted (S15; NO), the same process as the process of S4 in the first embodiment is executed (S16). Then, the process proceeds to S18.

[0090] If there is a container CT in which a response signal identical to the response signal of the operational communication device 6 has already been inserted (S15; YES), the communication control circuit 64 converts the source information of the container CT into source information to which the identification information ID of the operational communication device 6 has been added (S17). That is, the communication control circuit 64 converts the source information of the container CT into source information to which the identification information ID of the operational communication device 6 has been added to the source information received by the receiving unit 61. This makes it possible to confirm that the data of this container CT is a response signal from a plurality of communication devices 6 identified by the converted source information. Then, the process proceeds to S18.

[0091] The communication control circuit 64 executes a process of inserting data waiting to be transmitted (S18). The process of inserting data waiting to be transmitted (S18) is similar to the processes of S6 to S8 in the first embodiment.

[0092] The communication frame FR updated in the above manner is transmitted from the transmitting unit 62 of the active communication device 6. Then, the process ends.

[0093] In the above-described operation of the communications device 6, the processes of S10 to S13 and S15 to S17 can be called an excerpt process, and the processes of S14 and S18 can be called an insertion process.

[0094] Instead of the above-mentioned process of S15, it may be determined whether or not there is a container CT in which a response signal has already been inserted among the containers CT included in the communication frame FR. If there is no container CT in which a response signal has already been inserted, the same process as S16 is executed. If there is a container CT in which a response signal from another transmission source has already been inserted, the response signal is inserted, and the transmission source information is converted as in S17. In this case, multiple response signals are inserted into one container CT. Each of the multiple response signals inserted into one container CT may be determined by the host controller 4 as to which communication device 6 among the multiple communication devices 6 it is a response signal from, for example, based on the order of the inserted response signals and the order of the transmission source information.

[0095] 2.2.2 Transmission example of the modified example of the first embodiment A transmission example of a communication frame FR in a ring connection according to a modification of the first embodiment will be described with reference to Fig. 8. Fig. 8 is a diagram showing a transmission example of a communication frame in a ring connection of a communication system according to a modification of the first embodiment. Fig. 8 shows containers CT1 to CT4 included in a communication frame FR when processing is performed by each communication device 6 in order. Note that the following transmission example shows, as an example, a case in which each communication device 6 that has extracted data transmits the same response signal to the host controller 4. Also, in Fig. 8, transmission source information is shown in parentheses for the container CT into which the response signal is inserted.

[0096] The host controller 4 transmits a communication frame FR similar to the second transmission example of the first embodiment to the communication device 6-1, for example.

[0097] The process by the communication device 6-1 is substantially similar to the process by the communication device 6-1 in the second transmission example of the first embodiment. In the communication device 6-1, the communication control circuit 64 converts the transmission source information of the container CT2 into which the response signal is inserted, into the identification information ID1.

[0098] The process by the communication device 6-2 is similar to the process by the communication device 6-2 in the second transmission example of the first embodiment, except for the insertion of the response signal. In the communication device 6-2, the communication control circuit 64 converts the source information of the container CT2, into which the response signal has already been inserted, from the identification information ID1 to the identification information ID1 and ID2. Note that the communication device 6-2 does not insert the response signal.

[0099] The process by the communication device 6-3 is similar to the process by the communication device 6-3 in the second transmission example of the first embodiment, except for the insertion of the response signal. In the communication device 6-3, the communication control circuit 64 converts the source information of the container CT2 into which the response signal is inserted from the identification information ID1 and ID2 to the identification information ID1, ID2, and ID3. Note that the communication device 6-3 does not insert the response signal.

[0100] The process by the communication device 6-4 is similar to the process by the communication device 6-4 in the second transmission example of the first embodiment. The communication control circuit 64 converts the source information of the container CT1 into which the response signal is inserted, into the identification information ID4. The communication control circuit 64 of the communication device 6-4 may transmit the response signal by the container CT2 instead of the container CT1. In this case, the communication control circuit 64 converts the source information of the container CT2 into which the response signal is inserted, from the identification information ID1, ID2, and ID3, into the identification information ID1, ID2, ID3, and ID4.

[0101] This completes the process in the transmission example according to the modification of the first embodiment.

[0102] The modified example of the first embodiment also provides the same effects as the first embodiment.

[0103] According to a modification of the first embodiment, each container CT may include multiple identification information IDs as transmission source information. This, for example, suppresses a decrease in the efficiency of use of the communication frame FR in transmitting data such as a response signal from each communication device 6 to the host controller 4.

[0104] 3. Second embodiment In the first embodiment, an example has been shown in which each container CT includes multiple transmission destinations, and the same data is written to multiple communication devices 6, but this is not limited to the example. When writing the same data to multiple communication devices 6, for example, a copy command may be used that instructs data stored in one communication device 6 to be copied to a communication device 6 other than the communication device 6. In the following, regarding the configuration of the second embodiment, the description of the configuration equivalent to that of the first embodiment will be omitted or simplified, and the configuration different from the first embodiment will be mainly described.

[0105] The configurations of the system board 2, connector 3, host controller 4, communication device 6, substrate 7, and multiple communication paths 8 according to the second embodiment are similar to those according to the first embodiment and the modified example of the first embodiment. In the following, a copy command and a transmission example in the communication system 1 according to the second embodiment will be mainly described.

[0106] 3.1 Copy command The copy command according to the second embodiment will be described.

[0107] The copy command is, for example, a command for instructing to copy the same data as that stored in the source communication device 6 to the destination communication device 6. The copy command is, for example, included in the packet header PH of the container payload CP. The identification information ID of the source communication device 6 and the identification information ID of the destination communication device 6 are, for example, included in the packet payload PP. In addition, the address of the data stored in the source communication device 6 is also, for example, included in the packet payload PP.

[0108] It should be noted that the container CT including the copy command is transmitted to the communication device 6 of the copy source, with the identification information ID of the communication device 6 of the copy source as the transmission destination information.

[0109] 3.2 Operation An operation example of the communication system 1 according to the second embodiment will be described below. First, an operation based on a copy command by each communication device 6 in the second embodiment will be described. Then, a first transmission example and a second transmission example in the second embodiment will be described.

[0110] 3.2.1 Communication device operation based on copy command An example of the operation of the communication device 6 will be described with reference to Fig. 9. Fig. 9 is a flowchart for explaining an example of the operation of the communication device in the communication system according to the second embodiment. Specifically, Fig. 9 is an example of processing on a communication frame FR by the communication device 6 according to the second embodiment.

[0111] The process of S20 is the same as the process of S0 in the operation in the first embodiment and the process of S10 in the operation in the modified example of the first embodiment. If the destination information in the container header CH of each container CT of the communication frame FR includes the identification information ID of the communication device 6 that received the communication frame FR (S20; YES), the process proceeds to S21. If the destination information does not include the identification information ID of the communication device 6 (S20; NO), the process proceeds to S26.

[0112] The process of S21 is similar to the process of S1 in the operation in the first embodiment and the process of S11 in the operation in the modified example of the first embodiment. After the process of S21, the process proceeds to S22.

[0113] The communication control circuit 64 determines whether the extracted data (e.g., the packet header PH of the container payload CP) includes a copy command (S22). If the extracted data includes a copy command (S22; YES), the process proceeds to S23. If the extracted data does not include a copy command (S22; NO), the process proceeds to S25.

[0114] If the extracted data includes a copy command (S22; YES), the operating communication device 6 reads the data from the NAND memory 602 and adds the read data to the data waiting to be sent (S23). More specifically, the CPU 66 controls the NAND controller 68 based on the copy command and the address to execute a read operation on the NAND memory 602. As a result, the data stored in the copy source communication device 6 is read. The communication control circuit 64 adds the read data to the data waiting to be sent of the operating communication device 6. Note that, when the data extraction is executed as described above, if there is no data waiting to be sent in the operating communication device 6, the communication control circuit 64 sets the read data as the data waiting to be sent. Then, the process proceeds to S24. Note that, in the process of (S23), the process may proceed to the process of (S24) after a certain time has elapsed since the start of the data reading, for example, without waiting for the completion of the data reading and the addition to the data waiting to be sent. Furthermore, in the process of (S23), if reading of the data and adding it to the data waiting to be sent is completed before a certain period of time has elapsed, the process may proceed to the process of (S24) at that point.

[0115] The communication control circuit 64 erases the data of the target container CT and inserts a response signal (S24), similar to the processing of S5 in the first embodiment and S14 in the modified example of the first embodiment.

[0116] If the extracted data does not include a copy command (S22; NO), each communication device 6 executes, for example, the same processing as that included in the processing for the extracted data in the first embodiment and the modification of the first embodiment (S25). For example, the processing of S2 to S5 in the first embodiment or the processing of S12 to S17 in the modification of the first embodiment is executed. Then, the processing proceeds to S26.

[0117] The communication control circuit 64 executes a process of inserting data waiting to be transmitted (S26). More specifically, first, the same processes as S6 and S7 in the first embodiment are executed. Also, if it is determined that the extracted data includes a copy command (S22; YES), the communication control circuit 64 converts the destination information of the empty container CT into the identification information ID of the communication device 6 of the copy destination in a process corresponding to S8 in the first embodiment. Also, the communication control circuit 64 inserts the data waiting to be transmitted, including the data read in S23, together with a write request for the data, into the container CT whose destination information has been converted as described above. On the other hand, if it is determined that the extracted data does not include a copy command (S22; NO), the same process as S8 in the first embodiment is executed.

[0118] The communication frame FR updated in the above manner is transmitted from the transmitting section 62. Then, the process ends.

[0119] In the above-described operation of the communications device 6, the processes of S20 to S23 are included in the excerpt process. The processes of S24 and S26 are included in the insertion process. Note that in the process of S25, processes included in the excerpt process and the insertion process may be executed.

[0120] 3.2.2 First transmission example A first transmission example of a communication frame FR in a ring connection according to the second embodiment will be described with reference to Fig. 10. Fig. 10 is a diagram showing a first transmission example of a communication frame in a ring connection of a communication system according to the second embodiment. Fig. 10 shows containers CT1 to CT4 included in a communication frame FR when processes are executed in order by each communication device 6.

[0121] The host controller 4 transmits, for example, to the communications device 6-1, a communication frame FR in which data including a copy command for identification information ID1 (communications device 6-1) is stored in container CT1 and containers CT2, CT3, and CT4 are empty (Null). Note that in the container CT1 of FIG. 10, the target of the copy command is shown in parentheses. Also in FIG. 10, the copy command is shown as "identification information ID of the communications device 6 as the copy source to identification information ID of the communications device 6 as the copy destination." In the example of FIG. 10, the copy command is a command that instructs to copy data stored in the communications device 6-1 to the communications device 6-3.

[0122] In the communication device 6-1, data extraction from the container CT1 is executed. Also, based on the copy command, a read operation is executed on the NAND memory 602 of the communication device 6-1. The communication control circuit 64 converts the destination information of the empty container CT2 into identification information ID3 of the copy destination communication device 6-3. Also, the communication control circuit 64 inserts the data read based on the copy command as write data into the empty container CT2 together with a write request. Also, the communication control circuit 64 inserts a response signal into the container CT1 with the host controller 4 as the destination. Then, the communication device 6-1 transmits the updated communication frame FR to the communication device 6-2.

[0123] In the communications device 6-2, neither data extraction nor updating of the communications frame FR is executed, and the communications device 6-2 transmits to the communications device 6-3 a communications frame FR having the same contents as the received communications frame FR.

[0124] In the communication device 6-3, data is extracted from the container CT2. Furthermore, a write operation is performed on the NAND memory 602 of the communication device 6-3 based on the extracted data. As a result, the data read from the communication device 6-1 is copied to the communication device 6-3 based on the copy command. Furthermore, the communication control circuit 64 inserts a response signal into the container CT2 with the host controller 4 as the destination. Then, the communication device 6-3 transmits the updated communication frame FR to the communication device 6-4.

[0125] The communications device 6-4 does not extract data or update the communications frame FR, and transmits to the host controller 4 a communications frame FR having the same contents as the received communications frame FR.

[0126] This completes the process in the first transmission example of the second embodiment.

[0127] 3.2.3 Second transmission example A second transmission example of a communication frame FR in a ring connection according to the second embodiment will be described with reference to Fig. 11 and Fig. 12. Fig. 11 and Fig. 12 are diagrams showing a second transmission example of a communication frame in a ring connection of a communication system according to the second embodiment. Fig. 11 and Fig. 12 show containers CT1 to CT4 included in a communication frame FR when processes are executed in order by each communication device 6.

[0128] 11, the host controller 4 transmits, for example, to the communications device 6-1, a communication frame FR in which data including a copy command for identification information ID4 (communications device 6-4) is stored in container CT1 and containers CT2, CT3, and CT4 are in an empty state (Null). Note that in the container CT in FIG. 11, the target of the copy command is indicated in parentheses, as in FIG. 10. In the example of FIG. 11, the copy command is a command that instructs the communications device 6-4 to copy the data stored in the communications device 6-4 to the communications device 6-1.

[0129] The communications devices 6-1 to 6-3 do not extract data and do not update the communications frames FR. As a result, the communications devices 6-1 to 6-3 transmit, to the communications devices 6-2 to 6-4, communications frames FR having the same contents as the communications frames FR they received.

[0130] In the communication device 6-4, data extraction from the container CT1 is executed. Also, based on the copy command, a read operation is executed on the NAND memory 602 of the communication device 6-4. The communication control circuit 64 converts the destination information of the empty container CT2 into the identification information ID1 of the copy destination communication device 6-1. Also, the communication control circuit 64 inserts the data read based on the copy command as write data into the empty container CT2 together with a write request. Also, the communication control circuit 64 inserts a response signal into the container CT1 with the host controller 4 as the destination. Then, the communication device 6-4 transmits the updated communication frame FR to the host controller 4.

[0131] The host controller 4 executes processing on, for example, a container CT including data corresponding to the host controller 4 among the communication frames FR received by the host controller 4. In addition, when the communication frame FR received by the host controller 4 includes a container CT in which data destined for the communication device 6 is stored, the host controller 4 transmits, for example, a communication frame FR including a container CT in which the data corresponding to the communication device 6 is stored, to the communication device 6-1. In the example shown in FIG. 12, the host controller 4 transmits data included in the container CT2 transmitted from the communication device 6-4 in FIG. 11 to the communication device 6-1. More specifically, the host controller 4 transmits, for example, to the communication device 6-1 a communication frame FR in which the containers CT1, CT3, and CT4 are in an empty state (Null) and data corresponding to the identification information ID1 (communication device 6-1) is stored in the container CT2.

[0132] In the communication device 6-1, the data of the container CT2 is extracted and written based on the data of the container CT2. As a result, the data read from the communication device 6-4 is copied to the communication device 6-1 based on the copy command. In addition, the communication control circuit 64 inserts a response signal into the container CT2 with the host controller 4 as the destination. Then, the communication device 6-1 transmits the updated communication frame FR to the communication device 6-2.

[0133] After the data is copied as described above, the communications devices 6-2 to 6-4 do not extract data and do not update the communications frame FR in the process described with reference to Fig. 12. As a result, the communications device 6-4 transmits to the host controller 4 a communications frame FR having the same contents as the received communications frame FR.

[0134] This completes the process in the second transmission example of the second embodiment.

[0135] The second embodiment also provides the same effects as the first embodiment. That is, the second embodiment also suppresses the transmission of multiple containers each including substantially the same data, and suppresses a decrease in the usage efficiency of communication frames.

[0136] 4. Third embodiment In the first and second embodiments, examples of improving communication processing capacity by suppressing a decrease in the efficiency of use of communication frames when writing the same data to multiple communication devices have been shown, but the present invention is not limited to this. In the third embodiment, a decrease in processing capacity due to interruption of communication is suppressed by enabling data transfer to other communication devices in a state in which some communication devices among multiple communication devices are disabled based on a blocking command to the some communication devices. In the following, regarding the configuration of the third embodiment, explanations of the configurations equivalent to those of the first embodiment, the modified example of the first embodiment, and the second embodiment will be omitted, and configurations different from those of the first embodiment, the modified example of the first embodiment, and the second embodiment will be mainly described.

[0137] The configurations of the system board 2, connector 3, host controller 4, substrate 7, and multiple communication paths 8 according to the third embodiment are similar to those of the first embodiment, the modified example of the first embodiment, and the second embodiment.

[0138] In each communication device 6 according to the third embodiment, the NAND memory 602 is driven by a dedicated power supply different from the power supply for driving other components in the communication device 6. Each NAND memory 602 is mounted using a connecting member such as a connector or a socket that makes the NAND memory 602 removable. The configurations of the receiving unit 61, the transmitting unit 62, the protocol conversion unit 63, the internal bus 65, the CPU 66, the DRAM controller 67, the NAND controller 68, the SRAM 69, the DRAM 601, and the NAND memory 602 in the communication device 6 according to the third embodiment are similar to those of the first embodiment, the modified example of the first embodiment, and the second embodiment, except for the above-mentioned power supply and mounting method.

[0139] In the following, a shutdown command and a transmission example in the communication system according to the third embodiment will be mainly described.

[0140] 4.1 Blocking Command The shutdown command according to the third embodiment will be described.

[0141] The cutoff command is a command for instructing to logically cut off the connection between the communication control circuit 64 and the NAND memory 602 in the communication device 6. The cutoff command is included in, for example, the packet header PH of the container payload CP. In the following description, cutting off the connection between the communication control circuit 64 and the NAND memory 602 by the cutoff command is referred to as deactivating. In the deactivated communication device 6, the connection between the communication control circuit 64 and the NAND memory 602 is cut off, but the communication device 6 is configured to be able to transmit the communication frame FR via the receiving unit 61 and the transmitting unit 62.

[0142] The destination information of the container CT including the shutdown command is set as the identification information ID of the communication device 6 to be deactivated. As a result, the communication device 6 that is the destination of the container CT including the shutdown command is deactivated by, for example, the communication control circuit 64.

[0143] 4.2 Operation An operation example of the communication system 1 according to the third embodiment will be described below. First, an operation based on a shutdown command by each communication device 6 in the third embodiment will be described. Then, a transmission example in the third embodiment will be described.

[0144] 4.2.1 Communication Device Behavior Based on Shutdown Command An example of the operation of the communication device 6 will be described with reference to Fig. 13. Fig. 13 is a flowchart for explaining an example of the operation of the communication device in the communication system according to the third embodiment. Specifically, Fig. 13 is an example of processing on a communication frame FR by the communication device 6 according to the third embodiment.

[0145] The process of S30 is the same as the process of S0 in the operation in the first embodiment, the process of S10 in the operation in the modified example of the first embodiment, and the process of S20 in the operation in the second embodiment. If the identification information ID of the communication device 6 that received the communication frame FR is included as destination information in the container header CH of each container CT of the communication frame FR (S30; YES), the process proceeds to S31. If the identification information ID of the communication device 6 is not included (S30; NO), the process for the communication frame FR ends.

[0146] In each communication device 6, for example, the communication control circuit 64 determines whether its own communication device 6 is a deactivated communication device 6 (S31). If the communication device 6 is a deactivated communication device 6 (S31; YES), the process proceeds to S36. If the communication device 6 is not a deactivated communication device 6 (S31; NO), the process proceeds to S32.

[0147] The process of S32 is similar to the process of S1 in the operation of the first embodiment, the process of S11 in the operation of the modified example of the first embodiment, and the process of S21 in the operation of the second embodiment. Then, the process proceeds to S33.

[0148] The communication control circuit 64 determines whether the data extracted in the process of S32 (for example, the packet header PH of the container payload CP) includes a shutdown command (S33). If the data does not include a shutdown command (S33; NO), the process proceeds to S37.

[0149] If the data includes a disconnection command (S33; YES), for example, the CPU 66 disconnects the connection between the communication control circuit 64 and the NAND controller 68 and the NAND memory 602 via the internal bus 65 based on the disconnection command included in the extracted data (S34). This deactivates the communication device 6. Then, the process proceeds to S35.

[0150] In the deactivated communication device 6, the communication control circuit 64 inserts a response signal INACT indicating that the communication device 6 is in an inactivated state, with the host controller 4 as the destination (S35). More specifically, the communication control circuit 64 in the deactivated communication device 6, for example, discards the data of the target container CT and inserts the response signal INACT into the container payload CP of the target container CT. Then, the communication control circuit 64 converts, for example, the destination information of the target container CT into the identification information ID0 of the host controller 4. Then, the processing for the communication frame FR is terminated.

[0151] Note that the communication device 6 that is deactivated by the shutdown command completes transmission of the data waiting to be transmitted stored in the communication device 6 before receiving a container CT including the shutdown command, for example, in response to an instruction from the host controller 4. As a result, in the operation of the communication device 6 according to the third embodiment, a process of inserting data waiting to be transmitted by the deactivated communication device 6 is not performed.

[0152] If the communication device 6 is an inactivated communication device 6 (S31; YES), for example, the communication control circuit 64 does not extract data from the container payload CP of the container CT, and inserts a response signal INACT into the container CT including the identification information ID of the communication device 6 (S36). More specifically, the communication control circuit 64, for example, discards the data of the container CT, and inserts the response signal INACT into the container payload CP of the container CT. Then, the communication control circuit 64 converts, for example, the destination information of the container CT into the identification information ID0 of the host controller 4. That is, the process of (S36) is substantially the same as the process of (S35). Then, the process for the communication frame FR ends.

[0153] If the data extracted in the process of S32 does not include a shutdown command (S33; NO), each communication device 6 performs the same process as the process for the extracted data in, for example, the first embodiment, the modified example of the first embodiment, and the second embodiment (S37). That is, for example, the processes of S2 to S8 in the first embodiment, the processes of S12 to S18 in the modified example of the first embodiment, or the processes of S22 to S26 in the second embodiment are executed. Then, the process for the communication frame FR ends.

[0154] The communication frame FR updated in the above manner is transmitted from the transmitting section 62. Then, the process ends.

[0155] In the above-described operation of the communications device 6, the processes of S30 to S34 are included in the excerpt process. The processes of S35 and S36 are included in the insert process. Note that in the process of S37, processes included in the excerpt process and the insert process may be executed.

[0156] 4.2.2 Example of sending a communication frame Next, a transmission example of a communication frame FR in a ring connection according to the third embodiment will be described with reference to Fig. 14. Fig. 14 is a diagram showing a transmission example of a communication frame in a ring connection of a communication system according to the third embodiment. Fig. 14 shows containers CT1 to CT4 included in a communication frame FR when processes are executed in order by each communication device 6.

[0157] The host controller 4 transmits, for example, to the communication device 6-1, a communication frame FR in which data corresponding to the identification information ID1 (communication device 6-1) is stored to the container CT1, data corresponding to the identification information ID2 (communication device 6-2) is stored to the container CT2, a shutdown command and data corresponding to the identification information ID3 (communication device 6-3) is stored to the container CT3, and data corresponding to the identification information ID4 (communication device 6-4) is stored to the container CT4. In addition, in FIG. 14, the shutdown command is indicated as "DISCON" in parentheses. In addition, in FIG. 14, the response signal INACT is indicated as "INACT" in parentheses. In addition, in the example of FIG. 14, when the host controller 4 transmits the communication frame FR, all the communication devices 6 are not deactivated.

[0158] In the communication device 6-1, data of the container CT1 is extracted, and an operation based on the extracted data is executed. In addition, the communication control circuit 64, for example, inserts a response signal to the host controller 4 into the container CT1. In this manner, the communication frame FR is updated. Then, the communication device 6-1 transmits the updated communication frame FR to the communication device 6-2.

[0159] The operation of the communication device 6-2 is the same as that of the communication device 6-1 in the transmission example of the third embodiment, except that processing for the container CT2 is executed. As a result, the communication frame FR is updated. Then, the communication device 6-2 transmits the updated communication frame FR to the communication device 6-3.

[0160] When the communication device 6-3 receives the communication frame FR transmitted from the communication device 6-2, the communication device 6-3 is not deactivated. As a result, the data of the container CT3 is extracted in the communication device 6-3. Furthermore, the CPU 66 logically cuts off the connection between the communication control circuit 64 and the NAND controller 68 based on the cutoff command included in the container CT3. As a result, the communication device 6-3 is deactivated. Furthermore, the communication control circuit 64 inserts a response signal INACT into the container CT3 with the host controller 4 as the destination.

[0161] The operation of the communication device 6-4 is similar to the operation of the communication devices 6-1 and 6-2 in the transmission example of the third embodiment, except that processing for the container CT4 is executed. As a result, the communication frame FR is updated. Then, the communication device 6-4 transmits the updated communication frame FR to the host controller 4.

[0162] This completes the process in the transmission example of the third embodiment.

[0163] The communication device 6-3, which has been deactivated by the above operation, will thereafter, when a container CT containing data corresponding to the communication device 6-3 is transmitted, for example, will not extract the data, will discard the data, and will insert a response signal INACT to the host controller 4.

[0164] With the above-mentioned configuration, it is possible to deactivate some of the communication devices 6 among the multiple communication devices 6 connected in the ring connection without interrupting the transmission of the communication frame FR in the ring connection. In addition, in the deactivated communication device 6, the connection between the NAND controller 68 and the NAND memory 602 is cut off, but the transfer of the communication frame FR via the receiving unit 61 and the transmitting unit 62 is executable. As a result, for example, by stopping the supply of power to the NAND memory 602 in the cut-off communication device 6 and maintaining the supply of power to the other components, it is possible to replace the NAND memory 602 of the communication device 6 without interrupting the transmission of the communication frame FR. Therefore, the third embodiment can also improve the communication processing capacity, similarly to the first and second embodiments.

[0165] 5. Other In the above-described first embodiment, the modified example of the first embodiment, the second embodiment, and the third embodiment, the communication device 6 is a memory device including a NAND flash memory, but the communication device 6 is not limited to a memory device. In addition, the multiple communication devices 6 mounted on one device card 5 may be different from each other.

[0166] Although some embodiments of the present invention have been described, these embodiments are presented as examples and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their modifications are included in the scope and spirit of the invention, and are included in the scope of the invention and its equivalents described in the claims. [Explanation of symbols]

[0167] 1...communication system, 2...system board, 3...connector, 4...host controller, 5...device card, 6...communication device, 7...substrate, 8...communication path, 41...connector interface circuit, 42...device interface circuit, 60...circuit, 61...receiving unit, 62...transmitting unit, 63...protocol conversion unit, 64...communication control circuit, 65...internal bus, 66...CPU, 67...DRAM controller, 68...NAND controller, 69...SRAM, 601...DRAM, 602...NAND memory, CH...container header, CP...container payload, CT...container, FR...communication frame, PH...packet header, PK...packet, PP...packet payload.

Claims

1. A communication device connected in a ring shape together with a host controller and a plurality of devices via a communication path, a receiving circuit for receiving a communication frame of a serial signal having a plurality of containers including a first container from the communication path; a first circuit capable of inserting and removing data into and from at least one of the plurality of containers; a transmission circuit that transmits the communication frame based on a processing result of the first circuit to the communication path; Equipped with each of the plurality of containers is capable of transferring data to one or more of the host controller, the plurality of devices, and the communication device as a transmission destination; after the receiving circuit receives a first communication frame having the first container including the communication device and a first device of the plurality of devices as destinations, the transmitting circuit is configured to transmit a second communication frame having the first container, excluding the communication device from destinations of the first container and including the first device as a new destination; Communication devices.

2. a memory device coupled to the first circuit via a bus and configured to store data; a processor connected to the memory device via the bus; Further equipped with after the receiving circuit receives the first container including data relating to the communications device and a write operation of first data to the first device; the processor is configured to control writing of the first data to the memory device; the transmitting circuitry is configured to transmit the first container including data responsive to a write operation of the first data to the first device. The communication device of claim 1 .

3. After the receiving circuit receives the plurality of containers including the first container originating from the host controller, the transmitting circuit is configured to transmit a second container of the plurality of containers, the second container being different from the first container and including response data for the host controller; The communication device of claim 1 .

4. Each of the plurality of containers is capable of transferring data from two or more of the plurality of devices and the communication device as a transmission source. The communication device of claim 1 .

5. A communication device connected in a ring shape together with a host controller and a plurality of devices via a communication path, a receiving circuit for receiving a communication frame of a serial signal having a plurality of containers including a first container from the communication path; a first circuit capable of inserting and removing data into and from at least one of the plurality of containers; a memory device coupled to the first circuit and configured to store data; a transmission circuit that transmits the communication frame based on a processing result of the first circuit to the communication path; Equipped with Each of the plurality of containers is capable of transferring a copy command, a destination that is a copy source of the copy command, and a copy destination of the copy command; after the receiving circuit receives a first communication frame having the first container including the communication device as a destination and including the copy command, the first circuit is configured to read first data stored in the memory device; the transmission circuit is configured to transmit a second communication frame including a first device that is the copy destination among the plurality of devices as a transmission destination, and including second data requesting that the first data that has been read be written to the first device; Communication devices.

6. After the receiving circuit receives the first communication frame, the transmitting circuit is configured to transmit, in the second communication frame, the first container including a response signal to the copy command, and a second container among the plurality of containers, the second container being different from the first container and including the second data.

6. A communication device according to claim 5.

7. A communication device connected in a ring shape together with a host controller and a plurality of devices via a communication path, a receiving circuit for receiving a communication frame of a serial signal having a plurality of containers including a first container from the communication path; a first circuit capable of inserting and removing data into and from at least one of the plurality of containers; a memory device coupled to the first circuit and configured to store data; Equipped with Each of the plurality of containers is capable of transmitting a disconnect command to disconnect the memory device; after the receiving circuit receives a first communication frame having the first container including the communication device as a destination and including the shutdown command, the first circuit is configured to logically interrupt a connection between the first circuit and the memory device based on the interrupt command. Communication devices.

8. The memory device is configured to be removable via a connecting member.

8. A communication device according to claim 7.

9. a power supply for driving the receiving circuit and the first circuit is different from a power supply for driving the memory device; 9. The communication device of claim 8.

10. A communication device according to any one of claims 1 to 9; The host controller; the plurality of devices; the communication path connecting the communication device, the host controller, and the device in a ring shape; A communication system comprising:

Citation Information

Patent Citations

  • Communication system, device and communication method

    JP2021150878A