Data processing method, device and system
By processing sensor data with a low-performance processing unit and sending it to a high-performance processing unit at longer intervals, the problem of high power consumption in electronic devices is solved, resulting in reduced power consumption and improved accuracy of business data.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2024-10-15
- Publication Date
- 2026-04-17
AI Technical Summary
Existing electronic devices consume a lot of power when processing sensor data, which affects the smoothness of use and battery life.
The sensor data is processed by a low-performance processing unit, and the business data is sent to the high-performance processing unit at intervals longer than the time interval for processing the sensor data, thereby reducing the wake-up frequency of the high-performance processing unit.
It effectively reduces the power consumption of electronic devices while improving the accuracy and fluency of business data display.
Smart Images

Figure CN121879545A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing, and more specifically, to a data processing method, apparatus, and system. Background Technology
[0002] Currently, many electronic devices can perform various business data calculations based on sensor data collected by sensors. For example, they can calculate calorie data based on acceleration data collected by accelerometers, which can bring users a richer user experience.
[0003] However, current electronic devices consume a lot of power when processing sensor data. While this makes electronic devices more feature-rich, it also significantly impacts their smoothness of use and battery life. Summary of the Invention
[0004] This application provides a data processing method, apparatus, and system. Through this method, apparatus, and system, a low-performance processing unit processes sensor data to obtain business data, and then sends the business data to a high-performance processing unit at an interval longer than the time interval for processing the sensor data. This can significantly reduce the frequency of the high-performance processing unit being woken up, thereby reducing the power consumption of electronic devices.
[0005] In a first aspect, a data processing method is provided, the method comprising: a first processing unit acquiring first sensing data from a first sensor at a first time interval; the first processing unit obtaining first service data based on the first sensing data, the first service data corresponding to a first service; and the first processing unit sending the first service data to a second processing unit at a second time interval, the first time interval being shorter than the second time interval, the processing performance of the first processing unit being weaker than that of the second processing unit.
[0006] The first duration and the second duration can be varied. For example, taking the first duration as an example, the interval between the first processing unit acquiring the first first sensor data and acquiring the second first sensor data can be different from the interval between the first processing unit acquiring the second first sensor data and acquiring the third first sensor data.
[0007] In this embodiment, the low-performance processing unit processes the sensor data to obtain service data, and then sends the service data to the high-performance processing unit at a time interval longer than the time interval for processing the sensor data. This can significantly reduce the frequency of the high-performance processing unit being woken up, thereby reducing the power consumption of the electronic device.
[0008] In conjunction with the first aspect, in one possible implementation, the method further includes: the first processing unit obtaining second service data based on the first sensing data, the second service data corresponding to a second service; the first processing unit sending the second service data to the second processing unit at a third time interval, the first time interval being less than the third time interval.
[0009] The third duration can be varied.
[0010] The second and third durations can be the same or different.
[0011] When the second and third durations are the same, the first processing unit can send the first service data and the second service data together to the second processing unit, or the first processing unit can send the first service data and the second service data separately to the second processing unit. In this embodiment, the low-performance processing unit can perform different service processing based on the same received sensor data, thereby obtaining different service data. The high-performance processing unit can receive these different service data at a low frequency and process them. When a certain service has a display requirement, it generates the display data corresponding to that service and sends it for display, which can simultaneously reduce the power consumption of multiple display services.
[0012] In conjunction with the first aspect, in one possible implementation, the first duration is the minimum time interval between the time interval during which the first processing unit processes the first sensor data in the first service and the time interval during which the first processing unit processes the first sensor data in the second service.
[0013] In this embodiment, the second duration is set as the minimum time interval between processing the first sensor data in the first service and processing the first sensor data in the second service. Since the time interval for the high-performance processing unit to process service data is much longer than the time interval for processing sensor data in the service, this can minimize the frequency of the high-performance processing unit being woken up, and further reduce the power consumption of the electronic device.
[0014] In conjunction with the first aspect, in one possible implementation, the second duration is the time interval during which the second processing unit processes the first service data, and the third duration is the time interval during which the second processing unit processes the second service data.
[0015] In conjunction with the first aspect, in one possible implementation, the method further includes: the first processing unit acquiring second sensing data from the second sensor every fourth time interval; wherein, the first processing unit obtains the first service data based on the first sensing data, including: the first processing unit obtaining the first service data based on the first sensing data and the second sensing data.
[0016] The fourth duration can be varied.
[0017] The fourth duration and the first duration can be the same or different. In this embodiment, the low-performance processing unit can perform the same service processing based on multiple received sensor data, which can make the processed service data more accurate, thereby reducing the power consumption of electronic devices while improving the accuracy of the displayed data corresponding to the service.
[0018] In conjunction with the first aspect, in one possible implementation, the method further includes: the first processing unit acquiring third sensing data from the third sensor every fifth time interval; the first processing unit obtaining third service data based on the third sensing data, the third service data corresponding to a third service; and the first processing unit sending the third service data to the second processing unit every sixth time interval, the fifth time interval being shorter than the sixth time interval.
[0019] The fifth and sixth durations can be varied.
[0020] The fifth duration can be the same as or different from the first duration; the fifth duration can be the same as or different from the fourth duration.
[0021] The sixth duration and the second duration can be the same or different; the sixth duration and the third duration can be the same or different.
[0022] When the sixth duration and the second duration are the same, the first processing unit can send the first service data and the third service data together to the second processing unit, or the first processing unit can send the first service data and the third service data to the second processing unit separately.
[0023] When the sixth duration and the third duration are the same, the first processing unit can send the second service data and the third service data together to the second processing unit, or the first processing unit can send the second service data and the third service data separately to the second processing unit.
[0024] In this embodiment, the low-performance processing unit can receive multiple sensor data at regular intervals and perform different service processing to obtain different service data. The high-performance processing unit can receive the different service data at longer intervals and process the different service data. When a certain service has a display requirement, it generates the display data corresponding to that service and sends it for display, which can reduce the power consumption of multiple display services at the same time.
[0025] In conjunction with the first aspect, in one possible implementation, the method further includes: the first processing unit obtains fourth service data based on the first sensing data, the fourth service data corresponding to a fourth service; the first processing unit sends the fourth service data to the third processing unit at a seventh time interval, the first time interval being less than the seventh time interval, and the processing performance of the first processing unit being weaker than that of the third processing unit.
[0026] The duration of the seventh segment can be varied.
[0027] The seventh and second durations can be the same or different; the seventh and third durations can be the same or different; and the seventh and sixth durations can be the same or different.
[0028] When the seventh duration and the second duration are the same, the first processing unit can send the first service data and the fourth service data together to the second processing unit, or the first processing unit can send the first service data and the fourth service data to the second processing unit separately.
[0029] When the seventh duration is the same as the third duration, the first processing unit can send the second service data and the fourth service data together to the second processing unit, or the first processing unit can send the second service data and the fourth service data to the second processing unit separately.
[0030] When the seventh duration is the same as the sixth duration, the first processing unit can send the third service data and the fourth service data together to the second processing unit, or the first processing unit can send the third service data and the fourth service data separately to the second processing unit.
[0031] In this embodiment, after the low-performance processing unit processes the received sensor data to obtain different service data, the low-performance processing unit can send the different service data to multiple high-performance processing units at a lower frequency than the frequency at which the low-performance processing unit processes the sensor data. This can reduce the frequency at which multiple high-performance processing units are woken up, reduce the power consumption of multiple high-performance processing units, and thus reduce the power consumption of one or more electronic devices.
[0032] In conjunction with the first aspect, in one possible implementation, the method is applied to a processor, wherein the first processing unit is a first core of the processor and the second processing unit is a second core of the processor.
[0033] In conjunction with the first aspect, in one possible implementation, the processor is a central processing unit (CPU).
[0034] The embodiments of this application can be applied to the inter-core interaction scenario of the CPU of electronic devices, which can reduce the frequency of the large cores of the CPU being woken up, thereby reducing the power consumption of electronic devices.
[0035] In conjunction with the first aspect, in one possible implementation, the first processing unit is a first processor, and the second processing unit is a second processor.
[0036] In one possible implementation, the first processing unit and the second processing unit are located in the same device or apparatus. The first processing unit can be a first processor, and the second processing unit can be a second processor; it is understood that the first processor and the second processor are located in the same device or apparatus. Optionally, the first processor and the second processor can be located on the same chip or different chips in the same device or apparatus. When the first processor and the second processor are located on the same chip, the first processing unit and the second processing unit are located on the same chip; when the first processor and the second processor are located on different chips, the first processing unit and the second processing unit are located on different chips. The first processor and the second processor can be processors of the type of CPU, graphics processing unit (GPU), or smart sensor hub. The types of the first processor and the second processor can be the same or different.
[0037] In one example, the first processor is a sensorhub, and the second processor is a CPU.
[0038] In some embodiments, the first processor may also be any one of a digital signal processor (DSP), a neural processing unit (NPU), a vision processing unit (VPU), an audio processing unit (APU), an image signal processor (ISP), a microcontroller unit (MCU), or a field-programmable gate array (FPGA); similarly, the second processor may also be any one of a DSP, NPU, VPU, APU, ISP, MCU, or FPGA.
[0039] In some embodiments, the first processing unit is the core of a first processor, and the second processing unit is the core of a second processor.
[0040] It is understandable that the first processing unit and the second processing unit can be located in the same device / chip or in different devices / chips.
[0041] In one possible implementation, the first processing unit and the second processing unit are located in the same device or apparatus. The first processing unit can be the core of a first processor, and the second processing unit can be the core of a second processor; it is understood that the first processor and the second processor are located in the same device or apparatus. Optionally, the first processor and the second processor can be located on the same chip or different chips within the same device or apparatus. When the first processor and the second processor are located on the same chip, the first processing unit and the second processing unit are located on the same chip; when the first processor and the second processor are located on different chips, the first processing unit and the second processing unit are located on different chips. The first processor and the second processor can be processors of the type such as CPU, GPU, or sensor hub. The types of the first processor and the second processor can be the same or different.
[0042] In some embodiments, the first processor may also be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; similarly, the second processor may also be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA.
[0043] In one example, the first processing unit can be a Cortex-M33 core, and the second processing unit can be a Cortex-M55 core. In one possible implementation, the first processor is a sensorhub, and the second processor is a CPU; that is, the first processing unit can be a Cortex-M33 core of the sensorhub, and the second processing unit is a Cortex-M55 core of the CPU.
[0044] In one possible implementation, the first processing unit and the second processing unit may be located in different devices. The first processing unit may be located in a first device, and the second processing unit may be located in a second device. The first processing unit may be the processor of the first device, and the second processing unit may be the processor of the second device, or the first processing unit may be the core of the processor of the first device, and the second processing unit may be the core of the processor of the second device. The first device may be a first server or a first terminal device, and the second device may be a second server or a second terminal device.
[0045] The first device and the second device can communicate with each other.
[0046] The embodiments of this application can be applied to interaction scenarios between terminal devices or between servers, which can reduce the frequency of high-performance devices or high-performance servers being woken up, thereby reducing the power consumption of terminal devices or servers.
[0047] In conjunction with the first aspect, in one possible implementation, the first service is any one of calorie calculation, gesture recognition, motion state recognition, step counting, heart rate calculation, cardiac electrical activity measurement, barometric pressure measurement, and magnetic force measurement; the second service is any one of calorie calculation, gesture recognition, motion state recognition, step counting, heart rate calculation, cardiac electrical activity measurement, barometric pressure measurement, and magnetic force measurement; and the first sensor is any one of accelerometer, gyroscope, PPG sensor, A+G sensor, EGG sensor, barometric pressure sensor, and magnetic force sensor. The first service and the second service are different.
[0048] In a second aspect, an apparatus is provided, the apparatus including a first processing unit for performing the method of the first aspect or any possible implementation thereof.
[0049] In conjunction with the second aspect, in one possible implementation, the device is a processor.
[0050] Alternatively, the processor is a CPU.
[0051] In conjunction with the first aspect, in one possible implementation, the first processing unit is the first core of the processor.
[0052] In some embodiments, the processor may also be a processor such as a graphics processing unit (GPU) or a smart sensor hub.
[0053] In some embodiments, the processor may also be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA.
[0054] Thirdly, an apparatus is provided, the apparatus including a first processing unit, the first processing unit being configured to: acquire first sensing data from a first sensor at intervals of a first time duration; obtain first service data based on the first sensing data, the first service data corresponding to a first service; and send the first service data to a second processing unit at intervals of a second time duration, the first time duration being less than the second time duration, the processing performance of the first processing unit being weaker than the processing performance of the second processing unit.
[0055] The first and second durations can be varied. For example, the interval between the first processing unit acquiring the first sensor data and the second sensor data can be different from the interval between the first processing unit acquiring the second sensor data and the third sensor data.
[0056] In this embodiment, the sensor data is processed in a low-performance processing unit to obtain service data, and then the service data is sent to the high-performance processing unit at a time interval that is larger than the time interval at which the high-performance processing unit processes the service data. In this way, since the frequency at which the high-performance processing unit processes the service data is much lower than the frequency at which the service processes the sensor data, the frequency at which the high-performance processing unit is woken up can be greatly reduced, thereby reducing the power consumption of the electronic device.
[0057] In conjunction with the third aspect, in one possible implementation, the first processing unit is a first processor, the second processing unit is a second processor, and the processing performance of the first processor is weaker than that of the second processor; or, the first processing unit is a first core of a third processor, the second processing unit is a second core of the third processor, and the processing performance of the first core is weaker than that of the second core, and the device includes the third processor.
[0058] In conjunction with the third aspect, in one possible implementation, the device is an electronic device or a processor.
[0059] In some embodiments, the terminal device may be a wearable device, mobile phone, tablet computer, laptop computer, wristband, etc.
[0060] In some embodiments, the device may also be a server.
[0061] In conjunction with the third aspect, in one possible implementation, the first processing unit is further configured to: obtain second service data based on the first sensing data, the second service data corresponding to a second service; and send the second service data to the second processing unit at intervals of a third duration, wherein the first duration is less than the third duration.
[0062] The third duration can be varied.
[0063] The second and third durations can be the same or different.
[0064] When the second duration and the third duration are the same, the first processing unit can send the first service data and the second service data together to the second processing unit, or the first processing unit can send the first service data and the second service data to the second processing unit separately.
[0065] In this embodiment, the low-performance processing unit can perform different service processing based on the same received sensor data, thereby obtaining different service data. The high-performance processing unit can receive these different service data at a low frequency and process them. When a certain service has a display requirement, it generates the display data corresponding to that service and sends it for display, which can reduce the power consumption of multiple display services at the same time.
[0066] In conjunction with the third aspect, in one possible implementation, the first duration is the minimum time interval between the time interval during which the first processing unit processes the first sensor data in the first service and the time interval during which it processes the first sensor data in the second service.
[0067] In this embodiment, the second duration is set as the minimum time interval between processing the first sensor data in the first service and processing the first sensor data in the second service. Since the time interval for the high-performance processing unit to process service data is much longer than the time interval for processing sensor data in the service, this can minimize the frequency of the high-performance processing unit being woken up, and further reduce the power consumption of the electronic device.
[0068] In conjunction with the third aspect, in one possible implementation, the second duration is the time interval during which the second processing unit processes the first service data, and the third duration is the time interval during which the second processing unit processes the second service data.
[0069] In conjunction with the third aspect, in one possible implementation, the first processing unit is further configured to: acquire second sensing data from the second sensor every fourth time interval; specifically, the first processing unit is configured to: obtain the first service data based on the first sensing data and the second sensing data.
[0070] The fourth duration can be varied.
[0071] The fourth duration can be the same as or different from the first duration.
[0072] In this embodiment, the low-performance processing unit can perform the same service processing based on multiple received sensor data, which can make the processed service data more accurate, thereby reducing the power consumption of electronic devices while improving the accuracy of the displayed data corresponding to the service.
[0073] In conjunction with the third aspect, in one possible implementation, the first processing unit is further configured to: acquire third sensing data from the third sensor at a fifth time interval; obtain third service data based on the third sensing data, the third service data corresponding to the third service; and send the third service data to the second processing unit at a sixth time interval, the fifth time interval being shorter than the sixth time interval.
[0074] The fifth and sixth durations can be varied.
[0075] The fifth duration can be the same as or different from the first duration; the fifth duration can be the same as or different from the fourth duration.
[0076] The sixth duration and the second duration can be the same or different; the sixth duration and the third duration can be the same or different.
[0077] When the sixth duration and the second duration are the same, the first processing unit can send the first service data and the third service data together to the second processing unit, or the first processing unit can send the first service data and the third service data to the second processing unit separately.
[0078] When the sixth duration and the third duration are the same, the first processing unit can send the second service data and the third service data together to the second processing unit, or the first processing unit can send the second service data and the third service data separately to the second processing unit.
[0079] In this embodiment, the low-performance processing unit can receive multiple sensor data at regular intervals and perform different service processing to obtain different service data. The high-performance processing unit can receive the different service data at longer intervals and process the different service data. When a certain service has a display requirement, it generates the display data corresponding to that service and sends it for display, which can reduce the power consumption of multiple display services at the same time.
[0080] In conjunction with the third aspect, in one possible implementation, the first processing unit is further configured to: obtain fourth service data based on the first sensing data, the fourth service data corresponding to a fourth service; and send the fourth service data to the third processing unit at intervals of a seventh duration, wherein the first duration is less than the seventh duration, and the processing performance of the first processing unit is weaker than that of the third processing unit.
[0081] The duration of the seventh segment can be varied.
[0082] The seventh and second durations can be the same or different; the seventh and third durations can be the same or different; and the seventh and sixth durations can be the same or different.
[0083] When the seventh duration and the second duration are the same, the first processing unit can send the first service data and the fourth service data together to the second processing unit, or the first processing unit can send the first service data and the fourth service data to the second processing unit separately.
[0084] When the seventh duration is the same as the third duration, the first processing unit can send the second service data and the fourth service data together to the second processing unit, or the first processing unit can send the second service data and the fourth service data to the second processing unit separately.
[0085] When the seventh duration is the same as the sixth duration, the first processing unit can send the third service data and the fourth service data together to the second processing unit, or the first processing unit can send the third service data and the fourth service data separately to the second processing unit.
[0086] In this embodiment, after the low-performance processing unit processes the received sensor data to obtain different service data, the low-performance processing unit can send the different service data to multiple high-performance processing units at a lower frequency than the frequency at which the low-performance processing unit processes the sensor data. This can reduce the frequency at which multiple high-performance processing units are woken up, reduce the power consumption of multiple high-performance processing units, and thus reduce the power consumption of one or more electronic devices.
[0087] In conjunction with the third aspect, in one possible implementation, the electronic device further includes the second processing unit.
[0088] In conjunction with the third aspect, in one possible implementation, the first service is any one of calorie calculation, gesture recognition, motion state recognition, step counting, heart rate calculation, cardiac electrical activity measurement, barometric pressure measurement, and magnetic force measurement; the second service is any one of calorie calculation, gesture recognition, motion state recognition, step counting, heart rate calculation, cardiac electrical activity measurement, barometric pressure measurement, and magnetic force measurement; and the first sensor is any one of accelerometer, gyroscope, PPG sensor, A+G sensor, EGG sensor, barometric pressure sensor, and magnetic force sensor. The first service and the second service are different.
[0089] Fourthly, an apparatus is provided, comprising a first processing unit and a second processing unit, wherein: the first processing unit is configured to: acquire first sensing data from a first sensor at intervals of a first time duration; obtain first service data based on the first sensing data, the first service data corresponding to a first service; and send the first service data to the second processing unit at intervals of a second time duration, the first time duration being less than the second time duration; the second processing unit is configured to receive the first service data sent by the first processing unit.
[0090] In this embodiment, the sensor data is processed in a low-performance processing unit to obtain service data, and then the service data is sent to the high-performance processing unit according to the frequency at which the high-performance processing unit processes the service data. In this way, since the frequency at which the high-performance processing unit processes the service data is much lower than the frequency at which the service processes the sensor data, the frequency at which the high-performance processing unit is woken up can be greatly reduced, thereby reducing the power consumption of the electronic device.
[0091] In conjunction with the fourth aspect, in one possible implementation, the second processing unit is further configured to: process the first business data; and when the first business has a display requirement, determine the display data corresponding to the first business based on the processed first business data.
[0092] In conjunction with the fourth aspect, in one possible implementation, the first processing unit is a first processor, the second processing unit is a second processor, and the processing performance of the first processor is weaker than that of the second processor; or, the first processing unit is a first core of a third processor, the second processing unit is a second core of the third processor, and the processing performance of the first core is weaker than that of the second core, and the device includes the third processor.
[0093] In conjunction with the fourth aspect, in one possible implementation, the device is an electronic device or a processor.
[0094] In some embodiments, the terminal device may be a wearable device, mobile phone, tablet computer, laptop computer, wristband, etc.
[0095] In some embodiments, the device may also be a server.
[0096] In conjunction with the fourth aspect, in one possible implementation, the first processing unit is further configured to: obtain second service data based on the first sensing data, the second service data corresponding to a second service; send the second service data to the second processing unit at intervals of a third duration, the first duration being less than the third duration; the second processing unit is further configured to: process the second service data; and when the second service has a display requirement, determine the display data corresponding to the second service based on the processed second service data.
[0097] The second and third durations can be the same or different.
[0098] When the second duration and the third duration are the same, the first processing unit can send the first service data and the second service data together to the second processing unit, or the first processing unit can send the first service data and the second service data to the second processing unit separately.
[0099] In this embodiment, the low-performance processing unit can perform different service processing based on the same received sensor data at certain intervals to obtain different service data. The high-performance processing unit can receive these different service data at longer intervals and process them. When a certain service has a display requirement, it generates the display data corresponding to that service and sends it for display, which can reduce the power consumption of multiple display services at the same time.
[0100] In conjunction with the fourth aspect, in one possible implementation, the first duration is the minimum time interval between the time interval during which the first processing unit processes the first sensor data in the first service and the time interval during which the first sensor data is processed in the second service.
[0101] In this embodiment of the application, the second duration is set as the minimum time interval between the time interval for processing the first sensor data in the first service and the time interval for processing the first sensor data in the second service. Since the frequency of the high-performance processing unit processing service data is much lower than the frequency of processing sensor data in the service, this can minimize the frequency of the high-performance processing unit being woken up, and further reduce the power consumption of the electronic device.
[0102] In conjunction with the fourth aspect, in one possible implementation, the second duration is the time interval during which the second processing unit processes the first service data, and the third duration is the time interval during which the second processing unit processes the second service data.
[0103] In conjunction with the fourth aspect, in one possible implementation, the first processing unit is further configured to: acquire second sensing data from the second sensor every fourth time interval; specifically, the first processing unit is configured to: obtain the first service data based on the first sensing data and the second sensing data.
[0104] In this embodiment, the low-performance processing unit can perform the same service processing based on multiple received sensor data, which can make the processed service data more accurate, thereby reducing the power consumption of electronic devices while improving the accuracy of the displayed data corresponding to the service.
[0105] In conjunction with the fourth aspect, in one possible implementation, the first processing unit is further configured to: acquire third sensing data from the third sensor at a fifth time interval; obtain third service data based on the third sensing data, the third service data corresponding to a third service; send the third service data to the second processing unit at a sixth time interval, the fifth time interval being shorter than the sixth time interval; the second processing unit is further configured to: process the third service data; and when the third service has a display requirement, determine the display data corresponding to the third service based on the processed third service data.
[0106] The fifth duration can be the same as or different from the first duration; the fifth duration can be the same as or different from the fourth duration.
[0107] The sixth duration and the second duration can be the same or different; the sixth duration and the third duration can be the same or different.
[0108] When the sixth duration and the second duration are the same, the first processing unit can send the first service data and the third service data together to the second processing unit, or the first processing unit can send the first service data and the third service data to the second processing unit separately.
[0109] When the sixth duration and the third duration are the same, the first processing unit can send the second service data and the third service data together to the second processing unit, or the first processing unit can send the second service data and the third service data separately to the second processing unit.
[0110] In this embodiment, the low-performance processing unit can perform different service processing based on the received multiple sensor data at certain intervals to obtain different service data. The high-performance processing unit can receive the different service data at longer intervals and process the different service data. When a certain service has a display requirement, it generates the display data corresponding to that service and sends it for display, which can reduce the power consumption of multiple display services at the same time.
[0111] In conjunction with the fourth aspect, in one possible implementation, the device further includes a third processing unit, wherein the processing performance of the first processing unit is weaker than that of the third processing unit, and the first processing unit is further configured to: obtain fourth service data based on the first sensing data, the fourth service data corresponding to a fourth service; send the fourth service data to the third processing unit at a seventh time interval, the seventh frequency being lower than the first frequency; the third processing unit is configured to: process the fourth service data; and when the fourth service has a display requirement, determine the display data corresponding to the fourth service based on the processed fourth service data.
[0112] It is understandable that the seventh duration and the second duration can be the same or different; the seventh duration and the third duration can be the same or different; the seventh duration and the sixth duration can be the same or different.
[0113] When the seventh duration and the second duration are the same, the first processing unit can send the first service data and the fourth service data together to the second processing unit, or the first processing unit can send the first service data and the fourth service data to the second processing unit separately.
[0114] When the seventh duration is the same as the third duration, the first processing unit can send the second service data and the fourth service data together to the second processing unit, or the first processing unit can send the second service data and the fourth service data to the second processing unit separately.
[0115] When the seventh duration is the same as the sixth duration, the first processing unit can send the third service data and the fourth service data together to the second processing unit, or the first processing unit can send the third service data and the fourth service data separately to the second processing unit.
[0116] In this embodiment, after the low-performance processing unit processes the received sensor data to obtain different service data, the low-performance processing unit can send the different service data to multiple high-performance processing units at a lower frequency than the frequency at which the low-performance processing unit processes the sensor data. This can reduce the frequency at which multiple high-performance processing units are woken up, reduce the power consumption of multiple high-performance processing units, and thus reduce the power consumption of one or more electronic devices.
[0117] In conjunction with the fourth aspect, in one possible implementation, the device further includes a fourth processing unit, the processing performance of which is weaker than that of the second processing unit. The fourth processing unit is configured to: acquire fourth sensing data from a fourth sensor at eighth intervals; obtain fifth service data based on the fourth sensing data, the fifth service data corresponding to a fifth service; and send the fifth service data to the second processing unit at ninth intervals, the ninth interval being lower than the eighth interval. The second processing unit is further configured to: process the fifth service data; and, when the fifth service has a display requirement, determine the display data corresponding to the fifth service based on the processed fifth service data.
[0118] Understandably, the eighth duration can be the same as or different from the first duration; the eighth duration can be the same as or different from the fourth duration; and the eighth duration can be the same as or different from the fifth duration.
[0119] It is understandable that the ninth and second durations can be the same or different; the ninth and third durations can be the same or different; the ninth and sixth durations can be the same or different; and the ninth and seventh durations can be the same or different.
[0120] When the ninth duration and the second duration are the same, the first processing unit can send the first service data and the fifth service data together to the second processing unit, or the first processing unit can send the first service data and the fifth service data to the second processing unit separately.
[0121] When the ninth duration and the third duration are the same, the first processing unit can send the second service data and the fifth service data together to the second processing unit, or the first processing unit can send the second service data and the fifth service data to the second processing unit separately.
[0122] When the ninth duration and the sixth duration are the same, the first processing unit can send the third service data and the fifth service data together to the second processing unit, or the first processing unit can send the third service data and the fifth service data to the second processing unit separately.
[0123] When the ninth duration and the seventh duration are the same, the first processing unit can send the fourth service data and the fifth service data together to the second processing unit, or the first processing unit can send the fourth service data and the fifth service data to the second processing unit separately.
[0124] In this embodiment, after multiple low-performance processing units process the received sensor data to obtain different service data, the low-performance processing units can send the different service data to the same high-performance processing unit at a lower frequency than the frequency of processing the sensor data. This can reduce the power consumption of electronic devices while saving the number of high-performance processing units.
[0125] In conjunction with the fourth aspect, in one possible implementation, the device further includes a third processing unit, wherein the processing performance of the first processing unit is weaker than that of the third processing unit, and the fourth processing unit is further configured to: obtain sixth service data based on the fourth sensing data, the sixth service data corresponding to a sixth service; send the sixth service data to the third processing unit at tenth intervals, the tenth frequency being lower than the eighth frequency; the third processing unit is further configured to: process the sixth service data; and when the sixth service has a display requirement, determine the display data corresponding to the sixth service based on the processed sixth service data.
[0126] It is understandable that the tenth and second durations can be the same or different; the tenth and third durations can be the same or different; the tenth and sixth durations can be the same or different; the tenth and seventh durations can be the same or different; and the tenth and ninth durations can be the same or different.
[0127] When the tenth duration and the second duration are the same, the first processing unit can send the first service data and the sixth service data together to the second processing unit, or the first processing unit can send the first service data and the sixth service data to the second processing unit separately.
[0128] When the tenth duration and the third duration are the same, the first processing unit can send the second service data and the sixth service data together to the second processing unit, or the first processing unit can send the second service data and the sixth service data to the second processing unit separately.
[0129] When the tenth duration and the sixth duration are the same, the first processing unit can send the third service data and the sixth service data together to the second processing unit, or the first processing unit can send the third service data and the sixth service data to the second processing unit separately.
[0130] When the tenth duration and the seventh duration are the same, the first processing unit can send the fourth service data and the sixth service data together to the second processing unit, or the first processing unit can send the fourth service data and the sixth service data to the second processing unit separately.
[0131] When the tenth duration is the same as the ninth duration, the first processing unit can send the fifth and sixth service data together to the second processing unit, or the first processing unit can send the fifth and sixth service data separately to the second processing unit.
[0132] In this embodiment, after multiple low-performance processing units process the received sensor data to obtain different service data, the low-performance processing units can send the different service data to multiple high-performance processing units at a lower frequency than the frequency of processing the sensor data, which can further reduce the power consumption of electronic devices.
[0133] In conjunction with the fourth aspect, in one possible implementation, the device includes a first processor, the first processing unit being a first core of the first processor, and the second processing unit being a second core of the first processor; or the device includes a first processor and a second processor, the first processing unit being a core of the first processor, and the second processing unit being a core of the second processor.
[0134] The embodiments of this application can be applied to the inter-core interaction scenario of the CPU of electronic devices, which can reduce the frequency of the CPU's large cores being woken up, thereby reducing the power consumption of electronic devices.
[0135] In conjunction with the fourth aspect, in one possible implementation, the device further includes a third processor and a fourth processor, wherein the third processing unit is the core of the third processor and the fourth processing unit is the core of the fourth processor.
[0136] In conjunction with the fourth aspect, in one possible implementation, the first service is any one of calorie calculation, gesture recognition, motion state recognition, step counting, heart rate calculation, cardiac electrical activity measurement, barometric pressure measurement, and magnetic force measurement; the second service is any one of calorie calculation, gesture recognition, motion state recognition, step counting, heart rate calculation, cardiac electrical activity measurement, barometric pressure measurement, and magnetic force measurement; and the first sensor is any one of accelerometer, gyroscope, PPG sensor, A+G sensor, EGG sensor, barometric pressure sensor, and magnetic force sensor. The first service and the second service are different.
[0137] Fifthly, a computer-readable storage medium is provided, which stores a computer program or instructions that, when executed, implement the method of the first aspect or any possible implementation thereof.
[0138] In a sixth aspect, a chip is provided, the chip including a first processing unit, the chip storing instructions that, when executed, cause the first processing unit to perform the method of the first aspect or any possible implementation thereof.
[0139] In conjunction with the sixth aspect, in one possible implementation, the chip further includes a second processing unit for receiving service data sent by the first processing unit.
[0140] In conjunction with the sixth aspect, in one possible implementation, the second processing unit is further configured to: process the business data from the first processing unit; and when the business corresponding to the business data has a display requirement, determine the display data corresponding to the business based on the processed business data.
[0141] In conjunction with the sixth aspect, in one possible implementation, the first processing unit is a first processor, the second processing unit is a second processor, and the processing performance of the first processor is weaker than that of the second processor; or, the first processing unit is a first core of a third processor, the second processing unit is a second core of the third processor, and the processing performance of the first core is weaker than that of the second core, and the chip includes the third processor.
[0142] In a seventh aspect, a computer program product is provided, which stores a computer program or instructions that, when executed, implement the method in the first aspect or any possible implementation of the first aspect. Attached Figure Description
[0143] Figure 1 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application;
[0144] Figure 2 This is a software structure block diagram of an electronic device provided in an embodiment of this application;
[0145] Figure 3 These are schematic diagrams of two scenarios provided in the embodiments of this application;
[0146] Figure 4 This is a schematic diagram illustrating a method for business data interaction with sensor data;
[0147] Figure 5 This is an interactive schematic diagram of a data processing method provided in an embodiment of this application;
[0148] Figure 6 This is a schematic diagram showing the layout of the two first processing units and the second processing unit provided in the embodiments of this application;
[0149] Figure 7 This is a schematic diagram of module interaction for a data processing method provided in an embodiment of this application;
[0150] Figure 8 This is an interactive schematic diagram of another data processing method provided in the embodiments of this application;
[0151] Figure 9 This is a schematic diagram of module interaction for another data processing method provided in an embodiment of this application;
[0152] Figure 10 This is an interactive schematic diagram of another data processing method provided in the embodiments of this application;
[0153] Figure 11 This is a schematic diagram of module interaction for another data processing method provided in an embodiment of this application;
[0154] Figure 12 This is an interactive schematic diagram of another data processing method provided in the embodiments of this application;
[0155] Figure 13 This is a schematic diagram of module interaction for another data processing method provided in an embodiment of this application;
[0156] Figure 14 This is a schematic diagram of module interaction for another data processing method provided in an embodiment of this application;
[0157] Figure 15 This is an interactive schematic diagram of another data processing method provided in the embodiments of this application;
[0158] Figure 16 This is a schematic diagram showing the layout of several first processing units, second processing units, and third processing units provided in the embodiments of this application;
[0159] Figure 17 This is an interactive schematic diagram of another data processing method provided in the embodiments of this application;
[0160] Figure 18 This is a schematic diagram showing the layout of several first processing units, second processing units, and fourth processing units provided in the embodiments of this application;
[0161] Figure 19 This is an interactive schematic diagram of another data processing method provided in the embodiments of this application;
[0162] Figure 20 This is a schematic diagram showing the layout of several first processing units, second processing units, third processing units, and fourth processing units provided in the embodiments of this application. Detailed Implementation
[0163] The technical solutions of this application will now be described with reference to the accompanying drawings. Obviously, the described embodiments are merely some embodiments of this application, and not all embodiments.
[0164] The technical solutions of the embodiments of this application will be described below with reference to the accompanying drawings. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B; "and / or" in this text is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Furthermore, in the description of the embodiments of this application, "plural" or "multiple" refers to two or more than two.
[0165] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this embodiment, unless otherwise stated, "a plurality of" means two or more.
[0166] The terminology used in the following embodiments is for the purpose of describing particular embodiments only and is not intended to be limiting of this application. As used in the specification and appended claims of this application, the singular expressions “a,” “an,” “the,” “the,” “the,” and “this” are intended to also include expressions such as “one or more,” unless the context clearly indicates otherwise. It should also be understood that in the following embodiments of this application, “at least one” and “one or more” refer to one, two, or more than two. The term “and / or” is used to describe the relationship between related objects, indicating that three relationships may exist; for example, A and / or B can indicate: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character “ / ” generally indicates that the preceding and following related objects are in an “or” relationship.
[0167] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "one embodiment," "some embodiments," "another embodiment," "other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.
[0168] The method provided in this application can be applied to electronic devices with time display or time recognition functions, such as mobile phones, tablets, wearable devices, in-vehicle devices, augmented reality (AR) / virtual reality (VR) devices, laptops, ultra-mobile personal computers (UMPCs), netbooks, personal digital assistants (PDAs), smart home devices, and other electronic devices. This application does not impose any restrictions on the specific type of electronic device.
[0169] For example, Figure 1 A schematic diagram of the structure of electronic device 100 is shown. Electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, antenna 1, antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone jack 170D, a sensor module 180, buttons 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, a PPG sensor 180N, an A+G sensor 180O, an EGG sensor 180P, etc.
[0170] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0171] Processor 110 may include one or more processing units, such as: application processor (AP), modem processor, graphics processing unit (GPU), image signal processor (ISP), controller, memory, video codec, digital signal processor (DSP), baseband processor, and / or neural network processing unit (NPU), etc. Different processing units may be independent devices or integrated into one or more processors.
[0172] The controller can be the nerve center and command center of the electronic device 100. The controller can generate operation control signals according to the instruction opcode and timing signals to complete the control of fetching and executing instructions.
[0173] The processor 110 may also include a memory for storing instructions and data.
[0174] In some embodiments, processor 110 may include one or more interfaces.
[0175] USB interface 130 is a USB standard compliant interface, specifically a Mini USB interface, Micro USB interface, USB Type-C interface, etc. USB interface 130 can be used to connect a charger to charge electronic device 100, and can also be used for data transfer between electronic device 100 and peripheral devices. This interface can also be used to connect other electronic devices, such as AR devices.
[0176] It is understood that the interface connection relationships between the modules illustrated in the embodiments of this application are merely illustrative and do not constitute a structural limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may also employ different interface connection methods or combinations of multiple interface connection methods as described in the above embodiments.
[0177] The charging management module 140 receives charging input from a charger, which can be a wireless charger or a wired charger. While charging the battery 142, the charging management module 140 can also supply power to electronic devices via the power management module 141.
[0178] The power management module 141 connects the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140, providing power to the processor 110, internal memory 121, external memory, display screen 194, camera 193, and wireless communication module 160, etc. The power management module 141 can also monitor parameters such as battery capacity, battery cycle count, and battery health status (leakage current, impedance). In some other embodiments, the power management module 141 may also be located within the processor 110. In other embodiments, the power management module 141 and the charging management module 140 may be located in the same device.
[0179] The wireless communication function of electronic device 100 can be realized through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor and baseband processor, etc.
[0180] In some embodiments, antenna 1 of electronic device 100 is coupled to mobile communication module 150, and antenna 2 is coupled to wireless communication module 160, so that electronic device 100 can communicate with networks and other devices through wireless communication technology.
[0181] Electronic device 100 implements display functions through a GPU, a display screen 194, and an application processor. The GPU is a microprocessor for image processing, connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations and for graphics rendering. Processor 110 may include one or more GPUs, which execute program instructions to generate or modify display information.
[0182] Display screen 194 is used to display images, videos, etc. Display screen 194 includes a display panel. The display panel may be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a miniature LED, a microLED, a quantum dot light-emitting diode (QLED), etc. In some embodiments, electronic device 100 may include one or N displays 194, where N is a positive integer greater than 1.
[0183] Electronic device 100 can perform shooting functions through ISP, camera 193, video codec, GPU, display 194 and application processor.
[0184] The external storage interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device 100. The external memory card communicates with the processor 110 through the external storage interface 120 to perform data storage functions. For example, music, video, and other files can be saved on the external memory card.
[0185] Internal memory 121 can be used to store computer executable program code, which includes instructions. Processor 110 executes various functional applications and data processing of electronic device 100 by running the instructions stored in internal memory 121. Internal memory 121 may include a program storage area and a data storage area. The program storage area may store the operating system, at least one application required for a function (such as sound playback, image playback, etc.), etc. The data storage area may store data created during the use of electronic device 100 (such as audio data, phonebook, etc.). Furthermore, internal memory 121 may include high-speed random access memory and may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), etc.
[0186] Electronic device 100 can implement audio functions, such as music playback and recording, through audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, and application processor.
[0187] Buttons 190 include a power button, volume buttons, etc. Buttons 190 can be mechanical buttons or touch-sensitive buttons. Electronic device 100 can receive button input and generate key signal inputs related to user settings and function control of electronic device 100.
[0188] Motor 191 can generate vibration alerts. Motor 191 can be used for incoming call vibration alerts or for touch vibration feedback. For example, different vibration feedback effects can correspond to touch operations performed on different applications (such as taking photos, playing audio, etc.). Motor 191 can also correspond to different vibration feedback effects for touch operations performed on different areas of the display screen 194. Different application scenarios (such as time reminders, receiving messages, alarm clocks, games, etc.) can also correspond to different vibration feedback effects. The touch vibration feedback effect can also be customized.
[0189] Indicator 192 can be an indicator light, used to indicate charging status, power changes, or to indicate messages, missed calls, notifications, etc.
[0190] The SIM card interface 195 is used to connect a SIM card. The SIM card can be inserted into or removed from the SIM card interface 195 to make contact with and separate from the electronic device 100. The electronic device 100 can support one or N SIM card interfaces, where N is a positive integer greater than 1. The electronic device 100 interacts with the network through the SIM card to achieve functions such as making calls and data communication.
[0191] It should be understood that the phone cards in the embodiments of this application include, but are not limited to, SIM cards, eSIM cards, universal subscriber identity modules (USIM), universal integrated circuit cards (UICC), etc.
[0192] The software system of electronic device 100 can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. This application embodiment uses the layered architecture Android system as an example to exemplify the software structure of electronic device 100.
[0193] Figure 2 This is a software structure block diagram of an electronic device 100 according to an embodiment of this application. The layered architecture divides the software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, from top to bottom: the application layer, the application framework layer, the Android runtime and system libraries, and the kernel layer. The application layer may include a series of application packages.
[0194] like Figure 2 As shown, the application package may include applications such as camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, and SMS.
[0195] The application framework layer provides application programming interfaces (APIs) and a programming framework for applications in the application layer. The application framework layer includes some predefined functions.
[0196] like Figure 2 As shown, the application framework layer may include a window manager, content provider, view system, phone manager, resource manager, notification manager, etc.
[0197] The window manager is used to manage windowed applications. It can retrieve screen size, determine the presence of a status bar, lock the screen, and capture screenshots, among other things.
[0198] Content providers store and retrieve data, making that data accessible to applications. This data may include videos, images, audio, made and received phone calls, browsing history and bookmarks, phone books, etc.
[0199] A view system includes visual controls, such as controls for displaying text and controls for displaying images. View systems can be used to build applications. A display interface can consist of one or more views. For example, a display interface including a text notification icon could include views for displaying text and views for displaying images.
[0200] The phone manager is used to provide communication functions for electronic device 100. For example, it manages call status (including connection and disconnection).
[0201] The file explorer provides applications with various resources, such as localized strings, icons, images, layout files, video files, and more.
[0202] The notification manager allows applications to display notifications in the status bar. These notifications can be used to deliver informational messages and can disappear automatically after a short pause, requiring no user interaction. For example, the notification manager can be used to notify users of completed downloads or message alerts. The notification manager can also display notifications as icons or scrolling text in the top status bar, such as notifications from background applications, or as dialog boxes on the screen. Examples include displaying text messages in the status bar, emitting sounds, vibrating electronic devices, and flashing indicator lights.
[0203] The Android Runtime consists of core libraries and a virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.
[0204] The core library consists of two parts: one part is the functionalities that need to be called by the Java language, and the other part is the Android core library.
[0205] The application layer and application framework layer run in a virtual machine. The virtual machine executes the Java files of the application layer and application framework layer as binary files. The virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection.
[0206] System libraries can include multiple functional modules. For example: surface manager, media libraries, 3D graphics processing libraries (e.g., OpenGL ES), 2D graphics engines (e.g., SGL), etc.
[0207] The Surface Manager is used to manage the display subsystem and provides the blending of 2D and 3D layers for multiple applications.
[0208] The media library supports playback and recording of various common audio and video formats, as well as still image files. It supports multiple audio and video encoding formats, such as MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG.
[0209] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.
[0210] A 2D graphics engine is a graphics engine for 2D drawing.
[0211] The kernel layer is the layer between hardware and software. The kernel layer contains at least the display driver, camera driver, audio driver, and sensor driver.
[0212] It should be understood that the technical solutions in the embodiments of this application can be used in systems such as Android, iOS, and HarmonyOS.
[0213] The technical solutions of this application embodiment can be applied, for example, to scenarios where applications on electronic devices interact with sensor data.
[0214] Among them, electronic devices can be televisions, desktop computers, laptops, portable electronic devices such as mobile phones, foldable screens, tablets, cameras, camcorders, video recorders, wearable devices such as pedometers, watches, wristbands, electrocardiogram monitors, smart home devices such as refrigerators, washing machines, robot vacuums, and any electronic devices that allow data interaction between applications and sensors, servers, and electronic devices in future networks or in future evolved public land mobile networks (PLMNs).
[0215] For example, Figure 3 The illustrations show two scenario diagrams provided in the embodiments of this application.
[0216] like Figure 3 As shown in (a), taking the interaction between the "step counting" service and the "calorie calculation" service and the sensor as an example, when the user is wearing the watch 310, the watch 310 can update the user's daily steps and calories burned in real time based on the sensor data obtained from the sensor. For example, the display can be refreshed when the user raises their wrist to trigger the watch 310 to light up, and the display can also be refreshed periodically when the watch 310 is in a constantly lit state.
[0217] like Figure 3As shown in (b), taking the interaction between the "step counting" service and the "calorie calculation" service and the sensor as an example, when the user carries the mobile phone 320 with them, the mobile phone 320 can update the user's daily steps and calories burned in real time based on the sensor data obtained from the sensor. For example, the display can be refreshed when the user faces the screen of the mobile phone 320 or taps the screen of the mobile phone 320 to trigger the screen to light up. The display can also be refreshed periodically when the mobile phone 320 is in a constantly lit state.
[0218] It should be understood that: Figure 3 The embodiments shown are merely illustrative examples of the scenarios to which the embodiments provided in this application are applicable, and do not constitute a limitation on the applicable scenarios of the embodiments provided in this application. The embodiments provided in this application can be applied to any interaction scenario between services and sensors. For example, they can also be applied to scenarios where the device recognizes the user's gestures and performs related operations based on the recognized user's gestures, or scenarios where the device recognizes the user's motion state and performs related operations based on the recognized user's motion state.
[0219] For example, Figure 4 A schematic diagram of a method 400 for business and sensor data interaction is shown.
[0220] like Figure 4 As shown, the electronic device includes a central processing unit (CPU), which includes a small CPU core and a large CPU core. The small CPU core and the large CPU core can communicate with each other. An accelerometer is attached to the small CPU core. The large CPU core includes "calorie" calculation, "motion status" recognition, "gesture" recognition, and "step counting" services.
[0221] It is understandable that a CPU can include multiple cores. A CPU small core and a CPU big core can each be one of the cores in the CPU. The terms "small" and "big" in CPU small core and CPU big core refer to a comparison between two CPU cores. For example, the meaning of CPU small core and CPU big core can be specifically understood as follows: the processing performance of a CPU small core is weaker than that of a CPU big core; the computing power of a CPU small core is weaker than that of a CPU big core; correspondingly, for the same processing task, the power consumption generated by a CPU small core is lower than that generated by a CPU big core.
[0222] The interaction process between the accelerometer, the small CPU core, and the large CPU core is as follows:
[0223] (1) The accelerometer is responsible for collecting acceleration data of the electronic device, and the accelerometer sends the collected acceleration data to the CPU core every 10ms.
[0224] (2) After the CPU small core obtains acceleration data from the acceleration sensor, it sends the acceleration data to the second transfer unit in the CPU large core every 10ms through the first transfer unit.
[0225] (3) After receiving the acceleration data, the second transfer unit sends the acceleration data to the corresponding service at the corresponding frequency according to the frequency at which each service in the CPU core processes the acceleration data.
[0226] The frequency at which the second transfer unit distributes acceleration data to each service can be different, but the highest frequency at which it distributes acceleration data to each service is 10ms. In other words, the highest frequency among the multiple processing acceleration data frequencies corresponding to multiple services in the CPU big core is consistent with the frequency at which acceleration data is obtained from the acceleration sensor by the CPU small core.
[0227] For example, the "calorie" calculation service processes acceleration data at a frequency of 100ms / time, while the "motion status" recognition service, "gesture" recognition service, and "step counting" service process acceleration data at a frequency of 10ms / time. Therefore, after receiving acceleration data, the second relay unit sends acceleration data to the "calorie" calculation service every 100ms. In other words, every time the second relay unit obtains 10 acceleration data data points from the CPU small core, it distributes all 10 data points to the "calorie" calculation service. Similarly, every 10ms, the second relay unit sends acceleration data to the "motion status" recognition service, "gesture" recognition service, and "step counting" service respectively. In other words, every time the second relay unit obtains 1 acceleration data point from the CPU small core, it distributes that 1 acceleration data point to each of the three services separately.
[0228] The "calorie" calculation service calculates the calories consumed by the user within 100ms after receiving acceleration data corresponding to 100ms. The "motion status" recognition service identifies the user's motion status within 10ms after receiving acceleration data corresponding to 10ms. The "gesture" recognition service identifies the user's gesture within 10ms after receiving acceleration data corresponding to 10ms. The "step counting" service calculates the number of steps taken by the user within 10ms after receiving acceleration data corresponding to 10ms.
[0229] (4) The CPU big core summarizes the processing results of multiple services.
[0230] For example: the CPU big core stores and accumulates the calories consumed by the user obtained from the "calorie" calculation business; the CPU big core summarizes the user's movement status obtained from the "movement status" recognition business in chronological order; the CPU big core summarizes the user's gestures obtained from the "gesture" recognition business in chronological order; and the CPU big core stores and accumulates the number of steps generated by the user obtained from the "step counting" business.
[0231] (5) The CPU core sends the aggregated business data to the display modules such as the display screen according to the business display requirements.
[0232] In this method, the control of the sensor by the service is cross-core control. The service in the CPU big core needs to acquire sensor data from the sensor at a high frequency across the core. Each time sensor data is acquired, the CPU big core needs to be woken up once, which leads to the CPU big core being woken up frequently, resulting in a large power consumption.
[0233] In some embodiments, for sensors that are not frequently used, such as global positioning system (GPS), temperature sensors, and pressure sensors, the sensors can be attached to the CPU core. Sensor-related services (also referred to as sensor services, or services in this application, such as first service, second service, etc.) can reside in the CPU core, with the CPU core acquiring sensor data from the sensor. In this way, the interaction between the sensor and the service is a single-core interaction, meaning that the sensor and the service share the CPU core, and the use is triggered by a single user activation. Furthermore, multiple services can use the same sensor and acquire sensor data from the same sensor. In this method, sensor data needs to be distributed to the corresponding service at a corresponding frequency period based on the sensor parameters corresponding to each service. This results in a large amount of sensor data being distributed and complex sensor data aggregation and processing, which also leads to significant power consumption in the electronic device.
[0234] In normal circumstances, the device only needs to show the user the results of the CPU's large core processing and summarizing the sensor data. The display frequency is much lower than the frequency at which the CPU's large core is woken up. For example, services such as step counting and calorie calculation require high-frequency interaction with the sensor, but the displayed results do not need to be refreshed frequently. They only need to be refreshed when the user triggers the device to turn on the screen, or at a minimum frequency of 1 second when the device is in a constant screen state. This also shows that the large amount of power consumption generated in the above method is unnecessary power consumption, that is, there is a serious power waste.
[0235] In view of this, embodiments of this application provide a data processing method, electronic device, and system. In this method, sensor data can be processed outside the CPU core to obtain business data, and then the business data is sent to the CPU core according to the frequency at which the CPU core processes business data. In this way, since the frequency at which the CPU core processes business data is much lower than the frequency at which the business processes sensor data, the frequency at which the CPU core is woken up can be greatly reduced, thereby reducing the power consumption of the electronic device.
[0236] It is understood that the method provided in this application can be applied to interaction scenarios between low-performance processing units and high-performance processing units, such as the interaction scenario between a first processing unit and a second processing unit. In this case, the processing performance of the first processing unit is weaker than that of the second processing unit. The first processing unit may include one or more services. The first processing unit can process the acquired sensor data in the service to obtain service data corresponding to the service.
[0237] Among them, low-performance processing units and high-performance processing units are relative results of comparing two processing units in terms of processing performance, computing power level, or hardware capabilities. The "low performance" of a low-performance processing unit is relative to that of a high-performance processing unit, and similarly, the "high performance" of a high-performance processing unit is relative to that of a low-performance processing unit. The computing power level of a low-performance processing unit is lower than that of a high-performance processing unit. For the same processing task, the power consumption generated by a low-performance processing unit is lower than that generated by a high-performance processing unit.
[0238] In some embodiments, when two processing units meet one or more of the above judgment criteria, the two processing units can be considered as a combination of a high-performance processing unit and a low-performance processing unit. The above judgment criteria include judgment criterion 1: one is high and the other is low in processing performance; judgment criterion 2: one is high and the other is low in computing power; judgment criterion 3: one is strong and the other is weak in hardware capability. The "one is high and the other is low" and "one is strong and the other is weak" mentioned here are also relative results of comparison between the two processing units.
[0239] It can also be understood that the difference between low-performance processing units and high-performance processing units lies in processing performance. The embodiments of this application do not limit the factors that cause the performance difference between the two. For example, it may be caused by the performance of the core of the processing unit, or by the performance of the terminal device or the server that carries the processing unit.
[0240] The processing unit can be a processor core, processor, terminal device, server, chip, etc.
[0241] It is also understood that the embodiments of this application do not limit the location of the low-performance processing unit and the high-performance processing unit. The low-performance processing unit and the high-performance processing unit can be set separately. For example, the low-performance processing unit and the high-performance processing unit can be set on different devices. For example, the low-performance processing unit is the processor of one device and the high-performance processing unit is the processor of another device, or the low-performance processing unit is the core of the processor of one device and the high-performance processing unit is the core of the processor of another device, or they can be set on different chips of the same device, or they can be set on different processors of the same device. For example, the low-performance processing unit and the high-performance processing unit can be two processors of the same device, or they can be the cores of two processors of the same device. The low-performance processing unit and the high-performance processing unit can also be not set separately. For example, the low-performance processing unit and the high-performance processing unit can be set on the same chip, or they can be set on the same processor, respectively as the first core and the second core of the processor.
[0242] The device may include a server or a terminal device. Furthermore, the embodiments of this application do not limit the specific location of the low-performance processing unit and the high-performance processing unit on the device. For example, the location may be determined according to the main structure of the device and adapted to the main structure of the device.
[0243] In one example, the low-performance processing unit and the high-performance processing unit can be located on different types of devices, such as one on a terminal device and the other on a server. The terminal device and the server have different processing performance, which may be reflected in the processing speed of the same data, the accuracy of the processing results, the power consumption generated during the processing, etc.
[0244] It is understandable that: the following Figure 5 The illustrated embodiments Figure 8 The illustrated embodiments Figure 10 The illustrated embodiments and Figure 12 The illustrated embodiment takes the interaction scenario between the first processing unit and the second processing unit as an example. More specifically, Figure 5 The illustrated embodiments and Figure 10 The illustrated embodiment is given by taking the example of a first processing unit including a first service; Figure 8 The illustrated embodiment is given by taking the example of a first processing unit including a first service and a second service; Figure 12 The illustrated embodiment is given by taking the example of a first processing unit including a first service and a third service.
[0245] the following Figure 15The illustrated embodiment uses an interaction scenario between a first processing unit, a second processing unit, and a third processing unit as an example. The first processing unit is a low-performance processing unit, while the second and third processing units are high-performance processing units. Furthermore, Figure 15 The illustrated embodiment is given by taking the example of a first processing unit including a first service and a fourth service.
[0246] the following Figure 17 The illustrated embodiment uses an interaction scenario between a first processing unit, a second processing unit, and a fourth processing unit as an example. The first and fourth processing units are low-performance processing units, while the second processing unit is a high-performance processing unit. Furthermore, Figure 17 The illustrated embodiment is given by taking the example of a first processing unit including a first service and a fourth processing unit including a fifth service.
[0247] the following Figure 19 The illustrated embodiment uses an interaction scenario between a first processing unit, a second processing unit, a third processing unit, and a fourth processing unit as an example. The first and fourth processing units are low-performance processing units, while the second and third processing units are high-performance processing units. Furthermore, Figure 19 The illustrated embodiment is given by taking the example of a first processing unit including a first service and a fourth processing unit including a sixth service.
[0248] The first processing unit and / or the fourth processing unit may also include three or more services. The application scenario may also be an interaction scenario between one or more low-performance processing units and one or more high-performance processing units. The sensing data acquired by the services included in the first processing unit and / or the fourth processing unit may be collected by one or more sensors, which is not limited in this application.
[0249] Before introducing the embodiments of this application, the lightweight services involved in the embodiments of this application will be introduced first.
[0250] Lightweight services are a type of service relative to traditional high-performance services. Their main characteristics are low resource consumption, simple deployment, fast response speed, and low hardware requirements and maintenance costs.
[0251] For example, lightweight services are used in scenarios with low performance requirements, such as building simple networks, testing learning environments, personal blogs, file storage and sharing, and other low-load scenarios; high-performance services are used in scenarios with high performance requirements, such as building complex networks for large enterprises and high-load applications.
[0252] Lightweight services can reside in low-performance processing units. Furthermore, business processes can reside in lightweight services, and sensor data can be processed within business processes to obtain business data. This enables the processing of sensor data collected by sensors within low-performance processing units.
[0253] For example, the first processing unit includes a lightweight service, which includes a first service. After acquiring sensing data from the sensor, the first processing unit can process the sensing data in the first service to obtain first service data corresponding to the first service.
[0254] It is understood that the low-performance processing unit and high-performance processing unit mentioned in the embodiments of this application may refer to the processing unit having limited resources and relatively weak computing power.
[0255] For example, Figure 5 The diagram illustrates an interaction of a data processing method 500 provided in an embodiment of this application. The method 500 is applied to the interaction between a first processing unit and a second processing unit, wherein the processing performance of the first processing unit is weaker than that of the second processing unit.
[0256] The first processing unit may include one or more services, wherein the sensing data acquired by each of the one or more services may be obtained by one or more sensors. In other words, the service data determined by each of the one or more services may be obtained based on the sensing data collected by one or more sensors.
[0257] It is understood that this embodiment is described using the example of a first processing unit including a first service; and using the example of determining service data based on sensing data collected by a sensor.
[0258] In some embodiments, the first service included in the first processing unit in this embodiment can be understood as a module with data processing capabilities included in the first processing unit.
[0259] The method 500 includes:
[0260] S501: The first processing unit acquires first sensing data from the first sensor at a first frequency.
[0261] The fact that the processing performance of the first processing unit is weaker than that of the second processing unit can mean that the hardware capabilities of the first processing unit are weaker than those of the second processing unit. When the hardware capabilities of both the first and second processing units can meet the data processing requirements, compared to the second processing unit, the first processing unit consumes fewer resources, is simpler to deploy, and has a faster response speed when processing the same data. In other words, the first processing unit consumes less power.
[0262] In one example, acceleration data is preprocessed, i.e., the calorie data for the first time period is obtained based on the acceleration data for the first time period. Both the first processing unit and the second processing unit can perform this operation, but the first processing unit consumes less power when performing this operation compared to the second processing unit.
[0263] In some embodiments, the first processing unit acquires first sensing data from the first sensor at a first frequency, which can also be described as: the first processing unit acquires first sensing data from the first sensor at a first time interval.
[0264] It is understandable that the first frequency does not refer to a fixed frequency; the first frequency can vary. Similarly, the first duration does not refer to a fixed duration; it can also vary.
[0265] It is understood that the first processing unit or the second processing unit can refer to the core of a processor, or it can refer to the processor itself. For example, the first processing unit may be a first processor, and the second processing unit may be a second processor, or the first processing unit may be the first core of a processor, and the second processing unit may be the second core of a processor. It is also understood that the first processing unit or the second processing unit can refer to a chip, a device, or other devices equipped with processing units, and this application does not limit this.
[0266] In one example, the first processor is the sensorhub, and the second processor is the CPU.
[0267] In some embodiments, the first processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; the second processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA.
[0268] It is also understood that the first processing unit and the second processing unit described in the embodiments of this application can be configured separately. For example, if both the first processing unit and the second processing unit are processors, they can be located in different devices or chips; or if both the first processing unit and the second processing unit are cores of a processor, they can be cores of different processors. Alternatively, the first processing unit and the second processing unit can be configured together. For example, if both the first processing unit and the second processing unit are processors, they can be located in the same device or chip; or if both the first processing unit and the second processing unit are cores of the same processor, they can be two cores with different performance characteristics.
[0269] For example, the first processing unit and the second processing unit are described using the core of a processor as an example. The first processing unit and the second processing unit can be located in the same processor, such as a CPU, GPU, or sensor hub. The first processing unit and the second processing unit can also be located in different processors, such as one of the first processing unit and the second processing unit being located in a sensor hub and the other being located in a CPU.
[0270] In one example, the first processing unit can be a Cortex-M33 core, and the second processing unit can be a Cortex-M55 core. Further optionally, the first processing unit can be a sensor hub core, specifically a Cortex-M33 core, and the second processing unit can be a CPU core, specifically a Cortex-M55 core.
[0271] Furthermore, the first processing unit and the second processing unit can be located in the same device or in different devices; the first processing unit and the second processing unit can be located in the same chip or in different chips.
[0272] In one example, the first processing unit is the small core of the device's CPU, and the second processing unit is the large core of the device's CPU. The first processing unit and the second processing unit can be located in the same CPU or in different CPUs; or, the first processing unit and the second processing unit can be located in the same device or in different devices, wherein the device can be a server or a terminal device.
[0273] For example, the small core of the CPU can be a Cortex-M33 core, and the large core of the CPU can be a Cortex-M55 core. That is, the first processing unit can be a Cortex-M33 core of the CPU, and the second processing unit can be a Cortex-M55 core of the CPU.
[0274] In some embodiments, the first processing unit is located on a first server and the second processing unit is located on a second server, wherein the first server may be a lightweight server and the second server may be a high-performance server.
[0275] Lightweight servers are a type of server relative to high-performance servers. Their main characteristics are low resource consumption, simple deployment, fast response speed, and low hardware requirements and maintenance costs.
[0276] In some embodiments, the first sensor may include one or more of the following: a photoplethysmography sensor (PPG), an accelerometer, a gyroscope, an A+G sensor, an ECG sensor, a barometer, and a magnetometer. In addition, the first sensor may also include other sensors, which are not limited in this application.
[0277] Among them, A+G sensor refers to the combination of accelerometer and gyroscope sensor; ECG sensor is a device used to measure the electrical activity of the heart. It assesses the health of the heart by recording the changes in electrical activity generated by the heart in each cardiac cycle.
[0278] The first sensing data refers to the data collected by the first sensor. For example, when the first sensing data is acceleration data, the first sensor can be an acceleration sensor; when the first sensing data is sensing data used to calculate heart rate, the first sensor can be a PPG sensor, where the sensing data used to calculate heart rate can be the number of heartbeats per minute collected by the PPG sensor.
[0279] The first frequency can be the frequency at which the first processing unit processes the first sensor data in the first service.
[0280] S502: The first processing unit obtains the first service data based on the first sensing data, wherein the first service data corresponds to the first service.
[0281] In some embodiments, the first processing unit includes a first service. After acquiring first sensing data from the first sensor, the first processing unit processes the first sensing data in the first service to obtain first service data corresponding to the first service.
[0282] In some embodiments, the first service may be any one of the following: calorie calculation service, motion status recognition service, gesture recognition service, step counting service, heart rate calculation service, cardiac electrical activity measurement service, barometric pressure measurement service, and magnetic force measurement service. The first service may also be other services that require the acquisition of sensor data, and this application does not limit this.
[0283] Specifically, the first business data corresponds to the first business. The function and type of the first business data correspond to the function and type of the first business, and the first business can fulfill its display requirements through the first business data. For example, when the first business is calorie calculation, the first business data is calorie data; when the first business is step counting, the first business data is step count; when the first business is heart rate calculation, the first business data is heart rate data.
[0284] S503: The first processing unit sends the first service data to the second processing unit at a second frequency, wherein the second frequency is lower than the first frequency.
[0285] In some embodiments, the first processing unit sends the first service data to the second processing unit at a second frequency, which can also be described as: the first processing unit sends the first service data to the second processing unit at a second time interval, wherein the first time interval is less than the second time interval.
[0286] It is understood that the second frequency does not specifically refer to a fixed frequency; the second frequency can vary. Similarly, the second duration also does not specifically refer to a fixed duration and can also vary. In some embodiments, preferably, the second frequency can be the frequency at which the second processing unit processes the first service data. This ensures that the frequency at which the second processing unit receives the first service data is the same as the frequency at which the second processing unit processes the first service data, enabling the second processing unit to effectively process the first service data in each processing cycle, avoiding idle processing or overload processing. This results in a more stable load level for the second processing unit and reduces the power consumption of the device.
[0287] In some embodiments, the second frequency may be lower than the frequency at which the second processing unit processes the first service data. In this way, the frequency at which the second processing unit receives the first service data is lower than the frequency at which the second processing unit processes the first service data. Although the second processing unit has idle processing and centralized data processing, the frequency at which the second processing unit is woken up can be further reduced, thereby further reducing the power consumption of the electronic device.
[0288] In some embodiments, the second frequency can be higher than the frequency at which the second processing unit processes the first service data. In this way, the frequency at which the second processing unit receives the first service data is higher than the frequency at which the second processing unit processes the first service data, and there is no idle processing situation for the second processing unit. Since the second frequency is lower than the first frequency, compared with the existing method, the frequency at which the second processing unit is woken up can also be reduced, which can also reduce the power consumption of the electronic device.
[0289] In one example, the second frequency is the frequency at which the second processing unit processes the first service data. When the first service is a calorie calculation service, the first service data is calorie data. The second processing unit can receive the calorie data at the second frequency and also add the received calorie data to the existing calorie data at the second frequency.
[0290] In one example, the second frequency is the frequency at which the second processing unit processes the first service data. When the first service is a step calculation service, the first service data is the number of steps. The second processing unit can receive the number of steps at the second frequency and also add the received number of steps to the existing number of steps at the second frequency.
[0291] Optionally, the method 500 may further include the following steps:
[0292] S504: After receiving the first service data, the second processing unit processes the first service data.
[0293] In some embodiments, the second processing unit processes the first business data. The processing methods may include accumulating the business data based on the first business data, refreshing the business data based on the first business data, and performing time-segmented statistics on the business data based on the first business data.
[0294] In one possible implementation, the second processing unit may process the first service data to display the processed first service data.
[0295] When the first business is calorie calculation, the processing method can be to accumulate the business data based on the data from the first business.
[0296] In one example, when the first service is a calorie calculation service, the first service data is calorie data, and the second processing unit can add the received calorie data to the existing calorie data at a second frequency.
[0297] In one example, when the first service is a step count calculation service, the first service data is the number of steps, and the second processing unit can add the received step count to the existing step count at a second frequency.
[0298] When the first service is heart rate calculation, the processing method can be to refresh the service data based on the data from the first service.
[0299] In one example, when the first service is heart rate calculation, the first service data is heart rate data. The second processing unit can update the received heart rate data to the current heart rate data at a second frequency, that is, refresh the previously received heart rate data.
[0300] When the primary service is calorie calculation, the processing method can also be to perform time-segmented statistics on the service data based on the data from the primary service.
[0301] In one example, when the first service is a calorie calculation service, the first service data is calorie data, and the second processing unit can accumulate the calorie data received this time into the calorie data corresponding to a certain time period before the current time at a second frequency.
[0302] S505: When the first service needs to be displayed, the second processing unit generates the display data corresponding to the first service based on the processed first service data.
[0303] S506: The second processing unit sends the display data corresponding to the first service to the display unit.
[0304] The display unit can be used to display the display data corresponding to the first service to the user after receiving the display data corresponding to the first service.
[0305] For example, the display unit can be any type of display screen, such as an LED display screen, an LCD display screen, etc.
[0306] In some embodiments, when the electronic device is in a constantly lit screen state, the data displayed on the screen of the electronic device is updated periodically. It can be considered that the electronic device generates a display request for the first service every one or several cycles, that is, the second processing unit generates and reports the display data corresponding to the first service every one or several cycles.
[0307] In some embodiments, when the electronic device is in a screen-off state, when the state of the electronic device changes from a screen-off state to a screen-on state, the electronic device generates a display requirement for the first service. That is, when the state of the electronic device changes from a screen-off state to a screen-on state, the second processing unit generates and reports the display data corresponding to the first service.
[0308] In some embodiments, when the electronic device is currently in a screen-on state and no display data corresponding to the first service is displayed on the screen, the electronic device generates a display requirement for the first service when the screen of the electronic device is triggered to start displaying the display data corresponding to the first service. That is, when the screen of the electronic device is triggered to start displaying the display data corresponding to the first service, the second processing unit generates and reports the display data corresponding to the first service.
[0309] In one possible implementation of this application, the sensor data is processed by a low-performance processing unit to obtain service data, and then the service data is sent to a high-performance processing unit at a frequency lower than that of the low-performance processing unit. This reduces the frequency at which the high-performance processing unit is woken up, thereby reducing the power consumption of the electronic device.
[0310] exist Figure 5 Based on the illustrated embodiments, by way of example, Figure 6 The diagram shows the layout of two first processing units and a second processing unit provided in the embodiments of this application.
[0311] like Figure 6 As shown in (a), the first processing unit and the second processing unit can be located in the same device, for example, the first processing unit and the second processing unit can both be located in the first device.
[0312] In some embodiments, the first processing unit is a first processor, and the second processing unit is a second processor; or the first processing unit is a first core of the processor, and the second processing unit is a second core of the processor. It is understood that the first processing unit or the second processing unit may also refer to a chip, and this application does not limit this.
[0313] In one example, the first processor is the sensorhub, and the second processor is the CPU.
[0314] In some embodiments, the first processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; the second processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA.
[0315] In one example, the first processing unit is a small CPU core of the first device, and the second processing unit is a large CPU core of the first device. The first processing unit and the second processing unit can be located in the same CPU or in different CPUs.
[0316] For example, the small core of the CPU can be a Cortex-M33 core, and the large core of the CPU can be a Cortex-M55 core. That is, the first processing unit can be a Cortex-M33 core of the CPU, and the second processing unit can be a Cortex-M55 core of the CPU.
[0317] In one example, the first processing unit could be a smart sensor hub, and the second processing unit could be a CPU core.
[0318] In one example, the first processing unit can be a Cortex-M33 core, and the second processing unit can be a Cortex-M55 core. In one possible implementation, the first processing unit can be the core of the sensor hub on the first device, specifically a Cortex-M33 core, and the second processing unit can be the core of the CPU on the first device, specifically a Cortex-M55 core.
[0319] like Figure 6 As shown in (b), the first processing unit and the second processing unit can be located in different devices. For example, the first processing unit can be located in the first device, and the second processing unit can be located in the second device. The first device can be a first server or a first terminal device, and the second device can be a second server or a second terminal device.
[0320] In some embodiments, the first processing unit is a first processor, the second processing unit is a second processor, or the first processing unit is a first core of the processor, and the second processing unit is a second core of the processor.
[0321] In one example, the first processor is the sensorhub, and the second processor is the CPU.
[0322] In some embodiments, the first processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; the second processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA.
[0323] In one example, the first processing unit is the small CPU core of the first device, and the second processing unit is the large CPU core of the second device.
[0324] In one example, the first processing unit can be a Cortex-M33 core, and the second processing unit can be a Cortex-M55 core. In one possible implementation, the first processing unit can be the core of the sensor hub on the first device, specifically a Cortex-M33 core, and the second processing unit can be the core of the CPU on the second device, specifically a Cortex-M55 core.
[0325] In some embodiments, the first processing unit is located on a first server and the second processing unit is located on a second server, wherein the first server may be a lightweight server and the second server may be a high-performance server.
[0326] It is understandable that "lightweight" and "high-performance" in lightweight servers and high-performance servers refer to the comparison of the processing performance of the two servers. The processing performance of lightweight servers is weaker than that of high-performance servers. Specifically, this can be reflected in the fact that the computing power of lightweight servers is lower than that of high-performance servers, and / or, the amount of resources required for lightweight servers to run is lower than that required for high-performance servers to run.
[0327] The first device and the second device can communicate with each other; the first server and the second server can communicate with each other.
[0328] For example, combined Figure 7 Taking the first processing unit as a small CPU core and the second processing unit as a large CPU core as an example, the data processing method 500 provided in the embodiments of this application will be described in detail.
[0329] like Figure 7As shown, the CPU small core includes lightweight services, and the lightweight services include the first service. The interaction process between the first sensor, the CPU small core, and the CPU large core is as follows:
[0330] (1) The CPU small core acquires the first sensing data from the first sensor at the first frequency.
[0331] (2) After the CPU small core obtains the first sensor data, it processes the first sensor data through the first service to obtain the first service data corresponding to the first service.
[0332] Among them, the explanations of the first sensor, the first service, and the first service data, as well as the relationship between the first sensor, the first service, and the first service data, are detailed in [the relevant section]. Figure 5 The embodiments shown are described in detail, and for the sake of brevity, they will not be repeated here.
[0333] (3) The small CPU core sends the first service data to the large CPU core at the second frequency.
[0334] (4) After receiving the first service data, the CPU big core processes the first service data.
[0335] The explanation regarding the processing of the first business data is as follows: Figure 5 The embodiments shown are described in detail, and for the sake of brevity, they will not be repeated here.
[0336] (5) When the first service has a display requirement, the CPU core generates the display data corresponding to the first service based on the processed first service data, and sends the display data corresponding to the first service to the display unit.
[0337] The display unit may include, for example, the display screen of an electronic device.
[0338] For further explanation of steps (1) to (5) above, please refer to [link to relevant documentation]. Figure 5 Description of the illustrated embodiment.
[0339] For example, Figure 8 This illustration shows an interactive schematic diagram of another data processing method 800 provided in an embodiment of this application. The method 800 is applied to the interaction between a first processing unit and a second processing unit, wherein the processing performance of the first processing unit is weaker than that of the second processing unit.
[0340] The first processing unit may include one or more services, wherein the sensing data acquired by each of the one or more services may be obtained by one or more sensors. In other words, the service data determined by each of the one or more services may be obtained based on the sensing data collected by one or more sensors.
[0341] It is understood that this embodiment is described using the example of a first processing unit including a first service and a second service; and using the example of determining multiple service data based on sensing data collected by a sensor.
[0342] In some embodiments, the first service and the second service included in the first processing unit in this embodiment can be understood as two modules with data processing capabilities included in the first processing unit.
[0343] It is understood that the first processing unit or the second processing unit may refer to the core of a processor, or it may refer to the processor itself. For example, the first processing unit may be a first processor, and the second processing unit may be a second processor, or the first processing unit may be the first core of a processor, and the second processing unit may be the second core of a processor. It is also understood that the first processing unit or the second processing unit may refer to a chip, a device, or other devices equipped with processing units, and this application does not limit this.
[0344] In one example, the first processor is the sensorhub, and the second processor is the CPU.
[0345] In some embodiments, the first processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; the second processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA.
[0346] It is also understood that the first processing unit and the second processing unit described in the embodiments of this application can be configured separately. For example, if both the first processing unit and the second processing unit are processors, they can be located in different devices or chips; or if both the first processing unit and the second processing unit are cores of a processor, they can be cores of different processors. Alternatively, the first processing unit and the second processing unit can be configured together. For example, if both the first processing unit and the second processing unit are processors, they can be located in the same device or chip; or if both the first processing unit and the second processing unit are cores of the same processor, they can be two cores with different performance characteristics.
[0347] For example, the first processing unit and the second processing unit are described using the core of a processor as an example. The first processing unit and the second processing unit can be located in the same processor, such as a CPU, GPU, or sensor hub. The first processing unit and the second processing unit can also be located in different processors, such as one of the first processing unit and the second processing unit being located in a sensor hub and the other being located in a CPU.
[0348] In one example, the first processing unit can be a Cortex-M33 core, and the second processing unit can be a Cortex-M55 core. Further optionally, the first processing unit can be a sensor hub core, specifically a Cortex-M33 core, and the second processing unit can be a CPU core, specifically a Cortex-M55 core.
[0349] Furthermore, the first processing unit and the second processing unit can be located in the same device or in different devices; the first processing unit and the second processing unit can be located in the same chip or in different chips.
[0350] In one example, the first processing unit is the small core of the device's CPU, and the second processing unit is the large core of the device's CPU. The first processing unit and the second processing unit can be located in the same CPU or in different CPUs; or, the first processing unit and the second processing unit can be located in the same device or in different devices, wherein the device can be a server or a terminal device.
[0351] For example, the small core of the CPU can be a Cortex-M33 core, and the large core of the CPU can be a Cortex-M55 core. That is, the first processing unit can be a Cortex-M33 core of the CPU, and the second processing unit can be a Cortex-M55 core of the CPU.
[0352] The method 800 includes:
[0353] S801: The first processing unit acquires first sensing data from the first sensor at a first frequency. In some embodiments, the first processing unit acquiring first sensing data from the first sensor at a first frequency can also be described as: the first processing unit acquires first sensing data from the first sensor at a first time interval.
[0354] It is understandable that the first frequency does not refer to a fixed frequency; the first frequency can vary. Similarly, the first duration does not refer to a fixed duration; it can also vary.
[0355] S802: The first processing unit obtains the first service data based on the first sensing data, wherein the first service data corresponds to the first service.
[0356] Among them, the explanations of S801 to S802 are... Figure 5 The explanations of S501 to S502 in the illustrated embodiments are the same, and for the sake of brevity, they will not be repeated here.
[0357] S803: The first processing unit obtains the second service data based on the first sensing data, wherein the second service data corresponds to the second service.
[0358] In some embodiments, the first processing unit further includes a second service. After acquiring the first sensing data from the first sensor, the first processing unit processes the first sensing data in the second service to obtain second service data corresponding to the second service.
[0359] In some embodiments, the second service may be any one of the following: calorie calculation service, motion status recognition service, gesture recognition service, step counting service, heart rate calculation service, cardiac electrical activity measurement service, barometric pressure measurement service, and magnetic force measurement service. The second service may also be other services that require the acquisition of sensor data, and this application does not limit it.
[0360] The first business and the second business can be different.
[0361] The second business data corresponds to the second business. Specifically, the function and type of the second business data correspond to the function and type of the second business, and the second business can realize its display requirements through the second business data. For example, when the second business is calorie calculation, the second business data is calorie data; when the second business is step counting, the second business data is step count; when the second business is heart rate calculation, the second business data is heart rate data.
[0362] The first frequency can be the maximum frequency between the frequency at which the first processing unit processes the first sensor data in the first service and the frequency at which it processes the first sensor data in the second service.
[0363] It is understandable that, since the same sensor receives different instructions from different services, the frequency at which the same sensor sends sensing data to different services may be different. The first processing unit can send a unified instruction generated according to multiple instructions corresponding to multiple services to the sensor. This unified instruction is used to acquire sensing data from the sensor at the highest frequency among the multiple frequencies corresponding to multiple services. Then, the first processing unit distributes sensing data to different services according to the frequency required by different services. In this way, the different frequency control of the same sensor by multiple services can be reduced.
[0364] Similarly, when the first processing unit sends different service data to the second processing unit, the transmission frequency of the different service data may be different. The first processing unit can send these different service data to the second processing unit at the highest frequency among the frequencies at which the second processing unit processes the different service data. After receiving these different service data, the second processing unit obtains the corresponding service data according to its respective processing frequency.
[0365] It is understandable that S802 can be executed before S803, or S802 can be executed simultaneously with S803, or S802 can be executed after S803.
[0366] S804: The first processing unit sends the first service data to the second processing unit at a second frequency, wherein the second frequency is lower than the first frequency.
[0367] The explanation of this step and Figure 5 The explanation of S503 in the illustrated embodiment is the same, and for the sake of brevity, it will not be repeated here.
[0368] S805: The first processing unit sends the second service data to the second processing unit at a third frequency, wherein the third frequency is lower than the first frequency.
[0369] In some embodiments, the first processing unit sends the second service data to the second processing unit at a third frequency, which can also be described as: the first processing unit sends the second service data to the second processing unit at a third time interval, wherein the first time interval is less than the third time interval.
[0370] It is understandable that the third frequency does not refer to a fixed frequency; the third frequency can vary. Similarly, the third duration does not refer to a fixed duration; it can also vary.
[0371] The second and third frequencies can be the same or different.
[0372] When the second frequency and the third frequency are the same, the first processing unit can send the first service data and the second service data together to the second processing unit, or the first processing unit can send the first service data and the second service data to the second processing unit separately.
[0373] In some embodiments, preferably, the third frequency can be the frequency at which the second processing unit processes the second service data. This ensures that the frequency at which the second processing unit receives the second service data is the same as the frequency at which the second processing unit processes the second service data, enabling the second processing unit to effectively process the second service data in each processing cycle without idle processing or overload processing. This results in a more stable load level for the second processing unit and reduces the power consumption of the device.
[0374] In some embodiments, the third frequency may be lower than the frequency at which the second processing unit processes the second service data. In this way, the frequency at which the second processing unit receives the second service data is lower than the frequency at which the second processing unit processes the second service data. Although the second processing unit has idle processing and centralized data processing, the frequency at which the second processing unit is woken up can be further reduced, thereby further reducing the power consumption of the electronic device.
[0375] In some embodiments, the third frequency can be higher than the frequency at which the second processing unit processes the second service data. In this way, the frequency at which the second processing unit receives the second service data is higher than the frequency at which the second processing unit processes the second service data. The second processing unit does not have an idle processing situation. Compared with the existing method, it can also reduce the frequency at which the second processing unit is woken up, and can also reduce the power consumption of the electronic device.
[0376] In one example, the third frequency is the frequency at which the second processing unit processes the second service data. When the second service is a calorie calculation service, the second service data is calorie data. The second processing unit can receive the calorie data at the third frequency and then add the received calorie data to the existing calorie data at the same third frequency.
[0377] In one example, the third frequency is the frequency at which the second processing unit processes the second service data. When the second service is a step count service, the second service data is the number of steps. The second processing unit can receive calorie data at the third frequency and then add the received step count to the existing step count at the same third frequency.
[0378] In some embodiments, the first processing unit may send first service data to the second processing unit at the maximum frequency of the second and third frequencies; and send second service data to the second processing unit at the maximum frequency of the second and third frequencies.
[0379] Specifically, when the first processing unit sends the first service data and the second service data to the second processing unit at the maximum frequency between the second frequency and the third frequency, the first service data and the second service data can be sent to the second processing unit together, or the first service data and the second service data can be sent to the second processing unit separately.
[0380] It is understandable that S804 can be executed before S805, or S804 can be executed simultaneously with S805, or S804 can be executed after S805.
[0381] Optionally, the method 800 may further include the following steps:
[0382] S806: After receiving the first service data, the second processing unit processes the first service data.
[0383] The explanation of this step and Figure 5 The explanation of S504 in the illustrated embodiment is the same, and for the sake of brevity, it will not be repeated here.
[0384] S807: After receiving the second service data, the second processing unit processes the second service data.
[0385] In some embodiments, the second processing unit processes the second business data. The processing methods may include accumulating the business data based on the second business data, refreshing the business data based on the second business data, and performing time-segmented statistics on the business data based on the second business data.
[0386] When the second service is calorie calculation, the processing method can be to accumulate the service data based on the data from the second service.
[0387] In one example, when the second service is a calorie calculation service, the second service data is calorie data, and the second processing unit can add the received calorie data to the existing calorie data at a third frequency.
[0388] In one example, when the second service is a step count calculation service, the second service data is the number of steps, and the second processing unit can add the received step count to the existing step count at a third frequency.
[0389] When the second service is heart rate calculation, the processing method can be to refresh the service data based on the data from the second service.
[0390] In one example, when the second service is heart rate calculation, the second service data is heart rate data. The second processing unit can update the received heart rate data to the current heart rate data at a third frequency, that is, refresh the previously received heart rate data.
[0391] When the second service is calorie calculation, the processing method can also be to perform time-segmented statistics on the service data based on the data from the second service.
[0392] In one example, when the second service is a calorie calculation service, the second service data is calorie data. The second processing unit can accumulate the calorie data received this time into the calorie data corresponding to a certain time period before the current time at a third frequency.
[0393] It is understandable that S806 can be executed before S807, or S806 can be executed simultaneously with S807, or S806 can be executed after S807.
[0394] S808: When the first service needs to be displayed, the second processing unit generates display data corresponding to the first service based on the processed first service data; and / or, when the second service needs to be displayed, the second processing unit generates display data corresponding to the second service based on the processed second service data.
[0395] S809: The second processing unit sends the display data corresponding to the first service to the display unit; and / or, the second processing unit sends the display data corresponding to the second service to the display unit.
[0396] It is understandable that S809 can be a single step or split into two steps. The second processing unit can send the display data corresponding to the first service and the display data corresponding to the second service together to the display unit; the second processing unit can also send the display data corresponding to the first service and the display data corresponding to the second service to the display unit separately; or the second processing unit can send one of the display data corresponding to the first service and the display data corresponding to the second service to the display unit.
[0397] Among them, the explanations of S806 to S809 are... Figure 5 The explanations of S504 to S506 in the illustrated embodiments are similar, and for the sake of brevity, they will not be repeated here.
[0398] In this embodiment, the low-performance processing unit can perform different service processing based on the same received sensor data, thereby obtaining different service data. The high-performance processing unit can receive these different service data at a low frequency and process them. When a certain service has a display requirement, it generates the display data corresponding to that service and sends it for display, which can reduce the power consumption of multiple display services at the same time.
[0399] For example, combined Figure 9 Taking the first processing unit as a small CPU core and the second processing unit as a large CPU core as an example, the data processing method 800 provided in the embodiments of this application will be described in detail.
[0400] like Figure 9 As shown, the CPU small core includes lightweight services, which in turn include a first service and a second service. The interaction process between the first sensor, the CPU small core, and the CPU large core is as follows:
[0401] (1) The CPU small core acquires the first sensing data from the first sensor at the first frequency.
[0402] (2) After the CPU small core obtains the first sensor data, it processes the first sensor data through the first service to obtain the first service data corresponding to the first service.
[0403] Among them, the explanations of the first sensor, the first service, and the first service data, as well as the relationship between the first sensor, the first service, and the first service data, are detailed in [the relevant section]. Figure 5 The embodiments shown are described in detail, and for the sake of brevity, they will not be repeated here.
[0404] (3) The first sensor data is processed by the second service to obtain the second service data corresponding to the second service.
[0405] Among them, the interpretation of the second service and the second service data, and the relationship between the first sensor, the second service, and the second service data are discussed. Figure 8 The embodiments shown are described in detail, and for the sake of brevity, they will not be repeated here.
[0406] It is understood that the frequencies at which the first service and the second service process the first sensor data can be different. In one possible implementation, the first frequency can be the higher of the frequencies at which the first service processes the first sensor data and the second service processes the sensor data.
[0407] In one example, taking the first service as calorie calculation and the second service as motion state recognition, the calorie calculation service processes the first sensor data at a frequency of 100ms / time, and the motion state recognition service processes the first sensor data at a frequency of 10m / time. Therefore, the first frequency is the maximum frequency between 100ms / time and 10m / time, which is 10ms / time.
[0408] Similarly, when the first processing unit includes multiple services, the first frequency can be the highest frequency among the frequencies at which the multiple services that need to acquire the first sensing data process the first sensing data.
[0409] This step enables the frequency alignment of multiple services waking up the first sensor.
[0410] (4) The small CPU core sends the first service data to the large CPU core at the second frequency.
[0411] (5) The small CPU core sends the second service data to the large CPU core at the third frequency.
[0412] In some embodiments, the small CPU core can send first service data to the large CPU core at the maximum frequency of the second and third frequencies; and send second service data to the large CPU core at the maximum frequency of the second and third frequencies.
[0413] Specifically, when the small CPU core sends the first service data and the second service data to the large CPU core at the maximum frequency between the second and third frequencies, the first service data and the second service data can be sent to the large CPU core together, or the first service data and the second service data can be sent to the large CPU core separately.
[0414] (6) After receiving the first service data, the CPU big core processes the first service data.
[0415] The explanation regarding the processing of the first business data is as follows: Figure 5 The embodiments shown are described in detail, and for the sake of brevity, they will not be repeated here.
[0416] (7) After receiving the second service data, the CPU big core processes the second service data.
[0417] The explanation regarding the processing of the second business data is as follows: Figure 8 The embodiments shown are described in detail, and for the sake of brevity, they will not be repeated here.
[0418] (8) When the first service has a display requirement, the CPU core generates the display data corresponding to the first service based on the processed first service data, and sends the display data corresponding to the first service to the display unit.
[0419] (9) When the second service has a display requirement, the CPU core generates the display data corresponding to the second service based on the processed second service data, and sends the display data corresponding to the second service to the display unit.
[0420] For example, the small core of the CPU can be a Cortex-M33 core, and the large core of the CPU can be a Cortex-M55 core. That is, the first processing unit can be a Cortex-M33 core of the CPU, and the second processing unit can be a Cortex-M55 core of the CPU.
[0421] For example, Figure 10 This illustration shows an interactive schematic diagram of another data processing method 1000 provided in an embodiment of this application. The method 1000 is applied to the interaction between a first processing unit and a second processing unit, wherein the processing performance of the first processing unit is weaker than that of the second processing unit.
[0422] The first processing unit may include one or more services, wherein the sensing data acquired by each of the one or more services may be obtained by one or more sensors. In other words, the service data determined by each of the one or more services may be obtained based on the sensing data collected by one or more sensors.
[0423] It is understood that this embodiment is described using the example of a first processing unit including a first service; and using the example of determining service data based on sensing data collected by multiple sensors. For example, the first service data is obtained based on the first sensing data collected by the first sensor and the second sensing data collected by the second sensor.
[0424] In some embodiments, the first service included in the first processing unit in this embodiment can be understood as a module with data processing capabilities included in the first processing unit.
[0425] It is understood that the first processing unit or the second processing unit may refer to the core of a processor, or it may refer to the processor itself. For example, the first processing unit may be a first processor, and the second processing unit may be a second processor, or the first processing unit may be the first core of a processor, and the second processing unit may be the second core of a processor. It is also understood that the first processing unit or the second processing unit may refer to a chip, a device, or other devices equipped with processing units, and this application does not limit this.
[0426] In one example, the first processor is the sensorhub, and the second processor is the CPU.
[0427] In some embodiments, the first processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; the second processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA.
[0428] It is also understood that the first processing unit and the second processing unit described in the embodiments of this application can be configured separately. For example, if both the first processing unit and the second processing unit are processors, they can be located in different devices or chips; or if both the first processing unit and the second processing unit are cores of a processor, they can be cores of different processors. Alternatively, the first processing unit and the second processing unit can be configured together. For example, if both the first processing unit and the second processing unit are processors, they can be located in the same device or chip; or if both the first processing unit and the second processing unit are cores of the same processor, they can be two cores with different performance characteristics.
[0429] For example, the first processing unit and the second processing unit are described using the core of a processor as an example. The first processing unit and the second processing unit can be located in the same processor, such as a CPU, GPU, or sensor hub. The first processing unit and the second processing unit can also be located in different processors, such as one of the first processing unit and the second processing unit being located in a sensor hub and the other being located in a CPU.
[0430] In one example, the first processing unit can be a Cortex-M33 core, and the second processing unit can be a Cortex-M55 core. Further optionally, the first processing unit can be a sensor hub core, specifically a Cortex-M33 core, and the second processing unit can be a CPU core, specifically a Cortex-M55 core. Furthermore, the first and second processing units can reside in the same device or in different devices; the first and second processing units can reside on the same chip or on different chips.
[0431] In one example, the first processing unit is the small core of the device's CPU, and the second processing unit is the large core of the device's CPU. The first processing unit and the second processing unit can be located in the same CPU or in different CPUs; or, the first processing unit and the second processing unit can be located in the same device or in different devices, wherein the device can be a server or a terminal device.
[0432] For example, the small core of the CPU can be a Cortex-M33 core, and the large core of the CPU can be a Cortex-M55 core. That is, the first processing unit can be a Cortex-M33 core of the CPU, and the second processing unit can be a Cortex-M55 core of the CPU.
[0433] The method 1000 includes:
[0434] S1001: The first processing unit acquires first sensing data from the first sensor at a first frequency.
[0435] The explanation of this step and Figure 5 The explanation of S501 in the illustrated embodiment is the same, and for the sake of brevity, it will not be repeated here.
[0436] S1002: The first processing unit acquires second sensing data from the second sensor at a fourth frequency.
[0437] The fourth frequency can be the frequency at which the first processing unit processes the second sensor data in the first service.
[0438] In some embodiments, the first processing unit acquires second sensing data from the first sensor at a fourth frequency, which can also be described as: the first processing unit acquires second sensing data from the first sensor every fourth time interval.
[0439] Understandably, the fourth frequency does not refer to a fixed frequency; the fourth frequency can vary. Similarly, the fourth duration does not refer to a fixed duration; it can also vary.
[0440] In some embodiments, the second sensor may include one or more of the following: a PPG sensor, an accelerometer, a gyroscope, an A+G sensor, an ECG sensor, a barometric pressure sensor, and a magnetic sensor. In addition, the second sensor may also include other sensors, which are not limited in this application.
[0441] The second sensing data is the sensing data collected by the second sensor. For example, when the second sensing data is acceleration data, the second sensor can be an acceleration sensor; when the second sensing data is sensing data used to calculate heart rate, the second sensor can be a PPG sensor.
[0442] It is understandable that the fourth frequency and the first frequency can be the same or different.
[0443] It is understandable that S1001 can be executed before S1002, or S1001 can be executed simultaneously with S1002, or S1001 can be executed after S1002.
[0444] S1003: The first processing unit obtains the first service data based on the first sensor data and the second sensor data, wherein the first service data corresponds to the first service.
[0445] For example, the first service is a "motion state" recognition service, the first sensor is an accelerometer, the second sensor is a gyroscope, the first sensing data is acceleration data, the second sensing data is angular velocity data, and after the first processing unit acquires the acceleration data and angular velocity data, it obtains the corresponding motion state based on the acceleration data and angular velocity data.
[0446] S1004: The first processing unit sends the first service data to the second processing unit at the second frequency.
[0447] In some embodiments, the second frequency is lower than the maximum frequency among the first frequency and the fourth frequency. Preferably, the second frequency may be lower than the minimum frequency among the first frequency and the fourth frequency, that is, the second frequency is lower than the first frequency and lower than the fourth frequency.
[0448] In some embodiments, the first processing unit sends the first service data to the second processing unit at a second frequency, which can also be described as: the first processing unit sends the first service data to the second processing unit at a second time interval, wherein the first time interval is less than the second time interval.
[0449] Understandably, the second frequency does not refer to a fixed frequency; the second frequency can vary. Similarly, the second duration does not refer to a fixed duration; it can also vary.
[0450] Optionally, the method 1000 may further include the following steps:
[0451] S1005: After receiving the first service data, the second processing unit processes the first service data.
[0452] S1006: When the first service needs to be displayed, the second processing unit generates the display data corresponding to the first service based on the processed first service data.
[0453] S1007: The second processing unit sends the display data corresponding to the first service to the display unit.
[0454] The explanations of S1003 to S1007 are as follows: Figure 5 The explanations of S502 to S506 in the illustrated embodiments are the same, and for the sake of brevity, they will not be repeated here.
[0455] In this embodiment, the low-performance processing unit can perform the same business processing based on multiple received sensor data, which is applicable to scenarios that rely on multiple sensor data to obtain business data. It can also make the processed business data more accurate, thereby reducing the power consumption of electronic devices while improving the accuracy of the displayed data corresponding to the business.
[0456] For example, combined Figure 11 Taking the first processing unit as a small CPU core and the second processing unit as a large CPU core as an example, the data processing method 1000 provided in the embodiments of this application will be specifically described.
[0457] like Figure 11 As shown, the CPU small core includes a lightweight service, which in turn includes the first service. The interaction process between the first sensor, the second sensor, the CPU small core, and the CPU large core is as follows:
[0458] (1) The CPU small core acquires the first sensing data from the first sensor at the first frequency.
[0459] (2) The CPU small core acquires second sensing data from the second sensor at the fourth frequency.
[0460] (3) After the CPU small core obtains the first sensor data and the second sensor data, it processes the first sensor data and the second sensor data through the first service to obtain the first service data corresponding to the first service.
[0461] Among them, the explanations of the first sensor, the second sensor, the first service, and the first service data, as well as the relationships between the first sensor, the second sensor, the first service, and the first service data, are detailed in [the relevant section]. Figure 10 The embodiments shown are described in detail, and for the sake of brevity, they will not be repeated here.
[0462] (4) The small CPU core sends the first service data to the large CPU core at the second frequency.
[0463] In some embodiments, the second frequency is lower than the maximum frequency among the first frequency and the fourth frequency. Preferably, the second frequency may be lower than the minimum frequency among the first frequency and the fourth frequency, that is, the second frequency is lower than the first frequency and lower than the fourth frequency.
[0464] (5) After receiving the first service data, the CPU big core processes the first service data.
[0465] The explanation regarding the processing of the first business data is as follows: Figure 5 The embodiments shown are described in detail, and for the sake of brevity, they will not be repeated here.
[0466] (6) When the first service has a display requirement, the CPU core generates the display data corresponding to the first service based on the processed first service data, and sends the display data corresponding to the first service to the display unit.
[0467] For example, the small core of the CPU can be a Cortex-M33 core, and the large core of the CPU can be a Cortex-M55 core. That is, the first processing unit can be a Cortex-M33 core of the CPU, and the second processing unit can be a Cortex-M55 core of the CPU.
[0468] For example, Figure 12 This illustration shows an interactive schematic diagram of another data processing method 1200 provided in an embodiment of this application. The method 1200 is applied to the interaction between a first processing unit and a second processing unit, wherein the processing performance of the first processing unit is weaker than that of the second processing unit.
[0469] The first processing unit may include one or more services, wherein the sensing data acquired by each of the one or more services may be obtained by one or more sensors. In other words, the service data determined by each of the one or more services may be obtained based on the sensing data collected by one or more sensors.
[0470] It is understood that this embodiment is described using the example of a first processing unit including a first service and a third service; and using the example of determining multiple service data based on sensing data collected by multiple sensors. For example, the first service data is obtained based on the first sensing data collected by the first sensor, and the third service data is obtained based on the third service data collected by the third sensor.
[0471] In some embodiments, the first service and the third service included in the first processing unit in this embodiment can be understood as two modules with data processing capabilities included in the first processing unit.
[0472] It is understood that the first processing unit or the second processing unit may refer to the core of a processor, or it may refer to the processor itself. For example, the first processing unit may be a first processor, and the second processing unit may be a second processor, or the first processing unit may be the first core of a processor, and the second processing unit may be the second core of a processor. It is also understood that the first processing unit or the second processing unit may refer to a chip, a device, or other devices equipped with processing units, and this application does not limit this.
[0473] In one example, the first processor is the sensorhub, and the second processor is the CPU.
[0474] In some embodiments, the first processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; the second processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA.
[0475] It is also understood that the first processing unit and the second processing unit described in the embodiments of this application can be set separately. For example, if both the first processing unit and the second processing unit are processors, the first processing unit and the second processing unit can be located in different devices or chips; if both the first processing unit and the second processing unit are cores of a processor, the first processing unit and the second processing unit are cores of different processors; they can also be set together without separation. For example, if both the first processing unit and the second processing unit are processors, the first processing unit and the second processing unit can be located in the same device or chip; if both the first processing unit and the second processing unit are cores of a processor, the first processing unit and the second processing unit are two cores of the same processor with different performance.
[0476] For example, the first processing unit and the second processing unit are described using the core of a processor as an example. The first processing unit and the second processing unit can be located in the same processor, such as a CPU, GPU, or sensor hub. The first processing unit and the second processing unit can also be located in different processors, such as one of the first processing unit and the second processing unit being located in a sensor hub and the other being located in a CPU.
[0477] In one example, the first processing unit can be a Cortex-M33 core, and the second processing unit can be a Cortex-M55 core. Further optionally, the first processing unit can be a sensor hub core, specifically a Cortex-M33 core, and the second processing unit can be a CPU core, specifically a Cortex-M55 core.
[0478] Furthermore, the first processing unit and the second processing unit can be located in the same device or in different devices; the first processing unit and the second processing unit can be located in the same chip or in different chips.
[0479] In one example, the first processing unit is the small core of the device's CPU, and the second processing unit is the large core of the device's CPU. The first processing unit and the second processing unit can be located in the same CPU or in different CPUs; or, the first processing unit and the second processing unit can be located in the same device or in different devices, wherein the device can be a server or a terminal device.
[0480] For example, the small core of the CPU can be a Cortex-M33 core, and the large core of the CPU can be a Cortex-M55 core. That is, the first processing unit can be a Cortex-M33 core of the CPU, and the second processing unit can be a Cortex-M55 core of the CPU.
[0481] The method 1200 includes:
[0482] S1201: The first processing unit acquires first sensing data from the first sensor at a first frequency.
[0483] The explanation of this step and Figure 5 The explanation of S501 in the illustrated embodiment is the same, and for the sake of brevity, it will not be repeated here.
[0484] S1202: The first processing unit acquires third sensing data from the third sensor at a fifth frequency.
[0485] The fifth frequency can be the frequency at which the first processing unit processes the third sensor data in the third service.
[0486] In some embodiments, the first processing unit acquires third sensing data from the third sensor at a fifth frequency, which can also be described as: the first processing unit acquires third sensing data from the third sensor every fifth time interval.
[0487] It is understandable that the fifth frequency does not refer to a fixed frequency; the fifth frequency can vary. Similarly, the fifth duration does not refer to a fixed duration; it can also vary.
[0488] In some embodiments, the third sensor may include one or more of the following: a PPG sensor, an accelerometer, a gyroscope, an A+G sensor, an ECG sensor, a barometric pressure sensor, and a magnetic sensor. In addition, the third sensor may also include other sensors, which are not limited in this application.
[0489] The third sensing data is the sensing data collected by the third sensor. For example, when the third sensing data is acceleration data, the third sensor can be an acceleration sensor; when the third sensing data is sensing data used to calculate heart rate, the third sensor can be a PPG sensor.
[0490] Understandably, the fifth frequency can be the same as or different from the first frequency.
[0491] It is understandable that S1201 can be executed before S1202, or S1201 can be executed simultaneously with S1202, or S1201 can be executed after S1202.
[0492] S1203: The first processing unit obtains the first service data based on the first sensing data, wherein the first service data corresponds to the first service.
[0493] For an explanation of the first business and the first business data, please refer to [link / reference]. Figure 5 The description of S502 in the illustrated embodiment will not be repeated here for the sake of brevity.
[0494] S1204: The first processing unit obtains the third service data based on the third sensor data, wherein the third service data corresponds to the third service.
[0495] In some embodiments, the first processing unit further includes a third service. After acquiring third sensing data from the third sensor, the first processing unit processes the third sensing data in the third service to obtain third service data corresponding to the third service.
[0496] In some embodiments, the third service may be any one of the following: calorie calculation service, motion status recognition service, gesture recognition service, step counting service, heart rate calculation service, cardiac electrical activity measurement service, barometric pressure measurement service, and magnetic force measurement service. The third service may also be other services that require the acquisition of sensor data, and this application does not limit it in this regard.
[0497] Among them, the third business data corresponds to the third business. Specifically, the function and type of the third business data correspond to the function and type of the third business, and the third business can realize its display requirements through the third business data. For example, when the third business is calorie calculation, the third business data is calorie data; when the third business is step count calculation, the third business data is step count; when the third business is heart rate calculation, the third business data is heart rate data.
[0498] In some embodiments, the first service and the third service are different; correspondingly, the first sensor data and the third sensor data are also different from each other.
[0499] It is understandable that S1203 can be executed before S1204, or S1203 can be executed simultaneously with S1204, or S1203 can be executed after S1204.
[0500] S1205: The first processing unit sends the first service data to the second processing unit at a second frequency, wherein the second frequency is lower than the first frequency.
[0501] Among them, the explanation of S1205 and Figure 5 The explanation of S503 in the illustrated embodiment is the same, and for the sake of brevity, it will not be repeated here.
[0502] S1206: The first processing unit sends the third service data to the second processing unit at a sixth frequency, wherein the sixth frequency is lower than the fifth frequency.
[0503] In some embodiments, preferably, the sixth frequency can be the frequency at which the second processing unit processes the third service data. This ensures that the frequency at which the second processing unit receives the third service data is the same as the frequency at which the second processing unit processes the third service data, enabling the second processing unit to effectively process the third service data in each processing cycle without any idle processing or overload processing. This results in a more stable load level for the second processing unit and reduces the power consumption of the device.
[0504] In some embodiments, the sixth frequency may be lower than the frequency at which the second processing unit processes the third service data. In this way, the frequency at which the second processing unit receives the third service data is lower than the frequency at which the second processing unit processes the third service data. Although the second processing unit has idle processing and centralized data processing, the frequency at which the second processing unit is woken up can be further reduced, thereby further reducing the power consumption of the electronic device.
[0505] In some embodiments, the sixth frequency can be higher than the frequency at which the second processing unit processes the third service data. In this way, the frequency at which the second processing unit receives the third service data is higher than the frequency at which the second processing unit processes the third service data. The second processing unit does not have an idle processing situation. Compared with the existing method, it can also reduce the frequency at which the second processing unit is woken up, and can also reduce the power consumption of the electronic device.
[0506] Understandably, the second frequency can be the same as or different from the sixth frequency.
[0507] When the sixth frequency and the second frequency are the same, the first processing unit can send the first service data and the third service data together to the second processing unit, or the first processing unit can send the first service data and the third service data to the second processing unit separately.
[0508] In some embodiments, the first processing unit may send first service data to the second processing unit at the maximum frequency of the second frequency and the sixth frequency; and send third service data to the second processing unit at the maximum frequency of the second frequency and the sixth frequency.
[0509] Specifically, when the first processing unit sends the first service data and the third service data to the second processing unit at the maximum frequency between the second frequency and the sixth frequency, the first service data and the third service data can be sent to the second processing unit together, or the first service data and the third service data can be sent to the second processing unit separately.
[0510] In some embodiments, the first processing unit sends the third service data to the second processing unit at a sixth frequency, which can also be described as: the first processing unit sends the third service data to the second processing unit every sixth time interval, wherein the fifth time interval is less than the sixth time interval.
[0511] Understandably, the sixth frequency does not refer to a fixed frequency; the sixth frequency can vary. Similarly, the sixth duration does not refer to a fixed duration; it can also vary.
[0512] It is understandable that S1205 can be executed before S1206, or S1205 can be executed simultaneously with S1206, or S1205 can be executed after S1206.
[0513] Optionally, the method 1200 may further include the following steps:
[0514] S1207: After receiving the first service data, the second processing unit processes the first service data.
[0515] Among them, the explanation of S1207 and Figure 5 The explanation of S504 in the illustrated embodiment is the same, and for the sake of brevity, it will not be repeated here.
[0516] S1208: After receiving the third service data, the second processing unit processes the third service data.
[0517] In some embodiments, the second processing unit processes the third business data. The processing methods may include accumulating the business data based on the third business data, refreshing the business data based on the third business data, and performing time-segmented statistics on the business data based on the third business data.
[0518] When the third service is calorie calculation, the processing method can be to accumulate the service data based on the data from the third service.
[0519] In one example, the sixth frequency is the frequency at which the second processing unit processes the third service data. When the third service is a calorie calculation service, the third service data is calorie data. The second processing unit can add the calorie data received this time to the existing calorie data at the sixth frequency.
[0520] In one example, the sixth frequency is the frequency at which the second processing unit processes the third service data. When the third service is a step count service, the third service data is the number of steps. The second processing unit can add the number of steps received this time to the existing number of steps at the sixth frequency.
[0521] When the third service is heart rate calculation, the processing method can be to refresh the service data based on the data from the third service.
[0522] When the third service is calorie calculation, the processing method can also be to perform time-segmented statistics on the service data based on the data from the third service.
[0523] In one example, when the second service is a calorie calculation service, the second service data is calorie data. The second processing unit can accumulate the calorie data received this time into the calorie data corresponding to a certain time period before the current time at a third frequency.
[0524] It is understandable that S1207 can be executed before S1208, or S1207 can be executed simultaneously with S1208, or S1207 can be executed after S1208.
[0525] S1209: When the first service needs to be displayed, the second processing unit generates display data corresponding to the first service based on the processed first service data; and / or, when the third service needs to be displayed, the second processing unit generates display data corresponding to the third service based on the processed third service data.
[0526] S1210: The second processing unit sends the display data corresponding to the first service to the display unit; and / or, the second processing unit sends the display data corresponding to the third service to the display unit.
[0527] It is understandable that S1210 can be a single step or split into two steps. The second processing unit can send the display data corresponding to the first service and the display data corresponding to the third service together to the display unit; the second processing unit can also send the display data corresponding to the first service and the display data corresponding to the third service to the display unit separately; or the second processing unit can send one of the display data corresponding to the first service and the display data corresponding to the third service to the display unit.
[0528] Understandably, the primary business can also provide... Figure 10 The first service in the embodiment can also acquire second sensing data collected by the second sensor, and determine the first service data based on the first sensing data and the second sensing data.
[0529] In this embodiment, the low-performance processing unit can perform different service processing based on the received multiple sensor data to obtain different service data. The high-performance processing unit can receive the different service data at a lower frequency than the low-performance processing unit processes the sensor data, and process the different service data. When the electronic device generates a display requirement for a certain service, it generates the display data corresponding to that service and sends it for display, which can reduce the power consumption of multiple display services at the same time.
[0530] For example, combined Figure 13 Taking the first processing unit as a small CPU core and the second processing unit as a large CPU core as an example, the data processing method 1200 provided in the embodiments of this application will be described in detail.
[0531] like Figure 13 As shown, the CPU small core includes lightweight services, which include the first service and the third service. The interaction process between the first sensor, the third sensor, the CPU small core, and the CPU large core is as follows:
[0532] (1) The CPU small core acquires the first sensing data from the first sensor at the first frequency.
[0533] (2) The CPU small core acquires the third sensor data from the third sensor at the fifth frequency.
[0534] (3) After the CPU small core obtains the first sensor data, it processes the first sensor data through the first service to obtain the first service data corresponding to the first service.
[0535] Among them, the explanations of the first sensor, the first service, and the first service data, as well as the relationship between the first sensor, the first service, and the first service data, are detailed in [the relevant section]. Figure 5 The embodiments shown are described in detail, and for the sake of brevity, they will not be repeated here.
[0536] (4) After the CPU small core obtains the third sensor data, it processes the third sensor data through the third service to obtain the third service data corresponding to the third service.
[0537] (5) The small CPU core sends the first service data to the large CPU core at the second frequency.
[0538] (6) The small CPU core sends the third service data to the large CPU core at the sixth frequency.
[0539] In some embodiments, the small CPU core can send first service data to the large CPU core at the maximum frequency of the second and sixth frequencies; and send third service data to the large CPU core at the maximum frequency of the second and sixth frequencies.
[0540] Specifically, when the small CPU core sends the first service data and the third service data to the large CPU core at the maximum frequency between the second and sixth frequencies, the first service data and the third service data can be sent to the large CPU core together, or the first service data and the third service data can be sent to the large CPU core separately.
[0541] (7) After receiving the first service data, the CPU big core processes the first service data.
[0542] (8) After receiving the third service data, the CPU big core processes the third service data.
[0543] (9) When the first service has a display requirement, the CPU core generates the display data corresponding to the first service based on the processed first service data, and sends the display data corresponding to the first service to the display unit.
[0544] (10) When the third service has a display requirement, the CPU core generates the display data corresponding to the third service based on the processed third service data, and sends the display data corresponding to the third service to the display unit.
[0545] For example, the small core of the CPU can be a Cortex-M33 core, and the large core of the CPU can be a Cortex-M55 core. That is, the first processing unit can be a Cortex-M33 core of the CPU, and the second processing unit can be a Cortex-M55 core of the CPU.
[0546] The above Figure 5 The illustrated embodiments Figure 8 The illustrated embodiments Figure 10 The illustrated embodiments and Figure 12 The embodiments shown can be implemented individually or in combination of any two or more embodiments.
[0547] When the above Figure 5 The illustrated embodiments Figure 8 The illustrated embodiments Figure 10 The illustrated embodiments and Figure 12 When the embodiments shown are implemented in combination, the first processing unit can obtain one service data based on one sensor data in one service, the first processing unit can also obtain the same service data based on multiple sensor data in one service, the first processing unit can also obtain different service data based on the same sensor data in different services, and the first processing unit can also obtain multiple service data based on multiple sensor data in multiple services respectively.
[0548] For example, combined Figure 14 Taking the first processing unit as a small CPU core and the second processing unit as a large CPU core as an example, this application provides another data processing method.
[0549] like Figure 14 As shown, the CPU small core includes lightweight services, which in turn include a first service, a second service, and a third service. The interaction process between the first sensor, the second sensor, the third sensor, the CPU small core, and the CPU large core is as follows:
[0550] (1) The CPU small core acquires the first sensing data from the first sensor at the first frequency.
[0551] (2) The CPU small core acquires second sensing data from the second sensor at the fourth frequency.
[0552] In some embodiments, the fourth frequency is the same as the first frequency.
[0553] (3) The CPU small core acquires the third sensor data from the third sensor at the fifth frequency.
[0554] (4) After the CPU small core obtains the first sensor data and the second sensor data, it processes the first sensor data and the second sensor data through the first service to obtain the first service data corresponding to the first service.
[0555] (5) After the CPU small core obtains the first sensor data, it processes the first sensor data through the second service to obtain the second service data corresponding to the second service.
[0556] (6) After the CPU small core obtains the third sensor data, it processes the third sensor data through the third service to obtain the third service data corresponding to the third service.
[0557] In some embodiments, the first sensor, the second sensor, and the third sensor are different from each other; the first service, the second service, and the third service are different from each other. For example, the first sensor is an accelerometer, the second sensor is a gyroscope, and the third sensor is a PPG sensor. Correspondingly, the first service is a step counting service, the second service is a calorie calculation service, and the third service is a heart rate calculation service.
[0558] (7) The small CPU core sends the first service data to the large CPU core at the second frequency.
[0559] In some embodiments, the second frequency is lower than the maximum frequency among the first frequency and the fourth frequency. Preferably, the second frequency may be lower than the minimum frequency among the first frequency and the fourth frequency, that is, the second frequency is lower than the first frequency and lower than the fourth frequency.
[0560] (8) The small CPU core sends the second service data to the large CPU core at the third frequency.
[0561] (9) The small CPU core sends the third service data to the large CPU core at the sixth frequency.
[0562] In some embodiments, the small CPU core can send first service data to the large CPU core at the maximum frequency among the second, third, and sixth frequencies; and send second service data to the large CPU core at the maximum frequency among the second, third, and sixth frequencies; and send third service data to the large CPU core at the maximum frequency among the second, third, and sixth frequencies.
[0563] Specifically, when the small CPU core sends the first service data, the second service data, and the third service data to the large CPU core at the highest frequency among the second, third, and sixth frequencies, it can send two or three of the first, second, and third service data to the large CPU core together, or it can send the first, second, and third service data to the large CPU core separately.
[0564] (10) After receiving the first service data, the CPU big core processes the first service data.
[0565] (11) After receiving the second service data, the CPU big core processes the second service data.
[0566] (12) After receiving the third service data, the CPU big core processes the third service data.
[0567] (13) When the first service has a display requirement, the CPU core generates the display data corresponding to the first service based on the processed first service data, and sends the display data corresponding to the first service to the display unit.
[0568] (14) When the second service has a display requirement, the CPU core generates the display data corresponding to the second service based on the processed second service data, and sends the display data corresponding to the second service to the display unit.
[0569] (15) When the third service has a display requirement, the CPU core generates the display data corresponding to the third service based on the processed third service data, and sends the display data corresponding to the third service to the display unit.
[0570] In some embodiments, the first service, the second service, and the third service included in the lightweight service in this embodiment can be understood as three modules with data processing capabilities included in the first processing unit.
[0571] For example, the small core of the CPU can be a Cortex-M33 core, and the large core of the CPU can be a Cortex-M55 core. That is, the first processing unit can be a Cortex-M33 core of the CPU, and the second processing unit can be a Cortex-M55 core of the CPU.
[0572] For example, Figure 15 This illustration shows an interactive schematic diagram of another data processing method 1500 provided in an embodiment of this application. The method 1500 is applied to the interaction between a first processing unit, a second processing unit, and a third processing unit, wherein the processing performance of the first processing unit is weaker than that of the second processing unit, and the processing performance of the third processing unit is also weaker than that of the second processing unit.
[0573] The first processing unit may include one or more services, wherein the sensing data acquired by each of the one or more services may be obtained by one or more sensors. In other words, the service data determined by each of the one or more services may be obtained based on the sensing data collected by one or more sensors.
[0574] It is understood that this embodiment is described using the example of a first processing unit including a first service and a fourth service; and using the example of determining multiple service data based on sensing data collected by a sensor. For example, the first service data and the fourth service data are obtained based on the first sensing data collected by the first sensor.
[0575] In some embodiments, the first service and the fourth service included in the first processing unit in this embodiment can be understood as two modules with data processing capabilities included in the first processing unit.
[0576] It is understood that the first processing unit, second processing unit, or third processing unit can refer to the core of a processor, or it can refer to the processor itself. For example, the first processing unit may be a first processor, the second processing unit may be a second processor, and the third processing unit may be a third processor; or the first processing unit may be the first core of the processor, the second processing unit may be the second core of the processor, and the third processing unit may be the third core of the processor. It is also understood that the first processing unit, second processing unit, or third processing unit can refer to a chip, a device, or other devices equipped with processing units, and this application does not limit this.
[0577] In one example, the first processor is the sensorhub, the second processor is the CPU, and the third processor is the CPU.
[0578] In some embodiments, the first processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; the second processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; and the third processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA.
[0579] It is also understood that the first processing unit, the second processing unit, and the third processing unit described in the embodiments of this application can be separately configured. For example, taking the first processing unit, the second processing unit, and the third processing unit as processors, the first processing unit, the second processing unit, and the third processing unit can be located in different devices or chips; taking the first processing unit, the second processing unit, and the third processing unit as processor cores as an example, the first processing unit, the second processing unit, and the third processing unit are the cores of three different processors; they can also be partially separated. For example, taking the first processing unit, the second processing unit, and the third processing unit as processors, some of the first processing unit, the second processing unit, and the third processing unit can be located in... The same device or chip; taking the example where the first processing unit, the second processing unit, and the third processing unit are all processor cores, two of the first processing unit, the second processing unit, and the third processing unit are two cores of the same processor, and the remaining one is a core of another processor; or they can be not separated, for example, taking the first processing unit, the second processing unit, and the third processing unit as processors, the first processing unit, the second processing unit, and the third processing unit can be located in the same device or chip; taking the first processing unit, the second processing unit, and the third processing unit as processor cores, the first processing unit, the second processing unit, and the third processing unit are three cores of the same processor with different performance.
[0580] For example, taking the case where the first processing unit, the second processing unit, and the third processing unit are all cores of a processor, the first processing unit, the second processing unit, and the third processing unit may be located in the same processor, such as a CPU, a GPU, or a sensor hub processor; the first processing unit, the second processing unit, and the third processing unit may also be partially located in different processors, for example, the first processing unit and the second processing unit are located in a sensor hub, and the third processing unit is located in a CPU; the first processing unit, the second processing unit, and the third processing unit may also be located in different processors, for example, the first processing unit, the second processing unit, and the third processing unit are located in a sensor hub, the second is located in a CPU, and the third is located in a GPU.
[0581] In one example, the first processing unit can be a Cortex-M33 core, the second processing unit can be a Cortex-M55 core, and the third processing unit can be a Cortex-M55 core. Further optionally, the first processing unit can be a sensor hub core, specifically a Cortex-M33 core, the second processing unit can be a CPU core, specifically a Cortex-M55 core, and the third processing unit can be a CPU core, specifically a Cortex-M55 core.
[0582] Furthermore, the first processing unit, the second processing unit, and the third processing unit may be located in the same device, or may be located in different devices, either partially or entirely; the first processing unit, the second processing unit, and the third processing unit may be located in the same chip, or may be located in different chips, either partially or entirely.
[0583] In one example, the first processing unit is the small core of the device's CPU, the second processing unit is the large core of the device's CPU, and the third processing unit is the large core of the device's CPU. The first processing unit, the second processing unit, and the third processing unit may be located in the same CPU, or partially in the same CPU, or in different CPUs; or, the first processing unit, the second processing unit, and the third processing unit may be located in the same device, partially in the same device, or in different devices, wherein the device may be a server or a terminal device.
[0584] For example, the small core of the CPU can be a Cortex-M33 core, and the large core of the CPU can be a Cortex-M55 core. That is, the first processing unit can be a Cortex-M33 core of the CPU, the second processing unit can be a Cortex-M55 core of the CPU, and the third processing unit can be a Cortex-M55 core of the CPU.
[0585] The method 1500 includes:
[0586] S1501: The first processing unit acquires first sensing data from the first sensor at a first frequency.
[0587] S1502: The first processing unit obtains the first service data based on the first sensing data, wherein the first service data corresponds to the first service.
[0588] The explanations of S1501 to S1502 are as follows: Figure 5 The explanations of S501 to S502 in the illustrated embodiments are the same, and for the sake of brevity, they will not be repeated here.
[0589] S1503: The first processing unit obtains the fourth service data based on the first sensing data, wherein the fourth service data corresponds to the fourth service.
[0590] In some embodiments, the first processing unit further includes a fourth service. After acquiring the first sensing data from the first sensor, the first processing unit processes the first sensing data in the fourth service to obtain fourth service data corresponding to the fourth service.
[0591] The first frequency can be the maximum frequency between the frequency at which the first processing unit processes the first sensor data in the first service and the frequency at which it processes the first sensor data in the fourth service.
[0592] In some embodiments, the fourth service may be any one of the following: calorie calculation service, motion status recognition service, gesture recognition service, step counting service, heart rate calculation service, cardiac electrical activity measurement service, barometric pressure measurement service, and magnetic force measurement service. The fourth service may also be other services that require the acquisition of sensor data, and this application does not limit it in this regard.
[0593] The first business and the fourth business can be different.
[0594] The fourth business data corresponds to the fourth business. Specifically, the function and type of the fourth business data correspond to the function and type of the fourth business, and the fourth business can use the fourth business data to meet its display requirements. For example, when the fourth business is calorie calculation, the fourth business data is calorie data; when the fourth business is step counting, the fourth business data is step count; when the fourth business is heart rate calculation, the fourth business data is heart rate data.
[0595] It is understandable that S1502 can be executed before S1503, or S1502 can be executed simultaneously with S1503, or S1502 can be executed after S1503.
[0596] S1504: The first processing unit sends the first service data to the second processing unit at a second frequency, wherein the second frequency is lower than the first frequency.
[0597] The explanation of this step and Figure 5 The explanation of S503 in the illustrated embodiment is the same, and for the sake of brevity, it will not be repeated here.
[0598] S1505: The first processing unit sends the fourth service data to the third processing unit at a seventh frequency, wherein the seventh frequency is lower than the first frequency.
[0599] In some embodiments, preferably, the seventh frequency can be the frequency at which the third processing unit processes the fourth service data. This ensures that the frequency at which the third processing unit receives the fourth service data is the same as the frequency at which the third processing unit processes the fourth service data, enabling the third processing unit to effectively process the fourth service data in each processing cycle without any idle processing or overload processing. This results in a more stable load level for the third processing unit and reduces the power consumption of the device.
[0600] In some embodiments, the seventh frequency may be lower than the frequency at which the third processing unit processes the fourth service data. In this way, the frequency at which the third processing unit receives the fourth service data is lower than the frequency at which the third processing unit processes the fourth service data. Although the third processing unit has idle processing and centralized data processing, the frequency at which the third processing unit is woken up can be further reduced, thereby further reducing the power consumption of the electronic device.
[0601] In some embodiments, the seventh frequency can be higher than the frequency at which the third processing unit processes the fourth service data. In this way, the frequency at which the third processing unit receives the fourth service data is higher than the frequency at which the third processing unit processes the fourth service data. The third processing unit does not have an idle processing situation. Compared with the existing method, it can also reduce the frequency at which the third processing unit is woken up, and can also reduce the power consumption of the electronic device.
[0602] The seventh frequency and the second frequency can be the same or different.
[0603] When the seventh frequency and the second frequency are the same, the first processing unit can send the first service data and the fourth service data together to the second processing unit, or the first processing unit can send the first service data and the fourth service data to the second processing unit separately.
[0604] In one example, when the fourth service is a calorie calculation service, the fourth service data is calorie data, and the third processing unit can also add the received calorie data to the existing calorie data at the seventh frequency.
[0605] In one example, when the fourth service is the step count calculation service, the fourth service data is the step count, and the third processing unit can also add the received step count to the existing step count at the seventh frequency.
[0606] In some embodiments, the first processing unit sends fourth service data to the third processing unit at a seventh frequency, which can also be described as: the first processing unit sends fourth service data to the second processing unit every seventh time interval, wherein the first time interval is less than the seventh time interval.
[0607] It is understandable that the seventh frequency does not refer to a fixed frequency; the seventh frequency can vary. Similarly, the seventh duration does not refer to a fixed duration; it can also vary.
[0608] It is understandable that S1504 can be executed before S1505, or S1504 can be executed simultaneously with S1505, or S1504 can be executed after S1505.
[0609] Optionally, the method 1500 may further include the following steps:
[0610] S1506: After receiving the first service data, the second processing unit processes the first service data.
[0611] The explanation of this step and Figure 5 The explanation of S504 in the illustrated embodiment is the same, and for the sake of brevity, it will not be repeated here.
[0612] S1507: When the first service needs to be displayed, the second processing unit generates the display data corresponding to the first service based on the processed first service data.
[0613] S1508: The second processing unit sends the display data corresponding to the first service to the display unit.
[0614] S1509: After receiving the fourth service data, the third processing unit processes the fourth service data.
[0615] In some embodiments, the second processing unit processes the fourth business data. The processing methods may include accumulating the business data based on the fourth business data, refreshing the business data based on the fourth business data, and performing time-segmented statistics on the business data based on the fourth business data.
[0616] When the fourth service is calorie calculation, the processing method can be to accumulate the service data based on the data from the fourth service.
[0617] When the fourth service is heart rate calculation, the processing method can be to refresh the service data based on the data from the fourth service.
[0618] When the fourth service is calorie calculation, the processing method can also be to perform time-segmented statistics on the service data based on the data from the fourth service.
[0619] In one example, when the fourth service is the calorie calculation service, the fourth service data is calorie data, and the third processing unit can add the received calorie data to the existing calorie data at the seventh frequency.
[0620] In one example, when the fourth service is the step count calculation service, the fourth service data is the step count, and the third processing unit can add the received step count to the existing step count at the seventh frequency.
[0621] It is understandable that S1506 can be executed before S1509, or S1506 can be executed simultaneously with S1509, or S1506 can be executed after S1509.
[0622] S1510: When the fourth service needs to be displayed, the third processing unit generates the display data corresponding to the fourth service based on the processed fourth service data.
[0623] It is understandable that S1507 can be executed before S1510, or S1507 can be executed simultaneously with S1510, or S1507 can be executed after S1510.
[0624] S1511: The third processing unit sends the display data corresponding to the fourth service to the display unit.
[0625] It is understandable that S1508 can be executed before S1511, or S1508 can be executed simultaneously with S1511, or S1508 can be executed after S1511.
[0626] Understandably, the primary business can also provide... Figure 10 The first service in the embodiment can also acquire second sensing data collected by the second sensor, and determine the first service data based on the first sensing data and the second sensing data.
[0627] In this embodiment, after the low-performance processing unit processes the received sensor data to obtain different service data, the low-performance processing unit can send the different service data to multiple high-performance processing units at a lower frequency than the frequency at which the low-performance processing unit processes the sensor data. This can reduce the frequency at which multiple high-performance processing units are woken up, reduce the power consumption of multiple high-performance processing units, and thus reduce the power consumption of one or more electronic devices.
[0628] exist Figure 15 Based on the illustrated embodiments, by way of example, Figure 16 The diagram shows a layout of several first processing units, second processing units, and third processing units provided in the embodiments of this application.
[0629] The first processing unit, the second processing unit, and the third processing unit may all be located in the same device, or partially in the same device, or all in different devices.
[0630] Figure 16Figure (a) shows a layout diagram when the first processing unit, the second processing unit, and the third processing unit are all located in the same device. Figure 16 As shown in (a), the first processing unit, the second processing unit, and the third processing unit may all be located in the first device.
[0631] In some embodiments, the first processing unit is a first processor, the second processing unit is a second processor, and the third processing unit is a third processor; or the first processing unit is a first core of the processor, the second processing unit is a second core of the processor, and the third processing unit is a third core of the processor. It is understood that the first processing unit, the second processing unit, or the third processing unit may also refer to a chip, and this application does not limit this.
[0632] The first processing unit, the second processing unit, and the third processing unit may be located in the same CPU, or partially in the same CPU, or in different CPUs.
[0633] Figure 16 Figure (b) shows a layout diagram of a first processing unit, a second processing unit, and a third processing unit located in the same device, as shown below. Figure 16 As shown in (b), the first processing unit may be located in the first device, and the second and third processing units may be located in the second device.
[0634] In some embodiments, the first processing unit and the second processing unit may be located in the first device, and the third processing unit may be located in the second device.
[0635] In one example, the first processing unit is a first processor of the first device, the second processing unit is a second processor of the first device, and the third processing unit is a third processor of the second device; or the first processing unit is a first core of the processor of the first device, the second processing unit is a second core of the processor of the first device, and the third processing unit is a third core of the processor of the second device. It is understood that the first processing unit, the second processing unit, or the third processing unit can also refer to a chip, and this application does not limit this.
[0636] In one example, the first processing unit can be a Cortex-M33 core, the second processing unit can be a Cortex-M55 core, and the third processing unit can be a Cortex-M55 core. In one possible implementation, the first processing unit can be the core of the sensor hub on the first device, specifically a Cortex-M33 core; the second processing unit can be the core of the CPU on the first device, specifically a Cortex-M55 core; and the third processing unit can be the core of the CPU on the second device, specifically a Cortex-M55 core.
[0637] In some embodiments, the first processing unit and the third processing unit may be located in the first device, and the second processing unit may be located in the second device.
[0638] The first device can be a first server or a first terminal device, and the second device can be a second server or a second terminal device.
[0639] In some embodiments, the first processing unit is located on a first server, and the second and third processing units are located on a second server, wherein the first server may be a lightweight server and the second server may be a high-performance server.
[0640] Figure 16 Figure (c) shows a layout diagram when the first processing unit, the second processing unit, and the third processing unit are all located in different devices, as shown below. Figure 16 As shown in (c), the first processing unit may be located in the first device, the second processing unit may be located in the second device, and the third processing unit may be located in the third device.
[0641] In some embodiments, the first processing unit is a first processor, the second processing unit is a second processor, and the third processing unit is a third processor; or the first processing unit is a first core of the processor, the second processing unit is a second core of the processor, and the third processing unit is a third core of the processor. It is understood that the first processing unit, the second processing unit, or the third processing unit may also refer to a chip, a device, or other devices equipped with processing units, and this application does not limit this. In some embodiments, the first processing unit is located on a first server, the second processing unit is located on a second server, and the third processing unit is located on a third server, wherein the first server may be a lightweight server, and the second and third servers may be high-performance servers.
[0642] In some embodiments, the first processing unit may be a small CPU core of the first device, the second processing unit may be a large CPU core of the second device, and the third processing unit may be a large CPU core of the third device.
[0643] For example, the small CPU core can be a Cortex-M33 core, and the large CPU core can be a Cortex-M55 core.
[0644] In one example, the first processing unit can be a Cortex-M33 core, the second processing unit can be a Cortex-M55 core, and the third processing unit can be a Cortex-M55 core. In one possible implementation, the first processing unit can be the core of the sensor hub on the first device, specifically a Cortex-M33 core; the second processing unit can be the core of the CPU on the second device, specifically a Cortex-M55 core; and the third processing unit can be the core of the CPU on the third device, specifically a Cortex-M55 core.
[0645] For example, Figure 17 This illustration shows an interactive schematic diagram of another data processing method 1700 provided in an embodiment of this application. The method 1700 is applied to the interaction between a first processing unit, a second processing unit, and a fourth processing unit, wherein the processing performance of the first processing unit is weaker than that of the second processing unit, and the processing performance of the fourth processing unit is weaker than that of the second processing unit.
[0646] The first processing unit may include one or more services, wherein the sensing data acquired by each of the one or more services may be obtained by one or more sensors, that is, the service data determined by each of the one or more services may be obtained based on the sensing data collected by one or more sensors; the fourth processing unit may include one or more services, wherein the sensing data acquired by each of the one or more services may be obtained by one or more sensors, that is, the service data determined by each of the one or more services may be obtained based on the sensing data collected by one or more sensors.
[0647] It is understood that this embodiment is described using the example of a first processing unit including a first service; the example of determining service data based on sensor data collected by a sensor; the example of a fourth processing unit including a fifth service; and the example of determining service data based on sensor data collected by a sensor.
[0648] In some embodiments, the first service included in the first processing unit in this embodiment can be understood as a module with data processing capability included in the first processing unit; the fifth service included in the fourth processing unit can be understood as a module with data processing capability included in the fifth processing unit.
[0649] It is understood that the first processing unit, second processing unit, or fourth processing unit can refer to the core of a processor, or it can refer to the processor itself. For example, the first processing unit may be a first processor, the second processing unit may be a second processor, and the fourth processing unit may be a fourth processor; or the first processing unit may be the first core of the processor, the second processing unit may be the second core of the processor, and the fourth processing unit may be the fourth core of the processor. It is also understood that the first processing unit, second processing unit, or fourth processing unit can refer to a chip, a device, or other devices equipped with processing units, and this application does not limit this.
[0650] In one example, the first processor is the sensorhub, the second processor is the CPU, and the fourth processor is the sensorhub.
[0651] In some embodiments, the first processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; the second processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; and the fourth processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA.
[0652] It is also understood that the first processing unit, the second processing unit, and the fourth processing unit described in the embodiments of this application can be separately configured. For example, taking the first processing unit, the second processing unit, and the fourth processing unit as processors, the first processing unit, the second processing unit, and the fourth processing unit can be located in different devices or chips; taking the first processing unit, the second processing unit, and the fourth processing unit as processor cores as an example, the first processing unit, the second processing unit, and the fourth processing unit are the cores of three different processors; they can also be partially separated. For example, taking the first processing unit, the second processing unit, and the fourth processing unit as processors, some of the first processing unit, the second processing unit, and the fourth processing unit can be located in... The same device or chip; taking the example where the first processing unit, the second processing unit, and the fourth processing unit are all processor cores, two of the first processing unit, the second processing unit, and the fourth processing unit are two cores of the same processor, and the remaining one is the core of another processor; or they can be not separated, for example, taking the first processing unit, the second processing unit, and the fourth processing unit as processors, the first processing unit, the second processing unit, and the fourth processing unit can be located in the same device or chip; taking the first processing unit, the second processing unit, and the fourth processing unit as processor cores, the first processing unit, the second processing unit, and the fourth processing unit are three cores of the same processor with different performance.
[0653] For example, taking the first processing unit, the second processing unit, and the fourth processing unit as the core of a processor, the first processing unit, the second processing unit, and the fourth processing unit may be located in the same processor, such as a CPU, GPU, or sensor hub processor; the first processing unit, the second processing unit, and the fourth processing unit may also be partially located in different processors, for example, the first processing unit and the second processing unit are located in the sensor hub, and the fourth processing unit is located in the CPU; the first processing unit, the second processing unit, and the fourth processing unit may also be located in different processors, for example, the first processing unit, the second processing unit, and the fourth processing unit are located in the sensor hub, the second is located in the CPU, and the third is located in the GPU.
[0654] In one example, the first processing unit can be a Cortex-M33 core, the second processing unit can be a Cortex-M55 core, and the fourth processing unit can be a Cortex-M33 core. Further optionally, the first processing unit can be a sensor hub core, specifically a Cortex-M33 core, the second processing unit can be a CPU core, specifically a Cortex-M55 core, and the fourth processing unit can be a sensor hub core, specifically a Cortex-M33 core.
[0655] Furthermore, the first processing unit, the second processing unit, and the fourth processing unit may be located in the same device, or may be located in different devices, either partially or entirely; the first processing unit, the second processing unit, and the fourth processing unit may be located in the same chip, or may be located in different chips, either partially or entirely.
[0656] In one example, the first processing unit is the CPU small core of the device, the second processing unit is the CPU large core of the device, and the fourth processing unit is the CPU small core of the device. The first processing unit, the second processing unit, and the fourth processing unit may be located in the same CPU, or may be partially located in the same CPU, or may be located in different CPUs; or, the first processing unit, the second processing unit, and the fourth processing unit may be located in the same device, or may be partially located in the same device, or may be located in different devices, wherein the device may be a server or a terminal device.
[0657] For example, the small core of the CPU can be a Cortex-M33 core, and the large core of the CPU can be a Cortex-M55 core. That is, the first processing unit can be a Cortex-M33 core of the CPU, the second processing unit can be a Cortex-M55 core of the CPU, and the fourth processing unit can be a Cortex-M33 core of the CPU.
[0658] The method 1700 includes:
[0659] S1701: The first processing unit acquires first sensing data from the first sensor at a first frequency.
[0660] In some embodiments, the first processing unit acquires first sensing data from the first sensor at a first frequency, which can also be described as: the first processing unit acquires first sensing data from the first sensor at a first time interval.
[0661] It is understandable that the first frequency does not refer to a fixed frequency; the first frequency can vary. Similarly, the first duration does not refer to a fixed duration; it can also vary.
[0662] S1702: The first processing unit obtains the first service data based on the first sensing data, wherein the first service data corresponds to the first service.
[0663] S1703: The first processing unit sends the first service data to the second processing unit at a second frequency, wherein the second frequency is lower than the first frequency.
[0664] The explanation of steps S1701 to S1703 is as follows: Figure 5 The explanations of S501 to S503 in the illustrated embodiments are the same, and for the sake of brevity, they will not be repeated here.
[0665] S1704: The fourth processing unit acquires fourth sensor data from the fourth sensor at an eighth frequency.
[0666] The eighth frequency can be the frequency at which the first processing unit processes the fourth sensor data in the fifth service.
[0667] The fact that the processing performance of the fourth processing unit is weaker than that of the second processing unit can mean that the hardware capabilities of the fourth processing unit are weaker than those of the second processing unit. When the hardware capabilities of both the fourth and second processing units can meet the data processing requirements, compared with the second processing unit, the fourth processing unit consumes fewer resources, is simpler to deploy, and has a faster response speed when processing the same data. In other words, the power consumption of the fourth processing unit is lower.
[0668] In one example, acceleration data is preprocessed, i.e., the calorie data for the first time period is obtained based on the acceleration data for the first time period. Both the fourth processing unit and the second processing unit can perform this operation, but the fourth processing unit consumes less power to perform this process compared to the second processing unit.
[0669] In one example, the fourth processing unit is the small core of the device's CPU, and the second processing unit is the large core of the device's CPU. The fourth processing unit and the second processing unit can be located in the same device or in different devices. The device can be a server or a terminal device.
[0670] In some embodiments, the fourth processing unit is located on the first server and the second processing unit is located on the second server, wherein the first server may be a lightweight server and the second server may be a high-performance server.
[0671] In some embodiments, the fourth sensor may include one or more of the following: a PPG sensor, an accelerometer, a gyroscope, an A+G sensor, an ECG sensor, a barometric pressure sensor, and a magnetic sensor. In addition, the fourth sensor may also include other sensors, which are not limited in this application.
[0672] The fourth sensing data refers to the data collected by the fourth sensor. For example, when the fourth sensing data is acceleration data, the fourth sensor can be an accelerometer; when the fourth sensing data is sensing data used to calculate heart rate, the fourth sensor can be a PPG sensor.
[0673] In some embodiments, the fourth processing unit acquires fourth sensing data from the fourth sensor at an eighth frequency, which can also be described as: the fourth processing unit acquires fourth sensing data from the fourth sensor every eighth time interval.
[0674] It is understandable that the eighth frequency does not refer to a fixed frequency; the eighth frequency can vary. Similarly, the eighth duration does not refer to a fixed duration; it can also vary.
[0675] It is understandable that S1701 can be executed before S1704, or S1701 can be executed simultaneously with S1704, or S1701 can be executed after S1704.
[0676] S1705: The fourth processing unit obtains the fifth service data based on the fourth sensor data, wherein the fifth service data corresponds to the fifth service.
[0677] In some embodiments, the fourth processing unit includes a fifth service. After acquiring fourth sensing data from the fourth sensor, the fourth processing unit processes the fourth sensing data in the fifth service to obtain fifth service data corresponding to the fifth service.
[0678] In some embodiments, the fifth service may be any one of the following: calorie calculation service, motion status recognition service, gesture recognition service, step counting service, heart rate calculation service, cardiac electrical activity measurement service, barometric pressure measurement service, and magnetic force measurement service. The fifth service may also be other services that require the acquisition of sensor data, and this application does not limit this.
[0679] Among them, the fifth business data corresponds to the fifth business. Specifically, the function and type of the fifth business data correspond to the function and type of the fifth business, and the fifth business can realize its display requirements through the fifth business data. For example, when the fifth business is a calorie calculation business, the fifth business data is calorie data; when the fifth business is a step count calculation business, the fifth business data is step count; when the fifth business is a heart rate calculation business, the fifth business data is heart rate data.
[0680] S1706: The fourth processing unit sends the fifth service data to the second processing unit at the ninth frequency, wherein the ninth frequency is lower than the eighth frequency.
[0681] In some embodiments, preferably, the ninth frequency can be the frequency at which the second processing unit processes the fifth service data. This ensures that the frequency at which the second processing unit receives the fifth service data is the same as the frequency at which the second processing unit processes the fifth service data, enabling the second processing unit to effectively process the fifth service data in each processing cycle without any idle processing or overload processing. This results in a more stable load level for the second processing unit and reduces the power consumption of the device.
[0682] In some embodiments, the ninth frequency may be lower than the frequency at which the second processing unit processes the fifth service data. In this way, the frequency at which the second processing unit receives the fifth service data is lower than the frequency at which the second processing unit processes the fifth service data. Although the second processing unit has idle processing and centralized data processing, the frequency at which the second processing unit is woken up can be further reduced, thereby further reducing the power consumption of the electronic device.
[0683] In some embodiments, the ninth frequency can be higher than the frequency at which the second unit processes the fifth service data. In this way, the frequency at which the second processing unit receives the fifth service data is higher than the frequency at which the second processing unit processes the fifth service data. The second processing unit does not have an idle processing situation. Compared with the existing method, it can also reduce the frequency at which the second processing unit is woken up, and can also reduce the power consumption of the electronic device.
[0684] Understandably, the eighth frequency can be the same as or different from the first frequency.
[0685] It is understandable that the ninth frequency and the second frequency can be the same or different.
[0686] When the ninth frequency and the second frequency are the same, the first processing unit can send the first service data and the fifth service data together to the second processing unit, or the first processing unit can send the first service data and the fifth service data to the second processing unit separately.
[0687] In some embodiments, the first processing unit may send first service data to the second processing unit at the maximum frequency of the second frequency and the ninth frequency; and send fifth service data to the second processing unit at the maximum frequency of the second frequency and the ninth frequency.
[0688] Specifically, when the first processing unit sends the first service data and the fifth service data to the second processing unit at the maximum frequency between the second frequency and the ninth frequency, the first service data and the fifth service data can be sent to the second processing unit together, or the first service data and the fifth service data can be sent to the second processing unit separately.
[0689] In some embodiments, the fourth processing unit sends the fifth service data to the second processing unit at a ninth frequency, which can also be described as: the fourth processing unit sends the fifth service data to the second processing unit at a ninth time interval, wherein the eighth time interval is less than the ninth time interval.
[0690] It is understandable that the ninth frequency does not refer to a fixed frequency; the ninth frequency can vary. Similarly, the ninth duration does not refer to a fixed duration; it can also vary.
[0691] Optionally, the method 1700 may further include the following steps:
[0692] S1707: After receiving the first service data, the second processing unit processes the first service data.
[0693] Among them, the interpretation of S1707 and Figure 5 The explanation of S504 in the illustrated embodiment is the same, and for the sake of brevity, it will not be repeated here.
[0694] S1708: After receiving the fifth service data, the second processing unit processes the fifth service data.
[0695] In one example, the ninth frequency is the frequency at which the second processing unit processes the fifth service data. When the fifth service is a calorie calculation service, the fifth service data is calorie data. The second processing unit can add the calorie data received this time to the existing calorie data at the ninth frequency.
[0696] In one example, the ninth frequency is the frequency at which the second processing unit processes the fifth service data. When the fifth service is a step count calculation service, the fifth service data is the number of steps. The second processing unit can add the number of steps received this time to the existing number of steps at the ninth frequency.
[0697] S1709: When the first service needs to be displayed, the second processing unit generates display data corresponding to the first service based on the processed first service data; and / or, when the fifth service needs to be displayed, the second processing unit generates display data corresponding to the fifth service based on the processed fifth service data.
[0698] S1710: The second processing unit sends the display data corresponding to the first service to the display unit; and / or, the second processing unit sends the display data corresponding to the fifth service to the display unit.
[0699] It is understandable that S1710 can be a single step or split into two steps. The second processing unit can send the display data corresponding to the first service and the display data corresponding to the fifth service together to the display unit; the second processing unit can also send the display data corresponding to the first service and the display data corresponding to the fifth service to the display unit separately; or the second processing unit can send one of the display data corresponding to the first service and the display data corresponding to the fifth service to the display unit.
[0700] It is understandable that S1701 to S1703 and S1704 to S1706 can be executed simultaneously, partially simultaneously, or completely simultaneously.
[0701] It is understandable that S1707 can be executed before S1708, or S1707 can be executed simultaneously with S1708, or S1707 can be executed after S1708.
[0702] Understandably, the primary business can also provide... Figure 10 The first service in the embodiment can also acquire second sensing data collected by the second sensor, and determine the first service data based on the first sensing data and the second sensing data.
[0703] In this embodiment, after multiple low-performance processing units process the received sensor data to obtain different service data, the low-performance processing units can send the different service data to the same high-performance processing unit at a lower frequency than the frequency of processing the sensor data. This can reduce the power consumption of electronic devices while saving the number of high-performance processing units.
[0704] exist Figure 17 Based on the illustrated embodiments, by way of example, Figure 18The diagram shows a layout of several first processing units, second processing units, and fourth processing units provided in the embodiments of this application.
[0705] like Figure 18 As shown in (a), the first processing unit, the second processing unit and the fourth processing unit may be located in the same device, for example: the first processing unit, the second processing unit and the fourth processing unit may all be located in the first device.
[0706] In some embodiments, the first processing unit is a first processor, the second processing unit is a second processor, and the fourth processing unit is a fourth processor; or the first processing unit is a first core of the processor, the second processing unit is a second core of the processor, and the fourth processing unit is a fourth core of the processor. It is understood that the first processing unit, the second processing unit, or the fourth processing unit may also refer to a chip, and this application does not limit this.
[0707] The first processing unit, the second processing unit, and the fourth processing unit may be located in the same CPU, or may be partially located in the same CPU, or may be located in different CPUs.
[0708] like Figure 18 As shown in (b), the first processing unit, the second processing unit, and the fourth processing unit may be located in different devices. For example, the first processing unit and the fourth processing unit may be located in the first device, and the second processing unit may be located in the second device. The first device may be a first server or a first terminal device, and the second device may be a second server or a second terminal device.
[0709] In one example, the first processing unit is a first processor of the first device, the second processing unit is a second processor of the first device, and the fourth processing unit is a fourth processor of the second device; or the first processing unit is a first core of the processor of the first device, the second processing unit is a second core of the processor of the first device, and the fourth processing unit is a fourth core of the processor of the second device. It is understood that the first processing unit, the second processing unit, or the fourth processing unit can also refer to a chip, and this application does not limit this.
[0710] In one example, the first processing unit can be a Cortex-M33 core, the second processing unit can be a Cortex-M55 core, and the fourth processing unit can be a Cortex-M33 core. In one possible implementation, the first processing unit can be the core of the sensor hub on the first device, specifically a Cortex-M33 core; the second processing unit can be the core of the CPU on the first device, specifically a Cortex-M55 core; and the third processing unit can be the core of the sensor hub on the second device, specifically a Cortex-M33 core.
[0711] In some embodiments, the first processing unit and the fourth processing unit are located on the first server, and the second processing unit is located on the second server, wherein the first server may be a lightweight server and the second server may be a high-performance server.
[0712] like Figure 18 As shown in (c), the first processing unit, the second processing unit, and the fourth processing unit can be located in different devices. For example, the first processing unit can be located in the first device, the second processing unit can be located in the second device, and the fourth processing unit can be located in the third device. The first device can be a first server or a first terminal device, the second device can be a second server or a second terminal device, and the third device can be a third server or a third terminal device.
[0713] In one example, the first processing unit is the processor of the first device, the second processing unit is the processor of the second device, and the fourth processing unit is the processor of the fourth device; or the first processing unit is the core of the processor of the first device, the second processing unit is the core of the processor of the second device, and the fourth processing unit is the core of the processor of the fourth device. It is understood that the first processing unit, the second processing unit, or the fourth processing unit can also refer to a chip, and this application does not limit this.
[0714] In one example, the first processing unit can be a Cortex-M33 core, the second processing unit can be a Cortex-M55 core, and the fourth processing unit can be a Cortex-M33 core. In one possible implementation, the first processing unit can be the core of the sensor hub on the first device, specifically a Cortex-M33 core; the second processing unit can be the core of the CPU on the second device, specifically a Cortex-M55 core; and the fourth processing unit can be the core of the sensor hub on the fourth device, specifically a Cortex-M33 core.
[0715] In some embodiments, the first processing unit is located on the first server, the second processing unit is located on the second server, and the fourth processing unit is located on the third server, wherein the first server and the third server may be lightweight servers, and the second server may be a high-performance server.
[0716] In some embodiments, the first processing unit may be a small CPU core of the first device, the second processing unit may be a large CPU core of the second device, and the fourth processing unit may be a small CPU core of the third device.
[0717] In some embodiments, the first processing unit and the third processing unit may be located in the first device, and the fourth processing unit may be located in the second device.
[0718] In some embodiments, the first processing unit and the second processing unit may be located in the first device, and the fourth processing unit may be located in the second device.
[0719] For example, Figure 19 This illustration shows an interactive schematic diagram of another data processing method 1900 provided in an embodiment of this application. The method 1900 is applied to the interaction between a first processing unit, a second processing unit, a third processing unit, and a fourth processing unit, wherein the processing performance of the first processing unit is weaker than that of the second processing unit, and the processing performance of the fourth processing unit is weaker than that of the third processing unit.
[0720] The first processing unit may include one or more services, wherein the sensing data acquired by each of the one or more services may be obtained by one or more sensors, that is, the service data determined by each of the one or more services may be obtained based on the sensing data collected by one or more sensors; the fourth processing unit may include one or more services, wherein the sensing data acquired by each of the one or more services may be obtained by one or more sensors, that is, the service data determined by each of the one or more services may be obtained based on the sensing data collected by one or more sensors.
[0721] It is understood that this embodiment is described using the example of a first processing unit including a first service; the example of determining service data based on sensor data collected by a sensor; the example of a fourth processing unit including a sixth service; and the example of determining service data based on sensor data collected by a sensor.
[0722] In some embodiments, the first service included in the first processing unit in this embodiment can be understood as a module with data processing capability included in the first processing unit, and the sixth service included in the first processing unit can be understood as a module with data processing capability included in the first processing unit.
[0723] It is understood that the first processing unit, second processing unit, third processing unit, or fourth processing unit can refer to the core of a processor, or it can refer to the processor itself. For example, the first processing unit may be a first processor, the second processing unit a second processor, the third processing unit a third processor, and the fourth processing unit a fourth processor; or the first processing unit may be the first core of the processor, the second processing unit a second core of the processor, the third processing unit a third core of the processor, and the fourth processing unit a fourth core of the processor. It is also understood that the first processing unit, second processing unit, third processing unit, or fourth processing unit can refer to a chip, a device, or other devices equipped with processing units; this application does not limit this.
[0724] In one example, the first processor is the sensorhub, the second processor is the CPU, the third processor is the CPU, and the fourth processor is the sensorhub.
[0725] In some embodiments, the first processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; the second processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; the third processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA; and the fourth processor may be any one of DSP, NPU, VPU, APU, ISP, MCU, and FPGA.
[0726] It is also understood that the first processing unit, second processing unit, third processing unit, and fourth processing unit described in the embodiments of this application can be separately configured. For example, taking the first processing unit, second processing unit, third processing unit, and fourth processing unit as processors, the first processing unit, second processing unit, third processing unit, and fourth processing unit can be located in different devices or chips; taking the first processing unit, second processing unit, third processing unit, and fourth processing unit as processor cores as an example, the first processing unit, second processing unit, third processing unit, and fourth processing unit are the cores of four different processors; they can also be partially separated. For example, taking the first processing unit, second processing unit, third processing unit, and fourth processing unit as processors, some of the first processing unit, second processing unit, third processing unit, and fourth processing unit can be located in the same device. Alternatively, a chip; taking the example where the first processing unit, second processing unit, third processing unit, and fourth processing unit are all processor cores, two or three of the first processing unit, second processing unit, third processing unit, and fourth processing unit are two or three cores of the same processor, and the remaining one or two are one or two cores of another processor; or they can be configured without separation, for example, taking the first processing unit, second processing unit, third processing unit, and fourth processing unit as processors, the first processing unit, second processing unit, third processing unit, and fourth processing unit can be located in the same device or chip; taking the first processing unit, second processing unit, third processing unit, and fourth processing unit as processor cores, the first processing unit, second processing unit, third processing unit, and fourth processing unit are four cores of the same processor with different performance.
[0727] For example, taking the case where the first processing unit, second processing unit, third processing unit, and fourth processing unit are all cores of a processor, the following description is provided. The first processing unit, second processing unit, third processing unit, and fourth processing unit may be located in the same processor, such as a CPU, GPU, or sensor hub processor. The first processing unit, second processing unit, third processing unit, and fourth processing unit may also be partially located in different processors, for example, the first processing unit and second processing unit are located in a sensor hub, and the third processing unit and fourth processing unit are located in a CPU. The first processing unit, second processing unit, third processing unit, and fourth processing unit may also be located in different processors, for example, the first of the first processing unit, second processing unit, third processing unit, and fourth processing unit is located in a sensor hub, the second is located in a CPU, the third is located in a GPU, and the fourth is located in another CPU.
[0728] In one example, the first processing unit can be a Cortex-M33 core, the second processing unit can be a Cortex-M55 core, the third processing unit can be a Cortex-M55 core, and the fourth processing unit can be a Cortex-M33 core. Further optionally, the first processing unit can be a sensor hub core, specifically a Cortex-M33 core; the second processing unit can be a CPU core, specifically a Cortex-M55 core; the third processing unit can be a CPU core, specifically a Cortex-M55 core; and the fourth processing unit can be a sensor hub core, specifically a Cortex-M33 core.
[0729] Furthermore, the first processing unit, the second processing unit, the third processing unit, and the fourth processing unit may be located in the same device, or may be partially or entirely located in different devices; the first processing unit, the second processing unit, the third processing unit, and the fourth processing unit may be located in the same chip, or may be partially or entirely located in different chips.
[0730] In one example, the first processing unit is a small CPU core of the device, the second processing unit is a large CPU core of the device, the third processing unit is a large CPU core of the device, and the fourth processing unit is a small CPU core of the device. The first, second, third, and fourth processing units can be located in the same CPU, partially in the same CPU, or in different CPUs; or, the first, second, third, and fourth processing units can be located in the same device, partially in the same device, or in different devices, wherein the device can be a server or a terminal device. The method 1900 includes:
[0731] S1901: The first processing unit acquires first sensing data from the first sensor at a first frequency.
[0732] In some embodiments, the first processing unit acquires first sensing data from the first sensor at a first frequency, which can also be described as: the first processing unit acquires first sensing data from the first sensor at a first time interval.
[0733] It is understandable that the first frequency does not refer to a fixed frequency; the first frequency can vary. Similarly, the first duration does not refer to a fixed duration; it can also vary.
[0734] S1902: The first processing unit obtains the first service data based on the first sensing data, wherein the first service data corresponds to the first service.
[0735] S1903: The first processing unit sends the first service data to the second processing unit at a second frequency, wherein the second frequency is lower than the first frequency.
[0736] In some embodiments, the first processing unit sends the first service data to the second processing unit at a second frequency, which can also be described as: the first processing unit sends the first service data to the second processing unit at a second time interval, wherein the first time interval is less than the second time interval.
[0737] Understandably, the second frequency does not refer to a fixed frequency; the second frequency can vary. Similarly, the second duration does not refer to a fixed duration; it can also vary.
[0738] S1904: After receiving the first service data, the second processing unit processes the first service data.
[0739] S1905: When the first service needs to be displayed, the second processing unit generates the display data corresponding to the first service based on the processed first service data.
[0740] S1906: The second processing unit sends the display data corresponding to the first service to the display unit.
[0741] The explanation of steps S1901 to S1906 is as follows: Figure 5 The explanations of S501 to S506 in the illustrated embodiments are the same, and for the sake of brevity, they will not be repeated here.
[0742] S1907: The fourth processing unit acquires fourth sensor data from the fourth sensor at an eighth frequency.
[0743] In some embodiments, the fourth processing unit acquires fourth sensing data from the fourth sensor at an eighth frequency, which can also be described as: the fourth processing unit acquires fourth sensing data from the fourth sensor every eighth time interval.
[0744] It is understandable that the eighth frequency does not refer to a fixed frequency; the eighth frequency can vary. Similarly, the eighth duration does not refer to a fixed duration; it can also vary.
[0745] S1908: The fourth processing unit obtains the sixth service data based on the fourth sensor data, wherein the sixth service data corresponds to the sixth service.
[0746] In some embodiments, the fourth processing unit includes a sixth service. After acquiring fourth sensing data from the fourth sensor, the fourth processing unit processes the fourth sensing data in the sixth service to obtain sixth service data corresponding to the sixth service.
[0747] S1909: The fourth processing unit sends the sixth service data to the third processing unit at the tenth frequency, wherein the tenth frequency is lower than the eighth frequency.
[0748] In some embodiments, preferably, the tenth frequency can be the frequency at which the third processing unit processes the sixth service data. This ensures that the frequency at which the third processing unit receives the sixth service data is the same as the frequency at which the third processing unit processes the sixth service data, enabling the third processing unit to effectively process the sixth service data in each processing cycle without any idle processing or overload processing. This results in a more stable load level for the third processing unit and reduces the power consumption of the device.
[0749] In some embodiments, the tenth frequency may be lower than the frequency at which the third processing unit processes the sixth service data. Thus, the frequency at which the third processing unit receives the sixth service data is lower than the frequency at which the third processing unit processes the sixth service data. Although the third processing unit has idle processing and centralized data processing, the frequency at which the third processing unit is woken up can be further reduced, thereby further reducing the power consumption of the electronic device.
[0750] In some embodiments, the tenth frequency can be higher than the frequency at which the third processing unit processes the sixth service data. In this way, the frequency at which the third processing unit receives the sixth service data is higher than the frequency at which the third processing unit processes the sixth service data. The third processing unit does not have an idle processing situation. Compared with the existing method, it can also reduce the frequency at which the third processing unit is woken up, and can also reduce the power consumption of the electronic device.
[0751] It is understandable that the first frequency and the eighth frequency can be the same or different.
[0752] It is understandable that the tenth frequency and the second frequency can be the same or different.
[0753] When the tenth frequency and the second frequency are the same, the first processing unit can send the first service data and the sixth service data together to the second processing unit, or the first processing unit can send the first service data and the sixth service data to the second processing unit separately.
[0754] In some embodiments, the fourth processing unit sends the sixth service data to the third processing unit at a tenth frequency, which can also be described as: the fourth processing unit sends the sixth service data to the third processing unit every tenth time interval, wherein the eighth time interval is less than the tenth time interval.
[0755] It is understandable that the tenth frequency does not refer to a fixed frequency; the tenth frequency can vary. Similarly, the tenth duration does not refer to a fixed duration; it can also vary.
[0756] S1910: After receiving the sixth service data, the third processing unit processes the sixth service data.
[0757] S1911: When the sixth service needs to be displayed, the third processing unit generates the display data corresponding to the sixth service based on the processed sixth service data.
[0758] S1912: The third processing unit sends the display data corresponding to the sixth service to the display unit.
[0759] The explanation of steps S1907 to S1912 is as follows: Figure 5 The explanations of S501 to S506 in the illustrated embodiments are similar, and for the sake of brevity, they will not be repeated here.
[0760] In some embodiments, steps S1904 to S1906 and S1910 to S1912 described above are optional steps.
[0761] It is understandable that S1901 to S1906 and S1907 to S1912 can be executed simultaneously, partially simultaneously, or completely simultaneously.
[0762] Understandably, the primary business can also provide... Figure 10 The first service in the embodiment can also acquire second sensing data collected by the second sensor, and determine the first service data based on the first sensing data and the second sensing data.
[0763] In this embodiment, after multiple low-performance processing units process the received sensor data to obtain different service data, the low-performance processing units can send the different service data to multiple high-performance processing units at a lower frequency than the frequency of processing the sensor data, which can further reduce the power consumption of electronic devices.
[0764] exist Figure 19 Based on the illustrated embodiments, by way of example, Figure 20 The diagram shows a layout of several first processing units, second processing units, third processing units, and fourth processing units provided in the embodiments of this application.
[0765] like Figure 20 As shown in (a), the first processing unit, the second processing unit, the third processing unit and the fourth processing unit may be located in the same device. For example, the first processing unit, the second processing unit, the third processing unit and the fourth processing unit may all be located in the first device.
[0766] In some embodiments, the first processing unit is a first processor, the second processing unit is a second processor, the third processing unit is a third processor, and the fourth processing unit is a fourth processor; or the first processing unit is a first core of the processor, the second processing unit is a second core of the processor, the third processing unit is a third core of the processor, and the fourth processing unit is a fourth core of the processor. It is understood that the first processing unit, the second processing unit, the third processing unit, or the fourth processing unit may also refer to a chip, and this application does not limit this.
[0767] like Figure 20 As shown in (b), the first processing unit, the second processing unit, the third processing unit and the fourth processing unit may be located in different devices. For example, the first processing unit and the fourth processing unit may be located in the first device, and the second processing unit and the third processing unit may be located in the second device. The first device may be a first server or a first terminal device, and the second device may be a second server or a second terminal device.
[0768] In one example, the first processing unit is the first processor of the first device, the second processing unit is the second processor of the first device, the third processing unit is the third processor of the second device, and the fourth processing unit is the fourth processor of the second device; or the first processing unit is the first core of the processor of the first device, the second processing unit is the second core of the processor of the first device, the third processing unit is the third core of the processor of the second device, and the fourth processing unit is the fourth core of the processor of the second device.
[0769] In some embodiments, the first processing unit and the fourth processing unit are located on the first server, and the second processing unit and the third processing unit are located on the second server, wherein the first server may be a lightweight server and the second server may be a high-performance server.
[0770] like Figure 20 As shown in (c), the first processing unit, the second processing unit, the third processing unit, and the fourth processing unit can be located in different devices. For example, the first processing unit can be located in the first device, the second processing unit can be located in the second device, the third processing unit can be located in the third device, and the fourth processing unit can be located in the fourth device. The first device can be a first server or a first terminal device, the second device can be a second server or a second terminal device, the third device can be a third server or a third terminal device, and the fourth device can be a fourth server or a fourth terminal device.
[0771] In one example, the first processing unit is the processor of the first device, the second processing unit is the processor of the second device, the third processing unit is the processor of the third device, and the fourth processing unit is the processor of the fourth device; or the first processing unit is the core of the processor of the first device, the second processing unit is the core of the processor of the second device, the third processing unit is the core of the processor of the third device, and the fourth processing unit is the core of the processor of the fourth device.
[0772] In some embodiments, the first processing unit is located on the first server, the second processing unit is located on the second server, the third processing unit is located on the third server, and the fourth processing unit is located on the fourth server, wherein the first server and the fourth server may be lightweight servers, and the second server and the third server may be high-performance servers.
[0773] In some embodiments, the first processing unit may be a small CPU core of the first device, the second processing unit may be a large CPU core of the second device, the third processing unit may be a large CPU core of the second device, and the fourth processing unit may be a small CPU core of the third device.
[0774] In some embodiments, the first processing unit and the third processing unit may be located in the first device, and the second processing unit and the fourth processing unit may be located in the second device.
[0775] In some embodiments, any three of the first processing unit, second processing unit, third processing unit, and fourth processing unit may be located in the first device, and the other three processing units may be located in the second device.
[0776] It is understood that the transmission or reception at the x-th frequency described in the above embodiments can be interpreted as transmission or reception at x-th time intervals. During the interaction between different processing units, the x-th time interval can be constant or variable. For example, during the process of the first processing unit acquiring first sensing data from the first sensor at first time intervals, the first time interval can be fixed, meaning the time interval between two acquisitions of the first sensing data by the first processing unit is the same; or the first time interval can be variable, meaning the time interval between two acquisitions of the first sensing data by the first processing unit can be different.
[0777] It is understood that there can be one or more high-performance processing units; each high-performance processing unit can send display data to the display unit for display; the display data of each high-performance processing unit is determined based on business data, and the data source of the business data acquired by each high-performance processing unit can be one or more low-performance processing units. For each low-performance processing unit, it can include one or more services, wherein each service is responsible for converting the acquired sensor data into business data, and the data source of the sensor data acquired by each service can be one or more sensors.
[0778] There can be one or more high-performance units; the data source for each high-performance unit can be one or more low-performance units. Each low-performance unit can include one or more services. The data for each service can be obtained from data collected by one or more sensors. It should be understood that: Figure 5 The embodiments, Figure 8 The illustrated embodiment Figure 10 The illustrated embodiment Figure 12 The illustrated embodiment Figure 15 The illustrated embodiment Figure 17 The illustrated embodiments and Figure 19 In the embodiments shown, each embodiment can be implemented individually or in combination of any two or more embodiments.
[0779] One or more modules or units described herein can be implemented in software, hardware, or a combination of both. When any of the above modules or units are implemented in software, the software exists as computer program instructions and is stored in memory. A processor can be used to execute the program instructions and implement the above method flow. The processor can include, but is not limited to, at least one of the following: a central processing unit (CPU), a microprocessor, a digital signal processor (DSP), a microcontroller unit (MCU), or an artificial intelligence processor, etc., and various computing devices that run software. Each computing device may include one or more cores for executing software instructions to perform calculations or processing. The processor can be built into a SoC (System-on-a-Chip) or an application-specific integrated circuit (ASIC), or it can be a separate semiconductor chip. In addition to the cores within the processor for executing software instructions to perform calculations or processing, it may further include necessary hardware accelerators, such as field-programmable gate arrays (FPGAs), PLDs (programmable logic devices), or logic circuits that implement dedicated logic operations.
[0780] When the modules or units described herein are implemented in hardware, the hardware may be any one or any combination of a CPU, microprocessor, DSP, MCU, artificial intelligence processor, ASIC, SoC, FPGA, PLD, application-specific digital circuit, hardware accelerator, or non-integrated discrete device, which may run the necessary software or perform the above method flow independently of software.
[0781] When the modules or units described herein are implemented using software, they can be implemented, in whole or in part, in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state disk (SSD)).
[0782] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0783] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0784] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0785] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0786] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0787] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0788] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A data processing method, characterized in that, The method includes: The first processing unit acquires first sensing data from the first sensor at a first time interval; The first processing unit obtains first service data based on the first sensing data, and the first service data corresponds to the first service; The first processing unit sends the first service data to the second processing unit at second intervals, where the first interval is shorter than the second interval, and the processing performance of the first processing unit is weaker than that of the second processing unit.
2. The method according to claim 1, characterized in that, The method further includes: The first processing unit obtains second service data based on the first sensing data, and the second service data corresponds to the second service. The first processing unit sends the second service data to the second processing unit every third time interval, wherein the first time interval is less than the third time interval.
3. The method according to claim 2, characterized in that, The first duration is the minimum time interval between the time interval during which the first processing unit processes the first sensor data in the first service and the time interval during which the first sensor data is processed in the second service.
4. The method according to claim 2 or 3, characterized in that, The second duration is the time interval during which the second processing unit processes the first service data, and the third duration is the time interval during which the second processing unit processes the second service data.
5. The method according to any one of claims 1 to 4, characterized in that, The method further includes: The first processing unit acquires second sensing data from the second sensor every fourth time interval; The first processing unit obtains the first service data based on the first sensing data, including: The first processing unit obtains the first service data based on the first sensor data and the second sensor data.
6. The method according to any one of claims 1 to 5, characterized in that, The method further includes: The first processing unit acquires third sensing data from the third sensor every fifth time interval; The first processing unit obtains third service data based on the third sensor data, and the third service data corresponds to the third service; The first processing unit sends the third service data to the second processing unit every sixth time interval, wherein the fifth time interval is shorter than the sixth time interval.
7. The method according to any one of claims 1 to 6, characterized in that, The method further includes: The first processing unit obtains fourth service data based on the first sensing data, and the fourth service data corresponds to the fourth service. The first processing unit sends the fourth service data to the third processing unit every seventh time interval. The first time interval is shorter than the seventh time interval, and the processing performance of the first processing unit is weaker than that of the third processing unit.
8. The method according to any one of claims 1 to 7, characterized in that, The method is applied to a processor, wherein the first processing unit is the first core of the processor, and the second processing unit is the second core of the processor.
9. The method according to claim 8, characterized in that, The processor is a central processing unit (CPU).
10. The method according to any one of claims 1 to 7, characterized in that, The first processing unit is a first processor, and the second processing unit is a second processor.
11. The method according to any one of claims 2 to 4, characterized in that, The first service is any one of calorie calculation service, gesture recognition service, motion state recognition service, step counting service, heart rate calculation service, cardiac electrical activity measurement service, barometric pressure measurement service, and magnetic force measurement service. The second service is any one of calorie calculation service, gesture recognition service, motion state recognition service, step counting service, heart rate calculation service, cardiac electrical activity measurement service, barometric pressure measurement service, and magnetic force measurement service. The first sensor is any one of accelerometer, gyroscope, PPG sensor, A+G sensor, EGG sensor, barometric pressure sensor, and magnetic force sensor. The first service and the second service are different.
12. An apparatus, characterized in that, The device includes: A first processing unit is configured to perform the method as described in any one of claims 1 to 11.
13. The apparatus according to claim 12, characterized in that, The device is a processor.
14. The apparatus according to claim 13, characterized in that, The first processing unit is the first core of the processor.
15. A data processing apparatus, characterized in that, The device includes a first processing unit and a second processing unit, wherein... The first processing unit is configured to perform the method as described in any one of claims 1 to 11; The second processing unit is used to receive service data sent by the first processing unit.
16. The apparatus according to claim 15, characterized in that, The second processing unit is further configured to: Process the business data from the first processing unit; When the business corresponding to the business data has a display requirement, the display data corresponding to the business is determined based on the processed business data.
17. The apparatus according to claim 15 or 16, characterized in that, The first processing unit is a first processor, and the second processing unit is a second processor, wherein the processing performance of the first processor is weaker than that of the second processor; or, The first processing unit is the first core of the third processor, the second processing unit is the second core of the third processor, the processing performance of the first core is weaker than that of the second core, and the device includes the third processor.
18. The apparatus according to any one of claims 15 to 16, characterized in that, The device is an electronic device or a processor.
19. The apparatus according to any one of claims 15 to 18, characterized in that, The device further includes a third processing unit, wherein the processing performance of the first processing unit is weaker than that of the third processing unit. The first processing unit is further configured to: Based on the first sensor data, the fourth service data is obtained, and the fourth service data corresponds to the fourth service. The fourth service data is sent to the third processing unit every seventh time interval, and the first time interval is less than the seventh time interval. The third processing unit is used for: The fourth business data is processed; When the fourth service has a display requirement, the display data corresponding to the fourth service is determined based on the processed fourth service data.
20. The apparatus according to any one of claims 15 to 19, characterized in that, The device further includes a fourth processing unit, the processing performance of which is weaker than that of the second processing unit. The fourth processing unit is used for: Every eighth time interval, data from the fourth sensor is acquired; Based on the fourth sensor data, the fifth service data is obtained, and the fifth service data corresponds to the fifth service. The fifth service data is sent to the second processing unit at a ninth interval, wherein the eighth interval is shorter than the ninth interval. The second processing unit is further configured to: The fifth business data is processed; When the fifth service has a display requirement, the display data corresponding to the fifth service is determined based on the processed fifth service data.
21. The apparatus according to claim 20, characterized in that, The device further includes a third processing unit, wherein the processing performance of the first processing unit is weaker than that of the third processing unit. The fourth processing unit is also used for: Based on the fourth sensor data, the sixth service data is obtained, and the sixth service data corresponds to the sixth service. The sixth service data is sent to the third processing unit every ten time intervals, and the eighth time interval is less than the tenth time interval. The third processing unit is also used for: The sixth business data is processed; When the sixth service has a display requirement, the display data corresponding to the sixth service is determined based on the processed sixth service data.
22. A computer-readable storage medium, characterized in that, The storage medium stores a program or instructions that, when executed, implement the method as described in any one of claims 1 to 11.
23. A chip, characterized in that, The chip includes a first processing unit, which stores instructions that, when executed, cause the first processing unit to perform the method as described in any one of claims 1 to 11.
24. The chip according to claim 23, characterized in that, The chip also includes a second processing unit, which is used to receive service data sent by the first processing unit.
25. The chip according to claim 24, characterized in that, The second processing unit is further configured to: Process the business data from the first processing unit; When the business corresponding to the business data has a display requirement, the display data corresponding to the business is determined based on the processed business data.
26. The chip according to claim 24 or 25, characterized in that, The first processing unit is a first processor, and the second processing unit is a second processor, wherein the processing performance of the first processor is weaker than that of the second processor; or, The first processing unit is the first core of the third processor, the second processing unit is the second core of the third processor, the processing performance of the first core is weaker than that of the second core, and the chip includes the third processor.
27. A computer program product, characterized in that, The computer program product stores a program or instructions that, when executed, implement the method as described in any one of claims 1 to 11.