US9270388B2 - Method and apparatus for impulse noise mitigation for power line networking - Google Patents

Method and apparatus for impulse noise mitigation for power line networking Download PDF

Info

Publication number
US9270388B2
US9270388B2 US14/665,782 US201514665782A US9270388B2 US 9270388 B2 US9270388 B2 US 9270388B2 US 201514665782 A US201514665782 A US 201514665782A US 9270388 B2 US9270388 B2 US 9270388B2
Authority
US
United States
Prior art keywords
impulse noise
samples
correlation
threshold
moving average
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
US14/665,782
Other versions
US20150270910A1 (en
Inventor
Zvi Bernstein
Kennan Laudel
Madhavi Anugu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Flextronics America LLC
Flextronics Industrial Ltd
Original Assignee
Enphase Energy Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Enphase Energy Inc filed Critical Enphase Energy Inc
Priority to US14/665,782 priority Critical patent/US9270388B2/en
Assigned to ENPHASE ENERGY, INC. reassignment ENPHASE ENERGY, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BERNSTEIN, ZVI, ANUGU, Madhavi, LAUDEL, KENNAN
Publication of US20150270910A1 publication Critical patent/US20150270910A1/en
Application granted granted Critical
Publication of US9270388B2 publication Critical patent/US9270388B2/en
Assigned to WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT reassignment WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ENPHASE ENERGY, INC.
Assigned to FLEXTRONICS INDUSTRIAL, LTD reassignment FLEXTRONICS INDUSTRIAL, LTD SECURITY AGREEMENT Assignors: ENPHASE ENERGY, INC.
Assigned to FLEXTRONICS AMERICA, LLC reassignment FLEXTRONICS AMERICA, LLC SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ENPHASE ENERGY, INC.
Assigned to OBSIDIAN AGENCY SERVICES, INC. reassignment OBSIDIAN AGENCY SERVICES, INC. SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ENPHASE ENERGY, INC.
Assigned to FLEXTRONICS AMERICA, LLC, FLEXTRONICS INDUSTRIAL, LTD reassignment FLEXTRONICS AMERICA, LLC CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY NAME PREVIOUSLY RECORDED AT REEL: 041936 FRAME: 0109. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Assignors: ENPHASE ENERGY, INC.
Assigned to ENPHASE ENERGY, INC. reassignment ENPHASE ENERGY, INC. RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: FLEXTRONICS AMERICA, LLC, FLEXTRONICS INDUSTRIAL, LTD.
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B15/00Suppression or limitation of noise or interference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B3/00Line transmission systems
    • H04B3/54Systems for transmission via power distribution lines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B15/00Suppression or limitation of noise or interference
    • H04B15/02Reducing interference from electric apparatus by means located at or near the interfering apparatus
    • H04B15/04Reducing interference from electric apparatus by means located at or near the interfering apparatus the interference being caused by substantially sinusoidal oscillations, e.g. in a receiver or in a tape-recorder

Definitions

  • Embodiments of the present disclosure relate generally to impulse noise mitigation, and, in particular, to mitigating impulse noise impact on packet preamble detection.
  • Impulse noise in communications systems is a category of noise which includes unwanted spikes or sharp pulses.
  • Impulse noise is one of the most difficult transmission impairments to suppress and can cause severe performance degradation in communications.
  • PLC power line communication
  • Embodiments of the present invention generally relate to impulse noise mitigation as shown in and/or described in connection with at least one of the figures, as set forth more completely in the claims.
  • FIG. 1 is a block diagram of a communication system in accordance with one or more embodiments of the present invention
  • FIG. 2 is a functional block diagram of a receiver in accordance with one or more embodiments of the present invention.
  • FIG. 3 is a block diagram of an impulse noise mitigation module in accordance with one or more embodiments of the present invention.
  • FIG. 4 is a block diagram of a system for power conversion using one or more embodiments of the present invention.
  • FIG. 5 is a functional block diagram of another embodiment of a receiver in accordance with one or more embodiments of the present invention.
  • FIG. 6 (comprised of FIGS. 6 a and 6 b ) is a flow diagram of a method for generating erasures for impulse noise mitigation during power line communication packet preamble detection in accordance with one or more embodiments of the present invention.
  • FIG. 7 is a flow diagram of a method for using erasures for power line communication impulse noise mitigation during packet preamble detection in accordance with one or more embodiments of the present invention.
  • FIG. 1 is a block diagram of a communication system 100 in accordance with one or more embodiments of the present invention. This diagram only portrays one variation of the myriad of possible system configurations. The present invention can function in a variety of environments and systems.
  • the system 100 comprises a device 102 - 1 coupled to a power line communications transceiver (PLCT) 104 - 1 , which is further coupled to an AC power line 120 (“power line 120 ”) via a junction box 114 - 1 . Additionally, the system 100 comprises a device 102 - 2 coupled to a PLCT 104 - 2 , which is further coupled to the power line 120 via a junction box 114 - 2 .
  • PLCT power line communications transceiver
  • the devices 102 - 1 and 102 - 2 are devices requiring communications bandwidth for transmitting and/or receiving data, such as a home computer, peripheral device, power converters, and the like, and are capable of communicating with one another over the power line 120 via the PLCTs 104 - 1 and 104 - 2 , respectively.
  • the PLCT 104 - 1 and/or the PLCT 104 - 2 may be coupled directly to the power line 120 without the use of junction boxes 114 - 1 / 114 - 2 .
  • junction boxes 114 - 1 / 114 - 2 One particular embodiment that uses the inventive system is described below with respect to FIG. 4 .
  • the PLCT 104 - 1 comprises a transmitter 106 - 1 and a receiver 108 - 1 , each coupled to the device 102 - 1 , and a coupler 110 - 1 that couples both the transmitter 106 - 1 and the receiver 108 - 1 to the junction box 114 - 1 .
  • the transmitter 106 - 1 is capable of transmitting data to the device 102 - 2 via the power line 120 .
  • the receiver 108 - 1 is capable of receiving data from the device 102 - 2 via the power line 120 .
  • the PLCT 104 - 1 may be able to simultaneously receive and transmit data; however, the transmitter 106 - 1 may generally blind the receiver 108 - 1 while active.
  • a PLCT controller 116 - 1 is coupled to the PLCT 104 - 1 and provides various control for the PLCT 104 - 1 .
  • the PLCT controller 116 may be separate from the PLCT 104 - 1 as depicted in FIG. 1 , or, alternatively, the PLCT controller 116 - 1 may be a component of the PLCT 104 - 1 .
  • the PLCT 104 - 2 comprises a transmitter 106 - 2 , a receiver 108 - 2 , and a coupler 110 - 2 .
  • the transmitter 106 - 2 and receiver 108 - 2 are coupled to the device 102 - 2 as well as the coupler 110 - 2 , and the coupler 110 - 2 is further coupled to the junction box 114 - 2 .
  • a PLCT controller 116 - 2 is coupled to the PLCT 104 - 2 and provides various controls for the PLCT 104 - 2 .
  • the PLCT controller 116 - 2 may be separate from the PLCT 104 - 2 as depicted in FIG. 1 , or, alternatively, the PLCT controller 116 - 2 may be a component of the PLCT 104 - 2 .
  • the PLCT 104 - 2 transmits and receives analogous to the PLCT 104 - 1 .
  • the transmitters 106 receive data from the corresponding devices 102 and, based on the received data, generate and transmit data packets for reception by the corresponding downstream receiver 108 .
  • the data transmission may be based on a protocol where packets are not scheduled on the medium in advance, such as carrier sense multiple access (CSMA).
  • CSMA carrier sense multiple access
  • Each of the data packets comprises a preamble at the beginning of the packet for synchronization at the receiver 108 .
  • the receivers 108 - 1 and 108 - 2 comprise impulse noise mitigation modules 122 - 1 and 122 - 2 , respectively, for mitigating the effects of impulse noise in detecting the preambles of received packets as described in detail below.
  • FIG. 2 is a functional block diagram of a receiver 108 in accordance with one or more embodiments of the present invention.
  • frequency shift keying (FSK) modulation is used in the system 100 , as well as Reed Solomon coding.
  • FIG. 5 depicts another embodiment of a receiver 108 in which other modulation techniques may be used (described further below with respect to FIG. 5 ).
  • the receiver 108 of FIG. 2 comprises an analog to digital converter (ADC) 220 that receives an analog input from the coupler 110 and converts the received analog input to a digital output that is coupled to a down-conversion module 222 .
  • ADC analog to digital converter
  • the down-conversion module 222 comprises a mixer and a filter and converts the received signal to a baseband signal and performs low-pass filtering to remove high-frequency content.
  • the output from the down-conversion module 222 is coupled to an automatic gain control (AGC) module 224 , and an output from the AGC module 224 is coupled to a delay module 226 and to an impulse noise erasure detector (ED) module 204 (an implementation of the impulse noise ED module 318 described below with respect to FIG. 3 ).
  • An output from the AGC module 224 is coupled to a delay module 202 , and the output from the delay module 202 is coupled to a polar discriminator 228 .
  • the outputs from the polar discriminator 228 and the impulse noise ED module 204 are coupled to a modified packet detector (PD) module 206 (an implementation of the modified PD module 320 described below with respect to FIG. 3 ).
  • PD packet detector
  • the delay module 202 , the impulse noise ED module 204 , the polar discriminator 228 , and the PD 206 form an erasure detection for packet detector (EDPD) module 122 for impulse noise mitigation.
  • the output from the PD 206 i.e., the output from the EDPD module 122
  • the AGC module 224 couples an output to the delay module 226 , and the output from the delay module 226 is coupled to an erasure detector (ED) module 210 .
  • the outputs from the ED module 210 and the synchronization/equalization and symbol decision module 230 are each coupled to a Reed-Solomon (RS) decoder 208 .
  • the RS-corrected symbols output from the RS decoder 208 are coupled to a de-scrambler module 232 for de-scrambling; and the output from the de-scrambler 232 is coupled to the device 102 .
  • the ED module 210 may couple an output to the synchronization/equalization and symbol decision module 230 .
  • the ED module 210 feeds erasures to the RS decoder 208 for correcting symbols in the payload that have been corrupted by impulse noise (the RD decoder 208 has the capability to accept erasures and correct them, up to a theoretical limit) as known in the art.
  • the EDPD module 122 employs impulse noise mitigation for packet preamble detection.
  • the impulse noise ED 204 receives a smoothed AGC gain signal, detects impulse noise and creates erasures (i.e., samples marked for erasure) for the modified PD 206 , which uses these erasures to adaptively control a correlation threshold used in detection of a packet preamble.
  • the modified PD 206 effectively treats the erasures as zeroes during a correlation between a known sequence and the received samples; the result of the correlation is compared to the correlation threshold for determining whether a packet preamble has been detected.
  • the modified PD 206 adjusts its correlation threshold based on the number of erasures received; because the erased preamble samples produce a correlation intermediate result of zero, the correlation threshold must be reduced accordingly as the number of erasures increases.
  • the correlation threshold for preamble detection would be adjusted by the number of erasures divided by 64.
  • the modified PD 206 may be bypassed and the erasures not used (for example, by suitably setting a control bit).
  • the impulse noise ED module 204 uses two moving average (MA) circuits in parallel operating on the AGC gain signal—one long MA, and one short MA. Based on the outputs from the MA circuits, thresholds and comparison logic determine the location of impulse noise-affected samples and insert erasures for these samples. These erasures are transmitted to the modified PD 206 , which detects preamble via correlation.
  • the modified PD 206 performs a hard decision cross correlation (HDCC) for packet detection and a soft decision cross correlation (SDCC) for header start and symbol boundary using these erasures.
  • HDCC hard decision cross correlation
  • SDCC soft decision cross correlation
  • the modified PD 206 computes and scales the number of erasures during the preamble and uses such information to adaptively scale the correlation thresholds for both the HDCC and SDCC. By using this adaptive scaling, a preamble where 48 out of 64 symbols have been erased and only 16 symbols are valid can still be detected. In some embodiments, these techniques can be utilized with a longer preamble to realize 4 msec impulse noise mitigation.
  • the impulse noise ED module 204 employs a threshold (referred to as an “AGC gain sample threshold” in FIG. 6 described below) to detect when the (inter-frame) gap stops and the signal starts.
  • Ramp-up of the MAs is replaced with an extension of the first MA after ramp-up is complete in order to eliminate the false or mis-detection of erasures during the MA ramp-up.
  • CSMA carrier sense multiple access
  • IIR Infinite impulse response
  • the IIR filter is a 1 pole Infinite Impulse Response (IIR) filter with one programmable coefficient having values such as 0.5, 0.75, 0.875, 0.9375, 0.96875, 0.984375, and the like. Additional logic is used to properly keep track of SOG/EOG for corner cases. An example of such a case is where a bad header is detected (and the packet length is unknown) mid-packet.
  • IIR Infinite Impulse Response
  • a media access control (MAC) layer (OSI layer 2) maintenance cycle that enables proper threshold settings in the EDPD module 122 is employed.
  • the maintenance cycle contains a ‘quiet’ period so that the EDPD module 122 can train to the background noise, and a constant envelope maintenance packet or burst signal that allows the EDPD module 122 to train to the signal level.
  • the maintenance cycle can be invoked periodically or ‘on demand’ when sudden signal degradation has been detected (relative to previous signals). The latter could be caused when a light dimmer has been turned on, for example.
  • the impulse noise mitigation techniques described herein using an adaptive threshold allow a smaller preamble to be used and reduce overhead relative to a modem which does not use this technique and is required to mitigate the same impulse noise durations.
  • the length of the preamble has practical limitations whereby a longer preamble may not always improve the performance.
  • the present invention mitigates the impulse noise from certain compact fluorescent lights and LEDs, common sources of impulse noise that can be difficult to compensate for.
  • symbol rates of 5 kB or 20 kB may be used, although in other embodiments other symbol rates may be used.
  • FIG. 3 is a block diagram of a receiver 108 in accordance with one or more embodiments of the present invention.
  • the receiver 108 may be comprised of hardware, software, or a combination thereof, and may in certain embodiments comprise a central processing unit (CPU) 340 coupled to support circuits 342 and memory 344 .
  • the CPU 340 may comprise one or more conventionally available microprocessors, microcontrollers and the like, which are capable of performing the processing described herein; in some embodiments, the CPU 340 may be a microcontroller comprising internal memory for storing controller firmware that, when executed, provides the functionality described herein.
  • the CPU 340 may include one or more application specific integrated circuits (ASICs).
  • ASICs application specific integrated circuits
  • the support circuits 342 are well known circuits used to promote functionality of the CPU 340 . Such circuits include, but are not limited to, a cache, power supplies, clock circuits, buses, network cards, input/output (I/O) circuits, and the like.
  • the receiver 108 may be implemented using a general purpose computer that, when executing particular software, becomes a specific purpose computer for performing various embodiments of the present invention.
  • the memory 344 may comprise random access memory, read only memory, removable disk memory, flash memory, and various combinations of these types of memory.
  • the memory 344 is sometimes referred to as main memory and may, in part, be used as cache memory or buffer memory.
  • the memory 344 generally stores the operating system (OS) 346 of the receiver 108 .
  • the OS 346 may be one of a number of commercially available OSs such as, but not limited to, Linux, Real-Time Operating System (RTOS), and the like.
  • the memory 344 may store various forms of application software, such as an impulse noise ED module 304 and a modified PD module 306 for performing the impulse noise mitigation techniques described herein.
  • the functionality of the impulse noise ED module 318 is described in detail below with respect to FIG. 6
  • the functionality of the modified PD module 320 is described in detail below with respect to FIG. 7 .
  • the memory 314 may further store modules for performing the functions of the additional receiver components, such as an ADC module 320 , a downconverter/filtering module 322 , a delay module 326 , an erasure detector module 310 , a RS decoder module 308 , a de-scrambler module 332 , an AGC module 324 , a delay module 302 , a polar discriminator module 328 , and a synchronization/equalization and symbol decision module 330 .
  • the memory 314 may further store a database 360 for storing data, such as data related to the present invention (e.g., one or more thresholds as well as other types of data).
  • FIG. 4 is a block diagram of a system 400 for power conversion using one or more embodiments of the present invention. This diagram only portrays one variation of the myriad of possible system configurations and devices that may utilize the present invention.
  • the present invention can be utilized by any packet communication device that may experience impulse noise, and can function in a variety of distributed environments and systems requiring communications that may experience impulse noise.
  • the system 400 comprises a plurality of DC-AC inverters 402 1 , 402 2 . . . 402 n , collectively referred to as inverters 402 , a plurality of DC power sources 404 - 1 , 404 - 2 , 404 - 3 . . . 404 -N, collectively referred to as DC power sources 404 , a plurality of power line communications transceiver (PLCTs) 104 1 , 104 2 . . . 104 n , 104 n+1 , collectively referred to as PLCTs 104 , AC power line 406 , an inverter controller 410 , and a load center 408 .
  • PLCTs power line communications transceiver
  • the DC power sources 404 may be any suitable DC source, such as an output from a previous power conversion stage, a battery, a renewable energy source (e.g., a solar panel or photovoltaic (PV) module, a wind turbine, a hydroelectric system, or similar renewable energy source), or the like, for providing DC power.
  • a renewable energy source e.g., a solar panel or photovoltaic (PV) module, a wind turbine, a hydroelectric system, or similar renewable energy source
  • DC-AC inverters are shown in FIG. 4 , in other embodiments other types of power conversion devices may be employed (e.g., DC-DC converters).
  • Each inverter 402 1 , 402 2 . . . 402 n is coupled to a PLCT 104 1 , 104 2 . . . 104 n , respectively; in some alternative embodiments, each of the PLCTs 104 1 , 104 2 . . . 104 n may be contained within the corresponding inverter 402 1 , 402 2 . . . 402 n .
  • Each inverter 402 1 , 402 2 . . . 402 n is additionally coupled to a DC power source 404 1 , 404 2 . . . 404 n , respectively.
  • the inverter controller 410 is coupled to the PLCT 104 n+1 and is capable of communicating with the inverters 402 via the PLCTs 104 and/or via wireless communication for receiving data from the inverters 402 and providing operative control of the inverters 402 .
  • the AC power line 406 is further coupled to the load center 408 which houses connections between incoming commercial AC power lines from a commercial AC power grid distribution system and the AC power line 406 .
  • the inverters 402 convert DC power generated by the DC power sources 404 into AC power, and couple the generated AC power to the commercial AC power grid via the load center 408 ; additionally or alternatively, the generated power may be distributed for use, for example to one or more appliances, and/or the generated energy may be stored for later use, for example using batteries, heated water, hydro pumping, H 2 O-to-hydrogen conversion, or the like.
  • the inverters 402 communicate with other devices (such as among one another, with the inverter controller 410 , and/or other devices not shown) using power line communications over the AC power lines 406 via the PLCTs 104 .
  • receivers of the PLCTs 104 each comprise the impulse noise mitigation module 122 described herein to perform the impulse noise mitigation techniques described herein.
  • FIG. 5 is a functional block diagram of another embodiment of a receiver 108 in accordance with one or more embodiments of the present invention.
  • modulation techniques other than FSK are used, such as minimum-shift keying (MSK), binary phase-shift keying (BPSK), quadrature phase-shift keying (QPSK), quadrature amplitude modulation (QAM), or the like.
  • MSK minimum-shift keying
  • BPSK binary phase-shift keying
  • QPSK quadrature phase-shift keying
  • QAM quadrature amplitude modulation
  • the receiver 108 of FIG. 5 comprises the ADC 220 that receives an analog input from the coupler 110 and converts the received analog input to a digital output that is coupled to the down-conversion module 222 .
  • the down-conversion module 222 converts the received signal to a baseband signal and performs low-pass filtering to remove high-frequency content.
  • the output from the down-conversion module 222 is coupled to the AGC module 224 , and an output from the AGC module 224 is coupled to the delay module 226 and an impulse noise erasure detector (ED) module 504 (an implementation of the impulse noise ED module 318 ) which operates analogous to the ED module 204 described above.
  • An output from the AGC module 224 is coupled to a delay module 502 (analogous to the delay module 202 described above), and the outputs from the delay module 502 and the impulse noise ED module 504 are coupled to a modified PD module 506 (an implementation of the modified PD module 320 ) which operates analogous to the modified PD module 206 described above.
  • the delay module 502 , the impulse noise ED module 504 , and the PD module 506 form the EDPD module 122 for impulse noise mitigation.
  • the output from the PD 506 i.e., the output from the EDPD module 122
  • the synchronization/equalization and symbol decision module 230 is coupled to the synchronization/equalization and symbol decision module 230 .
  • the AGC module 224 couples an output to the delay module 226 , and the output from the delay module 226 is coupled to the ED module 210 .
  • the outputs from the ED module 210 and the synchronization/equalization and symbol decision module 230 are each coupled to a de-interleaver/RS decoder 508 .
  • the RS-corrected symbols output from the de-interleaver/RS decoder 508 are coupled to the de-scrambler module 232 for de-scrambling; and the output from the de-scrambler 232 is coupled to the device 102 .
  • the ED module 210 may couple an output to the synchronization/equalization and symbol decision module 230 .
  • the ED module 210 feeds erasures to the de-interleaver/RS decoder 508 which performs both de-interleaving and RS decoder functions for correcting symbols in the payload that have been corrupted by impulse noise as known in the art. Additionally, the EDPD module 122 employs impulse noise mitigation for packet preamble detection as described above.
  • FIG. 6 is a flow diagram of a method 600 for generating erasures for impulse noise mitigation during power line communication packet preamble detection in accordance with one or more embodiments of the present invention.
  • the method 600 is an implementation of the impulse noise ED module 318 .
  • a computer readable medium comprises a program that, when executed by a processor, performs the method 600 that is described below.
  • the method 600 starts at step 602 and proceeds to step 604 .
  • a moving average referred to as “moving average 2”
  • another moving average referred to as “moving average 1”
  • EOG end of gap
  • a smoothed AGC gain sample is received.
  • the AGC gain is smoothed using a 1 pole Infinite Impulse Response (IIR) filter with one programmable coefficient having values such as 0.5, 0.75, 0.875, 0.9375, 0.96875, 0.984375, and the like.
  • IIR Infinite Impulse Response
  • the method 600 proceeds to step 610 , where a determination is made whether the received sample is less than an AGC gain sample threshold.
  • the AGC gain sample threshold is employed to detect when an (inter-frame) gap stops and the signal starts.
  • the AGC gain sample threshold is set based on a measured signal-to-noise ratio.
  • the sample represents a gap sample.
  • the method 600 proceeds to step 611 where a determination is made whether an EOG has been detected. If the result of the determination is yes, than an EOG has been detected, the method 600 proceeds to step 616 . If the result of the determination at step 611 is no, that an EOG has not been determined, the method 600 returns to step 606 .
  • step 610 If, at step 610 , the result of the determination is yes (i.e., the sample is less than the threshold), the sample represents a packet sample and the method 600 proceeds to step 612 .
  • step 612 a determination is made whether an EOG has been detected based on the EOG count. If the result of the determination at step 612 is no, that an EOG has not been detected based on the EOG count, the method 600 proceeds to step 614 where the EOG count is incremented and the method 600 then proceeds to step 616 .
  • step 612 the method 600 proceeds to step 616 .
  • the moving average 1 and the moving average 2 are each computed using the received sample.
  • the ramp-up length of moving average 1 is configurable; for example, the ramp-up length may be set to 32, 64, 128, or the like.
  • the method 600 then proceeds to step 617 where a determination is made if ramp up is done. If at step 617 it is determined that the ramp up is not done, the method 600 proceeds to step 618 where a determination is made whether the moving average 1 is equal to a particular moving average length (e.g., 2, 4, 8, 16, 32, 64 or 128).
  • a particular moving average length e.g., 2, 4, 8, 16, 32, 64 or 128).
  • step 642 the moving average 2 is stored in a buffer.
  • the method 600 then returns to step 608 . If, at step 618 , the result of the determination is yes, that the moving average 1 is equal to the moving average length, the method 600 proceeds to step 619 where the ramp up is done and the address of the moving average 2 buffer is set to zero. The method 600 then proceeds step 620 where the final ramp-up moving average 1 value is registered and the final moving average 1 value will be used for the previous samples that were in the ramp-up window. The method 600 then proceeds to step 630 .
  • the registered moving average 1 is used for ramp up samples.
  • the moving average 2 is read from the buffer.
  • a determination is made whether the moving average 1 is greater than the moving average 2 plus an erasure margin.
  • the erasure margin may be set based on a measured signal-to-background noise ratio. If the result of the determination at step 634 is no, i.e., that the moving average 1 is less than or equal to the moving average 2 plus the erasure margin, no erasure has been detected and the method 600 returns to step 608 . If the result of the determination at step 634 is yes, an erasure has been detected and the method 600 proceeds to step 636 where the sample is marked as an erasure.
  • step 638 a determination is made whether reading of the moving average 2 buffer is done. If the result of the determination at step 638 is yes, the method 600 returns to step 608 ; if the result of the determination at step 638 is no, the method 600 proceeds to step 640 . At step 640 , the address of the moving average 2 buffer is incremented and the method 600 returns to step 630 .
  • step 622 a determination is made whether the moving average 1 is greater than the moving average 2 plus an erasure margin.
  • the erasure margin may be set based on a measured signal-to-background noise ratio. If the result of the determination at step 622 is no, i.e., that the moving average 1 is less than or equal to the moving average 2 plus the erasure margin, no erasure has been detected and the method 600 returns to step 608 .
  • step 622 If the result of the determination at step 622 is yes, i.e., that the moving average 1 is greater than the moving average 2 plus the erasure margin, an erasure has been detected and the method 600 proceeds to step 624 .
  • the sample is marked as an erasure.
  • the identified erasure may then be used in packet preamble detection, for example as described below with respect to FIG. 7 .
  • step 626 a determination is made whether to continue. If the result of the determination at step 626 is yes, the method 600 returns to step 608 . If the result of the determination at step 626 is no, the method 600 proceeds to step 628 where it ends.
  • FIG. 7 is a flow diagram of a method 700 for using erasures for power line communication impulse noise mitigation during packet preamble detection in accordance with one or more embodiments of the present invention.
  • the method 700 is an implementation of the modified PD module 320 .
  • a computer readable medium comprises a program that, when executed by a processor, performs the method 700 that is described below.
  • the method 700 begins at step 702 and proceeds to step 704 .
  • an erasure is received, such as an erasure generated by the method 600 described above.
  • a cross correlation is performed between a known sequence and received samples, where the erasures are treated as zeroes during the correlation.
  • a hard decision cross correlation (HDCC) for packet detection and a soft decision cross correlation (SDCC) for header start and symbol boundary are performed using the erasures.
  • the number of erasures in a preamble-length window is computed and scaled.
  • the method 700 proceeds to step 710 , where the information generated at step 708 is used to adaptively scale a correlation threshold for packet preamble detection. Because the erased preamble samples produce a correlation intermediate result of zero, the correlation threshold must be reduced accordingly as the number of erasures increases. For example, in one or more embodiments where a 64-symbol correlation is used, the correlation threshold for preamble detection would be adjusted by (number of erasures)/64. By using this adaptive scaling, a preamble where 48 out of 64 symbols have been erased and only 16 symbols are valid can still be detected. In some embodiments, these techniques can be utilized with a longer preamble to realize 4 msec impulse noise mitigation.
  • correlation thresholds for each of the HDCC and the SDCC are adaptively set.
  • step 716 a determination is made whether to continue. If the result of the determination is yes, the method 700 returns to step 704 ; if the result of the determination is no, the method 700 proceeds to step 718 where it ends.

