WO2022179427A1 - 一种数据传输带宽的配置方法及相关设备 - Google Patents

一种数据传输带宽的配置方法及相关设备 Download PDF

Info

Publication number
WO2022179427A1
WO2022179427A1 PCT/CN2022/076596 CN2022076596W WO2022179427A1 WO 2022179427 A1 WO2022179427 A1 WO 2022179427A1 CN 2022076596 W CN2022076596 W CN 2022076596W WO 2022179427 A1 WO2022179427 A1 WO 2022179427A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
channel
master device
data channel
slave device
Prior art date
Application number
PCT/CN2022/076596
Other languages
English (en)
French (fr)
Inventor
罗飞
曹孝文
王桂珍
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2022179427A1 publication Critical patent/WO2022179427A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks

Definitions

  • the present application relates to the technical field of data communication interfaces, and in particular, to a data transmission bandwidth configuration method and related equipment.
  • the communication interface can connect functional modules such as perception, calculation, expression, and storage into a system.
  • the communication interface of the terminal can realize the communication between the processor of the terminal and components such as memory, display screen, camera, etc.
  • the required ratio of the transmission and reception bandwidth of the communication interface can be different.
  • the processor reads the data from the memory.
  • the ratio of sending and receiving bandwidth also called the ratio of reading and writing bandwidth at this time
  • the ratio of reading and writing bandwidth required when the processor writes data to the display screen to realize the display function is 0:1 .
  • the ratio of the transmission and reception bandwidth of the communication interface is usually a fixed value designed according to the overall performance requirements of the system, and does not support real-time configuration. Therefore, bandwidth resources are wasted and unnecessary power consumption is increased.
  • the embodiment of the present application discloses a data transmission bandwidth configuration method and related equipment, which can flexibly configure the ratio of the transmission and reception bandwidth of a communication interface based on different business scenarios, thereby avoiding wasted bandwidth resources and unnecessary power consumption.
  • an embodiment of the present application provides a method for configuring a data transmission bandwidth, which is applied to a first system, where the first system includes a master device and a slave device, and the master device and the slave device pass through multiple
  • the method includes: the master device determines at least one data channel for switching the transmission direction based on the first service identifier; the master device switches the transmission direction of the at least one data channel; The slave device sends first control information, where the first control information is used to instruct the slave device to switch the transmission direction of the at least one data channel; the slave device switches the at least one data channel based on the first control information The transmission direction of the data channel.
  • a service identifier is used to identify a service scenario.
  • the number of data channels whose transmission direction is the first direction required by different service scenarios is different.
  • the ratio of sending and receiving bandwidth is different, and the ratio of sending and receiving bandwidth is related to the number of data channels in different transmission directions.
  • the master device may determine at least one data channel for switching the transmission direction according to the service identifier.
  • Data can be transmitted between the master device and the slave device through multiple data channels.
  • These multiple data channels can include data channels that have switched transmission directions and have not switched transmission directions, so as to realize different business scenarios (different business identifiers) , intelligently configure different ratios of transmission and reception bandwidth, avoid wasting bandwidth resources and unnecessary link power consumption caused by idle data channels, and make rational use of data transmission bandwidth.
  • the master device determining at least one data channel for switching the transmission direction based on the first service identifier includes: determining, by the master device, that the transmission direction corresponding to the first service identifier is the first The number of data channels in the first direction, or the ratio of the sending and receiving bandwidth corresponding to the first service identifier; the master device determines the switching according to the number of the data channels whose transmission direction is the first direction or the ratio of the sending and receiving bandwidth the at least one data channel in the transmission direction.
  • a service identifier may correspond to a number of data channels whose transmission direction is the first direction, or may correspond to a ratio of transmission and reception bandwidth.
  • the configuration of the corresponding relationship is more flexible, and the application scenarios are more extensive.
  • the transmission direction of the data channel is the transmission direction from the master device to the slave device, or the transmission direction from the slave device to the master device.
  • the first control information includes indication information for indicating the at least one data channel.
  • the first control information includes a logical channel number of the at least one data channel.
  • the sending, by the master device, the first control information to the slave device includes: the master device sending the first control information to the slave device through a first channel, and the first control information is sent to the slave device through a first channel.
  • a channel is one or a group of data channels among the plurality of data channels, or the first channel is a control channel between the master device and the slave device.
  • the channel for sending the first control information is relatively flexible and can be configured according to the actual situation. For example, when the transmission directions of multiple data channels between the master device and the slave device are all from the slave device to the master device, it can also be referred to as the first service identifier.
  • the first control information is transmitted from the control channel between the devices.
  • the application scenarios are more extensive.
  • the transmission mode used between the master device and the slave device is a high-speed mode.
  • the above-mentioned high-speed mode is the high-speed HS mode defined by D-PHY.
  • This application can maintain the high-speed mode to configure the data channel, compared to the way to configure the data transmission channel (such as the reverse communication function of D-PHY), which needs to be changed to a mode with a lower transmission rate such as low power consumption or standby low power consumption,
  • the present application satisfies the requirements of high bandwidth and low delay, and the transmission effect is better.
  • the method further includes: the master device sends the transmission direction to the at least one data channel through the at least one first data channel.
  • the slave device sends data
  • the master device receives the data sent from the slave device through at least one second data channel.
  • the data channels of the two transmission directions can be used for the master device and the slave device to transmit data at the same time, and the transmission efficiency is higher.
  • the master device is a processor in the first system
  • the slave device is a memory, a display screen, or a camera in the first system.
  • an embodiment of the present application provides a method for configuring a data transmission bandwidth, which is applied to a master device.
  • Data is transmitted between the master device and a slave device through multiple data channels.
  • the method includes: based on a first service identifier switch the transmission direction of the at least one data channel; send first control information to the slave device, where the first control information is used to instruct the slave device to switch the at least one data channel The transmission direction of a data channel.
  • a service identifier is used to identify a service scenario.
  • the number of data channels whose transmission direction is the first direction required by different service scenarios is different.
  • the ratio of sending and receiving bandwidth is different, and the ratio of sending and receiving bandwidth is related to the number of data channels in different transmission directions.
  • the master device may determine at least one data channel for switching the transmission direction according to the service identifier.
  • Data can be transmitted between the master device and the slave device through multiple data channels.
  • These multiple data channels can include data channels that have switched transmission directions and have not switched transmission directions, so as to realize different business scenarios (different business identifiers) , intelligently configure different ratios of transmission and reception bandwidth, avoid wasting bandwidth resources and unnecessary link power consumption caused by idle data channels, and make rational use of data transmission bandwidth.
  • the determining at least one data channel whose transmission direction is switched based on the first service identifier includes: determining the number of data channels whose transmission direction corresponding to the first service identifier is the first direction , or the ratio of the transmission and reception bandwidth corresponding to the first service identifier; according to the number of the data channels whose transmission direction is the first direction or the ratio of the transmission and reception bandwidth, the at least one data channel for switching the transmission direction is determined.
  • a service identifier may correspond to a number of data channels whose transmission direction is the first direction, or may correspond to a ratio of transmission and reception bandwidth.
  • the configuration of the corresponding relationship is more flexible, and the application scenarios are more extensive.
  • the transmission direction of the data channel is the transmission direction from the master device to the slave device, or the transmission direction from the slave device to the master device.
  • the first control information includes indication information for indicating the at least one data channel.
  • the first control information includes a logical channel number of the at least one data channel.
  • the sending the first control information to the slave device includes: sending the first control information to the slave device through a first channel, where the first channel is the multiple One of the data channels or a group of data channels, or the first channel is a control channel between the master device and the slave device.
  • the channel for sending the first control information is relatively flexible and can be configured according to the actual situation. For example, when the transmission directions of multiple data channels between the master device and the slave device are all from the slave device to the master device, it can also be referred to as the first service identifier.
  • the first control information is transmitted from the control channel between the devices.
  • the application scenarios are more extensive.
  • the transmission mode used between the master device and the slave device is a high-speed mode.
  • the above-mentioned high-speed mode is the high-speed HS mode defined by D-PHY.
  • This application can maintain the high-speed mode to configure the data channel, compared to the way to configure the data transmission channel (such as the reverse communication function of D-PHY), which needs to be changed to a mode with a lower transmission rate such as low power consumption or standby low power consumption,
  • the present application satisfies the requirements of high bandwidth and low delay, and the transmission effect is better.
  • the method further includes: sending data to the slave device through at least one first data channel, and receiving data through at least one second data channel data sent from the device.
  • the data channels of the two transmission directions can be used for the master device and the slave device to transmit data at the same time, and the transmission efficiency is higher.
  • an embodiment of the present application provides a method for configuring a data transmission bandwidth, which is applied to a slave device.
  • Data is transmitted between the slave device and a master device through multiple data channels.
  • the method includes: receiving the master device The first control information sent, where the first control information is used to instruct to switch the transmission direction of at least one data channel, and the at least one data channel is the data channel for switching the transmission direction determined by the master device according to the first service identifier ; switch the transmission direction of the at least one data channel based on the first control information.
  • a service identifier is used to identify a service scenario.
  • the number of data channels whose transmission direction is the first direction required by different service scenarios is different.
  • the ratio of sending and receiving bandwidth is different, and the ratio of sending and receiving bandwidth is related to the number of data channels in different transmission directions.
  • the master device may determine at least one data channel for switching the transmission direction according to the service identifier.
  • Data can be transmitted between the master device and the slave device through multiple data channels.
  • These multiple data channels can include data channels that have switched transmission directions and have not switched transmission directions, so as to realize different business scenarios (different business identifiers) , intelligently configure different ratios of transmission and reception bandwidth, avoid wasting bandwidth resources and unnecessary link power consumption caused by idle data channels, and make rational use of data transmission bandwidth.
  • the transmission direction of the data channel is the transmission direction from the master device to the slave device, or the transmission direction from the slave device to the master device.
  • the first control information includes indication information for indicating the at least one data channel.
  • the first control information includes a logical channel number of the at least one data channel.
  • the receiving the first control information sent by the master device includes: receiving the first control information sent by the master device through a first channel, where the first channel is the One or a group of data channels among the multiple data channels, or the first channel is a control channel between the master device and the slave device.
  • the channel for receiving the first control information is relatively flexible and can be configured according to actual conditions.
  • the transmission directions of multiple data channels between the master device and the slave device are all from the slave device to the master device, it can also be referred to as the first service identifier.
  • the first control information is transmitted from the control channel between the devices.
  • the application scenarios are more extensive.
  • the transmission mode used between the master device and the slave device is a high-speed mode.
  • the above-mentioned high-speed mode is the high-speed HS mode defined by D-PHY.
  • This application can maintain the high-speed mode to configure the data channel, compared to the way to configure the data transmission channel (such as the reverse communication function of D-PHY), which needs to be changed to a mode with a lower transmission rate such as low power consumption or standby low power consumption,
  • the present application satisfies the requirements of high bandwidth and low delay, and the transmission effect is better.
  • the method further includes: receiving data sent by the master device through at least one first data channel , and send data to the master device through at least one second data channel.
  • the data channels of the two transmission directions can be used for the master device and the slave device to transmit data at the same time, and the transmission efficiency is higher.
  • an embodiment of the present application provides a first system, including a master device and a slave device, where the first system is used to implement the first aspect of the embodiment of the present application and any implementation manner of the first aspect. How to configure the data transfer bandwidth.
  • an embodiment of the present application provides a host device, including a communication interface, a processor, and a memory, where the memory is used to store a computer program, and the processor invokes the computer program to execute the second aspect of the embodiment of the present application and a method for configuring a data transmission bandwidth provided by any implementation manner of the second aspect.
  • an embodiment of the present application provides a slave device, including a communication interface, where the slave device is used to execute the third aspect of the embodiment of the present application and a method for configuring a data transmission bandwidth provided by any implementation manner of the third aspect .
  • an embodiment of the present application provides a computer storage medium, where the computer storage medium stores a computer program, and when the computer program is executed by an electronic device, implements the first to third aspects of the embodiment of the present application, and the first A method for configuring a data transmission bandwidth provided by any one of the implementation manners of the aspect to the third aspect.
  • an embodiment of the present application provides a computer program product that, when the computer program product runs on an electronic device, enables the electronic device to perform the first to third aspects, and the first to third aspects of the embodiments of the present application.
  • a method for configuring a data transmission bandwidth provided by any implementation manner of the third aspect.
  • an embodiment of the present application provides a chip, where the chip includes at least one processor, an interface circuit, and a memory, the memory, the interface circuit, and the at least one processor are interconnected through a line, and a computer program is stored in the memory. , when the above-mentioned computer program is executed by the above-mentioned at least one processor, the first aspect to the third aspect of the embodiments of the present application and the data transmission bandwidth configuration method provided by any one of the implementation manners of the first aspect to the third aspect are implemented.
  • an embodiment of the present application provides an electronic device, where the electronic device includes executing the method or apparatus described in any embodiment of the present application.
  • the above-mentioned electronic device is, for example, a chip.
  • FIGS. 1 to 2 are schematic diagrams of the architecture of some data channels provided by embodiments of the present application.
  • FIG. 3 is a schematic structural diagram of a data channel provided by an embodiment of the present application.
  • FIG. 4 is a schematic diagram of a hardware structure of an electronic device provided by an embodiment of the present application.
  • FIG. 5 is a schematic diagram of the architecture of a first system provided by an embodiment of the present application.
  • FIG. 6 is a schematic diagram of a software architecture of an electronic device provided by an embodiment of the present application.
  • FIGS. 7-8 are some methods for configuring data transmission bandwidth provided by the embodiments of the present application.
  • a communication interface (also referred to as a hardware interface) can connect functional modules such as sensing, computing, expression, and storage into a system, and these functional modules can also be referred to as integrated circuit (integrated circuit) devices. Communication can be carried out through the communication interface.
  • the above system may be a terminal, and the terminal may also be referred to as user equipment (user equipment, UE).
  • Terminals can be, but are not limited to, electronic devices in the form of handheld devices, wearable devices, computing devices, portable devices, or in-vehicle devices, such as home devices such as smart TVs and smart cameras, and wearable devices such as smart bracelets and smart glasses.
  • mobile phone tablet computer, handheld computer, Personal Digital Assistant (PDA), desktop, laptop, notebook computer, Ultra-mobile Personal Computer (UMPC), netbook, smart screen, etc. equipment.
  • PDA Personal Digital Assistant
  • UMPC Ultra-mobile Personal Computer
  • the terminal may include multiple IC devices, such as, but not limited to, processors such as an application processor, a modem processor, a memory, a transceiver, a camera, a display screen, and other devices.
  • the processor can communicate with other IC devices to realize various functions of the terminal, for example, communicate with the memory to realize the storage function, communicate with the transceiver to realize the function of communication with other terminals, and communicate with the camera to realize the functions of taking pictures and videos. Communicate with the display screen to realize display functions, etc.
  • the communication interface can realize communication between IC devices in the system through a data transmission channel (lane), and the data transmission channel is used to transmit data between IC devices.
  • the data transmission channel can also be called a data channel, a data channel
  • An example of the structure can be seen in Figure 3 below, which will not be described in detail for the time being.
  • the two end devices that communicate based on the communication interface may be respectively called a master device and a slave device, and the slave device works under the control of the master device, for example, performs corresponding operations based on a control code stream sent by the master device.
  • the data channel may be called a sending channel or a receiving channel.
  • the transmission direction of the sending channel is the transmission direction from the master device to the slave device
  • the transmission direction of the receiving channel is the transmission direction from the slave device to the master device.
  • the transmission direction of the sending channel is the transmission direction from the slave device to the master device.
  • the transmission direction of the channel is the transmission direction from the master device to the slave device, and this application takes the name of the data channel from the perspective of the master device as an example for description.
  • the specification of the communication interface may include, but is not limited to, the mobile industry processor interface (MIPI).
  • MIPI is a specification initiated by the MIPI Alliance for the application processor of a mobile terminal.
  • MIPI is a physical layer (physical layer).
  • PHY specifies the specifications of D-PHY, M-PHY, C-PHY and other communication interfaces. Next, the working modes of M-PHY and D-PHY are exemplified.
  • M-PHY is an interface technology with high bandwidth capability introduced by MIPI Alliance, which is suitable for unified protocol (Unipro), digital radio frequency (DigRF), camera serial interface (CSI) And display serial interface (display serial interface, DSI) and other interface protocols.
  • the single-duplex link in M-PHY is composed of a unidirectional data channel, a transmitter (TX) module and a receiver (receiver, RX) module.
  • TX transmitter
  • RX receiver
  • One or more data channels are allowed in each transmission direction. And allow asymmetry in the number and properties of data channels in the two transmission directions. Data channels in different transmission directions can be enabled at the same time (enable), and optionally, the transmit channel and the receive channel can be enabled at the same time for data transmission.
  • the Unipro protocol is widely used in the communication between IC devices such as application processors, modem processors, and memory.
  • the Unipro protocol stipulates that each transmission direction supports up to 4 data channels.
  • the devices at both ends of the communication can be based on the business.
  • the requirement determines the transmit (TX) channel and the receive (RX) channel for data transmission.
  • TX transmit
  • RX receive
  • FIG. 1 exemplarily shows a schematic diagram of the architecture of an M-PHY data channel.
  • the master device 110 may include a TX module 111 and an RX module 112
  • the slave device 120 may include an RX module 121 and a TX module 122 .
  • the master device 110 and the slave device 120 can communicate through the TX module 111 and the RX module 121 respectively.
  • the data sent by the master device 110 through the TX module 111 can be sent via The channel 130 is transmitted to the RX module 121 of the slave device 120 for reception. That is to say, the transmission direction of the data carried by the transmission channel 130 is the master device 110 to the slave device 120 .
  • the master device 110 and the slave device 120 can also communicate through the RX module 112 and the TX module 122 respectively.
  • the master device 110 and the slave device 120 may be different IC devices in the first system, for example, the first system is a terminal, the master device 110 is an application processor, and the slave device 120 is a memory.
  • the sending channel 130 and the receiving channel 140 in FIG. 1 are for the master device 110, for the slave device 120, the sending channel 130 is actually a channel for receiving data, and the receiving channel 140 is actually a channel for sending data aisle.
  • the ratio of the transmission and reception bandwidth is the ratio of the read and write bandwidth.
  • the ratio of sending and receiving bandwidth can also be understood as the ratio of the receiving channel and the sending channel (which can be referred to as the data channel ratio).
  • the read/write bandwidth ratio and the data channel ratio are used as examples for description.
  • FIG. 1 there are 4 transmission channels and 4 reception channels between the master device 110 and the slave device 120 , and the ratio of the data channels is set to 1:1.
  • these 8 data channels can be used for communication between the master device 110 and the slave device 120, but in specific implementation, due to different business scenarios, the required read and write bandwidth ratios are different.
  • the proportion of read and write bandwidth required is relatively small, the receive channel is idle, and read bandwidth resources are wasted.
  • the read and write bandwidth required by the business scenario where the storage application reads data is relatively large, the transmission channel is idle, and the write bandwidth resources are wasted.
  • the number of data channels between the master device 110 and the slave device 120 in FIG. 1 is as high as 8, which does not meet the requirement of hardware miniaturization.
  • the master device 110 and the slave device 120 can perform a handshake to establish a chain, and after the handshake is established, the two-way data transmission can be performed through the data channel. process.
  • the handshake chain establishment can be understood as being used by the devices at both ends to determine whether the state of the other party can perform data transmission, so as to avoid the failure of the subsequent data transmission process.
  • the handshake chain building can include three processes: Discovery (used to detect the actual data channel connection of the devices at both ends), Realignment (the logic of marking the data channel between the devices at both ends by exchanging trigger packets) Channel number), capability matching (Capability Exchange) (devices at both ends obtain the transmission capability of the other party, which is convenient for subsequent data transmission within the transmission capability range).
  • Discovery used to detect the actual data channel connection of the devices at both ends
  • Realignment the logic of marking the data channel between the devices at both ends by exchanging trigger packets) Channel number
  • capability matching Capability Exchange
  • D-PHY is an interface specification for communication between processors and IC devices such as cameras and display screens.
  • D-PHY provides the definition of DSI and CSI at the physical layer.
  • D-PHY supports high speed (HS) and low power (LP) transmission modes. The transfer rate is low.
  • the image data can be transmitted in a high-speed mode, which satisfies the high-bandwidth requirement of high-definition images.
  • the control information and status information between the application processor and the camera and display screen can be transmitted using the low power consumption mode, which meets the requirements of low power consumption.
  • D-PHY supports up to 5 lanes (ie 1 clock lane and 4 data lanes), and requires a minimum of 2 lanes (ie 1 clock lane and 1 data lane).
  • FIG. 2 exemplarily shows a schematic diagram of the architecture of a D-PHY data channel.
  • the master device 210 and the slave device 220 may be connected and communicated through P data channels, where P is an integer greater than 1 and less than 6.
  • the P data channels may include: data channel 0, data channel 1, data channel 2, . . . , data channel (P-1).
  • data channel 0 may be used as a clock channel 230 for transmitting clock signals
  • the other (P-2) data channels may be used as data channels 240 for transmitting data.
  • the master device 210 may send a clock signal to the slave device 220 through the clock channel 230 .
  • the master device 210 and the slave device 220 may transmit data through the data channel 240 .
  • the master device 210 and the slave device 220 may be different IC devices in the first system, for example, the first system is a terminal, the master device 210 is an application processor, and the slave device 220 is a camera or a display screen.
  • the first system is a two-way communication system
  • the master device 210 and the slave device 220 may include a low-power transmission (LP-TX) module, a high-speed transmission (HS-TX) module, and a low-power reception (LP-RX) module.
  • LP-TX low-power transmission
  • HS-TX high-speed transmission
  • L-RX low-power reception
  • LP-CD low-power contention detector
  • FIG. 3 exemplarily shows a schematic structural diagram of a D-PHY data channel.
  • a data channel can be understood as including a pair of differential lines Dp and Dn, which can be used to connect the LP-TX module, HS-TX module, LP-RX module, HS-RX module and LP -At least one module in the CD module, so as to realize different transmission functions in different modes.
  • the pair of differential lines can be connected to the LP-CD module (as well as the TX module and the RX module) for bidirectional transmission function.
  • the pair of differential lines can be connected to the LP-TX module to implement the transmit function in low power mode.
  • this pair of differential lines can be connected to the HS-TX module to implement the transmit function in high-speed mode.
  • the pair of differential lines can be connected to the LP-RX module to implement the receive function in low power mode.
  • this pair of differential lines can be connected to the HS-RX module to implement the receive function in high-speed mode.
  • the data channel can be controlled by the data channel control module.
  • the data channel may communicate with other modules (eg, modules within the master device 210 or the slave device 220 ) through a physical layer protocol interface (PHY protocol interface, PPI).
  • PPI includes clock (clock, CLK), data (data), and control (control, Ctrl).
  • the data channel when the differential line of the data channel is connected to the LP-TX module and/or the HS-TX module, the data channel may be called a transmission channel, and is used to transmit data sent by the master device.
  • the data channel when the differential line of the data channel is connected to the LP-RX module and/or the HS-RX module, the data channel may be called a receiving channel, and is used to transmit data sent from the device.
  • D-PHY supports reverse communication functions in control mode and fast lane mode.
  • the reverse communication function operates through link turnaround, and link turnaround can be controlled by signaling in LP mode, or in HS mode. Signaling control in the alternate low power mode, so the reverse communication function needs to be changed to LP mode or ALP mode, and the transmission rate is low.
  • the two-way transmission mode of the D-PHY-based link is half-duplex, and the data channels in different transmission directions cannot be in the enabled state (for data transmission) at the same time, that is, there is only one transmission direction at the same time.
  • the data channel is in an enabled state, and the data channel in the other transmission direction is in a disabled state (not used for data transmission).
  • the forward transmission data channel no longer works, and is in a non-active state. Disabled state, so the transmission rate of reverse transmission is only a quarter of the transmission rate of forward transmission at most.
  • the data channel after the data channel is enabled, the data channel is in an enabled (enabled) state for data transmission.
  • the data channel is disabled (disabled)
  • the data channel is in a disabled (disabled) state and is not used for data transmission.
  • the data channel is in a disabled state, such as but not limited to being in a power-on state but not used for data transmission, and in a power-on state, such as but not limited to, the TX module and/or RX module connected to the data channel is in a power-off state
  • other related modules such as unconnected TX modules, RX modules
  • the TX module and/or RX module connected to the data channel are in a powered-on state.
  • the required ratio of read and write bandwidth of the communication interface may be different, that is, the required ratio of the receiving channel and the sending channel (ie, the ratio of the data channel) may be different.
  • the ratio of read and write bandwidth required by the processor to read data from memory is 1:0 (ie, the ratio of required data channels is 1:0).
  • the read-write bandwidth ratio required is 0:1 (that is, the required data channel ratio is 0:1).
  • the read and write bandwidth ratio of the current communication interface is usually set in advance according to the overall performance requirements of the system (optionally, the overall characteristics of the read and write operations of a circuit or a certain bus). Real-time configuration is not supported, and in different business scenarios It is easy to cause the bandwidth to be wasted.
  • a single data channel in the M-PHY illustrated in Figure 1 can only be transmitted in one direction.
  • multiple data channels need to be designed, which does not meet the requirements of hardware miniaturization. demand, and there may be situations in which data channels are idle, resulting in wasted bandwidth resources and unnecessary power consumption.
  • the reverse communication function can be used to achieve the effect of changing the proportion of data channels, but the implementation of the reverse communication function itself leads to a low transmission rate and poor transmission effect.
  • An embodiment of the present application provides a method for configuring a data transmission bandwidth, which is applied to a first system, where the first system includes a master device and a slave device.
  • the master device may determine at least one data channel for switching the transmission direction according to the newly added service identifier in the service data packet, optionally, the master device may determine at least one data channel for switching the transmission direction according to the service scenario corresponding to the service identifier.
  • Data channel optionally, the master device may determine at least one data channel for switching the transmission direction according to the current service scenario.
  • the master device may send the first control information to the slave device to instruct the slave device to switch the transmission direction of the at least one data channel.
  • the master device and the slave device can perform a two-way data transmission process, realizing real-time configuration of data transmission bandwidth according to different business scenarios, rational use of bandwidth resources, and avoiding unnecessary functions. consumption.
  • a business identifier can be used to identify a business scenario, and the business scenario can be understood as a scenario of business operation.
  • a service identifier is used to identify an application, and it can be understood that an application corresponds to a service scenario, and the service scenario is a scenario in which the service of the application runs.
  • the service identifier carried in the service data packet of the storage application mysql is different from the service identifier carried in the service data packet of the storage application Spark, and the corresponding read and write bandwidth ratios are also different.
  • different business operation scenarios of one application are different business scenarios, and one application corresponds to multiple business scenarios.
  • the storage application mysql includes the business of storing data and the business of reading data.
  • the business identifier carried in the business data packet of the storage data is different from the business identifier carried in the business data packet of the read data.
  • the corresponding read and write services The bandwidth ratio is also different. Assume that the business scenario of storing data is a business scenario of only writing and not reading, so the corresponding read-write bandwidth ratio is 1:0. The read and write bandwidth ratio is 0:1.
  • FIG. 4 exemplarily shows a schematic structural diagram of an electronic device 400 .
  • the electronic device 400 may include a processor 401, a memory 402 and a transceiver 403, and the processor 401, the memory 402 and the transceiver 403 are connected to each other through a bus.
  • the processor 401 may be one or more central processing units (central processing units, CPUs). In the case where the processor 401 is a CPU, the CPU may be a single-core CPU or a multi-core CPU. In some embodiments, the processor 401 may include multiple processing units, such as an application processor (application processor, AP) and a modem processor (modem). Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
  • the memory 402 may include, but is not limited to, random access memory (RAM), read-only memory (ROM), erasable programmable read only memory (EPROM), Or portable read-only memory (compact disc read-only memory, CD-ROM). The memory 402 is used to store related computer programs and information. Transceiver 403 is used to receive and transmit information.
  • the electronic device 400 may include 1 or T cameras, where T is a positive integer greater than 1. Cameras are used to capture still images or video.
  • the T cameras may be a front camera, a rear camera, a lift camera, a detachable camera, etc.
  • the embodiment of the present application does not limit the connection method and mechanical mechanism of the T cameras and the electronic device 400 .
  • the electronic device 400 may acquire the user's face information through a camera, and implement functions such as face unlocking, access application lock, etc. based on the face information.
  • the electronic device 400 may also include a display screen.
  • the display screen is used to display images, videos, text, etc.
  • the display includes a display panel.
  • the display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode or an active-matrix organic light-emitting diode (active-matrix organic light).
  • LED liquid crystal display
  • OLED organic light-emitting diode
  • AMOLED organic light-emitting diode
  • FLED flexible light-emitting diode
  • Miniled MicroLed, Micro-oLed
  • quantum dot light-emitting diode quantum dot light emitting diodes, QLED
  • the electronic device 400 may include one or T display screens, where T is a positive integer greater than one.
  • processor 401 may include one or more communication interfaces.
  • the communication interface may include a MIPI interface, and the MIPI interface may be used to connect the processor 401 with peripheral devices such as a display screen and a camera.
  • MIPI interfaces may include CSI, DSI, and the like.
  • the processor 401 communicates with the camera through the CSI interface, so as to realize the shooting function of the electronic device 400 .
  • the processor 401 communicates with the display screen through a DSI interface to implement the display function of the electronic device 400 .
  • the communication interface may also include an integrated circuit (inter-integrated circuit, I2C) interface, a pulse code modulation (pulse code modulation, PCM) interface, a serializer/deserializer (SERializer/DESerializer, serdes) interface and the like.
  • I2C integrated circuit
  • PCM pulse code modulation
  • PCM pulse code modulation
  • SERializer/DESerializer serializer/deserializer
  • the electronic device 400 shown in FIG. 4 may be a first system including a master device and a slave device, where the master device may be a processor 401 and the slave device may be a memory 402, a camera, a display screen or a transceiver 403 and other IC equipment.
  • the electronic device 400 shown in FIG. 4 may be the master device within the first system.
  • the memory 402 is used to store the preset ratio (that is, the data channel ratio under the preset scene). When there is no application layer service trigger, the master device can set the data channel ratio to the preset ratio, and this process can also be performed. Called initializing the configuration data channel.
  • the memory 402 is used to store the correspondence between service identifiers and data channel ratios, optionally, a service identifier is used to identify a service scenario, optionally, a service identifier corresponds to a service The proportion of data channels in the scene.
  • a data channel ratio is applicable to a business scenario specifically: when the data channel ratio is used in the business scenario, the probability of the data channel being idle or insufficient is less than or not greater than a preset threshold, and bandwidth resources are fully utilized.
  • the memory 402 may also store the data content in the methods shown in FIGS. 7-8 .
  • the transceiver 403 may include a TX module and an RX module.
  • the transceiver 403 is used for the communication between the electronic device 400 and the slave devices (also including the TX module and the RX module) in the first system through a data channel with bidirectional transmission capability.
  • the electronic device 400 sends the above-mentioned preset ratio to the slave device, so that the slave device sets the data channel ratio to the preset ratio, that is, initializes the configuration data channel.
  • the electronic device 400 sends the control code stream to the slave device through data channel 0 (lane 0), or sends the control code stream to the slave device through an out-of-band channel (for example, the control channel corresponding to the CTRL interface), so that the slave device changes data. channel ratio.
  • the master device also changes the data channel ratio.
  • the electronic device 400 shown in FIG. 4 may be a slave device within the first system.
  • the memory 402 is configured to store the preset ratio sent by the master device in the first system.
  • the transceiver 403 may include a TX module and an RX module. The transceiver 403 is used for the communication between the electronic device 400 and the master device (also including the TX module and the RX module) in the first system through a data channel with bidirectional transmission capability.
  • the electronic device 400 receives the preset ratio sent by the master device, and sets the data channel ratio to the preset ratio, that is, initializes the configuration data channel.
  • the electronic device 400 receives the control code stream sent by the master device through lane0, or receives the control code stream sent by the master device through an out-of-band channel (eg, control channel), and changes the data channel ratio based on the control code stream.
  • the master device also changes the data channel ratio.
  • the above-mentioned data channel ratio (including the preset ratio) can also be replaced with the corresponding number of sending channels and/or receiving channels.
  • the processor 401 in the electronic device 400 is configured to read the computer program code stored in the memory 402 and execute the method for configuring the data transmission bandwidth shown in FIGS. 7-8 .
  • the electronic device 400 is a master device or a slave device therein.
  • FIG. 5 exemplarily shows a schematic diagram of the architecture of a first system.
  • the first system may include a master device 510 , a slave device 520 , and a data channel 530 and an out-of-band channel 540 for communication between the master device 510 and the slave device 520 .
  • the master device 510 may include an initialization scenario configuration module 511 , a physical layer 512 , a service scenario management module 513 and a data channel management module 514 .
  • the data channel management module 514 includes a data channel reverse control module 514A and a link reconstruction control module 514B.
  • the slave device 520 may include an initialization scene configuration module 521 , a physical layer 522 and a data channel management module 523 .
  • the data channel management module 523 includes a data channel reverse control module 523A and a link reconstruction control module 523B.
  • the data channel 530 includes N data channels: data channel 0, data channel 1, . . . , data channel (N-1).
  • the out-of-band channel 540 is a channel other than the data channel 530, for example, a control channel corresponding to the CTRL interface.
  • the initialization scene configuration module 511/521 is used for initializing the configuration of the data channel 530, and optionally, the data channel 530 is configured based on the proportion of the data channels in the preset scene (ie, the preset ratio). For example, if the preset ratio is 0:1, the data channel 530 may be set to be fully transmitted. Or the preset ratio is 1:0, then the data channel 530 can be set to be fully received. Alternatively, the ratio of the sending channel and the receiving channel in the data channel 530 (ie, the ratio of the data channels) is set to 1:1 (preset ratio).
  • the type of the preset scenario is not limited, for example, it is a business scenario of a storage application.
  • the data channel 530 can be controlled to perform a handshake and chain building to record the transmission capability information of the master device 510 and the slave device 520 (such as the number of available data channels, supported transmission rates, etc.). ), and configure the parameters of the data channel 530.
  • the initialization scene configuration module 511 is an optional module.
  • the initialization scene configuration module 521 is an optional module.
  • the slave device 520 may also directly receive the preset ratio sent by the master device 510, and then perform the initial configuration of the data channel 530 based on the preset ratio.
  • the physical layer 512/522 is used to transmit the payload data, and optionally, is used to transmit the payload data after the initial configuration of the data channel 530 is completed.
  • the physical layer 512 is used for the master device 510 to communicate with the slave device 520 via the data channel 530 or the out-of-band channel 540 .
  • Physical layer 522 is used for slave device 520 to communicate with master device 510 via data channel 530 or out-of-band channel 540 .
  • the physical layer 512 may include N transceiver modules (including a TX module and an RX module, referred to as TRX modules), specifically: TRX module 0, TRX module 1, . . . , TRX module (N-1).
  • TRX modules specifically: TRX module 0, TRX module 1, . . . , TRX module (N-1).
  • the N data channels in the data channel 530 correspond to N TRX modules in the physical layer 512 and N TRX modules in the physical layer 522, respectively, and one data channel corresponds to one TRX module in the physical layer 512 and the physical layer.
  • data lane 0 corresponds to TRX module 0 in physical layer 512 and TRX module 0 in physical layer 522 .
  • the data sent by the master device 510 is transmitted to the data channel 0 through the TRX module 0 in the physical layer 512 (the TX module actually works), and then transmitted to the TRX module 0 in the physical layer 522 via the data channel 0, and the slave device 520
  • the data sent by the master device 510 is received through the TRX module 0 in the physical layer 522 (which actually works is the RX module therein).
  • the master device 510 receives the data sent by the slave device 520 through the TRX module 0 in the physical layer 512 (the actual working is the RX module), and the data is sent by the slave device 520 through the TRX module 0 in the physical layer 522 (the actual working is TX module), the data is transmitted via data channel 0.
  • the business scenario management module 513 is an optional module.
  • the service scenario management module 513 is optionally configured to determine whether to change the data channel ratio of the data channel 530 at the physical layer 512 according to the service identifier in the service data packet. When it is determined that the data channel ratio does not need to be changed, the data transmission process (implemented by the physical layer 512) can be entered. When it is determined that the data channel ratio needs to be changed, the configuration process of the data channel can be entered (implemented by the data channel management module 514).
  • the service scenario management module 513 is optionally configured to determine whether to change the number of sending channels and/or receiving channels in the data channel 530 at the physical layer 512 according to the service identifier in the service data packet. When it is determined that there is no change, the data transmission process (implemented by the physical layer 512) can be entered. When it is determined to change, the configuration process of the data channel can be entered (implemented by the data channel management module 514).
  • the master device 510 may send a control code stream to the slave device 520 through any one of the data channels 530 (eg, data channel 0) or the out-of-band channel 540, so that the slave device 520 performs the data channel configuration process.
  • the service scenario management module 513 may also be configured to determine the data channel ratio to be changed (which may be referred to as the target ratio) according to the service identifier in the service data package.
  • the service scenario management module 513 may also be used to manage the correspondence between service identifiers and data channel ratios.
  • a service identifier is used to identify a service scenario, and optionally, a service identifier corresponds to a data channel ratio suitable for the service scenario.
  • a data channel ratio is applicable to a business scenario specifically: when the data channel ratio is used in the business scenario, the probability of the data channel being idle or insufficient is less than or not greater than a preset threshold, and bandwidth resources are fully utilized.
  • the service scenario management module 513 may be further configured to determine the number of corresponding sending channels and/or receiving channels according to the service identifier in the service data packet.
  • the service scenario management module 513 can also be used to manage the correspondence between service identifiers and the number of corresponding sending channels and/or receiving channels.
  • a service identifier is used to identify a service scenario, and optionally, a service identifier corresponds to a number of sending channels and/or receiving channels applicable to the service scenario.
  • the probability of data channels being idle or insufficient is less than or not greater than a preset threshold, and bandwidth resources are fully utilized.
  • Data channel management modules 514/523 are optional modules.
  • the data channel management module 514/523 optionally, is used to implement the configuration process of the data channel.
  • the configuration process is different from the initial configuration data channel.
  • the purpose of the configuration process is based on different business scenarios (through business data.
  • the service identifier in the packet reflects the ratio of the configuration data channel, and the purpose of the initialization configuration data channel implemented by the initialization scene configuration module 511/521 is to set the data channel ratio to a preset ratio.
  • the configuration process is implemented after initializing the configuration data channel, that is, the ratio of the data channel after initializing the configuration data channel can be changed.
  • the above-mentioned data channel ratio (including the preset ratio) can also be replaced with the corresponding number of sending channels and/or receiving channels.
  • the data channel management module 514/523 includes a data reverse control module 514A/523A.
  • the data reverse control module 514A in the master device 510 is used to perform reverse channel switching, that is, adjust the transmission direction of some data channels, optionally, determine the reverse transmission based on the service identifier in the service scenario management module 513. data channel, and reversely switch the determined data channel to adjust the transmission direction of the data channel.
  • the data reverse control module 523A in the slave device 520 is configured to perform channel reverse switching based on the control code stream sent by the master device 510, optionally, determine the data channel to be reversely transmitted based on the above control code stream, optionally , the data channel in the disabled state is determined as the data channel to be transmitted in reverse, optionally, the slave device 520 performs reverse switching on the determined data channel to adjust the transmission direction of the data channel.
  • the above-mentioned reverse switching of the determined data channel may specifically be: switching a circuit switch of the data channel, and switching the transmission channel/reception channel to the reception channel/transmission channel.
  • the data channel management module 514/523 includes a re-link control module 514B/523B.
  • the link rebuilding control module 514B/523B is configured to control the data channel 530 to perform handshake and link building again, and optionally, to control the data channel 530 to perform handshake link building again after the reverse channel switching process is completed.
  • the link rebuilding control module 514B/523B is configured to control the data channel 530 to perform handshake and link building again, and optionally, to control the data channel 530 to perform handshake link building again after the reverse channel switching process is completed.
  • the physical layer 512 corresponds to the transceiver 403
  • the data channel 530 and the out-of-band channel 540 correspond to the transceiver 403
  • the module corresponds to the processor 401 .
  • the physical layer 522 corresponds to the transceiver 403
  • the data channel 530 and the out-of-band channel 540 correspond to the transceiver 403
  • the module corresponds to the processor 401 .
  • modules shown in FIG. 5 may be software modules or hardware modules.
  • FIG. 4-FIG. 5 are only examples, and the number of modules included in the first system, the master device and the slave device may be more or less, and the multiple modules included may also be integrated together.
  • a module may also include multiple sub-modules, which should not be construed as a limitation.
  • the first system may be a terminal, such as the electronic device 400 shown in FIG. 4 above.
  • the software system of the terminal may adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture.
  • the software system of the layered architecture may be an Android (Android) system or a Huawei mobile services (huawei mobile services, HMS) system.
  • the embodiments of the present application take an Android system with a layered architecture as an example to exemplarily describe the software structure of the terminal 600 .
  • FIG. 6 is a block diagram of a software structure of a terminal 600 according to an embodiment of the present invention.
  • the layered architecture divides the software into several layers, and each layer has a clear role and division of labor.
  • the layers communicate with each other through a software interface.
  • the Android system is divided into four layers, which are, from top to bottom, an application layer, an application framework layer, an Android runtime (Android runtime) and a system library, and a kernel layer.
  • the application layer can include a series of application packages.
  • the application package can include applications such as camera, gallery, music, video, file management, mysql, Spark, Nginx, Redis, etc.
  • an application in the application layer can generate a service data package, and the service data package can be encapsulated with a service identifier added.
  • a service identifier is used to identify a business scenario, and a business scenario can be understood as a business operation. scene. The ratio of read and write bandwidth required by different business scenarios can be different.
  • a service identifier is used to identify an application, and it can be understood that an application corresponds to a service scenario, and the service scenario is a scenario in which the service of the application runs.
  • the service identifier carried in the service data packet of MySQL is different from the service identifier carried in the service data packet of Spark.
  • different business operation scenarios of one application are different business scenarios, and one application corresponds to multiple business scenarios.
  • the storage application mysql includes a service for storing data and a service for reading data, and the service identifier carried in the service data packet for storing data is different from the service identifier carried in the service data packet for reading data.
  • the application framework layer provides an application programming interface (application programming interface, API) and a programming framework for applications in the application layer.
  • the application framework layer includes some predefined functions.
  • the application framework layer may include window managers, content providers, view systems, telephony managers, resource managers, notification managers, and the like.
  • a window manager is used to manage window programs.
  • the window manager can get the size of the display screen, determine whether there is a status bar, lock the screen, take screenshots, etc.
  • Content providers are used to store and retrieve data and make these data accessible to applications.
  • the data may include video, images, audio, calls made and received, browsing history and bookmarks, phone book, etc.
  • the view system includes visual controls, such as controls for displaying text, controls for displaying pictures, and so on. View systems can be used to build applications.
  • a display interface can consist of one or more views.
  • the display interface including the short message notification icon may include a view for displaying text and a view for displaying pictures.
  • the telephony manager is used to provide the communication function of the terminal 600 .
  • the management of call status including connecting, hanging up, etc.).
  • the resource manager provides various resources for the application, such as localization strings, icons, pictures, layout files, video files and so on.
  • the notification manager enables applications to display notification information in the status bar, which can be used to convey notification-type messages, and can disappear automatically after a brief pause without user interaction. For example, the notification manager is used to notify download completion, message reminders, etc.
  • the notification manager can also display notifications in the status bar at the top of the system in the form of graphs or scroll bar text, such as notifications of applications running in the background, and notifications on the screen in the form of dialog windows. For example, text information is prompted in the status bar, a prompt sound is issued, the electronic device vibrates, and the indicator light flashes.
  • Android Runtime includes core libraries and a virtual machine. Android runtime is responsible for scheduling and management of the Android system.
  • the core library consists of two parts: one is the function functions that the java language needs to call, and the other is the core library of Android.
  • the application layer and the application framework layer run in virtual machines.
  • the virtual machine executes the java files of the application layer and the application framework layer as binary files.
  • the virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, safety and exception management, and garbage collection.
  • a system library can include multiple functional modules. For example: surface manager (surface manager), media library (Media Libraries), 3D graphics processing library (eg: OpenGL ES), 2D graphics engine (eg: SGL), etc.
  • surface manager surface manager
  • media library Media Libraries
  • 3D graphics processing library eg: OpenGL ES
  • 2D graphics engine eg: SGL
  • the Surface Manager is used to manage the display subsystem and provides a fusion of 2D and 3D layers for multiple applications.
  • the media library supports playback and recording of a variety of commonly used audio and video formats, as well as still image files.
  • the media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
  • the 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.
  • 2D graphics engine is a drawing engine for 2D drawing.
  • the kernel layer is the layer between hardware and software.
  • the kernel layer contains at least display drivers, camera drivers, audio drivers, and sensor drivers.
  • the method may be applied to a first system, which may include a master device and a slave device.
  • the first system may be the electronic device 400 shown in FIG. 4
  • the master device may be the processor 401
  • the slave device may be the memory 402 , the camera, the display screen, or the transceiver 403 , and the like.
  • the master device or the slave device may be the electronic device 400 shown in FIG. 4 .
  • the master device and the slave device may be the master device 510 and the slave device 520 shown in FIG. 5 .
  • FIG. 7 shows a method for configuring a data transmission bandwidth provided by an embodiment of the present application.
  • the method includes but is not limited to the following steps:
  • the master device configures a data channel based on a preset ratio.
  • S101 is an optional step.
  • N data channels with bidirectional transmission capability are included between the master device and the slave device, and any data channel among the N data channels can be used as a sending channel, that is, data is transmitted in the direction from the master device to the slave device. It can also be used as a receiving channel, that is, the data is transmitted in the direction from the slave device to the master device.
  • the preset ratio may be the ratio of the receiving channel and the sending channel in the preset scenario (ie, the ratio of the data channel), that is, the read-write bandwidth ratio.
  • the master device in the absence of application layer service triggering, the master device may be currently in a preset scene by default, so the data channel ratio is set to a preset ratio. This step may also be referred to as initializing the configuration data channel.
  • the preset ratio may be determined according to the overall performance requirements of the first system where the master device and the slave device are located (for example, the overall characteristics of the read and write operations of a circuit or a certain bus).
  • the preset scene may be a scene determined by the master device in most cases, for example, the number of times the preset scene is located is greater than or equal to a preset threshold.
  • the master device is the CPU and the slave device is the memory.
  • the master device can configure the data channel to be in full transmission state, that is, the preset ratio is 0:1.
  • the master device can send data to the slave device through N transmission channels, and the slave device only receives data, that is to say, the preset
  • the scenario is specifically a business scenario of only writing but not reading out in a storage application.
  • the master device can configure the data channel to be fully received, that is, the preset ratio is 1:0.
  • the slave device can send data to the master device through N receiving channels, and the master device only receives data, that is, the preset ratio is 1:0.
  • the scenario is a business scenario that only reads and does not write under the storage application.
  • the master device can set the data channel ratio to a preset ratio of 1:1.
  • the master device can use (N/2) transmission channels to send data to the slave device, and the slave device can also use other (N/2) transmission channels to send data to the slave device. ) receiving channels to send data to the master device, that is to say, the preset scenario is specifically the business scenario of reading and writing under the storage application (the ratio of read and write bandwidth is 1:1).
  • S102 The master device sends first indication information to the slave device.
  • the first indication information is used to instruct the slave device to set the data channel ratio to a preset ratio, that is, instruct the slave device to initialize the configuration data channel.
  • the first indication information is transmitted in the form of differential signal line-to-line conversion, for example, the first indication information includes a plurality of control codes, which may be referred to as a control code stream.
  • the slave device configures the data channel based on the first indication information.
  • S103 is an optional step.
  • the data channel ratios of the master device and the slave device are kept the same, that is, both are preset ratios.
  • the first indication information may include a preset ratio.
  • the slave device is preset with a preset ratio, and after receiving the first indication information, the data channel ratio is directly set to the preset preset ratio, for example, the slave device is the slave device 520 shown in FIG. 5 above. , after receiving the first indication information, initialize the configuration data channel through the initialization scene configuration module 521 .
  • the preset ratio can also be replaced with the number of corresponding sending channels and/or receiving channels.
  • the first indication information includes the number of corresponding sending channels and/or receiving channels.
  • S104 The master device and the slave device perform a handshake to establish a chain.
  • S104 is an optional step.
  • a handshake can be performed to establish a chain.
  • the master device and the slave device can obtain the number of available data channels (assuming the above N), and the logical channel numbers of the N data channels (assuming lane0, lane1,...,lane( N-1)).
  • the master device determines to change the configuration of the data channel based on the service identifier in the first data packet.
  • S105 is an optional step.
  • the master device may determine at least one data channel for switching the data transmission direction based on the service identifier in the first data packet.
  • the master device may determine at least one data channel for switching the data transmission direction based on the service scenario corresponding to the service identifier in the first data packet.
  • the master device may determine S data channels that are disabled (disabled) based on the service identifier in the first data packet, and then determine T data channels for switching the data transmission direction from the S data channels.
  • S and T are both positive integers, and S is greater than or equal to T.
  • the master device may determine the S data channels that are disabled based on the service scenario corresponding to the service identifier in the first data packet, and then determine from the S data channels to switch the data transmission direction.
  • the master device may first obtain the first data packet of the first application, the first application is an application running on the master device, optionally, the first application is an application running on the first system where the master device and the slave device are located. application.
  • the service of the first application in the application layer triggers the master device to execute S105.
  • the first application is an already running application, for example, an application running in a preset scenario.
  • the ratio of read and write bandwidth required by the application in different scenarios may also be different, that is, the ratio of the receive channel and the transmit channel may be different.
  • it can be set by user operation, for example, the user inputs a first instruction to switch the scene.
  • the ratio of read and write bandwidth required by a camera application in a photographing scenario is different from that required by a camera application.
  • the storage application requires a small proportion of read and write bandwidth, and the number of required transmission channels is large.
  • the storage application requires a large proportion of read and write bandwidth.
  • the number of receive channels required is larger.
  • the first application is a newly running application, for example, it is different from an application running in a preset scenario.
  • the ratio of read and write bandwidth required by different applications can be different, that is, the ratio of receive channels and transmit channels may be different.
  • different storage applications require different ratios of read and write bandwidth.
  • the first data packet may include a service identifier.
  • a service identifier corresponding to the first data packet may be added.
  • a business identifier can identify a business scenario, and the business scenario can be understood as a scenario in which the business is running.
  • it may correspond to a read/write bandwidth ratio (which can also be understood as a data channel ratio) suitable for the business scenario.
  • a data channel ratio is applicable to a business scenario specifically: when the data channel ratio is used in the business scenario, the probability of the data channel being idle or insufficient is less than or not greater than a preset threshold, and bandwidth resources are fully utilized.
  • the service identifier in the first data packet may identify the application corresponding to the first data packet, and the master device may identify the service identifier of the first data packet at the physical layer.
  • the master device may determine, according to the service identifier of the first data packet, a read-write bandwidth ratio applicable to the application corresponding to the first data packet.
  • the master device may determine the required number of transmit channels and/or receive channels according to the determined read/write bandwidth ratio.
  • the master device may determine the required number of sending channels and/or receiving channels according to the service identifier of the first data packet.
  • the master device may have multiple built-in correspondences between service identifiers and read/write bandwidth ratios.
  • the master device may have built-in correspondences between multiple service identifiers and the number of sending channels and/or receiving channels. Specific examples are shown in Table 1 below.
  • [x] is the rounding of x, for example, [N/3] is the rounding of (N/3).
  • the service identifier in the first data packet is 01h
  • the master device may determine that the number of corresponding sending channels is (N/3) according to the service identifier.
  • Table 1 above takes an example that a service identifier is used to identify an application. It can also be understood that an application corresponds to a service scenario, and the service scenario is a scenario in which the service of the application runs. Not limited to this, it may also be a service identifier used to identify a service of an application, different service operation scenarios of an application are different service scenarios, and an application corresponds to multiple service scenarios.
  • the storage application mysql includes the business of storing data and the business of reading data. The business identifier carried in the business data packet of the storage data is different from the business identifier carried in the business data packet of the read data. The corresponding read and write services The bandwidth ratio is also different.
  • the master device determines the data channel ratio (which may be referred to as the target ratio) corresponding to the service identifier in the first data packet, it can determine whether the preset ratio and the target ratio are the same. Then there is no need to change the data channel ratio, and data transmission can be performed directly. Optionally, if it is different, the data channel ratio needs to be set to the target ratio, and then data transmission is performed. Optionally, the data transmission can be performed in the first data packet. in the business scenario identified by the business identifier.
  • FIG. 7 takes the different preset ratio and target ratio as an example for description. For an example of the same preset ratio and target ratio, please refer to FIG. 8 below.
  • the master device can judge the current number of sending channels and/or receiving channels and the above-determined sending channels and/or Whether the number of receiving channels is the same, optionally, if they are the same, there is no need to change the ratio of data channels, and data transmission can be performed directly.
  • data transmission is performed.
  • the data transmission may be performed in the service scenario identified by the service identifier in the first data packet.
  • FIG. 7 uses different numbers as an example for description, and an example with the same number can refer to FIG. 8 below.
  • the master device may determine the type (sending channel or receiving channel) and number of data channels whose transmission direction needs to be changed according to the target ratio.
  • the master device may determine the type (sending channel or receiving channel) and number of data channels whose transmission direction needs to be changed according to the number of sending channels and/or receiving channels corresponding to the service identifier of the first data packet. That is, the master device can determine the data channel whose transmission direction needs to be changed according to the service identifier of the first data packet.
  • the master device may also determine at least one data channel for switching the transmission direction according to the current service scenario, the specific description is similar to the above description of determining the at least one data channel for switching the transmission direction according to the service identifier, and will not be repeated.
  • S106 The master device sends the first control information to the slave device through the first channel.
  • S106 is an optional step.
  • the first control information is used to instruct the slave device to perform reverse channel switching.
  • the first control information is used to instruct the slave device to switch the transmission direction of at least one data channel, and to switch the sending channel/receiving channel to receiving. channel/transmit channel, optionally, to achieve the effect of setting the data channel ratio to the target ratio.
  • the first control information is transmitted in the form of differential signal line-to-line conversion, for example, the first control information includes a plurality of control codes, which may be referred to as a control code stream.
  • the first control information includes indication information for indicating a data channel whose transmission direction needs to be changed.
  • the first control information includes an identifier of a data channel whose transmission direction needs to be changed, such as a logical channel number.
  • the first control information includes a target ratio, and the target ratio is used for the slave device to determine the data channel whose transmission direction needs to be changed.
  • the first control information includes a service identifier in the first data packet, where the service identifier is used by the slave device to determine a data channel whose transmission direction needs to be changed.
  • the first channel includes the following two situations:
  • the first channel is an in-band channel, that is, any one or any group of data channels among the N data channels, for example, data channel 0 (ie, lane0).
  • data channel 0 ie, lane0
  • the sending function of lane0 may be saved for sending control information, so as to realize reverse switching of the data channel.
  • the master device and the slave device will not perform channel reverse switching on the first channel, that is, the transmission direction of the first channel cannot be changed (the transmission direction determined by the master device needs to be changed.
  • the data channel does not include the first channel).
  • the preset ratio and the target ratio will not be 1:0, that is, the preset scenario and the service scenario corresponding to the first data packet will not be a scenario of read-only but not written.
  • the first control information is transmitted through the in-band channel, the transmission efficiency is high, and the reverse switching speed of the channel is high.
  • the second channel is an out-of-band channel.
  • the out-of-band channel is a transmission channel between the master device and the slave device except for the N data channels.
  • the out-of-band channel is not used for data transmission. transmission channel.
  • the out-of-band channel 540 eg, the control channel shown in FIG. 5 above.
  • the control information is sent through out-of-band transmission, so as to flexibly configure the transmission direction of the data channel, and the preset scene and the business scene corresponding to the first data packet can be any business scene (for example, read-only). Scenarios that are not written), the coverage scenarios are more comprehensive.
  • S107 The master device performs channel reverse switching.
  • S107 is an optional step.
  • S108 The slave device performs reverse channel switching based on the first control information.
  • S108 is an optional step.
  • the master device or the slave device when it performs reverse channel switching, it can switch the transmission direction of at least one data channel among the N data channels, switch the sending channel to the receiving channel and/or switch the receiving channel to the sending channel, and Optionally, to achieve the effect of setting the data channel ratio to the target ratio.
  • switching the transmission direction of the data channel may be specifically: switching the first switch of the data channel, and the first switch is used to switch the TX PHY/RX PHY circuit of the data channel to the RX PHY/TX PHY circuit, so as to realize the transmission channel. The effect of switching the /receive channel to the receive channel/transmit channel.
  • the transmission direction of the in-band channel will not be switched.
  • the master device determines at least one data channel whose direction needs to be switched, it will not determine the first channel as the data channel whose direction needs to be switched.
  • the master device or the slave device may first disable (disable) the data channel whose transmission direction needs to be changed.
  • the master device may disable (disable) the data channel that needs to change the transmission direction, optionally, the master device may send second indication information to the slave device to indicate that the slave device is in a disabled (disabled) state. data channel.
  • the slave device may perform channel reverse switching on a data channel in a disabled (disabled) state (ie, a data channel whose transmission direction needs to be changed).
  • the first control information includes indication information for indicating a data channel whose transmission direction needs to be changed, such as a logic signal of a data channel whose transmission direction needs to be changed.
  • the slave device may determine data channels whose transmission direction needs to be changed based on the first control information, and then perform channel reverse switching on these data channels.
  • the above-mentioned data channel whose transmission direction needs to be changed may be part or all of the at least one data channel that is in a disabled (disabled) state.
  • S109 The master device and the slave device perform a handshake to establish a chain.
  • S109 is an optional step.
  • the master device and the slave device can re-handshake to establish a chain, and the specific process is the same as S104.
  • S110 The master device and the slave device perform data transmission.
  • the master device can send data to the slave device through the sending channel, and the slave device can receive data through the sending channel. And/or, the slave device can send data to the master device through the receive channel, and the master device can receive data through the receive channel.
  • the above data may be transmitted in the service scenario identified by the service identifier in the first data packet.
  • S111 The master device initializes the configuration data channel.
  • S111 is an optional step.
  • S112 Initialize the configuration data channel from the device.
  • S112 is an optional step.
  • the master device and the slave device may initialize the configuration data channel, that is, set the data channel ratio to a preset ratio.
  • the setting method is similar to the above-mentioned process of setting the data channel ratio to the target ratio (ie, S106-S109 ), and will not be repeated here.
  • the master device can wait for the trigger of the next application layer service, and then judge whether to change the data channel ratio according to the service identifier in the service data packet. If it is determined to change the ratio of the data channel, the configuration process of the data channel is performed, and the process is similar to S106-S112, and will not be repeated here. If it is determined that the ratio of the data channel is not changed, the data transmission will be performed directly.
  • the completion of data transmission can be understood as: the master device or the slave device receives the last data packet (ie, the data packet carrying the end flag).
  • the device (slave device or master device) that sends the last data packet may carry an end flag in the last data packet to mark the completion of this data transmission.
  • the order of S101 and S102 is not limited, and the order of S101 and S103 is not limited, but S102 is before S103.
  • the order of S106 and S107 is not limited, and the order of S107 and S108 is not limited, but S106 is before S108.
  • the order of S111 and S112 is not limited.
  • the master device is a central processing unit (CPU) and the slave device is a memory (memory) as an example):
  • Example 1 Assuming that the preset scenario is the first service scenario that only writes and does not read, that is, the preset ratio is 0:1, the number of sending channels is N, and the number of receiving channels is 0. And, assuming that the target ratio is M:(N-M), the first data packet in the second service scenario triggers the master device to execute S105, after the reverse switching of the channels, the number of sending channels is (N-M), and the number of receiving channels is M , where M is a positive integer less than N. Assuming that the first channel for sending the first control information is lane 0 (in-band channel), at this time, the flow of reverse channel switching between the master device and the slave device is shown in Table 2 below.
  • Table 2 The reverse switching process of M sending channels (switching from sending channel to receiving channel).
  • the transmission direction of M sending channels (lane(N-M), lane(N-M+1), ..., (laneN-1)) is changed, that is, switched to M receiving channels, then the sending channel Decrease from N to (N-M), and increase the receive channel from 0 to M, that is, the data channel ratio is set to M:(N-M).
  • the master device and the slave device can not only transmit data through M receiving channels (lane(N-M), lane(N-M+1), ..., (laneN-1)), but also Other (N-M) sending channels (lane0, lane1, ..., lane(N-M-1)) transmit data, specifically the master device sends data through the above (N-M) sending channels, and the slave device receives data through the above (N-M) sending channels data.
  • M receiving channels lane(N-M), lane(N-M+1), ..., (laneN-1)
  • Other (N-M) sending channels lane0, lane1, ..., lane(N-M-1)
  • the sending function on the memory side can be released, and the CPU initializes and configures the data channel, so as to set the data channel ratio to the preset configuration. purpose of comparison.
  • the CPU can wait for the application layer service to be triggered again.
  • Example 2 Assuming that the preset scenario is the third business scenario of reading and writing (the preset ratio is 1:1), the number of sending channels and receiving channels are both (N/2), and the sending channels include lane0, lane1, ... , lane(N/2-1), the receiving channel includes lane(N/2), lane(N/2-1)..., lane(N-1).
  • the target ratio is 0:1
  • only the first data packet in the first service scenario that is not read is written to trigger the master device to execute S105.
  • the number of receiving channels is 0, and the The number is N.
  • the first channel for sending the first control information is lane0 (in-band channel)
  • the flow of reverse channel switching between the master device and the slave device is shown in Table 3 below.
  • Table 3 (N/2) Reverse switching process of receiving channels (switching from receiving channel to sending channel).
  • the transmission directions of (N/2) receive channels (lane(N/2), lane(N/2-1)..., lane(N-1)) are changed, that is, switched to (N /2) sending channels, the receiving channel is reduced from (N/2) to 0, and the sending channel is increased from (N/2) to N, that is, the data channel ratio is set to 0:1.
  • the master device and the slave device can not only transmit through (N/2) channels (lane(N/2), lane(N/2-1)..., lane(N-1)) Data is transmitted, and data can also be transmitted through other (N/2) sending channels (lane0, lane1, ..., lane(N/2-1)).
  • the memory and the CPU can initialize and configure the data channel to achieve the purpose of setting the ratio of the data channel to a preset ratio.
  • the CPU can wait for the application layer service to be triggered again.
  • Example 3 Assuming that the preset scenario is the third business scenario of reading and writing (the preset ratio is 1:1), the number of sending channels and receiving channels are both (N/2), and the sending channels include lane0, lane1,... , lane(N/2-1), the receiving channel includes lane(N/2), lane(N/2+1)..., lane(N-1). Furthermore, assuming that the target ratio is M:(N-M), the first data packet in the second service scenario triggers the master device to execute S105, and after the reverse switching of channels, the number of receiving channels is M, and the number of sending channels is N-M.
  • M is a positive integer less than N and M is not equal to N/2, that is, the second service scenario is also a read-write scenario but is different from the third service scenario (the ratio of data channels is not 1:1).
  • the process of channel reverse switching between the master device and the slave device includes the following two situations:
  • Table 4 The reverse switching process of K1 receiving channels (switching from the receiving channel to the sending channel).
  • the transmission direction of K1 receiving channels (lane(N/2), ..., lane(N-M-1)) is changed, that is, switched to K1 transmitting channels, then the transmitting channel is changed from (N/2) Increase to (N-M), the receive channel is reduced from (N/2) to M, that is, the data channel ratio is set to M:(N-M).
  • the master device and the slave device can not only transmit data through K1 sending channels (lane(N/2), ..., lane(N-M-1)), but also through other (N/2) transmit channels (lane0, lane1, ..., lane(N/2-1)) to transmit data, and also through other M receive channels (lane(N-M), lane(N-M+1), ..., laneN- 1) Transfer data.
  • Table 5 The reverse switching process of K2 sending channels (switching from sending channel to receiving channel).
  • the transmission direction of K2 transmit channels (lane0,...,lane(M-N/2-1)) is changed, that is, switched to K2 receive channels, then the transmit channel is reduced from (N/2) to ( N-M), the receive channel is increased from (N/2) to M, that is, the data channel ratio is set to M:(N-M).
  • the master device and the slave device can not only transmit data through K2 receiving channels (lane0,...,lane(M-N/2-1)), but also can transmit data through other (N/2) receiving channels (lane(N/2), lane(N/2+1)..., lane(N-1)), and also through other N-M transmit channels (lane(M-N/2), lane(M-N/2 +1), ..., lane lane(N/2-1)) to transmit data.
  • the memory and the CPU can initialize and configure the data channel to achieve the purpose of setting the ratio of the data channel to a preset ratio.
  • the CPU can wait for the application layer service to be triggered again.
  • a service identifier can be added to the data packet at the protocol layer, and the configuration process of the data channel can be performed at the physical layer based on the service identifier, so as to realize intelligent real-time configuration based on different service scenarios.
  • the proportion of the data channel (that is, the ratio of the transmission and reception bandwidth), to avoid the waste of bandwidth resources and unnecessary link power consumption caused by the idle data channel, and make reasonable use of the data transmission bandwidth.
  • the in-band channel or the out-band channel is triggered at the physical layer to send the control code stream to switch the transmission direction of the data channel, and the method of configuring the proportion of the data channel according to the service requirements is more flexible.
  • the embodiment of the present application does not need to design multiple data channels, which not only avoids the waste of bandwidth resources and unnecessary link power consumption caused by idle data channels, but also satisfies the requirements of small hardware. ization needs.
  • the embodiment of the present application does not need to configure the data channel through the reverse communication function, but directly configures the data channel based on the service identifier in the service data packet, which can maintain high speed.
  • the mode remains unchanged, and there is no need to change to a mode with a lower transmission rate such as low power consumption or ALP, which meets the needs of high bandwidth and low latency.
  • the data channel of reverse transmission and the data channel of forward transmission can work together (in the enabled state), and there is no situation that the reverse transmission rate is only a quarter of the forward transmission rate, and the transmission effect is better. it is good.
  • the master device can also determine not to change the configuration of the data channel based on the service identifier in the first data packet, that is, the preset ratio and the target ratio are the same, and data transmission can be performed directly.
  • a specific example is as shown in the following figure 8 shown.
  • FIG. 8 is another method for configuring a data transmission bandwidth provided by an embodiment of the present application.
  • the method includes but is not limited to the following steps:
  • the master device configures a data channel based on a preset ratio.
  • S202 The master device sends first indication information to the slave device.
  • S203 The slave device configures the data channel based on the first indication information.
  • S204 The master device and the slave device perform a handshake to establish a chain.
  • S201-S204 are the same as S101-S104 in FIG. 7 above, and are not repeated here.
  • the master device determines not to change the configuration of the data channel based on the service identifier in the first data packet.
  • S205 is an optional step.
  • the master device determines The preset ratio is the same as the target ratio, or the master device determines the number of the current sending channel and/or the receiving channel in S205, which is the same as the number of the sending channel and/or the receiving channel determined according to the service identifier in the first data packet. .
  • S206 The master device and the slave device perform data transmission.
  • S206 is similar to S110 in FIG. 7 , and optionally, the data is data transmitted in a preset scenario.
  • the data channel is in a disabled state, or the related modules of the data channel are all powered off.
  • the data channel (a pair of differential lines) is connected to and The unconnected TX modules and RX modules are all powered off.
  • the disabled state can also be understood as a closed state.
  • the communication interface can also be an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, pulse code modulation (pulse code modulation) modulation, PCM) interface, universal asynchronous receiver/transmitter (UART) interface, general-purpose input/output (GPIO) interface, subscriber identity module (SIM) interface, and / or universal serial bus (universal serial bus, USB) interface, etc.
  • I2C integrated circuit
  • I2S integrated circuit built-in audio
  • pulse code modulation pulse code modulation
  • PCM pulse code modulation
  • UART universal asynchronous receiver/transmitter
  • GPIO general-purpose input/output
  • SIM subscriber identity module
  • USB universal serial bus
  • the transmission mode of the communication interface may also include not only the LP mode and the HS mode (and the ALP mode in the HS mode).
  • the above-mentioned high-speed mode may be a mode in which the transmission rate of other communication interfaces is relatively high. This application does not limit this.
  • the aforementioned storage medium includes various media that can store computer program codes, such as ROM or RAM, magnetic disk or optical disk.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请实施例提供一种数据传输带宽的配置方法及相关设备,该方法应用于第一系统,第一系统包括主设备和从设备,主设备和从设备之间通过多个数据通道传输数据,该方法包括:主设备基于第一业务标识符确定切换传输方向的至少一个数据通道;主设备切换上述至少一个数据通道的传输方向;主设备向从设备发送第一控制信息,第一控制信息用于指示从设备切换上述至少一个数据通道的传输方向;从设备基于第一控制信息切换上述至少一个数据通道的传输方向。本申请可以基于对应不同业务场景的业务标识符灵活配置数据通道,从而灵活配置数据传输带宽,避免了带宽资源被浪费和不必要的功耗。

