Apparatus and method for csi processing based on multiple service priority queues

By adopting a multi-service priority queue model, the problem of insufficient computing power in mobile communication devices is solved, enabling efficient processing of multiple CSI measurement triggers under limited resources, optimizing CSI updates and fairness, and reducing hardware and power consumption.

CN110537339BActive Publication Date: 2025-10-28INTEL CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN201780089844.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2017-05-11
Publication Date
2025-10-28
Estimated Expiration
2037-05-11

AI Technical Summary

Technical Problem

In mobile communication devices, the computing power is insufficient to support multiple asynchronous CSI measurement trigger sets, resulting in computing overload and the inability to complete all triggered CSI measurements within the minimum CSI reporting period.

Method used

A multi-service priority queue model is adopted. By classifying and prioritizing CSI measurement triggers, the system utilizes the limited time to live (TTL) to process multi-category and multi-size jobs, prioritizes high-priority jobs, and rationally allocates computing resources to avoid computing overload.

Benefits of technology

It effectively reduces hardware size, processing time and power consumption, supports more CSI measurement triggers, optimizes the number and fairness of CSI updates, and adapts to the expansion characteristics of modern communication systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN110537339B_ABST
    Figure CN110537339B_ABST
Patent Text Reader

Abstract

The present invention relates to a mobile communication device circuit, comprising: a wireless receiver configured to receive multiple channel state information (CSI) measurement requests, each CSI measurement request triggering a CSI measurement; and a processor configured to process the multiple CSI measurement triggers within a CSI reporting period according to a CSI calculation scheduling based on a multi-service priority queue of multi-size jobs, each job corresponding to a corresponding CSI measurement trigger.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a mobile communication device circuit and method for processing multiple Channel State Information (CSI) measurement triggers based on a multi-service priority queue of multi-size jobs. Specifically, the invention addresses the challenge of supporting multiple asynchronous CSI measurement trigger sets within a minimum CSI reporting period at the communication device, where the device's computational capacity can be "overloaded," i.e., less than the capacity required for the maximum possible number of CSI measurement triggers for each minimum CSI reporting period. Background Technology

