IP Library Granted Patent US 10,257,329
Granted Patent B2
US 10,257,329 · App. 15/700,050 · Granted Apr 9, 2019

Wireless communications apparatus and method for performing low latency high throughput layer 2 operations

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 10,257,329
App. No.
15/700,050
Granted
Apr 9, 2019
Kind
B2
Abstract

A wireless communications apparatus includes first/second data source/sinks that respectively source/sink PDCP SDU and MAC PDU for transfer to/from a memory unit and hardware accelerators controlled by a control processor (CP). In response to sourcing transmit PDCP SDU for transfer to the memory unit, the CP controls the hardware accelerators to generate and write PDCP, RLC, MAC headers to the memory unit and assemble the generated headers and the transmit PDCP SDU from the memory unit into transmit MAC PDU for provision to the second data sink. In response to sourcing receive MAC PDU for transfer to the memory unit, the CP controls the hardware accelerators to decode PDCP, RLC MAC headers of the receive MAC PDU in the memory unit to determine locations of receive PDCP SDU in the memory unit and fetch the receive PDCP SDU from the determined locations for provision to the first data sink.

Claims (81)

1. An apparatus for use in performing wireless communications, comprising:

at least one memory unit;

a first data source/sink that sources/sinks packet data convergence protocol (PDCP) service data units (SDU) for transfer to/from the memory unit;

a second data source/sink that sources/sinks media access control (MAC) protocol data units (PDU) for transfer to/from the memory unit;

a plurality of hardware accelerators coupled to the memory unit;

a control processor that controls the plurality of hardware accelerators;

wherein in response to the first data source sourcing one or more transmit PDCP SDU for transfer to the memory unit, the control processor controls the plurality of hardware accelerators to:

generate and write PDCP, radio link control (RLC), and MAC headers to the memory unit; and

assemble the generated PDCP, RLC and MAC headers and the one or more transmit PDCP SDU from the memory unit into one or more transmit MAC PDU for provision to the second data sink; and

wherein in response to the second data source sourcing one or more receive MAC PDU for transfer to the memory unit, the control processor controls the plurality of hardware accelerators to:

decode PDCP, RLC and MAC headers of the one or more receive MAC PDU in the memory unit to determine locations of one or more receive PDCP SDU in the memory unit; and

fetch the one or more receive PDCP SDU from the determined locations in the memory unit for provision to the first data sink.

2. The apparatus of claim 1 ,

wherein the control processor is uncoupled from the at least one memory unit that holds the PDCP SDU.

3. The apparatus of claim 1 ,

wherein the control processor controls the plurality of hardware accelerators without reading/writing PDCP SDU from/to the memory unit.

4. The apparatus of claim 1 ,

wherein the control processor provides to the plurality of hardware accelerators pointers to locations of the memory unit from which the plurality of hardware accelerators assemble the one or more transmit MAC PDU and fetch the one or more receive PDCP SDU.

5. The apparatus of claim 1 ,

wherein the control processor receives from the plurality of hardware accelerators pointers to locations of the memory unit of the one or more receive PDCP SDU in response to the decode of the headers of the one or more receive MAC PDU.

6. The apparatus of claim 1 ,

wherein the control processor provides to the plurality of hardware accelerators information used by the plurality of hardware accelerators to generate the headers.

7. The apparatus of claim 1 ,

wherein the control processor and the plurality of hardware accelerators communicate regarding locations of the memory unit to which the plurality of hardware accelerators write the generated headers.

8. The apparatus of claim 1 , further comprising:

a second memory, coupled to the control processor and uncoupled from the plurality of hardware accelerators that holds code executed by the control processor to perform PDCP, RLC and MAC sub-layer procedures.

9. The apparatus of claim 1 ,

wherein the PDCP SDU comprise internet protocol (IP) packets; and

wherein the MAC PDU comprise PHY transport blocks (TB).

10. The apparatus of claim 1 ,

wherein the plurality of hardware accelerators comprise a common programming interface programmable by the control processor.

11. The apparatus of claim 1 ,

wherein the control processor comprises a plurality of interfaces respectively coupled to the plurality of hardware accelerators to control the plurality of hardware accelerators.

12. The apparatus of claim 1 ,

wherein the one or more memory units comprises:

a first memory unit that receives the PDCP SDU sourced from the first data source; and

a second memory unit that receives the MAC PDU sourced from the second data source.

13. The apparatus of claim 1 ,

wherein the control processor controls the plurality of hardware accelerators by performing pointer manipulations to perform one or more of the following without itself reading/writing the PDCP SDU from/to the memory unit:

