Scheduler and method for scheduling sessions in UWB communication system

By using the prediction scheduling algorithm in the ultra-wideband UWB communication system to generate the session prediction order and reduce the scheduler evaluation time, the problem of multi-UWB session scheduling time management is solved, and the utilization rate of call time is improved.

CN120129071APending Publication Date: 2025-06-10NXP BV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411788674.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-12-07
Filing Date
2024-12-06
Publication Date
2025-06-10

AI Technical Summary

Technical Problem

In an ultra-wideband UWB communication system, the scheduling time of multiple UWB sessions is difficult to effectively manage, resulting in too large time gaps reserved between sessions and insufficient UWB call time.

Method used

The prediction scheduling algorithm is used to generate the predicted order of the UWB session in the session sequence and store it in the buffer. By checking the buffer to determine the next session and starting it immediately, the scheduler's evaluation time is reduced when each session switch is performed.

Benefits of technology

Through the prediction scheduling algorithm, the time gap between adjacent sessions in the UWB session sequence is reduced, the utilization rate of UWB call time is improved, and the scheduling delay is reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120129071A_ABST
    Figure CN120129071A_ABST
Patent Text Reader

Abstract

The present invention relates to a method of scheduling sessions in an ultra wide band, UWB, communication system, and to a corresponding computer program, scheduler and UWB communication system. The method includes using a predictive scheduling algorithm to generate a predicted order in which a plurality of UWB sessions occur in a UWB session sequence. The method also includes storing the prediction order in a buffer. The method additionally includes performing multiple iterations of: upon completion of a previous UWB session in the sequence of UWB sessions, checking the buffer to determine a next UWB session in the sequence of UWB sessions; and initiating the next UWB session.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a method for scheduling sessions in an ultra-wideband (UWB) communication system. The present disclosure also relates to a computer program and a scheduler for performing the method. The present disclosure further relates to an ultra-wideband (UWB) communication system including the scheduler. Background Art

[0002] As ultra-wideband (hereinafter, UWB) technology becomes more popular, the demand for supporting multiple UWB use cases is increasing. For example, for some applications, this leads to a requirement to be able to support multiple UWB sessions simultaneously.

[0003] A problem in the implementation of applications that require multi-session UWB scenarios is the scheduling time of those sessions. The UWB scheduling time can depend on many parameters, such as the need to evaluate the dynamic priorities of various sessions and the need to ensure that any specific prerequisites for scheduling individual sessions are met. The task of scheduling sessions while considering conditions of the above kind can be performed by a scheduler. Typically, the next session is scheduled once the previous session has ended. To accommodate the time required by the scheduler to schedule the next session, plus the time taken to perform any session start-up actions, a time gap can be reserved between adjacent sessions.

[0004] During operation, the time taken by the scheduler to schedule the next session is proportional to the number of remaining sessions to be evaluated. Therefore, if the number of sessions to be evaluated is large, the time gap reserved in the air between two consecutive sessions can be correspondingly large. This is not an efficient use of the UWB call time. Summary of the Invention

[0005] Aspects of the present disclosure are set forth in the appended independent claims and dependent claims. Combinations of features from the dependent claims may be combined with the features of the independent claims where appropriate, not just as explicitly stated in the claims.

[0006] According to one aspect of the present disclosure, there is provided a method for scheduling sessions in an ultra-wideband (UWB) communication system, the method comprising:

[0007] using a predictive scheduling algorithm to generate a predicted order in which a plurality of UWB sessions occur in a UWB session sequence;

[0008] storing the predicted order in a buffer; and

[0009] performing the following multiple iterations:

[0010] when a previous UWB session in the UWB session sequence is completed, checking the buffer to determine the next UWB session in the UWB session sequence; and

[0011] Initiate the next UWB session.