Description

一种数据传输带宽的配置方法及相关设备
本申请要求于2021年02月27日提交中国专利局、申请号为202110221278.1、申请名称为“一种通信方法及电子设备”的中国专利申请的优先权,本申请要求于2021年05月19日提交中国专利局、申请号为202110549236.0、申请名称为“一种数据传输带宽的配置方法及相关设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及数据通信接口技术领域,尤其涉及一种数据传输带宽的配置方法及相关设备。
背景技术
通信接口可以将感知、计算、表达、存储等功能模块连接为系统。例如,终端的通信接口可以实现终端的处理器和存储器、显示屏、摄像头等组件之间的通信,不同业务场景下,所需的通信接口的收发带宽比例可以不同,如处理器从存储器中读出数据时所需的收发带宽比例(此时也可称为读写带宽比例)为1:0,处理器向显示屏写入数据以实现显示功能时所需的读写带宽比例为0:1。然而,通信接口的收发带宽比例通常是根据上述系统的整体性能要求设计的固定值,不支持实时配置,因此存在带宽资源被浪费的情况,增加了不必要的功耗。
发明内容
本申请实施例公开了一种数据传输带宽的配置方法及相关设备,可以基于不同的业务场景灵活配置通信接口的收发带宽比例,从而避免带宽资源被浪费和不必要的功耗。
第一方面,本申请实施例提供了一种数据传输带宽的配置方法,应用于第一系统,所述第一系统包括主设备和从设备,所述主设备和所述从设备之间通过多个数据通道传输数据,该方法包括:所述主设备基于第一业务标识符确定切换传输方向的至少一个数据通道;所述主设备切换所述至少一个数据通道的传输方向;所述主设备向所述从设备发送第一控制信息,所述第一控制信息用于指示所述从设备切换所述至少一个数据通道的传输方向;所述从设备基于所述第一控制信息切换所述至少一个数据通道的传输方向。
可选地,一种业务标识符用于标识一种业务场景,可选地,不同业务场景所需的传输方向为第一方向的数据通道的数量不同,可选地,不同业务场景所需的收发带宽比例不同,收发带宽比例和不同传输方向的数据通道的数量相关。
本申请中,主设备可以根据业务标识符确定切换传输方向的至少一个数据通道。主设备和从设备之间可以通过多个数据通道传输数据,这多个数据通道可以包括已切换传输方向和未切换传输方向的数据通道,从而实现基于不同的业务场景(不同的业务标识符),智能化地配置不同的收发带宽比例,避免数据通道被闲置带来的带宽资源被浪费和不必要的链路功耗,合理利用数据传输带宽。
在一种可能的实现方式中,所述主设备基于第一业务标识符确定切换传输方向的至少一个数据通道,包括:所述主设备确定所述第一业务标识符对应的传输方向为第一方向的数据通道的数量,或所述第一业务标识符对应的收发带宽比例;所述主设备根据所述传输方向为第一方向的数据通道的数量或所述收发带宽比例,确定所述切换传输方向的所述至少一个数 据通道。
本申请中,一种业务标识符可以对应一个传输方向为第一方向的数据通道的数量,也可以对应一个收发带宽比例,对应关系的配置方式较为灵活,应用场景更为广泛。
在一种可能的实现方式中,所述数据通道的传输方向为从所述主设备到所述从设备的传输方向,或者为从所述从设备到所述主设备的传输方向。
在一种可能的实现方式中,所述第一控制信息包括用于指示所述至少一个数据通道的指示信息。
例如,第一控制信息包括所述至少一个数据通道的逻辑信道号。
在一种可能的实现方式中,所述主设备向所述从设备发送第一控制信息,包括:所述主设备通过第一通道向所述从设备发送所述第一控制信息,所述第一通道为所述多个数据通道中的一个或一组数据通道,或者所述第一通道为所述主设备和所述从设备之间的控制通道。
本申请中,发送第一控制信息的通道较为灵活,可以根据实际情况配置。例如,主设备和从设备之间的多个数据通道的传输方向均为从设备到主设备时,也可称为第一业务标识符对应(主设备)全收场景时,可以通过主设备和从设备之间的控制通道传输第一控制信息。应用场景更为广泛。
在一种可能的实现方式中,所述主设备向所述从设备发送第一控制信息时,所述主设备和所述从设备之间使用的传输模式为高速模式。
例如,上述高速模式为D-PHY定义的高速HS模式。
本申请可以保持高速模式配置数据通道,相比需改变为低功耗或备用低功耗这类传输速率较低的模式才能配置数据传输通道的方式(例如D-PHY的反向通信功能),本申请满足了高带宽和低延时的需求,传输效果更好。
在一种可能的实现方式中,所述从设备基于所述第一控制信息切换所述至少一个数据通道的传输方向之后,该方法还包括:所述主设备通过至少一个第一数据通道向所述从设备发送数据,以及所述主设备通过至少一个第二数据通道接收所述从设备发送的数据。
本申请中,两种传输方向的数据通道可以同时用于主设备和从设备传输数据,传输效率更高。
在一种可能的实现方式中,所述主设备为所述第一系统内的处理器,所述从设备为所述第一系统内的存储器、显示屏或摄像头。
第二方面,本申请实施例提供了一种数据传输带宽的配置方法,应用于主设备,所述主设备和从设备之间通过多个数据通道传输数据,该方法包括:基于第一业务标识符确定切换传输方向的至少一个数据通道;切换所述至少一个数据通道的传输方向;向所述从设备发送第一控制信息,所述第一控制信息用于指示所述从设备切换所述至少一个数据通道的传输方向。
可选地,一种业务标识符用于标识一种业务场景,可选地,不同业务场景所需的传输方向为第一方向的数据通道的数量不同,可选地,不同业务场景所需的收发带宽比例不同,收发带宽比例和不同传输方向的数据通道的数量相关。
本申请中,主设备可以根据业务标识符确定切换传输方向的至少一个数据通道。主设备和从设备之间可以通过多个数据通道传输数据,这多个数据通道可以包括已切换传输方向和未切换传输方向的数据通道,从而实现基于不同的业务场景(不同的业务标识符),智能化地配置不同的收发带宽比例,避免数据通道被闲置带来的带宽资源被浪费和不必要的链路功耗, 合理利用数据传输带宽。
在一种可能的实现方式中,所述基于第一业务标识符确定切换传输方向的至少一个数据通道,包括:确定所述第一业务标识符对应的传输方向为第一方向的数据通道的数量,或所述第一业务标识符对应的收发带宽比例;根据所述传输方向为第一方向的数据通道的数量或所述收发带宽比例,确定所述切换传输方向的所述至少一个数据通道。
本申请中,一种业务标识符可以对应一个传输方向为第一方向的数据通道的数量,也可以对应一个收发带宽比例,对应关系的配置方式较为灵活,应用场景更为广泛。
在一种可能的实现方式中,所述数据通道的传输方向为从所述主设备到所述从设备的传输方向,或者为从所述从设备到所述主设备的传输方向。
在一种可能的实现方式中,所述第一控制信息包括用于指示所述至少一个数据通道的指示信息。
例如,第一控制信息包括所述至少一个数据通道的逻辑信道号。
在一种可能的实现方式中,所述向所述从设备发送第一控制信息,包括:通过第一通道向所述从设备发送所述第一控制信息,所述第一通道为所述多个数据通道中的一个或一组数据通道,或者所述第一通道为所述主设备和所述从设备之间的控制通道。
本申请中,发送第一控制信息的通道较为灵活,可以根据实际情况配置。例如,主设备和从设备之间的多个数据通道的传输方向均为从设备到主设备时,也可称为第一业务标识符对应(主设备)全收场景时,可以通过主设备和从设备之间的控制通道传输第一控制信息。应用场景更为广泛。
在一种可能的实现方式中,所述向所述从设备发送第一控制信息时,所述主设备和所述从设备之间使用的传输模式为高速模式。
例如,上述高速模式为D-PHY定义的高速HS模式。
本申请可以保持高速模式配置数据通道,相比需改变为低功耗或备用低功耗这类传输速率较低的模式才能配置数据传输通道的方式(例如D-PHY的反向通信功能),本申请满足了高带宽和低延时的需求,传输效果更好。
在一种可能的实现方式中,所述至少一个数据通道的传输方向被切换之后,该还包括:通过至少一个第一数据通道向所述从设备发送数据,以及通过至少一个第二数据通道接收所述从设备发送的数据。
本申请中,两种传输方向的数据通道可以同时用于主设备和从设备传输数据,传输效率更高。
第三方面,本申请实施例提供了一种数据传输带宽的配置方法,应用于从设备,所述从设备和主设备之间通过多个数据通道传输数据,该方法包括:接收所述主设备发送的第一控制信息,所述第一控制信息用于指示切换至少一个数据通道的传输方向,所述至少一个数据通道是所述主设备根据第一业务标识符确定的切换传输方向的数据通道;基于所述第一控制信息切换所述至少一个数据通道的传输方向。
可选地,一种业务标识符用于标识一种业务场景,可选地,不同业务场景所需的传输方向为第一方向的数据通道的数量不同,可选地,不同业务场景所需的收发带宽比例不同,收发带宽比例和不同传输方向的数据通道的数量相关。
本申请中,主设备可以根据业务标识符确定切换传输方向的至少一个数据通道。主设备和从设备之间可以通过多个数据通道传输数据,这多个数据通道可以包括已切换传输方向和 未切换传输方向的数据通道,从而实现基于不同的业务场景(不同的业务标识符),智能化地配置不同的收发带宽比例,避免数据通道被闲置带来的带宽资源被浪费和不必要的链路功耗,合理利用数据传输带宽。
在一种可能的实现方式中,所述数据通道的传输方向为从所述主设备到所述从设备的传输方向,或者为从所述从设备到所述主设备的传输方向。
在一种可能的实现方式中,所述第一控制信息包括用于指示所述至少一个数据通道的指示信息。
例如,第一控制信息包括所述至少一个数据通道的逻辑信道号。
在一种可能的实现方式中,所述接收所述主设备发送的第一控制信息,包括:通过第一通道接收所述主设备发送的所述第一控制信息,所述第一通道为所述多个数据通道中的一个或一组数据通道,或者所述第一通道为所述主设备和所述从设备之间的控制通道。
本申请中,接收第一控制信息的通道较为灵活,可以根据实际情况配置。例如,主设备和从设备之间的多个数据通道的传输方向均为从设备到主设备时,也可称为第一业务标识符对应(主设备)全收场景时,可以通过主设备和从设备之间的控制通道传输第一控制信息。应用场景更为广泛。
在一种可能的实现方式中,所述接收所述主设备发送的第一控制信息时,所述主设备和所述从设备之间使用的传输模式为高速模式。
例如,上述高速模式为D-PHY定义的高速HS模式。
本申请可以保持高速模式配置数据通道,相比需改变为低功耗或备用低功耗这类传输速率较低的模式才能配置数据传输通道的方式(例如D-PHY的反向通信功能),本申请满足了高带宽和低延时的需求,传输效果更好。
在一种可能的实现方式中,所述基于所述第一控制信息切换所述至少一个数据通道的传输方向之后,该方法还包括:通过至少一个第一数据通道接收所述主设备发送的数据,以及通过至少一个第二数据通道向所述主设备发送数据。
本申请中,两种传输方向的数据通道可以同时用于主设备和从设备传输数据,传输效率更高。
第四方面,本申请实施例提供了一种第一系统,包括主设备和从设备,所述第一系统用于实现本申请实施例第一方面以及第一方面的任意一种实现方式提供的数据传输带宽的配置方法。
第五方面,本申请实施例提供了一种主设备,包括通信接口、处理器和存储器,上述存储器用于存储计算机程序,上述处理器调用上述计算机程序,用于执行本申请实施例第二方面以及第二方面的任意一种实现方式提供的数据传输带宽的配置方法。
第六方面,本申请实施例提供了一种从设备,包括通信接口,上述从设备用于执行本申请实施例第三方面以及第三方面的任意一种实现方式提供的数据传输带宽的配置方法。
第七方面,本申请实施例提供了一种计算机存储介质,该计算机存储介质存储有计算机程序,该计算机程序被电子设备执行时,实现本申请实施例第一方面至第三方面,以及第一方面至第三方面的任意一种实现方式提供的数据传输带宽的配置方法。
第八方面,本申请实施例提供了一种计算机程序产品,当该计算机程序产品在电子设备上运行时,使得该电子设备执行本申请实施例第一方面至第三方面,以及第一方面至第三方面的任意一种实现方式提供的数据传输带宽的配置方法。
第九方面,本申请实施例提供了一种芯片,上述芯片包括至少一个处理器、接口电路、 存储器,上述存储器、上述接口电路和上述至少一个处理器通过线路互联,上述存储器中存储有计算机程序,上述计算机程序被上述至少一个处理器执行时实现本申请实施例第一方面至第三方面,以及第一方面至第三方面的任意一种实现方式提供的数据传输带宽的配置方法。
第十方面,本申请实施例提供一种电子设备,该电子设备包括执行本申请任一实施例所介绍的方法或装置。上述电子设备例如为芯片。
附图说明
以下对本申请实施例用到的附图进行介绍。
图1-图2是本申请实施例提供的一些数据通道的架构示意图;
图3是本申请实施例提供的一种数据通道的结构示意图;
图4是本申请实施例提供的一种电子设备的硬件结构示意图;
图5是本申请实施例提供的一种第一系统的架构示意图;
图6是本申请实施例提供的一种电子设备的软件架构示意图;
图7-图8是本申请实施例提供的一些数据传输带宽的配置方法。
具体实施方式
下面将结合附图对本申请实施例中的技术方案进行清楚、详尽地描述。本申请实施例的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
本申请中,通信接口(也可称为硬件接口)可以将感知、计算、表达、存储等功能模块连接为系统,这些功能模块也可以称为集成电路(integrated circuit)设备,系统内的IC设备之间可以通过通信接口进行通信。
可选地,上述系统可以是终端,终端也可称为用户设备(user equipment,UE)。终端可以但不限于是手持设备、可穿戴设备、计算设备、便携式设备或车载设备等形式的电子设备,例如为:智能电视、智能摄像头等家居设备,智能手环、智能眼镜等可穿戴设备,或手机、平板电脑、手持计算机、个人数字助理(Personal Digital Assistant,PDA)、桌面型、膝上型、笔记本电脑、超级移动个人计算机(Ultra-mobile Personal Computer,UMPC)、上网本、智慧屏等其他设备。
可选地,终端可以包括多个IC设备,例如但不限于应用处理器、调制解调处理器等处理器、存储器、收发器、摄像头、显示屏等设备。处理器可以和其他IC设备进行通信,以实现终端的各个功能,例如和存储器进行通信实现存储功能,和收发器进行通信实现和其他终端通信的功能,和摄像头进行通信实现拍照、摄像等功能,和显示屏进行通信实现显示功能等。
可选地,通信接口可以通过数据传输通道(lane)实现系统内的IC设备之间的通信,数据传输通道用于传输IC设备之间的数据,数据传输通道也可以称为数据通道,数据通道的结构示例可参见下图3,暂不详述。
可选地,基于通信接口进行通信的两端设备可以分别称为主设备和从设备,从设备在主设备的控制下工作,例如基于主设备发送的控制码流执行相应的操作。
可选地,按照数据传输方向的不同,数据通道可以称为发送通道或接收通道。发送通道的传输方向为主设备到从设备的传输方向,接收通道的传输方向为从设备到主设备的传输方向。需要说明的是,发送通道和接收通道是以主设备的角度命名的,在具体实现中,也可以以从设备的角度命名,则发送通道的传输方向为从设备到主设备的传输方向,接收通道的传 输方向为主设备到从设备的传输方向,本申请以主设备的角度命名数据通道为例进行说明。
本申请中,通信接口的规范可以包括但不限于移动产业处理器接口(mobile industry processor interface,MIPI),MIPI是MIPI联盟发起的为移动终端的应用处理器制定的规范,MIPI在物理层(physical,PHY)规定了D-PHY、M-PHY、C-PHY等通信接口的规范。接下来示例性介绍M-PHY和D-PHY的工作方式。
M-PHY是MIPI联盟推出的一种具有高带宽能力的接口技术,适用于统一协议(unified protocol,Unipro)、数字射频(digtal radio frequency,DigRF)、摄像头串行接口(camera serial interface,CSI)和显示器串行接口(display serial interface,DSI)等多种接口协议。M-PHY中的单双工链路是由单向的数据通道、发送(transmitter,TX)模块和接收(receiver,RX)模块构成的,每个传输方向上允许存在一个或多个数据通道,并且允许两个传输方向上数据通道的数量和属性不对称。不同传输方向的数据通道可以同时被使能(enable),可选地,发送通道和接收通道可以同时被使能(enable),用于传输数据。
其中,Unipro协议广泛应用于应用处理器、调制解调处理器以及存储器等IC设备之间的通信,Unipro协议规定每个传输方向上最多支持4条数据通道,进行通信的两端设备可以根据业务需求确定进行数据传输的发送(TX)通道和接收(RX)通道,具体示例如图1所示。
请参见图1,图1示例性示出一种M-PHY数据通道的架构示意图。
如图1所示,主设备110可以包括TX模块111和RX模块112,从设备120可以包括RX模块121和TX模块122。主设备110和从设备120可以分别通过TX模块111和RX模块121进行通信,TX模块111和RX模块121之间存在4条发送通道130,主设备110通过TX模块111发送的数据,可以经由发送通道130传输至从设备120的RX模块121进行接收。也就是说,发送通道130承载的数据的传输方向为主设备110到从设备120。
如图1所示,主设备110和从设备120也可以分别通过RX模块112和TX模块122进行通信,RX模块112和TX模块122之间存在4条接收通道140,主设备110通过RX模块112接收经由接收通道140发送过来的数据,该数据为从设备120通过TX模块122发送的。也就是说,接收通道140承载的数据的传输方向为从设备120到主设备110。
可选地,主设备110和从设备120可以为第一系统内不同的IC设备,例如第一系统为终端,主设备110为应用处理器,从设备120为存储器。
需要说明的是,图1中的发送通道130和接收通道140是针对主设备110而言的,对于从设备120而言,发送通道130实际为接收数据的通道,接收通道140实际为发送数据的通道。
可以理解地,配置系统时,通常需预先配置好通信接口的收发带宽比例,可选地,收发带宽比例为读写带宽比例,例如通信接口用于实现处理器和存储器之间的通信的情况。收发带宽比例也可以理解为是接收通道和发送通道的比例(可称为数据通道比例)。后续以读写带宽比例和数据通道比例为例进行说明。
示例性地,如图1所示,主设备110和从设备120之间存在4个发送通道和4个接收通道,数据通道比例设置为1:1。理想情况下,这8个数据通道均可用于主设备110和从设备120之间进行通信,但在具体实现中,由于业务场景不同,所需的读写带宽比例不同。例如,存储应用存储数据的业务场景所需的读写带宽比例较小,接收通道被闲置,读出带宽资源被浪费。或者,存储应用读出数据的业务场景所需的读写带宽比例较大,发送通道被闲置,写入带宽资源被浪费。并且图1中主设备110和从设备120之间的数据通道高达8个,不满足硬件小型化的需求。
可选地,数据通道配置完成后(可选地,包括配置好读写带宽比例),主设备110和从设备120可以进行握手建链,握手建链后才可以通过数据通道进行双向的数据传输过程。其中,握手建链可以理解为是用于两端设备确定对方状态是否可进行数据传输,避免后续的数据传输过程失败。握手建链可以包括三个过程:发现(Discovery)(用于检测两端设备实际的数据通道的连接情况),重组(Realignment)(通过交互触发包来标记两端设备之间的数据通道的逻辑通道号),能力匹配(Capability Exchange)(两端设备获取对方的传输能力,便于在传输能力范围内进行后续的数据传输)。
本申请中,不同的业务场景也可理解为是对应不同的业务类型,以下实施例以业务场景为例进行说明。
D-PHY是用于处理器和摄像头、显示屏等IC设备之间通信的接口规范,D-PHY提供了对DSI和CSI在物理层上的定义。D-PHY支持高速(high speed,HS)和低功耗(low power,LP)两种传输模式,其中高速模式下功耗较大,传输速率较高,低功耗模式下功耗较小,传输速率较低。示例性地,图像数据可以使用高速模式进行传输,满足了高清图像对高带宽的需求。应用处理器和摄像头、显示屏之间的控制信息、状态信息可以使用低功耗模式进行传输,满足了低功耗的需求。D-PHY最多支持5个通道(即1个时钟通道和4个数据通道),最少需要2个通道(即1个时钟通道和1个数据通道)。
请参见图2,图2示例性示出一种D-PHY数据通道的架构示意图。
如图2所示,主设备210和从设备220之间可以通过P个数据通道连接和通信,P为大于1且小于6的整数。这P个数据通道可以包括:数据通道0、数据通道1、数据通道2、…、数据通道(P-1)。可选地,数据通道0可以作为传输时钟信号的时钟通道230使用,其他(P-2)个数据通道可以作为传输数据的数据通道240使用。可选地,主设备210可以通过时钟通道230向从设备220发送时钟信号。可选地,主设备210和从设备220可以通过数据通道240传输数据。
可选地,主设备210和从设备220可以为第一系统内不同的IC设备,例如第一系统为终端,主设备210为应用处理器,从设备220为摄像头或者显示屏。
可选地,第一系统为双向通信的系统,主设备210和从设备220可以包括低功耗发送(LP-TX)模块、高速发送(HS-TX)模块、低功耗接收(LP-RX)模块、高速接收(HS-RX)模块和低功耗争用探测器(low power contention detector,LP-CD)模块。上述P个数据通道中任意一个数据通道的具体结构示例如下图3所示。
请参见图3,图3示例性示出一种D-PHY数据通道的结构示意图。
如图3所示,一个数据通道可以理解为包括1对差分线Dp和Dn,这对差分线可以用于连接LP-TX模块、HS-TX模块、LP-RX模块、HS-RX模块和LP-CD模块中的至少一个模块,从而实现不同模式下不同的传输功能。可选地,这对差分线可以连接LP-CD模块(以及TX模块和RX模块),以实现双向传输功能。可选地,这对差分线可以连接LP-TX模块,以实现低功耗模式下的发送功能。可选地,这对差分线可以连接HS-TX模块,以实现高速模式下的发送功能。可选地,这对差分线可以连接LP-RX模块,以实现低功耗模式下的接收功能。可选地,这对差分线可以连接HS-RX模块,以实现高速模式下的接收功能。可选地,数据通道可以通过数据通道控制模块进行控制。可选地,数据通道可以通过物理层协议接口(PHY protocol interface,PPI)与其他模块(例如主设备210或从设备220内的模块)通信。可选地,PPI包括时钟(clock,CLK)、数据(data)、控制(control,Ctrl)。
可选地,数据通道的差分线连接LP-TX模块和/或HS-TX模块时,数据通道可以称为发 送通道,用于传输主设备发送的数据。
可选地,数据通道的差分线连接LP-RX模块和/或HS-RX模块时,数据通道可以称为接收通道,用于传输从设备发送的数据。
可选地,D-PHY支持控制(control)模式以及快速通道模式的反向通信功能,反向通信功能通过链路周转的方式运行,链路周转可以通过LP模式的信令控制,或者HS模式中的备用低功耗(alternate low power)模式的信令控制,因此实现反向通信功能需改变为LP模式或ALP模式,传输速率较低。并且,基于D-PHY的链路的双向传输方式为半双工方式,不同传输方向的数据通道无法同时处于使能(enabled)状态(用于传输数据),即同一时刻只有一种传输方向的数据通道处于使能(enabled)状态,另一种传输方向的数据通道处于非使能(disabled)状态(不用于传输数据)。示例性地,DSI定义中,主设备和从设备之间存在4个数据通道,其中1个数据通道支持反向传输,且反向传输时,正向传输的数据通道不再工作,处于非使能(disabled)状态,因此反向传输的传输速率最大仅为正向传输的传输速率的四分之一。
本申请中,使能(enable)数据通道后,数据通道处于使能(enabled)状态,用于传输数据。非使能(disable)数据通道后,数据通道处于非使能(disabled)状态,不用于传输数据。数据通道处于非使能(disabled)状态,例如但不限于处于上电状态但不用于传输数据,处于上电状态例如但不限于是该数据通道连接的TX模块和/或RX模块处于下电状态但其他相关模块(如未连接的TX模块、RX模块)处于上电状态,或者该数据通道连接的TX模块和/或RX模块处于上电状态。
可以理解地,通信接口在不同业务场景下,所需的读写带宽比例可以不同,也就是所需的接收通道和发送通道的比例(即数据通道比例)可以不同。例如,处理器从存储器中读出数据时所需的读写带宽比例为1:0(即所需的数据通道比例为1:0)。处理器向显示屏写入数据以实现显示功能时所需的读写带宽比例为0:1(即所需的数据通道比例为0:1)。但是目前通信接口的读写带宽比例通常是根据系统的整体性能要求(可选地,电路或某一总线的读写操作的总体特征)提前设置好的,不支持实时配置,在不同的业务场景下容易造成带宽被浪费。
示例性地,图1示例的M-PHY中单个数据通道只能单向传输,为实现需求的速率以及读写带宽比例(即数据通道比例)需设计多条数据通道,不满足硬件小型化的需求,而且可能存在数据通道被闲置的情况,造成带宽资源被浪费和增加不必要的功耗。
示例性地,图2示例的D-PHY中可以通过反向通信功能来达到改变数据通道比例的效果,但由于反向通信功能本身的实现方式导致传输速率较低,传输效果不佳。
本申请实施例提供了一种数据传输带宽的配置方法,应用于第一系统,第一系统包括主设备和从设备。可选地,主设备可以根据业务数据包中新增的业务标识符确定切换传输方向的至少一个数据通道,可选地,主设备可以根据业务标识符对应的业务场景确定切换传输方向的至少一个数据通道,可选地,主设备可以根据当前业务场景确定切换传输方向的至少一个数据通道。可选地,主设备可以向从设备发送第一控制信息,以指示从设备切换上述至少一个数据通道的传输方向。上述至少一个数据通道的传输方向被切换成功后,主设备和从设备可以进行双向的数据传输过程,实现了根据不同的业务场景实时配置数据传输带宽,合理利用带宽资源,避免了不必要的功耗。
其中,一个业务标识符可以用于标识一种业务场景,业务场景可以理解为是业务运行的场景。可选地,一种业务标识符用于标识一种应用,可以理解为是一种应用对应一种业务场景,该业务场景为该应用的业务运行的场景。例如,存储应用mysql的业务数据包中携带的 业务标识符,和存储应用Spark的业务数据包中携带的业务标识符不同,对应的读写带宽比例也不同。可选地,一种应用的不同业务运行的场景为不同的业务场景,一种应用对应多种业务场景。例如,存储应用mysql包括存储数据的业务和读出数据的业务,存储数据的业务数据包中携带的业务标识符,和读出数据的业务数据包中携带的业务标识符不同,对应的读写带宽比例也不同。假设存储数据的业务场景为只写入不读出的业务场景,因此对应的读写带宽比例为1:0,假设读出数据的业务场景为只读出不写入的业务场景,因此对应的读写带宽比例为0:1。
接下来介绍本申请提供的第一系统、主设备和从设备。
请参见图4,图4示例性示出一种电子设备400的结构示意图。
如图4所示,电子设备400可以包括处理器401、存储器402和收发器403,处理器401、存储器402和收发器403通过总线相互连接。
处理器401可以是一个或多个中央处理器(central processing unit,CPU),在处理器401是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。在一些实施例中,处理器401可以包括多个处理单元,例如应用处理器(application processor,AP)和调制解调处理器(modem)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。存储器402可以包括但不限于是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read only memory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM)。存储器402(memory)用于存储相关计算机程序及信息。收发器403用于接收和发送信息。
在一些实施例中,电子设备400可以包括1个或T个摄像头,T为大于1的正整数。摄像头用于捕获静态图像或视频。可选地,这T个摄像头可以是前置摄像头、后置摄像头、升降式摄像头、可拆卸式摄像头等,本申请实施例对T个摄像头和电子设备400的连接方式以及机械机构没有限定。本申请中,电子设备400可以通过摄像头获取用户的人脸信息,并基于该人脸信息实现人脸解锁、访问应用锁等功能。
在一些实施例中,电子设备400还可以包括显示屏。显示屏用于显示图像、视频、文字等。显示屏包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。可选地,电子设备400可以包括1个或T个显示屏,T为大于1的正整数。
在一些实施例中,处理器401可以包括一个或多个通信接口。可选地,通信接口可以包括MIPI接口,MIPI接口可以被用于连接处理器401与显示屏、摄像头等外围器件。MIPI接口可以包括CSI、DSI等。可选地,处理器401和摄像头通过CSI接口通信,实现电子设备400的拍摄功能。可选地,处理器401和显示屏通过DSI接口通信,实现电子设备400的显示功能。不限于此,通信接口还可以包括集成电路(inter-integrated circuit,I2C)接口、脉冲编码调制(pulse code modulation,PCM)接口、串行器/解串器(SERializer/DESerializer,serdes)接口等。
在一些实施例中,图4所示的电子设备400可以是包括主设备和从设备的第一系统,其中主设备可以是处理器401,从设备可以是存储器402、摄像头、显示屏或收发器403等IC 设备。
在一些实施例中,图4所示的电子设备400可以是第一系统内的主设备。可选地,存储器402用于存储预设配比(即预设场景下的数据通道比例),没有应用层业务触发时,主设备可以将数据通道比例设置为预设配比,该过程也可称为初始化配置数据通道。可选地,存储器402用于存储业务标识符和数据通道比例的对应关系,可选地,一个业务标识符用于标识一种业务场景,可选地,一个业务标识符对应一个适用于该业务场景下的数据通道比例。可选地,一个数据通道比例适用于一个业务场景具体为:在该业务场景下使用该数据通道比例,数据通道被闲置或者不足的概率小于或不大于预设阈值,带宽资源被充分利用。不限于此,存储器402还可以存储图7-图8所示方法中的数据内容。
可选地,收发器403可以包括TX模块和RX模块。收发器403用于电子设备400和第一系统内的从设备(也包括TX模块和RX模块)通过具有双向传输能力的数据通道进行通信。示例性地,电子设备400向从设备发送上述预设配比,以使从设备将数据通道比例设置为预设配比,即初始化配置数据通道。示例性地,电子设备400通过数据通道0(lane0)向从设备发送控制码流,或者通过带外通道(例如对应CTRL接口的control通道)向从设备发送控制码流,以使从设备改变数据通道比例。主设备也会改变数据通道比例。
在一些实施例中,图4所示的电子设备400可以是第一系统内的从设备。可选地,存储器402用于存储第一系统内的主设备发送的预设配比。可选地,收发器403可以包括TX模块和RX模块。收发器403用于电子设备400和第一系统内的主设备(也包括TX模块和RX模块)通过具有双向传输能力的数据通道进行通信。示例性地,电子设备400接收主设备发送的预设配比,并将数据通道比例设置为预设配比,即初始化配置数据通道。示例性地,电子设备400接收主设备通过lane0发送的控制码流,或者接收主设备通过带外通道(例如control通道)发送的控制码流,并基于该控制码流改变数据通道比例。主设备也会改变数据通道比例。
不限于上述列举的情况,上述数据通道比例(包括预设配比)也可以替换为对应的发送通道和/或接收通道的数目。
可选地,电子设备400中的处理器401用于读取存储器402中存储的计算机程序代码,执行图7-图8所示的数据传输带宽的配置方法。电子设备400为其中的主设备或从设备。
请参见图5,图5示例性示出一种第一系统的架构示意图。
如图5所示,第一系统可以包括主设备510、从设备520,以及用于主设备510和从设备520之间通信的数据通道530和带外通道540。其中,主设备510可以包括初始化场景配置模块511、物理层512、业务场景管理模块513和数据通道管理模块514。可选地,数据通道管理模块514包括数据通道反向控制模块514A和重新建链控制模块514B。从设备520可以包括初始化场景配置模块521、物理层522和数据通道管理模块523。可选地,数据通道管理模块523包括数据通道反向控制模块523A和重新建链控制模块523B。可选地,数据通道530包括N个数据通道:数据通道0、数据通道1、…、数据通道(N-1)。带外通道540为数据通道530以外的通道,例如对应CTRL接口的control通道。
初始化场景配置模块511/521,可选地,用于进行数据通道530的初始化配置,可选地,基于预设场景下的数据通道比例(即预设配比)配置数据通道530。例如预设配比为0:1,则可以将数据通道530设置为全发。或者预设配比为1:0,则可以将数据通道530设置为全收。或者将数据通道530中发送通道和接收通道的配比(即数据通道比例)设置为1:1(预设配比)。 其中,预设场景的类型不作限定,例如为存储应用的业务场景。
可选地,数据通道530的初始化配置完成后,可以控制数据通道530进行握手建链,以记录主设备510和从设备520的传输能力信息(例如可用的数据通道的数量、支持的传输速率等),以及配置数据通道530的参数。
初始化场景配置模块511为可选的模块。
初始化场景配置模块521为可选的模块。例如,从设备520也可以直接接收主设备510发送的预设配比,然后基于预设配比进行数据通道530的初始化配置。
物理层512/522,用于进行有效载荷数据的传输,可选地,用于在数据通道530的初始化配置完成后,进行有效载荷数据的传输。
具体地,物理层512用于主设备510经由数据通道530或带外通道540和从设备520进行通信。物理层522用于从设备520经由数据通道530或带外通道540和主设备510进行通信。其中,物理层512可以包括N个收发模块(包括TX模块和RX模块,简称TRX模块),具体为:TRX模块0、TRX模块1、…、TRX模块(N-1)。物理层522可以包括N个TRX模块,具体为:TRX模块0、TRX模块1、…、TRX模块(N-1)。
可选地,数据通道530中的N个数据通道分别对应物理层512中的N个TRX模块和物理层522中的N个TRX模块,一个数据通道对应物理层512中的一个TRX模块和物理层522中的一个TRX模块,一起用于实现数据传输过程。例如,数据通道0对应物理层512中的TRX模块0和物理层522中的TRX模块0。主设备510发送的数据通过物理层512中的TRX模块0(实际工作的为其中的TX模块)传输至数据通道0,然后经由数据通道0传输至物理层522中的TRX模块0,从设备520通过物理层522中的TRX模块0(实际工作的为其中的RX模块)接收上述主设备510发送的数据。主设备510通过物理层512中的TRX模块0(实际工作的为其中的RX模块)接收从设备520发送的数据,该数据是从设备520通过物理层522中的TRX模块0(实际工作的为其中的TX模块)发送的,该数据经由数据通道0传输。
业务场景管理模块513为可选的模块。业务场景管理模块513,可选地,用于根据业务数据包中的业务标识符在物理层512判断是否改变数据通道530的数据通道比例。当确定不需要改变数据通道比例时可以进入数据传输流程(通过物理层512实现)。当确定需改变数据通道比例时可以进入数据通道的配置流程(通过数据通道管理模块514实现)。
业务场景管理模块513,可选地,用于根据业务数据包中的业务标识符在物理层512判断是否改变数据通道530中发送通道和/或接收通道的数目。当确定不改变时可以进入数据传输流程(通过物理层512实现)。当确定改变时可以进入数据通道的配置流程(通过数据通道管理模块514实现)。
可选地,主设备510可以通过数据通道530中的任意一个数据通道(例如数据通道0)或者带外通道540向从设备520发送控制码流,以使从设备520进行数据通道的配置流程。
可选地,业务场景管理模块513还可以用于根据业务数据包中的业务标识符确定需改变的数据通道比例(可称为目标配比)。可选地,业务场景管理模块513还可以用于管理业务标识符和数据通道比例的对应关系。可选地,一个业务标识符用于标识一种业务场景,可选地,一个业务标识符对应一个适用于该业务场景下的数据通道比例。可选地,一个数据通道比例适用于一个业务场景具体为:在该业务场景下使用该数据通道比例,数据通道被闲置或者不足的概率小于或不大于预设阈值,带宽资源被充分利用。
可选地,业务场景管理模块513还可以用于根据业务数据包中的业务标识符确定对应的发送通道和/或接收通道的数目。可选地,业务场景管理模块513还可以用于管理业务标识符 和对应的发送通道和/或接收通道的数目的对应关系。可选地,一个业务标识符用于标识一种业务场景,可选地,一个业务标识符对应一个适用于该业务场景下的发送通道和/或接收通道的数目。可选地,设置为适用于该业务场景下的发送通道和/或接收通道的数目时,数据通道被闲置或者不足的概率小于或不大于预设阈值,带宽资源被充分利用。
数据通道管理模块514/523为可选的模块。数据通道管理模块514/523,可选地,用于实现数据通道的配置流程,该配置流程和初始化配置数据通道不同,可选地,该配置流程的目的在于基于不同的业务场景(通过业务数据包中的业务标识符体现)配置数据通道比例,而初始化场景配置模块511/521实现的初始化配置数据通道的目的在于将数据通道比例设置为预设配比。可选地,该配置流程在初始化配置数据通道之后实现,即可以对初始化配置数据通道后的数据通道比例进行改变。
不限于上述列举的情况,上述数据通道比例(包括预设配比)也可以替换为对应的发送通道和/或接收通道的数目。
可选地,数据通道管理模块514/523包括数据反向控制模块514A/523A。主设备510中的数据反向控制模块514A,用于进行通道反向切换,即调整部分数据通道的传输方向,可选地,基于业务场景管理模块513中的业务标识符确定需反向传输的数据通道,并对确定的数据通道进行反向切换,以调整该数据通道的传输方向。从设备520中的数据反向控制模块523A,用于基于主设备510发送的控制码流进行通道反向切换,可选地,基于上述控制码流确定需反向传输的数据通道,可选地,将处于非使能(disabled)状态的数据通道确定为需反向传输的数据通道,可选地,从设备520对确定的数据通道进行反向切换,以调整该数据通道的传输方向。可选地,上述对确定的数据通道进行反向切换,具体可以是:切换该数据通道的电路开关,将发送通道/接收通道切换为接收通道/发送通道。
可选地,数据通道管理模块514/523包括重新建链控制模块514B/523B。重新建链控制模块514B/523B,用于控制数据通道530重新进行握手建链,可选地,用于完成通道反向切换的流程后,控制数据通道530重新进行握手建链。具体可参见图1中握手建链的说明,不再赘述。
示例性地,若图5所示的主设备510为图4所示的电子设备400,则物理层512对应收发器403,可选地,数据通道530和带外通道540对应收发器403,其他模块对应处理器401。
示例性地,若图5所示的从设备520为图4所示的电子设备400,则物理层522对应收发器403,可选地,数据通道530和带外通道540对应收发器403,其他模块对应处理器401。
可以理解地,图5所示模块可以是软件模块,也可以是硬件模块。
可以理解地,图4-图5所示结构仅为示例,第一系统、主设备和从设备包括的模块的数目可以更多也可以更少,包括的多个模块也可以集成在一起,一个模块也可以包括多个子模块,不应构成限定。
在一些实施例中,第一系统可以是终端,例如上图4所示的电子设备400。
终端的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。例如,分层架构的软件系统可以是安卓(Android)系统,也可以是华为移动服务(huawei mobile services,HMS)系统。本申请实施例以分层架构的Android系统为例,示例性说明终端600的软件结构。
图6是本发明实施例的终端600的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接 口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图6所示,应用程序包可以包括相机,图库,音乐,视频,文件管理,mysql,Spark,Nginx,Redis等应用程序。
本申请中,应用程序层中的应用程序可以产生业务数据包,该业务数据包在封装时可以添加业务标识符,一个业务标识符用于标识一种业务场景,业务场景可以理解为是业务运行的场景。不同业务场景所需的读写带宽比例可以不同。可选地,一种业务标识符用于标识一种应用,可以理解为是一种应用对应一种业务场景,该业务场景为该应用的业务运行的场景。例如,mysql的业务数据包中携带的业务标识符,和Spark的业务数据包中携带的业务标识符不同。可选地,一种应用的不同业务运行的场景为不同的业务场景,一种应用对应多种业务场景。例如,存储应用mysql包括存储数据的业务和读出数据的业务,存储数据的业务数据包中携带的业务标识符,和读出数据的业务数据包中携带的业务标识符不同。
应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图6所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供终端600的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
接下来介绍本申请实施例提供的数据传输带宽的配置方法。该方法可以应用于第一系统,第一系统可以包括主设备和从设备。可选地,第一系统可以是图4所示的电子设备400,主设备可以是处理器401,从设备可以是存储器402、摄像头、显示屏或者收发器403等。可选地,主设备或从设备可以是图4所示的电子设备400。可选地,主设备和从设备可以是图5所示的主设备510和从设备520。
请参见图7,图7是本申请实施例提供的一种数据传输带宽的配置方法。该方法包括但不限于如下步骤:
S101:主设备基于预设配比配置数据通道。
具体地,S101是可选的步骤。可选地,假设主设备和从设备之间包括N个具有双向传输能力的数据通道,这N个数据通道中任意一条数据通道可以作为发送通道,即数据是按照主设备到从设备的方向传输的,也可以作为接收通道,即数据是按照从设备到主设备的方向传输的。
可选地,预设配比可以为预设场景下的接收通道和发送通道的比例(即数据通道比例),即读写带宽比。可选地,在没有应用层业务触发的情况下,主设备可以默认当前处于预设场景,因此将数据通道比例设置为预设配比。该步骤也可称为初始化配置数据通道。可选地,预设配比可以是根据主设备和从设备所在的第一系统的整体性能要求(例如电路或某一总线的读写操作的总体特征)确定的。可选地,预设场景可以是主设备确定的大多数情况下所处的场景,例如所处预设场景的次数大于或等于预设阈值。
示例性地,假设处于存储应用的业务场景,主设备为CPU,从设备为memory。主设备可以将数据通道配置为全发状态,即预设配比为0:1,此时主设备可以通过N个发送通道向从设备发送数据,从设备仅接收数据,也就是说,预设场景具体为存储应用下只写入不读出的业务场景。或者,主设备可以将数据通道配置为全收,即预设配比为1:0,此时从设备可以通过N个接收通道向主设备发送数据,主设备仅接收数据,也就是说,预设场景具体为存储应用下只读出不写入的业务场景。或者,主设备可以将数据通道比例设置为1:1的预设配比,此时主设备可以利用(N/2)个发送通道向从设备发送数据,从设备也可以利用其他(N/2)个接收通道向主设备发送数据,也就是说,预设场景具体为存储应用下读写的业务场景(读写带宽比例为1:1)。
S102:主设备向从设备发送第一指示信息。
具体地,S102为可选的步骤。可选地,第一指示信息用于指示从设备将数据通道比例设置为预设配比,即指示从设备初始化配置数据通道。例如,第一指示信息通过差分信号线线态转换的形式传输,例如第一指示信息包括多个控制码,可以称为控制码流。
S103:从设备基于第一指示信息配置数据通道。
具体地,S103为可选的步骤。可选地,S101和S103之后,主设备和从设备的数据通道比例保持一致,即均为预设配比。
可选地,第一指示信息可以包括预设配比。可选地,从设备预置有预设配比,接收到第一指示信息后,直接将数据通道比例设置为预置的预设配比,例如从设备为上图5所示的从设备520,接收到第一指示信息后,通过初始化场景配置模块521初始化配置数据通道。
不限于上述列举的情况,预设配比也可以替换为对应的发送通道和/或接收通道的数目,例如,第一指示信息包括对应的发送通道和/或接收通道的数目。
S104:主设备和从设备进行握手建链。
具体地,S104为可选的步骤。主设备和从设备初始化配置数据通道后,可以进行握手建链,具体可参见图1中握手建链的说明。可选地,握手建链后主设备和从设备可以获取到可用的数据通道的数目(假设为上述N),以及这N个数据通道的逻辑通道号(假设为lane0、lane1、…、lane(N-1))。
S105:主设备基于第一数据包中的业务标识符确定改变数据通道的配置。
具体地,S105为可选的步骤。可选地,主设备可以基于第一数据包中的业务标识符确定切换数据传输方向的至少一个数据通道。可选地,主设备可以基于第一数据包中的业务标识符对应的业务场景,确定切换数据传输方向的至少一个数据通道。可选地,主设备可以基于第一数据包中的业务标识符,确定非使能(disable)的S个数据通道,然后从这S个数据通道中确定出切换数据传输方向的T个数据通道,S和T均为正整数,S大于或等于T。可选地,主设备可以基于第一数据包中的业务标识符对应的业务场景,确定非使能(disable)的S个数据通道,然后从这S个数据通道中确定出切换数据传输方向的T个数据通道。切换传输方向的至少一个数据通道,也可以称为需改变传输方向的数据通道。
可选地,主设备可以先获取第一应用的第一数据包,第一应用为主设备上运行的应用,可选地,第一应用为主设备和从设备所在的第一系统上运行的应用。可选地,应用层中的第一应用的业务触发主设备执行S105。可选地,第一应用为已运行的应用,例如预设场景下运行的应用。应用在不同场景下所需的读写带宽比例也可能不同,即接收通道和发送通道的比例可能不同。可选地,可以由用户操作设置,例如用户输入第一指令以切换场景。例如,相机应用在拍照场景下所需的读写带宽比例和在摄像场景下所需的读写带宽比例不同。例如,存储应用在存储数据的场景下所需的读写带宽比例较小,所需的发送通道的数目较多,存储应用在读出数据的场景下所需的读写带宽比例较大,所需的接收通道的数目较多。可选地,第一应用为新运行的应用,例如和预设场景下运行的应用均不同。不同应用所需的读写带宽比例可以不同,即接收通道和发送通道的比例可能不同。例如,不同的存储应用所需的读写带宽比例不同。
可选地,第一数据包中可以包括业务标识符,例如,第一数据包在应用层进行封装时可以被添加第一数据包对应的业务标识符。可选地,一个业务标识符可以标识一种业务场景,业务场景可以理解为是业务运行的场景。可选地,可以对应一个适用于该业务场景下的读写带宽比例(也可以理解为是数据通道比例)。可选地,一个数据通道比例适用于一个业务场景具体为:在该业务场景下使用该数据通道比例,数据通道被闲置或者不足的概率小于或不大于预设阈值,带宽资源被充分利用。可选地,第一数据包中的业务标识符可以标识第一数据包对应的应用,主设备可以在物理层识别第一数据包的业务标识符。可选地,主设备可以根据第一数据包的业务标识符确定适用于第一数据包对应的应用的读写带宽比例。可选地,主设备可以根据确定的读写带宽比例确定所需的发送通道和/或接收通道的数目。可选地,主设备可以根据第一数据包的业务标识符确定所需的发送通道和/或接收通道的数目。可选地,主设备可以内置多个业务标识符和读写带宽比例的对应关系。可选地,主设备可以内置多个业 务标识符与发送通道和/或接收通道的数目的对应关系。具体示例如下表1所示。
表1业务标识符的对应关系。
业务场景 业务标识符 读写带宽比例 发送通道的数目
Spec2017 01h 2:1 [N/3]
Spec20016 02h 2.3:1 [N/3.3]
Spark 03h 1.9:1 [N/2.9]
Nginx 04h 2:1 [N/3]
Redis 05h 1.3:1 [N/2.3]
mysql 06h 1.9:1 [N/2.9]
其中,[x]为对x取整,例如,[N/3]为对(N/3)取整。可选地,发送通道的数目可以根据数据通道的总数(即N)和对应的读写带宽比例确定,例如应用spec2017对应的读写带宽比例为2:1,则对应的发送通道的数目等于N/(2+1)*1=N/3。
示例性地,第一数据包中的业务标识符为01h,主设备可以根据该业务标识符确定对应的发送通道的数目为(N/3)。
上表1以一种业务标识符用于标识一种应用为例进行说明,也可以理解为是一种应用对应一种业务场景,该业务场景为该应用的业务运行的场景。不限于此,也可以是一种业务标识符用于标识一种应用的一种业务,一种应用的不同业务运行的场景为不同的业务场景,一种应用对应多种业务场景。例如,存储应用mysql包括存储数据的业务和读出数据的业务,存储数据的业务数据包中携带的业务标识符,和读出数据的业务数据包中携带的业务标识符不同,对应的读写带宽比例也不同。假设存储数据的业务场景为只写入不读出的业务场景,因此对应的读写带宽比例为1:0,假设读出数据的业务场景为只读出不写入的业务场景,因此对应的读写带宽比例为0:1。可选地,主设备确定第一数据包中的业务标识符对应的数据通道比例(可称为目标配比)后,可以判断预设配比和目标配比是否相同,可选地,若相同则无需改变数据通道比例,可以直接进行数据传输,可选地,若不同则需将数据通道比例设置为目标配比,然后再进行数据传输,可选地,该数据传输可以在第一数据包中的业务标识符标识的业务场景下进行。图7以预设配比和目标配比不同为例进行说明,预设配比和目标配比相同的示例可参见下图8。
可选地,主设备确定第一数据包的业务标识符对应的发送通道和/或接收通道的数目后,可以判断当前的发送通道和/或接收通道的数目和上述确定的发送通道和/或接收通道的数目是否相同,可选地,若相同则无需改变数据通道比例,可以直接进行数据传输,可选地,若不同则可以将数据通道中发送通道和/或接收通道的数目配置为上述确定的发送通道和/或接收通道的数目,然后再进行数据传输,可选地,该数据传输可以在第一数据包中的业务标识符标识的业务场景下进行。图7以数目不同为例进行说明,数目相同的示例可参见下图8。
可选地,主设备可以根据目标配比确定需改变传输方向的数据通道的类型(发送通道或接收通道)和数目。可选地,主设备可以根据第一数据包的业务标识符对应的发送通道和/或接收通道的数目,确定需改变传输方向的数据通道的类型(发送通道或接收通道)和数目。也就是说,主设备可以根据第一数据包的业务标识符确定需改变传输方向的数据通道。
不限于此,主设备也可以根据当前业务场景确定切换传输方向的至少一个数据通道,具体说明和上述根据业务标识符确定切换传输方向的至少一个数据通道的说明类似,不再赘述。
S106:主设备通过第一通道向从设备发送第一控制信息。
具体地,S106为可选的步骤。可选地,第一控制信息用于指示从设备进行通道反向切换, 可选地,第一控制信息用于指示从设备切换至少一个数据通道的传输方向,将发送通道/接收通道切换为接收通道/发送通道,可选地,以达到将数据通道比例设置为目标配比的效果。例如,第一控制信息通过差分信号线线态转换的形式传输,例如第一控制信息包括多个控制码,可以称为控制码流。
可选地,第一控制信息包括用于指示需改变传输方向的数据通道的指示信息。可选地,第一控制信息包括需改变传输方向的数据通道的标识,例如逻辑信道号。可选地,第一控制信息包括目标配比,目标配比用于从设备确定需改变传输方向的数据通道。可选地,第一控制信息包括第一数据包中的业务标识符,业务标识符用于从设备确定需改变传输方向的数据通道。
可选地,第一通道包括以下两种情况:
情况一:第一通道为带内通道,即N个数据通道中任意一个或任意一组数据通道,例如为数据通道0(即lane0)。后续以第一通道为带内通道时,具体为lane0为例进行说明。可选地,配置数据通道的过程中可以保存lane0的发送功能以用于发送控制信息,实现数据通道的反向切换。需要说明的是,若第一通道为带内通道,则主设备和从设备不会对第一通道进行通道反向切换,即第一通道的传输方向无法改变(主设备确定的需改变传输方向的数据通道不包括第一通道)。可选地,预设配比和目标配比不会为1:0,即预设场景和第一数据包对应的业务场景不会为只读出不写入的场景。通过带内通道传输第一控制信息,传输效率较高,通道反向切换的速度较快。
情况二:第二通道为带外通道,可选地,带外通道为主设备和从设备之间除N个数据通道外的传输通道,可选地,带外通道不用于传输数据,非数据传输通道。例如上图5所示的带外通道540(如control通道)。在数据传输过程中通过带外传输方式发送控制信息,实现灵活配置数据通道的传输方向,并且,预设场景和第一数据包对应的业务场景可以为任意一种业务场景(例如:只读出不写入的场景),覆盖场景更为全面。
S107:主设备进行通道反向切换。
具体地,S107为可选的步骤。
S108:从设备基于第一控制信息进行通道反向切换。
具体地,S108为可选的步骤。可选地,主设备或从设备进行通道反向切换时,可以切换N个数据通道中至少一个数据通道的传输方向,将发送通道切换为接收通道和/或将接收通道切换为发送通道,可选地,以达到将数据通道比例设置为目标配比的效果。可选地,切换数据通道的传输方向可以具体为:切换数据通道的第一开关,第一开关用于将数据通道的TX PHY/RX PHY电路切换为RX PHY/TX PHY电路,实现将发送通道/接收通道切换为接收通道/发送通道的效果。可选地,若第一通道为S106的情况一所述的带内通道,则主设备和从设备进行通道反向切换时,不会切换该带内通道的传输方向。例如:主设备在确定需要切换方向的至少一个数据通道时,不会将该第一通道确定为需要切换方向的数据通道。
可选地,主设备和从设备进行通道反向切换之前,主设备或从设备可以先非使能(disable)需改变传输方向的数据通道。
可选地,主设备可以非使能(disable)需改变传输方向的数据通道,可选地,主设备可以向从设备发送第二指示信息,以指示从设备处于非使能(disabled)状态的数据通道。可选地,从设备可以基于第一控制信息,对处于非使能(disabled)状态的数据通道(即需改变传输方向的数据通道)进行通道反向切换。
可选地,第一控制信息包括用于指示需改变传输方向的数据通道的指示信息,例如需改 变传输方向的数据通道的逻辑信号。从设备可以基于第一控制信息确定需改变传输方向的数据通道,然后对这些数据通道进行通道反向切换。可选地,上述需改变传输方向的数据通道可以为处于非使能(disabled)状态的至少一个数据通道中的部分或全部。
S109:主设备和从设备进行握手建链。
具体地,S109为可选的步骤。可选地,数据通道比例设置为目标配比后,主设备和从设备可以重新进行握手建链,具体过程和S104一致。
S110:主设备和从设备进行数据传输。
可选地,主设备可以通过发送通道向从设备发送数据,从设备可以通过发送通道接收数据。和/或,从设备可以通过接收通道向主设备发送数据,主设备可以通过接收通道接收数据。可选地,上述数据可以在第一数据包中的业务标识符标识的业务场景下传输。
S111:主设备初始化配置数据通道。
具体地,S111为可选的步骤。
S112:从设备初始化配置数据通道。
具体地,S112为可选的步骤。可选地,数据传输完成后,主设备和从设备可以初始化配置数据通道,即将数据通道比例设置为预设配比。设置方式和上述将数据通道比例设置为目标配比的过程(即S106-S109)类似,不再赘述。
可选地,主设备可以等待下一次应用层业务的触发,然后根据业务数据包中的业务标识符判断是否改变数据通道比例。若确定改变数据通道比例则进行数据通道的配置流程,该流程和S106-S112类似,不再赘述。若确定不改变数据通道比例则直接进行数据传输。
可选地,数据传输完成,可以理解为是:主设备或从设备接收到最后一个数据包(即携带有结束标志位的数据包)。可选地,发送最后一个数据包的设备(从设备或主设备)可以在最后一个数据包中携带结束标志位,以标识此次数据传输完成。
其中,S101和S102的顺序不作限定,S101和S103的顺序不作限定,但S102在S103之前。S106和S107的顺序不作限定,S107和S108的顺序不作限定,但S106在S108之前。S111和S112的顺序不作限定。
接下来介绍一些主设备和从设备进行通道反向切换的示例(以处于存储应用的业务场景,主设备为中央处理器(CPU),从设备为存储器(memory)为例进行说明):
示例一:假设预设场景为只写入不读出的第一业务场景,即预设配比为0:1,则发送通道的数目为N,接收通道的数目为0。并且,假设目标配比为M:(N-M),第二业务场景下的第一数据包触发主设备执行S105,通道反向切换后,发送通道的数目为(N-M),接收通道的数目为M,M为小于N的正整数。假设发送第一控制信息的第一通道为lane0(带内通道),此时主设备和从设备进行通道反向切换的流程如下表2所示。
表2 M个发送通道的反向切换流程(由发送通道切换为接收通道)。
Figure PCTCN2022076596-appb-000001
Figure PCTCN2022076596-appb-000002
如表2所示,M个发送通道(lane(N-M)、lane(N-M+1)、…、(laneN-1))的传输方向被改变,即切换为M个接收通道,则发送通道从N减少至(N-M),接收通道从0增加至M,即数据通道比例被设置为M:(N-M)。
可选地,握手建链后,主设备和从设备不仅可以通过M个接收通道(lane(N-M)、lane(N-M+1)、…、(laneN-1))传输数据,也可以通过其他(N-M)个发送通道(lane0、lane1、…、lane(N-M-1))传输数据,具体为主设备通过上述(N-M)个发送通道发送数据,从设备通过上述(N-M)个发送通道接收数据。
可选地,数据传输结束后,例如memory接收到CPU发送的携带结束标志位的数据包,memory侧的发送功能可以被释放,CPU初始化配置数据通道,以达到将数据通道比例设置为预设配比的目的。可选地,CPU可以重新等待应用层业务触发。
示例二:假设预设场景为读写的第三业务场景(预设配比为1:1),则发送通道和接收通道的数目均为(N/2),发送通道包括lane0、lane1、…、lane(N/2-1),接收通道包括lane(N/2)、lane(N/2-1)…、lane(N-1)。并且,假设目标配比为0:1,只写入不读出的第一业务场景下的第一数据包触发主设备执行S105,通道反向切换后,接收通道的数目为0,发送通道的数目为N。假设发送第一控制信息的第一通道为lane0(带内通道),此时主设备和从设备进行通道反向切换的流程如下表3所示。
表3 (N/2)个接收通道的反向切换流程(由接收通道切换为发送通道)。
Figure PCTCN2022076596-appb-000003
Figure PCTCN2022076596-appb-000004
如表3所示,(N/2)个接收通道(lane(N/2)、lane(N/2-1)…、lane(N-1))的传输方向被改变,即切换为(N/2)个发送通道,则接收通道从(N/2)减少至0,发送通道从(N/2)增加至N,即数据通道比例被设置为0:1。
可选地,握手建链后,主设备和从设备不仅可以通过(N/2)个发送通道(lane(N/2)、lane(N/2-1)…、lane(N-1))传输数据,也可以通过其他(N/2)个发送通道(lane0、lane1、…、lane(N/2-1))传输数据。
可选地,数据传输结束后,例如memory接收到CPU发送的携带结束标志位的数据包,memory和CPU可以初始化配置数据通道,以达到将数据通道比例设置为预设配比的目的。可选地,CPU可以重新等待应用层业务触发。
示例三:假设预设场景为读写的第三业务场景(预设配比为1:1),则发送通道和接收通道的数目均为(N/2),发送通道包括lane0、lane1、…、lane(N/2-1),接收通道包括lane(N/2)、lane(N/2+1)…、lane(N-1)。并且,假设目标配比为M:(N-M),第二业务场景下的第一数据包触发主设备执行S105,通道反向切换后,接收通道的数目为M,发送通道的数目为N-M。其中,M为小于N的正整数且M不等于N/2,即第二业务场景也为读写场景但和第三业务场景不同(数据通道比例不为1:1)。假设发送第一控制信息的第一通道为带外通道,此时主设备和从设备进行通道反向切换的流程又包括以下两种情况:
情况一:当(N-M)>(N/2)时,主设备和从设备可以进行K1个接收通道的反向切换流程,具体如下表4所示,其中,K1=|(N-M)-(N/2)|,这K1个接收通道假设为lane(N/2)、…、lane(N-M-1)。
表4 K1个接收通道的反向切换流程(由接收通道切换为发送通道)。
Figure PCTCN2022076596-appb-000005
Figure PCTCN2022076596-appb-000006
如表4所示,K1个接收通道(lane(N/2)、…、lane(N-M-1))的传输方向被改变,即切换为K1个发送通道,则发送通道从(N/2)增加至(N-M),接收通道从(N/2)减少至M,即数据通道比例被设置为M:(N-M)。
可选地,握手建链后,主设备和从设备不仅可以通过K1个发送通道(lane(N/2)、…、lane(N-M-1))传输数据,也可以通过其他(N/2)个发送通道(lane0、lane1、…、lane(N/2-1))传输数据,以及也可以通过其他M个接收通道(lane(N-M)、lane(N-M+1)、…、laneN-1)传输数据。
情况二:当(N-M)<(N/2),即M>(N/2)时,主设备和从设备可以进行K2个发送通道的反向切换流程,具体如下表5所示,其中,K2=|M-(N/2)|,这K2个发送通道假设为lane0、…、lane(M-N/2-1)。
表5 K2个发送通道的反向切换流程(由发送通道切换为接收通道)。
Figure PCTCN2022076596-appb-000007
Figure PCTCN2022076596-appb-000008
如表5所示,K2个发送通道(lane0、…、lane(M-N/2-1))的传输方向被改变,即切换为K2个接收通道,则发送通道从(N/2)减少至(N-M),接收通道从(N/2)增加至M,即数据通道比例被设置为M:(N-M)。
可选地,握手建链后,主设备和从设备不仅可以通过K2个接收通道(lane0、…、lane(M-N/2-1))传输数据,也可以通过其他(N/2)个接收通道(lane(N/2)、lane(N/2+1)…、lane(N-1))传输数据,以及也可以通过其他N-M个发送通道(lane(M-N/2)、lane(M-N/2+1)、…、lane lane(N/2-1))传输数据。
可选地,数据传输结束后,例如memory接收到CPU发送的携带结束标志位的数据包,memory和CPU可以初始化配置数据通道,以达到将数据通道比例设置为预设配比的目的。可选地,CPU可以重新等待应用层业务触发。
在图7所描述的方法中,可以在协议层为数据包添加业务标识符,以及在物理层基于业务标识符执行数据通道的配置流程,从而实现基于不同的业务场景,智能化实时地配置不同的数据通道比例(即收发带宽比例),避免数据通道被闲置带来的带宽资源被浪费和不必要的链路功耗等问题,合理利用数据传输带宽。并且,执行数据通道的配置流程时,在物理层触发带内通道或者带外通道发送控制码流,以切换数据通道的传输方向,根据业务需求配置数据通道比例的方式较为灵活。
相比图1示例的M-PHY,本申请实施例无需设计多条数据通道,不仅避免数据通道被闲置带来的带宽资源被浪费和不必要的链路功耗等问题,而且满足了硬件小型化的需求。
相比图2-图3示例的D-PHY,本申请实施例无需通过反向通信功能进行数据通道的配置,而是直接基于业务数据包中的业务标识符进行数据通道的配置,可以保持高速模式不变,无需改变为低功耗或ALP这类传输速率较低的模式,满足了高带宽和低延时的需求。并且反向传输的数据通道和正向传输的数据通道可以一起工作(处于使能(enabled)状态),不会出现反向传输速率仅为正向传输速率的四分之一的情况,传输效果较好。
在一些实施例中,主设备也可以基于第一数据包中的业务标识符确定不改变数据通道的配置,即预设配比和目标配比相同,则可以直接进行数据传输,具体示例如下图8所示。
请参见图8,图8是本申请实施例提供的又一种数据传输带宽的配置方法。该方法包括但不限于如下步骤:
S201:主设备基于预设配比配置数据通道。
S202:主设备向从设备发送第一指示信息。
S203:从设备基于第一指示信息配置数据通道。
S204:主设备和从设备进行握手建链。
具体地,S201-S204和上图7的S101-S104一致,不再赘述。
S205:主设备基于第一数据包中的业务标识符确定不改变数据通道的配置。
具体地,S205为可选的步骤。主设备基于第一数据包中的业务标识符判断是否改变数据通道的说明可参见上图7的S105的说明,图8以确定不改变数据通道的配置为例进行说明,例如S205中主设备确定预设配比和目标配比相同,或者S205中主设备确定当前发送通道和/或接收通道的数目,和根据第一数据包中的业务标识符确定的发送通道和/或接收通道的数目相同。
S206:主设备和从设备进行数据传输。
具体地,S206和图7的S110类似,可选地,该数据为在预设场景下传输的数据。
不限于上述列举的情况,在具体实现中,数据通道处于非使能(disabled)状态,也可以为该数据通道的相关模块均为下电状态,例如该数据通道(一对差分线)连接和未连接的TX模块和RX模块等均为下电状态,此时非使能(disabled)状态也可以理解为是关闭状态。
不限于上述列举的情况,在具体实现中,通信接口还可以是集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。本申请对通信接口的具体类型不作限定。
不限于上述列举的情况,在具体实现中,通信接口的传输模式也可以不仅包括LP模式和HS模式(以及HS模式下的ALP模式)。上述高速模式也可以是其他通信接口的传输速率较高的模式。本申请对此不作限定。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来计算机程序相关的硬件完成,该计算机程序可存储于计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或RAM、磁碟或者光盘等各种可存储计算机程序代码的介质。

