Patent classifications
H03M13/276
Efficient triangular interleaver/deinterleaver for polar codes
A method for use in a wireless transmitter of interleaving coded bits includes: determining an integer number (M) of polar coded bits {e(0), . . . , e(M−1)} for wireless transmission; determining a smallest integer number (T) such that T(T+1)/2>=M; and determining a one-dimensional interleaving index array, interleavingId( ), that represents the column by column non-zero elements of a two-dimensional matrix. The two-dimensional matrix includes a hypothetical T by T matrix containing the polar coded bits {e(0), . . . , e(M−1)} input row by row without using the lower right corner elements of the T×T matrix. The method further includes: interleaving the polar coded bits {e(0), . . . , e(M−1)} using the one-dimensional interleaving index array resulting in the output sequence {f(0), . . . , f(M−1)} wherein f(i)=e(interleavingId(i)); and transmitting the interleaved polar coded bits to a wireless receiver.
Configurable cache for multi-endpoint heterogeneous coherent system
A device includes a memory bank. The memory bank includes data portions of a first way group. The data portions of the first way group include a data portion of a first way of the first way group and a data portion of a second way of the first way group. The memory bank further includes data portions of a second way group. The device further includes a configuration register and a controller configured to individually allocate, based on one or more settings in the configuration register, the first way and the second way to one of an addressable memory space and a data cache.
Deinterleaver
A method, apparatus, and system for deinterleaving data.
MULTI-PROCESSOR BRIDGE WITH CACHE ALLOCATE AWARENESS
Techniques for loading data, comprising receiving a memory management command to perform a memory management operation to load data into the cache memory before execution of an instruction that requests the data, formatting the memory management command into one or more instruction for a cache controller associated with the cache memory, and outputting an instruction to the cache controller to load the data into the cache memory based on the memory management command.
BUTTERFLY NETWORK ON LOAD DATA RETURN
A method is shown that is operable to transform and align a plurality of fields from an input to an output data stream using a multilayer butterfly or inverse butterfly network. Many transformations are possible with such a network which may include separate control of each multiplexer. This invention supports a limited set of multiplexer control signals, which enables a similarly limited set of data transformations. This limited capability is offset by the reduced complexity of the multiplexor control circuits.
VIRTUAL NETWORK PRE-ARBITRATION FOR DEADLOCK AVOIDANCE AND ENHANCED PERFORMANCE
A device includes a data path, a first interface configured to receive a first memory access request from a first peripheral device, and a second interface configured to receive a second memory access request from a second peripheral device. The device further includes an arbiter circuit configured to, in a first clock cycle, a pre-arbitration winner between a first memory access request and a second memory access request based on a first number of credits allocated to a first destination device and a second number of credits allocated to a second destination device. The arbiter circuit is further configured to, in a second clock cycle select a final arbitration winner from among the pre-arbitration winner and a subsequent memory access request based on a comparison of a priority of the pre-arbitration winner and a priority of the subsequent memory access request.
Tile based interleaving and de-interleaving for digital signal processing
Tile based interleaving and de-interleaving of row-column interleaved data is described. In one example, the de-interleaving is divided into two memory transfer stages, the first from an on-chip memory to a DRAM and the second from the DRAM to an on-chip memory. Each stage operates on part of a row-column interleaved block of data and re-orders the data items, such that the output of the second stage comprises de-interleaved data. In the first stage, data items are read from the on-chip memory according to a non-linear sequence of memory read addresses and written to the DRAM. In the second stage, data items are read from the DRAM according to bursts of linear address sequences which make efficient use of the DRAM interface and written back to on-chip memory according to a non-linear sequence of memory write addresses.
Multicore shared cache operation engine
Techniques including receiving configuration information for a trigger control channel of the one or more trigger control channels, the configuration information defining a first one or more triggering events, receiving a first memory management command, store the first memory management command, detecting a first one or more triggering events, and triggering the stored first memory management command based on the detected first one or more triggering events.
Butterfly network on load data return
A system, method, and device is shown that is operable to transform and align a plurality of fields from an input to an output data stream using a multilayer butterfly or inverse butterfly network that includes a plurality of layers of multiplexers. Many transformations are possible with such a network which may include separate control of each multiplexer.
Delayed snoop for improved multi-process false sharing parallel thread performance
Techniques for maintaining cache coherency comprising storing data blocks associated with a main process in a cache line of a main cache memory, storing a first local copy of the data blocks in a first local cache memory of a first processor, storing a second local copy of the set of data blocks in a second local cache memory of a second processor executing a first child process of the main process to generate first output data, writing the first output data to the first data block of the first local copy as a write through, writing the first output data to the first data block of the main cache memory as a part of the write through, transmitting an invalidate request to the second local cache memory, marking the second local copy of the set of data blocks as delayed, and transmitting an acknowledgment to the invalidate request.