[0002] Various communication systems 100 (e.g., such as Figure 1 (As shown in the diagram) Link adaptation is employed, thereby modifying the transmitted signals 111, 121, and 131 based on CSI to improve throughput performance. The CSI representation may include transmission parameters or CSI elements such as modulation and coding scheme (MCS), transmission rank, beam direction, and precoding matrix. In some systems with reciprocal channels, the CSI can be obtained at the transmitter (e.g., Figure 1 (Base stations 110, 120, and 130 are shown in the diagram). However, in most systems, information needs to be measured at the receiver, for example, in... Figure 1 The mobile device 140 shown in the diagram then sends a feedback to the transmitter. This CSI measurement can be triggered via an aperiodic (dynamic) request or a periodic (static) scheduling from the transmitter.

[0003] A major and growing challenge in measuring CSI at the receiver is reducing the associated computational costs in terms of device hardware (HW) size, processing time, and / or power consumption. This challenge has become a significant design factor in mobile devices with stringent cost requirements. Specifically, a typical receiver design requirement is to complete all triggered CSI measurements within a minimum CSI reporting cycle so that its resources can be reused for new measurement triggers in the next cycle. Attached Figure Description

[0004] The accompanying drawings are included to provide a further understanding of the embodiments, and are incorporated in and constitute a part of this specification. The drawings illustrate embodiments and, together with the description, serve to explain the principles of the embodiments. Other embodiments and the numerous intentions and advantages of the embodiments will be readily understood as they will become more apparent from the following detailed description.

[0005] Figure 1 This is a schematic diagram of a multiple-input multiple-output (MIMO) communication system 100, in which a mobile terminal 140 must handle multiple CSI measurement triggers 111, 121, and 131.

[0006] Figure 2 This is a schematic diagram illustrating an exemplary priority queuing 200 for multi-size jobs with finite time-to-live (TTL) according to an exemplary implementation.

[0007] Figure 3 This is a flowchart of the example CSI calculation schedule 300 based on an exemplary implementation.

[0008] Figure 4 This is a flowchart of example CSI calculation scheduling based on an exemplary implementation of LTE 400.

[0009] Figure 5 This is a block diagram of a mobile communication device circuit 500 with a multi-service priority queue 504, implemented according to an example.

[0010] Figure 6 This is a schematic diagram of a method 600 for handling multiple CSI triggers based on a multi-service priority queue, according to an exemplary implementation. Detailed Implementation

[0011] In the following detailed description, reference is made to the accompanying drawings, which form a part thereof, and specific aspects in which the invention may be practiced are illustrated by way of example. It will be understood that other aspects may be utilized and structural or logical changes may be made without departing from the scope of the invention. Therefore, the following detailed description is not to be construed as limiting, and the scope of the invention is defined by the appended claims.

[0012] The following terms, abbreviations, and symbols will be used here:

[0013] 3GPP: Third Generation Partnership Project

[0014] CSI: Channel State Information

[0015] TTL: Time to Live

[0016] FS: Full Service

[0017] PS: Some services

[0018] NS: No Service

[0019] SIM: User Identification Module

[0020] DSDA Dual SIM Dual Standby

[0021] RM: Report Mode

[0022] RT: Report Type

[0023] CC: Component carrier

[0024] CRI: CSI Reference Signal Resource Indicator

[0025] RI: Rank Indicator

[0026] PMI: Precoding Matrix Indicator

[0027] CQI: Channel Quality Indicator

[0028] MCS: Modulation and Coding Scheme

[0029] CoMP: Cooperative Multipoint Transport

[0030] MIMO: Multiple Input Multiple Output

[0031] TM: Transmission Mode

[0032] LTE: Long Term Evolution

[0033] OFDM: Orthogonal Frequency Division Multiplexing

[0034] RF: Radio Frequency

[0035] eNodeB: Base Station

[0036] UE: User Equipment, Mobile Equipment

[0037] The methods and apparatus described herein can be based on mobile communication devices configured to perform a large number of CSI measurements. It is understood that comments made in connection with the described methods also apply to corresponding devices configured to perform those methods, and vice versa. For example, if specific method steps are described, the corresponding device may include units for performing the described method steps, even if not explicitly described or illustrated in the accompanying drawings. Furthermore, it is understood that features of the various exemplary aspects described herein can be combined with each other unless otherwise specifically indicated.

[0038] The methods and apparatus described herein can be configured to transmit and / or receive radio signals and perform associated signal processing. Radio signals can be or can include radio frequency signals radiated by a radio transmitting device (or radio transmitter or transmitter) with a radio frequency frequency in the range of about 3 kHz to 300 GHz. The frequency range can correspond to the frequency of the alternating current signal used to generate and detect radio waves.

[0039] The methods and apparatus described herein can be implemented in wireless communication networks, particularly in communication networks based on mobile communication standards such as LTE, especially 4.5G, 5G and above. The described apparatus may include integrated circuits and / or passive circuits and can be manufactured according to various technologies. For example, the circuits may be designed as logic integrated circuits, analog integrated circuits, mixed-signal integrated circuits, optical circuits, memory circuits and / or integrated passive circuits.

[0040] The methods and apparatus described herein can be based on CSI measurements and CSI measurement requests configured to trigger CSI measurements. In wireless communication, Channel State Information (CSI) refers to the known channel properties of a communication link. CSI describes how a signal propagates from the transmitter to the receiver and represents, for example, the combined effects of scattering, fading, and power attenuation associated with distance. This method is called channel estimation, and CSI measurement is the measurement used to acquire CSI. CSI makes it possible to adapt transmission to current channel conditions, which is crucial for achieving reliable communication at high data rates in MIMO systems (e.g., multi-antenna systems). CSI needs to be estimated at the receiver and typically needs to be quantized and fed back to the transmitter.

[0041] For convenience, if the time difference between two different CSI measurement triggers is shorter than the minimum CSI reporting period length, these two different CSI measurement triggers are referred to here as "coexistence". In modern communication systems (such as 3GPP (3rd Generation Partnership Project) and LTE (Long Term Evolution)), this cost constraint has been recognized, where the maximum number of CSI "updates" (i.e., the actual calculated CSIs) is limited. It can be limited to a value less than the maximum possible number of coexisting CSI measurement triggers.

[0042] The methods and apparatus described below provide a solution to the challenges of effective CSI measurements, which is of greater significance for next-generation communication systems supporting increasing carrier aggregation, larger bandwidth, cooperative multipoint transmission (CoMP), beamforming with thousands of beam candidates (such as 3D beamforming and massive MIMO (multiple-input multiple-output)), and multiple independent connections (such as multiple SIMs (subscriber identification modules)). Such feature extensions can increase the computational cost of a single CSI and the number of coexisting CSI measurement triggers, achieving (1) even supporting a reasonably limited number of measurements within a single connection. It becomes impractical, and (2) for N SIM Each active connection may need to support The degree of.

[0043] The methods and apparatus described below provide a class of CSI computation scheduling approaches that avoid computational overload in any scenario, including substantially more expensive single CSI types, a large number of coexisting CSI measurement triggers, and multiple independent connections, while fundamentally optimizing support for dynamic trigger sets. These methods and apparatus enable receivers to minimize their hardware while supporting richer feature sets through expanded CSI reporting.

[0044] The methods and apparatus described below are based on the following key principles:

[0045] CSI computation scheduling can be modeled as a multi-service priority queue, whereby CSI measurement triggering is modeled as multi-category, multi-size jobs with finite time-to-live (TTL), and higher-priority jobs are served first.

[0046] A job (CSI measurement trigger) can fall into one of three categories. The first category can include both long-term (slowly changing) and short-term (rapidly changing) CSI elements. The second category can include only long-term elements, while the third category can include only short-term elements. Jobs can have different dimensions, i.e., the time required for computation, because different triggers may belong to different transmission configurations (e.g., bandwidth) and may include different CSI elements. In the sense that its measurement results must be prepared within a finite time, a job has a lifespan.

[0047] A service (CSI calculation) can be classified into one of three types: the first type is full service, which calculates all triggered CSI elements; the second type is partial service, which calculates only triggered short-term elements; and the third type is no service, which does not calculate any elements.

[0048] Based on the above principles, a queue-based CSI computation scheduling method can be constructed, so that (1) it still supports computationally overloaded methods that would otherwise theoretically cause computational overload. (2) Adaptively maximize the number of CSI updates; and (3) Fairly handle all coexisting CSIs.

[0049] The queue-based CSI computation scheduling method presented below provides the receiver with a first known mechanism to support the number of CSI updates that would nominally overload computational capacity, while adaptively optimizing the actual number of CSI updates and fairly handling all CSI measurement triggers from any one of multiple independent connections. Here, "nominal overload" means that the full computation of all triggered CSI elements from a given number of CSI updates exceeds the given CSI computational capacity.

[0050] This concept can be described by the following key features: 1) multi-sized jobs with limited lifetimes in a priority queue model environment, for greater adaptive utilization of given computing power and fairness among independent connections; 2) multi-service queuing of multi-class jobs to support the otherwise excessive computational cost of a single CSI in an environment triggered by a large number of CSI measurements.

[0051] The methods and apparatus described herein can be implemented in mobile devices that support carrier aggregation, such as CoMP in LTE™ (Transmission Mode) 10 with multiple CSI processes, FD-MIMO (Full-Dimensional MIMO), massive MIMO, multi-SIM multi-standby, etc. The concepts according to this disclosure allow for the development of communication modems with significantly reduced hardware (HW) size, processing time, and / or power consumption. This concept is particularly valuable in system configurations with large CSI sizes, numerous coexisting CSIs, and multi-SIM multi-standby.

[0052] Figure 2 This is a schematic diagram illustrating an example priority queue 200 for multi-size jobs with a limited TTL according to an exemplary implementation.

[0053] This figure is an example illustration of a priority queue model for CSI computation scheduling in a multi-SIM scenario according to the present invention. In the figure, each rectangle corresponds to a job, i.e., a CSI measurement trigger. Rectangles A1, A2, A3, A4, A5, and A6 correspond to jobs from the first SIM (SIM A, 201), and the diagonally filled rectangles B1, B2, B3, and B4 correspond to jobs from the second SIM (SIMB, 202). The horizontal length of the rectangle represents the job size 213, i.e., the time required to compute the job. The length of queue 210 represents the queue size 211, i.e., the CSI computation capacity, which is the same as the TTL of a new job and typically less than the minimum CSI reporting period. Queue 210 is the input queue of server 203, which is configured to compute jobs after passing through queue 210.