Abstract

A method and apparatus for impulse noise mitigation. In one embodiment, the method comprises identifying one or more impulse noise affected samples of a communication signal transmitted via power line communications; creating, based on the identified one or more impulse-noise affected samples, one or more erasures; and adaptively controlling a correlation threshold for packet preamble detection, wherein the correlation threshold is adaptively controlled based on the one or more erasure.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims benefit of U.S. provisional patent application Ser. No. 61/968,944, entitled “Impulse Noise Mitigation for Power Line Networking” and filed Mar. 21, 2014, which is herein incorporated in its entirety by reference.
BACKGROUND OF THE INVENTION
1. Field of the Invention
Embodiments of the present disclosure relate generally to impulse noise mitigation, and, in particular, to mitigating impulse noise impact on packet preamble detection.
2. Description of the Related Art
Impulse noise in communications systems is a category of noise which includes unwanted spikes or sharp pulses. Impulse noise is one of the most difficult transmission impairments to suppress and can cause severe performance degradation in communications.
In power line communication (PLC) systems, changing load on the power network results in unwanted impulse noise that may affect the ability of a receiver to detect transmitted packets. For example, a voltage spike due to impulse noise may make it impossible for the receiver to identify a packet preamble and thus lose the entire packet. Such impulse noise effects are particularly difficult to overcome in systems using protocols where packet deliveries are not scheduled in advance and the receiver has no a priori knowledge about when packets will arrive.
Therefore, there is a need in the art for a method and apparatus for efficiently mitigating the effects of impulse noise in communications.
SUMMARY OF THE INVENTION
Embodiments of the present invention generally relate to impulse noise mitigation as shown in and/or described in connection with at least one of the figures, as set forth more completely in the claims.
These and other features and advantages of the present disclosure may be appreciated from a review of the following detailed description of the present disclosure, along with the accompanying figures in which like reference numerals refer to like parts throughout.
BRIEF DESCRIPTION OF THE DRAWINGS
So that the manner in which the above recited features of the present invention can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.
FIG. 1 is a block diagram of a communication system in accordance with one or more embodiments of the present invention;
FIG. 2 is a functional block diagram of a receiver in accordance with one or more embodiments of the present invention;
FIG. 3 is a block diagram of an impulse noise mitigation module in accordance with one or more embodiments of the present invention;
FIG. 4 is a block diagram of a system for power conversion using one or more embodiments of the present invention;
FIG. 5 is a functional block diagram of another embodiment of a receiver in accordance with one or more embodiments of the present invention;
FIG. 6 (comprised of FIGS. 6 a and 6 b) is a flow diagram of a method for generating erasures for impulse noise mitigation during power line communication packet preamble detection in accordance with one or more embodiments of the present invention; and
FIG. 7 is a flow diagram of a method for using erasures for power line communication impulse noise mitigation during packet preamble detection in accordance with one or more embodiments of the present invention.
DETAILED DESCRIPTION
FIG. 1 is a block diagram of a communication system 100 in accordance with one or more embodiments of the present invention. This diagram only portrays one variation of the myriad of possible system configurations. The present invention can function in a variety of environments and systems.
The system 100 comprises a device 102-1 coupled to a power line communications transceiver (PLCT) 104-1, which is further coupled to an AC power line 120 (“power line 120”) via a junction box 114-1. Additionally, the system 100 comprises a device 102-2 coupled to a PLCT 104-2, which is further coupled to the power line 120 via a junction box 114-2. The devices 102-1 and 102-2, collectively referred to as devices 102, are devices requiring communications bandwidth for transmitting and/or receiving data, such as a home computer, peripheral device, power converters, and the like, and are capable of communicating with one another over the power line 120 via the PLCTs 104-1 and 104-2, respectively. In some embodiments, the PLCT 104-1 and/or the PLCT 104-2 may be coupled directly to the power line 120 without the use of junction boxes 114-1/114-2. One particular embodiment that uses the inventive system is described below with respect to FIG. 4.
The PLCT 104-1 comprises a transmitter 106-1 and a receiver 108-1, each coupled to the device 102-1, and a coupler 110-1 that couples both the transmitter 106-1 and the receiver 108-1 to the junction box 114-1. When the PLCT 104-1 is operating in a “transmit mode”, the transmitter 106-1 is capable of transmitting data to the device 102-2 via the power line 120.
The receiver 108-1 is capable of receiving data from the device 102-2 via the power line 120. The PLCT 104-1 may be able to simultaneously receive and transmit data; however, the transmitter 106-1 may generally blind the receiver 108-1 while active. In some embodiments, a PLCT controller 116-1 is coupled to the PLCT 104-1 and provides various control for the PLCT 104-1. The PLCT controller 116 may be separate from the PLCT 104-1 as depicted in FIG. 1, or, alternatively, the PLCT controller 116-1 may be a component of the PLCT 104-1.
Analogous to the PLCT 104-1, the PLCT 104-2 comprises a transmitter 106-2, a receiver 108-2, and a coupler 110-2. The transmitter 106-2 and receiver 108-2 are coupled to the device 102-2 as well as the coupler 110-2, and the coupler 110-2 is further coupled to the junction box 114-2. In some embodiments, a PLCT controller 116-2 is coupled to the PLCT 104-2 and provides various controls for the PLCT 104-2. The PLCT controller 116-2 may be separate from the PLCT 104-2 as depicted in FIG. 1, or, alternatively, the PLCT controller 116-2 may be a component of the PLCT 104-2. The PLCT 104-2 transmits and receives analogous to the PLCT 104-1.
During operation, the transmitters 106 receive data from the corresponding devices 102 and, based on the received data, generate and transmit data packets for reception by the corresponding downstream receiver 108. In some embodiments, the data transmission may be based on a protocol where packets are not scheduled on the medium in advance, such as carrier sense multiple access (CSMA).
Each of the data packets comprises a preamble at the beginning of the packet for synchronization at the receiver 108. In accordance with one or more embodiments of the present invention, the receivers 108-1 and 108-2 comprise impulse noise mitigation modules 122-1 and 122-2, respectively, for mitigating the effects of impulse noise in detecting the preambles of received packets as described in detail below.
FIG. 2 is a functional block diagram of a receiver 108 in accordance with one or more embodiments of the present invention. In some embodiments, such as the embodiment depicted in FIG. 2, frequency shift keying (FSK) modulation is used in the system 100, as well as Reed Solomon coding. FIG. 5 depicts another embodiment of a receiver 108 in which other modulation techniques may be used (described further below with respect to FIG. 5).
The receiver 108 of FIG. 2 comprises an analog to digital converter (ADC) 220 that receives an analog input from the coupler 110 and converts the received analog input to a digital output that is coupled to a down-conversion module 222. The down-conversion module 222 comprises a mixer and a filter and converts the received signal to a baseband signal and performs low-pass filtering to remove high-frequency content.
The output from the down-conversion module 222 is coupled to an automatic gain control (AGC) module 224, and an output from the AGC module 224 is coupled to a delay module 226 and to an impulse noise erasure detector (ED) module 204 (an implementation of the impulse noise ED module 318 described below with respect to FIG. 3). An output from the AGC module 224 is coupled to a delay module 202, and the output from the delay module 202 is coupled to a polar discriminator 228. The outputs from the polar discriminator 228 and the impulse noise ED module 204 are coupled to a modified packet detector (PD) module 206 (an implementation of the modified PD module 320 described below with respect to FIG. 3). The delay module 202, the impulse noise ED module 204, the polar discriminator 228, and the PD 206 form an erasure detection for packet detector (EDPD) module 122 for impulse noise mitigation. The output from the PD 206 (i.e., the output from the EDPD module 122) is coupled to a synchronization/equalization and symbol decision module 230.
In addition to coupling an output to the delay module 202, the AGC module 224 couples an output to the delay module 226, and the output from the delay module 226 is coupled to an erasure detector (ED) module 210. The outputs from the ED module 210 and the synchronization/equalization and symbol decision module 230 are each coupled to a Reed-Solomon (RS) decoder 208. The RS-corrected symbols output from the RS decoder 208 are coupled to a de-scrambler module 232 for de-scrambling; and the output from the de-scrambler 232 is coupled to the device 102. In some embodiments, the ED module 210 may couple an output to the synchronization/equalization and symbol decision module 230.
In the receiver 108 as depicted in FIG. 2, the ED module 210 feeds erasures to the RS decoder 208 for correcting symbols in the payload that have been corrupted by impulse noise (the RD decoder 208 has the capability to accept erasures and correct them, up to a theoretical limit) as known in the art. In accordance with one or more embodiments of the present invention, the EDPD module 122 employs impulse noise mitigation for packet preamble detection. The impulse noise ED 204 receives a smoothed AGC gain signal, detects impulse noise and creates erasures (i.e., samples marked for erasure) for the modified PD 206, which uses these erasures to adaptively control a correlation threshold used in detection of a packet preamble. The modified PD 206 effectively treats the erasures as zeroes during a correlation between a known sequence and the received samples; the result of the correlation is compared to the correlation threshold for determining whether a packet preamble has been detected. The modified PD 206 adjusts its correlation threshold based on the number of erasures received; because the erased preamble samples produce a correlation intermediate result of zero, the correlation threshold must be reduced accordingly as the number of erasures increases. For example, in one or more embodiments where a 64-symbol correlation is used, the correlation threshold for preamble detection would be adjusted by the number of erasures divided by 64. In some alternative embodiments, the modified PD 206 may be bypassed and the erasures not used (for example, by suitably setting a control bit).
As part of the impulse noise mitigation techniques described herein, the impulse noise ED module 204 uses two moving average (MA) circuits in parallel operating on the AGC gain signal—one long MA, and one short MA. Based on the outputs from the MA circuits, thresholds and comparison logic determine the location of impulse noise-affected samples and insert erasures for these samples. These erasures are transmitted to the modified PD 206, which detects preamble via correlation. The modified PD 206 performs a hard decision cross correlation (HDCC) for packet detection and a soft decision cross correlation (SDCC) for header start and symbol boundary using these erasures. The modified PD 206 computes and scales the number of erasures during the preamble and uses such information to adaptively scale the correlation thresholds for both the HDCC and SDCC. By using this adaptive scaling, a preamble where 48 out of 64 symbols have been erased and only 16 symbols are valid can still be detected. In some embodiments, these techniques can be utilized with a longer preamble to realize 4 msec impulse noise mitigation. In order to be insensitive to gap length, the impulse noise ED module 204 employs a threshold (referred to as an “AGC gain sample threshold” in FIG. 6 described below) to detect when the (inter-frame) gap stops and the signal starts. Ramp-up of the MAs is replaced with an extension of the first MA after ramp-up is complete in order to eliminate the false or mis-detection of erasures during the MA ramp-up. In those embodiments where transmissions are not scheduled, such as in a carrier sense multiple access (CSMA) network, there is no a priori knowledge of when transmissions will occur. Impulse noise bursts and signal packets could come at any time—independently or jointly. For this reason, an Infinite impulse response (IIR) smoothing filter on the AGC gain is used, and thresholds, hysteresis and control logic are used to help determine and keep track of the Start of Gap (SOG) and End of Gap (EOG). In some embodiments, the IIR filter is a 1 pole Infinite Impulse Response (IIR) filter with one programmable coefficient having values such as 0.5, 0.75, 0.875, 0.9375, 0.96875, 0.984375, and the like. Additional logic is used to properly keep track of SOG/EOG for corner cases. An example of such a case is where a bad header is detected (and the packet length is unknown) mid-packet.
In some embodiments, a media access control (MAC) layer (OSI layer 2) maintenance cycle that enables proper threshold settings in the EDPD module 122 is employed. The maintenance cycle contains a ‘quiet’ period so that the EDPD module 122 can train to the background noise, and a constant envelope maintenance packet or burst signal that allows the EDPD module 122 to train to the signal level. The maintenance cycle can be invoked periodically or ‘on demand’ when sudden signal degradation has been detected (relative to previous signals). The latter could be caused when a light dimmer has been turned on, for example.
In some embodiments, the impulse noise mitigation techniques described above improve the impulse noise duration PER=1% point for 5/20 kB by approximately 2-3×.
The impulse noise mitigation techniques described herein using an adaptive threshold allow a smaller preamble to be used and reduce overhead relative to a modem which does not use this technique and is required to mitigate the same impulse noise durations. However, with periodic impulse noise the length of the preamble has practical limitations whereby a longer preamble may not always improve the performance. Additionally, the present invention mitigates the impulse noise from certain compact fluorescent lights and LEDs, common sources of impulse noise that can be difficult to compensate for. In some embodiments, symbol rates of 5 kB or 20 kB may be used, although in other embodiments other symbol rates may be used.
FIG. 3 is a block diagram of a receiver 108 in accordance with one or more embodiments of the present invention. The receiver 108 may be comprised of hardware, software, or a combination thereof, and may in certain embodiments comprise a central processing unit (CPU) 340 coupled to support circuits 342 and memory 344. The CPU 340 may comprise one or more conventionally available microprocessors, microcontrollers and the like, which are capable of performing the processing described herein; in some embodiments, the CPU 340 may be a microcontroller comprising internal memory for storing controller firmware that, when executed, provides the functionality described herein. Alternatively, the CPU 340 may include one or more application specific integrated circuits (ASICs). The support circuits 342 are well known circuits used to promote functionality of the CPU 340. Such circuits include, but are not limited to, a cache, power supplies, clock circuits, buses, network cards, input/output (I/O) circuits, and the like. The receiver 108 may be implemented using a general purpose computer that, when executing particular software, becomes a specific purpose computer for performing various embodiments of the present invention.
The memory 344 may comprise random access memory, read only memory, removable disk memory, flash memory, and various combinations of these types of memory. The memory 344 is sometimes referred to as main memory and may, in part, be used as cache memory or buffer memory. The memory 344 generally stores the operating system (OS) 346 of the receiver 108. The OS 346 may be one of a number of commercially available OSs such as, but not limited to, Linux, Real-Time Operating System (RTOS), and the like.
The memory 344 may store various forms of application software, such as an impulse noise ED module 304 and a modified PD module 306 for performing the impulse noise mitigation techniques described herein. The functionality of the impulse noise ED module 318 is described in detail below with respect to FIG. 6, and the functionality of the modified PD module 320 is described in detail below with respect to FIG. 7. The memory 314 may further store modules for performing the functions of the additional receiver components, such as an ADC module 320, a downconverter/filtering module 322, a delay module 326, an erasure detector module 310, a RS decoder module 308, a de-scrambler module 332, an AGC module 324, a delay module 302, a polar discriminator module 328, and a synchronization/equalization and symbol decision module 330. The delay module 302, the impulse noise erasure detector module 304, the polar discriminator 328, and the modified packet detector module 306. The memory 314 may further store a database 360 for storing data, such as data related to the present invention (e.g., one or more thresholds as well as other types of data).
FIG. 4 is a block diagram of a system 400 for power conversion using one or more embodiments of the present invention. This diagram only portrays one variation of the myriad of possible system configurations and devices that may utilize the present invention. The present invention can be utilized by any packet communication device that may experience impulse noise, and can function in a variety of distributed environments and systems requiring communications that may experience impulse noise.
The system 400 comprises a plurality of DC- AC inverters 402 1, 402 2 . . . 402 n, collectively referred to as inverters 402, a plurality of DC power sources 404-1, 404-2, 404-3 . . . 404-N, collectively referred to as DC power sources 404, a plurality of power line communications transceiver (PLCTs) 104 1, 104 2 . . . 104 n, 104 n+1, collectively referred to as PLCTs 104, AC power line 406, an inverter controller 410, and a load center 408. The DC power sources 404 may be any suitable DC source, such as an output from a previous power conversion stage, a battery, a renewable energy source (e.g., a solar panel or photovoltaic (PV) module, a wind turbine, a hydroelectric system, or similar renewable energy source), or the like, for providing DC power. Although DC-AC inverters are shown in FIG. 4, in other embodiments other types of power conversion devices may be employed (e.g., DC-DC converters).
Each inverter 402 1, 402 2 . . . 402 n is coupled to a PLCT 104 1, 104 2 . . . 104 n, respectively; in some alternative embodiments, each of the PLCTs 104 1, 104 2 . . . 104 n may be contained within the corresponding inverter 402 1, 402 2 . . . 402 n. Each inverter 402 1, 402 2 . . . 402 n is additionally coupled to a DC power source 404 1, 404 2 . . . 404 n, respectively. The inverter controller 410 is coupled to the PLCT 104 n+1 and is capable of communicating with the inverters 402 via the PLCTs 104 and/or via wireless communication for receiving data from the inverters 402 and providing operative control of the inverters 402.
The AC power line 406 is further coupled to the load center 408 which houses connections between incoming commercial AC power lines from a commercial AC power grid distribution system and the AC power line 406. The inverters 402 convert DC power generated by the DC power sources 404 into AC power, and couple the generated AC power to the commercial AC power grid via the load center 408; additionally or alternatively, the generated power may be distributed for use, for example to one or more appliances, and/or the generated energy may be stored for later use, for example using batteries, heated water, hydro pumping, H2O-to-hydrogen conversion, or the like.
The inverters 402 communicate with other devices (such as among one another, with the inverter controller 410, and/or other devices not shown) using power line communications over the AC power lines 406 via the PLCTs 104. In accordance with one or more embodiments of the present invention, receivers of the PLCTs 104 each comprise the impulse noise mitigation module 122 described herein to perform the impulse noise mitigation techniques described herein.
FIG. 5 is a functional block diagram of another embodiment of a receiver 108 in accordance with one or more embodiments of the present invention. In the receiver 108 depicted in FIG. 5, modulation techniques other than FSK are used, such as minimum-shift keying (MSK), binary phase-shift keying (BPSK), quadrature phase-shift keying (QPSK), quadrature amplitude modulation (QAM), or the like.
The receiver 108 of FIG. 5 comprises the ADC 220 that receives an analog input from the coupler 110 and converts the received analog input to a digital output that is coupled to the down-conversion module 222. The down-conversion module 222 converts the received signal to a baseband signal and performs low-pass filtering to remove high-frequency content.
The output from the down-conversion module 222 is coupled to the AGC module 224, and an output from the AGC module 224 is coupled to the delay module 226 and an impulse noise erasure detector (ED) module 504 (an implementation of the impulse noise ED module 318) which operates analogous to the ED module 204 described above. An output from the AGC module 224 is coupled to a delay module 502 (analogous to the delay module 202 described above), and the outputs from the delay module 502 and the impulse noise ED module 504 are coupled to a modified PD module 506 (an implementation of the modified PD module 320) which operates analogous to the modified PD module 206 described above. The delay module 502, the impulse noise ED module 504, and the PD module 506 form the EDPD module 122 for impulse noise mitigation. As in the receiver 108 depicted in FIG. 2, the output from the PD 506 (i.e., the output from the EDPD module 122) is coupled to the synchronization/equalization and symbol decision module 230.
In addition to coupling an output to the delay module 502, the AGC module 224 couples an output to the delay module 226, and the output from the delay module 226 is coupled to the ED module 210. The outputs from the ED module 210 and the synchronization/equalization and symbol decision module 230 are each coupled to a de-interleaver/RS decoder 508. The RS-corrected symbols output from the de-interleaver/RS decoder 508 are coupled to the de-scrambler module 232 for de-scrambling; and the output from the de-scrambler 232 is coupled to the device 102. In some embodiments, the ED module 210 may couple an output to the synchronization/equalization and symbol decision module 230.
Analogous to the receiver 108 depicted in FIG. 2, the ED module 210 feeds erasures to the de-interleaver/RS decoder 508 which performs both de-interleaving and RS decoder functions for correcting symbols in the payload that have been corrupted by impulse noise as known in the art. Additionally, the EDPD module 122 employs impulse noise mitigation for packet preamble detection as described above.
FIG. 6 (comprised of FIGS. 6 a and 6 b) is a flow diagram of a method 600 for generating erasures for impulse noise mitigation during power line communication packet preamble detection in accordance with one or more embodiments of the present invention. In one or more embodiments, the method 600 is an implementation of the impulse noise ED module 318. In some embodiments, a computer readable medium comprises a program that, when executed by a processor, performs the method 600 that is described below.
The method 600 starts at step 602 and proceeds to step 604. At step 604, a moving average, referred to as “moving average 2”, is reset. At step 606, another moving average, referred to as “moving average 1” is reset; additionally, and end of gap (EOG) count is reset. The method 600 proceeds to step 608.
At step 608, a smoothed AGC gain sample is received. In some embodiments, the AGC gain is smoothed using a 1 pole Infinite Impulse Response (IIR) filter with one programmable coefficient having values such as 0.5, 0.75, 0.875, 0.9375, 0.96875, 0.984375, and the like. The method 600 proceeds to step 610, where a determination is made whether the received sample is less than an AGC gain sample threshold. The AGC gain sample threshold is employed to detect when an (inter-frame) gap stops and the signal starts. In some embodiments, the AGC gain sample threshold is set based on a measured signal-to-noise ratio.
If, at step 610, the result of the determination is no (i.e., the sample is equal to or greater than the threshold), the sample represents a gap sample. The method 600 proceeds to step 611 where a determination is made whether an EOG has been detected. If the result of the determination is yes, than an EOG has been detected, the method 600 proceeds to step 616. If the result of the determination at step 611 is no, that an EOG has not been determined, the method 600 returns to step 606.
If, at step 610, the result of the determination is yes (i.e., the sample is less than the threshold), the sample represents a packet sample and the method 600 proceeds to step 612. At step 612, a determination is made whether an EOG has been detected based on the EOG count. If the result of the determination at step 612 is no, that an EOG has not been detected based on the EOG count, the method 600 proceeds to step 614 where the EOG count is incremented and the method 600 then proceeds to step 616.
If, at step 612, the result of the determination is yes, that the EOG has been detected based on the EOG count, the method 600 proceeds to step 616. At step 616, the moving average 1 and the moving average 2 are each computed using the received sample. The ramp-up length of moving average 1 is configurable; for example, the ramp-up length may be set to 32, 64, 128, or the like. The method 600 then proceeds to step 617 where a determination is made if ramp up is done. If at step 617 it is determined that the ramp up is not done, the method 600 proceeds to step 618 where a determination is made whether the moving average 1 is equal to a particular moving average length (e.g., 2, 4, 8, 16, 32, 64 or 128). If the result of the determination is no, that the moving average 1 is not equal to the moving average length, the method 600 proceeds to step 642 where the moving average 2 is stored in a buffer. The method 600 then returns to step 608. If, at step 618, the result of the determination is yes, that the moving average 1 is equal to the moving average length, the method 600 proceeds to step 619 where the ramp up is done and the address of the moving average 2 buffer is set to zero. The method 600 then proceeds step 620 where the final ramp-up moving average 1 value is registered and the final moving average 1 value will be used for the previous samples that were in the ramp-up window. The method 600 then proceeds to step 630.
At step 630, the registered moving average 1 is used for ramp up samples. At step 632, the moving average 2 is read from the buffer. At step 634, a determination is made whether the moving average 1 is greater than the moving average 2 plus an erasure margin. In some embodiments, the erasure margin may be set based on a measured signal-to-background noise ratio. If the result of the determination at step 634 is no, i.e., that the moving average 1 is less than or equal to the moving average 2 plus the erasure margin, no erasure has been detected and the method 600 returns to step 608. If the result of the determination at step 634 is yes, an erasure has been detected and the method 600 proceeds to step 636 where the sample is marked as an erasure.
The method 600 proceeds to step 638, where a determination is made whether reading of the moving average 2 buffer is done. If the result of the determination at step 638 is yes, the method 600 returns to step 608; if the result of the determination at step 638 is no, the method 600 proceeds to step 640. At step 640, the address of the moving average 2 buffer is incremented and the method 600 returns to step 630.
If, at step 617, it is determined that the ramp up is done, the method 600 proceeds to step 622. At step 622, a determination is made whether the moving average 1 is greater than the moving average 2 plus an erasure margin. In some embodiments, the erasure margin may be set based on a measured signal-to-background noise ratio. If the result of the determination at step 622 is no, i.e., that the moving average 1 is less than or equal to the moving average 2 plus the erasure margin, no erasure has been detected and the method 600 returns to step 608.
If the result of the determination at step 622 is yes, i.e., that the moving average 1 is greater than the moving average 2 plus the erasure margin, an erasure has been detected and the method 600 proceeds to step 624. At step 624, the sample is marked as an erasure. The identified erasure may then be used in packet preamble detection, for example as described below with respect to FIG. 7.
The method 600 proceeds to step 626 where a determination is made whether to continue. If the result of the determination at step 626 is yes, the method 600 returns to step 608. If the result of the determination at step 626 is no, the method 600 proceeds to step 628 where it ends.
FIG. 7 is a flow diagram of a method 700 for using erasures for power line communication impulse noise mitigation during packet preamble detection in accordance with one or more embodiments of the present invention. In one or more embodiments, the method 700 is an implementation of the modified PD module 320. In some embodiments, a computer readable medium comprises a program that, when executed by a processor, performs the method 700 that is described below.
The method 700 begins at step 702 and proceeds to step 704. At step 704, an erasure is received, such as an erasure generated by the method 600 described above. At step 706, a cross correlation is performed between a known sequence and received samples, where the erasures are treated as zeroes during the correlation. In some embodiments, a hard decision cross correlation (HDCC) for packet detection and a soft decision cross correlation (SDCC) for header start and symbol boundary are performed using the erasures.
At step 708, the number of erasures in a preamble-length window is computed and scaled. The method 700 proceeds to step 710, where the information generated at step 708 is used to adaptively scale a correlation threshold for packet preamble detection. Because the erased preamble samples produce a correlation intermediate result of zero, the correlation threshold must be reduced accordingly as the number of erasures increases. For example, in one or more embodiments where a 64-symbol correlation is used, the correlation threshold for preamble detection would be adjusted by (number of erasures)/64. By using this adaptive scaling, a preamble where 48 out of 64 symbols have been erased and only 16 symbols are valid can still be detected. In some embodiments, these techniques can be utilized with a longer preamble to realize 4 msec impulse noise mitigation.
In some embodiments, correlation thresholds for each of the HDCC and the SDCC are adaptively set.
At step 712, a determination is made whether the correlation result is greater than the correlation threshold. If the result of the determination at step 712 is yes, that the correlation result is greater than the threshold, the method 700 proceeds to step 714 where a preamble is detected; the method 700 then proceeds to step 716. If the result of the determination at step 712 is no, that the correlation result is not greater than the threshold, the method 700 proceeds to step 716.
At step 716 a determination is made whether to continue. If the result of the determination is yes, the method 700 returns to step 704; if the result of the determination is no, the method 700 proceeds to step 718 where it ends.
The foregoing description of embodiments of the invention comprises a number of elements, devices, circuits and/or assemblies that perform various functions as described. These elements, devices, circuits, and/or assemblies are exemplary implementations of means for performing their respectively described functions.
While the foregoing is directed to embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.

