Wideband Impulse Modulation and Receiver Algorithms for Multiuser Power Line Communications

We consider a bit-interleaved coded wideband impulse-modulated system for power line communications. Impulse modulation is combined with direct-sequence code-division multiple access (DS-CDMA) to obtain a form of orthogonal modulation and to multiplex the users. We focus on the receiver signal processing algorithms and derive a maximum likelihood frequency-domain detector that takes into account the presence of impulse noise as well as the intercode interference (ICI) and the multiple-access interference (MAI) that are generated by the frequency-selective power line channel. To reduce complexity, we propose several simpliﬁed frequency-domain receiver algorithms with di ﬀ erent complexity and performance. We address the problem of the practical estimation of the channel frequency response as well as the estimation of the correlation of the ICI-MAI-plus-noise that is needed in the detection metric. To improve the estimators performance, a simple hard feedback from the channel decoder is also used. Simulation results show that the scheme provides robust performance as a result of spreading the symbol energy both in frequency (through the wideband pulse) and in time (through the spreading code and the bit-interleaved convolutional code).


INTRODUCTION
The design of broadband communication modems for transmission over power lines (PL) is an interesting and open problem especially with reference to the development of reliable transmission and advanced signal processing techniques that are capable of coping with the harsh properties of the power line channel and noise [1].In this paper, we deal with advanced signal processing algorithms for a wideband (beyond 20 MHz) impulse-modulated modem [2][3][4].Up to date, impulse modulation has only been considered for application in ultra-wideband (UWB) wireless channels [5][6][7].It has interesting properties in terms of simple baseband implementation and robustness against channel frequency selectivity and interference.Differently from the wireless context, PL channels have a narrower transmission bandwidth [8] and are characterized by several background disturbances as colored and impulse noise [9].Nevertheless, wideband impulse modulation is an attractive scheme for application over this medium as experimental trials have shown [4].The basic idea behind impulse modulation is to convey information by mapping an information symbol stream into a sequence of short-duration pulses.Pulses (referred to as monocycles) are followed by a guard time to cope with the channel time dispersion.The monocycle can be designed to shape the occupied spectrum and in particular to avoid the low frequencies where we typically experience higher levels of background noise.Since our system deploys a fractional bandwidth (ratio between signaling bandwidth and center carrier) larger than 20%, it can be classified as an ultra wideband system according to the FCC.We consider indoor applications such as local area networks, peripheral office connectivity, and home/industrial automation.Impulse modulation is an attractive transmission technique also for in-vehicle PLC systems and for PL pervasive sensor networks where the transmitting nodes need to use a simple modulation scheme.In general, we assume that a number of nodes (users) wish to communicate sharing the same PL grid.Communication is from one node to another node such that if other nodes simultaneously access the medium, they are seen as potential interferers.In order to allow for users' multiplexing, we deploy direct-sequence code-division multiple access (DS-CDMA) [6,[10][11][12].The user's information is conveyed using a certain signature waveform that is a repetition of timedelayed and weighted monocycles that span a transmission frame.A key point in the proposed approach is that the symbol energy is spread over a wideband which makes the system robust to narrowband interference and capable of exploiting the channel frequency diversity.Furthermore, this modulation approach is simple at the transmitter side and requires a baseline correlation receiver that filters the received signal with a template waveform [2,7].The template waveform has to be matched to the equivalent impulse response that comprises the desired user's waveform and the channel impulse response.To achieve high performance, this receiver requires accurate estimation of the channel which can be complex if performed in the time domain [13,14] because of the large time dispersion that is introduced by the wideband frequency-selective PL channel.Further, the channelfrequency selectivity introduces intercode interference (ICI) (interference among the codes that are assigned to the same user) and multiple-access interference (MAI) when multiple users access the network.This translates into performance losses and suggests some form of multiuser detection or interference cancellation.Therefore, in this paper we focus on the receiver side and we propose a novel frequency-domain (FD) detection approach which allows to obtain high performance and to keep the complexity at moderate levels.FD receivers have recently attracted considerable attention both for equalization in single carrier systems [15] and in multicarrier (OFDM) systems [16,17].We have investigated FD processing in a UWB wireless system in [10], and described preliminary results for the power line scenario in [11,12].The contribution of the present paper is about the derivation of a maximum likelihood joint detector that operates in the frequency domain in the presence of MAI and impulse noise (Section 3).The detection metric used in this receiver is conditional on the knowledge of the channel of the desired user and on the knowledge of the occurrence of the impulse noise.
From this receiver, with certain approximations, we describe in Section 4 several novel FD algorithms, in particular, a simplified FD joint detector, an FD iterative detector, and an FD interference decorrelator.They all include the capability of adapting to impulse noise and rejecting the ICI/MAI, but have different levels of performance and complexity.
We focus on the practical estimation of the parameters that are needed in the detection algorithms (Section 5).In particular, we address the FD channel estimation problem, the estimation of the correlation of the noise and the interference, and the estimation of the impulse noise occurrence.Frequency-domain channel estimation for the desired user is done with a recursive least-squares (RLS) algorithm [18].Further, channel coding is also considered and it is based on bit-interleaved convolutional codes.In this case, we show that iterative processing [19] with simple hard feedback from the decoder allows to run the parameter estimators in a data decision-driven mode which betters the overall receiver performance.
Finally, we describe in Section 6 the key features of a PL impulse-modulated modem that has been used to assess performance and whose hardware prototype is described in [4].To this respect, we propose the use of a wideband statistical channel model that allows to evaluate the system performance by capturing the ensemble of indoor PL grid topologies.

