A wireless communication method, device, electronic device, and storage medium
By employing a preset bandwidth allocation strategy with communication time slots as the minimum bandwidth allocation granularity in wireless communication, the problem of high cost in multi-protocol coexistence scenarios is solved, and low-cost, low-power wireless communication is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-15
- Publication Date
- 2026-04-14
Smart Images

Figure CN115696467B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of wireless communication technology, and more specifically, to a wireless communication method, apparatus, electronic device, and storage medium. Background Technology
[0002] In wireless communication scenarios requiring the coexistence of multiple protocols, problems such as long communication latency and low channel utilization exist. Due to these problems, existing technologies offer the following solutions to address scenarios with multiple protocols coexisting:
[0003] (1) Setting up multiple chips for multiple protocols, but this approach undoubtedly greatly increases the manufacturing cost of the product;
[0004] (2) For a single chip, overclocking is used to make multi-protocol coexistence possible in multi-protocol coexistence scenarios. However, overclocking will shorten the chip life and increase the chip usage cost.
[0005] (3) For a single chip, a dynamic bandwidth allocation algorithm is set up in the scenario of multiple protocols coexisting to achieve the coexistence of multiple protocols. Although the dynamic bandwidth allocation algorithm can reduce communication latency to a certain extent, the requirements of the algorithm on chip performance and the introduction of the algorithm itself will increase the manufacturing cost of the product.
[0006] In summary, existing solutions for wireless communication scenarios with multiple protocols coexisting significantly increase product costs. Therefore, there is an urgent need for a low-cost wireless communication method for such scenarios. Summary of the Invention
[0007] The purpose of this application is to provide a wireless communication method, apparatus, electronic device, and storage medium to solve the problem of high product cost in wireless communication scenarios where multiple protocols coexist.
[0008] In a first aspect, embodiments of this application provide a wireless communication method, comprising: after detecting the arrival of a communication task, acquiring the communication task and its task information; acquiring a bandwidth allocation scheme for the communication task according to a preset bandwidth allocation strategy with communication time slots as the minimum bandwidth allocation granularity; executing the communication task by invoking a physical channel, and then monitoring whether the next communication task has arrived. In the implementation of the above scheme, by setting the bandwidth allocation strategy to allocate bandwidth to the communication task with communication time slots as the minimum bandwidth allocation granularity, the cost of wireless communication in multi-protocol coexistence scenarios is effectively reduced.
[0009] Optionally, in this embodiment, the communication task is: a wireless communication task based on a standard protocol and / or a wireless communication task based on a proprietary protocol; the step of calling the physical channel to execute the communication task specifically means: calling the physical channel to execute a wireless communication task based on a standard protocol and / or a wireless communication task based on a proprietary protocol. In the implementation of the above scheme, the communication task can be a wireless communication task based on a standard communication protocol, a wireless communication task based on a proprietary communication protocol, or a wireless communication task composed of a combination of both, enabling the wireless communication method to adapt to more user scenarios and effectively improving its adaptability.
[0010] Optionally, in this embodiment, the bandwidth allocation strategy includes: a fixed allocation strategy, which allocates fixed bandwidth to communication tasks with communication time slots as the smallest bandwidth allocation granularity; and a non-fixed allocation strategy, which sets primary and secondary tasks, allocating all bandwidth to the primary task with communication time slots as the smallest bandwidth allocation granularity, while the secondary task only occupies bandwidth when transmitting data. In the implementation of the above scheme, two bandwidth allocation methods are set, thereby enabling the wireless communication method to adapt to more user scenarios and effectively improving the adaptability of the wireless communication method.
[0011] Optionally, in this embodiment, the preset bandwidth allocation strategy allocates bandwidth to wireless communication tasks based on standard protocols or private protocols with the communication time slot as the minimum bandwidth allocation granularity. In implementing the above scheme, the preset bandwidth allocation strategy can allocate bandwidth to wireless communication tasks based on standard protocols with the communication time slot as the minimum bandwidth allocation granularity, or it can allocate bandwidth to wireless communication tasks based on private protocols. In implementing the above scheme, by setting the bandwidth allocation strategy to allocate bandwidth to wireless communication tasks based on standard protocols or private protocols with the communication time slot as the minimum bandwidth allocation granularity, the cost of wireless communication in multi-protocol coexistence scenarios is effectively reduced.
[0012] Optionally, in this embodiment, the task information includes a communication task timestamp and the physical channel required for the communication task; the wireless communication method further includes: determining the start and end times of the communication task based on the communication task timestamp; and calling the corresponding physical channel to execute the communication task within the start and end times of the communication task based on the physical channel required for the communication task. In the implementation of the above scheme, the task information only needs to obtain the communication task timestamp and the physical channel required for the communication task, effectively reducing the cost of wireless communication in scenarios with multiple protocols coexisting.
[0013] Optionally, in this embodiment, the wireless communication method further includes: allocating bandwidth for all communication tasks under the same timestamp. By synchronously allocating bandwidth for all communication tasks under the same timestamp, multi-protocol coexistence becomes possible, effectively reducing the cost of wireless communication in multi-protocol coexistence scenarios.
[0014] This application also provides a wireless communication device, including: a communication task acquisition module, used to acquire communication tasks and their task information, and send the task information to a task scheduling module; a task scheduling module, used to acquire a bandwidth allocation scheme for the current communication task according to a preset bandwidth allocation strategy with communication time slots as the minimum bandwidth allocation granularity, and send the task information and bandwidth allocation scheme to a task identification and allocation module; a task identification and allocation module, used to allocate the communication task to a physical channel according to the task information; and a physical channel, used to execute the communication task according to the task information and the bandwidth allocation scheme.
[0015] Optionally, in this embodiment of the application, the wireless communication device further includes: a timestamp generation module, which is connected to the task scheduling module and the physical channel respectively, and is used to provide the same timestamp reference for the task scheduling module and the physical channel.
[0016] Optionally, in this embodiment of the application, the communication task acquired by the communication task acquisition module is: a wireless communication task based on a standard protocol and / or a wireless communication task based on a proprietary protocol; the physical channel executes the wireless communication task based on a standard protocol and / or the wireless communication task based on a proprietary protocol.
[0017] Optionally, in this embodiment, the bandwidth allocation strategy in the task scheduling module includes: a fixed allocation strategy, which allocates fixed bandwidth to communication tasks with the communication time slot as the minimum bandwidth allocation granularity; and a non-fixed allocation strategy, which allocates all bandwidth to the primary task with the communication time slot as the minimum bandwidth allocation granularity by setting primary and secondary tasks, while the secondary task only occupies bandwidth when transmitting data.
[0018] Optionally, in this embodiment of the application, the bandwidth allocation strategy in the task scheduling module allocates bandwidth to wireless communication tasks based on standard protocols or wireless communication tasks based on proprietary protocols with the communication time slot as the minimum bandwidth allocation granularity.
[0019] Optionally, in this embodiment, the task information acquired by the communication task acquisition module includes the communication task timestamp and the physical channel required for the communication task; the task scheduling module specifically determines the start and end times of the communication task based on the communication task timestamp; and calls the corresponding physical channel to execute the communication task within the start and end times of the communication task based on the physical channel required for the communication task.
[0020] This application also provides an electronic device, including: a processor, a memory, and a bus, wherein the processor and the memory communicate with each other via the bus; the memory stores program instructions that can be executed by the processor, and the processor can execute the method described above by calling the program instructions.
[0021] This application also provides a computer-readable storage medium storing a computer program that is executed by a processor to perform the methods described above.
[0022] Other features and advantages of this application will be set forth in the following description and will be apparent in part from the description or may be learned by practicing embodiments of this application. The objectives and other advantages of this application may be realized and obtained by means of the structures particularly pointed out in the written description, claims, and drawings. Attached Figure Description
[0023] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0024] Figure 1 A flowchart illustrating a wireless communication method performed by an electronic device (e.g., a device terminal) provided in an embodiment of this application;
[0025] Figure 2 A schematic diagram illustrating the bandwidth allocation method when Bluetooth audio and private audio coexist in a scenario provided in this application embodiment, using a fixed bandwidth allocation strategy.
[0026] Figure 3 This is a schematic diagram of the structure of a wireless communication device provided in an embodiment of this application;
[0027] Figure 4 This is a schematic diagram of bandwidth allocation for establishing a link using a reserved fixed bandwidth method, provided in an embodiment of this application.
[0028] Figure 5 This application provides a schematic diagram of the structure of a wireless communication system according to an embodiment of the present application.
[0029] Figure 6 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0030] The technical solutions in the embodiments of this application will now be described with reference to the accompanying drawings.
[0031] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains; the terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the application; the terms “comprising” and “having”, and any variations thereof, in the specification, claims, and foregoing description of the drawings are intended to cover non-exclusive inclusion.
[0032] In the description of the embodiments of this application, technical terms such as "first" and "second" are used only to distinguish different objects and should not be construed as indicating or implying relative importance or implicitly specifying the number, specific order, or primary and secondary relationship of the indicated technical features. In the description of the embodiments of this application, "multiple" means two or more, unless otherwise explicitly defined.
[0033] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0034] In the description of the embodiments in this application, the term "and / or" 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. Additionally, the character " / " in this document generally indicates that the preceding and following related objects have an "or" relationship.
[0035] In the description of the embodiments of this application, the term "multiple" refers to two or more (including two), similarly, "multiple sets" refers to two or more (including two sets), and "multiple pieces" refers to two or more (including two pieces).
[0036] In the description of the embodiments of this application, unless otherwise expressly specified and limited, technical terms such as "installation," "connection," "joining," and "fixing" should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal communication of two components or the interaction between two components. For those skilled in the art, the specific meaning of the above terms in the embodiments of this application can be understood according to the specific circumstances.
[0037] It should be noted that the wireless communication method provided in this application embodiment can be executed by an electronic device. Here, an electronic device refers to a device terminal or server with the function of executing computer programs. Device terminals include, for example, smartphones, personal computers, tablets, personal digital assistants, or mobile internet devices. A server refers to a device that provides computing services through a network. Servers include, for example, x86 servers and non-x86 servers. Non-x86 servers include, for example, mainframes, minicomputers, and UNIX servers.
[0038] Figure 1 A flowchart illustrating the wireless communication method performed by an electronic device (e.g., a device terminal) provided in the embodiments of this application:
[0039] This method can be applied to electronic devices (e.g., device terminals). The main idea is to allocate bandwidth for communication tasks using communication time slots as the smallest granularity. Implementation methods for the aforementioned wireless communication method may include:
[0040] S110: After detecting the arrival of a communication task, obtain the communication task and its task information;
[0041] S120: Obtain the bandwidth allocation scheme for the communication task according to a preset bandwidth allocation strategy with the communication time slot as the minimum bandwidth allocation granularity;
[0042] It should be noted that the bandwidth allocation in this embodiment does not only allocate bandwidth for the currently arriving communication task, but also for all communication tasks within the physical channel allocated to the current task. For example, in a scenario where Bluetooth audio and private audio coexist, if the private 2.4G communication task arrives first, then according to the preset bandwidth allocation strategy, all bandwidth is allocated to the 2.4G communication task. Subsequently, after the Bluetooth communication task arrives, bandwidth allocation needs to be performed for both the 2.4G communication task and the Bluetooth communication task.
[0043] S130: Call the physical channel to execute a communication task, and then monitor whether the next communication task has arrived.
[0044] In this embodiment, bandwidth allocation is performed on communication tasks with communication time slots as the smallest bandwidth allocation granularity, making it possible for multiple protocols to coexist on a single chip and reducing product manufacturing costs; it also effectively avoids communication conflict problems in multi-protocol coexistence scenarios and improves communication latency in multi-protocol coexistence scenarios; at the same time, it also greatly reduces the product's operating power consumption.
[0045] As an optional implementation of the above wireless communication method, the communication task can be a single communication task involving a single communication protocol or a combination of multiple communication tasks involving different protocols. These two implementations are described in detail below:
[0046] In the first implementation, the communication task is a single communication task involving a single communication protocol. For example, in a scenario where the standard Bluetooth protocol and the proprietary 2.4G protocol coexist, if the Bluetooth communication arrives before the proprietary 2.4G communication, a single communication task involving the standard Bluetooth protocol and a single communication task involving the proprietary 2.4G protocol are generated, and these two communication tasks arrive one after the other.
[0047] In the second implementation, the communication task involves multiple communication tasks with multiple communication protocols. For example, in a scenario where the standard Bluetooth protocol and the proprietary 2.4G protocol coexist, if Bluetooth communication and proprietary 2.4G communication arrive at the same time, a single communication task is generated. Under this communication task, two communication tasks are set up, one involving the standard Bluetooth protocol and the other involving the 2.4G protocol.
[0048] As an optional implementation of the above wireless communication method, the communication task can be a wireless communication task based on a standard protocol, a wireless communication task based on a proprietary protocol, or a wireless communication task composed of both standard protocol-based and proprietary protocol-based communication tasks. These three implementation methods are described in detail below:
[0049] In the first implementation, the communication task is a wireless communication task based on a standard protocol. For example, in a scenario where a user plays audio using a Bluetooth device, the communication task is simply a wireless communication task based on the standard Bluetooth protocol. In this first implementation, calling the physical channel to execute the communication task specifically means: calling the physical channel to execute a wireless communication task based on a standard protocol.
[0050] In the second implementation, the communication task is a wireless communication task based on a proprietary protocol. For example, in a scenario where a user plays audio using a 2.4G device, the communication task is simply a wireless communication task based on a proprietary 2.4G protocol. In this second implementation, calling the physical channel to execute the communication task specifically means calling the physical channel to execute a wireless communication task based on the proprietary protocol.
[0051] In the third implementation, the communication task is a wireless communication task composed of a standard protocol-based communication task and a proprietary protocol-based communication task. For example, in a scenario where the standard Bluetooth protocol and the proprietary 2.4G protocol coexist, if Bluetooth communication and proprietary 2.4G communication arrive simultaneously, then two communication tasks are set up, one involving the standard Bluetooth protocol and the other involving the 2.4G protocol. In this third implementation, calling the physical channel to execute the communication task specifically means: calling the physical channel to execute both the standard protocol-based wireless communication task and the proprietary protocol-based wireless communication task.
[0052] Optionally, the communication task in this application embodiment can be various standard communication protocols and / or proprietary communication protocols of different frequency bands such as BT, BLE, 2.4G, 5.8G, VHF or UHF.
[0053] As an optional implementation of the above wireless communication method, the bandwidth allocation strategy in step S120 can be a fixed allocation strategy or a non-fixed allocation strategy. These two implementations are described in detail below:
[0054] In the first implementation, the bandwidth allocation strategy is a fixed allocation strategy. This means that a fixed bandwidth is allocated to the communication task according to a certain bandwidth cycle, with the communication time slot as the smallest bandwidth allocation granularity. For example, in a scenario where Bluetooth audio and proprietary audio coexist, a fixed bandwidth is allocated to both the Bluetooth communication task and the proprietary 2.4G communication task according to a certain bandwidth cycle. Figure 2 Taking the scenario shown as an example, every 6 slots, 4 slots of bandwidth are allocated to the private 2.4G communication task, and 2 slots of bandwidth are allocated to the Bluetooth communication task.
[0055] In the scenario where Bluetooth audio and proprietary audio coexist in this embodiment, the preset bandwidth allocation strategy in this application embodiment allocates bandwidth to communication tasks with n*slot as the smallest granularity, where n = 1, 2, ...; slot is a Bluetooth communication time slot; that is, regardless of the length of the transmission packet, the transmission time is always an integer multiple of the slot; the time slot in this application embodiment is specifically as follows:
[0056] In the physical link of Bluetooth communication, a 625μs time slice can be considered as the time it takes for one Bluetooth device to send a packet to another device.
[0057] by Figure 2 Taking the allocation method shown as an example, n*slots are used as the smallest granularity:
[0058] The bandwidth can be allocated in 1*slot increments, with 4*1*slots of bandwidth allocated to the private 2.4G communication task and 2*1*slots of bandwidth allocated to the Bluetooth communication task every 6*1*slots.
[0059] Alternatively, with 2*slot as the smallest granularity, allocate 2*2*slot of bandwidth to the private 2.4G communication task and 1*2*slot of bandwidth to the Bluetooth communication task every 3*2*slot intervals.
[0060] The second implementation uses a non-fixed bandwidth allocation strategy, which involves setting primary and secondary tasks. The primary task is allocated all bandwidth, while the secondary task only uses bandwidth when transmitting data. For example, in a scenario where Bluetooth audio and private audio coexist, the Bluetooth communication task only uses bandwidth when transmitting data via Bluetooth, while the private 2.4G communication task uses all bandwidth at other times.
[0061] As an optional implementation of the above wireless communication method, the preset bandwidth allocation strategy can allocate bandwidth for wireless communication tasks based on standard protocols with the communication time slot as the minimum bandwidth allocation granularity, or it can allocate bandwidth for wireless communication tasks based on proprietary protocols. These two implementations are described in detail below:
[0062] The first implementation method is to use a preset bandwidth allocation strategy to allocate bandwidth to wireless communication tasks based on standard protocols with the communication time slot as the minimum bandwidth allocation granularity. For example, in the scenario where Bluetooth audio and proprietary audio coexist, bandwidth is allocated to standard Bluetooth communication tasks with n*slot as the minimum granularity, where n = 1, 2, ...; slot is the Bluetooth communication time slot.
[0063] The second implementation method is to use a preset bandwidth allocation strategy to allocate bandwidth for wireless communication tasks based on private protocols with the communication time slot of the wireless communication task based on the standard protocol as the minimum bandwidth allocation granularity. For example, in the scenario where Bluetooth audio and private audio coexist, bandwidth is allocated for private 2.4G communication tasks with n*slot as the minimum granularity, where n = 1, 2, ...; slot is the Bluetooth communication time slot.
[0064] Of course, in the embodiments of this application, the preset bandwidth allocation strategy can not only use the communication time slot of the standard protocol as the smallest granularity to allocate the bandwidth of the communication task, but also use the communication time slot defined by the user as the smallest granularity to allocate the bandwidth of the communication task. The specific process will not be described in detail, as long as the bandwidth allocation of the communication task can be achieved.
[0065] Preferably, in this embodiment of the application, the task information includes: a communication task timestamp and the physical channel required for the communication task.
[0066] Preferably, in this embodiment of the application, the wireless communication method further includes:
[0067] The start and end times of the communication task are determined based on the communication task timestamp;
[0068] The corresponding physical channel is invoked according to the physical channel required by the communication task to execute the communication task within the start and end time of the communication task.
[0069] Preferably, in this embodiment of the application, the wireless communication method further includes:
[0070] All communication tasks are allocated bandwidth based on the same timestamp.
[0071] It should be noted that when the wireless communication method proposed in this application involves communication tasks with multiple different protocols, the process of establishing a link between the local device and other electronic devices needs to be considered.
[0072] As an optional implementation of the above wireless communication method, the method for establishing a link between the local device and other electronic devices can be either by reserving a fixed bandwidth for link establishment, or by increasing the transmission interval of existing communication tasks and increasing the transmission packet length of existing communication tasks. After the local device establishes a link with other electronic devices, bandwidth allocation is performed using the bandwidth allocation scheme obtained in step S120. These two implementation methods are described in detail below:
[0073] In the first implementation, the method for establishing a link between the local device and other electronic devices is to use reserved fixed bandwidth. Figure 4 Taking the scenario shown as an example, this implementation method is as follows: In a scenario where Bluetooth audio and proprietary audio coexist, if the 2.4G communication task arrives before the Bluetooth communication task, then according to the bandwidth allocation strategy described above, the 2.4G communication task is allocated all the bandwidth. When the local machine establishes a link with the Bluetooth device involved in the communication task, the 2.4G communication task increases the transmission interval and reserves a fixed bandwidth for Bluetooth connection scanning in the interval between the two transmissions. For example, 5ms of bandwidth can be reserved for Bluetooth device connection scanning.
[0074] In the second implementation, the method for establishing a link between the local device and other electronic devices is to increase the transmission interval of existing communication tasks and increase the transmission packet length. For example, in a scenario where Bluetooth audio and proprietary audio coexist, the Bluetooth device has a trigger switch, such as a button or various interface messages, to trigger the Bluetooth device to enter connection scanning mode so that other Bluetooth devices can connect. If the 2.4G communication task arrives before the Bluetooth communication task, according to the bandwidth allocation strategy described above, the 2.4G communication task is allocated all bandwidth. When the local device establishes a link with the Bluetooth device involved in the communication task, the trigger switch is activated, and the device enters Bluetooth connection scanning mode. The 2.4G communication task reduces its bandwidth usage, i.e., increases the transmission interval and the packet length of each transmission, thus increasing the transmission delay of the 2.4G communication task. After the link is established, the transmission interval of the 2.4G communication task is reduced, i.e., the bandwidth of the 2.4G communication task is increased. Subsequently, the bandwidth allocation scheme obtained in step S120 is used for bandwidth allocation.
[0075] It should be noted that increasing the transmission interval, i.e., increasing the idle time of existing communication, allows this idle time to be used for other communication. The factor by which the transmission interval increases is always greater than the factor by which the packet length increases. For example, if the transmission interval increases by 10 times, the packet length will double.
[0076] Please see Figure 3 The diagram shown is a structural schematic of a wireless communication device provided in an embodiment of this application; this application provides a wireless communication device 300, including:
[0077] The communication task acquisition module 310 is used to acquire communication tasks and their task information, and send the task information to the task scheduling module 320;
[0078] The task scheduling module 320 is used to obtain the bandwidth allocation scheme of the current communication task according to the preset bandwidth allocation strategy with the communication time slot as the minimum bandwidth allocation granularity, and send the task information and bandwidth allocation scheme to the task identification and allocation module 330.
[0079] The task identification and allocation module 330 is used to allocate communication tasks to the physical channel 340 according to task information;
[0080] Physical channel 340 is used to initiate communication tasks based on task information and bandwidth allocation scheme.
[0081] Optionally, in this embodiment of the application, the wireless communication device 300 further includes:
[0082] The FIFO storage module 350 has its input end connected to the task scheduling module 320 and its output end connected to the task identification and allocation module 330. The FIFO storage module 350 is used to store the task information of each communication task input by the task scheduling module 320 and the bandwidth allocation scheme of the communication task, so that the task identification and allocation module 330 can retrieve them.
[0083] Optionally, in this embodiment of the application, the wireless communication device 300 further includes:
[0084] The timestamp generation module 360 is connected to the task scheduling module 320 and the physical channel 340 respectively, and is used to provide the same timestamp reference for the task scheduling module 320 and the physical channel 340.
[0085] Optionally, in this embodiment of the application, the communication task acquired by the communication task acquisition module 310 can be a wireless communication task based on a standard protocol, a wireless communication task based on a proprietary protocol, or a wireless communication task based on both a standard protocol and a proprietary protocol.
[0086] Optionally, in this embodiment, the physical channel 340 can perform wireless communication tasks based on standard protocols, wireless communication tasks based on proprietary protocols, or both wireless communication tasks based on standard protocols and wireless communication tasks based on proprietary protocols.
[0087] Optionally, in this embodiment, the bandwidth allocation strategy in the task scheduling module 320 is specifically as follows:
[0088] A fixed allocation strategy allocates fixed bandwidth to communication tasks with communication time slots as the smallest bandwidth allocation granularity.
[0089] The non-fixed allocation strategy sets primary and secondary tasks, allocating all bandwidth to the primary task with the communication time slot as the smallest bandwidth allocation granularity, while the secondary task only occupies bandwidth when transmitting data.
[0090] Optionally, in this embodiment, the preset bandwidth allocation strategy in the task scheduling module 320 can allocate bandwidth to wireless communication tasks based on standard protocols with the communication time slot of the wireless communication task based on the standard protocol as the minimum bandwidth allocation granularity, or it can allocate bandwidth to wireless communication tasks based on private protocols with the communication time slot of the wireless communication task based on the standard protocol.
[0091] Optionally, in this embodiment of the application, the task information acquired by the communication task acquisition module 310 includes: the communication task timestamp and the physical channel required for the communication task.
[0092] Optionally, in this embodiment of the application, the task identification and allocation module 330 specifically performs the following: determining the start and end times of the communication task based on the communication task timestamp; and calling the corresponding physical channel according to the physical channel required by the communication task to execute the communication task within the start and end times of the communication task.
[0093] It should be understood that this device corresponds to the above-described interaction method embodiments and is capable of performing the various steps involved in the above-described method embodiments. The specific functions of this device can be found in the description above, and detailed descriptions are omitted here to avoid repetition. The device includes at least one software functional module that can be stored in memory or embedded in the device's operating system (OS) in the form of software or firmware.
[0094] Please see Figure 5 The diagram shows a structural schematic of a wireless communication system provided in an embodiment of this application. This application provides a wireless communication system 500, including:
[0095] The upper-layer protocol stack software 510 is used to pass communication tasks to the software task scheduler 520;
[0096] The software task scheduler 520 is used to allocate bandwidth according to a preset bandwidth allocation strategy, obtain a bandwidth allocation scheme, and put information such as the initiation timestamp of each communication task, the required physical channel, and the bandwidth allocation scheme into a data structure and place it into a FIFO memory 530.
[0097] The FIFO memory 530, or First-In-First-Out memory, is used to store information such as the initiation timestamp of each communication task, the required physical channel, and the bandwidth allocation scheme.
[0098] The task identification and allocation unit 540 is used to retrieve communication tasks from the FIFO memory, parse them, and allocate them to the corresponding baseband processing module 550.
[0099] The baseband processing module 550 has its input connected to the task identification and allocation unit 540 and its output connected to the radio frequency module 560. It includes a BT baseband processing module 551, a BLE baseband processing module 552, a proprietary 2.4G baseband processing module 553, and a 5.8G baseband processing module 554.
[0100] The radio frequency module 560 includes a BT radio frequency module 561, a BLE radio frequency module 562, a private 2.4G radio frequency module 563, and a 5.8G radio frequency module 564, which are respectively connected to the BT baseband processing module 551, the BLE baseband processing module 552, the private 2.4G baseband processing module 553, and the 5.8G baseband processing module 554.
[0101] Optionally, in this embodiment of the application, the wireless communication system 500 further includes:
[0102] The timestamp generator 570 is connected to the software task scheduler 520 and the baseband processing module 550 respectively, and is used to provide the same timestamp reference for the software task scheduler 520 and the baseband processing module 550 so that BT, BLE, proprietary 2.4G and 5.8G protocols can uniformly allocate bandwidth.
[0103] Optionally, in this embodiment of the application, the preset bandwidth allocation strategy in the software task scheduler 520 includes:
[0104] A fixed allocation strategy allocates a fixed bandwidth to communication tasks according to a bandwidth cycle.
[0105] The non-fixed allocation strategy sets primary and secondary tasks, allocating all bandwidth to the primary task and using bandwidth only for secondary tasks when transmitting data.
[0106] Optionally, in the embodiments of this application, the number of main tasks is one or more.
[0107] Optionally, in this embodiment of the application, the method for determining secondary tasks is as follows: all communication tasks other than the primary task are considered secondary tasks.
[0108] The aforementioned wireless communication system 500 can be integrated on a chip, thereby enabling multiple protocols to coexist on a single chip, namely a chip including a radio frequency front-end and a baseband.
[0109] Please see Figure 6 The diagram illustrates the structure of an electronic device provided in an embodiment of this application. An electronic device 600 provided in this application includes a central processing unit (CPU) 601, which can execute various appropriate actions and processes based on computer program instructions stored in a read-only memory (ROM) 602 or loaded from a storage unit into a random access memory (RAM) 603. The RAM 603 can also store various programs and data required for device operation. The CPU 601, ROM 602, and RAM 603 are interconnected via a bus 604. An I / O interface 605 is also connected to the bus 604.
[0110] Multiple components in the device are connected to I / O interface 605, including: input unit 606, such as a keyboard, mouse, etc.; output unit 607, such as various types of displays, speakers, etc.; storage unit 608, such as a disk, optical disk, etc.; and communication unit 609, such as a network card, modem, wireless transceiver, etc. Communication unit 609 allows the device to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0111] CPU 601 executes the various methods and processes described above, such as method steps S110 to S130 in the embodiments of this application. For example, in some embodiments, method steps S110 to S130 in the embodiments of this application may be implemented as a computer software program, which is tangibly contained in a non-transitory computer-readable storage medium, such as a storage unit. In some embodiments, part or all of the computer program may be loaded and / or installed on the device via ROM 602 and / or communication unit 609. When the computer program is loaded into RAM 603 and executed by CPU 601, one or more steps of method steps S110 to S130 in the embodiments of this application described above may be executed. Alternatively, in other embodiments, CPU 601 may be configured to execute method steps S110 to S130 in the embodiments of this application by any other suitable means (e.g., by means of firmware).
[0112] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0113] The program code used to implement the methods of the present invention can be written in any combination of one or more programming languages. This program code can be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing device, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code can be executed entirely on the machine, partially on the machine, as a standalone software package partially on the machine and partially on a remote machine, or entirely on a remote machine or server.
[0114] In the context of this invention, a nontransitory computer-readable storage medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A nontransitory computer-readable storage medium can be a machine-readable signal medium or a machine-readable storage medium. A nontransitory computer-readable storage medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of nontransitory computer-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0115] In the embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the division of units is only a logical functional division of a wireless communication method, and there may be other division methods in actual implementation. Furthermore, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Additionally, the coupling or direct coupling or communication connection shown or discussed may be through some communication interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0116] Furthermore, 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.
[0117] Furthermore, the functional modules in the various embodiments of this application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.
[0118] The above description is merely an embodiment of this application and is not intended to limit the scope of protection of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of protection of this application.
Claims
1. A wireless communication method, characterized in that, include: After detecting the arrival of a communication task, obtain the communication task and its information. The bandwidth allocation scheme for the communication task is obtained according to a preset bandwidth allocation strategy with the communication time slot as the minimum bandwidth allocation granularity; wherein, when establishing a link with other electronic devices, a fixed bandwidth is reserved for establishing the link based on the transmission characteristics of the communication task that currently occupies bandwidth, or the transmission interval of the communication task that already occupies bandwidth is increased and its transmission packet length is increased accordingly, so as to coordinate bandwidth allocation during the establishment of the link. The physical channel is invoked to execute a communication task, and then the arrival of the next communication task is monitored. The wireless communication method further includes: all communication tasks are allocated bandwidth based on the same timestamp.
2. The wireless communication method according to claim 1, characterized in that, The communication tasks are: wireless communication tasks based on standard protocols and / or wireless communication tasks based on proprietary protocols; The process of invoking the physical channel to perform the communication task specifically involves: Invoke physical channels to execute wireless communication tasks based on standard protocols and / or wireless communication tasks based on proprietary protocols.
3. The wireless communication method according to claim 1, characterized in that, The bandwidth allocation strategy includes: A fixed allocation strategy allocates fixed bandwidth to communication tasks with communication time slots as the smallest bandwidth allocation granularity. The non-fixed allocation strategy sets primary and secondary tasks, allocating all bandwidth to the primary task with the communication time slot as the smallest bandwidth allocation granularity, while the secondary task only occupies bandwidth when transmitting data.
4. A wireless communication method according to any one of claims 1 to 3, characterized in that, The bandwidth allocation strategy allocates bandwidth to wireless communication tasks based on standard protocols or private protocols with the communication time slot as the minimum bandwidth allocation granularity.
5. A wireless communication method according to claim 1, characterized in that, The task information includes the communication task timestamp and the physical channel required for the communication task; The wireless communication method further includes: The start and end times of the communication task are determined based on the communication task timestamp; The corresponding physical channel is invoked according to the physical channel required by the communication task to execute the communication task within the start and end time of the communication task.
6. A wireless communication device, characterized in that, include: The communication task acquisition module is used to acquire communication tasks and their task information, and send the task information to the task scheduling module. The task scheduling module is used to obtain the bandwidth allocation scheme of the current communication task according to a preset bandwidth allocation strategy with communication time slots as the minimum bandwidth allocation granularity, and send the task information and bandwidth allocation scheme to the task identification and allocation module; wherein, when establishing a link with other electronic devices, based on the transmission characteristics of the communication task that has already occupied bandwidth, a fixed bandwidth is reserved for the establishment of the link, or the transmission interval of the communication task that has already occupied bandwidth is increased and its transmission packet length is increased accordingly, so as to coordinate bandwidth allocation during the establishment of the link; all communication tasks are allocated bandwidth under the same timestamp reference; The task identification and allocation module is used to allocate communication tasks to physical channels based on task information; Physical channels are used to perform communication tasks based on task information and bandwidth allocation schemes. The timestamp generation module is connected to both the task scheduling module and the physical channel. It provides the same timestamp reference for both the task scheduling module and the physical channel, so that all communication tasks can be allocated bandwidth under the same timestamp reference.
7. An electronic device, characterized in that, include: Processor, memory, and bus, among which, The processor and the memory communicate with each other via the bus; The memory stores program instructions that can be executed by the processor, and the processor can execute the method as described in any one of claims 1-5 by calling the program instructions.
8. A non-transitory computer-readable storage medium, characterized in that, The non-transitory computer-readable storage medium stores computer instructions, which, when executed by a computer, cause the computer to perform the method as described in any one of claims 1-5.
Citation Information
Patent Citations
Multiple protocol tunneling using time division operations
CN104365034A