[0012] Embodiments of the present disclosure can make the scheduling of UWB sessions more efficient in a UWB session sequence by predicting in advance the order in which UWB sessions will occur in the sequence. Following this method, a scheduler can avoid having to evaluate all of the remaining sessions in the sequence after each UWB session in the sequence has been completed to determine which UWB session should be the next in the sequence. In effect, the scheduler can check a buffer containing the predicted order, which can allow for reducing the time gap between adjacent UWB sessions in a UWB session sequence.

[0013] The method can include generating a predicted order during the session time of a UWB session. Thus, a scheduling method can utilize any idle time present within a given UWB session to perform a predictive scheduling algorithm.

[0014] The predictive scheduling algorithm can run in a real-time operating system (RTOS) thread that has a lower priority than at least one functional thread of a UWB communication system. Assigning a lower priority to the predictive scheduling algorithm compared to other functional threads can allow the predictive scheduling algorithm to be implemented without interrupting the operation of those other functions, which can be the main functions of a UWB session sequence. The at least one other functional thread can be a ranging thread of a UWB system.

[0015] The checking of the buffer and the initiation of the next UWB session can be performed during the time gap that is located between the completion of the previous UWB session and the start of the next UWB session. Since there is no need to actually evaluate the remaining UWB sessions in a UWB session sequence during the time gap, the duration of the size gap can be reduced.

[0016] Initiating the next UWB session includes at least one of the following:

[0017] Reset the modem of the UWB communication system;

[0018] Change the channel to be used for transmission / reception of the next UWB session in response to determining that the next UWB session needs to use a different channel than the channel used by the previous UWB session; and

[0019] Prepare the transmitter and / or receiver of the UWB communication system.

[0020] Various methods can be used to determine how far in advance the predictive scheduling algorithm should operate. Generally, a balance can be found between a prediction that is not far enough in advance (in which case some of the benefits of the prediction method may be lost) and a prediction that is too far in advance (in which case the probability of an incorrect prediction increases). An incorrect prediction may require emptying and refilling the buffer.

[0021] The method may further include: determining, before determining the prediction order, a number N of predicted UWB sessions to be included in the prediction order. N may be determined based on an expected number of UWB sessions required for a task to be performed by a sequence of UWB sessions. N may be determined based on an expected proportion of incorrect predictions for the plurality of UWB sessions in the UWB session sequence.

[0022] Determining the prediction order may include adding predicted UWB sessions to the prediction order until the number of predicted UWB sessions in the prediction order reaches N, or until a condition is reached where a run time for determining the next predicted UWB session cannot be determined.

[0023] Determining the prediction order may include determining a start time of at least one predicted UWB session in the prediction order based on a start time and a run time of at least one previous predicted UWB session in the prediction order.

[0024] The method may further include emptying a buffer and generating a new prediction order in response to determining that:

[0025] an actual next UWB session in the UWB session sequence is different from the next predicted UWB session in the prediction order;

[0026] a new UWB session is to be added to the UWB session sequence;

[0027] a UWB session is to be removed from the UWB session sequence; or

[0028] a run time of one or more UWB sessions in the UWB session sequence has changed.

[0029] The buffer may be a circular buffer. This may allow the buffer to be continuously refreshed.

[0030] According to another aspect of the present disclosure, there is provided a computer program including program instructions that, when executed by a scheduler, cause the scheduler to perform the above method.

[0031] According to a further aspect of the present disclosure, there is provided a scheduler operable to schedule sessions in an ultra-wideband UWB communication system by performing the above method.

[0032] According to another aspect of the present disclosure, there is provided an ultra-wideband UWB communication system including the above scheduler.

[0033] For the purposes of the present disclosure, ultra-wideband (UWB) technology refers to a radio technology for transmitting information spread over a large bandwidth (~500 MHz) within a carrier frequency range of 3 - 10.6 GHz. UWB uses short pulses with a large bandwidth at a very low power spectral density. UWB technology is widely used for ranging purposes. UWB technology supports different use cases for automotive access, door lock access, indoor positioning, advertising, data streaming, and secure ranging for radar. These use cases can be effective simultaneously in UWB-enabled devices. BRIEF DESCRIPTION OF THE DRAWINGS