WIDEBAND SYSTEM MODEL
We consider a system where a number of nodes (users) communicate sharing the same PL network.Communication is from one node to another, such that if other nodes simultaneously access the medium, they are seen as potential interferers.The transmission scheme (Figure 1) uses wideband impulse modulation combined with DS data spreading [11].Users' multiplexing is obtained in a CDMA fashion allocating the spreading codes among the users.
The signal transmitted by user u can be written as carries log 2 M S information bits where M S is the number of PAM levels, for example, with 2-PAM b (u,i) k has alphabet {−1, 1}.T f is the symbol period (frame duration) as shown in Figure 2. C u denotes the set of code indices that are allocated to user u.Thus, user u can adapt its rate by transmitting |C u | = size{C u } information symbols per frame.
The signature code (Figure 2) comprises the weighted repetition of L ≥ 1 narrow pulses (monocycles): where c (u,i) m ∈ {−1, 1} are the codeword elements (chips), and T is the chip period.The monocycle g M (t) can be appropriately designed to shape the spectrum occupied by the transmission system.In this paper we consider the second derivative of the Gaussian pulse (Figure 3(a)).An interesting property is that its spectrum does not occupy the low frequencies where we experience higher levels of man-made background noise (Figure 3(b)).Further, the symbol energy is spread over a wideband which makes the system robust to narrowband interference and capable of exploiting the channel frequency diversity.Since the attenuation in PL channels increases with frequency, we limit the transmission bandwidth to about 50 MHz using a pulse with D = 126 nanoseconds.In typical system design, we choose the chip period T ≥ D and we further insert a guard time T g between frames to cope with the channel time dispersion (Figure 2).The frame duration has, therefore, duration T f = LT + T g .

User multiplexing
Users are multiplexed by assigning distinct codes to distinct users.In our design, the codes are defined as follows: where {c (u) 1,m } is a binary (±1) pseudorandom sequence of length L allocated to user u, while {c (i)  2,m } is the ith binary (±1) Walsh Hadamard sequence of length L [18].With this choice, each node can use all L Walsh codes, which yields a peak data rate per user equal to R = L/T f symb/s.It approaches log 2 M S /T bit/s with long codes.While the signals of a given user are orthogonal, the ones that belong to distinct transmitting nodes are not.The random code {c (u)  1,m } is used to introduce code diversity and to randomize the effect of the MAI.

Channel coding
We consider the use of bit-interleaved convolutional codes (Figure 1) [18].A block of information bits is coded, interleaved, and then modulated.Interleaving spans a packet of N frames that we refer to as superframe.This coding approach yields good performance also in the presence of impulse noise as it will be shown in the following.

Received signal
The signals that are transmitted by distinct nodes (users) propagate through distinct channels with impulse response h (u) (t).At the receiver of the desired node, we deploy a bandpass front-end filter with impulse response g FE (t) = g M (−t) that is matched to the transmit monocycle and that suppresses out-of-band noise and interference.Then, the output signal in the presence of N I other users (interferers) reads where the equivalent impulse response for user u and symbol i (equivalent signature code) is denoted as g (u,i) EQ (t) = g (u,i) * h (u) * g FE (t).It comprises the convolution of the signature code of indices (u, i) with the channel impulse response of the corresponding user, and the front-end filter.The index u = 0 denotes the desired user.Δ u denotes the time delay of user u with respect to the desired user's frame timing.I(t) is the MAI term, while η(t) denotes the additive noise.The users experience distinct channels that introduce identical maximum time dispersion.