[0054] This example consists of four subgraphs arranged in logical order of events. Subgraph (a) shows the state of queue 210 a little earlier, at which point a group of first SIM jobs A1, A2, A3, A4, A5, and A6 have been scheduled. Subgraphs (b)-(d) show the CSI computation scheduling process immediately after a group of second SIM jobs B1, B2, B3, and B4 have arrived. By this time, job A1 has been serviced, and the TTL of the earlier group of jobs 222 has decreased. Since at least one job from each group can coexist in queue 210, the two groups are "coexisting".

[0055] As shown in subgraph (c), the arrival of another set of jobs triggers a sorting of all queued jobs and the new job 221 together according to a priority metric. This means that a new job with a sufficiently high priority can jump the queue 233, moving (or reordering) earlier queued jobs with lower priorities to the back. Subgraph (d) shows queue 210 now filled with jobs in priority order, thereby discarding 243 (i.e., not counting) jobs from SIM with sufficiently low priority and / or jobs that are too large to fit in the queue, such as job B3 in this example. Additionally, when an earlier job to be reordered has a reordering position that exceeds the job's TTL and is now smaller than the queue size 242, the earlier job is actually discarded from queue 210 244, for example, A6, even though its reordering position is still within the queue size 242.

[0056] Priority metrics used to classify jobs are representations of the impact of associated job instances on performance. That is, they estimate the importance of updating a specific CSI. Various metrics can be used, including time since the last update, channel parameters such as coherence time, temporal variation of the most recently updated CSI value, and / or combinations thereof.

[0057] As shown in the figure, considering the varying computation times of jobs allows for more adaptive utilization of computing power over time, and the introduction of the TTL concept ensures complete fairness among multiple asynchronous connections. An implicit cost of multi-size jobs is the need for online or offline size estimation.

[0058] The two generalizations of the priority queuing model described above can provide support for stringent requirements. The required means are necessary, otherwise such requirements would overwhelm computing power. With the extended features of newer communication systems, the computational cost of a single CSI can be so high that a complete update of even a few CSIs can exceed the best-case computing power of the receiver. This might even fail to support the system-defined... The minimum value in the range may still be a small fraction of the maximum possible number of coexisting CSI measurement triggers. Overcoming this potential overload and supporting system optimization. One approach is to classify each component of CSI rank, beam, precoding moments, MCS, etc., based on the expected time-varying rate of their impact on performance, and to update rapidly changing elements more frequently than slowly changing elements. In other words, in many cases, certain triggered CSI elements are not computed but copied from previous estimates. Within the framework of the queue model described above, this translates to multiple categories of jobs and multiple types of services.

[0059] Multiple service types can be derived from the classification of CSI elements. A simple bidirectional classification can include elements that change slowly (long-term) and change rapidly (short-term). More diverse classifications are also possible, although here we will limit our discussion to a bidirectional example to simplify the description of the core principles. This bidirectional element classification can result in three service types—full service (FS), where all triggered long-term and short-term elements are computed; partial service (PS), where all triggered short-term elements are computed; and no service (NS), where no elements are computed. Of course, other types of element classifications are also possible. Often, it is unnecessary to compute only long-term elements, as short-term elements are typically conditional on long-term elements, meaning that an update to a long-term element should imply an update to all commonly triggered short-term elements.

[0060] Multiple job categories can be derived from the service classification. Based on the examples of the three service types mentioned above, three job categories can be constructed: the first category of jobs can be subject to full computation, partial computation, or no computation; the second category of jobs can be subject to full service or no service; and the third category of jobs can be subject to partial service or no service. Example sets of these three job categories include the first category containing both long-term and short-term elements, the second category containing only long-term elements, and the third category containing only short-term elements.

[0061] Figure 3 This is a flowchart of an example CSI computation scheduling method 300 based on an exemplary implementation. The example CSI computation scheduling method 300 can be used to illustrate the concept of the present invention. This queue can correspond to... Figure 2 Queue 210 is depicted in the diagram. This process corresponds to one cycle of CSI scheduling triggered by a set of simultaneous CSIs from any of the supported connections. That is, for example, as described above regarding... Figure 2 The process described above runs from start to finish for each new job group, and the actual service of the scheduled jobs begins after the process ends. This does not mean that CSI computation only begins when scheduling ends; for some jobs in an earlier group, service may be in progress, while the scheduling of all new jobs and queued jobs is not in service. In practice, it may be necessary to "lock" the next few queued jobs in the queue to service, and to prevent reclassification and reordering when new jobs arrive, to prevent the server from being unnecessarily idle while scheduling occurs. Therefore, all new jobs and unqueued jobs can be characterized together as "qualified" for classification and reordering.

[0062] As shown in the figure, the CSI computation scheduling process can be described step-by-step between start 301 and end 330, assuming that the queue size can support at least N. FS Full service and at least Each part of the service.

[0063] 1. Preparation for new assignments: For all new assignments 310, perform the following steps in any order.

[0064] a. Start TTL counter 311 for a new group of jobs. Only one counter is needed for each group of jobs running simultaneously.

[0065] b. Obtain the priority metric 312 for each new job.

[0066] c. Label the job category 313. If the job conforms to all services, its category is C0. Otherwise, if the job conforms to only full services and no services, its category is C1.

[0067] Otherwise, if the job only obeys some jobs and has no service, then its category is C2.

[0068] 2. Service Marking and Queuing 320: For all qualified jobs, perform the following operations in the prescribed order.

[0069] a. Assign FS tag 321 to the highest priority up to N. FS (Categories C0 and C1) number of jobs. They are allowed to join the queue. Controllable parameter N. FS ≥1 is the minimum number of full services the server wants to provide within the minimum CSI reporting period. If N FS If N = 1, then no TTL check is needed. FS If the value is greater than 1, then all jobs except the first job with the highest priority must undergo a TTL check.

[0070] b. When there are remaining jobs without service tags, 322:

[0071] i. If a remaining job with the highest priority (323) is allowed to exceed the job's TTL, assign the job a 324NS tag. If the job belongs to category C0, use its PS size.

[0072] ii. Otherwise, if it is category C1, assign the job a 325FS tag; or if it is category C0 or C2, assign the job a 325PS tag. Allow it to enter the queue.

