Radio frequency front end port control method and device, equipment and storage medium
By determining the sub-port number and control method in the RF front-end port and generating buffer commands, the problem of increased device quantity and high cost in multi-antenna multi-channel applications of RF front-end devices is solved, and a single RFFE bus can effectively control and improve the performance of multiple devices of the same model.
Patent Information
- Application Number
- CN202410536599.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-30
- Publication Date
- 2025-10-31
AI Technical Summary
In existing technologies, radio frequency front-end devices in multi-antenna, multi-channel applications suffer from increased device quantity, design complexity, and high cost. In particular, when using devices of the same model, performance consistency is poor, and the RFFE bus cannot effectively distinguish between multiple devices of the same model.
By determining the sub-port number in the RF front-end port, obtaining the frame number and scan frame number, and determining the control mode based on the frame number and scan frame number, including sub-port scanning and sub-port sharing, a buffer command is generated to control the RF front-end port, enabling a single RFFE bus to support the control of more than 15 devices.
This enables a single RFFE bus to effectively control multiple devices of the same model, reducing baseband chip design costs, simplifying front-end control design, and improving performance consistency.
Smart Images

Figure CN120880467A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of communication technology, and in particular to a radio frequency front-end port control method, apparatus, device, and storage medium. Background Technology
[0002] Radio Frequency Front End (RFFE) and Mobile Industry Processor Interface (MIPI) have become the mainstream solution for terminal front-end control. Each RFFE slave device can be identified by its Unique Slave ID (USID), and the default USID can be modified through addressing. The RFFE protocol defines a maximum of 15 devices with different SLAVEUSIDs supported on a bus. If multiple SLAVE devices using the same model are on a bus, they are usually indistinguishable. This means that only one device of the same model can be used on an RFFE bus.
[0003] Currently, 5G NR and satellite protocols have incorporated technologies such as beamforming, carrier aggregation, and phased array antennas. This has led to the widespread application of multi-antenna, multi-channel technology, which has multiplied the number of RF front-end devices. Furthermore, this places high demands on the consistency and cost of each channel. Supporting multiple antennas and multiple channels requires more RFFE buses, making the design complex and costly. Using different types of devices may result in reduced performance or decreased consistency. Summary of the Invention
[0004] This invention provides a radio frequency front-end port control method, apparatus, device, and storage medium to enable the expansion of the number of SLAVE devices on a single RFFE bus and the control of multiple devices of the same model on a single RFFE bus.
[0005] According to one aspect of the present invention, a radio frequency front-end port control method is provided, the method comprising:
[0006] Determine the sub-port number in the RF front-end port. When the instruction input corresponding to the sub-port number is received, obtain the frame number and scan frame number.
[0007] The control method is determined based on the frame number and the number of scanned frames. The control methods include sub-port scanning and sub-port sharing.
[0008] The buffer command is determined based on the control method, and the RF front-end port is controlled based on the control method and the buffer command.
[0009] Optionally, before determining the sub-port number in the RF front-end port, the method further includes: generating a start command when a reset signal is received; obtaining configuration parameters, constructing a buffer based on the configuration parameters, and initializing the buffer to be empty; and performing initialization according to the start command to generate various initialization parameters, wherein the initialization parameters include frame number parameters, sub-port number, idle command counter, and timer.
[0010] Optionally, the control mode is determined based on the frame number and the number of scanned frames, including: determining whether the frame number is less than the number of scanned frames; if so, determining the control mode as sub-port scanning, where the number of scanned frames is greater than 0; otherwise, determining the control mode as sub-port sharing.
[0011] Optionally, when the control mode is sub-port sharing, the buffer command is determined according to the control mode, and the RF front-end port is controlled according to the control mode and the buffer command, including: determining that the tail empty number value is 0, directly inputting the instruction as the buffer command; sending the buffer command, accumulating the frame number, clearing the timer, and controlling the RF front-end port according to the historical sub-port position.
[0012] Optionally, when the control mode is sub-port scanning, a buffer command is determined according to the control mode, and RF front-end port control is performed according to the control mode and the buffer command. This includes: determining whether the current mapped sub-port position is greater than the historical sub-port position; if so, determining the number of empty slots within the frame according to the first preset formula, generating a buffer command based on the number of empty slots within the frame, and performing RF front-end port control based on the current mapped sub-port position; otherwise, determining the number of empty slots at the end of the frame according to the second preset formula, generating a buffer command based on the number of empty slots at the end of the frame and the instruction input, directly sending the current buffer command, accumulating the frame number, clearing the timer, and performing RF front-end port control based on the historical sub-port position.
[0013] Optionally, RF front-end port control is performed based on the current mapped sub-port position, including: determining the number of sub-ports corresponding to each sub-port number; determining whether the current mapped sub-port position is equal to the number of sub-ports; if so, sending the current buffer command, accumulating the frame number, clearing the timer, and performing RF front-end port control based on the historical sub-port position; otherwise, setting the historical sub-port position to be equal to the current mapped sub-port position.
[0014] Optionally, RF front-end port control is performed based on the historical sub-port position, including: determining whether the historical sub-port position is 0; if so, calculating the number of missing frames in the new frame according to the third preset formula, generating an update buffer command based on the number of missing frames in the new frame, and setting the historical sub-port position to be equal to the current mapped sub-port position; otherwise, setting the historical sub-port position to be equal to 0.
[0015] The method also includes: when no instruction input corresponding to the sub-port number is received, obtaining the timer value; when the timer value is greater than the preset scan polling time, generating a buffer command based on the available commands, and sending the buffer command.
[0016] According to another aspect of the present invention, a radio frequency front-end port control device is provided, the device comprising:
[0017] The instruction input acquisition module is used to determine the sub-port number in the RF front-end port. When an instruction input corresponding to the sub-port number is received, the frame number and scan frame number are acquired.
[0018] The control mode determination module is used to determine the control mode based on the frame number and the number of scan frames. The control modes include sub-port scanning and sub-port sharing.
[0019] The RF front-end port control module is used to determine the buffer command according to the control mode, and to perform RF front-end port control according to the control mode and the buffer command.
[0020] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:
[0021] At least one processor; and
[0022] A memory communicatively connected to the at least one processor; wherein,
[0023] The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform a radio frequency front-end port control method according to any embodiment of the present invention.
[0024] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement a radio frequency front-end port control method according to any embodiment of the present invention.
[0025] The technical solution of this invention determines the sub-port number in the RF front-end port. When an instruction input corresponding to the sub-port number is received, the frame number and scan frame number are obtained. A control mode is determined based on the frame number and scan frame number, where the control mode includes sub-port scanning and sub-port sharing. A buffer command is determined based on the control mode, and RF front-end port control is performed according to the control mode and buffer command. This solves the problem of supporting control of more than 15 devices per protocol on a single RFFE bus. It also addresses the need for a single RFFE bus to control multiple devices of the same model. Furthermore, it does not require modification of the device design, allowing for unlimited expansion of the total number of devices. It also reduces the design cost of the baseband chip RFFE, enabling the use of devices of the same model in the RF front-end, thereby reducing costs, improving performance, and simplifying front-end control design.
[0026] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0027] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0028] Figure 1 This is a flowchart of a radio frequency front-end port control method provided in Embodiment 1 of the present invention;
[0029] Figure 2 This is a schematic diagram of the device connection structure of a sub-port scanning device according to Embodiment 1 of the present invention;
[0030] Figure 3 This is a schematic diagram of a scan command converter interface provided in Embodiment 1 of the present invention;
[0031] Figure 4 This is a flowchart of a sub-port scanning method provided in Embodiment 1 of the present invention;
[0032] Figure 5 This is a flowchart of another radio frequency front-end port control method provided according to Embodiment 2 of the present invention;
[0033] Figure 6 This is a flowchart of a sub-port sharing method provided in Embodiment 2 of the present invention;
[0034] Figure 7This is a schematic diagram of a sub-port co-scanning device according to Embodiment 2 of the present invention;
[0035] Figure 8 This is a circuit diagram of a multi-channel sub-port gated signal generator according to Embodiment 2 of the present invention;
[0036] Figure 9 This is a timing diagram of a multi-channel sub-port gated signal generator according to Embodiment 2 of the present invention;
[0037] Figure 10 This is a circuit diagram of a multi-channel sub-port gating signal generator for a sub-port scanning and sub-port sharing method according to Embodiment 2 of the present invention;
[0038] Figure 11 This is a timing diagram of a multi-channel sub-port gating signal generator for a sub-port scanning and sub-port sharing method according to Embodiment 2 of the present invention;
[0039] Figure 12 This is a schematic diagram of the structure of a radio frequency front-end port control device according to Embodiment 3 of the present invention;
[0040] Figure 13 This is a schematic diagram of the structure of an electronic device that implements a radio frequency front-end port control method according to an embodiment of the present invention. Detailed Implementation
[0041] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0042] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0043] Example 1
[0044] Figure 1 This is a flowchart illustrating a radio frequency (RF) front-end port control method according to Embodiment 1 of the present invention. This embodiment is applicable to situations where the RF front-end port needs to be expanded. The method can be executed by an RF front-end port control device, which can be implemented in hardware and / or software and can be configured in a computer controller. Figure 1 As shown, the method includes:
[0045] S110. Determine the sub-port number in the RF front-end port. When the instruction input corresponding to the sub-port number is received, obtain the frame number and scan frame number.
[0046] Specifically, the RF signal processing identifies the numbers of each sub-port within the RF front-end port and is in a ready state, awaiting instruction input corresponding to the sub-port number. Upon receiving instruction input corresponding to the sub-port number, the system further obtains information such as the frame number and scan frame number.
[0047] In this context, the RF front-end port refers to an interface in the RF signal processing system used for receiving and transmitting RF signals. The subport number is a unique identifier assigned to each subport within the RF front-end port. The command input refers to an instruction or command sent to the system from an external source. The frame number is a unique number used to identify a data frame. The scan frame number specifies the number of frames to be processed during the scan process.
[0048] Optionally, before determining the sub-port number in the RF front-end port, the method further includes: generating a start command when a reset signal is received; obtaining configuration parameters, constructing a buffer based on the configuration parameters, and initializing the buffer to be empty; and performing initialization according to the start command to generate various initialization parameters, wherein the initialization parameters include frame number parameters, sub-port number, idle command counter, and timer.
[0049] Specifically, when the system receives a reset signal, it generates a start command. This start command initiates the Radio Frequency Front End (RFFE) scan command converter. Next, the system acquires the relevant configuration parameters and constructs a buffer TSEQ based on these parameters to store one frame of data. This buffer is initialized to an empty state, meaning it initially contains no data or information. It should be noted that in subport scan mode, the TSEQ depth is N RFFE commands, while in subport shared mode, the TSEQ depth is 1 RFFE command. The buffer can temporarily store data during data transmission, mitigating data flow fluctuations and ensuring stable system operation.
[0050] Furthermore, the system will perform initialization operations based on the generated startup instructions to generate various initialization parameters. Specifically, this includes initializing the frame number parameter f=0, initializing the sub-port number Pv=0, initializing the idle command counter Dnumtot=0, and initializing the timer1=0.
[0051] The frame number parameter is used to identify and track data frames, ensuring the system can accurately distinguish and process different frames. The subport number identifies each subport, helping the system recognize and differentiate operations and data from different subports, facilitating independent control and management of each subport. The idle command counter counts the number of unprocessed commands, helping the system understand the status of pending tasks. The timer is used for timing or controlling time-related operations, ensuring the system completes tasks within a specific timeframe.
[0052] S120. Determine the control mode based on the frame number and the number of scan frames. The control mode includes sub-port scanning and sub-port sharing.
[0053] Specifically, the control method can be determined based on the acquired frame number and the number of scanned frames. There are two control methods: sub-port scanning and sub-port sharing. Sub-port scanning is used when the total number of devices on a single RFFE bus exceeds 15. Sub-port sharing is used when the total number of devices on a single RFFE bus is no more than 15, and there are multiple devices of the same model.
[0054] Optionally, the control mode is determined based on the frame number and the number of scanned frames, including: determining whether the frame number is less than the number of scanned frames; if so, determining the control mode as sub-port scanning, where the number of scanned frames is greater than 0; otherwise, determining the control mode as sub-port sharing.
[0055] Specifically, the system can determine the control method based on the frame number and the number of scan frames. This is achieved by checking if the frame number is less than the number of scan frames. If the frame number is less than the number of scan frames, the control method is determined to be sub-port scanning. It should be noted that the number of scan frames must be greater than 0 to ensure the accuracy and validity of the determination. If the frame number is not less than the number of scan frames, then the control method can be determined to be sub-port sharing. By using this method of determining the control method based on the frame number and the number of scan frames, the appropriate control method can be flexibly selected according to the actual situation to achieve optimal effect and performance.
[0056] S130. Determine the buffer command according to the control mode, and perform RF front-end port control according to the control mode and the buffer command.
[0057] Specifically, based on a defined control method, the system can generate corresponding buffer commands. It then executes specific RF front-end port control operations according to the defined control method and buffer commands. Through the technical solution of this invention, the system can precisely control the operation of the RF front-end port, achieving efficient and accurate signal processing and transmission.
[0058] Optionally, when the control mode is sub-port scanning, a buffer command is determined according to the control mode, and RF front-end port control is performed according to the control mode and the buffer command. This includes: determining whether the current mapped sub-port position is greater than the historical sub-port position; if so, determining the number of empty slots within the frame according to the first preset formula, generating a buffer command based on the number of empty slots within the frame, and performing RF front-end port control based on the current mapped sub-port position; otherwise, determining the number of empty slots at the end of the frame according to the second preset formula, generating a buffer command based on the number of empty slots at the end of the frame and the instruction input, directly sending the current buffer command, accumulating the frame number, clearing the timer, and performing RF front-end port control based on the historical sub-port position.
[0059] Specifically, when the control method is determined to be sub-port scanning, the system needs to determine whether the currently mapped sub-port position Pmap(r) is greater than the historical sub-port position Pv (Pv = 0 indicates an initial empty state). If so, the number of intra-frame gaps will be determined according to the first preset formula, and a buffer command will be generated based on the number of intra-frame gaps.
[0060] The first preset formula is: the number of intra-frame gaps, Dnum = current mapped sub-port position Pmap(r) - historical sub-port position Pv-1. This indicates that the original RFFE command input OCMD(r) is in the current frame; simply fill OCMD(r) into TSEQ. The RF front-end port is controlled based on the currently mapped sub-port position.
[0061] However, if the currently mapped sub-port position is not greater than the historical sub-port position, then the number of empty slots at the end of the current frame needs to be determined according to the second preset formula. Then, a buffer command is generated based on the number of empty slots at the end of the current frame and the instruction input. The second preset formula is: the number of empty slots at the end of the current frame, Dnum = number of sub-ports N - historical sub-port position Pv. At this point, the existing frame is sent first, and then OCMD(r) is placed in the new frame. The calculated position of the empty slots at the end of the current frame needs to be filled with the spare command DCMD. Simultaneously, the system will increment the frame number by f = f + 1, clear the timer, and then further control the RF front-end port based on the historical sub-port position.
[0062] Optionally, RF front-end port control is performed based on the current mapped sub-port position, including: determining the number of sub-ports corresponding to each sub-port number; determining whether the current mapped sub-port position is equal to the number of sub-ports; if so, sending the current buffer command, accumulating the frame number, clearing the timer, and performing RF front-end port control based on the historical sub-port position; otherwise, setting the historical sub-port position to be equal to the current mapped sub-port position.
[0063] Specifically, the system determines the number of subports corresponding to each subport number, and then checks whether the current mapped subport position is equal to the number of subports. If they are equal, it indicates the end of the current frame scan and the current buffer command is sent. Simultaneously, the frame number is incremented, and the timer is cleared. Finally, the RF front-end port is controlled based on the historical subport positions. However, if the current mapped subport position is not equal to the number of subports, the historical subport position is set as the current mapped subport position, and the system continues to wait for the next command. During this process, the timer value is continuously checked; when the timer value exceeds the preset scan and polling time, the system directly sends the current TSEQ command without waiting for subsequent commands to fill the empty command DCMD.
[0064] Optionally, RF front-end port control is performed based on the historical sub-port position, including: determining whether the historical sub-port position is 0; if so, calculating the number of missing frames in the new frame according to the third preset formula, generating an update buffer command based on the number of missing frames in the new frame, and setting the historical sub-port position to be equal to the current mapped sub-port position; otherwise, setting the historical sub-port position to be equal to 0.
[0065] Specifically, the system needs to determine if the historical sub-port position is 0. If the historical sub-port position is indeed 0, then it needs to calculate the number of empty slots in the new frame according to the third preset formula, and then generate an updated buffer command based on the calculated number of empty slots in the new frame. The third preset formula is: the number of empty slots in the new frame Dnum = the current mapped sub-port position Pmap(r) - 1. The generated buffer command includes Dnum empty commands DCMD and 1 OCMD(r). Simultaneously, the system will set the historical sub-port position to the current mapped sub-port position. If the historical sub-port position is not 0, then it will be set to 0.
[0066] It should be noted that each TSEQ transmission will reinitialize TSEQ to empty and accumulate the Dnum count to Dnumtot. The number of TSEQ transmissions is recorded as frame number f, and TCMD(s) is the set of all TSEQ commands sent from P0 each time: TCMD = {TSEQ(f)}, 1 ≤ f ≤ F, where F is the total number of frames.
[0067] The method also includes: when no instruction input corresponding to the sub-port number is received, obtaining the timer value; when the timer value is greater than the preset scan polling time, generating a buffer command based on the available commands, and sending the buffer command.
[0068] Specifically, if no instruction input corresponding to the subport number is received, the system retrieves the timer value. It then checks if the timer value is greater than the preset scan polling time. If the timer value is indeed greater than the preset scan polling time, a buffered command is generated based on available commands. This function is designed to ensure real-time command performance; when Timer1 > Tminswpcycle (the preset scan polling time), the TSEQ buffer can be filled directly with available commands (DCMD) and TSEQ can be sent.
[0069] Specific application scenarios: Figure 2 This invention provides a schematic diagram of the device connection structure for a sub-port scanning device according to Embodiment 1. Interface P0 is an RFFE bus port connecting to the RFFE MASTER device, including SCLK, SDATA, and VIO (not shown in the diagram) – standard RFFE ports. Interfaces P(i), i = 1 to N, are N RFFE sub-ports connecting to all RFFESLAVE devices, including SCLK(i), SDATA(i), i = 1 to N, and VIO (not shown in the diagram) – standard RFFE ports. Ports P0 and P(i), i = 1 to N, fully meet the requirements of the RFFE protocol. This device requires the addition of an "RFFE scan command converter" to the RFFE MASTER device to facilitate the use of the "RFFE sub-port scanning device".
[0070] In one specific implementation, all RFFE SLAVE devices are assigned to N subports, with each device numbered C(n,m), where n represents its position on the P(n)th subport, 1≤n≤N, and m represents its sequence number on the subport, m≤15.
[0071] In one specific implementation, the number of SLAVE devices on each sub-port is m(i), i = 1 to N. Total number of devices: Mtot = Σm(i), i = 1 to N.
[0072] In one specific implementation, all "original RFFE commands" are represented as OCMD(r), r = 1 to R. Since the SLAVE devices are assigned to sub-ports of P(i), i = 1 to N, the sub-port corresponding to each OCMD(r) command is represented as Pmap(r), r = 1 to R, 1 ≤ Pmap(r) ≤ N. The output of the RFFE scan command converter is the "RFFE command" TCMD(s), s = 1 to S, requiring S ≥ R. The TCMD(s) command consists of scan commands and shared commands: the total number of commands S = Ssweep + Sshare, where Ssweep is the number of scan commands and Sshare is the number of shared commands. The number of scan commands Ssweep = N * M, where N is the number of scan frame lines and M is the number of scan frames. Scanning adopts a sub-port round-robin method, visiting P(i), i = SEQ(i), i = 1 to N ports in turn according to certain rules, and SEQ(N) is a combination of traversing 1 to N. The following example uses ascending order access, i.e., SEQ(i) = i, i = 1 to N. Other implementation methods are not excluded.
[0073] In one specific implementation, TCMD(s) is converted into waveforms on the P0 interface via the RFFE interface circuit, and p0(s) represents the waveforms of SDATA and SCLK corresponding to TCMD(s). p(i,f) represents the waveforms of SDATA and SCLK on port P(i), and the corresponding commands are represented by SCMD(i,f), where i = 1 to N and f is the frame number.
[0074] Figure 3 This invention provides a schematic diagram of a scan command converter interface according to Embodiment 1. The scan command converter adopts a scan polling algorithm. The input is the original command OCMD(r), and the corresponding sub-port is Pmap(r), where 1 ≤ Pmap(r) ≤ N, and r = 1 to R. It is triggered by the reset signal RESET. The output is TCMD(s), where s = 1 to S. S ≥ R is because, due to the use of the scan polling method, as a trade-off, some spare commands DCMD may be inserted between adjacent OCMD(r) commands to meet the requirements of the scan polling method. The spare command DCMD is also an RFFE command, conforming to the RFFE protocol definition. Commands that achieve minimal delay without affecting the device state can be selected; for example, DCMD can use the Register Read command.
[0075] Figure 4 A flowchart of a sub-port scanning method is provided for Embodiment 1 of the present invention, as follows: Figure 4As shown, after receiving the RESET signal, the system starts the RFFE scan command converter, initializes the frame number parameter f=0, initializes the sub-port number Pv=0, initializes the idle command counter Dnumtot=0, and establishes a TSEQ buffer to store one frame of data. It then waits for the input of the original RFFE command OCMD(r) and the corresponding device's sub-port number Pmap(r). If there is input, timer1 is started to measure the interval between adjacent input commands. This function is to consider the real-time nature of the commands. When Timer1>Tminswpcycle, the minimum scan cycle time, the TSEQ buffer can be filled directly with the idle command DCMD and TSEQ can be sent. Tminswpcycle is the minimum scan cycle time, which can be represented by N-1 idle command lengths. Then, the relationship between the current mapped sub-port Pmap(r) and the previous sub-port position Pv (Pv=0 indicates an initial empty state) is determined: when Pmap(r)>Pv, it means OCMD(r) is in the current frame, and OCMD(r) only needs to be filled into TSEQ. Otherwise, the existing frame will be sent first, and then OCMD(r) will be placed in the new frame, with any empty positions filled with DCMD. After filling OCMD(r), it is determined that if Pmap(r) = N, it indicates the end of the current frame scan cycle, and the current TSEQ is sent. Otherwise, it continues to wait for the next command, continuously checking the timer value. When Timer1 > Tminswpcycle, the current TSEQ is sent directly without waiting for subsequent commands to fill DCMD.
[0076] The technical solution of this invention determines the sub-port number in the RF front-end port. When an instruction input corresponding to the sub-port number is received, the frame number and scan frame number are obtained. A control mode is determined based on the frame number and scan frame number, where the control mode includes sub-port scanning and sub-port sharing. A buffer command is determined based on the control mode, and RF front-end port control is performed according to the control mode and buffer command. This solves the problem of supporting control of more than 15 devices per protocol on a single RFFE bus. It also addresses the need for a single RFFE bus to control multiple devices of the same model. Furthermore, it does not require modification of the device design, allowing for unlimited expansion of the total number of devices. It also reduces the design cost of the baseband chip RFFE, enabling the use of devices of the same model in the RF front-end, thereby reducing costs, improving performance, and simplifying front-end control design.
[0077] Example 2
[0078] Figure 5 This is a flowchart of a radio frequency front-end port control method provided in Embodiment 2 of the present invention. This embodiment adds, based on Embodiment 1, the specific process of determining the buffer command and controlling the radio frequency front-end port when the control mode is sub-port sharing. For example... Figure 5 As shown, the method includes:
[0079] S210. Determine the sub-port number in the RF front-end port. When the instruction input corresponding to the sub-port number is received, obtain the frame number and scan frame number.
[0080] Optionally, before determining the sub-port number in the RF front-end port, the method further includes: generating a start command when a reset signal is received; obtaining configuration parameters, constructing a buffer based on the configuration parameters, and initializing the buffer to be empty; and performing initialization according to the start command to generate various initialization parameters, wherein the initialization parameters include frame number parameters, sub-port number, idle command counter, and timer.
[0081] The method also includes: when no instruction input corresponding to the sub-port number is received, obtaining the timer value; when the timer value is greater than the preset scan polling time, generating a buffer command based on the available commands, and sending the buffer command.
[0082] S220. Determine the control mode based on the frame number and the number of scan frames. The control mode includes sub-port scanning and sub-port sharing.
[0083] Optionally, the control mode is determined based on the frame number and the number of scanned frames, including: determining whether the frame number is less than the number of scanned frames; if so, determining the control mode as sub-port scanning, where the number of scanned frames is greater than 0; otherwise, determining the control mode as sub-port sharing.
[0084] S230. When the control mode is sub-port sharing, determine that the tail empty number value is 0, and directly input the instruction as a buffer command.
[0085] S240: Send a buffer command to accumulate the frame number and clear the timer, and perform RF front-end port control based on the historical sub-port position.
[0086] Specifically, when the control mode is set to sub-port sharing, the system will directly determine that the number of tail gaps is 0, and then treat the instruction input as a buffer command. Next, the system will send a buffer command to increment the frame number, clear the timer, and control the RF front-end port based on the historical sub-port position.
[0087] Optionally, RF front-end port control is performed based on the historical sub-port position, including: determining whether the historical sub-port position is 0; if so, calculating the number of missing frames in the new frame according to the third preset formula, generating an update buffer command based on the number of missing frames in the new frame, and setting the historical sub-port position to be equal to the current mapped sub-port position; otherwise, setting the historical sub-port position to be equal to 0.
[0088] Specifically, the system needs to determine whether the historical sub-port position is 0. If the historical sub-port position is indeed 0, then it is necessary to calculate the number of vacant values of the new starting frame according to the third preset formula, and then generate an updated buffer command according to the calculated number of vacant values of the new starting frame. The third preset formula is: the number of vacant values Dnum of the new starting frame = the current mapped sub-port position Pmap(r) - 1. The generated buffer command includes Dnum vacant commands DCMD and 1 OCMD(r). At the same time, the system will set the historical sub-port position to the current mapped sub-port position. If the historical sub-port position is not 0, then the historical sub-port position is set to 0.
[0089] Optionally, when the control mode is sub-port scanning, determine the buffer command according to the control mode, and perform radio frequency front-end port control according to the control mode and the buffer command, including: determining whether the current mapped sub-port position is greater than the historical sub-port position. If so, determine the number of vacant values within the frame according to the first preset formula, generate a buffer command according to the number of vacant values within the frame, and perform radio frequency front-end port control according to the current mapped sub-port position; otherwise, determine the number of vacant values at the end of this frame according to the second preset formula, generate a buffer command according to the number of vacant values at the end of this frame and the instruction input, directly send the current buffer command, increment the frame number, clear the timer, and perform radio frequency front-end port control according to the historical sub-port position.
[0090] Optionally, performing radio frequency front-end port control according to the current mapped sub-port position includes: determining the number of sub-ports corresponding to each sub-port number; determining whether the current mapped sub-port position is equal to the number of sub-ports. If so, send the current buffer command, increment the frame number, clear the timer, and perform radio frequency front-end port control according to the historical sub-port position; otherwise, set the historical sub-port position equal to the current mapped sub-port position.
[0091] Specific application scenarios: Figure 6 This is a flowchart of a sub-port sharing method provided in Embodiment 2 of the present invention, and Figure 4 The difference is that the definition of the number of scanned frames M of the modified USID is added (it is also possible to add the definition M = -1 to represent "continuous sub-port scanning mode" in Embodiment 1, so as to be compatible with Embodiment 1). After reading the original command OCMD(r), a comparison of the frame number f and M is added. When f < M, it indicates that it is in the sub-port scanning mode, otherwise it is in the sub-port sharing mode. After entering the sub-port sharing mode, TSEQ is a RFFE command with a depth of 1, and each time instead of inserting DCMD, a command of TSEQ = OCMD(r) is directly sent.
[0092] When using Embodiment 2, the commands used to modify the USID in the sub-port scanning mode need to be as close as possible, with the interval between two commands being less than Tminswpcycle, while the interval between the last USID modification command and the next command needs to be greater than Tminswpcycle, to ensure a stable number of scan frames M. It is assumed that there are R1 original USID modification commands OCMD(r), corresponding to ports Pmap(r), where r = 1 to R1.
[0093] Figure 7 This is a schematic diagram of a sub-port common scanning device. Figure 7 This can be applied to both Embodiment 1 and Embodiment 2, such as Figure 7 As shown, it mainly consists of three parts: an RFFE SSC pulse generator, an N-channel sub-port gating signal generator, and an N-channel sub-port output control circuit. The RFFE SSC pulse generator is used to identify the SSC signal of the RFFE interface and generate SSC pulses. The protocol defines SSC as having a length of two SCLK cycles. When SCLK is '0', an SDATA signal with a rising edge and a falling edge indicates SSC. The timing pulses for the sub-port scan signal can be generated from the SSC timing sequence.
[0094] Figure 8 A circuit diagram of a multi-channel sub-port gated signal generator is provided for Embodiment 2 of the present invention. Figure 9 A timing diagram for a multi-channel sub-port gated signal generator is provided for Embodiment 2 of the present invention. Figure 8 and Figure 9 This is one implementation of the N-channel sub-port gated signal generator using the "continuous sub-port scanning method". Other implementations are not excluded. It adopts a scanning and polling circuit and is implemented using a ring counter circuit composed of N D flip-flops FF(i), i=1 to N. The first N-1 D flip-flops are reset and cleared, and the Nth D flip-flop is reset. Its synchronous clock signal input is an SSC pulse. The timing table is shown in Table 1. When the reset signal RESET is received, only the GATE(N) signal is high, and the rest of GATE(i), i=1 to N-1 are low. When the first SSC pulse is input, only the GATE(1) signal is high, and the rest of GATE(i), i=2 to N are low. After that, QN to Q1 are shifted once for each SSC pulse input until the Nth pulse when only the GATE(N) signal is high and the rest of GATE(i), i=1 to N-1 are low, completing one complete scanning and polling cycle. After that, one scanning and polling cycle is completed after every N SSC pulses. Within each polling cycle, the GATE(i) signal occupies a duty cycle of 1 / N, which perfectly covers a complete RFFE command cycle; therefore, it can be used as the gating signal for the RFFE command. Table 1 below shows a schematic of the timing table for the multi-port gating signal generator:
[0095] Table 1
[0096]
[0097]
[0098] Figure 10 This invention provides a circuit diagram for a multi-channel sub-port gating signal generator with a sub-port scanning and sub-port sharing method, as shown in Embodiment 2 of the present invention. Figure 11 The timing diagram of a multi-channel sub-port gating signal generator with sub-port scanning and sub-port sharing mode is provided in Embodiment 2 of the present invention. Figure 10 and Figure 11 This is one implementation of a multi-channel subport gate signal generator that enters the subport sharing mode after subport scanning and changing the USID. Other implementation methods are not excluded. It consists of three parts. The "scanning and polling" part is the same as the "continuous subport scanning mode", but it adds a "frame counting circuit" and a "shared gate circuit". The frame counting circuit is a ring counter circuit composed of M+1 D flip-flops FFA(j), j=1 to M+1. The initial state after RESET is all cleared, QA=0, the data input of FFA(1) is connected to the logic high, and its synchronous clock signal input is the output signal of FF(1). Since the output of FF(1) is aligned with the first SSC pulse of the frame, the output of FF(1) can be used as the frame signal to count. When the count reaches the M+1th frame, that is, the N+M+1th SSC pulse, the output QA signal changes from low to high. The "shared gate circuit" is a set of OR gate circuits. When the frame count is not full, GATE(i)=Q(i), i=1 to N is in the subport scanning stage. When the frame count is full, QA is high, and GATE(i) = 1, i = 1 to N, all gate signals are high. Table 2 below shows a timing table of the multi-channel subport gate signal generator for subport scanning converted to subport sharing mode:
[0099] Table 2
[0100]
[0101] It should be noted that different scenarios need to be considered in Embodiment 1 and Embodiment 2. In scenarios involving beamforming, carrier aggregation, and phased array antennas in protocols such as 5G NR or satellite, it is usually necessary to consider the performance consistency and cost optimization across multiple antennas and multiple paths. Therefore, the most likely scenario is that the exact same devices are used on each channel. In this way, each sub-port scan and round-robin traverses the configuration of the same devices on each channel, resulting in an Eff of 100%. In other cases, the round-robin efficiency can also be optimized by reasonably arranging the configuration order.
[0102] Furthermore, the maximum polling delay time Delaymaxswp is defined, representing the maximum delay time under polling conditions in the working state after initialization. For Example 2, since the USID change is completed during initialization, a sub-port sharing mode is adopted in the working state after initialization; therefore, Delaymaxswp = 0, meaning there is no command delay. For Example 1, CMDmaxcycle is the maximum delay time for a single command, and Delaymaxswp = (N-1)*CMDmaxcycle, indicating that as the cost of polling, configuration must wait at most once after polling on the same port, with a waiting time of N-1 commands. For Example 2, RFFE can be addressed by increasing the RFFE SCLK clock frequency, using simplified commands such as RFFE Trigger and Extended Trigger, or by reasonably arranging the command interval time for different devices.
[0103] The technical solution of this invention determines the sub-port number in the RF front-end port. When an instruction input corresponding to the sub-port number is received, the frame number and scan frame number are obtained. A control mode is determined based on the frame number and scan frame number, where the control mode includes sub-port scanning and sub-port sharing. A buffer command is determined based on the control mode, and RF front-end port control is performed according to the control mode and buffer command. This solves the problem of supporting control of more than 15 devices per protocol on a single RFFE bus. It also addresses the need for a single RFFE bus to control multiple devices of the same model. Furthermore, it does not require modification of the device design, allowing for unlimited expansion of the total number of devices. It also reduces the design cost of the baseband chip RFFE, enabling the use of devices of the same model in the RF front-end, thereby reducing costs, improving performance, and simplifying front-end control design.
[0104] Example 3
[0105] Figure 12 This is a schematic diagram of a radio frequency front-end port control device provided in Embodiment 3 of the present invention. Figure 12 As shown, the device includes:
[0106] The instruction input acquisition module 310 is used to determine the sub-port number in the RF front-end port. When an instruction input corresponding to the sub-port number is received, the frame number and scan frame number are acquired.
[0107] The control mode determination module 320 is used to determine the control mode based on the frame number and the number of scan frames, wherein the control mode includes sub-port scanning and sub-port sharing;
[0108] The RF front-end port control module 330 is used to determine the buffer command according to the control mode, and to perform RF front-end port control according to the control mode and the buffer command.
[0109] Optionally, the device further includes: a parameter initialization module, used to generate a start command when a reset signal is obtained before determining the sub-port number in the RF front-end port; obtain configuration parameters, construct a buffer according to the configuration parameters, and initialize the buffer to be empty; perform initialization according to the start command to generate various initialization parameters, wherein the initialization parameters include frame number parameters, sub-port number, idle command counter, and timer.
[0110] Optionally, the control mode determination module 320 is specifically used to: determine whether the frame number is less than the number of scan frames; if so, determine the control mode as sub-port scanning, where the number of scan frames is greater than 0; otherwise, determine the control mode as sub-port sharing.
[0111] Optionally, the RF front-end port control module 330 specifically includes: a sub-port shared control unit, used to: determine that the tail empty number value is 0, directly input the instruction as a buffer command; send a buffer command, accumulate the frame number, clear the timer, and perform RF front-end port control according to the historical sub-port position.
[0112] Optionally, the RF front-end port control module 330, a sub-port scanning control unit, is used to: determine whether the current mapped sub-port position is greater than the historical sub-port position; if so, determine the number of empty slots within the frame according to the first preset formula, generate a buffer command based on the number of empty slots within the frame, and perform RF front-end port control based on the current mapped sub-port position; otherwise, determine the number of empty slots at the end of the frame according to the second preset formula, generate a buffer command based on the number of empty slots at the end of the frame and the instruction input, directly send the current buffer command, accumulate the frame number, clear the timer, and perform RF front-end port control based on the historical sub-port position.
[0113] Optionally, the RF front-end port control module 330 specifically includes: a historical sub-port position judgment unit, used to: determine whether the historical sub-port position is 0; if so, calculate the number of missing values of the new frame according to the third preset formula, generate an update buffer command according to the number of missing values of the new frame, and set the historical sub-port position to be equal to the current mapped sub-port position; otherwise, set the historical sub-port position to be equal to 0.
[0114] Optionally, the device further includes: a module for not receiving input commands, used to: obtain a timer value when no command input corresponding to the sub-port number is received; and generate a buffer command based on the available command when the timer value is greater than the preset scan polling time, and send the buffer command.
[0115] The technical solution of this invention determines the sub-port number in the RF front-end port. When an instruction input corresponding to the sub-port number is received, the frame number and scan frame number are obtained. A control mode is determined based on the frame number and scan frame number, where the control mode includes sub-port scanning and sub-port sharing. A buffer command is determined based on the control mode, and RF front-end port control is performed according to the control mode and buffer command. This solves the problem of supporting control of more than 15 devices per protocol on a single RFFE bus. It also addresses the need for a single RFFE bus to control multiple devices of the same model. Furthermore, it does not require modification of the device design, allowing for unlimited expansion of the total number of devices. It also reduces the design cost of the baseband chip RFFE, enabling the use of devices of the same model in the RF front-end, thereby reducing costs, improving performance, and simplifying front-end control design.
[0116] The radio frequency front-end port control device provided in the embodiments of the present invention can execute the radio frequency front-end port control method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of executing the method.
[0117] Example 4
[0118] Figure 13 A schematic diagram of an electronic device 10 that can be used to implement embodiments of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0119] like Figure 13 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 may also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0120] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0121] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as a radio frequency front-end port control method.
[0122] In some embodiments, an RF front-end port control method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the RF front-end port control method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform an RF front-end port control method by any other suitable means (e.g., by means of firmware).
[0123] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0124] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0125] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-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 thereof.
[0126] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0127] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or computing systems that include middleware components (e.g., application servers), or computing systems that include frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0128] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0129] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.
[0130] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. A radio frequency front-end port control method, characterized in that, include: Determine the sub-port number in the RF front-end port. When the instruction input corresponding to the sub-port number is received, obtain the frame number and scan frame number. The control method is determined based on the frame number and the number of scanned frames, wherein the control method includes sub-port scanning and sub-port sharing; The buffer command is determined according to the control method, and the RF front-end port is controlled according to the control method and the buffer command.
2. The method according to claim 1, characterized in that, Before determining the sub-port numbers in the RF front-end port, the method further includes: When a reset signal is received, a start command is generated; Obtain the configuration parameters, construct a buffer based on the configuration parameters, and initialize the buffer to empty; The startup command is used to initialize and generate initialization parameters, which include frame number parameter, subport number, available command counter and timer.
3. The method according to claim 1, characterized in that, The step of determining the control method based on the frame number and the number of scan frames includes: Determine whether the frame number is less than the number of scan frames. If so, determine that the control mode is sub-port scanning, wherein the number of scan frames is greater than 0. Otherwise, the control method is determined to be sub-port sharing.
4. The method according to claim 3, characterized in that, When the control mode is sub-port sharing, the step of determining the buffer command according to the control mode and performing RF front-end port control according to the control mode and the buffer command includes: If the value of the missing number at the tail is determined to be 0, the instruction is directly input as the buffer command. Send the buffer command to increment the frame number and clear the timer, and perform RF front-end port control based on the historical sub-port position.
5. The method according to claim 3, characterized in that, When the control mode is sub-port scanning, the step of determining the buffer command according to the control mode and performing RF front-end port control according to the control mode and the buffer command includes: Determine whether the current mapped sub-port position is greater than the historical sub-port position. If so, determine the number of intra-frame gaps according to the first preset formula, generate the buffer command according to the number of intra-frame gaps, and perform RF front-end port control according to the current mapped sub-port position. Otherwise, the number of missing values at the end of the frame is determined according to the second preset formula, the buffer command is generated according to the number of missing values at the end of the frame and the instruction input, the current buffer command is sent directly, the frame number is incremented, the timer is cleared, and the radio frequency front-end port is controlled according to the historical sub-port position.
6. The method according to claim 5, characterized in that, The step of controlling the RF front-end port based on the current mapped sub-port position includes: Determine the number of subports corresponding to each of the aforementioned subport numbers; Determine whether the current mapped subport position is equal to the number of subports. If so, send the current buffer command, increment the frame number, clear the timer, and perform RF front-end port control based on the historical subport positions. Otherwise, set the historical sub-port position to be equal to the current mapped sub-port position.
7. The method according to claim 4 or 6, characterized in that, The RF front-end port control based on historical sub-port positions includes: Determine whether the historical sub-port position is 0. If so, calculate the number of missing frames in the new frame according to the third preset formula, generate an update buffer command based on the number of missing frames in the new frame, and set the historical sub-port position to be equal to the current mapped sub-port position. Otherwise, set the historical sub-port position to 0.
8. The method according to claim 1, characterized in that, The method further includes: If no instruction input corresponding to the sub-port number is received, retrieve the timer value; When the timer value is greater than the preset scan polling time, a buffer command is generated based on the available command, and the buffer command is sent.
9. A radio frequency front-end port control device, characterized in that, include: The instruction input acquisition module is used to determine the sub-port number in the RF front-end port. When an instruction input corresponding to the sub-port number is received, the frame number and scan frame number are acquired. The control mode determination module is used to determine the control mode based on the frame number and the number of scan frames, wherein the control mode includes sub-port scanning and sub-port sharing; The radio frequency front-end port control module is used to determine the buffer command according to the control method, and to perform radio frequency front-end port control according to the control method and the buffer command.
10. An electronic device, characterized in that, The electronic device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-8.