Claims (11)

  1. 一种数据传输带宽的配置方法,其特征在于,应用于第一系统,所述第一系统包括主设备和从设备,所述主设备和所述从设备之间通过多个数据通道传输数据,所述方法包括:
    所述主设备基于第一业务标识符确定切换传输方向的至少一个数据通道;
    所述主设备切换所述至少一个数据通道的传输方向;
    所述主设备向所述从设备发送第一控制信息,所述第一控制信息用于指示所述从设备切换所述至少一个数据通道的传输方向;
    所述从设备基于所述第一控制信息切换所述至少一个数据通道的传输方向。
  2. 如权利要求1所述的方法,其特征在于,所述主设备基于第一业务标识符确定切换传输方向的至少一个数据通道,包括:
    所述主设备确定所述第一业务标识符对应的传输方向为第一方向的数据通道的数量,或所述第一业务标识符对应的收发带宽比例;
    所述主设备根据所述传输方向为第一方向的数据通道的数量或所述收发带宽比例,确定所述切换传输方向的所述至少一个数据通道。
  3. 如权利要求1或2所述的方法,其特征在于,所述数据通道的传输方向为从所述主设备到所述从设备的传输方向,或者为从所述从设备到所述主设备的传输方向。
  4. 如权利要求1-3任一项所述的方法,其特征在于,所述第一控制信息包括用于指示所述至少一个数据通道的指示信息。
  5. 如权利要求1-4任一项所述的方法,其特征在于,所述主设备向所述从设备发送第一控制信息,包括:
    所述主设备通过第一通道向所述从设备发送所述第一控制信息,所述第一通道为所述多个数据通道中的一个或一组数据通道,或者所述第一通道为所述主设备和所述从设备之间的控制通道。
  6. 如权利要求1-5任一项所述的方法,其特征在于,所述主设备向所述从设备发送第一控制信息时,所述主设备和所述从设备之间使用的传输模式为高速模式。
  7. 如权利要求1-6任一项所述的方法,其特征在于,所述从设备基于所述第一控制信息切换所述至少一个数据通道的传输方向之后,所述方法还包括:
    所述主设备通过至少一个第一数据通道向所述从设备发送数据,以及所述主设备通过至少一个第二数据通道接收所述从设备发送的数据。
  8. 如权利要求1-7任一项所述的方法,其特征在于,所述主设备为所述第一系统内的处理器,所述从设备为所述第一系统内的存储器、显示屏或摄像头。
  9. 一种第一系统,其特征在于,包括主设备和从设备,所述第一系统用于实现权利要求1-8任一项所述的方法。
  10. 一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序被电子设备执行时,实现权利要求1-8任一项所述的方法。
  11. 一种计算机程序产品,其特征在于,所述计算机程序产品在电子设备上运行时,使得所述电子设备执行权利要求1-8任一项所述的方法。