[0073] 3. Reassign 326 FS tags to queued C0 jobs with PS tags in descending order of priority, until (there are no more C0 jobs with PS tags) or (the time point at which reassigning FS tags to the next C0 job with PS tags would cause the queued jobs to exceed their TTL), whichever is earlier.

[0074] A job with an NS tag means that, if available, its CSI elements are copied from previous estimates; or, if there is no such history, its CSI elements are generated in a pre-defined / random manner.

[0075] This example gives a higher priority to maximize the total number of all or partial update jobs, rather than maximizing the total number of all updates, while simultaneously satisfying... The goal. This process can also be adjusted to prioritize the latter.

[0076] The example CSI calculation scheduling 300 described above can be represented as an algorithm or method for scheduling Channel State Information (CSI) calculations based on a multi-service priority queue, as described below. Such a method 300 may include the following blocks: receiving a set of new jobs 310, each job corresponding to a respective CSI measurement trigger; starting a Time-to-Live (TTL) counter for each job in the set of new jobs 311; obtaining the priority of each job from the set of new jobs 312; labeling each job in the set of new jobs with a job category from a set of job categories 313; queuing the set of new jobs into a multi-service priority queue 320; labeling each job in the queued jobs with a service type from a set of service types based on the priority and job category of each job 320; and processing the queued jobs based on their service types.

[0077] Method 300 may include: reassigning the service type label of the queued jobs based on their priority. Method 300 may include: updating the TTL counter of the queued jobs. Method 300 may include: discarding jobs from the queue based on their TTL counter and priority, and based on the size of the multi-service priority queue. The set of service types may include the following service types: full service, partial service, and no service. The set of job categories includes the following job categories: a first job category (C0) for jobs that conform to all service types, a second job category (C1) for jobs that conform to both full service and no service types, and a third job category (C2) for jobs that conform to both partial service and no service types. Processing the queued jobs may include: calculating a subset of CSI elements of the CSI measurement corresponding to the queued jobs.

[0078] Figure 4 This is a flowchart of example CSI calculation scheduling in LTE 400 based on an exemplary implementation.

[0079] The flowchart illustrates a more concrete example of CSI calculation scheduling within an LTE Release-13 system environment, showcasing the concepts of this invention. The flowchart includes encapsulation functions for updating time counters and detecting CSI measurement triggers, as well as main scheduling functions for new job preparation, service tagging, and queuing. Figure 3 This is an adjusted version. Each subframe in each connection triggers one cycle of this process, such as in SIM, where one subframe is the minimum CSI reporting cycle in LTE. Such a regular cycle and wrapper function are necessary if the priority metric depends on the time since the last update. The main scheduling function adjustments in this example include adding a job index, priority metric processing, and job category adjustments.

[0080] In an LTE environment, a job is defined as a CSI measurement trigger associated with the SIM, Reporting Mode (RM), Component Carrier (CC), CSI processing, and CSI subframe set (if configured). A job can contain long-term and / or short-term elements, where long-term elements may include a CRI (Channel State Information Reference Signal Resource Indicator), an RI (Rank Indicator), and a first PMI (Precoding Matrix Indicator), and short-term elements may include a PMI or a second PMI and a CQI (Channel Quality Indicator). Therefore, each job index j uniquely identifies the CSI associated with the SIM, CSI process / CC, CSI subframe set (if configured), and Reporting Mode. In other words, given SIM index i... SIM Cell Index c, CSI Process Index i CSI-P CSI Subframe Set Index C CSI And the reporting pattern RM, j is equivalent to {i SIM c, i CSI-P C CSI ,RM}.

[0081] Example priority metric p for the j-th job at the n-th subframe j [n] can be constructed as

[0082] p j [n] = α FS ·τ FS,j [n]+α PS ·τ PS,j [n],

[0083] Where α FS and α PS τ represents the weight of the entire service and the weight of a partial service, respectively. FS,j [n] and τ PS,j [n] represents the age counters for the j-th job in the n-th subframe for both full-service and partial-service. The weights make α FS<α PS To update short-term elements more frequently. Age counters reflect the time since the last update. They increment in each subframe and reset to zero when the associated CSI element for job j is updated. The full service for job j can be designed to compute all CSI elements included in any part of the service for job j. In this case, τ is reset. FS,j [n] should also trigger a reset of τ. PS,j [n]. While there are many variations of priority metrics, the above example is used here to concisely illustrate the key points.

[0084] As shown in the figure, the CSI calculation scheduling method 400 in LTE may include the following steps after start 401:

[0085] 1. Age counter update 402: For all applicable j, the applicable j corresponds to {i SIM c, i CSI-P C CSI ,RM}, and its associated CSI report can be effectively configured for the UE.

[0086] a. For all inapplicable j, τ FS,j =τ PS,j =0, meaning no update.

[0087] b. If there is no long-term element (CRI, RI, first PMI) associated with j, then

[0088] τ PS,j [n]=τ PS,j [n-1]+1. That is, τ FS,j =0. c. Otherwise, τ FS,j [n]=τ FS,j [n-1]+1 and τ PS,j [n]=τ PS,j [n-1]+1.

[0089] 2. CSI Measurement Trigger Check 403: If a new set of CSI measurements is triggered, proceed to step 3. Otherwise, proceed to step 6.

[0090] 3. New Assignment Preparation 410: For all new assignments, perform the following operations in any order.

[0091] a. Start TTL counter 411.

[0092] b. Calculate the 412 priority metric p j [n].

[0093] c. Mark job category 413.

[0094] i. If the job corresponds to an aperiodic RM, then its category is C0.

[0095] ii. If the job corresponds to a periodic RM and the RT (report type) is 2a,

[0096] If the digits are 2c, 3, 5, 6, 7, 8, 9, or 10, then the category is C1.

[0097] iii. If the job corresponds to a periodic RM and RT is 1, 1a, 2, 2b or 4, then its category is C2.

[0098] 4. Service Marking and Queuing 420: For all qualified jobs, perform the following operations in the prescribed order.

[0099] a. Assign FS label 421: give the highest p j [n] of N FS (C0 and C1 categories) jobs are assigned to FS. They are allowed to join the queue. Parameter N FS It is controllable by the UE and is ≥1.

[0100] b. When there are remaining qualified jobs 422 without service tags:

