WO2013063972A1 - 一种通信方法、通信装置及电子设备 - Google Patents

一种通信方法、通信装置及电子设备 Download PDF

Info

Publication number
WO2013063972A1
WO2013063972A1 PCT/CN2012/080491 CN2012080491W WO2013063972A1 WO 2013063972 A1 WO2013063972 A1 WO 2013063972A1 CN 2012080491 W CN2012080491 W CN 2012080491W WO 2013063972 A1 WO2013063972 A1 WO 2013063972A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
hardware system
transmitted
data channel
channel
Prior art date
Application number
PCT/CN2012/080491
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 联想(北京)有限公司
Priority to US14/342,619 priority Critical patent/US9497254B2/en
Publication of WO2013063972A1 publication Critical patent/WO2013063972A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements

Definitions

  • the invention belongs to the field of electronics, and in particular relates to a communication method, a communication device and an electronic device. Background technique
  • Hybrid In a hybrid architecture (Hybrid) computer system, data synchronization is often required between subsystems. In addition to synchronizing user data (eg, photos, music, movies, etc.), some system data (such as battery information, system status of both parties, etc.) needs to be synchronized.
  • user data e.g., photos, music, movies, etc.
  • system data such as battery information, system status of both parties, etc.
  • Hybrid systems in the prior art that include different subsystems, but different subsystems share the same set of peripherals (such as screens, keyboards, mice, etc.).
  • the background subsystem is generally in standby.
  • the subsystem running in the front end needs to interact with the background subsystem, then the background subsystem needs to be woken up to complete the synchronization of the data, and the data interaction between the two lacks flexibility.
  • An object of the embodiments of the present invention is to provide a communication method, a communication device, and an electronic device, which improve the flexibility of data interaction between subsystems of a Hybrid architecture.
  • an embodiment of the present invention further provides a communication method, where the communication method is applied to a hybrid architecture system composed of a first terminal and a second terminal, where the first terminal includes a first hardware system, The second terminal includes a second hardware system, and the first hardware system and the second hardware system have a first data channel and a second data channel, and the communication method includes:
  • the data to be transmitted is transmitted from the first hardware system to the second hardware system via the selected at least one data channel.
  • the second data channel is in a working state for a long time
  • the first The data channel is in an active state or a non-working state according to the hardware state of the first hardware system and the second hardware system
  • the first data channel or the second data channel can be used in the first hardware system and the Data is transferred between the second hardware systems
  • the first data channel is incapable of being used to transfer data between the first hardware system and the second hardware system.
  • the channel selection parameter is a state parameter of the first data channel
  • the selecting at least one data channel from the first data channel and the second data channel according to the channel selection parameter In the step, when the state parameter of the first data channel indicates that the first data channel is in an active state, the at least one data channel includes at least the first data channel.
  • the channel selection parameter is a data amount of the data to be transmitted, and the step of selecting at least one data channel from the first data channel and the second data channel according to the channel selection parameter
  • the first data channel is selected when the data amount of the data to be transmitted exceeds a preset data amount threshold, and the second data channel is selected otherwise.
  • the data to be transmitted is data that is first cached in the first cache of the first hardware system by the first hardware system
  • the step of acquiring the data to be transmitted further includes:
  • the data to be transmitted is data to be sent to the second main processor of the second hardware system, and the communication method further includes:
  • the buffered data to be transmitted is transmitted to the second main processor.
  • the data to be transmitted is data to be sent to the second main processor of the second hardware system
  • the communication method further includes:
  • the power consumption for keeping the first data channel in an operating state is greater than the power consumption for maintaining the second data channel in an active state.
  • the data to be transmitted is a battery status data or a battery status query command.
  • an embodiment of the present invention further provides a communication device, where the communication device is applied to a hybrid architecture system composed of a first terminal and a second terminal, where the first terminal includes a first hardware system, The second terminal includes a second hardware system, and the first hardware system and the second hardware system have a first data channel and a second data channel, and the communication device includes:
  • a first acquiring module configured to acquire data to be transmitted that is to be transmitted by the first hardware system to the second hardware system
  • a second acquiring module configured to acquire a channel selection parameter
  • a selection module configured to select at least one data channel from the first data channel and the second data channel according to the channel selection parameter
  • a transmission module configured to transmit the data to be transmitted from the first hardware system to the second hardware system by using the selected at least one data channel.
  • the second data channel is in an active state for a long time, and the first data channel is in an active state or a non-working state according to a hardware state of the first hardware system and the second hardware system,
  • a data channel or a second data channel is in an active state, can be used to transfer data between the first hardware system and the second hardware system, and the first data channel cannot be used in the first hardware when in a non-working state Data is transferred between the system and the second hardware system.
  • the communication device wherein the channel selection parameter is a state parameter of the first data channel, and the selection module is specifically configured to indicate that the first data channel is in a working state in a state parameter of the first data channel
  • the at least one data channel includes at least the first data channel.
  • the channel selection parameter is the amount of data of the data to be transmitted
  • the selecting module is specifically configured to: when the data amount of the data to be transmitted exceeds a preset data amount threshold, select the first data channel, and otherwise select the second data channel.
  • the data to be transmitted is data that is first cached in the first cache of the first hardware system by the first hardware system
  • the communication device further includes:
  • a receiving module configured to receive a data request message from the second hardware system requesting to acquire the data to be transmitted.
  • the first acquiring module is specifically configured to acquire the data to be transmitted when the receiving module receives the request message.
  • the data to be transmitted is data to be sent to the second main processor of the second hardware system
  • the communication device further includes:
  • a first determining module configured to determine, after the data to be transmitted is transmitted from the first hardware system to the second hardware system, whether the second main processor is in a dormant state
  • a first cache module configured to cache the data to be transmitted to a cache of the second hardware system when the second main processor is in a sleep state
  • a first sending module configured to send the buffered data to be transmitted to the second main processor after the second main processor is woken up from a sleep state.
  • the data to be transmitted is data to be sent to the second main processor of the second hardware system
  • the communication device further includes:
  • a second determining module configured to determine a current state of the second main processor after the data to be transmitted is transmitted from the first hardware system to the second hardware system;
  • a third determining module configured to send the data to be transmitted to the second main processor when the second main processor is in an active state, or determine whether the data to be transmitted needs to be immediately sent to the Second main processor;
  • a second sending module configured to wake up the second main processor when the data to be transmitted needs to be immediately sent to the second main processor, and send the data to be transmitted to the second main processing Otherwise, buffering the data to be transmitted into a cache of the second hardware system, and transmitting the buffered data to be transmitted to the second main processing when the second main processor wakes up in an active state Device.
  • the power consumption for keeping the first data channel in an operating state is greater than the power consumption for maintaining the second data channel in an active state.
  • the data to be transmitted is battery status data or a battery status query command.
  • an embodiment of the present invention further provides an electronic device, where the electronic device is composed of a first terminal and a second terminal, the first terminal includes a first hardware system, and the second terminal includes a second
  • the hardware system has a first data channel and a second data channel between the first hardware system and the second hardware system, and the electronic device further includes:
  • a first acquiring module configured to acquire data to be transmitted that is to be transmitted by the first hardware system to the second hardware system
  • a second acquiring module configured to acquire a channel selection parameter
  • a selection module configured to select at least one data channel from the first data channel and the second data channel according to the channel selection parameter
  • a transmission module configured to transmit the data to be transmitted from the first hardware system to the second hardware system by using the selected at least one data channel.
  • multiple data channels are set in two hardware systems, and when data transmission is performed, the data channel is selected according to a channel selection parameter in real time, and finally the data channel is selected by using the selected data channel. .
  • a data channel is selected according to different requirements, or two data channels are selected at the same time, thereby improving the flexibility of data transmission between hardware systems.
  • FIG. 1 is a schematic flowchart of a communication method according to an embodiment of the present invention.
  • FIG. 2 is a schematic structural diagram of an application system of a communication method according to an embodiment of the present invention.
  • FIG. 3 is a schematic flowchart of a communication method according to an embodiment of the present invention.
  • FIG. 4 and FIG. 5 are schematic diagrams of two kinds of battery information transmission by using the method of the embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of a communication apparatus according to an embodiment of the present invention. detailed description
  • the communication device in the system of the Hybrid architecture
  • Multiple communication channels are established between multiple subsystems included in the system, and appropriate channels are selected for data interaction according to actual needs, which improves the flexibility of data interaction.
  • Embodiments of the present invention can be applied to a hybrid system consisting of a first terminal and a second terminal (or a first terminal and a third terminal).
  • the hybrid architecture system may be a combination of two independent terminal devices, or may be a portable terminal including the first terminal and the second terminal (or the first terminal and the third terminal).
  • a hybrid architecture system can consist of a single, single-system notebook computer and a smart phone, or a notebook computer with a hybrid architecture system.
  • the first terminal may include a first hardware system, such as a slave system based on an X86 architecture or an ARM architecture processor; the second terminal may include a second hardware system, such as a host system based on an X86 architecture or an ARM architecture processor.
  • a first hardware system such as a slave system based on an X86 architecture or an ARM architecture processor
  • the second terminal may include a second hardware system, such as a host system based on an X86 architecture or an ARM architecture processor.
  • the first terminal and the second terminal may be based on the same hardware architecture or different hardware architectures.
  • the primary system and the secondary system can distinguish between the two systems based on importance or priority or processing power or power consumption (for example, the primary system corresponds to high importance, high priority, strong processing power, or high power consumption,
  • the slave system is the opposite of the above, and can only be used for the distinction of naming, and does not limit the importance or priority of the system or the processing power or power consumption.
  • the second terminal may include a second hardware system having a second operating system, such as a desktop operating system (such as Windows, Linux or MacOS) or a portable device operating system (such as Android, Symbian or iOS).
  • a desktop operating system such as Windows, Linux or MacOS
  • a portable device operating system such as Android, Symbian or iOS
  • the second hardware system; the first terminal may include a first hardware system having a first operating system, such as a desktop operating system (such as Windows, Linux or MacOS) or a portable device operating system (such as Android, Symbian or iOS)
  • the first hardware system such as a desktop operating system (such as Windows, Linux or MacOS) or a portable device operating system (such as Android, Symbian or iOS)
  • the first hardware system such as a desktop operating system (such as Windows, Linux or MacOS) or a portable device operating system (such as Android, Symbian or iOS)
  • a desktop operating system such as Windows, Linux or MacOS
  • a portable device operating system such as Android, Sym
  • the first operating system and the second operating system may be the same or different, as long as they can run on the corresponding hardware system.
  • the second terminal is based on an X86 architecture processor, and the main system is installed with a desktop operating system; the first terminal is a slave system of the ARM architecture processor installed with a portable device operating system.
  • the first terminal has multiple first interfaces (communication units), and the second terminal has corresponding multiple The second interface, the first terminal and the second terminal are connected or separated by the corresponding first interface and the second interface.
  • the first terminal and the second terminal form a plurality of data channels through the connection between the corresponding first interface and the second interface.
  • two data channels are taken as an example for detailed description, and are respectively named first.
  • the data channel and the second data channel but it should be understood that the data channel can also be a first interface and the second interface can be a wired interface or a wireless interface, which is not limited herein, as long as the first terminal is the first
  • the interface and the second interface of the second terminal can implement connection and separation of the two terminals, and can exchange data.
  • the first interface may be specifically a data bus interface, such as a USB interface, or a UART interface, or a custom interface to satisfy the connection or separation between the two devices.
  • the second interface can also be a corresponding USB interface, or a UART interface, or a custom interface to satisfy the connection or separation between the two systems.
  • the two parties may be matched Bluetooth interfaces, or infrared interfaces, or Wifi interfaces.
  • the first terminal and the second terminal are two relatively independent systems, and can work independently or together.
  • the second terminal is disposed on a host side of the single-system notebook, and has a processing unit, an input unit, and a storage unit, but does not have a display unit;
  • the first terminal is disposed on a display screen side with respect to the single-system notebook, and has a processing unit and an input.
  • Unit, storage unit, display unit When the first terminal and the second terminal are connected and combined, the two terminals can share a part of the hardware unit, such as a display unit.
  • the display unit is integrated with the first terminal, when the first terminal and the second terminal are disconnected or disconnected, the first terminal is used only by the first terminal; when the first terminal and the second terminal are connected, the first terminal can be used by the first terminal. It can also be used by the second terminal, that is, the running result/output content of the application (including the operating system) in the first terminal and/or the second terminal can be displayed by the display unit.
  • the device having the similar tablet (PAD) of the slave system is equivalent to the first terminal in the embodiment of the present application
  • the host device having the master system is equivalent to the first embodiment in the embodiment of the present application
  • the second terminal, the other (or the same) host device having the main system is equivalent to the third terminal in the embodiment of the present application.
  • a communication method is applied to a hybrid architecture system consisting of a first terminal and a second terminal, where the first terminal includes a first hardware system, and the second terminal includes a second hardware system.
  • the first data channel and the second data channel are provided between the first hardware system and the second hardware system.
  • the communication method includes:
  • Step 11 Acquire data to be transmitted that is to be transmitted by the first hardware system to the second hardware system;
  • Step 12 Acquire a channel selection parameter;
  • Step 13 Select at least one data channel from the first data channel and the second data channel according to the channel selection parameter
  • Step 14 Transfer the data to be transmitted from the first hardware system to the second hardware system through the selected at least one data channel.
  • multiple data channels are set in two hardware systems, and when data transmission is performed, the data channel is selected according to a channel selection parameter in real time, and finally the data channel is selected by using the selected data channel. .
  • a data channel is selected according to different requirements, or two data channels are selected at the same time, thereby improving the flexibility of data transmission between hardware systems.
  • FIG. 2 is a schematic diagram of a specific application scenario according to an embodiment of the present invention, where the entire electronic device hardware includes three parts, a first hardware system, a second hardware system, and a shared device (optional, such as a keyboard and a mouse). , display, etc., but whether there is a shared device and which devices are shared devices is subject to the actual system).
  • a shared device optional, such as a keyboard and a mouse.
  • the first hardware system and the second hardware system respectively include a main processor and a slave processor, wherein the main processor in the first hardware system is a processor of the ⁇ 86 architecture, and the main processor in the second hardware system is an ARM architecture.
  • the slave processor is EC (embedded controller) / MCU (micro control unit, also known as single-chip microcomputer).
  • first data channel between the main processor and a second data channel between the slave processors, so the data transmission channel between the first hardware system and the second hardware system is various, with the first hardware
  • the system transmits data to the second hardware system as an example, as follows:
  • the first host processor transmits data to the second host processor through the first data channel
  • the first slave processor transmits data to the second slave processor through the second data channel
  • the first host processor transmits the data to the first slave processor, and the first slave processor transmits the data to the second slave processor through the second data channel;
  • the first slave processor transmits the data to the first host processor, and the first host processor passes the first data
  • the channel transmits data to the second host processor.
  • the method of the embodiment of the present invention can select different transmission channels for data transmission according to requirements, thereby improving the flexibility of data transmission.
  • the second data channel depends on the working state of the EC/MCU, generally, since the power consumption of the EC/MCU is extremely low, it can be controlled to be in a working state for a long time, so that the second data is The channel is in working state for a long time.
  • the first data channel is dependent on the main processor of the device, and the power consumption thereof is large. If the device is in a working state for a long time, the power consumption is increased. Therefore, the first data channel is according to the first hardware system and the second hardware system.
  • the hardware state (main processor state) is in a working state or a non-working state. When the main processor of the first hardware system or the second hardware system is in a sleep state, the first data channel is in a non-working state, otherwise it is in a working state. .
  • the first data channel or the second data channel can be used to transfer data between the first hardware system and the second hardware system when the first data channel is in an active state, and the first data channel cannot be used in the non-working state. Data is transferred between the first hardware system and the second hardware system.
  • the power consumption for keeping the first data channel in the working state is much larger than the power consumption for keeping the second data channel in the working state, but the transmission rate of the first data channel is higher than The transmission rate of the second data channel.
  • the data channel is selected from the first data channel and the second data channel in accordance with the channel selection parameter, and the channel selection parameters are different for different requirements.
  • the channel selection parameters in the specific embodiment of the present invention can be various and are respectively described as follows.
  • the selected data channel considering that the transmission rate of the first data channel is higher than the transmission rate of the second data channel, if the state parameter of the first data channel indicates that the first data channel is in an active state, the first The high transmission rate of the data channel, the selected data channel must include the first data channel.
  • the channel selection parameter is a state parameter of the first data channel, and the step of selecting at least one data channel from the first data channel and the second data channel according to the channel selection parameter And, when the state parameter of the first data channel indicates that the first data channel is in an active state, the at least one data channel includes at least the first data channel.
  • the channel selection parameter and the selection strategy described above the high-speed data channel in the working state can be fully utilized without increasing the power consumption, thereby improving the efficiency of data transmission.
  • the first data channel when the first data channel is in the working state, at least the first data channel is selected for data transmission.
  • the channel selection policy based on the power consumption can be used, that is, when the state parameter of the first data channel indicates that the first data channel is in the non-working state, Then select the second data channel.
  • the power consumption for keeping the first data channel in an operating state is far greater than the power consumption for keeping the second data channel in an active state, so when the first data channel is in an inactive state, if power consumption is considered
  • the channel selection parameter is also a state parameter of the first data channel, but the policy is changed. At this time, the channel selection parameter selects at least one of the first data channel and the second data channel according to the channel selection parameter.
  • the at least one data channel includes only the second data channel.
  • the first data channel when the first data channel is in the inactive state, if the first data channel is enabled for data transmission, the power consumption of the system is increased, and the method of the embodiment of the present invention is used when the first data channel is inactive.
  • the second data channel In the state, the second data channel is directly used for data transmission, so as to reduce the power consumption of the system, especially in the case of frequent interaction, the power consumption is particularly reduced, and the battery status view is taken as an example for description.
  • the main processor of the first hardware system may remain awake at any time. Or wake up every 20s, which will greatly increase the power consumption of the system.
  • the main processor of the first hardware system always remains in a sleep state, and the slave processor cycle from the first hardware system
  • the transmission of battery power information to the slave processor of the second hardware system through the second data channel reduces system power consumption.
  • the first data channel is not selected in consideration of power consumption, but in the case of a large amount of transmission data, the data transmission time is too long. Synchronize as user data (for example, photos, music, movies, etc.).
  • the channel selection parameter is the data amount of the data to be transmitted
  • the channel selection parameter is from the first data channel and according to the channel selection parameter.
  • the first data channel is selected to reduce the transmission time as long as the amount of data to be transmitted exceeds a threshold, and the transmission time is in an acceptable range when the amount of data is small.
  • the second data channel is selected, the power consumption is reduced.
  • the channel selection parameter is the data amount of the data to be transmitted and the working state of the first data channel, and when the data channel is selected, the working state of the first data channel is first considered, when the first data channel is in the working state, The first data channel is directly selected. When the first data channel is in the non-working state, it is determined whether the data amount of the data to be transmitted exceeds a threshold. When it exceeds a threshold, the first data channel is also selected, otherwise the second data channel is selected.
  • the channel selection parameter may also be other parameters, such as attributes of data to be transmitted, if the data to be transmitted is to be transmitted quickly and the data volume is large, If the two data channels cannot be delivered in time, the first data channel needs to be selected regardless of the working state of the first data channel.
  • channel selection parameters and channel selection strategies in particular embodiments of the present invention may also be various other parameters and strategies, not enumerated herein.
  • the data to be transmitted is data that is read by the first hardware system in real time based on the request from the second hardware system.
  • the method before the step of acquiring the data to be transmitted, the method further includes:
  • the second hardware system sends a data request message to the first hardware system to request to acquire the data to be transmitted.
  • the message can be transmitted according to the previously mentioned method.
  • the first hardware system When the first hardware system receives the data request message from the second hardware system, it interacts with the battery chip, reads the latest battery power information, and returns to the second hardware system using the method of the embodiment of the present invention.
  • the first hardware system is based on the first hardware system, and the first hardware system is based on the data from the first hardware system.
  • the request of the second hardware system for data transmission that is, before the step of acquiring the data to be transmitted, the method further includes:
  • Receiving a data request message from the second hardware system requesting the data to be transmitted Take a battery view as an example.
  • the first hardware system periodically reads the battery power and saves it to the first cache, when the second hardware system needs to view
  • a data request message is sent to the first hardware system to request to acquire the data to be transmitted.
  • the message can be transmitted according to the previously mentioned method.
  • the latest battery power information can be read from the first cache and returned to the second hardware system using the method of the embodiment of the present invention.
  • the data to be transmitted is data to be sent to a second main processor of the second hardware system.
  • the communication method of the embodiment of the present invention includes multiple processing means, which are respectively described below.
  • the communication method further includes: After the data to be transmitted is transmitted from the first hardware system to the second hardware system, determining whether the second main processor is in a sleep state;
  • the buffered data to be transmitted is transmitted to the second main processor.
  • the second main processor when the second main processor is in the sleep state, the data is buffered, and the cached data to be transmitted is sent to the second main processor after the second main processor wakes up. In this way, the second main processor is not frequently woken up, which saves power consumption, as illustrated below.
  • the second hardware system needs to record the battery power consumption curve of the first hardware system for a period of time. At this time, the second hardware system may be in a sleep state, and in the sleep state, receive the first hardware system to send through the second data channel. The battery power information for each time period is cached.
  • the second main processor After the second hardware system wakes up, all the cached battery power information is sent to the second main processor, and the second main processor can draw the battery power consumption curve of the first hardware system during the sleep according to the data. Since there is no need to wake up the second main processor every time a data is received to draw the curve, power consumption is greatly reduced.
  • the data is sent to the second main processor for processing after waiting for the second main processor to wake up by itself, but this method is not suitable for the command requiring real-time processing, as illustrated below.
  • the data to be transmitted is to be sent to the second, in the communication processing method of the embodiment of the present invention, in the communication processing method of the embodiment of the present invention.
  • the data of the second main processor of the hardware system, the communication method further includes:
  • the data to be transmitted needs to be immediately sent to the second main processor to wake up the second main Transmitting, by the processor, the data to be transmitted to the second main processor, otherwise, buffering the data to be transmitted into a cache of the second hardware system, and waking up in the second main processor is activated And transmitting the buffered data to be transmitted to the second main processor.
  • the data to be transmitted is a battery status data or a battery status query command.
  • Step 31 The first CPU of the first hardware system is in an awake state, and the first hardware system needs to send an instruction to the second hardware system.
  • Step 32 Determine a working state of a CPU of the second hardware system.
  • Step 33 The second CPU of the second hardware system is in an active state, and then selecting the first data channel to transmit the instruction to the second CPU;
  • Step 34 The CPU of the second hardware system is in a sleep state, and selects a second data channel transmission, that is, the first CPU-first MCU-second MCU transmits an instruction to the second MCU;
  • Step 35 after receiving the instruction, the second MCU determines whether the instruction can be processed by itself, if not, proceeds to step 36, otherwise proceeds to step 37;
  • Step 36 The second MCU cache instruction is passed to the second CPU after the second CPU wakes up or directly wakes up the second CPU system and then transfers the data to the second CPU.
  • step 37 the second MCU parses and processes the instruction.
  • the instruction that cannot be processed by the second MCU is processed by the second CPU after being awake by the second CPU and returned to the first CPU through the first data channel, and the instruction that can be processed by the second MCU is processed after the instruction is
  • the command response is returned to the first MCU through the second data channel and returned to the first CPU by the first MCU.
  • the data prepared by the second MCU There are two cases for the data prepared by the second MCU. First, before the second CPU enters the sleep state, the data is transferred to the data buffered by the MCU system (such as the power system state). Second, the second MCU system Data obtained immediately (such as battery information).
  • the second CPU sends its own power state to the second MCU and enters a sleep state; after receiving the power state, the second MCU waits for a query of the first hardware system, and when receiving the power state query command through the second data channel, the second The MCU parses the instruction to learn the requirements of the first hardware system, then reads the cached power state and returns it to the first MCU through the second data channel.
  • the second MCU When the second MCU receives the battery information query instruction through the second data channel, the second MCU parses the instruction to learn the requirements of the first hardware system, and then acquires relevant data from the battery (Smart Battery Protocol) through the private bus, and then passes the second data.
  • the channel is returned to the first MCU and returned by the first MCU to the first CPU for processing.
  • the EC/MCU in the first hardware system and the second hardware system can read the battery information through the SMBUS
  • the first data channel can be the RNDIS data channel
  • the second data channel can be the UART data channel.
  • the reporting of the battery data by the second hardware system to the first hardware system may include two methods, such as:
  • the first mode is shown in Figure 4.
  • the data/instruction transfer path is divided into: A1 (first main processor first slave processor) + A2 (first slave processor second slave processor) + A3 (second slave processor battery) + A4 (second slave processor first slave processor) + A5 (first slave processor first master processor). In this way, the instruction/data interaction takes place via the second data channel.
  • the second mode is shown in Figure 5.
  • the data/instruction transfer path is divided into: B1 (first main processor second main processor) + B2 (second main processor second slave processor) + B3 (second slave processor battery) + B4 (second slave processor second host processor) + B5 (second master processor first host processor). In this way, the instruction/data interaction takes place via the first data channel.
  • the third way can be the combination of the first two ways, that is, the transmission path of the data / instruction As: Al (first master processor first slave processor) +A2 (first slave processor second slave processor) +A3 (second slave processor battery) + B4 (second slave processor second master Processor) +B5 (second main processor first main processor).
  • Al first master processor first slave processor
  • A2 first slave processor second slave processor
  • A3 second slave processor battery
  • B4 second slave processor second master Processor
  • B5 second main processor first main processor
  • the information that the EC/MCU acquires the battery may also be the following manner.
  • the EC interacts with the battery chip to obtain information and returns in real time when receiving the instruction;
  • the EC periodically reads the battery information and caches, and directly reads the information from the buffer and returns when receiving the instruction.
  • the communication device of the embodiment of the present invention is applied to a hybrid architecture system consisting of a first terminal and a second terminal, where the first terminal includes a first hardware system, the second terminal includes a second hardware system, and the first The first data channel and the second data channel are provided between the hardware system and the second hardware system.
  • the communication device includes:
  • a first acquiring module configured to acquire data to be transmitted that is to be transmitted by the first hardware system to the second hardware system
  • a second acquiring module configured to acquire a channel selection parameter
  • a selection module configured to select at least one data channel from the first data channel and the second data channel according to the channel selection parameter
  • a transmission module configured to transmit the data to be transmitted from the first hardware system to the second hardware system by using the selected at least one data channel.
  • the foregoing communication device may be applied to a scenario in which the second data channel is in an active state for a long time, and the first data channel is in a working state according to a hardware state of the first hardware system and the second hardware system.
  • Working state when the first data channel or the second data channel is in an active state, can be used to transfer data between the first hardware system and the second hardware system, and the first data channel cannot be in a non-working state For transmitting data between the first hardware system and the second hardware system.
  • the channel selection parameter is a state parameter of the first data channel, and the selection module is specifically configured to indicate the first state in a state parameter of the first data channel.
  • the channel selection parameter is the data amount of the data to be transmitted, and the selection module is specifically configured to: when the data volume of the data to be transmitted exceeds a preset data volume threshold, select the The first data channel is described, otherwise the second data channel is selected.
  • the data to be transmitted is data that is first cached in the first cache of the first hardware system by the first hardware system
  • the communication device further includes:
  • a receiving module configured to receive a data request message from the second hardware system requesting to acquire the data to be transmitted.
  • the first acquiring module is specifically configured to acquire the data to be transmitted when the receiving module receives the request message.
  • the communication device further includes:
  • a first determining module configured to determine, after the data to be transmitted is transmitted from the first hardware system to the second hardware system, whether the second main processor is in a dormant state
  • a first cache module configured to cache the data to be transmitted to a cache of the second hardware system when the second main processor is in a sleep state
  • a first sending module configured to send the buffered data to be transmitted to the second main processor after the second main processor is woken up from a sleep state.
  • the communication device further includes: when the data to be transmitted is the data to be sent to the second main processor of the second hardware system, considering the processing capability and the real-time requirement of the processing and the power consumption.
  • a second determining module configured to determine a current state of the second main processor after the data to be transmitted is transmitted from the first hardware system to the second hardware system;
  • a third determining module configured to send the data to be transmitted to the second main processor when the second main processor is in an active state, or determine whether the data to be transmitted needs to be immediately sent to the Second main processor;
  • a second sending module configured to wake up the second main processor when the data to be transmitted needs to be immediately sent to the second main processor, and send the data to be transmitted to the second main processing Otherwise, buffering the data to be transmitted into a cache of the second hardware system, and transmitting the buffered data to be transmitted to the second main processing when the second main processor wakes up in an active state Device.
  • the power consumption of the first data channel is maintained Greater than the power consumption to keep the second data channel in an active state.
  • the communication device of the embodiment of the present invention can be used for battery information inquiry, and the data to be transmitted is battery status data or battery status query instruction.
  • the embodiment of the present invention further provides an electronic device, where the electronic device is composed of a first terminal and a second terminal, the first terminal includes a first hardware system, and the second terminal includes a second hardware system, The first hardware channel and the second hardware system have a first data channel and a second data channel, and the electronic device further includes:
  • a first acquiring module configured to acquire data to be transmitted that is to be transmitted by the first hardware system to the second hardware system
  • a second acquiring module configured to acquire a channel selection parameter
  • a selection module configured to select at least one data channel from the first data channel and the second data channel according to the channel selection parameter
  • a transmission module configured to transmit the data to be transmitted from the first hardware system to the second hardware system by using the selected at least one data channel.
  • the modules may be implemented in software for execution by various types of processors.
  • an identified executable code module can comprise one or more physical or logical blocks of computer instructions, which can be constructed, for example, as an object, procedure, or function. Nonetheless, the executable code of the identified modules need not be physically located together, but may include different instructions stored at different locations, and when these instructions are logically combined, they form a module and achieve the stated purpose of the module. .
  • the executable code module can be a single instruction or a plurality of instructions, and can even be distributed over a plurality of different code segments, distributed among different programs, and distributed across multiple memory devices.
  • operational data can be identified within the module and can be implemented in any suitable form and organized within any suitable type of data structure. The operational data may be collected as a single data set, or may be distributed at different locations (including on different storage devices), and may exist, at least in part, only as an electronic signal on a system or network.
  • the module can be implemented by software, considering the level of the existing hardware process, the module can be implemented in software, and the technician can construct a corresponding hardware circuit to implement the corresponding function without considering the cost.
  • the hardware circuit includes conventional ultra-large scale integration (VLSI) Circuits or gate arrays and existing semiconductors such as logic chips, transistors, or other discrete components.
  • VLSI ultra-large scale integration
  • Modules can also be implemented with programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices, and the like.