PCT/CN2022/076596 2021-02-27 2022-02-17 一种数据传输带宽的配置方法及相关设备 WO2022179427A1 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202110221278.1 2021-02-27
CN202110221278 2021-02-27
CN202110549236.0 2021-05-19
CN202110549236.0A CN114978916B (zh) 2021-02-27 2021-05-19 一种数据传输带宽的配置方法及相关设备

Publications (1)

Publication Number Publication Date
WO2022179427A1 true WO2022179427A1 (zh) 2022-09-01

Family

ID=82973695

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/076596 WO2022179427A1 (zh) 2021-02-27 2022-02-17 一种数据传输带宽的配置方法及相关设备

Country Status (2)

Country Link
CN (1) CN114978916B (zh)
WO (1) WO2022179427A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117632804A (zh) * 2024-01-26 2024-03-01 深圳曦华科技有限公司 信号传输方法、装置、计算机设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180184037A1 (en) * 2014-07-03 2018-06-28 Sony Corporation Interface circuit, transmission system, transmission direction control method, and program
US20190050365A1 (en) * 2018-06-25 2019-02-14 Intel Corporation Systems, methods, and devices for dynamic high speed lane direction switching for asymmetrical interfaces
CN110474722A (zh) * 2019-08-15 2019-11-19 中国平安财产保险股份有限公司 一种数据通道切换方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101841447A (zh) * 2010-04-02 2010-09-22 北京恒光创新科技股份有限公司 一种总线带宽适配装置及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180184037A1 (en) * 2014-07-03 2018-06-28 Sony Corporation Interface circuit, transmission system, transmission direction control method, and program
US20190050365A1 (en) * 2018-06-25 2019-02-14 Intel Corporation Systems, methods, and devices for dynamic high speed lane direction switching for asymmetrical interfaces
CN110474722A (zh) * 2019-08-15 2019-11-19 中国平安财产保险股份有限公司 一种数据通道切换方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117632804A (zh) * 2024-01-26 2024-03-01 深圳曦华科技有限公司 信号传输方法、装置、计算机设备和存储介质
CN117632804B (zh) * 2024-01-26 2024-05-10 深圳曦华科技有限公司 信号传输方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN114978916B (zh) 2023-11-28
CN114978916A (zh) 2022-08-30