[0101] i. If 423 is allowed to have the highest p j If the remaining jobs of [n] exceed the job's TTL, then assign a 424NS tag to that job. For this purpose, use its smallest job size, i.e., FS size if it is C1, and PS size if it is C0 or C2.

[0102] ii. Otherwise, if it is category C1, assign the job a 425FS tag; if it is category C0 or C2, assign the job a PS tag. Allow it to enter the queue.

[0103] c. According to p j [n] Reassign 426 FS tags to queued C0 jobs with PS tags in descending order until (there are no more C0 jobs with PS tags) or (the time point at which reassigning FS tags to the next C0 job with PS tags would cause the queued jobs to exceed their TTL), whichever is earlier.

[0104] 5. Age counter reset 430: for all services j.

[0105] a. If the service is FS: τ FS,j [n] = 0 and τ PS,j [n] = 0.

[0106] b. If the service is PS: τPS,j [n] = 0.

[0107] 6. End of 440.

[0108] In the process, whenever more than one job has the same p j [n] And when competing for a limited number of spots in scheduling actions, jobs can be selected based on a certain criterion (e.g., in ascending order of j).

[0109] The job size can depend on the UE's hardware capabilities, bandwidth, number of transmit and receive antenna ports, data transmission scheme, RM, service tags {FS, PS} (if aperiodic), RT (if periodic), and other configurations. The size can be predetermined and stored in memory.

[0110] Assuming the queue size supports at least N FS Full service and at least The service is divided into several parts, among which... and Queues can correspond to Figure 2 Queue 210 is depicted in the text.

[0111] Figure 5 This is a block diagram of a mobile communication device circuit 500 with a multi-service priority queue 504, implemented according to an exemplary method. The mobile communication device circuit 500 includes a wireless receiver 501 and a processor 503, which includes a multi-service priority queue, for example, as described above. Figure 2 The multi-service priority queue 210 is described. The wireless receiver 501 is configured to receive multiple Channel State Information (CSI) measurement requests 502, each CSI measurement request triggering a CSI measurement, for example, as described above regarding... Figure 1 The processor 503 is configured to process the plurality of CSI measurement triggers within a CSI reporting period according to a CSI computation schedule based on a multi-service priority queue of multi-size jobs, each job corresponding to a corresponding CSI measurement trigger. The CSI computation schedule may correspond to the above regarding... Figure 3 The described CSI computation scheduling 300 or corresponding to the above is about Figure 4 The description of CSI compute scheduling 400.

[0112] Each CSI measurement may include a set of CSI elements. The corresponding CSI elements can be classified according to their expected time-varying rate.

[0113] Processor 503 can be configured to derive service types from multiple service types in the classification of CSI elements, for example, as mentioned above regarding... Figure 3 and 4The described multiple service types may include the following service types: full service, partial service, and no service, for example, as mentioned above. Figure 3 and 4 Described.

[0114] A job can correspond to jobs from multiple User Identification Modules (SIMs), for example, as mentioned above. Figure 3 and 4 The CSI compute scheduling can be configured to allow a first set of jobs from a first SIM and a second set of jobs from a second SIM to coexist in a multi-service priority queue, for example, as described above. Figures 2 to 4 The processor 503 can be configured to provide a limited time-to-live (TTL) for each job, for example, as described above regarding... Figures 2 to 4 The processor 503 can be configured to update the TTL of each job based on time, for example, as described above. Figures 2 to 4 The processor 503 can be configured to queue the plurality of jobs 502 arriving at the wireless receiver 501 in a multi-service priority queue 504. The processor 503 can be configured to, upon the arrival of a new set of jobs, reorder all queued jobs in the multi-service priority queue according to a priority metric, for example, as described above regarding... Figures 2 to 4 The priority metric can be based on at least one or a combination of the following: time since the last update of the corresponding job, radio channel coherence time, and the time variation of the most recently updated CSI value, for example, as described above regarding... Figures 2 to 4 Described.

[0115] Processor 503 can be configured to allow new jobs with higher priorities than queued jobs to jump the queue, thereby reordering queued jobs, for example, as mentioned above. Figures 2 to 4 The processor 503 can be configured to discard at least one job from the queue based on at least one of the following conditions: the priority of the at least one job is below a threshold, the position of the at least one job in the queued jobs exceeds the queue size, or the expected time to serve the at least one job becomes greater than the remaining TTL of the job, for example, as described above regarding... Figures 2 to 4 The description states that if no job meets the discard criteria, no job will be discarded.

[0116] Figure 6 This is a schematic diagram of a method 600 for handling multiple CSI triggers based on a multi-service priority queue, implemented according to an exemplary method.

[0117] Method 600 includes: receiving 601 multiple Channel State Information (CSI) measurement requests, each CSI measurement request triggering a CSI measurement; and processing 602 the multiple CSI measurement triggers within a CSI reporting period according to a CSI calculation schedule based on a multi-service priority queue of multi-size jobs, each job corresponding to a corresponding CSI measurement trigger.

[0118] Each CSI measurement may include a set of CSI elements. The corresponding CSI elements can be classified according to their expected time-varying rate.

[0119] Method 600 may further include: deriving a service type from a plurality of service types from the classification of CSI elements. The plurality of service types may include the following service types: full service, partial service, and no service. The job may correspond to jobs from multiple User Identification Modules (SIMs), for example, as described above regarding... Figure 3 and 4 Described.

[0120] CSI compute scheduling can be configured to allow a first set of jobs from the first SIM and a second set of jobs from the second SIM to coexist in a multi-service priority queue, for example, as mentioned above. Figures 2 to 4 Described.

[0121] Method 600 may further include: providing a limited time-to-live (TTL) for each job. Method 600 may further include: updating the TTL of each job according to time, for example, as mentioned above regarding... Figures 2 to 4 The method 600 may further include: queuing the plurality of arriving jobs in a multi-service priority queue, for example, as described above regarding... Figures 2 to 4 The method 600 may further include: when a new set of jobs arrives, reordering all queued jobs in the multi-service priority queue according to a priority metric, for example, as described above regarding... Figures 2 to 4 Described.

[0122] Priority metrics can be based on at least one or a combination of the following: time since the last update of the corresponding job, radio channel coherence time, and the time variation of the most recently updated CSI value, for example, as mentioned above regarding... Figures 2 to 4 Described.

