Controller with direct communication and redriver modes
A controller in communication systems dynamically switches between direct and redriver modes to efficiently route signals, ensuring point-to-point communication with target devices and transparent data distribution to non-targets, enhancing system performance.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- RENESAS ELECTRONICS AMERICA INC
- Filing Date
- 2022-05-06
- Publication Date
- 2026-05-01
AI Technical Summary
Existing communication systems struggle with efficient routing of signals between multiple devices, particularly in 1:N routing topologies, where direct communication paths are inefficient and redriver paths introduce delays, leading to suboptimal performance.
A controller dynamically switches between direct communication and redriver modes by identifying target devices based on data frame analysis, activating direct communication paths for target devices and redriver paths for others, using field-effect transistors and redriver circuits to manage communication efficiently.
This approach enables point-to-point communication with target devices while allowing non-target devices to receive data copies, reducing host device load and maintaining system transparency without introducing redrive delays, thus optimizing system performance.
Smart Images

Figure 0007854336000001 
Figure 0007854336000002 
Figure 0007854336000003
Abstract
Description
Technical Field
[0001] The present disclosure generally relates to a device, system, and method capable of routing (determining the path of) communication from a host device to a plurality of devices by means of dynamic switching between an analog switch mode and a re-driver mode.
Background Art
[0002] In some exemplary applications such as control systems or networks, a host device can control or manage a plurality of devices. The host device can be connected to the plurality of devices via a bus. The bus can facilitate the transmission of various types of signals for transmitting information or data between the host device and the plurality of devices. These signals can be transmitted to printed circuit board (PCB) traces in a one-to-many (e.g., 1:N) routing topology.
Summary of the Invention
[0003] In some examples, a device for routing communication between multiple devices is commonly described. This device may include logic circuits connected to a first device, a second device, and a third device. The device may further include a controller connected to the logic circuits and the first device. The controller may be configured to detect communication initiated from the first device to the target device between the second and third devices. The controller may be further configured to identify (distinguish) the second device as the target device. In response to identifying the second device as the target device, the controller may be further configured in the logic circuits to activate a direct communication path between the first and second devices, enabling the first device to communicate with the second device using direct communication mode. In response to identifying the second device as the target device, the controller may be further configured in the logic circuits to activate a redriver path between the first and third devices, enabling the first device to communicate with the third device using redriver mode.
[0004] In some examples, a system for routing communication between multiple devices is commonly described. The system may include a first device, a second device, a third device, a logic circuit, and a controller. The logic circuit may be connected to the first device, the second device, and the third device. The controller may be connected to the logic circuit and the first device. The controller may be configured to detect communication initiated from the first device to the target device between the second and third devices. The controller may be further configured to identify the second device as the target device. In response to identifying the second device as the target device, the controller may be further configured to activate a direct communication path between the first and second devices, enabling the first device to communicate with the second device using direct communication mode. In response to identifying the second device as the target device, the controller may be further configured to activate a redriver path between the first and third devices, enabling the first device to communicate with the third device using redriver mode.
[0005] In some examples, methods for routing communication between multiple devices are commonly described. This method may include detecting communication initiated from a first device to a target device between a second device and a third device. This method may further include identifying the second device as the target device. In response to identifying the second device as the target device, this method may further include activating a direct communication path between the first device and the second device, enabling the first device to communicate with the second device using direct communication mode. In response to identifying the second device as the target device, this method may further include activating a redriver path between the first device and the third device, enabling the first device to communicate with the third device using redriver mode.
[0006] Further features, structure, and operation of various embodiments are described in detail below with reference to the accompanying drawings. In the drawings, similar reference numerals indicate identical or functionally similar elements. [Brief explanation of the drawing]
[0007] [Figure 1] This figure shows an exemplary system that can implement a bridging device with an analog switch and a redriver mode in one embodiment. [Figure 2] This figure shows an exemplary implementation of the system shown in Figure 1, according to one embodiment. [Figure 3A] This figure shows an exemplary application in which the system shown in Figure 1 can be used in one embodiment. [Figure 3B] In one embodiment, this figure shows a timing diagram related to an exemplary application shown in Figure 3A. [Figure 4] In one embodiment, this is a flowchart illustrating the process of implementing a bridging device with an analog switch and a redriver mode. [Modes for carrying out the invention]
[0008] Figure 1 shows an exemplary system 100 that can implement a bridging device with analog switches and a redriver mode in one embodiment. System 100 may include a host device 102, an apparatus or integrated circuit 104, a device 110, and another device 120. The host device 102 may be connected to the integrated circuit 104, and the integrated circuit 104 may be connected to devices 110 and 120. The host device 102 may be a computer device, a server processor, a group of devices sharing a cluster, a circuit board, a chip package, or a virtual partition. In some examples, the host device 102 may be the host device of a control system, and devices 110 and 120 may be peripheral devices managed or controlled by the host device 102. In some examples, the host device 102 may be a network host or a master device of a network, and devices 110 and 120 may be peripheral or slave devices connected to the network. In some examples, the host device 102 may be connected to the integrated circuit 104 via a trace of a first set of communication buses, and the integrated circuit 104 may be connected to devices 110 and 120 via a trace of a second set of communication buses. Although one master device (e.g., the host device 102) and two slave devices (e.g., devices 110 and 120) are shown in Figure 1, it will be apparent to those skilled in the art that the methods and systems described herein are applicable to any number of master and slave devices.
[0009] The integrated circuit 104 may include a control circuit or controller 106 and control logic or logic circuits 108. The integrated circuit 104 may further include multiple interfaces or ports 109, where port A can connect to device 110 and port B can connect to device 120. In one example, the controller 106 may include a memory device (not shown) that can be configured to store mappings between addresses of devices 110 and 120 (e.g., lookup tables, databases, etc.) and ports 109 that can indicate different port assignments to different peripheral devices. In some examples, the controller 106 may be a microcontroller or standalone device that interfaces with a host device 102 and devices 110 and 120.
[0010] The logic circuit 108 may include an analog switch or switching element 112 connected to the device 110. The switching element 112 may be, for example, a field-effect transistor (FET). The controller 106 may be configured to activate the switching element 112 (e.g., by closing a first switch) to form or activate a direct communication path between the host device 102 and the device 110. For example, the controller 106 may send a control signal 111 to the switching element 112, which in turn activates or deactivates the switching element 112. The logic circuit 108 may further include a redriver circuit 114 connected to the device 110. The redriver circuit 114 may be a repeating integrated circuit (IC) configured to receive a signal, regenerate the received signal, and facilitate delayed transmission of the received signal. The controller 106 may be configured to enable or activate the redriver circuit 114 to form or activate a redriver path between the host device 102 and the device 110. For example, controller 106 can be configured to send control signal 113 to the redriver circuit, which in turn can activate or deactivate the redriver circuit 114. As an example, the redriver circuit may include a first channel and a second channel arranged to transmit signals in opposite directions. Each of the first and second channels may include components such as an equalizer or a buffer. To regenerate a signal, the redriver can receive and recover the signal and then redrive the recovered signal toward the destination (e.g., device 110). In the example shown in Figure 1, the redriver circuit 114 may be a bidirectional redriver, and can be configured to regenerate a signal and drive it in both directions (e.g., toward host device 102 and device 110). The regenerated signal output by the redriver may be a delayed version of the received or recovered signal.
[0011] The logic circuit 108 may include an analog switch or switching element 122 connected to device 120. The switching element 122 may be, for example, a field-effect transistor (FET). The controller 106 may be configured to activate the switching element 122 (e.g., by closing a second switch) to form or activate a direct communication path between the host device 102 and device 120. For example, the controller 106 may send a control signal 112 to the switching element 122, while a control signal 121 activates or deactivates the switching element 122. The logic circuit 108 may further include a redriver circuit 124 connected to device 120. The redriver circuit 124 may be configured to receive a signal, regenerate the received signal, and facilitate delayed transmission of the received signal. The controller 106 may be configured to enable or activate the redriver circuit 124 to form or activate a redriver path between the host device 102 and device 120. For example, the controller 106 can send a control signal 113 to the redriver circuit 114, which in turn can activate or deactivate the redriver circuit 114.
[0012] The controller 106 can be configured to detect communications 130 initiated from the host device 102 to device 110 between device 110 and device 120. In some examples, communications 130 may contain information or data and may be output by the host device 102 as data packets having a data frame structure, in accordance with how the communication bus is implemented in the system 100. In one example, to detect communications 130, the controller 106 can analyze the data frame structure of the data between communications 130 output from or initiated by the host device 102. For example, the controller 106 can be configured to identify transaction start, transaction stop, address phase, and frame format of the data frame structure. In an example, by identifying the transaction start within the data frame structure, it can be indicated that communications 130 is a request valid for a transaction, such as sending data to a target device. In an example where the controller 106 may include a memory device for storing lookup tables or mappings that map peripheral devices (e.g., devices 110, 120) to ports (e.g., port 109), the controller 106 can identify a target device between device 110 and device 120 by looking up addresses indicated by the address phase of the frame structure within the lookup tables or mappings.
[0013] In one example, the controller 106 can be configured to identify one of the devices 110, 120 as the target device indicated by the communication 130. Based on the identification of the target device, the controller 106 can be configured to activate the direct communication mode for the target device and the redriver mode for the remaining devices 110, 120 that are not identified as the target device. By selectively activating the direct communication mode and the redriver mode for different devices, the controller 106 can enable all devices to listen to traffic in the system 100, so that non-target devices can also receive copies of the data received by the target device.
[0014] Figure 2 shows an exemplary implementation of the system 100 shown in Figure 1 in one embodiment. In one example, data between communications 130 may include the address of a target device. Communications 130 can be distributed to devices 110 and 120 via a controller 106. Each of devices 110 and 120 can receive the target device address in communications 130 and compare its own address with the target device address. In the example shown in Figure 2, device 110 can determine that its own address matches the target device address in communications 130 and can send an acknowledgment 202 to the controller 106 via its assigned port (e.g., port A). The acknowledgment 202 may be, for example, an acknowledgment signal. In some examples, the controller 106 can receive the acknowledgment 202 from port A. In response to receiving the acknowledgment from port A, the controller 106 can retrieve the device assigned to port A (e.g., in memory, a database, a lookup table, etc.). In the example shown in Figure 2, device 110 is assigned to port A, which can indicate that acknowledgment 202 has been sent from device 110 to controller 106. Based on the fact that acknowledgment 202 is sent by device 110, controller 106 can determine that device 110 has an address that matches the target address in communication 130 and identify device 110 as the target device.
[0015] In response to identifying device 110 as the target device, controller 106 can activate a switching element 112 to activate a direct communication path between host device 102 and device 110. In the example shown in Figure 2, controller 106 can activate the switching element 112 by closing the switch. Activating the direct communication path between host device 102 and device 110 allows host device 102 to communicate with device 110 using a direct communication mode. The direct communication mode may be a point-to-point communication mode, allowing host device 102 to communicate directly with device 110 via a closed first switch (e.g., the activated switching element 112). Furthermore, in response to identifying device 110 as the target device, controller 106 can enable or activate a redriver circuit 124 to activate a redriver path between host device 102 and device 120. Activating the redriver path between host device 102 and device 120 allows host device 102 to communicate with device 120 using redriver mode. For example, redriver mode can extend the communication time between devices by receiving a signal, delaying the received signal, and outputting the delayed signal in a specific direction. For instance, controller 106 can control redriver 114 to output the delayed signal to either device 110 or host device 102.
[0016] Therefore, corresponding to identifying device 110 as the target device, the controller 106 and host device 102 can communicate with device 110 (e.g., the target device) using direct communication and with other devices using redriver mode. This selective communication method allows the host device 102 to send data to, for example, device 110 and device 120, while device 120 can receive data at a later time than device 110.
[0017] For example, the controller 106 can continue analyzing the data frame structure of the data transmitted between the host device 102 and device 110 until a transaction stop or other transaction termination symbol is detected or identified within the data frame structure (e.g., a repeat start within the I3C protocol). In response to detecting a transaction stop, the controller 106 can listen for or monitor new communications or transactions between the host device 102 and devices 110 and 120. For example, the controller 106 can detect new communications initiated between devices 110 and 120 from the host device 102 to a new target device. If the new target device is device 120, the controller 106 can deactivate the switching element 112 and the redriver circuit 124, or activate the switching element 122 and the redriver circuit to enable the host device 102 to communicate with device 120 (the new target device) using direct communication mode and with device 110 (the non-target device) using redriver mode. Therefore, the controller 106 can be configured to dynamically switch communication modes for individual managed devices or peripheral devices within the system 100.
[0018] Figure 3A shows an exemplary application in which the system shown in Figure 1 can be utilized in one embodiment. The exemplary system 300 is shown in Figure 3, while system 300 can implement the I3C communication protocol. System 300 may include a host device 302, an integrated circuit 304, device 310, and another device 320. The host device 302 may be connected to the integrated circuit 304, and the integrated circuit 304 may be connected to devices 310 and 320. The host device 302 may be a computer device, a server processor, a group of devices sharing a cluster, a circuit board, a chip package, or a virtual partition. In some examples, the host device 302 may be an I3C master device in an I3C network, and devices 310 and 320 may be I3C slave devices. In some examples, the host device 302 may be connected to the integrated circuit 304 via a first set of traces of the I3C bus, and the integrated circuit 304 may be connected to devices 310 and 320 via a second set of traces of the I3C bus. In the example shown in Figure 3, the bus of system 300 (e.g., an I3C bus) may include a clock line SCL and a data line SDA. The SCL line can be used to synchronize all data transfers across the I3C bus in system 300. The SDA line may be a line or trace for data transfer.
[0019] The integrated circuit 304 may include a control circuit or controller 306 and control logic or logic circuits 308. The integrated circuit 304 may further include multiple interfaces or ports 309, each of which may be connected to one of the devices 310, 320. In one example, the controller 306 may include a memory device (not shown) that can be configured to store mappings between devices 310, 320 (e.g., lookup tables, databases, etc.) and ports that can indicate different port assignments to different peripheral devices. In some examples, the controller 306 may be a microcontroller or standalone device that interfaces with the host device 302 and devices 310, 320.
[0020] The logic circuit 308 may include an analog switch or switching element 312 connected between the host device 302 and device 310 via the SCL line. The switching element 312 may be, for example, a field-effect transistor (FET). The controller 306 may be configured to activate the switching element 312 to form or activate a direct communication path on the SCL line between the host device 302 and device 310 via port C. For example, the controller 306 may send a control signal 311 to the switching element 312, which in turn activates or deactivates the switching element 312. The logic circuit 308 may further include a redriver circuit 314 connected between the host device 302 and device 310 via the SCL line. The controller 306 may be configured to enable or activate the redriver circuit 314 to form or activate a redriver path between the host device 302 and device 310 on the SCL line via port D. For example, the controller 306 can be configured to send a control signal 313 to the redriver circuit 314, which can activate or deactivate the redriver circuit 314.
[0021] The logic circuit 308 may further include an analog switch or switching element 316 connected between the host device 302 and device 310 via the SDA line. The switching element 316 may be, for example, a field-effect transistor (FET). The controller 306 may be configured to activate the switching element 316 to form or activate a direct communication path on the SDA line between the host device 302 and device 310 via port E. For example, the controller 306 may send a control signal 315 to the switching element 316, which in turn activates or deactivates the switching element 316. The logic circuit 308 may further include a redriver circuit 318 connected between the host device 302 and device 310 via the SDA line. The controller 306 may enable or activate the redriver circuit 318 to form or activate a redriver path between the host device 302 and device 310 on the SDA line via port F. For example, the controller 306 can be configured to send a control signal 317 to the redriver circuit 318, which can activate or deactivate the redriver circuit 318.
[0022] The logic circuit 308 may further include an analog switch or switching element 322 connected between the host device 302 and device 320 via an SCL line. The switching element 312 may be, for example, a field-effect transistor (FET). The controller 306 may be configured to activate the switching element 322 to form or activate a direct communication path on the SCL line between the host device 302 and device 320. For example, the controller 306 may send a control signal 321 to the switching element 322, which activates or deactivates the switching element 322. The logic circuit 308 may further include a redriver circuit 324 connected between the host device 302 and device 320 via an SCL line. The controller 306 may be configured to enable or activate the redriver circuit 324 to form or activate a redriver path between the host device 302 and device 310 on the SCL line. For example, the controller 306 can be configured to send a control signal 323 to the redriver circuit 324, which can activate or deactivate the redriver circuit 324.
[0023] The logic circuit 308 can further include an analog switch or switching element 326 connected between the host device 302 and the device 310 via the SDA line. The switching element 326 can be, for example, a field effect transistor (FET). The controller 306 can be configured to activate the switching element 326 to form or activate a direct communication path on the SDA line between the host device 302 and the device 320. For example, the controller 306 can send a control signal 325 to the switching element 326, whereas the control signal 325 activates or deactivates the switching element 326. The logic circuit 308 can further include a re-driver circuit 328 connected between the host device 302 and the device 320 via the SDA line. The controller 306 can be configured to enable or activate the re-driver circuit 328 to form or activate a re-driver path between the host device 302 and the device 320 on the SDA line. In one example, the controller 306 can be configured to send a control signal 327 to the re-driver circuit 328, whereas the control signal 327 can activate or deactivate the re-driver circuit 328.
[0024] The controller 306 can be configured to detect a communication 330 initiated from the host device 302 to the target device between the device 310 and the device 320. In some examples, the communication 330 can include information or data and can be output by the host device 302 as a data packet having a data frame structure in accordance with the communication bus being implemented within the system 300. In one example, to detect the communication 330, the controller 306 can analyze the data frame structure of the data between the communications 330 output or initiated from the host device 302. For example, the controller 306 can be configured to identify the frame format of the transaction start, transaction stop, address phase, and data frame structure.
[0025] In one example, the controller 306 can be configured to identify one of the devices 310, 320 as the target device indicated by the communication 330. The data between the communications 330 can include the address of the target device. The communication 330 can be distributed to the devices 310, 320 via the controller 306. Each one of the devices 310, 320 can receive the target device address within the communication 330 and compare its own address with the target device address. In the example shown in FIG. 3, the device 310 determines that its address matches the target device address within the communication 330 and can send the confirmation 302 to the controller 306 via the assigned port (e.g., via port D on the SDA line), where the confirmation 302 can be, for example, a confirmation signal. The controller 306 can receive the confirmation from a specific port. In response to receiving the confirmation 302 from a specific port, the controller 306 can search for the device assigned to the specific port (e.g., within a memory, database, lookup table, etc.). If the device 310 is assigned to the specific port, the controller 306 can determine that the device 310 has an address that matches the target address within the communication 330 and can identify the device 310 as the target device.
[0026] In response to identifying device 310 as the target device, controller 306 can activate switching element 312 to activate a direct communication path between host device 302 and device 310 on the SCL line. Furthermore, in response to identifying device 310 as the target device, controller 306 can activate switching element 316 to activate a direct communication path between host device 302 and device 310 on the SDA line. By activating the direct communication path between host device 302 and device 310, host device 302 can communicate with device 310 using direct communication mode. Also, by activating direct communication mode on both the SCL line and the SDA line, data transmission between host device 302 and target device 310 on the SDA line can be synchronized with the clock signal on the SCL line between host device 302 and device 310.
[0027] In response to identifying device 310 as the target device, controller 306 can activate or enable redriver circuit 324 to activate the redriver circuit between host device 302 and device 310 on the SCL line. Furthermore, in response to identifying device 310 as the target device, controller 306 can activate or enable redriver circuit 328 to activate the redriver path between host device 302 and device 320 on the SDA line. By activating the redriver path between host device 302 and device 320, host device 302 can communicate with device 320 using redriver mode. By activating redriver mode on both the SCL and SDA lines, data transmission between host device 302 and non-target device 310 on the SDA line can be synchronized with the clock signal on the SCL line between host device 302 and device 320.
[0028] Therefore, corresponding to identifying device 310 as the target device, the controller 306 and host device 302 can communicate with device 310 (e.g., the target device) using direct communication and with other devices using redriver mode. This selective communication method allows the host device 302 to send data to, for example, devices 310 and 320, while device 320 can receive data at a later time than device 310. Figure 3B shows a timing diagram of an exemplary implementation of system 300 shown in Figure 3A. The timing diagram in Figure 3B shows signal events on the SCL and SDA lines of the master device 302 (e.g., host device 302), the target device (e.g., device 310), and the non-target device (e.g., device 320). During communication between the master device and the target device, the master device can fire the falling edge of the SCL line. The firing of the falling edge on the SCL line of the master device can be distributed (allocated) to the SCL lines of the target and non-target devices. On the SDA line, the target device can transmit data to the master device via direct communication mode, but the master device must fully receive the data on the SDA line within a limited time, such as before the next rising edge on the master device's SCL line. Therefore, the latency 340 between the falling edge of the target device's SCL line and the full output of the data on the target device's SDA line can define the system speed of the entire system (e.g., system 300). Furthermore, it should be noted that in SDA line events, the master device can transmit a copy of the data received from the target device to a non-target device via redriver mode, which will cause a delay on the non-target device's SDA line.However, this transmission from the master device to the non-target device may not be subject to any timing constraints, as the non-target device simply needs a copy of the data for system transparency. For example, the master device does not need to transmit the entire copy of the data to the non-target device within a specific time frame. Therefore, the delay introduced by the redriver mode may not impose any timing penalty on the system as a whole.
[0029] The systems and methods described herein allow a master device in a 1:N topology to perform point-to-point communication with target devices, while the remaining non-target devices simultaneously listen to traffic. The point-to-point communication path with the target devices can reduce the load on the host device because the host device may not be aware of other non-target devices. Furthermore, no redrive delay is introduced into the communication path between the host and target devices. Additionally, communication traffic across the bus can be transparent to non-target devices by allowing them to receive a copy of the data sent from the host device to the target device. For example, an I3C system can benefit from this transparency by allowing the host device to eliminate setup overhead and establish or disable connections between all ports connected to a hub device or slave devices in a hub network. Receiving a copy can be unidirectional communication (from the host device to the non-target devices) and therefore does not affect the overall system performance.
[0030] Figure 4 is a flowchart showing a process 400 for implementing a bridging device with an analog switch and a redriver mode in one embodiment. Process 400 may include one or more operations, actions, or functions, as indicated by one or more of blocks 402, 404, 406, and / or 408. Although shown as separate blocks, depending on the desired implementation, various blocks may be split into additional blocks, combined into fewer blocks, deleted, or executed in parallel.
[0031] Process 400 can be started from block 402. In block 402, the controller can detect communication initiated from the first device to the target device between the second and third devices. In some examples, the controller can analyze the data frame structure of the communication initiated from the first device to the target device. Based on the analysis of the data frame structure, the controller can detect the communication initiated from the first device to the target device. The analysis of the data frame structure may include identifying the transaction start, transaction stop, address phase, and frame format of the frame structure.
[0032] Process 400 can proceed from block 402 to block 404. In block 404, the controller can identify the second device as the target device. In some examples, the controller can receive an acknowledgment signal from either the second device or the third device. The controller can identify the port from which the acknowledgment signal was received. Based on the identified port, the controller can identify the second device as the target device.
[0033] Process 400 can proceed from block 404 to block 406. In block 406, the controller can activate a direct communication path between the first and second devices in response to identifying the second device as the target device. Activating the direct communication path allows the first device to communicate with the second device using the direct communication mode. In some examples, activating the direct communication path between the first and second devices may include activating a switching element connected between the first and second devices. In some examples, the switching element may be a field-effect transistor (FET).
[0034] Process 400 can proceed from block 404 to block 408. In block 406, the controller can activate a redriver path between the first and third devices in response to identifying the second device as the target device. Activating the redriver path allows the first device to communicate with the third device using redriver mode. In some examples, activating the redriver path between the first and third devices may include activating a redriver circuit connected between the first and third devices.
[0035] In some examples, the controller can continue listening for the termination of communications and potential new communications. For example, the controller can detect new communications initiated from the first device to a new target device between a second device and a third device. The controller can identify the third device as the new target device. In response to identifying the third device as the new target device, the controller can deactivate the direct communication path between the first and second devices. In response to identifying the third device as the new target device, the controller can deactivate the redriver path between the first and third devices. In response to identifying the third device as the new target device, the controller can activate the direct communication path between the first and third devices, allowing the first device to communicate with the third device using direct communication mode. In response to identifying the third device as a new target device, the controller can activate a redriver path between the first and second devices, enabling the first device to communicate with the second device using redriver mode.
[0036] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or part of an instruction, which includes one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions shown in a block may be out of order than those shown in the figure. For example, two blocks shown consecutively may actually be executed substantially simultaneously, or they may be executed in reverse order from time to time, depending on the functions they involve. It should be noted that each block in the block diagram and / or flowchart, and combinations of blocks in the block diagram and / or flowchart, can be implemented by performing a specific function or operation, or by executing a combination of hardware and computer instructions for a particular purpose.
[0037] The descriptions of various embodiments of the present invention are presented for illustrative purposes only and are not intended to be exhaustive or to limit the disclosed embodiments. Many changes and modifications will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein has been selected to best describe the principles of the embodiments and their practical application or technical improvement to the technology available on the market, or to enable those skilled in the art to understand the embodiments disclosed herein.
Claims
1. It is a device, Logic circuits connected to the first device, the second device, and the third device, A controller connected to the logic circuit and the first device, Equipped with, The aforementioned controller, The system detects communication initiated between the second device and the third device from the first device to the target device. The second device is identified as the target device, In response to identifying the second device as the target device, the logic circuit activates a direct communication path between the first device and the second device, enabling the first device to communicate with the second device using direct communication mode. In response to identifying the second device as the target device, the logic circuit activates a redriver path between the first device and the third device, enabling the first device to communicate with the third device using redriver mode. A device configured in such a way.
2. In the apparatus according to claim 1, The aforementioned controller, A confirmation signal is received from either the second device or the third device. Identify the port that received the aforementioned confirmation signal, Based on the identified port, the second device is identified as the target device. A device configured in such a way.
3. In the apparatus according to claim 1, The aforementioned controller, The data frame structure of the communication initiated from the first device to the target device is analyzed. Based on the analysis of the data frame structure, the communication initiated from the first device to the target device is detected. A device configured in such a way.
4. In the apparatus described in claim 3, The analysis of the data frame structure includes identifying one or more of the transaction start, transaction stop, address phase, and frame format of the frame structure.
5. In the apparatus according to claim 1, The aforementioned logic circuit is A first switching element connected to the second device, wherein the controller is configured to activate the first switching element to activate the direct communication path between the first device and the second device, A first redriver circuit connected to the second device, A second switching element connected to the third device, A second redriver circuit connected to the third device, wherein the controller is configured to activate the second redriver circuit to activate the redriver path between the first device and the third device, A device equipped with; a device.
6. In the apparatus described in claim 5, The device wherein the first switching element and the second switching element are field-effect transistors (FETs).
7. In the apparatus according to claim 1, The aforementioned controller, The system detects a new communication initiated between the second device and the third device from the first device to a new target device. Identify the third device as the new target device, In response to identifying the third device as the new target device, the logic circuit deactivates the direct communication path between the first device and the second device. In response to identifying the third device as the new target device, the logic circuit deactivates the redriver path between the first device and the third device. In response to identifying the third device as the new target device, the logic circuit activates a direct communication path between the first device and the third device, enabling the first device to communicate with the third device using direct communication mode. In response to identifying the third device as the new target device, the logic circuit activates a redriver circuit between the first device and the second device, enabling the first device to communicate with the second device using redriver mode. A device configured in such a way.
8. It is a system, The first device and The second device and A third device and A logic circuit connected to the first device, the second device, and the third device, A controller connected to the logic circuit and the first device, Equipped with, The aforementioned controller, The system detects communication initiated between the second device and the third device from the first device to the target device. Identify the second device as the target, In response to identifying the second device as the target device, the logic circuit activates a direct communication path between the first device and the second device, enabling the first device to communicate with the second device using direct communication mode. In response to identifying the second device as the target device, the logic circuit activates a redriver path between the first device and the third device, enabling the first device to communicate with the third device using redriver mode. A system configured in such a way.
9. In the system described in claim 8, The aforementioned controller, A confirmation signal is received from one of the second device and the third device. Identify the port that received the aforementioned confirmation signal, Based on the identified port, the second device is identified as the target device. A system configured in such a way.
10. In the system described in claim 8, The aforementioned controller, The data frame structure of the communication initiated from the first device to the target device is analyzed. Based on the analysis of the data frame structure, the communication initiated from the first device to the target device is detected. A system configured in such a way.
11. In the system according to claim 10, The analysis of the data frame structure includes identifying one or more of the following: transaction start, transaction stop, address phase, and frame format of the frame structure.
12. In the system described in claim 8, The aforementioned logic circuit is A first switching element connected to the second device, wherein the controller is configured to activate the first switching element to activate the direct communication path between the first device and the second device, A first redriver circuit connected to the second device, A second switching element connected to the third device, A second redriver circuit connected to the third device, wherein the controller is configured to activate the second redriver circuit to activate the redriver path between the first device and the third device, A system equipped with these features.
13. In the system according to claim 12, The system is such that the first switching element and the second switching element are field-effect transistors (FETs).
14. In the system described in claim 8, The aforementioned controller, The system detects a new communication initiated between the second device and the third device from the first device to a new target device. Identify the third device as the new target device, In response to identifying the third device as the new target device, the logic circuit deactivates the direct communication path between the first device and the second device. In response to identifying the third device as the new target device, the logic circuit deactivates the redriver path between the first device and the third device. In response to identifying the third device as the new target device, the logic circuit activates a direct communication path between the first device and the third device, enabling the first device to communicate with the third device using direct communication mode. In response to identifying the third device as the new target device, the logic circuit activates a redriver path between the first device and the second device, enabling the first device to communicate with the second device using redriver mode. A system configured in such a way.
15. A method for routing communication between multiple devices, The system detects communication initiated from the first device to the target device between the second device and the third device. The second device is identified as the target device, In response to identifying the second device as the target device, the direct communication path between the first device and the second device is activated, enabling the first device to communicate with the second device using direct communication mode. In response to identifying the second device as the target device, the redriver path between the first device and the third device is activated, enabling the first device to communicate with the third device using redriver mode. A method that includes doing so.
16. In the method according to claim 15, Identifying the second device as the target device is: A confirmation signal is received from either the second device or the third device. Identify the port that received the aforementioned confirmation signal, Based on the identified port, the second device is identified as the target device. A method that includes doing so.
17. In the method according to claim 15, Detecting the communication initiated by the first device is: The data frame structure of the communication initiated from the first device to the target device is analyzed. Based on the analysis of the data frame structure, the communication initiated from the first device to the target device is detected. A method that includes doing so.
18. The method according to claim 17, A method for analyzing the aforementioned data frame structure, comprising identifying one or more of the transaction start, transaction stop, address phase, and frame format of the frame structure.
19. The method according to claim 15, Activating the direct communication path between the first device and the second device activates the switching element connected between the first device and the second device, A method comprising activating the redriver path between the first device and the third device, which includes activating a redriver circuit connected between the first device and the third device.
20. The method according to claim 15, The second device and the third device detect a new communication initiated from the first device to a new target device. Identify the third device as the new target device, In response to identifying the third device as the new target device, the direct communication path between the first device and the second device is deactivated. In response to identifying the third device as the new target device, the redriver path between the first device and the third device is deactivated. Activate the direct communication path between the first device and the third device, enabling the first device to communicate with the third device using direct communication mode. In response to identifying the third device as the new target device, the redriver path between the first device and the second device is activated, enabling the first device to communicate with the second device using redriver mode. A method that further includes the following.
Citation Information
Patent Citations
Data transfer system
JP2009069946A
Communication apparatus, communication method and image forming apparatus
JP2016037033A
Integrated data concentrator for multi-sensor MEMS systems
US20150006778A1
Serial communication branching device and serial communication system
US20170277644A1
Serial data intermediary device, and related systems and methods
US8943256B1