Claims (20)

The invention claimed is:
1. A method for impulse noise mitigation, comprising:
identifying one or more impulse noise affected samples of a communication signal transmitted via power line communications;
creating, based on the identified one or more impulse noise affected samples, one or more erasures; and
adaptively controlling a correlation threshold for packet preamble detection, wherein the correlation threshold is adaptively controlled based on the one or more erasures.
2. The method of claim 1, wherein creating the one or more erasures comprises marking each impulse noise affected sample of the one or more impulse noise affected samples.
3. The method of claim 2, wherein identifying the one or more impulse noise affected samples comprises:
receiving a plurality of samples of the communication signal;
determining when a number of consecutive samples of the plurality of samples are each less than a gain sample threshold;
computing a first moving average based on the consecutive samples;
computing a second moving average based on samples of the plurality of samples that are less than the gain sample threshold;
comparing the first moving average to an erasure threshold that is based on the second moving average; and
identifying, when the first moving average is greater than the erasure threshold, the one or more impulse noise affected samples.
4. The method of claim 3, wherein adaptively controlling the correlation threshold comprises computing the correlation threshold based on a number of erasures in a preamble-length window.
5. The method of claim 4, further comprising performing a cross-correlation between the plurality of samples and a known sequence, wherein each erasure of the one or more erasures is treated as a zero during the cross-correlation.
6. The method of claim 5, further comprising:
comparing a result of the cross-correlation to the correlation threshold; and
identifying a packet preamble when the result of the cross-correlation is greater than the correlation threshold.
7. The method of claim 6, wherein performing the cross-correlation comprises performing a hard decision cross-correlation.
8. The method of claim 3, further comprising:
comparing the first moving average to a length threshold; and
when the first moving average is equal to the length threshold, replacing previous samples in a first moving average ramp-up window by the first moving average.
9. The method of claim 3, wherein the erasure threshold is equal to the second moving average plus a margin value.
10. An apparatus for impulse noise mitigation, comprising:
an erasure detection for packet detector (EDPD) module for (i) identifying one or more impulse noise affected samples of a communication signal transmitted via power line communications; (ii) creating, based on the identified one or more impulse noise affected samples, one or more erasures; and (iii) adaptively controlling a correlation threshold for packet preamble detection, wherein the correlation threshold is adaptively controlled based on the one or more erasures.
11. The apparatus of claim 10, wherein the EDPD module comprises an impulse noise erasure detector module for marking each impulse noise affected sample of the one or more impulse noise affected samples to create the one or more erasures.
12. The apparatus of claim 11, wherein the EDPD module receives a plurality of samples of the communication signal and the impulse noise erasure detector module identifies the one or more impulse noise affected samples by:
determining when a number of consecutive samples of the plurality of samples are each less than a gain sample threshold;
computing a first moving average based on the consecutive samples;
computing a second moving average based on samples of the plurality of samples that are less than the gain sample threshold;
comparing the first moving average to an erasure threshold that is based on the second moving average; and
identifying, when the first moving average is greater than the erasure threshold, the one or more impulse noise affected samples.
13. The apparatus of claim 12, wherein the EDPD module comprises a packet detector module that adaptively controls the correlation threshold by computing the correlation threshold based on a number of erasures in a preamble-length window.
14. The apparatus of claim 13, wherein the packet detector module further performs a cross-correlation between the plurality of samples and a known sequence, wherein each erasure of the one or more erasures is treated as a zero during the cross-correlation.
15. The apparatus of claim 14, wherein the packet detector module further compares a result of the cross-correlation to the correlation threshold; and identifies a packet preamble when the result of the cross-correlation is greater than the correlation threshold.
16. The apparatus of claim 15, wherein performing the cross-correlation comprises performing a hard decision cross-correlation.
17. The apparatus of claim 12, wherein the impulse noise erasure detector module further compares the first moving average to a length threshold and, when the first moving average is equal to the length threshold, replaces previous samples in a first moving average ramp-up window by the first moving average.
18. The apparatus of claim 12, wherein the erasure threshold is equal to the second moving average plus a margin value.
19. A system for mitigating power line communication impulse noise, comprising:
a plurality of renewable energy sources;
a plurality of inverters coupled to the plurality of renewable energy sources in a one-to-one correspondence, wherein the plurality of inverters is coupled to a power line; and
a plurality of power line communication transceivers (PLCT) coupled to the plurality of inverters in a one-to-one correspondence, wherein the plurality of PLCTs is coupled to the power line and wherein each PLCT of the plurality of PLCTs comprises an erasure detection for packet detector (EDPD) module for (i) identifying one or more impulse noise affected samples of a communication signal transmitted via power line communications; (ii) creating, based on the identified one or more impulse noise affected samples, one or more erasures; and (iii) adaptively controlling a correlation threshold for packet preamble detection, wherein the correlation threshold is adaptively controlled based on the one or more erasures.
20. The system of claim 19, wherein the plurality of renewable energy sources is a plurality of photovoltaic (PV) modules.
US14/665,782 2014-03-21 2015-03-23 Method and apparatus for impulse noise mitigation for power line networking Active US9270388B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/665,782 US9270388B2 (en) 2014-03-21 2015-03-23 Method and apparatus for impulse noise mitigation for power line networking

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201461968944P 2014-03-21 2014-03-21
US14/665,782 US9270388B2 (en) 2014-03-21 2015-03-23 Method and apparatus for impulse noise mitigation for power line networking