[0123] Method 600 may further include: allowing new jobs with higher priority than the queued jobs to jump the queue, thereby reordering the queued jobs, for example, as described above regarding... Figures 2 to 4 Described.

[0124] Method 600 may further include: discarding at least one job from the queue based on at least one of the following conditions: the priority of the at least one job is below a threshold, the position of the at least one job in the queued jobs exceeds the size of the queue, or the expected time to serve the at least one job has become greater than the remaining TTL of the job, for example, as described above regarding... Figures 2 to 4 Described.

[0125] Method 600 may further include the above regarding Figures 2 to 5 The device described has the following functionality. Method 600 can be used with mobile devices (especially as described above). Figure 5 This is achieved using the mobile communication device 500 described.

[0126] The methods, systems, and devices described herein can be implemented as software in a digital signal processor (DSP), a microcontroller, or any other side processor, or as hardware circuitry on a chip or in an application-specific integrated circuit (ASIC).

[0127] The embodiments described in this invention can be implemented in digital electronic circuits or in computer hardware, firmware, software, or combinations thereof (e.g., electronic devices), for example, in available hardware of mobile devices or in new hardware specifically designed to process the methods described herein.

[0128] This invention also supports a computer program product comprising computer-executable code or computer-executable instructions, which, when executed, cause at least one computer to perform the execution and computation blocks described herein, particularly method 600 or above regarding... Figures 2 to 5 The described techniques. Such a computer program product may include a computer-readable non-transitory storage medium thereon storing program code used by a processor, the program code including instructions for performing any of the methods 600 or techniques described above.

[0129] Example

[0130] The following examples relate to further embodiments. Example 1 is a mobile communication device circuit including: a wireless receiver configured to receive a plurality of Channel State Information (CSI) measurement requests, each CSI measurement request triggering a CSI measurement; and a processor configured to process the plurality of CSI measurement triggers within a CSI reporting period according to a CSI computation scheduling based on a multi-service priority queue of multi-size jobs, each job corresponding to a corresponding CSI measurement trigger.

[0131] In Example 2, the subject of Example 1 can optionally include: each CSI measurement includes a set of CSI elements, and each CSI element is classified according to the expected time-varying rate of the corresponding CSI element.

[0132] In Example 3, the subject of Example 2 can optionally include: the processor is configured to derive service types from multiple service types in the classification of CSI elements.

[0133] In Example 4, the subject of Example 3 may optionally include: the plurality of service types include the following service types: a full service in which all CSI elements are updated, a partial service in which a subset of CSI elements are updated, and a no-service in which CSI elements are not updated.

[0134] In Example 5, the subject matter of any of Examples 1-4 can optionally include: each job is associated with a different size, corresponding to the time required for the mobile communication device circuitry to calculate the job.

[0135] In Example 6, the subject of any of Examples 1-5 can optionally include: the job corresponds to a job from multiple User Identification Modules (SIMs).

[0136] In Example 7, the subject of Example 6 can optionally include: CSI computation scheduling is configured to allow a first set of jobs from a first SIM of the plurality of SIMs and a second set of jobs from a second SIM of the plurality of SIMs to coexist in a multi-service priority queue.

[0137] In Example 8, the subject of Example 7 can optionally include: a multi-service priority queue comprising multiple single-priority queues, the number of which is less than the number of SIMs.

[0138] In Example 9, the subject of any of Examples 1-8 can optionally include: the processor is configured to provide a limited time to live (TTL) for each job.

[0139] In Example 10, the subject of Example 9 can optionally include: the processor is configured to update the TTL of each job according to time.

[0140] In Example 11, the subject of Example 10 can optionally include: the processor is configured to queue the plurality of jobs arriving at the wireless receiver in a multi-service priority queue.

[0141] In Example 12, the subject of Example 11 can optionally include: the processor is configured to reorder all queued jobs in a multi-service priority queue for a priority metric when a set of new jobs arrives.

[0142] In Example 13, the subject of Example 12 can optionally include: a priority metric based on at least one or a combination of the following: time since the last update of the corresponding job, radio channel coherence time, and time variation of the most recently updated CSI value.

[0143] In Example 14, the subject of Example 12 can optionally include: the processor is configured to allow new jobs with higher priority than queued jobs to jump the queue, thereby reordering the queued jobs.

[0144] In Example 15, the subject of any one of Examples 10-14 can optionally include: the processor is configured to discard at least one job from the queue based on at least one of the following conditions: the priority of the at least one job is below a threshold, the position of the at least one job in the queued jobs exceeds the size of the queue, and the expected time to serve the at least one job has become greater than the remaining TTL of the job.

[0145] Example 16 is a method for processing multiple Channel State Information (CSI) measurement triggers, the method comprising: receiving multiple Channel State Information (CSI) measurement requests, each CSI measurement request triggering a CSI measurement; and processing the multiple CSI measurement triggers within a CSI reporting period according to a CSI calculation schedule, the CSI calculation schedule being based on a multi-service priority queue of multi-size jobs, each job corresponding to a corresponding CSI measurement trigger.

[0146] In Example 17, the subject of Example 16 can optionally include: each CSI measurement includes a set of CSI elements, and the corresponding CSI elements are classified according to the expected time-varying rate of each CSI element.

[0147] In Example 18, the topic of Example 17 can optionally include: deriving service types from multiple service types in the classification of CSI elements.

[0148] In Example 19, the subject of Example 18 may optionally include: the plurality of service types include the following service types: full service, partial service, and no service.

[0149] In Example 20, the subject of any of Examples 16-19 can optionally include jobs corresponding to jobs from multiple User Identification Modules (SIMs).

[0150] In Example 21, the subject of Example 20 can optionally include: CSI compute scheduling is configured to allow a first set of jobs from the first SIM and a second set of jobs from the second SIM to coexist in a multi-service priority queue.

[0151] In Example 22, the subject of any of Examples 16-21 can optionally include: providing a limited time to live (TTL) for each job.

[0152] In Example 23, the topic of Example 22 can optionally include: updating the TTL of each job based on time.

[0153] In Example 24, the subject of Example 23 can optionally include: queuing the multiple incoming jobs in a multi-service priority queue.

[0154] In Example 25, the subject of Example 24 can optionally include: when a new set of jobs arrives, reordering all queued jobs in the multi-service priority queue for a priority metric.

