US 12,407,303 B2
Method and system for pre-compensating non-linear distortion in data samples
Jianhong Ke, Stittsville (CA); Xuefeng Tang, Kanata (CA); and Chuandong Li, Ottawa (CA)
Assigned to HUAWEI TECHNOLOGIES CO., LTD., Shenzhen (CN)
Filed by HUAWEI TECHNOLOGIES CO., LTD., Guangdong (CN)
Filed on Jul. 17, 2023, as Appl. No. 18/353,433.
Prior Publication US 2025/0030385 A1, Jan. 23, 2025
Int. Cl. H03F 1/32 (2006.01); H04B 1/04 (2006.01)
CPC H03F 1/3247 (2013.01) [H04B 1/0475 (2013.01); H04B 2001/0425 (2013.01)] 12 Claims
OG exemplary drawing
 
1. A system for pre-compensating non-linear distortion in data samples, the system comprising:
a non-transitory memory element having instructions thereon;
at least one processor coupled to the non-transitory memory element and which execute the instructions to cause the at least one processor to:
generate a first set of data symbols to be transmitted;
convert the first set of data symbols into a first set of frequency-domain samples;
pre-process the first set of frequency-domain samples;
provide linear distortion compensation, prior to compensating for non-linear distortions, to the pre-processed first set of frequency-domain samples;
convert the linear distortion compensated first set of frequency-domain samples into linear distortion compensated first set of time domain samples; and
provide non-linear distortion compensation to the linear distortion compensated first set of time domain samples, wherein the non-linear distortion compensation is provided based on a Pattern Dependent Lookup Table (PDLUT), wherein to generate the PDLUT, the at least one processor is configured to:
receiving consecutive sequences of samples included in the linear distortion compensated first set of time domain samples;
quantizing the consecutive sequences of samples into integer-valued consecutive sequences of samples;
computing error correction values corresponding to the integer-valued consecutive sequences of samples; and
storing the integer-valued consecutive sequences of samples and the corresponding error correction values in the PDLUT.