Noise models
In this paper, we consider the presence of background colored and impulse noise [9].Several impulse noise models have been proposed in the literature.For instance, the class A-B Middleton and the two-term Gaussian models [20,21] have been used to characterize the probability density function (pdf) of the impulse noise.The temporal characteristics of asynchronous (to the main cycle) impulse noise have been modeled via Markov chains [9], or using a simple modification of the two-term mixture model which assumes that when a spike occurs, it lasts for a given amount of time [22].In the receiver algorithms that we describe, differently from other approaches, we do not use optimal metrics that are based on the assumption of a stationary white noise process with a given pdf, for example, [23,24].In our approach  (see Section 3), the receiver adapts to the impulse noise occurrence and treats it as a nonstationary colored Gaussian process.To do so, as it will be explained, we need to estimate the impulse noise occurrence and its locally stationary correlation.

Statistical channel model
The frequency-selective PL channel is often modelled according to [8], that is, we synthesize the bandpass frequency response with N P multipaths as where |g p | ≤ 1 is the transmission/reflection factor for path p, d p is the length of the path, v = c/ √ ε r with c speed of light, and ε r , dielectric constant.The parameters α 0 , α 1 , K are chosen to adapt the model to a specific network.To assess the system performance, we may use this model once the reference parameters are chosen.Instead, we propose to evaluate performance with a statistical model that allows to capture the ensemble of PL grid topologies.It is obtained by considering the parameters in (5) as random variables.Then, we generate channel realizations through realization of the random parameters.We assume the reflectors (that generate the paths) to be placed over a finite distance interval.We fix the first reflector at distance d 1 and we assume the other reflectors to be located according to a Poisson arrival process with intensity Λ[m −1 ].The reflection factors g p are assumed to be real, independent, and uniformly distributed in [−1, 1].Finally, we appropriately choose α 0 , α 1 , K to a fixed value.If we further assume K = 1, the real impulse response can be obtained in closed form.This allows to easily generate a realization for user u (corresponding to a realization of the random parameters N P , g p , d p ) as follows: We assume distinct users to experience independent channels, that is, the random parameters are independent for the channels of distinct users, which is appropriate in indoor PL channels due to the large number of path components.
The impulse responses are assumed to be constant for a given amount of time and they change for a new (randomly picked) topology.

DETECTION ALGORITHMS FOR THE IMPULSE-MODULATED SYSTEM
In this section, we derive several detection algorithms that operate in the frequency domain (FD).Their performance is compared with the baseline correlation receiver as reported in Section 6.

Baseline receiver
The baseline receiver for the impulse-modulated system is the correlation receiver.Assuming binary data symbols, it computes the correlation between the received signal y(t) and the real equivalent impulse response g (0,i) EQ (t).Thus, we obtain the decision metric z (0,i) DM (kT f )= R y(t)g (0,i) EQ (t−kT f )dt for the ith symbol that is transmitted by user 0 in the kth frame.Then, a threshold decision is made, that is, DM (kT f )}.This baseline correlation receiver is optimal when the background noise is white Gaussian and there is perfect orthogonality among the received signature codes [2].To implement the correlation receiver, we need to estimate the channel.Time-domain channel estimation [3,13,14] is complicated due to the large time dispersion of the PL channel that implies that g (0,i) EQ (t) is an involved function of the channel and the transmitted waveform.Furthermore, the correlation receiver suffers from the presence of intercode interference (ICI) and multiple-access interference (MAI) that is generated by the dispersive PL channel in the presence of multiple users.