[0155] In Example 26, the subject of Example 25 can optionally include: a priority metric based on at least one or a combination of the following: time since the last update of the corresponding job, radio channel coherence time, and time variation of the most recently updated CSI value.

[0156] In Example 27, the subject of any of Examples 25-26 can optionally include: allowing new jobs with higher priority than queued jobs to jump the queue, thereby reordering the queued jobs.

[0157] In Example 28, the subject of any of Examples 23-27 can optionally include: discarding at least one job from the queue based on at least one of the following conditions: the priority of the at least one job is below a threshold, the position of the at least one job in the queued jobs exceeds the size of the queue, and the expected time to serve the at least one job has become greater than the remaining TTL of the job.

[0158] Example 29 is a method for scheduling computational Channel State Information (CSI) based on a multi-service priority queue, the method comprising: receiving a set of new jobs, each job corresponding to a corresponding CSI measurement trigger; starting a Time-to-Live (TTL) counter for the jobs in the set of new jobs; obtaining the priority of each job in the set of new jobs; labeling each job in the set of new jobs with a job category from a set of job categories; queuing the set of new jobs into a multi-service priority queue; labeling each job in the queued jobs with a service type from a set of service types based on the priority and job category of the corresponding job; and processing the queued jobs based on their service types.

[0159] In Example 30, the topic of Example 27 can optionally include: reassigning service type labels to queued jobs based on the priority of the queued jobs.

[0160] In Example 31, the subject of any of Examples 29-30 can optionally include: updating the TTL counter of the queued job.

[0161] In Example 32, the subject of any of Examples 29-31 can optionally include: a job-based TTL counter and priority, and a method to discard jobs from the queue based on the size of the multi-service priority queue.

[0162] In Example 33, the subject of any of Examples 29-32 can optionally include: the set of service types includes the following service types: full service, partial service, and no service.

[0163] In Example 34, the subject of Example 33 can optionally include: the group of job categories includes the following job categories: a first job category (C0) for jobs that conform to all service types, a second job category (C1) for services that conform to both full service types and no service types, and a third job category (C2) for services that conform to both partial service types and no service types.

[0164] In Example 35, the subject of any of Examples 29-34 may optionally include: processing queued jobs includes: calculating a subset of CSI elements of the CSI measurement corresponding to the queued job for the queued job.

[0165] Example 36 is an apparatus for processing multiple Channel State Information (CSI) measurement triggers, the apparatus comprising: a module for receiving multiple Channel State Information (CSI) measurement requests, each CSI measurement request triggering a CSI measurement; and a module for processing the multiple CSI measurement triggers within a CSI reporting period according to a CSI calculation schedule, the CSI calculation schedule being based on a multi-service priority queue of multi-size jobs, each job corresponding to a corresponding CSI measurement trigger.

[0166] In Example 37, the subject of Example 36 can optionally include a module for providing a limited time-to-live (TTL) for each job.

[0167] In Example 38, the topic of Example 37 can optionally include: a module for updating the TTL of each job according to time.

[0168] Example 39 is a multiple-input multiple-output (MIMO) communication system including multiple transmitters and mobile communication devices, wherein each transmitter is configured to transmit a corresponding channel state information (CSI) measurement request to the mobile communication device to trigger the mobile communication device to perform a corresponding CSI measurement, wherein the mobile communication device is configured to process the multiple CSI measurement triggers within a CSI reporting period according to a CSI calculation schedule, the CSI calculation schedule being based on a multi-service priority queue of multi-size jobs, each job corresponding to a corresponding CSI measurement trigger.

[0169] In Example 40, the subject of Example 39 can optionally include: each CSI measurement includes a set of CSI elements, and each CSI element is classified according to the expected time-varying rate of the corresponding CSI element.

[0170] Example 41 is a computer-readable non-transitory medium having computer instructions stored thereon, which, when executed by a computer, cause the computer to perform any of the methods in Examples 16 to 35.

[0171] Example 42 is an apparatus or method for scheduling multiple Channel State Information (CSI) values ​​to be computed at a receiver in a wireless communication network, comprising: determining a priority metric for each triggered new CSI measurement; associating each triggered new CSI measurement with a job category from a set of multiple job categories; allocating full service (FS) associations in descending order of priority to a non-zero subset of eligible jobs in a subset of job categories, wherein eligible jobs include all triggered new CSI measurements and a subset of CSI measurements that have been scheduled but not yet computed; allocating service associations in descending order of priority to each remaining eligible job without a service association, provided that the allocation does not exceed the time-to-live (TTL) for triggering the CSI measurement, wherein the set of service associations includes FS and partial service (PS), wherein the TTL is the remaining time for the receiver to determine the triggered CSI; compute all CSI elements triggered for each CSI measurement associated with full service; and compute a subset of CSI elements triggered for each CSI measurement associated with partial service.

[0172] In Example 43, the subject matter of Example 42 can optionally include: a priority metric based on the time since the last update of the associated CSI, channel parameters such as coherence time, and / or the time variation of the most recently updated CSI value.

[0173] In Example 44, the subject of any of Examples 42-43 can optionally include: job category based on the expected time-varying rate of each CSI element.

[0174] In Example 45, the topic of Example 44 can optionally include: classifying a subset of CSI elements as rapidly changing (short-term).

[0175] In Example 46, the subject of Example 45 can optionally include: a subset of the calculation of CSI elements triggered by CSI measurements associated with PS includes all short-term elements.

[0176] In Example 47, the subject of any of Examples 42-46 can optionally include: assigning a no-service (NS) association to a job that has no service association at the end of scheduling, and not calculating the CSI element of that job.

[0177] In Example 48, the subject matter of any of Examples 42-47 can optionally include: determining the value of an uncalculated CSI element by copying from one or more previous estimates if available, or by selecting a predetermined or random value if such historical records are not available.

[0178] In Example 49, the subject matter of any of Examples 45-46 may optionally include: a first category of assignments that can be associated with FS or PS or NS, a second category of assignments that can be associated with FS or NS, and a third category of assignments that can be associated with PS or NS.

[0179] In Example 50, the subject of Example 49 can optionally include: a first subset of job categories suitable for FS association includes a first category and a second category, and a second subset of job categories suitable for PS association includes a first category and a third category.

[0180] In Example 51, the subject of any of Examples 42-50 can optionally include: after all service associations are completed, each job with a PS association changes its association to FS in descending order of priority until the job’s change would cause the job’s CSI calculation to exceed its TTL.