[0034] Embodiments of the present disclosure will be described hereinafter only by way of example with reference to the accompanying drawings, in which like reference numerals refer to like elements, and in which:

[0035] Figure 1 An example of a conventional scheduling method in a radio communication system is shown;

[0036] Figure 2 Scheduling of a session in a radio communication system according to an embodiment of the present disclosure is shown;

[0037] Figure 3 The predictive nature of a scheduling method according to an embodiment of the present disclosure is shown;

[0038] Figure 4 The operation of a scheduler according to an embodiment of the present disclosure is shown; and

[0039] Figure 5 A method of scheduling a session in a radio communication system according to an embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0040] Embodiments of the present disclosure will be described below with reference to the accompanying drawings.

[0041] Figure 1 An example of conventional scheduling in a radio communication system (e.g., a UWB system) is shown. The scheduling involves a sequence 10 including multiple sessions S2, S3, S1, S2, S3, S1..., where gaps 2A, 2B, 2C, 2D, 2E... are located between each pair of adjacent sessions in the sequence 10. Each session S has an associated session run time (duration) 4.

[0042] The gap 2 between each pair of adjacent sessions is associated with the time it takes for the scheduler to pick and schedule the next session in the sequence 10. This portion of the gap can be referred to as the scheduler time 12 and has a duration 6. The gap 2 between each pair of adjacent sessions is also associated with a session start offset time 14, which itself includes the time 16 taken to reset the modem for the session and / or change to the channel to be used for the next session (assuming the channel to be used for the next session S is different from the channel used for the previous session), plus any other preparation time 18 for the Tx / Rx process of the next session to be prepared. This preparation time 18 is typically hardware-limited.

[0043] In Figure 1 In a multi-session scenario of the kind shown, the duration 6 of the scheduler time 12 typically scales linearly with the number of sessions in the sequence 10 and is typically measured in milliseconds (for example, for a sequence including 8 sessions, the typical duration of each gap 2 is about 2 milliseconds). Given this, and taking into account the maximum number of sessions supported by the system (to account for the fact that sessions can be added or removed in the sequence 10), the worst-case scheduler time is typically reserved between adjacent sessions. This results in underutilization of the radio communication (e.g., UWB) talk time, which in turn leads to reduced throughput and higher latency for data transfer and streaming use cases.

[0044] According to an embodiment of the present disclosure, noting that the duration of the preparation time 18 portion of each gap 2 is difficult to implement, which is typically hardware-limited, steps can be taken to reduce the scheduler time 12 (i.e., shorten the duration 6), thereby reducing the total delay caused by each gap 2.

[0045] Figure 2 Shows the scheduling of sessions in a radio communication system according to an embodiment of the present disclosure. The radio communication system can be, for example, a UWB system. Figure 2 The scheduling in involves a session sequence 100 including multiple sessions S2, S3, S1, S2, S3, S1, S2…, where gaps 20A, 20B, 20C, 20D, 20E, 20F… are located between each pair of adjacent sessions in the sequence 100. Each session S has an associated session run time (duration) 4.

[0046] As Figure 2 shown, each gap 20 is associated with a scheduler time 12 and a session start offset time 14.

[0047] The session start offset time 14 can include the same as described above with respect to Figure 1Components described as similar or identical components. Thus, the session start offset time 14 may include the time taken to reset the modem for the session and / or change to the channel to be used for the next session (assuming the channel to be used for the next session S is different from the channel used for the previous session), plus any other preparation time for the Tx / Rx process of the next session to be prepared.

[0048] According to an embodiment of the present disclosure, the scheduler time 12 component of each gap 20 has a duration 6. As described above, according to an embodiment of the present disclosure, steps are taken to allow Figure 2 The shown duration 6 is shorter than the duration 6 described above with respect to Figure 1 Specifically, the scheduling activity of the system can be decoupled from the scheduling decision-making process, which can enable the scheduling method to scale for any number of sessions. By way of example only, embodiments of the present disclosure may allow the duration 6 of the scheduler time 12 to be reduced to about 100 microseconds or less. Embodiments of the present disclosure may also allow the duration 6 of the scheduler time 12 to be independent of the maximum number of sessions supported by the system and also independent of the actual number (N) of sessions in the sequence 100.

