IP Library Granted Patent US 10,567,010
Granted Patent B2
US 10,567,010 · App. 16/213,452 · Granted Feb 18, 2020

Flexible polar encoders and decoders

Inventors: Warren Gross (Cote-St-Luc, CA); Gabi Sarkis (San Diego, CA); Pascal Giard (Ecublens, CH)
Assignee: THE ROYAL INSTITUTION FOR THE ADVANCEMENT OF LEARNING/MCGILL UNIVERSITY
H03M13/617H03M13/09H03M13/13H03M13/451H03M13/611H03M13/6561
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,567,010
App. No.
16/213,452
Granted
Feb 18, 2020
Kind
B2
Abstract

Methods and systems for encoding data are described herein. The method comprises inputting data to a first pipeline of a non-systematic polar encoder capable of encoding a polar code of length n max , extracting, via at least one first multiplexer of size log n max ×1, a first polar code of length n<n max at a first location along the first pipeline to generate a first encoded output, modifying the first encoded output to set frozen bits to a known value to obtain a modified first encoded output, inputting the modified first encoded output to a second pipeline of the non-systematic polar encoder, and extracting, via at least one second multiplexer of size log n max ×1, a second polar code of length n<n max at a second location along the second pipeline to generate a second encoded output, the second encoded output corresponding to a systematically encoded polar code of length n.

Claims (31)

1. A method of encoding data comprising:

inputting data to a first pipeline of a non-systematic polar encoder capable of encoding a polar code of length n max ;

extracting, via at least one first multiplexer of size log n max ×1, a first polar code of length n<n max at a first location along the first pipeline to generate a first encoded output;

modifying the first encoded output to set frozen bits to a known value to obtain a modified first encoded output;

inputting the modified first encoded output to a second pipeline of the non-systematic polar encoder; and

extracting, via at least one second multiplexer of size log n max ×1, a second polar code of length n<n max at a second location along the second pipeline to generate a second encoded output, the second encoded output corresponding to a systematically encoded polar code of length n.

2. The method of claim 1 , wherein modifying the first output comprises applying masks to the first output, the masks having frozen bit locations set to the known value.

3. The method of claim 2 , wherein applying masks comprises using P AND gates to apply the masks, wherein P corresponds to a level of parallelism for encoding the data.

4. The method of claim 2 , wherein applying masks comprises selecting the frozen bit locations to bits with an index greater than n.

5. The method of claim 1 , wherein the encoded polar code of length n is any length n that is less than n max .

6. A system for encoding data comprising:

at least one processing unit; and

a non-transitory memory communicatively coupled to the at least one processing unit and comprising computer-readable program instructions executable by the at least one processing unit for:

inputting data to a first pipeline of a non-systematic polar encoder capable of encoding a polar code of length n max ;

extracting, via at least one first multiplexer of size log n max ×1, a first polar code of length n<n max at a first location along the first pipeline to generate a first encoded output;

modifying the first encoded output to set frozen bits to a known value to obtain a modified first encoded output;

inputting the modified first encoded output to a second pipeline of the non-systematic polar encoder; and

extracting, via at least one second multiplexer of size log n max ×1, a second polar code of length n<n max at a second location along the second pipeline to generate a second encoded output, the second encoded output corresponding to a systematically encoded polar code of length n.

7. The system of claim 6 , wherein modifying the first output comprises applying masks to the first output, the masks having frozen bit locations set to the known value.

8. The system of claim 7 , wherein applying masks comprises using P AND gates to apply the masks, wherein P corresponds to a level of parallelism for encoding the data.

9. The system of claim 7 , wherein applying masks comprises selecting the frozen bit locations to bits with an index greater than n.

10. The system of claim 6 , wherein the encoded polar code of length n is any length n that is less than n max .

11. A non-systematic polar encoder for encoding a polar code of length n max , comprising:

a first pipeline defining a first input and a first output, and configured for receiving input data and generating a first encoded output;

at least one mask applicable to the first encoded output to set frozen bits to a known value to obtain a modified first encoded output;

a second pipeline defining a second input and a second output, and configured for receiving the modified first encoded output and generating a second encoded output, the encoded second output corresponding to a systematically encoded polar code of length n<n max ; and

an extraction circuit comprising at least one first multiplexer of size log n max ×1 for extracting the polar code of length n at a location along the first pipeline and the second pipeline upstream from the first output and the second output, respectively.

12. The encoder of claim 11 , wherein the at least one mask comprises at least one AND gate.

13. The encoder of claim 11 , wherein systematic encoder is a semi-parallel encoder defined by a level of parallelism P.

14. The encoder of claim 11 , wherein the at least one mask is configured to set the frozen bits at frozen bits locations where bits have an index greater than n.

15. The systematic encoder of claim 11 , wherein the encoded polar code of length n is any length n that is less than n max .

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 6, 2023
From: THE ROYAL INSTITUTION FOR THE ADVANCEMENT OF LEARNING/MCGILL UNIVERSITY
To: 14511581 CANADA INC.
Reel/Frame 063865/0872 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 6, 2023
From: 14511581 CANADA INC.
To: 14511581 CANADA LLC
Reel/Frame 063866/0121 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 6, 2023
From: 14511581 CANADA LLC
To: POLAR TECHNOLOGIES LLC
Reel/Frame 063866/0334 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2019
From: GROSS, WARREN; SARKIS, GABI; GIARD, PASCAL
To: THE ROYAL INSTITUTION FOR THE ADVANCEMENT OF LEARNING/MCGILL UNIVERSITY
Reel/Frame 049301/0140 →
Continuity (3)
Continuation 14796088 · Jul 10, 2015
Provisional Application 62022883 · Jul 10, 2014
Related Publication 20190190545A1 · Jun 20, 2019
Cited By (1)
US 12,628,182