Abstract

一种通信方法、通信装置及电子设备,该通信方法应用于由第一终端和第二终端组成的混合架构系统中,第一终端包括第一硬件系统,第二终端包括第二硬件系统,第一硬件系统和第二硬件系统之间具有第一数据通道和第二数据通道。该通信方法包括:获取第一硬件系统待传输到第二硬件系统的待传输数据(11);获取一通道选择参数(12);根据通道选择参数从第一数据通道和第二数据通道中选择至少一个数据通道(13);通过选择的至少一个数据通道将待传输数据从第一硬件系统传输到第二硬件系统(14)。本方案提高了数据传输的灵活性。

Description

一种通信方法、 通信装置及电子设备
技术领域
本发明属于电子领域, 特别涉及一种通信方法、 通信装置及电子设备。 背景技术
在混合架构(Hybrid )的计算机系统中, 子系统之间经常需要进行数据同 步。 除了同步用户数据(例如, 照片、 音乐、 电影等)外, 还需要同步一些系 统数据(例如电池信息, 双方系统状态等)。
现有技术中存在一些 Hybrid系统, 其包括不同的子系统, 但不同子系统 共享同一套外设(如屏幕、 键盘、 鼠标等)。
正常情况下, 用户只会操作其中的一套子系统, 而另一套子系统在后台运 行, 而且为了省电, 后台子系统一般都处于待机状态。 在这种情况下, 前端运 行的子系统如果需要和后台子系统交互数据,那么就需要将后台子系统唤醒从 而完成数据的同步, 二者之间的数据交互方式缺少灵活性。 发明内容
本发明实施例的目的在于提供一种通信方法、通信装置及电子设备,提高 Hybrid架构的系统在子系统间进行的数据交互的灵活性。
为了实现上述目的, 本发明实施例还提供了一种通信方法, 所述通信方法 应用于由第一终端和第二终端组成的混合架构系统中,所述第一终端包括第一 硬件系统, 所述第二终端包括第二硬件系统, 所述第一硬件系统和第二硬件系 统之间具有第一数据通道和第二数据通道, 所述通信方法包括:
获取第一硬件系统待传输到所述第二硬件系统的待传输数据;
获取一通道选择参数;
根据所述通道选择参数从所述第一数据通道和第二数据通道中选择至少 一个数据通道;
通过选择的所述至少一个数据通道将所述待传输数据从所述第一硬件系 统传输到所述第二硬件系统。
上述的通信方法, 其中, 所述第二数据通道长期处于工作状态, 所述第一 数据通道根据所述第一硬件系统和第二硬件系统的硬件状态处于工作状态或 非工作状态,所述第一数据通道或第二数据通道处于工作状态时能够用于在第 一硬件系统和所述第二硬件系统之间传输数据,所述第一数据通道处于非工作 状态时无法用于在第一硬件系统和所述第二硬件系统之间传输数据。
上述的通信方法, 其中, 所述通道选择参数为所述第一数据通道的状态参 数,所述根据所述通道选择参数从所述第一数据通道和第二数据通道中选择至 少一个数据通道的步骤中,在所述第一数据通道的状态参数表明所述第一数据 通道处于工作状态时, 所述至少一个数据通道至少包括所述第一数据通道。
上述的通信方法, 其中, 所述通道选择参数为所述待传输数据的数据量, 所述根据所述通道选择参数从所述第一数据通道和第二数据通道中选择至少 一个数据通道的步骤中 ,在所述待传输数据的数据量超过一预设的数据量门限 时, 选择所述第一数据通道, 否则选择所述第二数据通道。
上述的通信方法, 其中, 所述待传输数据为所述第一硬件系统预先緩存到 所述第一硬件系统的第一緩存中的数据 ,获取所述待传输数据的步骤之前还包 括:
接收来自第二硬件系统的请求获取所述待传输数据的数据请求消息。 上述的通信方法, 其中, 所述待传输数据为待发送到所述第二硬件系统的 第二主处理器的数据, 所述通信方法还包括:
在所述待传输数据从所述第一硬件系统传输到所述第二硬件系统后,判断 所述第二主处理器是否处于休眠状态;
在所述第二主处理器处于休眠状态时,緩存所述待传输数据到第二硬件系 统的緩存中;
在所述第二主处理器从休眠状态被唤醒后,将緩存的所述待传输数据发送 到所述第二主处理器。
上述的通信方法, 其中, 所述待传输数据为待发送到所述第二硬件系统的 第二主处理器的数据, 所述通信方法还包括:
在所述待传输数据从所述第一硬件系统传输到所述第二硬件系统之后,判 断所述第二主处理器当前的状态;
在所述第二主处理器处于激活状态时,将所述待传输数据发送到所述第二 主处理器, 否则判断所述待传输数据是否需要立刻发送到所述第二主处理器; 在所述待传输数据需要立刻发送到所述第二主处理器时,唤醒所述第二主 处理器, 并将所述待传输数据发送到所述第二主处理器, 否则, 緩存所述待传 输数据到第二硬件系统的緩存中, 并在所述第二主处理器唤醒处于激活状态 时, 将緩存的所述待传输数据发送到所述第二主处理器。
上述的通信方法, 其中,保持所述第一数据通道处于工作状态的功耗大于 保持所述第二数据通道处于工作状态的功耗。
上述的通信方法, 其中, 所述待传输数据为电池状态数据或电池状态查询 指令。
为了实现上述目的, 本发明实施例还提供了一种通信装置, 所述通信装置 应用于由第一终端和第二终端组成的混合架构系统中,所述第一终端包括第一 硬件系统, 所述第二终端包括第二硬件系统, 所述第一硬件系统和第二硬件系 统之间具有第一数据通道和第二数据通道, 所述通信装置包括:
第一获取模块,用于获取第一硬件系统待传输到所述第二硬件系统的待传 输数据;
第二获取模块, 用于获取一通道选择参数;
选择模块,用于根据所述通道选择参数从所述第一数据通道和第二数据通 道中选择至少一个数据通道;
传输模块,用于通过选择的所述至少一个数据通道将所述待传输数据从所 述第一硬件系统传输到所述第二硬件系统。
上述的通信装置, 其中, 所述第二数据通道长期处于工作状态, 所述第一 数据通道根据所述第一硬件系统和第二硬件系统的硬件状态处于工作状态或 非工作状态,所述第一数据通道或第二数据通道处于工作状态时能够用于在第 一硬件系统和所述第二硬件系统之间传输数据,所述第一数据通道处于非工作 状态时无法用于在第一硬件系统和所述第二硬件系统之间传输数据。
上述的通信装置, 其中, 所述通道选择参数为所述第一数据通道的状态参 数,所述选择模块具体用于在所述第一数据通道的状态参数表明所述第一数据 通道处于工作状态时, 所述至少一个数据通道至少包括所述第一数据通道。
上述的通信装置, 其中, 所述通道选择参数为所述待传输数据的数据量, 所述选择模块具体用于在所述待传输数据的数据量超过一预设的数据量门限 时, 选择所述第一数据通道, 否则选择所述第二数据通道。
上述的通信装置, 其中, 所述待传输数据为所述第一硬件系统预先緩存到 所述第一硬件系统的第一緩存中的数据, 所述通信装置还包括:
接收模块,用于接收来自第二硬件系统的请求获取所述待传输数据的数据 请求消息。
所述第一获取模块具体用于在所述接收模块接收到所述请求消息时获取 所述待传输数据。
上述的通信装置, 其中, 所述待传输数据为待发送到所述第二硬件系统的 第二主处理器的数据, 所述通信装置还包括:
第一判断模块,用于在所述待传输数据从所述第一硬件系统传输到所述第 二硬件系统之后, 判断所述第二主处理器是否处于休眠状态;
第一緩存模块, 用于在所述第二主处理器处于休眠状态时,緩存所述待传 输数据到第二硬件系统的緩存中;
第一发送模块, 用于在所述第二主处理器从休眠状态被唤醒后, 将緩存的 所述待传输数据发送到所述第二主处理器。
上述的通信装置, 其中, 所述待传输数据为待发送到所述第二硬件系统的 第二主处理器的数据, 所述通信装置还包括:
第二判断模块,用于在所述待传输数据从所述第一硬件系统传输到所述第 二硬件系统之后, 判断所述第二主处理器当前的状态;
第三判断模块, 用于在所述第二主处理器处于激活状态时,将所述待传输 数据发送到所述第二主处理器 ,否则判断所述待传输数据是否需要立刻发送到 所述第二主处理器;
第二发送模块,用于在所述待传输数据需要立刻发送到所述第二主处理器 时, 唤醒所述第二主处理器, 并将所述待传输数据发送到所述第二主处理器, 否则,緩存所述待传输数据到第二硬件系统的緩存中, 并在所述第二主处理器 唤醒处于激活状态时, 将緩存的所述待传输数据发送到所述第二主处理器。
上述的通信装置, 其中,保持所述第一数据通道处于工作状态的功耗大于 保持所述第二数据通道处于工作状态的功耗。 上述的通信装置, 其中, 所述待传输数据为电池状态数据或电池状态查询 指令。
为了实现上述目的, 本发明实施例还提供了一种电子设备, 所述电子设备 由第一终端和第二终端组成, 所述第一终端包括第一硬件系统, 所述第二终端 包括第二硬件系统,所述第一硬件系统和第二硬件系统之间具有第一数据通道 和第二数据通道, 所述电子设备还包括:
第一获取模块,用于获取第一硬件系统待传输到所述第二硬件系统的待传 输数据;
第二获取模块, 用于获取一通道选择参数;
选择模块,用于根据所述通道选择参数从所述第一数据通道和第二数据通 道中选择至少一个数据通道;
传输模块,用于通过选择的所述至少一个数据通道将所述待传输数据从所 述第一硬件系统传输到所述第二硬件系统。
本发明实施例具有以下有益效果:
本发明实施例的通信方法中,在两个硬件系统中设置多个数据通道,在进 行数据传输时, 实时根据一通道选择参数来进行数据通道的选择, 并最终利用 选择的数据通道进行数据传输。 利用本发明实施例的方法,根据不同需求或者 选择一个数据通道, 或者同时选择两个数据通道,提高了硬件系统间数据传输 的灵活性。
附图说明
图 1为本发明实施例的通信方法的流程示意图;
图 2为本发明实施例的通信方法的应用系统的结构示意图;
图 3为本发明实施例的通信方法的具体流程示意图;
图 4、 图 5为利用本发明实施例的方法的两种电池信息传递示意图; 图 6为本发明实施例的通信装置的结构示意图。 具体实施方式
本发明实施例的通信方法、 通信装置及电子设备中, 在 Hybrid架构的系 统所包括的多个子系统间建立多条通信通道,并根据实际需求选择合适的通道 进行数据交互, 提高了数据交互的灵活性。
在对本发明实施例进行详细说明之前,先对本发明实施例的所应用的电子 设备进行说明, 以便于更好的理解本发明实施例。
本发明实施例可以应用在由第一终端和第二终端 (或第一终端和第三终 端)组成的混合架构 (hybrid ) 系统中。 其中, 混合架构系统可以是两个独立 的终端设备组合而成,也可以是包含第一终端和第二终端(或第一终端和第三 终端) 的一个便携终端。
比如混合架构系统可以由一台独立单一系统的笔记本计算机和一台智能 手机组成, 也可以是具有混合架构系统的笔记本计算机。
其中, 第一终端可以包括第一硬件系统, 比如基于 X86架构或 ARM架构 处理器的从系统;第二终端可以包括第二硬件系统,比如基于 X86架构或 ARM 架构处理器的主系统。
也就是说, 第一终端和第二终端可以基于相同的硬件架构,也可以依据不 同的硬件架构。此外, 主系统和从系统可以是依据重要性或优先级或处理能力 或功耗对两个系统进行的区分(例如, 主系统对应重要性高、 优先级高、 处理 能力强或功耗大, 而从系统与上述相反), 也可以仅仅是为了命名的区分, 并 非限定系统的重要性或优先级或处理能力或功耗。
进一步, 第二终端可以包括具有第二操作系统的第二硬件系统, 比如安装 有桌面设备操作系统(比如 Windows, Linux或 MacOS )或安装有便携设备操 作系统(比如 Android, Symbian或 iOS ) 的第二硬件系统; 第一终端可以包 括具有第一操作系统的第一硬件系统, 比如安装有桌面设备操作系统(比如 Windows, Linux或 MacOS )或安装有便携设备操作系统(比如 Android, Symbian 或 iOS ) 的第一硬件系统。
也就是说, 第一操作系统和第二操作系统可以相同也可以不同, 只要可以 运行在相应的硬件系统即可。 优选的, 第二终端是基于 X86 架构处理器的, 安装有桌面操作系统的主系统; 第一终端^^于 ARM架构处理器的, 安装有 便携设备操作系统的从系统。
其中, 第一终端具有多个第一接口 (通信单元), 第二终端具有对应的多 个第二接口,第一终端和第二终端通过对应的第一接口与第二接口实现连接或 分离。而第一终端和第二终端通过对应的第一接口与第二接口的连接形成有多 条数据通道, 在后续为方便说明, 以两条数据通道为例进行详细说明, 并分别 命名为第一数据通道和第二数据通道,但应当理解的是, 该数据通道也可以更 第一接口和第二接口可以是有线接口也可以是无线接口, 此处不做限定, 只要第一终端的第一接口与第二终端的第二接口能够实现两个终端的连接和 分离, 且能够交互数据即可。
当第一接口和第二接口是有线接口时, 第一接口可以具体为数据总线接 口, 比如 USB接口、 或 UART接口、 或自定义接口来满足两个设备之间的连 接或者分离。 第二接口也可以为对应的 USB接口、 或 UART接口、 或自定义 接口来满足两个系统之间的连接或者分离。当第一接口和第二接口是无线接口 时, 双方可以是匹配的蓝牙接口、 或红外接口、 或 Wifi接口。
以混合系统架构的笔记本为例, 第一终端和第二终端是两个相对独立系 统, 可以分别独立工作或者连接在一起工作。 第二终端设置于相对于单系统笔 记本的主机侧, 具备处理单元、 输入单元、 存储单元, 但不具备显示单元; 第 一终端设置于相对于单系统笔记本的显示屏侧, 具备处理单元、 输入单元, 存 储单元、 显示单元。 在第一终端和第二终端连接并结合工作时, 两个终端可以 共享部分硬件单元, 例如显示单元。 由于显示单元与第一终端集成, 因此当第 一终端和第二终端断开或有线分离时,仅供第一终端使用; 当第一终端和第二 终端连接时, 可以供第一终端使用, 也可以供第二终端使用, 即第一终端和 / 或第二终端中应用 (含操作系统) 的运行结果 /输出内容可以通过显示单元显 示。
即上述组成混合系统架构的便携终端中, 具有从系统的类似平板电脑 ( PAD )的设备相当于本申请实施例中的第一终端, 具有主系统的主机设备相 当于本申请实施例中的第二终端, 另一个(或同一个)具有主系统的主机设备 相当于本申请实施例中的第三终端。
本发明实施例的一种通信方法,应用于由第一终端和第二终端组成的混合 架构系统中, 所述第一终端包括第一硬件系统, 所述第二终端包括第二硬件系 统, 所述第一硬件系统和第二硬件系统之间具有第一数据通道和第二数据通 道, 如图 1所示, 所述通信方法包括:
步骤 11 , 获取第一硬件系统待传输到所述第二硬件系统的待传输数据; 步骤 12, 获取一通道选择参数;
步骤 13 , 根据所述通道选择参数从所述第一数据通道和第二数据通道中 选择至少一个数据通道;
步骤 14, 通过选择的所述至少一个数据通道将所述待传输数据从所述第 一硬件系统传输到所述第二硬件系统。
本发明实施例的通信方法中,在两个硬件系统中设置多个数据通道,在进 行数据传输时, 实时根据一通道选择参数来进行数据通道的选择, 并最终利用 选择的数据通道进行数据传输。 利用本发明实施例的方法,根据不同需求或者 选择一个数据通道, 或者同时选择两个数据通道,提高了硬件系统间数据传输 的灵活性。
如图 2所示, 为本发明实施例的一种具体应用场景示意图, 其中, 整个电 子设备硬件包括 3个部分,第一硬件系统、第二硬件系统以及共享设备(可选, 如键盘、 鼠标、 显示等, 但是否存在共享设备以及哪些设备为共享设备以实际 系统为准)。
其中第一硬件系统和第二硬件系统中分别包括主处理器和从处理器,其中 第一硬件系统中主处理器为 Χ86 架构的处理器, 第二硬件系统中主处理器为 ARM架构的处理器, 而从处理器均为 EC (嵌入式控制器) /MCU (微控制单 元, 又称单片微型计算机)。
在上述的主处理器间有第一数据通道, 而在从处理器间也有第二数据通 道, 因此在第一硬件系统和第二硬件系统之间的数据传输通道多种多样, 以第 一硬件系统传输数据到第二硬件系统为例, 如下:
第一主处理器通过第一数据通道传输数据到第二主处理器;
第一从处理器通过第二数据通道传输数据到第二从处理器;
第一主处理器将数据传输到第一从处理器,由第一从处理器通过第二数据 通道传输数据到第二从处理器;
第一从处理器将数据传输到第一主处理器,由第一主处理器通过第一数据 通道传输数据到第二主处理器。
由于存在各种各样的数据传输通道,因此本发明实施例的方法可以依据需 求选择不同的传输通道进行数据的传输, 提高了数据传输的灵活性。
以上述的例子为例, 由于第二数据通道依赖于 EC/MCU的工作状态, 一 般而言, 由于 EC/MCU的功耗极低, 因此可以控制其长期处于工作状态, 使 得所述第二数据通道长期处于工作状态。
而第一数据通道依赖于设备的主处理器, 其功耗较大,如果长期处于工作 状态, 则会导致功耗加大, 因此第一数据通道根据所述第一硬件系统和第二硬 件系统的硬件状态(主处理器状态)处于工作状态或非工作状态, 当第一硬件 系统或第二硬件系统的主处理器处于休眠状态时,则第一数据通道处于非工作 状态, 否则处于工作状态。
所述第一数据通道或第二数据通道处于工作状态时能够用于在第一硬件 系统和所述第二硬件系统之间传输数据,所述第一数据通道处于非工作状态时 无法用于在第一硬件系统和所述第二硬件系统之间传输数据。
以上述的结构为例, 可以发现,保持所述第一数据通道处于工作状态的功 耗远大于保持所述第二数据通道处于工作状态的功耗,但第一数据通道的传输 速率会高于第二数据通道的传输速率。
之前提到, 在本发明的具体实施例中,根据所述通道选择参数从所述第一 数据通道和第二数据通道中选择数据通道, 而对于不同的需求,通道选择参数 不同。 在本发明具体实施例中的通道选择参数可以多种多样, 分别说明如下。
<方式一 >
在方式一中,考虑到第一数据通道的传输速率高于第二数据通道的传输速 率,如果第一数据通道的状态参数表明所述第一数据通道处于工作状态时, 则 应该充分利用第一数据通道的高传输速率,选择的数据通道必须包括第一数据 通道。
这种方式下, 所述通道选择参数为所述第一数据通道的状态参数, 所述根 据所述通道选择参数从所述第一数据通道和第二数据通道中选择至少一个数 据通道的步骤中,在所述第一数据通道的状态参数表明所述第一数据通道处于 工作状态时, 所述至少一个数据通道至少包括所述第一数据通道。 依据上述的通道选择参数和选择策略, 在不增加功耗的情况下, 可以充分 利用处于工作状态的高速率数据通道, 提高了数据传输的效率。
<方式二 >
方式一中提到了在第一数据通道处于工作状态时 ,则至少选择第一数据通 道用于数据传输。
而当第一数据通道处于非工作状态时,此时可以釆用基于功耗节省的通道 选择策略,即在所述第一数据通道的状态参数表明所述第一数据通道处于非工 作状态时, 则选择第二数据通道。
前面提到,保持所述第一数据通道处于工作状态的功耗远大于保持所述第 二数据通道处于工作状态的功耗, 因此当第一数据通道处于非工作状态时,如 果考虑功耗节省目的, 所述通道选择参数还是所述第一数据通道的状态参数, 但策略有所变化 ,此时所述根据所述通道选择参数从所述第一数据通道和第二 数据通道中选择至少一个数据通道的步骤中,在所述第一数据通道的状态参数 表明所述第一数据通道处于非工作状态时,所述至少一个数据通道仅包括所述 第二数据通道。
也就是说, 当第一数据通道处于非工作状态时,如果启用第一数据通道进 行数据传输, 则会提高系统的功耗, 而利用本发明实施例的方法, 当第一数据 通道处于非工作状态时, 则直接利用第二数据通道进行数据的传输, 以降低系 统的功耗, 尤其是在交互频繁的情况下, 功耗降低尤为明显, 以电池状态查看 为例进行说明。
如果用户在当前运行的第二硬件系统中需要周期性(如 20s—次)查看第 一硬件系统的电池电量, 如果使用第一数据通道, 则第一硬件系统的主处理器 或者随时保持唤醒状态,或者每 20s唤醒一次,这样都会大大提高系统的功耗, 而利用本发明实施例的方法, 第一硬件系统的主处理器始终保持休眠状态, 而 通过从第一硬件系统的从处理器周期性通过第二数据通道将电池电量信息传 输到第二硬件系统的从处理器, 降低了系统功耗。
<方式三 >
在方式二中,如果第一数据通道处于非工作状态时, 考虑到功耗就不选择 第一数据通道,但在某些传输数据量很大的情况下,会导致数据传输时间过长, 如用户数据(例如, 照片、 音乐、 电影等) 同步。
在这种情况下, 兼顾传输速度和功耗, 这种方式下, 所述通道选择参数为 所述待传输数据的数据量,而所述根据所述通道选择参数从所述第一数据通道 和第二数据通道中选择至少一个数据通道的步骤中,在所述待传输数据的数据 量超过一预设的数据量门限时, 选择所述第一数据通道, 否则选择所述第二数 据通道。
这种情况下, 不考虑第一数据通道是否处于工作状态, 只要待传输数据量 超过一个门限, 则选择第一数据通道, 以降低传输时间, 而当数据量较小时, 传输时间处于可接受范围时, 则选择第二数据通道, 以降低功耗。
上述描述了本发明实施例的 3种通道选择参数及其对应的通道选择策略, 但应当理解的是, 上述的 3种通道选择策略也可以结合起来使用, 如:
所述通道选择参数为所述待传输数据的数据量和第一数据通道的工作状 态, 而选择数据通道时, 首先考虑第一数据通道的工作状态, 当第一数据通道 处于工作状态时,则直接选择第一数据通道,第一数据通道处于非工作状态时, 判断待传输数据的数据量是否超过一个门限, 当其超过一个门限时,也选择第 一数据通道, 否则选择第二数据通道。
当然, 在本发明的具体实施例中, 该通道选择参数还可以是其它的参数, 如待传输数据的属性,如果待传输数据是必须马上快速传递,且数据量较大的 数据时,通过第二数据通道无法及时传递, 则不管第一数据通道的工作状态都 需要选择第一数据通道。
在本发明的具体实施例的通道选择参数和通道选择策略还可以是各种其 它的参数和策略, 在此不——列举。
在前面提到的通信方法中,仅仅提到了数据从第一硬件系统传输到第二硬 件系统, 但本发明实施例的通信方法可以应用于各种场景, 分别说明如下。
<场景一 >
所述待传输数据为所述第一硬件系统基于来自第二硬件系统的请求实时 读取的数据, 这种场景下, 在获取所述待传输数据的步骤之前还包括:
接收来自第二硬件系统的请求获取所述待传输数据的数据请求消息。
以电池查看举例说明 ¾口下。 如果用户在当前运行的第二硬件系统中需要查看第一硬件系统的电池电 量时, 第二硬件系统会向第一硬件系统发送一数据请求消息,请求获取所述待 传输数据。 至于该消息如何传递至第一硬件系统, 则可以根据之前提到的方法 进行传输。
当第一硬件系统接收到来自第二硬件系统的数据请求消息后,则与电池芯 片交互,读取最新的电池电量信息, 并利用本发明实施例的方法返回给第二硬 件系统。
<场景二 >
场景一为实时获取的方式, 而场景二中, 所述待传输数据为所述第一硬件 系统预先緩存到所述第一硬件系统的第一緩存中的数据,而第一硬件系统基于 来自第二硬件系统的请求进行数据传输, 即: 在获取所述待传输数据的步骤之 前还包括:
接收来自第二硬件系统的请求获取所述待传输数据的数据请求消息。 以电池查看举例说明 ¾口下。
如果用户在当前运行的第二硬件系统中需要查看第一硬件系统的电池电 量, 此时第一硬件系统会周期性的读取电池电量, 并保存到第一緩存, 当第二 硬件系统需要查看第一硬件系统的电池电量时,会向第一硬件系统发送一数据 请求消息, 请求获取所述待传输数据。 至于该消息如何传递至第一硬件系统, 则可以根据之前提到的方法进行传输。
当第一硬件系统接收到来自第二硬件系统的数据请求消息后,即可从第一 緩存读取最新的电池电量信息,并利用本发明实施例的方法返回给第二硬件系 统。
<场景三 >
在场景三中,所述待传输数据为待发送到所述第二硬件系统的第二主处理 器的数据。 这种场景下, 本发明实施例的通信方法在数据通过第二数据通道传 输到第二硬件系统之后, 包括多种处理手段, 分别说明如下。
第一种处理手段中, 还是以功耗节省为目的, 这种方式下, 只有当第二主 处理器处于唤醒状态时, 才将数据发送给第二主处理器。
这种方式下, 所述通信方法还包括: 在所述待传输数据从所述第一硬件系统传输到所述第二硬件系统后,判断 所述第二主处理器是否处于休眠状态;
在所述第二主处理器处于休眠状态时,緩存所述待传输数据到第二硬件系 统的緩存中;
在所述第二主处理器从休眠状态被唤醒后,将緩存的所述待传输数据发送 到所述第二主处理器。
利用上述的处理手段, 当第二主处理器处于休眠状态时, 则緩存数据, 待 第二主处理器唤醒后, 才将緩存的所述待传输数据发送到所述第二主处理器。 这样, 不会频繁唤醒第二主处理器, 节省了功耗, 举例说明如下。
第二硬件系统需要记录第一硬件系统的一段时间内的电池功耗消耗曲线, 此时, 第二硬件系统可以处于休眠状态, 在休眠状态下, 通过第二数据通道来 接收第一硬件系统发送的每个时段的电池电量信息, 并緩存起来。
当第二硬件系统唤醒后, 将所有緩存的电池电量信息发送给第二主处理 器,则第二主处理器可以根据这些数据绘制休眠期间第一硬件系统的电池功耗 消耗曲线。由于不需要每接收到一个数据就唤醒第二主处理器来进行曲线的绘 制, 所以大大降低了功耗。
上述的处理手段中,等待第二主处理器自己被唤醒后才将数据发送到第二 主处理器进行处理, 但这种方式不适合需要实时处理的命令, 举例说明如下。
如第一硬件系统向第二硬件系统发送在 3s返回内存使用状态的指令, 此 时第二硬件系统的从处理器无法处理该指令,而第二主处理器又处理休眠状态 的话, 此时就不能按照第一种处理手段那样等待, 因为这会影响第一硬件系统 的工作, 考虑到以上的场景, 本发明实施例的通信处理方法中, 所述待传输数 据为待发送到所述第二硬件系统的第二主处理器的数据, 所述通信方法还包 括:
在所述待传输数据通过第二数据通道传输到第二硬件系统之后 ,判断所述 第二主处理器当前的状态;
在所述第二主处理器处于激活状态时,将所述待传输数据发送到所述第二 主处理器, 否则判断所述待传输数据是否需要立刻发送到所述第二主处理器; 在所述待传输数据需要立刻发送到所述第二主处理器时,唤醒所述第二主 处理器, 并将所述待传输数据发送到所述第二主处理器, 否则, 緩存所述待传 输数据到第二硬件系统的緩存中, 并在所述第二主处理器唤醒处于激活状态 时, 将緩存的所述待传输数据发送到所述第二主处理器。
至于哪些数据需要立刻发送到第二主处理器, 其可以由用户自己定义, 或 者根据其他的参数进行判断, 在此不作详细描述。
在本发明具体实施例中,所述待传输数据为电池状态数据或电池状态查询 指令。
下面以指令传递处理为例进行详细说明, 其包括两个过程: 第一硬件系统 向第二硬件系统发送指令, 以及第二硬件系统返回指令响应到第一硬件系统, 第一硬件系统向第二硬件系统发送指令的过程如图 3所示, 其中包括:
步骤 31 , 第一硬件系统的第一 CPU处于唤醒状态, 第一硬件系统需要向 第二硬件系统发送一指令;
步骤 32, 判断第二硬件系统的 CPU工作状态;
步骤 33 , 第二硬件系统的第二 CPU处于工作状态, 则选择第一数据通道 传输指令到第二 CPU;
步骤 34, 第二硬件系统的 CPU处于休眠状态, 选择第二数据通道传输, 即通过第一 CPU-第一 MCU-第二 MCU传输指令到第二 MCU;
步骤 35, 第二 MCU接收到指令后, 判断指令是否能够由自己处理, 如果 无法处理, 则进入步骤 36, 否则进入步骤 37;
步骤 36, 第二 MCU緩存指令, 在第二 CPU唤醒后再传递给第二 CPU或 者直接唤醒第二 CPU系统后传递数据给第二 CPU。
步骤 37, 第二 MCU解析并处理指令。
至此指令传递结束。
而对于第二 MCU无法处理的指令, 在第二 CPU唤醒后由第二 CPU处理 并通过第一数据通道返回给第一 CPU, 而对于第二 MCU能够处理的指令, 则 会在处理指令后将指令响应通过第二数据通道返回给第一 MCU, 并由第一 MCU返回给第一 CPU。
对于第二 MCU准备的数据有两种情况, 其一, 第二 CPU进入休眠之前, 将数据传送给 MCU系统緩存的数据(如电源系统状态)。 其二, 第二 MCU系 统即时获取的数据(如电池的信息)。
对第一种情况举例说明如下。
第二 CPU将自身电源状态发送给第二 MCU后进入休眠状态; 第二 MCU 接收到电源状态后緩存等待第一硬件系统的查询,当通过第二数据通道接收到 电源状态查询指令时, 第二 MCU解析指令以获知第一硬件系统的需求, 然后 读取緩存的电源状态, 并通过第二数据通道返回给第一 MCU。
对第二种情况举例说明如下。
第二 MCU通过第二数据通道接收到电池信息查询指令时, 第二 MCU解 析指令以获知第一硬件系统的需求, 然后通过私有总线从电池( Smart Battery 协议)获取相关数据, 然后通过第二数据通道返回给第一 MCU, 由第一 MCU 返回给第一 CPU处理。
下面进一步对本发明实施例应用于电池进行详细说明。
结合图 2所示, 第一硬件系统和第二硬件系统中的 EC/MCU都可以通过 SMBUS读取电池信息, 第一数据通道可以是 RNDIS数据通道, 而第二数据 通道可以是 UART数据通道。 而每一个硬件系统的主处理器和从处理器之间 也有数据和事件通道。
第二硬件系统向第一硬件系统进行电池数据的汇报可以包括两种方式,如 下:
1、 第一种方式如图 4所示, 其数据 /指令的传递路径分为: A1 (第一主 处理器 第一从处理器) +A2 (第一从处理器 第二从处理器) +A3 (第二从处理器 电池) + A4 (第二从处理器 第一从处理 器) +A5 (第一从处理器 第一主处理器)。 这种方式下, 通过第 二数据通道进行指令 /数据的交互。
2、 第二种方式如图 5所示, 其数据 /指令的传递路径分为: B1 (第一主 处理器 第二主处理器) +B2 (第二主处理器 第二从处理器) +B3 (第二从处理器 电池) + B4 (第二从处理器 第二主处理 器) +B5 (第二主处理器 第一主处理器)。 这种方式下, 通过第 一数据通道进行指令 /数据的交互。
3、 第三种方式则可以是前两种方式的结合, 即数据 /指令的传递路径分 为: Al (第一主处理器 第一从处理器) +A2 (第一从处理器 第二从处理器) +A3 (第二从处理器 电池) + B4 (第二从处理 器 第二主处理器) +B5 (第二主处理器 第一主处理器)。 这种 方式下, 同时利用第一数据通道和第二数据通道进行指令 /数据的 交互。
本发明具体实施例中, EC/MCU获取电池的信息也可以是如下的方式。 方式一, EC在接收到指令时实时与电池芯片交互获取信息并返回; 方式二, EC周期性读取电池信息并緩存, 在接收到指令时直接从緩存区 读取信息并返回。
本发明实施例的通信装置应用于由第一终端和第二终端组成的混合架构 系统中, 所述第一终端包括第一硬件系统, 所述第二终端包括第二硬件系统, 所述第一硬件系统和第二硬件系统之间具有第一数据通道和第二数据通道,如 图 6所示, 所述通信装置包括:
第一获取模块,用于获取第一硬件系统待传输到所述第二硬件系统的待传 输数据;
第二获取模块, 用于获取一通道选择参数;
选择模块,用于根据所述通道选择参数从所述第一数据通道和第二数据通 道中选择至少一个数据通道;
传输模块,用于通过选择的所述至少一个数据通道将所述待传输数据从所 述第一硬件系统传输到所述第二硬件系统。
上述的通信装置可以应用于如下的场景, 其中, 所述第二数据通道长期处 于工作状态,所述第一数据通道根据所述第一硬件系统和第二硬件系统的硬件 状态处于工作状态或非工作状态,所述第一数据通道或第二数据通道处于工作 状态时能够用于在第一硬件系统和所述第二硬件系统之间传输数据,所述第一 数据通道处于非工作状态时无法用于在第一硬件系统和所述第二硬件系统之 间传输数据。
在上述场景下, 考虑到充分利用传输速率, 所述通道选择参数为所述第一 数据通道的状态参数,所述选择模块具体用于在所述第一数据通道的状态参数 表明所述第一数据通道处于工作状态时, 至少选择所述第一数据通道。 而考虑到传输时间, 则所述通道选择参数为所述待传输数据的数据量, 所 述选择模块具体用于在所述待传输数据的数据量超过一预设的数据量门限时, 选择所述第一数据通道, 否则选择所述第二数据通道。
上述的通信装置中 ,所述待传输数据为所述第一硬件系统预先緩存到所述 第一硬件系统的第一緩存中的数据, 所述通信装置还包括:
接收模块,用于接收来自第二硬件系统的请求获取所述待传输数据的数据 请求消息。
所述第一获取模块具体用于在所述接收模块接收到所述请求消息时获取 所述待传输数据。
当所述待传输数据为待发送到所述第二硬件系统的第二主处理器的数据 , 考虑到功耗的节省, 所述通信装置还包括:
第一判断模块,用于在所述待传输数据从所述第一硬件系统传输到所述第 二硬件系统之后, 判断所述第二主处理器是否处于休眠状态;
第一緩存模块, 用于在所述第二主处理器处于休眠状态时,緩存所述待传 输数据到第二硬件系统的緩存中;
第一发送模块, 用于在所述第二主处理器从休眠状态被唤醒后, 将緩存的 所述待传输数据发送到所述第二主处理器。
所述待传输数据为待发送到所述第二硬件系统的第二主处理器的数据时 , 考虑到处理能力和处理的实时性需求以及功耗, 所述通信装置还包括:
第二判断模块,用于在所述待传输数据从所述第一硬件系统传输到所述第 二硬件系统之后, 判断所述第二主处理器当前的状态;
第三判断模块, 用于在所述第二主处理器处于激活状态时,将所述待传输 数据发送到所述第二主处理器 ,否则判断所述待传输数据是否需要立刻发送到 所述第二主处理器;
第二发送模块,用于在所述待传输数据需要立刻发送到所述第二主处理器 时, 唤醒所述第二主处理器, 并将所述待传输数据发送到所述第二主处理器, 否则,緩存所述待传输数据到第二硬件系统的緩存中, 并在所述第二主处理器 唤醒处于激活状态时, 将緩存的所述待传输数据发送到所述第二主处理器。
本发明实施例的通信装置中,保持所述第一数据通道处于工作状态的功耗 大于保持所述第二数据通道处于工作状态的功耗。
本发明实施例的通信装置可以用于电池信息查询,所述待传输数据为电池 状态数据或电池状态查询指令。
本发明实施例还提供了一种电子设备,所述电子设备由第一终端和第二终 端组成, 所述第一终端包括第一硬件系统, 所述第二终端包括第二硬件系统, 所述第一硬件系统和第二硬件系统之间具有第一数据通道和第二数据通道,所 述电子设备还包括:
第一获取模块,用于获取第一硬件系统待传输到所述第二硬件系统的待传 输数据;
第二获取模块, 用于获取一通道选择参数;
选择模块,用于根据所述通道选择参数从所述第一数据通道和第二数据通 道中选择至少一个数据通道;
传输模块,用于通过选择的所述至少一个数据通道将所述待传输数据从所 述第一硬件系统传输到所述第二硬件系统。
本发明实施例中, 模块可以用软件实现, 以便由各种类型的处理器执行。 举例来说,一个标识的可执行代码模块可以包括计算机指令的一个或多个物理 或者逻辑块, 举例来说, 其可以被构建为对象、 过程或函数。 尽管如此, 所标 识模块的可执行代码无需物理地位于一起,而是可以包括存储在不同位置上的 不同的指令, 当这些指令逻辑上结合在一起时, 其构成模块并且实现该模块的 规定目的。
实际上, 可执行代码模块可以是单条指令或者是许多条指令, 并且甚至可 以分布在多个不同的代码段上, 分布在不同程序当中, 以及跨越多个存储器设 备分布。 同样地, 操作数据可以在模块内被识别, 并且可以依照任何适当的形 式实现并且被组织在任何适当类型的数据结构内。所述操作数据可以作为单个 数据集被收集, 或者可以分布在不同位置上 (包括在不同存储设备上), 并且 至少部分地可以仅作为电子信号存在于系统或网络上。
在模块可以利用软件实现时, 考虑到现有硬件工艺的水平, 所以可以以软 件实现的模块,在不考虑成本的情况下, 本领域技术人员都可以搭建对应的硬 件电路来实现对应的功能, 所述硬件电路包括常规的超大规模集成(VLSI ) 电路或者门阵列以及诸如逻辑芯片、晶体管之类的现有半导体或者是其它分立 的元件。模块还可以用可编程硬件设备, 诸如现场可编程门阵列、 可编程阵列 逻辑、 可编程逻辑设备等实现。
以上所述仅为本发明的较佳实施例而已, 并不用以限制本发明, 凡在本发 明的精神和原则之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发 明的保护范围之内。