[0049] Turning now to Figure 5 , a method 400 for scheduling sessions in a radio communication system (e.g., a UWB system) according to an embodiment of the present disclosure will now be described.

[0050] Method 400 begins at step 402, where the system uses a predictive scheduling algorithm to generate a predicted order in which a plurality of UWB sessions S occur in a UWB session sequence 100 of the kind shown in Figure 2 Shown.

[0051] In some embodiments, the predictive scheduling algorithm may run during the session time of the sessions S in the sequence 100. For example, the predictive scheduling algorithm may run during the first session S in the sequence (e.g., during session S2 at the start of the sequence 100 shown in Figure 2 Shown). In this way, the predicted order can be made available for the second and subsequent sessions in the sequence. In another example, the predictive scheduling algorithm may run during the session time of any particular session in the sequence, especially in the case of a buffer emptying operation of the kind described below with respect to optional step 420. It is also contemplated that the predictive scheduling algorithm may be before the start of the sequence 100 or during one of the gaps 20 between adjacent sessions.

[0052] The ability of the system to run a predictive scheduling algorithm during the session time of a session S is based on the recognition that the system may encounter idle periods during any given session. These idle periods can be exploited to allow processing resources to be allocated to the system to run the predictive scheduling algorithm. This can allow the prediction order to be generated in a manner that does not affect the duration 6 of the scheduler time 12. In this way, with e.g. Figure 1 Compared to the situation in , the length of gap 20 can be reduced. To achieve this, in some embodiments, the predictive scheduling algorithm can be run in a real-time operating system (RTOS) thread that has a lower priority than other functional threads such as the ranging thread of the (e.g., UWB) communication system. Therefore, the predictive scheduling algorithm can be run during any idle time of other higher priority threads (e.g., ranging threads). This can allow the predictive scheduling algorithm to run simultaneously with other functional threads (e.g., ranging threads) without affecting the operation of those threads.

[0053] In a next step 404, the predicted order in which the plurality of UWB sessions S will appear in the UWB session sequence 100 is stored in a buffer. The buffer may be a circular buffer, as will be described below. As with step 402, it is contemplated that the writing of the predicted order to the buffer may be performed during the session time of the session S, and all the benefits mentioned above in this regard may also apply to step 404.

[0054] The method 400 then involves several iterations, which may be performed until the sequence 100 ends. Each iteration may include the following steps.

[0055] In a first step 406 of each iteration, upon completion of a previous (eg, UWB) session S in the sequence of sessions 100, the scheduler checks the buffer to determine the next session S in the sequence of sessions 100. The method 400 may also include initiating and executing the first session (e.g., UWB) in the sequence 100 prior to beginning the iterations described herein. Figure 2 In this case, the “previous session” of the first iteration described herein would be the first session S in the sequence 100 .

[0056] In the second step 418 of each iteration, having determined the next session in the sequence 100 by checking the buffer, the system can start the next session. Starting the next session can involve, for example, the following steps:

[0057] ● Resetting the communication system's modem, as described above;

[0058] In response to determining that the next session S needs to use a different channel than the channel used by the previous session S, changing the channel to be used for transmission / reception of the next session S, also as described above; and / or

[0059] ● Prepare the transmitter and / or receiver of the communication system as further described above.

[0060] As Figure 5 shown, after step 418 is completed, the method can return to step 406 to start the next iteration.

[0061] Steps 402, 404, 406, and 418 are also outlined in Figure 3 and Figure 3 shows the prediction scheduling algorithm 30 writing the prediction order 32 into the buffer 40, which can be a circular buffer. Figure 3 It is also shown that the scheduler 50 checks the buffer by reading 42 the next session from the buffer 40. In addition to identifying the next session, the prediction order may also include additional information, such as the start time of each session in the prediction order. In some embodiments, if certain prerequisites are met, the scheduler initiates the next scheduling. These prerequisites may include the start time matching or being compatible with the current time, and / or the conditions stated in one or more of the optional steps 420 described below do not require the buffer to be emptied.