[0181] In Example 52, the subject of any of Examples 42-47 can optionally include: performing calculations in the order of service assignment.

[0182] Furthermore, while a particular feature or aspect of the invention may have been disclosed with respect to only one of several implementations, such features or aspects may be combined with one or more other features or aspects of other implementations, as may be desired and advantageous for any given or particular application. Moreover, to the extent that the terms “comprising,” “having,” “with,” or other variations are used in the detailed description or claims, such terms are intended to be inclusive in a manner similar to the term “comprising.” Furthermore, it is understood that various aspects of the invention may be implemented in discrete circuits, partially integrated circuits, or fully integrated circuits or programming devices. Similarly, the terms “exemplary,” “for example,” and “such as” are meant only as examples and not as best or optimal.

[0183] Although specific aspects have been illustrated and described herein, those skilled in the art will recognize that various alternative and / or equivalent implementations may be made in place of the specific aspects shown and described without departing from the scope of the invention. This application is intended to cover any modifications or variations of the specific aspects discussed herein.

[0184] Although the elements in the following claims are described in a particular order with corresponding markings (unless otherwise described in the claims) imply a particular order for implementing some or all of those elements, it is not necessarily intended that those elements be limited to being implemented in this particular order.

Claims

1. A mobile communication device circuit, comprising: A wireless receiver is configured to receive multiple Channel State Information (CSI) measurement requests, each CSI measurement request triggering a CSI measurement, wherein the CSI measurement includes a set of CSI elements; and, The processor is configured as follows: Each CSI element is classified according to the expected time-varying rate of the corresponding CSI element; Multiple CSI measurement requests within a CSI reporting period are processed using a CSI computation scheduling system based on a multi-service priority queue of multi-size jobs, with each job corresponding to a specific CSI measurement request.

2. The mobile communication device circuit as described in claim 1, in, The processor is configured to derive service types from multiple service types in the classification of CSI elements.

3. The mobile communication device circuit as described in claim 2, in, The multiple service types include the following service types: Full-service FS, in which all CSI elements of the CSI element set are updated; Partial service PS, in which a subset of the CSI element set is updated; No service NS, where the CSI element set is not updated.

4. The mobile communication device circuit as described in claim 1, in, Each job is associated with a different size, corresponding to the time required for the mobile communication device circuitry to calculate each job.

5. The mobile communication device circuit as described in claim 1, in, The job corresponds to jobs from multiple User Identification Modules (SIMs).

6. The mobile communication device circuit as described in claim 5, in, CSI compute scheduling is configured to allow a first set of jobs from the first SIM and a second set of jobs from the second SIM to coexist in a multi-service priority queue.

7. The mobile communication device circuit as described in claim 6, in, The multi-service priority queue includes multiple single-priority queues, and the number of the multiple single-priority queues is less than the number of SIMs.

8. The mobile communication device circuit as described in claim 1, in, The processor is configured to provide a limited time-to-live (TTL) for each job.

9. The mobile communication device circuit as described in claim 8, in, The processor is configured to update the TTL of each job according to the time.

10. The mobile communication device circuit as described in claim 9, in, The processor is configured to queue multi-size jobs arriving at the wireless receiver in a multi-service priority queue.

11. The mobile communication device circuit as described in claim 10, in, The processor is configured to reorder all queued jobs in a multi-service priority queue based on a priority metric when a new set of jobs arrives.

12. The mobile communication device circuit as described in claim 11, in, The priority metric is based on at least one of the following or a combination of the following: Since the last update of the corresponding task Wireless channel coherence time, and The time change of the most recently updated CSI value.

13. The mobile communication device circuit as described in claim 11, in, The processor is configured to allow new jobs with higher priority than queued jobs to jump the queue, thereby reordering queued jobs.

14. The mobile communication device circuit as described in claim 9, in, The processor is configured to discard at least one job from the queue based on at least one of the following conditions: The priority of at least one of the tasks is below the threshold. The position of at least one job in the queued jobs exceeds the size of the queue, and The expected time to serve the at least one job has become greater than the remaining TTL of the at least one job.

15. A method for processing multiple Channel State Information (CSI) measurement triggers, the method comprising: The system receives multiple Channel State Information (CSI) measurement requests, each CSI measurement request triggering a CSI measurement. The CSI measurement includes a set of CSI elements, and each CSI element is classified according to its expected time-varying rate. Multiple CSI measurement requests within a CSI reporting period are processed according to a CSI calculation schedule, which is based on a multi-service priority queue of multi-size jobs, with each job corresponding to a specific CSI measurement request.

16. The method of claim 15, comprising: Derive the service types from multiple service types in the CSI element classification.

17. The method of claim 16, in, The multiple service types include the following service types: Full-service FS Some services include PS, and No service NS.

18. The method of claim 15, in, The job corresponds to jobs from multiple User Identification Modules (SIMs).

19. A mobile communication device circuit, comprising: The wireless receiver is configured as follows: Receive multiple Channel State Information (CSI) measurement requests; each CSI measurement request triggers a CSI measurement. The processor is configured as follows: Multiple CSI measurement requests within a CSI reporting period are processed according to a CSI computation scheduling based on a multi-service priority queue of multi-size jobs. Each job corresponds to a corresponding CSI measurement request. The jobs correspond to jobs from multiple User Identification Modules (SIMs). The CSI computation scheduling is configured to allow a first group of jobs from a first SIM and a second group of jobs from a second SIM to coexist in the multi-service priority queue.

20. A mobile communication device circuit, comprising: The wireless receiver is configured to receive multiple Channel State Information (CSI) measurement requests, with each CSI measurement request triggering a CSI measurement. The processor is configured as follows: Each CSI element is classified according to the expected time-varying rate of the corresponding CSI element; Multiple CSI measurement requests within a CSI reporting period are processed using a multi-service priority queue based on multi-size jobs. Each job corresponds to a specific CSI measurement request. Provide each job with a limited time to live (TTL). Update the TTL of each job based on time, and Multi-size jobs arriving at the wireless receiver are queued in a multi-service priority queue.

Citation Information

Patent Citations

  • Method for processing channel state information process, network device and user equipment

    CN103843436A

  • Methods and Arrangements for CSI Reporting

    US20140078919A1