Publications (2)

Publication Number Publication Date
US20150270910A1 US20150270910A1 (en) 2015-09-24
US9270388B2 true US9270388B2 (en) 2016-02-23

Family

ID=54143070

Family Applications (1)

Application Number Title Priority Date Filing Date
US14/665,782 Active US9270388B2 (en) 2014-03-21 2015-03-23 Method and apparatus for impulse noise mitigation for power line networking

Country Status (2)

Country Link
US (1) US9270388B2 (en)
WO (1) WO2015143437A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9479288B2 (en) * 2014-06-17 2016-10-25 Freescale Semiconductor, Inc. Techniques for time-domain frame synchronization of packets
CN107359905B (en) * 2017-07-11 2021-07-23 吴泳澎 Digital front end and frame detection method for frequency division power line carrier communication
US10447313B2 (en) * 2017-11-28 2019-10-15 X Development Llc Communication method and system with on demand temporal diversity
US11140008B2 (en) 2017-12-07 2021-10-05 Halliburton Energy Services, Inc. Noise compensation for communication on power line downhole
CN111212011A (en) * 2019-12-24 2020-05-29 东北电力大学 Power line carrier communication pulse noise suppression method for electric automobile and charging pile

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5724384A (en) * 1994-07-14 1998-03-03 Samsung Electronics Co., Ltd. PN code sync device using an adaptive threshold
US6404803B1 (en) * 2000-10-24 2002-06-11 Neoreach, Inc. PN code acquisition with adaptive antenna array and adaptive threshold for CDMA wireless communications
US6714677B1 (en) * 1999-12-17 2004-03-30 Xerox Corporation Use of correlation histograms for improved glyph decoding
US6859488B2 (en) 2002-09-25 2005-02-22 Terayon Communication Systems, Inc. Detection of impulse noise using unused codes in CDMA systems
US20050047489A1 (en) * 2001-06-08 2005-03-03 Yousef Nabil R. Chip blanking and processing in SCDMA to mitigate impulse and burst noise and/or distortion
US20050286566A1 (en) 2004-06-23 2005-12-29 Po Tong Versatile erasure forecasting system for impulse noise mitigation
US20060078044A1 (en) 2004-10-11 2006-04-13 Norrell Andrew L Various methods and apparatuses for imulse noise mitigation
US7394877B2 (en) 2001-12-20 2008-07-01 Texas Instruments Incorporated Low-power packet detection using decimated correlation
JP2008244821A (en) 2007-03-27 2008-10-09 Matsushita Electric Ind Co Ltd Communications device, communication system and method for controlling communication
US7813439B2 (en) 2006-02-06 2010-10-12 Broadcom Corporation Various methods and apparatuses for impulse noise detection
JP2010288287A (en) 2005-10-12 2010-12-24 Panasonic Corp Method for power line communication, integrated circuit, and apparatus for power line communication
US20110058470A1 (en) * 2009-09-04 2011-03-10 Inha-Industry Partnership Institute Ranging apparatus and method for improving ranging performance in ofdma system
US20120082253A1 (en) 2010-07-12 2012-04-05 Texas Instruments Incorporated Pilot Structure for Coherent Modulation
US20120093198A1 (en) * 2010-10-08 2012-04-19 Texas Instruments Incorporated Building, Transmitting, and Receiving Frame Structures in Power Line Communications
US8385399B2 (en) 2010-03-17 2013-02-26 Ralink Technology Corp. Method for impulse noise mitigation
US8488663B2 (en) 2009-09-23 2013-07-16 Maxlinear, Inc. Impulse noise mitigation under out-of-band interference conditions
US8653689B2 (en) 2008-11-12 2014-02-18 Tigo Energy, Inc. Method and system for current-mode power line communications

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5724384A (en) * 1994-07-14 1998-03-03 Samsung Electronics Co., Ltd. PN code sync device using an adaptive threshold
US6714677B1 (en) * 1999-12-17 2004-03-30 Xerox Corporation Use of correlation histograms for improved glyph decoding
US6404803B1 (en) * 2000-10-24 2002-06-11 Neoreach, Inc. PN code acquisition with adaptive antenna array and adaptive threshold for CDMA wireless communications
US8170154B2 (en) 2001-06-08 2012-05-01 Broadcom Corporation Chip blanking and processing in SCDMA to mitigate impulse and burst noise and/or distortion
US20050047489A1 (en) * 2001-06-08 2005-03-03 Yousef Nabil R. Chip blanking and processing in SCDMA to mitigate impulse and burst noise and/or distortion
US7394877B2 (en) 2001-12-20 2008-07-01 Texas Instruments Incorporated Low-power packet detection using decimated correlation
US6859488B2 (en) 2002-09-25 2005-02-22 Terayon Communication Systems, Inc. Detection of impulse noise using unused codes in CDMA systems
US20050286566A1 (en) 2004-06-23 2005-12-29 Po Tong Versatile erasure forecasting system for impulse noise mitigation
US20060078044A1 (en) 2004-10-11 2006-04-13 Norrell Andrew L Various methods and apparatuses for imulse noise mitigation
US8194722B2 (en) 2004-10-11 2012-06-05 Broadcom Corporation Various methods and apparatuses for impulse noise mitigation
JP2010288287A (en) 2005-10-12 2010-12-24 Panasonic Corp Method for power line communication, integrated circuit, and apparatus for power line communication
US7813439B2 (en) 2006-02-06 2010-10-12 Broadcom Corporation Various methods and apparatuses for impulse noise detection
JP2008244821A (en) 2007-03-27 2008-10-09 Matsushita Electric Ind Co Ltd Communications device, communication system and method for controlling communication
US8653689B2 (en) 2008-11-12 2014-02-18 Tigo Energy, Inc. Method and system for current-mode power line communications
US20110058470A1 (en) * 2009-09-04 2011-03-10 Inha-Industry Partnership Institute Ranging apparatus and method for improving ranging performance in ofdma system
US8488663B2 (en) 2009-09-23 2013-07-16 Maxlinear, Inc. Impulse noise mitigation under out-of-band interference conditions
US8385399B2 (en) 2010-03-17 2013-02-26 Ralink Technology Corp. Method for impulse noise mitigation
US20120082253A1 (en) 2010-07-12 2012-04-05 Texas Instruments Incorporated Pilot Structure for Coherent Modulation
US20120093198A1 (en) * 2010-10-08 2012-04-19 Texas Instruments Incorporated Building, Transmitting, and Receiving Frame Structures in Power Line Communications

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
International Search Report and Written Opinion mailed Jun. 11, 2015 for PCT Application No. PCT/US2015/022027.
Lin et al., "Impulsive Noise Mitigation in Powerline Communications Using Sparse Bayesian Learning", IEEE Journal on Selected Areas of Communications, 26 Pages, Mar. 5, 2013.
Ribeiro et al., "Impulse Noise Mitigation Based on Computational Intelligence for Improved Bit Rate in PLC-DMT", IEEE Transactions on Power Delivery, vol. 21, Issue 1, pp. 94-101, Jan. 2006.
Seo et al., "Improved Impulse Detection in Power Line Communication Systems", IEEE International Symposium on Power Line Communications and Its Applications, pp. 374-379, Apr. 2008.
Zhao et al., "Efficient Erasure Marking Technique for Interleaving Delay Reduction in DSL Systems Impaired by Impulse Noise", IEEE International Conference on Communications (ICC), pp. 3170-3174, Jun. 2012.