[0062] According to an embodiment of the present disclosure, the checking of the buffer in step 406 and the initiation of the next session S in step 418 can be performed in each time gap 20 located between the completion of the previous session S and the start of the next session S.

[0063] According to an embodiment of the present disclosure, since the computational overhead associated with checking the buffer (and also optionally checking any buffer emptying operations of the kind described below with respect to the optional step 420) is lower than Figure 1 the computational overhead of the operations involved in the scheduling time 12 shown, the duration 6 of the scheduling time 12 can be shortened. Since during each scheduling time 12 (as Figure 1 shown), the scheduler does not need to determine and prioritize each remaining session S in the sequence 100 and then identify the next session, a lower computational overhead is incurred. In fact, the scheduler can simply check the buffer to identify the session S, and can optionally perform a check to ensure that the prediction order is correct.

[0064] In some embodiments, the method may further include some optional steps 420, which are intended to handle changes to the sequence 100 that require emptying the buffer and generating a new prediction order (for the remaining sessions S in the sequence 100).

[0065] In an optional step 408, method 400 determines whether the actual next session S in session sequence 100 is different from the next predicted session S in the predicted order generated by the predictive scheduling algorithm in step 402. In response to determining that the actual next session matches the next predicted session, method 400 may proceed to the next one of optional steps 420 and / or proceed to step 418. On the other hand, in response to determining that the actual next session S is different from the next predicted session S, the method may involve clearing the buffer and returning to step 402, where a new predicted order (for the remaining sessions S in sequence 100) may be generated. The new predicted order may include a different next session S.

[0066] In another optional step 410, method 400 determines whether a new session S is to be added to session sequence 100. The new session S may be the next session or a subsequent session in sequence 100. In the case where the new session S is the next session S in sequence 100, the steps 408 described above may also be applied. In response to determining that no new session S (at this stage) is to be added to session sequence 100, method 400 may proceed to the next one of optional steps 420 and / or proceed to step 418. On the other hand, in response to determining that a new session S is to be added to session sequence 100, method 400 may involve clearing the buffer and returning to step 402, where a new predicted order (for the remaining sessions S in sequence 100) may be generated. The new predicted order may include the new session S.

[0067] In another optional step 412, method 400 determines whether a session S is to be removed from session sequence 100. The session S to be removed may be the next session or a subsequent session in sequence 100. In the case where the session S to be removed is the next session S in sequence 100, the steps 408 described above may also be applied. In response to determining that no session is to be removed from session sequence 100 (at this stage), method 400 may proceed to the next one of optional steps 420 and / or proceed to step 418. On the other hand, in response to determining that the session S is to be removed from session sequence 100, method 400 may involve clearing the buffer and returning to step 402, where a new predicted order (for the remaining sessions S in sequence 100) may be generated. The new predicted order may omit the removed session S.

[0068] In an additional optional step 414, method 400 determines whether the run time of one or more of the sessions S in session sequence 100 has changed. The session(s) S whose run time is changed may include the next session or subsequent sessions in sequence 100. In response to determining that no session run time has changed, method 400 may proceed to the next in optional step 420 and / or continue to step 418. On the other hand, in response to determining that one or more session run times have changed, method 400 may involve emptying the buffer and returning to step 402, where a new prediction order (for the remaining sessions S in sequence 100) may be generated. The new prediction order may take into account the updated session run times.

[0069] It should be understood that method 400 may include any combination of one or more of optional step 420. Additionally, optional step 420 may be completely omitted from the method. As the system moves through each stage in sequence 100, optional step 420 may be performed at run time, allowing for adaptation to real-time changes in sequence 100.