Claims

权 利 要 求 书
1. 一种通信方法, 其特征在于, 所述通信方法应用于由第一终端和第二 终端组成的混合架构系统中, 所述第一终端包括第一硬件系统, 所述第二终端 包括第二硬件系统,所述第一硬件系统和第二硬件系统之间具有第一数据通道 和第二数据通道, 所述通信方法包括:
获取第一硬件系统待传输到所述第二硬件系统的待传输数据;
获取一通道选择参数;
根据所述通道选择参数从所述第一数据通道和第二数据通道中选择至少 一个数据通道;
通过选择的所述至少一个数据通道将所述待传输数据从所述第一硬件系 统传输到所述第二硬件系统。
2. 根据权利要求 1所述的通信方法, 其特征在于, 所述第二数据通道长 期处于工作状态,所述第一数据通道根据所述第一硬件系统和第二硬件系统的 硬件状态处于工作状态或非工作状态,所述第一数据通道或第二数据通道处于 工作状态时能够用于在第一硬件系统和所述第二硬件系统之间传输数据,所述 第一数据通道处于非工作状态时无法用于在第一硬件系统和所述第二硬件系 统之间传输数据。
3. 根据权利要求 2所述的通信方法, 其特征在于, 所述通道选择参数为 所述第一数据通道的状态参数,所述根据所述通道选择参数从所述第一数据通 道和第二数据通道中选择至少一个数据通道的步骤中,在所述第一数据通道的 状态参数表明所述第一数据通道处于工作状态时,所述至少一个数据通道至少 包括所述第一数据通道。
4. 根据权利要求 1所述的通信方法, 其特征在于, 所述通道选择参数为 所述待传输数据的数据量,所述根据所述通道选择参数从所述第一数据通道和 第二数据通道中选择至少一个数据通道的步骤中,在所述待传输数据的数据量 超过一预设的数据量门限时,选择所述第一数据通道, 否则选择所述第二数据 通道。
5. 根据权利要求 1所述的通信方法, 其特征在于, 所述待传输数据为所 述第一硬件系统预先緩存到所述第一硬件系统的第一緩存中的数据 ,获取所述 待传输数据的步骤之前还包括:
接收来自第二硬件系统的请求获取所述待传输数据的数据请求消息。
6. 根据权利要求 1所述的通信方法, 其特征在于, 所述待传输数据为待 发送到所述第二硬件系统的第二主处理器的数据, 所述通信方法还包括: 在所述待传输数据从所述第一硬件系统传输到所述第二硬件系统后,判断 所述第二主处理器是否处于休眠状态;
在所述第二主处理器处于休眠状态时,緩存所述待传输数据到第二硬件系 统的緩存中;
在所述第二主处理器从休眠状态被唤醒后,将緩存的所述待传输数据发送 到所述第二主处理器。
7. 根据权利要求 1所述的通信方法, 其特征在于, 所述待传输数据为待 发送到所述第二硬件系统的第二主处理器的数据, 所述通信方法还包括: 在所述待传输数据从所述第一硬件系统传输到所述第二硬件系统之后,判 断所述第二主处理器当前的状态;
在所述第二主处理器处于激活状态时,将所述待传输数据发送到所述第二 主处理器, 否则判断所述待传输数据是否需要立刻发送到所述第二主处理器; 在所述待传输数据需要立刻发送到所述第二主处理器时,唤醒所述第二主 处理器, 并将所述待传输数据发送到所述第二主处理器, 否则, 緩存所述待传 输数据到第二硬件系统的緩存中, 并在所述第二主处理器唤醒处于激活状态 时, 将緩存的所述待传输数据发送到所述第二主处理器。
8. 根据权利要求 1所述的通信方法, 其特征在于, 保持所述第一数据通 道处于工作状态的功耗大于保持所述第二数据通道处于工作状态的功耗。
9. 根据权利要求 1所述的通信方法, 其特征在于, 所述待传输数据为电 池状态数据或电池状态查询指令。
10. 一种通信装置, 其特征在于, 所述通信装置应用于由第一终端和第二 终端组成的混合架构系统中, 所述第一终端包括第一硬件系统, 所述第二终端 包括第二硬件系统,所述第一硬件系统和第二硬件系统之间具有第一数据通道 和第二数据通道, 所述通信装置包括: 第一获取模块 ,用于获取第一硬件系统待传输到所述第二硬件系统的待传 输数据;
第二获取模块, 用于获取一通道选择参数;
选择模块,用于根据所述通道选择参数从所述第一数据通道和第二数据通 道中选择至少一个数据通道;
传输模块,用于通过选择的所述至少一个数据通道将所述待传输数据从所 述第一硬件系统传输到所述第二硬件系统。
11. 根据权利要求 10所述的通信装置, 其特征在于, 所述第二数据通道 长期处于工作状态,所述第一数据通道根据所述第一硬件系统和第二硬件系统 的硬件状态处于工作状态或非工作状态,所述第一数据通道或第二数据通道处 于工作状态时能够用于在第一硬件系统和所述第二硬件系统之间传输数据,所 述第一数据通道处于非工作状态时无法用于在第一硬件系统和所述第二硬件 系统之间传输数据。
12. 根据权利要求 11所述的通信装置, 其特征在于, 所述通道选择参数 为所述第一数据通道的状态参数,所述选择模块具体用于在所述第一数据通道 的状态参数表明所述第一数据通道处于工作状态时,至少选择所述第一数据通 道。
13. 根据权利要求 10所述的通信装置, 其特征在于, 所述通道选择参数 为所述待传输数据的数据量,所述选择模块具体用于在所述待传输数据的数据 量超过一预设的数据量门限时, 选择所述第一数据通道, 否则选择所述第二数 据通道。
14. 根据权利要求 10所述的通信装置, 其特征在于, 所述待传输数据为 所述第一硬件系统预先緩存到所述第一硬件系统的第一緩存中的数据 ,所述通 信装置还包括:
接收模块,用于接收来自第二硬件系统的请求获取所述待传输数据的数据 请求消息。
所述第一获取模块具体用于在所述接收模块接收到所述请求消息时获取 所述待传输数据。
15. 根据权利要求 10所述的通信装置, 其特征在于, 所述待传输数据为 待发送到所述第二硬件系统的第二主处理器的数据, 所述通信装置还包括: 第一判断模块,用于在所述待传输数据从所述第一硬件系统传输到所述第 二硬件系统之后, 判断所述第二主处理器是否处于休眠状态;
第一緩存模块, 用于在所述第二主处理器处于休眠状态时,緩存所述待传 输数据到第二硬件系统的緩存中;
第一发送模块, 用于在所述第二主处理器从休眠状态被唤醒后, 将緩存的 所述待传输数据发送到所述第二主处理器。
16. 根据权利要求 10所述的通信装置, 其特征在于, 所述待传输数据为 待发送到所述第二硬件系统的第二主处理器的数据, 所述通信装置还包括: 第二判断模块,用于在所述待传输数据从所述第一硬件系统传输到所述第 二硬件系统之后, 判断所述第二主处理器当前的状态;
第三判断模块, 用于在所述第二主处理器处于激活状态时,将所述待传输 数据发送到所述第二主处理器 ,否则判断所述待传输数据是否需要立刻发送到 所述第二主处理器;
第二发送模块,用于在所述待传输数据需要立刻发送到所述第二主处理器 时, 唤醒所述第二主处理器, 并将所述待传输数据发送到所述第二主处理器, 否则,緩存所述待传输数据到第二硬件系统的緩存中, 并在所述第二主处理器 唤醒处于激活状态时, 将緩存的所述待传输数据发送到所述第二主处理器。
17. 根据权利要求 10所述的通信装置, 其特征在于, 保持所述第一数据 通道处于工作状态的功耗大于保持所述第二数据通道处于工作状态的功耗。
18. 根据权利要求 10所述的通信装置, 其特征在于, 所述待传输数据为 电池状态数据或电池状态查询指令。
19. 一种电子设备, 其特征在于, 所述电子设备由第一终端和第二终端组 成, 所述第一终端包括第一硬件系统, 所述第二终端包括第二硬件系统, 所述 第一硬件系统和第二硬件系统之间具有第一数据通道和第二数据通道,所述电 子设备还包括:
第一获取模块,用于获取第一硬件系统待传输到所述第二硬件系统的待传 输数据;
第二获取模块, 用于获取一通道选择参数; 选择模块,用于根据所述通道选择参数从所述第一数据通道和第二数据通 道中选择至少一个数据通道;
传输模块,用于通过选择的所述至少一个数据通道将所述待传输数据从所 述第一硬件系统传输到所述第二硬件系统。
PCT/CN2012/080491 2011-10-31 2012-08-23 一种通信方法、通信装置及电子设备 WO2013063972A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/342,619 US9497254B2 (en) 2011-10-31 2012-08-23 Communication method, communication apparatus and electronic device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110338016.X 2011-10-31
CN201110338016.XA CN103092701B (zh) 2011-10-31 2011-10-31 一种通信方法、装置及电子设备