Also Published As

Publication number Publication date
US20150270910A1 (en) 2015-09-24
WO2015143437A1 (en) 2015-09-24

Similar Documents

Publication Publication Date Title
US9270388B2 (en) Method and apparatus for impulse noise mitigation for power line networking
US10292104B2 (en) Quick decision preamble detector with hierarchical processing
US5553081A (en) Apparatus and method for detecting a signal in a communications system
TWI295883B (en) Rate selection for an ofdm system
US9077489B2 (en) Adjusting multi-carrier modulation and transmission power properties
US8014442B2 (en) Communicating data using wideband communications
Ma et al. Appropriate modulation scheme for visible light communication systems considering illumination
WO2011082145A2 (en) Transmit power control
US10721092B2 (en) High-speed CAN communication system using passband modulation
WO2014111795A1 (en) Devices and methods for power consumption control in powerline communications systems and apparatus
US8243859B2 (en) Joint frequency and unique word detection
US20100020863A1 (en) Determination of receive data values
US20150358050A1 (en) Adaptive modulation system and method to minimize energy consumption
US9838077B2 (en) Method for estimating a cyclostationary transmission channel, and corresponding receiver
Ghassemlooy Investigation of the baseline wander effect on indoor optical wireless system employing digital pulse interval modulation
US7149252B2 (en) Communicating data using wideband communications
Song et al. AARC: Cross-layer wireless rate control driven by fine-grained channel assessment
TW201822494A (en) Clear channel assessment
US9332492B2 (en) Rapid acknowledgement of radio transmissions for energy minimization
CN117714245B (en) Interference suppression system, method, equipment and medium in wireless ad hoc network system
JP2012239027A (en) Transmission method and transmitter of 4-level ppm signal
US10673559B2 (en) Optimal preamble length and detection threshold
US11546199B2 (en) Packet detection and timing synchronization for high performance wireless communications in substation automation
EP3471358A1 (en) Ami system with link budget dynamics