[0070] It should be recognized that in the case where any one of optional step 420 does result in such an operation, the buffer emptying operation and the re-running of the prediction scheduling algorithm may cause a delay in the start of the next session S in sequence 100. However, generally, it is expected that embodiments of the present disclosure may reduce the duration of gap 20, thereby improving call time utilization. Additionally, as will now be described, embodiments of the present disclosure may include features that may allow the potential need for buffer emptying operations to be reduced to an acceptable level.

[0071] According to embodiments of the present disclosure, the prediction order may only involve a subset of the sessions S within the entire sequence 100. For example, the prediction order may involve the next N sessions S in sequence 100. In some embodiments, the system may attempt (subject to processing overhead availability) to perform steps 402 and 404 to continuously generate and subsequently update the prediction order for the next N sessions. In some cases, processing time may not be available during each session S. However, it is expected that a sufficient number of sessions in sequence 100 will have sufficient idle time available to allow the prediction scheduling algorithm to fill the buffer such that the buffer rarely (if ever) becomes empty.

[0072] In some embodiments, before determining the prediction order, the prediction scheduling algorithm may determine the number N of prediction sessions to include in the prediction order. The choice of N may consider several factors. For example, a larger value of N may increase the probability of a buffer emptying operation being required. This is because for a large N, it becomes increasingly likely within the next N sessions that:

[0073] ● One of the predicted sessions may not become the actual next session;

[0074] ● A session may need to be added to / removed from sequence 100; and / or

[0075] ● The run time of one or more of the next N sessions may change.

[0076] On the other hand, if N is too low, the likelihood that the buffer runs empty increases. The predictive scheduling algorithm can be pre-programmed with one or more predetermined values of N to pick between them, and / or data collected during a previous sequence 100 can be used to set N to an optimal value for a given application. Additionally, N can be determined at least in part based on the expected number of sessions required for the task to be performed by session sequence 100. Additionally, N can be determined based on the expected proportion of incorrect predictions among the plurality of sessions in session sequence 100. The expected proportion of incorrect predictions can be determined, for example, based on the above data regarding previous sequences and / or can be pre-programmed into the algorithm. The predictive scheduling algorithm can, for example, use the expected proportion of incorrect predictions to pick a value of N that keeps the probability of buffer emptying operations at or below an acceptable level.

[0077] As part of determining the prediction order, the predictive scheduling algorithm can determine the start time of at least one predicted session in the prediction order based on the start time and run time of at least one previous predicted session in the prediction order. This can allow the scheduler to know not only the order in which the predicted sessions occur in the sequence, but also the start time of each session. To generate the prediction order, the predictive scheduling algorithm can add predicted sessions to the prediction order until the number of predicted sessions in the prediction order reaches the value of N as described above, or until a condition is reached where the run time of the next predicted session cannot be determined.

[0078] Now turning to Figure 4 and 5 , additional details of the operation of the scheduler will now be described.

[0079] Figure 4 illustrates the operation of a scheduler according to an embodiment of the present disclosure. In Figure 4 , the predictive scheduling algorithm 300 stores the sessions of the prediction order in a circular buffer 320, as already mentioned above.

[0080] In this embodiment, the predictive scheduling algorithm 300 has several inputs used in determining the prediction order. These inputs include an indication 302 of the current time, and an indication 304 of the start time and running time of the previous session S in the prediction order of the sequence 100. The inputs in this embodiment also include a session list 310. The session list 310 lists the sessions that can in principle be included in the sequence 100. These sessions are listed in the session list in order of dynamic priority (e.g., descending). It should be understood that the components and sorting within the session list can change dynamically according to the currently available information about the sequence 100 (such as the current position in the sequence and / or whether any sessions are to be added / removed after a buffer emptying operation, etc.). In Figure 4 the example shown, the session list 310 lists the sessions in descending order of priority, from the lowest priority session 312 to the highest priority session 314.

[0081] In one embodiment, the current time indication 302 is used to predict which session will appear first in the prediction order. The indication 304 of the start time and running time of the previous session S in the prediction order is used to make subsequent predictions about the next session in the prediction order.