Maximum likelihood frequency-domain receiver
To improve the performance of the baseline receiver, we propose an FD signal processing approach.To derive the receiver algorithms, we treat the noise as the sum of two Gaussian distributed processes.Similarly, the receiver treats the MAI as Gaussian.Therefore, the overall impairment process is modeled by the receiver as where w T (t) is the thermal noise, w IM (t) is the impulse noise, and I(t) is the MAI.The multiplicative process α(t) accounts for the presence or absence of impulse noise.That is, at time instant t, the random variable α(t) is a Bernoulli random variable with parameter p and alphabet {0, 1}.We refer to it as Bernoulli process.All processes are treated as independent zero-mean Gaussian, not necessarily stationary, with correlation, respectively, as Conditional on the Bernoulli process, the impairment is a Gaussian process with correlation The Gaussian approximation for the MAI improves as the number of interferers increases.The model used for the overall noise contribution allows to capture both stationary and nonstationary components of it.Further, it allows to describe impulse spikes of certain duration, power decay profile, and colored spectral components.
To proceed, we assume discrete-time processing (Figure 1) such that the received signal is sampled with period T c = T f /M, where M is the number of samples/frame, to obtain If we acquire frame synchronization with the desired user and we assume that the guard time is sufficiently long not to have interframe interference, that is, interference among the symbols of adjacent frames, we can write with y k (nT c ) = y(kMT c +nT c ), and Under the colored Gaussian impairment model in (7), and under the knowledge of both the channel and the Bernoulli process α(t) (meaning that we assume to know when the impulse noise occurs), the maximum likelihood receiver searches for the sequence of transmitted symbols b (0) ={b (0,i)  k , k ∈ Z, i∈C 0 } (belonging to the desired user) that maximizes the logarithm of the probability density function of the received signal y = {. . ., y(0), y(T c ), . . .} conditional on a given hypothetical transmitted symbol sequence, that is, log p(y | b (0) ), [18,25].It follows that we have to search for the symbol sequence that minimizes the following loglikelihood function1 where K −1 (lT c , mT c ) is the element of indices (l, m) of the matrix K −1 , that is, the inverse of the correlation matrix of the impairment vector z = [. . ., z(0), z(T c ), . . .], The elements of K are obtained by sampling (9) in the appropriate time instants, that is, As an example, if we suppose the absence of MAI, the diagonal elements of K represent the power of the thermal plus impulse noise, and they are typically large in the presence of impulse noise.
The likelihood (12) can be written as the scalar product Λ(b (0) ) = e † K −1 e = e, K −1 e if we define the vector e = [. . ., e(0), e(T c ), . . .] T , with e(lT c ) = y(lT c )− k i∈C0 b (0,i) k × g (0,i) EQ (lT c − kT f ).Since the scalar product is irrelevant to an orthonormal transform (Parseval theorem), we have that Λ(b (0) ) = Fe, FK −1 e with F being the block diagonal orthonormal matrix that has blocks all identical to the M-point discrete Fourier transform (DFT) matrix F. If we assume the guard time to be sufficiently long such that g (0,i) EQ (nT c ) has support in [0, MT c ), the vector E = Fe can be partitioned into nonoverlapping blocks equal to where are the M-element vectors that are obtained by computing the M-point DFT at frequency f n = n/(MT c ), n = 0, . . ., M − 1, of the kth vector of samples y k = [y k (0), . . ., y k ((M − 1)T c )] T , and of the ith equivalent signature code g (0,i) EQ = [g (0,i) EQ (0), . . ., g (0,i) EQ (( where we have used the identity F −1 = F † , and Therefore, from ( 16), if we denote with the FD maximum likelihood receiver searches for the sequence of data symbols b (0) (belonging to the desired user) that minimizes the log-likelihood function Remarks 1.To compute the metric (18), we need to compute the DFT of each received frame (efficiently, via fast Fourier transform, FFT), and to estimate the channel frequency response, the impulse noise occurrence, and the correlation matrix of the impairment.This is treated in Section 5.
In (18), detection is jointly performed for the desired user's symbols, while all signals belonging to the other nodes are treated as interference whose FD correlation is included in the matrix R together with the correlation of the noise.
The metric can be easily extended to include a timevariant channel.The case, for instance, of a fast time-variant channel that is static only for a duration of frame can be captured in the metric (18) by changing G (0,i)  EQ into G (0,i) EQ,k , that is, the frequency response of the channel for the kth frame.
The metric (18) provides a soft metric for the Viterbi channel decoder when convolutional codes are used.In the presence of impulse, noise some terms of ( 18) have negligible weight which corresponds to neglecting (puncturing) some of the trellis sections.
The DFT of the kth frame can be written as where K k,m is the M × M matrix with entries κ z|α ((kM + n)T c , (mM+l)T c ) for n, l = 0, . . ., M−1, and F is the M-point DFT orthonormal matrix.In (18), If R is block diagonal, for example, when we neglect the impairment correlation across frames, R −1 k,k is equal to the inverse of the kth block, that is, equal to (R k,k ) −1 .As an example, if we consider independent noise samples, when the impulse noise hits a frame, R k,k has diagonal elements that go to infinity.Then, (R k,k ) −1 has diagonal elements that go to zero.Consequently, the corresponding additive terms in the metric (18) have zero weight.

Simplified FD joint detector
To simplify the algorithm complexity, we neglect the temporal correlation of the impairment (MAI + noise) vector Z k , that is, we assume R k,m = 0 for k = m, and we denote Then, by dropping the terms that do not depend on the information symbols b (0) that are transmitted in the kth frame by the desired user, the log-likelihood function simplifies to We then make a decision on the transmitted symbols of frame k and user u = 0, as follows: Therefore, according to ( 20) and ( 21), the FD receiver operates on a frame-by-frame basis and it exploits the frequency correlation of the impairment.We assume the correlation matrix to be full rank, otherwise pseudoinverse techniques can be used.Further, note that detection is jointly performed for all symbols that are simultaneously transmitted in a frame by the desired node.To obtain (20), we need to estimate G (0,i) EQ .The attractive feature with this approach is that the matched filter frequency response at a given frequency depends only on the channel response at that frequency.This greatly simplifies the channel estimation task.By exploiting the Hermitian symmetry of G (0,i) EQ , the estimation can be carried out only over M/2 frequency bins.A further simplification is obtained by observing that the Fourier transform of the equivalent channel of the desired user has significant energy only over a small fraction of the frequency bins, and only here channel estimation can be performed.Consequently, we can reduce the rank of the correlation matrix and combine only these frequency bins in the metric (20).

Iterative FD joint detector
The complexity of the simplified FD joint detector is still high because it increases exponentially with the number of symbols that are simultaneously transmitted by the desired user in a frame (equal to the number of assigned spreading codes).A possible way to simplify complexity is to search for the maximum of the metric in an iterative fashion.That is, we first detect symbol b (0,0) k by setting to zero all other symbols in Λ(b (0) k ).Then, we detect symbol b (0,1) We detect new symbols using past decisions.Once all symbols are detected, we can rerun an iterative detection pass.This algorithm is similar in spirit to interference cancellation in CDMA systems [26] but it operates in the frequency domain.

FD full decorrelator
Another possibility is to perform detection of the symbols that belong to the desired node in a symbol-by-symbol fashion.That is, when we detect one symbol, we treat as interference both the signals of other users and the signals of the desired user that are associated to the other codes.Thus, the decision metric for the ith symbol of user 0 and frame k, can be derived similarly to (18) and (20), and it corresponds to where R (0,i) k is the correlation matrix of the impairment (MAI + ICI + noise + other codes) that is seen by the symbol associated to the ith signature code of frame k: This algorithm requires a matrix inversion for each code.When all codes are assigned, its complexity is lower than the FD joint detector when the channel and interference remain static for a long time, such that the inverse matrices can be computed once.A way to reduce further its complexity is to use a rank reduction approach, that is, we process only the frequency bins that exhibit sufficiently high energy.Finally, this algorithm becomes identical to the joint detector algorithm if the desired user deploys a single code.

PRACTICAL IMPLEMENTATION ALGORITHMS
The practical implementation of the above algorithms requires to estimate the frequency response of the desired user channel and the impairment correlation matrix.In this paper we propose to use a pilot channel (a Walsh code) as shown in Figure 4. We assume, instead, perfect frame synchronization with the desired user whose practical implementation is discussed in [27].
Assuming packet transmission of duration N frames, (super-frame), the pilot channel spans N frames, that is, it In order to better sound the channel, we propose to change the assigned Walsh code (pilot code) at each new frame (Figure 4).If we assume full-rate transmission, that is, a user is allocated to all L − 1 Walsh codes, channel sounding is done in a cyclic manner as follows.The pilot channel uses the Walsh code 0 in the first frame of the super-frame, while the remaining L − 1 codes are used for data transmission.Then, it uses code 1 in the second frame, and so on in a cyclic manner as Figure 4 shows.Distinct users deploy distinct pilot codes.
To improve the performance of the estimators, we consider the use of an iterative approach where we first take into account only the knowledge of the pilot symbols.Then, after detection/channel decoding, we rerun an estimation pass by exploiting the knowledge of all detected symbols.
We assume the user channel and the MAI vector to be stationary over the transmission of a super-frame.This holds true, for instance, assuming users with identical frame duration and spreading code length.However, we point out that during the detection stage the algorithms that we describe allow to perform adaptation to channel and MAI variations in a data decision-directed mode.
While the background noise is stationary, the impulse noise is in general not stationary such that the estimation of its correlation is not feasible.To solve this problem, we assume that conditional on its occurrence, the overall noise is locally stationary.This means that the correlation of the impulse noise can be estimated by averaging over the time windows where it is present.Clearly, the first thing to do is to locate the impulse noise.

Locating the impulse noise
To simplify the task, the estimation of the impulse noise occurrence is done on a frame-by-frame basis by making a comparison between the average received signal energy computed over a super-frame To simplify further the algorithms, in the Viterbi decoding stage, we disregard the frames of index k for which E F (k)/E SF > E th for a given threshold E th .This corresponds to puncturing the trellis sections that are associated with bits that are hit by impulse noise.This is because in correspondence to a noise spike the coded bit statistics are quite unreliable and it is better not to use them.
Finally, the adaptive estimations of the channel and the MAI-plus-background-noise correlation matrix are done neglecting the frames that are hit by impulse noise.

FD channel estimation
We implement FD channel estimation independently over the DFT output subchannels (frequency bins) using a one-tap recursive least-square (RLS) algorithm [18].We approximate the equivalent channel frequency response for the ith code of the desired user (user 0) as follows: where W (0,i) ( f n ) denotes the M-point DFT (at frequency f n ) of the pilot signature code that comprises the front-end filter.
The channel estimate H( f n ) is obtained via a one-tap RLS algorithm that uses the following error signal for the kth frame: where b TR,k , k = 0, . . ., N − 1, is the known training symbol that is transmitted in the kth frame by the desired user, H k ( f n ) is the channel estimate for the kth iteration, and mod(•, •) denotes the remainder of the integer division (recall that the Walsh code that is associated to the pilot channel is cyclically updated frame after frame).

FD estimation of the MAI-plus-noise correlation matrix
Once we have obtained an estimate of the equivalent signature code frequency response G (0,i) EQ , the MAI-plus-noise correlation matrix that is required in algorithm (20) can be estimated via time-averaging the error vector that is defined as To introduce a tradeoff between the effects of noise and the effects of the MAI, we can perform diagonal loading of the estimated correlation matrix which also assures that the correlation matrix is full rank.

FD estimation of the ICI correlation matrix
Under the assumption of independent zero-mean symbols, and MAI uncorrelated from the desired user signal, the correlation of the interference that is seen by the ith signature code of the desired user can be written as that is, as the sum of the correlation matrix of the MAI-plusnoise and the correlation matrix of the ICI experienced by the ith code of the desired user.After channel estimation, we can obtain an estimate of the ICI correlation matrix (assuming unit power data symbols) as follows: (28)

Data-aided iterative estimation with feedback from the channel decoder
The estimators can be improved by using a data decisionaided approach.That is, we can iteratively refine the estimation as data decisions are made.This turns out to be effective when the desired user transmits at high rate, and consequently the ICI is high.At the first pass, we estimate the channel and the correlation matrix assuming knowledge of only the pilot symbols.Then, in a second pass, we rerun estimation of the channel and the correlation matrix using the data decisions made at the first pass.In particular, if we assume to have detected all symbols in a super-frame of length N frames, we can rerun RLS channel estimation using the following error signal: where { b (0,c) k , c ∈ C 0 } are all detected symbols plus the pilot symbol that is transmitted in the kth frame by the desired user.To re-estimate the correlation matrix of the MAI-plusnoise, we can implement (26) using the following error vector: where G (0,c) EQ are the new channel estimates.Similarly, we can re-estimate the correlation matrix of the ICI-plus-noise according to (28) using, however, the new channel estimates.
The data decisions that are used in the above algorithms can be provided by the detector, or by the channel decoder.In the latter case, we just need to use a standard soft-input hard-output Viterbi decoder followed by re-encoding and interleaving, as Figure 1 shows.Further, to minimize the correlation with previous estimates, we can partition the superframe into two parts so that we can obtain two estimates for the channel and the correlation matrix.The former estimates that are used for data detection in the first half of the superframe are obtained running training with data decisions belonging to the second half of the super-frame, and vice versa.

System parameters
The performance of the system is assessed via simulations.We assume a frame duration T f = 4.096 microseconds and a monocycle of duration D ≈ 126 nanoseconds (Figure 3).The −20 dB bandwidth is equal to about 30 MHz.This choice has been made via experimental trials [4].The guard time is  T g = 2.048 microseconds.The monocycle (at the transmitter and receiver front-end) and the channel are simulated with a sampling period of 2 nanoseconds (63 samples per monocycle).Then, the front-end filter output signal is downsampled to obtain a period T c =16 nanoseconds.Thus, we collect M = 256 samples per frame and we use an FFT of size 256.The spreading codes have length L = 16 with a chip period T = 128 nanoseconds.The codes are obtained by the chip-by-chip product of the 16 Walsh-Hadamard codes and a random code for each user to be multiplexed.One code is reserved for training.We consider binary data symbols.Furthermore, a bit-interleaved convolutional code of rate 1/2 and memory 4 is used.The transmission rate can be adjusted according to the number of signature codes that are allocated to each user.The super-frame spans N = 540 frames (2.21 milliseconds).Consequently, the coded packet has length from a minimum of 540 bits with single code, to a maximum of 8100 coded bits with fulls-rate transmission (15 codes).A block interleaver that spans 540 frames is used.With these parameters, the uncoded transmission rate ranges from 244 kbit/s to 3.66 Mbit/s, while the net rate with coding is half of that.Clearly, it can be increased with higher level PAM or longer spreading codes, but we have made this choice to keep the simulation runtime within tolerable values.

Channel parameters
Starting from the channel model in Section 2.3, we set B 1 =0 and B 2 = 55 MHz.Having in mind an indoor environment where the number of paths is typically high, we fix for the underlying Poisson process an intensity Λ = 1/15 m −1 , that is, one reflector every 15 m in average.The first one is set at distance 30 m with g 1 = 1, while the maximum path distance is 300 m.Finally, we choose K = 1, α 0 = 10 −5 m −1 , α 1 = 10 −9 s/m.In Figure 5(a), we plot an example of channel realization while in Figure 5(b) we plot the equivalent channel response g EQ (t) = g M * h (u) * g FE (t).The equivalent response is significantly compressed because the monocycle filters out the low-frequency components that are responsible for longer channel delays according to model (5).The channel is assumed to be static for the duration of a super-frame equal to 2.21 milliseconds, and then it randomly changes.In the simulations we truncate the channel impulse responses to 4 microseconds.However, we use a guard time of only 2.048 microseconds.The performance degradation that is due to the interframe interference that is generated by the tail of the channel is negligible.

Full-rate single-user performance
In Figure 6, we report the bit-error-rate (BER) performance before channel decoding averaged over at least 1500 PL grid topologies (channel realizations) as a function of E b /N 0 , that is, the energy per bit at the front-end output, over the noise spectral density.The additive background noise is white Gaussian.We point out that we normalize the channel such that the received bit energy is constant for all channel realizations.This choice removes the fading effect which is appropriate in the PL context differently, for instance, from the mobile wireless context [18].A single full-rate user that deploys all available 16 Walsh codes is present.
In Figure 6(a), the performance with ideal channel knowledge is shown for the baseline correlation receiver (CORR RX), the FD-matched filter detector that takes into account only the colored noise (FD MF), the FD detector with single-code transmission (single code), the FD joint iterative detector (FD JD-IT) with up to 3 iterations, and finally the FD full decorrelator (FD F-DEC).All receivers significantly improve performance compared to the baseline correlation receiver.Since the front-end filter (matched to EURASIP Journal on Advances in Signal Processing  the monocycle) colors the noise, the FD MF detector that takes it into account improves performance compared to the correlation receiver.However, the severely dispersive channel introduces intercode interference, thus an error floor is visible.If we use the FD full decorrelator, we get a significant performance gain.Here, to simplify complexity, we actually combine only the frequency bins that have energy above 1% of the maximum.Near ideal performance (single-code performance bound) is achieved with the FD iterative detector with only 3 iterations for E b /N o below 9 dB.
Figure 6(b) shows that with practical channel estimation (with the method in Section 5.2), the BER performance is within 1.5 dB from the ideal curves.
In Figure 7(a), we report BER at the output of the softinput Viterbi decoder assuming ideal channel estimation, while in Figure 7(b) we assume practical channel estimation.With channel coding, the performance is improved.The curves with practical channel estimation are very close to the ideal curves.Here, curves labeled with EST.IT = 2 assume two channel estimation passes using hard feedback from the decoder (as explained in Section 5.5).With 3 iterative detec-tion passes, we are within 0.5 dB from the single-code bound that corresponds to single code transmission and ideal channel estimation.The simplified F-DEC is within 0.5 dB from the iterative detector.
In Figure 8(a), we assume the presence of impulse noise and ideal channel estimation, while in Figure 8(b) we assume practical channel estimation.We report the BER both with channel coding (Cod) and without it (Uncod).In the simulation the impulse noise is generated according to the two-term Gaussian model [21,22] whose probability density function can be defined as p η (a) = (1−ε)N(0, σ 2 1 )+εN(0, σ 2 2 ).The first term gives the zero-mean Gaussian background noise with variance σ 2  1 .The second term represents the impulse component and it has variance σ 2 2 = 100σ 2 1 .The occurrence probability is ε = 0.01.To stress the system performance, when an impulse occurs, we assume the Gaussian process with variance σ 2  2 to last for a period of time equal to 4 frames [22].The spectrum of this noise can be shaped to increase its lowfrequency components to reflect measured scenarios.However, if we do not do so, we get the worst-case scenario especially in our system where the transmission spectrum does  not occupy the low frequencies.The position of the noise spikes within a super-frame is estimated.The results show that a performance degradation is introduced compared to the AWGN case.However, if we use the proposed modified Viterbi algorithm (curves labeled with Erasure), the performance comes close to that of the single code in AWGN.As Figure 8(b) shows a second channel estimation pass with feedback from the decoder yields near-ideal performance.

Multiuser performance with full-rate users
Users multiplexing can be done by partitioning the L Walsh codes among the users.To stress the system, we have assumed all users to be at full rate, that is, they deploy all 16 Walsh-Hadamard codes.As explained in Section 2.1, a random code is also used on top of the Walsh codes.In Figure 9(a), we assume the presence of one interferer with ideal channel/correlation estimation while in Figure 9(b) we assume the presence of three interferers with practical estimation.The overall interferers power equals the desired user power.The channels are independently drawn according to the statistical model, however, they are assumed to be static for the whole duration of a super-frame.The additive background noise is white Gaussian.Users are asynchronous with a random starting phase.Figure 9 shows that although there is some performance penalty compared to single-code single-user case due to the MAI, the FD detection algorithms allow to keep such a penalty small.This can be explained by the fact that the random codes and the multiple-access channel diversity introduce some degrees of freedom that can be exploited in the frequency domain by the interference cancellation algorithms.The iterative detector with 3 iterations performs better than the simplified full decorrelator for E b /N o smaller than 9 dB.Then, an error floor appears, though it may be reduced with further iterations.The simple bit-interleaved memory-4 convolutional code allows to significantly improve the BER performance.
With practical estimation (Figure 9(b)) of the channel, the BER performance exhibits an error floor at the first estimation pass (curves labeled with EST.IT = 1).Here, we assume to first run detection and channel decoding without performing MAI cancellation.For the JD-IT scheme, we run 3 iterations.Then, for the curves labeled with EST.IT = 2 we rerun a second channel estimation pass followed by practical estimation of the MAI correlation matrix using hard feedback from the convolutional decoder.Now, the practical curves are within about 1 dB from the curves with ideal channel/correlation estimation.

CONCLUSIONS
In this paper, we have investigated the application of wideband impulse modulation combined with CDMA for PL communications.This modulation approach requires a simple baseband time-domain implementation of the transmitter and the receiver.A key aspect is that the energy of each information symbol is spread over a wideband (yielding a low-spectral density signal) contrary to narrowband or multicarrier architectures that can be seen as a bank of narrowband systems.This allows to exploit the channel frequency diversity and to be robust to narrowband interference.Fur-ther, time diversity is exploited via the CDMA signature code together with the bit-interleaved convolutional code.This yields robustness to impulse noise.
Improved performance, relatively to the baseline correlation receiver, can be obtained with a maximum likelihood FD joint detector.This receiver adapts to channel time variations and to asynchronous impulse noise, and mitigates the detrimental effect of the ICI and MAI that are generated by the time-dispersive channel and that are significant in fullrate transmission.With certain simplifications we have derived a simplified FD joint detector, an FD iterative detector, and an FD interference decorrelator.They all include the capability of rejecting the ICI/MAI but have different levels of performance and implementation complexity.In particular, the FD full decorrelator receiver has the lowest complexity especially when we process a subset of the available frequency bins.
Algorithms for the FD estimation of the channel and of the correlation of the interference have also been described.Channel estimation can be performed independently over the frequency bins with one-tap RLS adaptive filters.To improve the performance of the estimators we have used a data

Figure 1 :
Figure1: Impulse-modulated PL system with frequency-domain receiver processing and iterative decoding.

Figure 2 :
Figure 2: Frame format for user u and code i.

Figure 4 :
Figure 4: Super-frame format with pilot channel.

Figure 5 :
Figure 5: Examples of statistical channel realization (a) and equivalent impulse response (b).

Figure 6 :
Figure 6: Average BER with one full-rate user without channel coding in AWGN.

Figure 7 :
Figure 7: Average BER with one full-rate user and with channel coding in AWGN.

Figure 8 :
Figure 8: Average BER with one full-rate user and with impulse noise.
and the energy computed over a frame E F