Publications (1)

Publication Number Publication Date
WO2013063972A1 true WO2013063972A1 (zh) 2013-05-10

Family

ID=48191287

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/080491 WO2013063972A1 (zh) 2011-10-31 2012-08-23 一种通信方法、通信装置及电子设备

Country Status (3)

Country Link
US (1) US9497254B2 (zh)
CN (1) CN103092701B (zh)
WO (1) WO2013063972A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104345861B (zh) * 2013-08-07 2017-05-24 联想(北京)有限公司 一种数据处理方法和装置及电子设备
CN104572240B (zh) * 2013-10-18 2019-06-25 联想(北京)有限公司 控制方法和电子设备
CN104885055B (zh) * 2014-03-19 2020-12-15 华为终端有限公司 一种应用数据同步的方法及装置
CN105094968B (zh) * 2015-07-01 2019-05-21 小米科技有限责任公司 唤醒mcu的方法及装置
CN106549934B (zh) * 2015-09-23 2020-04-21 深圳市全智达科技有限公司 网络设备安全系统
CN110311966B (zh) * 2016-03-15 2023-02-17 广州视睿电子科技有限公司 融合PC系统和android系统的双系统通信方法和系统
CN106020893B (zh) * 2016-05-26 2019-03-15 北京小米移动软件有限公司 应用安装的方法及装置
US10824436B2 (en) * 2018-12-13 2020-11-03 Ati Technologies Ulc Hybrid configuration management using bootloader translation
CN111355752A (zh) * 2018-12-20 2020-06-30 阿里巴巴集团控股有限公司 基于网闸的文件传输方法、装置及设备
CN113127214B (zh) * 2019-12-30 2024-02-06 中移(成都)信息通信科技有限公司 一种定时唤醒处理方法、装置、终端设备及存储介质
CN113438354B (zh) * 2020-03-06 2022-09-02 华为技术有限公司 数据传输方法、装置、电子设备和存储介质
US11487683B2 (en) * 2020-04-15 2022-11-01 AyDeeKay LLC Seamlessly integrated microcontroller chip
CN114759944B (zh) * 2020-12-29 2023-04-25 成都鼎桥通信技术有限公司 通信方法及设备
CN112888049B (zh) * 2021-01-26 2022-08-26 展讯半导体(成都)有限公司 数据传输控制方法、功能机及相关产品

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6388988B1 (en) * 1998-08-04 2002-05-14 Electronic Data Systems Corporation Method and system for automatic line protection switching of embedded channels
US20050180432A1 (en) * 2003-02-27 2005-08-18 Fujitsu Limited Program and method for controlling communication
CN1760842A (zh) * 2004-10-15 2006-04-19 仁宝电脑工业股份有限公司 具有多资料存取通道的电脑系统及其控制方法
CN1842076A (zh) * 2005-03-30 2006-10-04 华为技术有限公司 一种多传输通道数据传输方法
CN101661321A (zh) * 2008-08-25 2010-03-03 联想(北京)有限公司 一种计算机及控制计算机运行的方法
CN101847043A (zh) * 2009-03-25 2010-09-29 联想(北京)有限公司 共用存储设备的方法及移动终端

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182122B1 (en) * 1997-03-26 2001-01-30 International Business Machines Corporation Precaching data at an intermediate server based on historical data requests by users of the intermediate server
US6631474B1 (en) * 1999-12-31 2003-10-07 Intel Corporation System to coordinate switching between first and second processors and to coordinate cache coherency between first and second processors during switching
DE102004011706B4 (de) * 2004-03-10 2006-03-30 Infineon Technologies Ag Automatische Auswahl des Übertragungsstandards bei mobilen Funkempfängern
WO2006088401A1 (en) * 2005-02-21 2006-08-24 Telefonaktiebolaget L M Ericsson (Publ) Selecting channel bandwidth and data error target dynamically based on a determined transmission need
US20070218938A1 (en) * 2006-03-20 2007-09-20 Conexant Systems, Inc. Sleep Mode Systems and Methods
US8094569B2 (en) * 2008-12-05 2012-01-10 Cisco Technology, Inc. Failover and failback of communication between a router and a network switch
US8286011B2 (en) * 2010-02-28 2012-10-09 Freescale Semiconductor, Inc. Method of waking processor from sleep mode

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6388988B1 (en) * 1998-08-04 2002-05-14 Electronic Data Systems Corporation Method and system for automatic line protection switching of embedded channels
US20050180432A1 (en) * 2003-02-27 2005-08-18 Fujitsu Limited Program and method for controlling communication
CN1760842A (zh) * 2004-10-15 2006-04-19 仁宝电脑工业股份有限公司 具有多资料存取通道的电脑系统及其控制方法
CN1842076A (zh) * 2005-03-30 2006-10-04 华为技术有限公司 一种多传输通道数据传输方法
CN101661321A (zh) * 2008-08-25 2010-03-03 联想(北京)有限公司 一种计算机及控制计算机运行的方法
CN101847043A (zh) * 2009-03-25 2010-09-29 联想(北京)有限公司 共用存储设备的方法及移动终端