Legal Events

Date Code Title Description
AS Assignment

Owner name: ENPHASE ENERGY, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BERNSTEIN, ZVI;LAUDEL, KENNAN;ANUGU, MADHAVI;SIGNING DATES FROM 20150323 TO 20150324;REEL/FRAME:035275/0760

STCF Information on status: patent grant

Free format text: PATENTED CASE

AS Assignment

Owner name: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT, CALIFORNIA

Free format text: SECURITY INTEREST;ASSIGNOR:ENPHASE ENERGY, INC.;REEL/FRAME:041210/0283

Effective date: 20161227

Owner name: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT,

Free format text: SECURITY INTEREST;ASSIGNOR:ENPHASE ENERGY, INC.;REEL/FRAME:041210/0283

Effective date: 20161227

AS Assignment

Owner name: OBSIDIAN AGENCY SERVICES, INC., CALIFORNIA

Free format text: SECURITY INTEREST;ASSIGNOR:ENPHASE ENERGY, INC.;REEL/FRAME:041225/0509

Effective date: 20161227

Owner name: FLEXTRONICS AMERICA, LLC, CALIFORNIA

Free format text: SECURITY INTEREST;ASSIGNOR:ENPHASE ENERGY, INC.;REEL/FRAME:041936/0109

Effective date: 20161230

Owner name: FLEXTRONICS INDUSTRIAL, LTD, CALIFORNIA

Free format text: SECURITY AGREEMENT;ASSIGNOR:ENPHASE ENERGY, INC.;REEL/FRAME:041958/0820

Effective date: 20161230

AS Assignment

Owner name: FLEXTRONICS INDUSTRIAL, LTD, CALIFORNIA

Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY NAME PREVIOUSLY RECORDED AT REEL: 041936 FRAME: 0109. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST;ASSIGNOR:ENPHASE ENERGY, INC.;REEL/FRAME:043339/0856

Effective date: 20161230

Owner name: FLEXTRONICS AMERICA, LLC, CALIFORNIA

Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY NAME PREVIOUSLY RECORDED AT REEL: 041936 FRAME: 0109. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST;ASSIGNOR:ENPHASE ENERGY, INC.;REEL/FRAME:043339/0856

Effective date: 20161230

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4

AS Assignment

Owner name: ENPHASE ENERGY, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNORS:FLEXTRONICS INDUSTRIAL, LTD.;FLEXTRONICS AMERICA, LLC;REEL/FRAME:052022/0954

Effective date: 20181211

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 8