IP Library Granted Patent US 8,467,338
Granted Patent B2
US 8,467,338 · App. 12/374,177 · Granted Jun 18, 2013

Scheduling wireless communication

Inventors: Bo Lin (Glasgow, GB); Wim J. Rouwet (Austin, TX)
Assignee: Freescale Semiconductor, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,467,338
App. No.
12/374,177
Granted
Jun 18, 2013
Kind
B2
Abstract

A method of scheduling wireless communication for one or more data flows, wherein, for each data flow, there is: a corresponding queue to store data of that data flow; one or more quality-of-service parameters associated with that data flow; and a flow type associated with that data flow, there being a plurality of possible flow types; wherein the method comprises, during each time frame of a sequence of time frames, the steps of: maintaining, for each of the plurality of possible flow types, a queue list that identifies the queues corresponding to data flows of that flow type; and processing the queue lists in a predetermined order, in which processing a queue list comprises, for each queue identified in that queue list, attempting to schedule the communication of data stored on that queue during a current time frame in dependence upon the one or more quality-of-service parameters associated with the corresponding data flow and an amount of bandwidth available for the wireless communication during the current time frame.

Claims (41)

1. A method of scheduling wireless communication for one or more data flows, wherein, for each data flow, there is a corresponding queue to store data of that data flow, one or more quality-of-service parameters associated with that data flow, and a flow type associated with that data flow, there being a plurality of possible flow types, the method comprises:

maintaining a record of the amount of bandwidth available for the wireless communication during the current time frame;

maintaining, for each of the plurality of possible flow types, a queue list that identifies the queues corresponding to data flows of that flow type; and

processing the queue lists in a predetermined order based on the quality of service parameters associated with the corresponding data flow, in which processing a queue list comprises, for each queue identified in that queue list:

in response to determining the flow type associated with the queue is of a first type, attempting to schedule the communication of data stored at the queue for a current time frame based on one or more quality of service parameters and based on an amount of bandwidth available for wireless communication during the current time frame; and

in response to determining the flow type associated with the queue is of a second type, attempting to schedule the communication of data stored at the queue for the current time frame based on whether a deadline to communicate the data has been missed and based on an amount of credits assigned to the data flow, the credits comprising a first credit based upon a minimum amount of data for the data flow and a second credit based upon a maximum amount of data for the data flow.

2. A method according to claim 1 , wherein the first type is UGS, in which a UGS data flow is to be communicated in real-time by periodically communicating data packets of a predetermined length.

3. A method according to claim 1 , wherein the second type is rtPS, in which an rtPS data flow is to be communicated in real-time by periodically communicating data packets of a variable length.

4. A method according to claim 1 wherein the second type is nrtPS, in which an nrtPS data flow is to be communicated with a minimum desired data rate as data packets of a variable length, the communication of the data being delay-tolerant.

5. A method according to claim 1 , wherein the first type is BE, in which a BE data flow is to be communicated provided there is sufficient bandwidth available for the wireless communication of that data flow during the current time frame.

6. A method according to claim 2 , wherein the predetermined order for the queues lists is

the queue list for the UGS flow type is processed before the queue list for the rtPS flow type;

the queue list for an rtPS flow type is processed before the queue list for the nrtPS flow type; and

the queue list for an nrtPS flow type is processed before the queue list for the BE flow type.

7. A method according to claim 1 , wherein the first type is MNG, in which an MNG data flow comprises management information relating to a wireless communication system being used for the wireless communication.

8. A method according to claim 1 , wherein attempting to schedule comprises:

prior to attempting to schedule the communication of data stored on that queue, determining whether or not to make an attempt to schedule the communication of data stored on that queue; and

if it is determined that an attempt to schedule the communication of data stored on that queue should be made, attempting to schedule the communication of data stored on that queue based on the amount of bandwidth available for wireless communication during the current time frame.

9. A method according to claim 8 wherein the second type is rtPS, in which an rtPS data flow is to be communicated in real-time by periodically communicating data packets of a variable length, and wherein determining whether or not make an attempt to schedule the communication of data stored on a queue corresponding to an rtPS data flow comprises determining whether a deadline for the communication of a data packet of that rtPS data flow has been missed.

10. A method according to claim 9 , wherein if the deadline has not been missed and the deadline is at most a predetermined number of time frames from the current time frame, then it is determined that an attempt should be made to schedule the communication of data stored on the queue corresponding to that rtPS data flow based on the amount of bandwidth available for communication during the current time frame.

11. A method according to claim 9 , comprising:

if the deadline has not been missed and the deadline is more than a predetermined number of time frames from the current time frame, adding an identification of the queue corresponding to that rtPS data flow to a queue list which, in the predetermined order for the queue lists, is processed after the queue list for the rtPS flow type.

12. A method according to claim 9 , wherein if the deadline has been missed and the queue corresponding to that rtPS data flow stores data belonging to a data packet part of which has already been communicated, then it is determined that an attempt should be made to schedule the communication of data stored on the queue corresponding to that rtPS data flow.