packet retransmission window management;

packet segmentation;

packet concatenation; and

packet discard.

14. The apparatus of claim 1 ,

wherein the wireless communications are according to at least one of the following list of wireless communication standards defined by the 3rd Generation Partnership Project (3GPP) and Institute of Electrical and Electronics Engineers (IEEE):

3GPP Long Term Evolution (LTE);

3GPP LTE-Advanced;

3GPP LTE-Advanced Pro;

3GPP New Radio (NR); and

IEEE 802.11.

15. The apparatus of claim 1 ,

wherein the control processor comprises a plurality of control processors coupled to respective ones of the plurality of hardware accelerators for control thereof.

16. A method for use in performing wireless communications by an apparatus having at least one memory unit, a plurality of hardware accelerators coupled to the memory unit, and a control processor, the method comprising:

sourcing/sinking packet data convergence protocol (PDCP) service data units (SDU) for transfer to/from the memory unit;

sourcing/sinking media access control (MAC) protocol data units (PDU) for transfer to/from the memory unit;

controlling, by the control processor in response to the first data source sourcing one or more transmit PDCP SDU for transfer to the memory unit, the plurality of hardware accelerators to:

generate and write PDCP, radio link control (RLC), and MAC headers to the memory unit; and

assemble the generated PDCP, RLC and MAC headers and the one or more transmit PDCP SDU from the memory unit into one or more transmit MAC PDU for provision to the second data sink; and

controlling, by the control processor in response to the second data source sourcing one or more receive MAC PDU for transfer to the memory unit, the plurality of hardware accelerators to:

decode PDCP, RLC and MAC headers of the one or more receive MAC PDU in the memory unit to determine locations of one or more receive PDCP SDU in the memory unit; and

fetch the one or more receive PDCP SDU from the determined locations in the memory unit for provision to the first data sink.

17. The method of claim 16 ,

providing, by the control processor, to the plurality of hardware accelerators pointers to locations of the memory unit from which the plurality of hardware accelerators assemble the one or more transmit MAC PDU and fetch the one or more receive PDCP SDU.

18. The method of claim 16 ,

receiving, by the control processor, from the plurality of hardware accelerators pointers to locations of the memory unit of the one or more receive PDCP SDU in response to the decode of the headers of the one or more receive MAC PDU.

19. The method of claim 16 ,

providing, by the control processor, to the plurality of hardware accelerators information used by the plurality of hardware accelerators to generate the headers.

20. The method of claim 16 ,

communicating, by the control processor and the plurality of hardware accelerators, regarding locations of the memory unit to which the plurality of hardware accelerators write the generated headers.

21. The method of claim 16 ,

wherein the PDCP SDU comprise internet protocol (IP) packets; and

wherein the MAC PDU comprise PHY transport blocks (TB).

22. A non-transitory computer-readable medium having instructions stored thereon that are capable of causing or configuring a wireless communication computing system having at least one memory unit, a plurality of hardware accelerators coupled to the memory unit, and a control processor to perform operations comprising:

sourcing/sinking packet data convergence protocol (PDCP) service data units (SDU) for transfer to/from the memory unit;

sourcing/sinking media access control (MAC) protocol data units (PDU) for transfer to/from the memory unit;

controlling, by the control processor in response to the first data source sourcing one or more transmit PDCP SDU for transfer to the memory unit, the plurality of hardware accelerators to:

generate and write PDCP, radio link control (RLC), and MAC headers to the memory unit; and

assemble the generated PDCP, RLC and MAC headers and the one or more transmit PDCP SDU from the memory unit into one or more transmit MAC PDU for provision to the second data sink; and

controlling, by the control processor in response to the second data source sourcing one or more receive MAC PDU for transfer to the memory unit, the plurality of hardware accelerators to:

decode PDCP, RLC and MAC headers of the one or more receive MAC PDU in the memory unit to determine locations of one or more receive PDCP SDU in the memory unit; and

fetch the one or more receive PDCP SDU from the determined locations in the memory unit for provision to the first data sink.

Assignments (5)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 057280/0028) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 065231/0466 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 052935/0001) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
Reel/Frame 065653/0463 →
SECURITY INTEREST Recorded Jun 18, 2021
From: NATIONAL INSTRUMENTS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 057280/0028 →
SECURITY INTEREST Recorded Jun 14, 2020
From: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052935/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 8, 2017
From: AZIZ, AHSAN; EKBAL, AMAL; KOTZSCH, VINCENT
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 043539/0096 →
Cited By (1)
US 12,483,640