Abstract:
A system involves a transmitting device (for example, a first wireless communication device) and a receiving device (for example, a second wireless communication device). In the receiving device, LLR (Log-Likelihood Ratio) values are stored into an LLR buffer. LLR bit width is adjusted as a function of packet size of an incoming transmission to reduce the LLR buffer size required and/or to prevent LLR buffer capacity from being exceeded. The receiver may use a higher performance demodulator in order to maintain performance despite smaller LLR bit width. In the transmitting device, encoder code rate is adjusted as a function of receiver LLR buffer capacity and packet size of the outgoing transmission such that receiver LLR buffer capacity is not exceeded. Any combination of receiver LLR bit width adjustment, demodulator selection, and encoder code rate adjustment can be practiced to reduce LLR buffer size required while maintaining performance.
Abstract:
Techniques for encoding and decoding data are described. In an aspect, multiple code rates for a forward error correction (FEC) code may be supported, and a suitable code rate may be selected based on packet size. A transmitter may obtain at least one threshold to use for code rate selection, determine a packet size to use for data transmission, and select a code rate from among the multiple code rates based on the packet size and the at least one threshold. In another aspect, multiple FEC codes of different types (e.g., Turbo, LDPC, and convolutional codes) may be supported, and a suitable FEC code may be selected based on packet size. The transmitter may obtain at least one threshold to use for FEC code selection and may select an FEC code from among the multiple FEC codes based on the packet size and the at least one threshold.
Abstract:
A flexible and reconf?gurable digital system (for example, a wireless modem) includes a set of sub-circuits. Each sub-circuit includes a task manager and an amount of configurable hardware circuitry for performing a type of operation on a data stream. The task manager of a sub-circuit can configure and control the configurable hardware of the sub-circuit. A central processor configures and orchestrates operation of the sub- circuits by maintaining a set of task lists in a tightly coupled memory. Each task list includes task instructions for a corresponding sub-circuit. The task manager of a sub- circuit reads task instructions from its task list and controls its associated hardware circuitry as directed by the instructions. A timestamp task instruction and a push task instruction and the task list architecture allow modem sub-circuits to be easily reconfigured to operate in accordance with either a first air interface standard or a second air interface standard.
Abstract:
An improved processing engine for performing Fourier transforms includes an instruction processor configured to process sequential instruction software commands and a Fourier transform engine coupled to the instruction processor. The Fourier transform engine is configured to perform Fourier transforms on a serial stream of data. The Fourier transform engine is configured to receive configuration information and operational data from the instruction processor via a set of software tasks.
Abstract:
In embodiments, a wireless receiver employs a hardware-based Fast Fourier Transform (FFT) engine controlled by firmware. The FFT engine executes tasks stored in a task list. Each task is associated with a different portion of a signal, for example, one or more Orthogonal Frequency Division Modulated (OFDM) symbols. Each task may include configuration information for the FFT engine for configuring the engine to process the associated portion of the signal, a pointer to the portion to be processed, and another pointer to the memory for storing the output. The task list may be firmware controlled. Division of the FFT into a configurable hardware part driven by firmware to read and execute the tasks in the task list may speed up the FFT process and make it more flexible. A hardware beacon sorter may be coupled to the FFT engine to sort the sub-carriers according to their energies.
Abstract:
Techniques for inner/outer loop tracking that is stable and provides desirable loop convergence characteristics are disclosed. In one aspect, the contribution from any one inner loop to the tracking function of the outer loop (260) is limited, to prohibit any one received signal component from dominating the outer loop. In another aspect, the rate of outer loop tracking variation is controlled to provide inner and outer loop stability. Various other aspects are also presented. These aspects have the benefit of providing stable inner and outer loop control, as well as efficient convergence and tracking by the various loops, resulting in reduced frequency error and improved communication performance.
Abstract:
Techniques for generating a reference signal based on time-multiplexed pilot data. A modulated signal is received (FIG. 7) and processed to provide received samples, which are then further processed to provide pilot symbols. A reference signal is generated based on the available pilot symbols (722a, 722b). The reference signal comprises a sequence of "predicted" pilot symbols representative of future estimates of one or more characteristics (e.g., the phase and amplitude) of one or more carrier signals used to generate the modulated signal (FIG's 5A-5E). The reference signal can be generated using a number of techniques. For example, the reference signal can be generated by (e.g., linearly) extrapolating pilot symbols from prior time intervals (FIG. 5B), curve fitting the pilot symbols (FIG. 5C), or (normal or ensemble) averaging (unweighted or weighted) pilot symbols (FIG's 5D, 5E). For the W-CDMA standard, the processing to generate the pilot symbols typically includes decovering the received samples with a channelization code to provide channelized symbols (720a, 720b), and multiplying the channelized symbols with a particular pilot symbol pattern. The pilot symbols from each slot may also be filtered to generate one or more filtered pilot symbols.