[0082] For example, if the first prediction is for S2, the current time is used to predict S2, the second prediction is made by advancing the current time by S2 start time + S2 running time, and similarly the third prediction is made by advancing the start time + running time of the session predicted in the second prediction. As described above, this method can continue until N is reached. Alternatively, the method can continue until the scheduler encounters a condition where it is not possible to predict the running time of the previous session in the prediction order, such as in the case of an out-of-sync controller session. An out-of-sync controller session can mean that the maximum running time of the Rx search window can be twice the block duration or less (if it was synchronized previously). In UWB, the running time depends on the ranging or radar protocol and its configuration. For example, in the case of a bilateral two-way ranging (DS-TWR) protocol in a delay mode with one responder, its running time can take at least 5 time slots, and in the worst-case scenario with 8 responders it can be up to 20 time slots, and an optional ranging result message is enabled.

[0083] According to an embodiment of the present disclosure, a computer program can be provided, which includes program instructions that, when executed by a scheduler, cause the scheduler to execute the method of the type described above with respect to Figure 5 the description.

[0084] According to an embodiment of the present disclosure, a scheduler can be provided that is operable to, by executing the above with respect to Figure 5Scheduling sessions in a communication system (e.g., a UWB system) by the described type of method. According to embodiments of the present disclosure, a communication system (e.g., a UWB system) can be provided that includes such a scheduler.

[0085] Accordingly, a method for scheduling sessions in a Ultra-Wideband (UWB) communication system, a corresponding computer program, a scheduler, and a UWB communication system have been described. The method includes using a predictive scheduling algorithm to generate a predicted order in which a plurality of UWB sessions occur in a UWB session sequence. The method further includes storing the predicted order in a buffer. The method additionally includes performing the following multiple iterations: when a previous UWB session in the UWB session sequence is completed, checking the buffer to determine the next UWB session in the UWB session sequence; and initiating the next UWB session.

[0086] Although specific embodiments of the present disclosure have been described, it should be understood that many modifications / additions and / or substitutions can be made within the scope of the claims.

Claims

1. A method for scheduling a session in an ultra-wideband (UWB) communication system, characterized in that: The method comprises: Using a predictive scheduling algorithm to generate a predicted order in which the plurality of UWB sessions will appear in a sequence of UWB sessions; storing the predicted order in a buffer; and Perform multiple iterations of the following: checking the buffer to determine a next UWB session in the sequence of UWB sessions when a previous UWB session in the sequence of UWB sessions is completed; and The next UWB session is initiated.

2. The method according to claim 1, characterized in that This includes generating the predicted order during a session time of a UWB session.

3. The method according to claim 2, characterized in that The predictive scheduling algorithm is executed in a real-time operating system RTOS thread, and the real-time operating system RTOS thread has a lower priority than at least one functional thread of the UWB communication system.

4. A method according to any of the preceding claims, characterised in that The checking of the buffer and the initiation of the next UWB session are performed in a time gap between completion of the previous UWB session and the start of the next UWB session.

5. A method according to any of the preceding claims, characterised in that Initiating the next UWB session includes at least one of the following: resetting a modem of the UWB communication system; In response to determining that the next UWB session needs to use a channel different from the channel used by the previous UWB session, changing the channel to be used for transmission / reception of the next UWB session; and A transmitter and / or a receiver of the UWB communication system is prepared.

6. A method according to any of the preceding claims, characterised in that Also includes: Prior to determining the prediction order, the number N of predicted UWB sessions to be included in the prediction order is determined.

7. The method according to claim 6, characterized in that N is determined based on the expected number of UWB sessions required for the task to be performed by the UWB session sequence.

8. A computer program, characterized in that comprising program instructions which, when executed by a scheduler, cause the scheduler to perform a method according to any preceding claim.

9. A scheduler, characterized in that: The method is operable to schedule a session in an ultra-wideband (UWB) communication system by performing the method according to any one of claims 1 to 7.

10. An ultra-wideband (UWB) communication system, characterized in that: Comprising a scheduler according to claim 9.