13. A method according to claim 12 , comprising:

discarding data stored on the queue corresponding to that rtPS data flow if the deadline has been missed and the queue corresponding to that rtPS data flow does not store data belonging to a data packet part of which has already been communicated.

14. A method according to claim 1 in which maintaining the record of the amount of bandwidth available comprises:

prior to processing the queue lists, initialising the record of the amount of bandwidth available; and

updating the record of the amount of bandwidth available in accordance with an attempt to schedule the wireless communication of data stored on a queue.

15. A method according to claim 14 in which one of the quality-of-service parameters associated with one of the data flows is an indication, flowRmax, of a desired maximum amount of data to be communicated during each time frame for that data flow.

16. The method of claim 1 , further comprising adjusting the amount of credits based on the amount of data communicated for the current time frame.

17. The method of claim 1 , further comprising resetting the first credit to the minimum amount of data for the data flow if the amount of data communicated over the data flow during the current time frame exceeds the first credit.

18. The method of claim 17 , further comprising resetting the second credit to the maximum amount of data for the data flow if the amount of data communicated over the data flow during the current time frame exceeds the first credit.

19. The method of claim 18 , wherein the resetting the second credit comprises resetting the second credit to the maximum amount of data for the data flow when the amount of data communicated over the data flow during the current time frame exceeds the first credit but is less than the second credit.

20. A non-transitory computer-readable medium carrying a computer program which, when executed by a computer, carries out a method comprising:

maintaining a record of the amount of bandwidth available for the wireless communication during the current time frame;

maintaining, for each of the plurality of possible flow types, a queue list that identifies the queues corresponding to data flows of that flow type; and

processing the queue lists in a predetermined order based on quality of service parameters associated with the corresponding data flow, in which processing a queue list comprises:

in response to determining the flow type associated with the queue is of a first type, attempting to schedule the communication of data stored at the queue for a current time frame based on one or more quality of service parameters and based on an amount of bandwidth available for wireless communication during the current time frame; and

in response to determining the flow type associated with the queue is of a second type, attempting to schedule the communication of data stored at the queue for the current time frame based on whether a deadline to communicate the data has been missed and based on an amount of credits assigned to the data flow, the credits based upon a minimum amount of data for the data flow, wherein the scheduling comprises:

scheduling for the data flow the communication of a largest amount of data that can be communicated over the bandwidth available for the wireless communication during the current time frame if the amount of bandwidth available for the wireless communication during the current time frame does not exceed the amount of credits assigned to the data flow; and

resetting the credits assigned to the data flow to the minimum amount of data for the data flow if the amount of data communicated over the data flow during the current time frame exceeds the amount of credits assigned to the data flow.

Assignments (31)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Feb 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 052917/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Jan 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 052915/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 037486 FRAME 0517. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Dec 10, 2019
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 053547/0421 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042985 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042762 FRAME 0145. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051145/0184 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051030/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0387 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050745/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050744/0097 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT THE APPLICATION NO. FROM 13,883,290 TO 13,833,290 PREVIOUSLY RECORDED ON REEL 041703 FRAME 0536. ASSIGNOR(S) HEREBY CONFIRMS THE THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS.. Recorded Feb 20, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SHENZHEN XINGUODU TECHNOLOGY CO., LTD.
Reel/Frame 048734/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NATURE OF CONVEYANCE PREVIOUSLY RECORDED AT REEL: 040632 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME. Recorded Sep 21, 2017
From: FREESCALE SEMICONDUCTOR INC.
To: NXP USA, INC.
Reel/Frame 044209/0047 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042762/0145 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042985/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENTS 8108266 AND 8062324 AND REPLACE THEM WITH 6108266 AND 8060324 PREVIOUSLY RECORDED ON REEL 037518 FRAME 0292. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Feb 1, 2017
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 041703/0536 →
CHANGE OF NAME Recorded Nov 8, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: NXP USA, INC.
Reel/Frame 040632/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 7, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 040928/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 21, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 040925/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12092129 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Jul 14, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039361/0212 →
SUPPLEMENT TO THE SECURITY AGREEMENT Recorded Jun 16, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039138/0001 →
SECURITY AGREEMENT SUPPLEMENT Recorded Mar 7, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 038017/0058 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 13, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037518/0292 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 12, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037486/0517 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0143 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0553 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037354/0793 →
SECURITY AGREEMENT Recorded Nov 6, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 031591/0266 →
SECURITY AGREEMENT Recorded Jun 18, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 030633/0424 →
SECURITY AGREEMENT Recorded May 13, 2010
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 024397/0001 →
SECURITY AGREEMENT Recorded Mar 15, 2010
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A.
Reel/Frame 024085/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 26, 2010
From: LIN, BO; ROUWET, WIM J
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 023846/0810 →
SECURITY AGREEMENT Recorded May 19, 2009
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A.
Reel/Frame 022703/0405 →
Continuity (1)
Related Publication 20100046444A1 · Feb 25, 2010