Similar Documents

Publication Publication Date Title
US10140242B2 (en) General purpose input/output (GPIO) signal bridging with I3C bus interfaces and virtualization in a multi-node network
CN104956347B (zh) 将一种互连协议的枚举和/或配置机制用于不同的互连协议
US9390046B2 (en) Controlling a physical link of a first protocol using an extended capability structure of a second protocol
US10467154B2 (en) Multi-port multi-sideband-GPIO consolidation technique over a multi-drop serial bus
US9929972B2 (en) System and method of sending data via a plurality of data lines on a bus
US10572410B2 (en) Function-specific communication on a multi-drop bus for coexistence management
US20180329837A1 (en) Input/output direction decoding in mixed vgpio state exchange
US20160170548A1 (en) Apparatus, system and method for communication of touch sensor information
US20180285292A1 (en) System and method of sending data via additional secondary data lines on a bus
WO2022213865A1 (zh) 计算机设备、虚拟化加速设备、数据传输方法及存储介质
KR102151178B1 (ko) 직렬 통신 장치 및 그 방법
US7191262B2 (en) High-throughput UART interfaces
WO2024088268A1 (zh) Rdma事件管理方法、设备及存储介质
US20140119463A1 (en) Scalable Multifunction Serial Link Interface
WO2023115852A1 (zh) 基于pcie的通信方法、装置、计算机设备和可读存储介质
WO2022179427A1 (zh) 一种数据传输带宽的配置方法及相关设备
CN102073611A (zh) 一种i2c总线控制系统及方法
US10684981B2 (en) Fast termination of multilane single data rate transactions
CN107092335B (zh) 优化的链路训练及管理机制
JP2017520052A (ja) ユニバーサルシリアルバス(usb)通信システムおよび方法
US10176133B2 (en) Smart device with no AP
US20230056665A1 (en) Mechanism to provide reliable receipt of event messages
CN220509429U (zh) 一种基于CXL的SoC服务器和电子设备
CN115840728A (zh) 图形处理系统、gpu核、传输控制器及主核配置方法
WO2022142900A1 (zh) 一种数据流水编排方法、装置、存储介质及终端设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22758792

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22758792

Country of ref document: EP

Kind code of ref document: A1