Also Published As

Publication number Publication date
CN103092701B (zh) 2017-02-08
US20140215016A1 (en) 2014-07-31
CN103092701A (zh) 2013-05-08
US9497254B2 (en) 2016-11-15

Similar Documents

Publication Publication Date Title
WO2013063972A1 (zh) 一种通信方法、通信装置及电子设备
US10684670B2 (en) Methods and apparatus for managing power with an inter-processor communication link between independently operable processors
US10712809B2 (en) Link power savings with state retention
JP5335919B2 (ja) Usbリモートウェイクアップ
KR20180052539A (ko) 주변기기 서브시스템에 대한 개별화된 전력 제어를 제공하기 위한 방법 및 장치
TWI427472B (zh) 用以減少電力耗損之方法,設備,系統及物件
CN102778943B (zh) 状态控制方法、装置及便携终端
WO2018089160A1 (en) Methods and apparatus for providing peripheral sub-system stability
WO2019104947A1 (zh) 系统级芯片、通用串行总线主设备、系统及唤醒方法
JP5773288B2 (ja) ハイスピードインターチップhsicインタフェースに基づくウェイクアップ方法、ホットスワップ方法、およびデバイス
US11074084B2 (en) Technologies for optimizing resume time for media agnostic USB
US10394309B2 (en) Power gated communication controller
US20060026297A1 (en) Computer system with multiple data access channels and control method thereof
US10645166B2 (en) Network interface card
US20130198548A1 (en) Apparatus and method for saving power of usb device
WO2012167520A1 (zh) 自动功耗控制方法及系统
TWI397808B (zh) 多處理器系統及其動態省電方法
US20200065274A1 (en) Always-on ibi handling
US20230099399A1 (en) Method and apparatus for managing a controller in a power down state
TW202409848A (zh) 用於降低針對PCIe中的較深層節能模式L2的退出時延的機制
CN112214246A (zh) 一种低功耗多处理器串口唤醒方法及系统
TW201232247A (en) System and method for controlling a server to sleep or awake

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: 12845390

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14342619

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12845390

Country of ref document: EP

Kind code of ref document: A1