Interleaver for iterative decoder
First Claim
1. An interleaver memory structure that is implemented to process a plurality of encoded symbols during decoding processing, the interleaver memory structure comprising:
- a first multiplexor (MUX) that is operable to receive inputs that include sequential read addresses and sequential write addresses as inputs and whose select signal is a clock signal having even and odd cycles;
a second MUX that is operable to receive the sequential read addresses and the sequential write addresses as inputs and whose select signal is an inversion of the clock signal having even and odd cycles, wherein corresponding sequential read addresses and sequential write addresses that are provided to the first MUX and to the second MUX are offset by an odd value;
a first interleaver pattern memory that is operable alternatively to receive the sequential read addresses and the sequential write addresses from the first MUX;
a second interleaver pattern memory that is operable alternatively to receive the sequential write addresses and the sequential read addresses from the second MUX;
a first interleaver memory that is operable to;
receive first input data that is written therein according to a sequential write address provided by the first interleaver pattern memory; and
provide first output data that is read there from according to a sequential read address provided by the first interleaver pattern memory;
a second interleaver memory that is operable to;
receive second input data that is written therein according to a sequential write address provided by the second interleaver pattern memory; and
provide second output data that is read there from according to a sequential read address provided by the second interleaver pattern memory; and
a third MUX that is operable to receive inputs that include the first output data and the second output data and whose select signal is the clock signal having even and odd cycles.
6 Assignments
0 Petitions
Accused Products
Abstract
Interleaver for iterative decoder. A memory management scheme allows for single plane/single port memory devices to be used by the interleaver. The design is adaptable to soft-in soft-out (SISO) decoders that perform iterative decoding. The interleaver may be implemented within communication devices that implement two distinct SISOs that operate cooperatively or within communication devices that employ a single SISO (in a recycled embodiment) that functionally performs the analogous decoding operations that would be performed by the two distinct SISO implementation. The use of single plane/single port memory devices by the interleaver allows for a great deal of savings from many perspectives: the sizes of the required interleaver memory and the interleaver pattern memory are both cut in half using this approach, and a cost savings may also be realized, in that, cheaper, slower memories may be used since each respective interleaver memory is read only every other cycle.
24 Citations
20 Claims
-
1. An interleaver memory structure that is implemented to process a plurality of encoded symbols during decoding processing, the interleaver memory structure comprising:
-
a first multiplexor (MUX) that is operable to receive inputs that include sequential read addresses and sequential write addresses as inputs and whose select signal is a clock signal having even and odd cycles; a second MUX that is operable to receive the sequential read addresses and the sequential write addresses as inputs and whose select signal is an inversion of the clock signal having even and odd cycles, wherein corresponding sequential read addresses and sequential write addresses that are provided to the first MUX and to the second MUX are offset by an odd value; a first interleaver pattern memory that is operable alternatively to receive the sequential read addresses and the sequential write addresses from the first MUX; a second interleaver pattern memory that is operable alternatively to receive the sequential write addresses and the sequential read addresses from the second MUX; a first interleaver memory that is operable to; receive first input data that is written therein according to a sequential write address provided by the first interleaver pattern memory; and provide first output data that is read there from according to a sequential read address provided by the first interleaver pattern memory; a second interleaver memory that is operable to; receive second input data that is written therein according to a sequential write address provided by the second interleaver pattern memory; and provide second output data that is read there from according to a sequential read address provided by the second interleaver pattern memory; and a third MUX that is operable to receive inputs that include the first output data and the second output data and whose select signal is the clock signal having even and odd cycles. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. An interleaving method, the method comprising:
-
multiplexing sequential read addresses and sequential write addresses, that are offset by an odd value, based on a clock signal having even and odd cycles; multiplexing the sequential read addresses and the sequential write addresses based on an inversion of the clock signal having even and odd cycles; receiving first input data according to a first sequential write address; providing first output data, that corresponds to the first input data, according to a first sequential read address; receiving second input data according to a second sequential write address; providing second output data, that corresponds to the second input data, according to a second sequential read address; and multiplexing the first output data and the second output data based on the clock signal having even and odd cycles. - View Dependent Claims (15, 16, 17)
-
-
18. An interleaver memory structure that is implemented to process a plurality of encoded symbols during decoding processing, the interleaver memory structure comprising:
-
a first interleaver pattern memory that is operable alternatively to receive sequential read addresses and sequential write addresses; a second interleaver pattern memory that is operable alternatively to receive the sequential write addresses and the sequential read addresses; a first interleaver memory that is operable to; receive first input data that is written therein according to a sequential write address provided by the first interleaver pattern memory; and provide first output data that is read there from according to a sequential read address provided by the first interleaver pattern memory; a second interleaver memory that is operable to; receive second input data that is written therein according to a sequential write address provided by the second interleaver pattern memory; and provide second output data that is read there from according to a sequential read address provided by the second interleaver pattern memory; and a multiplexor (MUX) that is operable to receive inputs that include the first output data and the second output data and whose select signal is a clock signal having even and odd cycles; and wherein the first interleaver pattern memory, the second interleaver pattern memory, the first interleaver memory, and the second interleaver memory are implemented using single port memory structures. - View Dependent Claims (19, 20)
-
Specification