Wireless Packet Body Provision Using Local Header Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing wireless networking technologies face inefficiencies in the storage and transmission of packet data, particularly in WiFi networks, due to the need for large buffer spaces and inefficient memory management, which can lead to increased latency and overhead in data transmission.
Innovation Solution
A wireless networking device with a Media Access Controller (MAC) component and system memory, utilizing private RAM for header storage and DMA circuitry for efficient payload retrieval and transmission, allowing for discontinuous memory transactions and reduced temporary buffer space requirements, along with programmable and limited configurability components for managing payload and header storage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If large buffer spaces are allocated in system memory for storing payload data, then data transmission capacity is improved, but memory resource consumption and device complexity increase
Solution Approach 1:
The patent segments the buffer space into multiple smaller buffers, each associated with a specific header in the private RAM. Instead of allocating one large contiguous buffer, the system divides memory into discrete units that can be independently managed and allocated to different PDUs, reducing overall memory consumption while maintaining transmission capacity.
Solution Approach 2:
The patent introduces a two-dimensional memory management structure: private RAM for headers (first dimension) and system memory for payloads (second dimension), connected through pointers. This dimensional separation allows efficient memory utilization by allocating only the necessary payload space for each active PDU rather than reserving large contiguous blocks.
2Reliability
If payload data is retrieved and staged in temporary buffer space before transmission, then data integrity is improved, but latency increases
Solution Approach 1:
The patent performs preliminary actions by pre-allocating buffer associations with headers before transmission is needed. The DMA circuitry is pre-configured with buffer pointers, and the system establishes the header-buffer mapping in advance, so that when transmission begins, data can be staged immediately without allocation delays.
Solution Approach 2:
The patent ensures continuous useful action by maintaining persistent buffer associations and using DMA for continuous data staging. Once a buffer is allocated and associated with a header, the DMA circuitry continuously stages payload data into the buffer as it becomes available, eliminating idle periods and maintaining uninterrupted data flow toward transmission.
3Measurement precision
If multiple memory transactions are performed for payload retrieval, then data accuracy is improved, but overhead and processing time increase
Solution Approach 1:
The patent implements self-service through the DMA circuitry, which autonomously performs payload retrieval from system memory using pointers from the private RAM without requiring intervention from the main processor. The DMA controller independently manages multiple memory transactions, data staging, and buffer management, significantly reducing CPU overhead while maintaining accurate data retrieval through programmed transaction sequences.
Data Source
AI summary
Wireless transmission is performed by storing, in a local memory, a header in association with reference(s) to memory locations in a separate, shared memory storing a payload for a given transmission. Each header can be associated with a QoS queue. When a selected payload is to be transmitted, a PHY preamble can begin, followed by a header from local memory, while a DMA transaction initiates to retrieve payload from the shared memory. Each retrieved portion of payload can include a link to a next location storing a next part of payload. A subsequent DMA is initiated for that part of the payload. A relatively fixed function circuit can initiate DMA and receive payload data; a programmable element can perform payload selection, for example. Multiple payloads can be aggregated (just before transmitting of a preamble) using header information stored in the fast local memory. Memory can be released after ACK of a corresponding payload.


