Open Access

Orthogonal signals with jointly balanced spectra: Application to cdma transmissions

EURASIP Journal on Wireless Communications and Networking20112011:176

Received: 20 April 2011

Accepted: 21 November 2011

Published: 21 November 2011


This paper presents a technique for generating orthogonal bases of signals with jointly optimized spectra, in the sense that they are made as close as possible. To this end, we propose a new criterion, the minimization of which leads to signals with close energy inside a set of prescribed subbands. Starting with the case of a single subband, we illustrate it by building orthogonal signals with maximum energy concentration in time and in frequency, with the same energy rate outside a fixed frequency interval or a fixed time interval, by resorting to Slepian sequences or Slepian functions, respectively. Then, we present spectrum balancing in a set of frequency intervals. We apply this method to Slepian sequences and Slepian functions, as well as to Walsh-Hadamard codes. On these examples, we point out a number of nice properties of the so-built orthogonal families that are of interest for signaling applications.

PACS: signal processing techniques and tools; modulation techniques


orthogonal signaling bases spectrum balancing Slepian sequences Slepian functions Walsh-Hadamard scrambling CDMA UWB

1 Introduction

A few studies have been carried out to build orthogonal signals with flat spectrum. Several of these studies are based on invariance property of Hadamard matrices w.r.t. orthogonal transforms.

More specifically, approaches presented in [1] and [2] account for the fact that when collecting orthogonal codes represented by column vectors in a matrix, then any permutation of the lines of the matrix yields columns that represent a new family of orthogonal codes. In [1], this principle is applied to Walsh codes and authors mention the fact that new codes spectra may be more flat than initial Walsh codes. However, permutations are performed randomly, and no criterion is supplied to optimize spectrum flatness. In fact, flatness will occur randomly in generated codes. In [2], the same approach is considered, but spectrum flatness is achieved by changing codes at each data transmission by considering a new random permutation at each time. Thus, flatness is not achieved by each code but only as a mean spectrum property among codes.

Alternatively, for controlling the spectra of the codes, one can generate white noise vectors and then apply amplitude distortion in the Fourier domain to achieve desired spectra. Finally, orthonormality of the codes is achieved by means of a singular value decomposition [3]. Another technique that enables better control of spectral shape consists in splitting code sequences spectra in a set of subbands of interest. In each subband, the Fourier transforms of the sequences are chosen as orthogonal Walsh codes with fixed amplitudes [4]. Proceeding so in each subband yields orthogonal signals in the Fourier domain. Thanks to unitarity of the Fourier transform, orthogonality of sequences is also achieved in the time domain. Note, however, that with these approaches the shape of the signal in the time domain is not controlled.

In a CDMA (Code Division Multiple Access) context [5], users transmit simultaneously and inside the same frequency band. They are distinguished thanks to distinct signaling codes. Often, Walsh codes are considered for multiusers spread spectrum communications. Walsh codes of given length show very variable spectra, and thus, they fail to achieve an homogeneous robustness of all users signaling against multi-path fading that occurs during transmission. Classically, users signals are whitened through the use of a scrambling sequence that consists of a sequence with long period that is multiplied, chip by chip, with users' spread data [6]. Scrambling also enables neighboring basestations insulation in mobile communication networks.

In radiolinks, synchronization of scrambling sequences between basestations and mobiles is not much a problem. Thus, in UMTS (Universal Mobile Telecommunications System) [6], the transmitted chip rate is 3.84Mchips/s and a distance of 1 km represents a propagation delay equivalent to (103/3 × 108) × 3.84 × 106 ≈ 13 chips. This shows that scrambling code synchronization search, which is made necessary by transmitter and receiver relative position uncertainty, is not much complicated. On the contrary, in an underwater acoustic CDMA communication, with typical underwater chip rate of only 3.84 kchips/s for communications ranging to a few kilometers [7], a 1 km difference in the distance between both ends of the acoustic link results in a propagation delay equivalent to (103/1.6 × 103) × 3.84 × 103 = 2, 400 chips. Thus, it is clear that there are situations where scrambling sequence synchronization can be difficult. In such difficult situations, instead of considering complex scrambling code synchronization, we rather propose to build orthogonal families of codes made of spreading sequences with flat spectra inside the sequences bandwidth. In addition, we would like to be able to build large sets of such signaling bases, for using distinct ones in neighboring basestations and/or to be able to change codes during the communications of a given basestation, for instance for robustness against communication interception.

In order to build such codes, starting from a given othonormal code family, we propose to transform it by means of an orthogonal transform. This orthogonal transform is built by minimizing jointly the mean squared errors among energies of all transformed sequences inside fixed subbands that form a partition of the whole sequences bandwidth.

This technique enables building arbitrarily large number of bases of spectrally balanced orthogonal codes. This is achieved by changing the initialization of the algorithm that we describe in the paper. In particular, distinct bases can be considered for neighboring bases stations in replacement of scrambling sequences. In addition, for a given basestation, it is also possible to change the codes family during transmission. Finally, basestations insulation, spectrum whitness of transmitted signals and data protection that are achieved by scrambling can also be obtained through balanced sequences generation.

To further motivate our search for chip-shaped CDMA sequences rather than more general waveforms, let us recall that CDMA systems employ chip-shaped sequences and that this structure has given rise to specific processing techniques. For instance, in downlink CDMA systems, the emitted signal is made of multiuser chip symbols shaped by the chip waveform at the transmitter output. At the receiver side, chip rate MMSE (Minimum Mean Square Error) equalizers are an efficient tool for downlink CDMA receivers that exploit this data structure [8]. Clearly, chip level equalization cannot be considered for continuously varying signalings such as those considered in [3] and [4]. This motivates our search for chip-shaped sequences.

In this paper, we shall consider balancing of CDMA sequences. Without loss of generality, balancing of CDMA codes will be studied for Walsh codes. We shall see that the corresponding balanced sequences exhibit several nice suitable properties such as low autocorrelation and cross-correlation peaks and good multiuser detection BER performance in asynchronous transmissions.

In order to introduce spectrum balancing, we first study balancing in a single subband and propose an algorithm to perform this task. We use it to supply solutions to the problems of building orthogonal bases of finite time signals with maximally concentrated energy in a frequency bandwidth and its dual that consists in building bases of signals with prescribed bandwidth and maximally concentrated energy in a time interval. This can be achieved by applying the algorithm to Slepian sequences and PSWFs (Prolate Spheroidal Wave Functions), respectively.

Slepian sequences and PSWFs [9, 10] have been used for long in classical areas as varied as spectrum estimation [11] and constantly find applications to new areas such as semiconductor simulation [12] or compressive sensing [13]. In communications, they have been used in particular for subcarriers signaling in OQAM and OFDM digital modulations [14, 15] or channel modeling and estimation [16, 17]. Spectral balancing of Slepian sequences or PSWFs could be of potential interest for some of these areas. It is also of interest for UWB (Ultra Wide Band) communications. Indeed, in UWB, M-ary pulse shape modulation has been proposed and it can be achieved with orthogonal signals such as PSWFs [18]. However, the spectra of Slepian sequences or PSWFs are slightly shifted upward as the sequence order increases. Instead, spectrally balanced pulses have spectra that better occupy the whole bandwidth, thus being more robust against multipath. For this reason, after introducing the spectrum balancing algorithm over a set of frequency intervals, we shall apply it to Slepian sequences and PSWFs balancing.

The remainder of the paper is organized as follows. In Section 2, we show how energies of an orthogonal family of signals can be made equal in a prescribed frequency interval thanks to an orthogonal matrix transform, preserving thus orthogonality of transformed signals. In section 3, we extend this method through the minimization of a criterion intended to jointly equalize energies of signals in a set of frequency subin-tervals. We propose an iterative minimizing algorithm to perform this task, and we apply it to Slepian sequences and PSWFs balancing. In section 4, we consider Walsh code balancing. Simulations show that spectrum whitening achieved by balancing yields good correlation properties of balanced sequences, resulting thus in improved performance of multiuser asynchronous communications.

2 Energy balancing in one frequency band

In this section, we introduce an orthogonal transform that enables transforming an or-thonormal family of signals into another orthonormal family, the elements of which all have the same energy in a prescribed frequency interval. We shall denote by v1, ..., v L an initial family of sampled orthonormal signals, with v n = (vn 1, ..., v nN ) T . The energy of v n inside a given frequency interval, say B = [f1, f2], is given by
E B ( v n ) = f 1 f 2 a = 1 N v n a e - 2 i π f a 2 d f = a , b = 1 N v n a v n b * e i π ( f 1 + f 2 ) ( b - a ) × sin π ( f 2 - f 1 ) ( b - a ) π ( b - a ) , = a , b = 1 N v n a v n b * S b a B ,

where S B is the matrix with general term S b a B = e i π ( f 1 + f 2 ) ( b - a ) × sin π ( f 2 - f 1 ) ( b - a ) π ( b - a ) . .

In this section, for the sake of simplicity, we consider a frequency interval B of the form B = [-F, F] and the matrix S B will simply be denoted by S. Then,
S a b = sin ( 2 π F ( b - a ) ) π ( b - a ) .

Letting V = [v1, ..., v L ], it comes that the energy of v k inside [-F, F] is the k th diagonal entry of V H SV. Now, we whish to transform V = [v1, ..., v L ] into W = [w1, ..., w L ] such that the {w k }k = 1,Lare orthonormal vectors with the same energy inside [-F, F]. This transformation can be expressed as W = VU, where U is some orthogonal matrix of size L. The equal energy constraint amounts to the fact that all diagonal entries of M = U H (V H SV)U must be equal. Letting d1, ..., d L denote the diagonal entries of V H SV, it is clear that the diagonal entries of U H (V H SV)U must all be equal to d ̄ = L - 1 k = 1 , L d k since orthonormal base changes do not affect the trace.

2.1 Energy balancing algorithm

Finding in a direct way U such that M has equal diagonal entries is unfeasible. Thus, we resort to an iterative procedure to equalize by pairs diagonal entries of M. This is achieved by updating U by means of Givens rotations [19]. In the following, we shall note D = diag(d1, ..., d L ) and R(a,b)(θ) will represent the Givens rotation with angle θ in the subspace of dimension 2 with entry (a, b).

Table 1 describes the procedure for eigenvectors balancing. In Table 1, we have set ε 1 and the angle θ is chosen so as to ensure that entries (a, a) and (b, b) are equal after matrix updating MR(a,b)(θ) × M × R(a,b)(θ) T . So, by iteratively applying this averaging among diagonal entry pairs, matrix M converges to a matrix with all diagonal terms equal to d ̄ .
Table 1

Energy balancing algorithm

- Set U = U0, with U 0 T U 0 = I ,

M = U T DU

- Iterations:

while i = 1 , L M i i - d ̄ ε ,

   loop a = 1 → L - 1

      loop b = a + 1 → L

          θ = 1 2 arctan M a a - M b b M a a + M b b

         M = R(a,b)(θ)M R(a,b)(-θ)

         U = U R(a,b)(-θ)

      end loop b

   and loop a

end while

W = VU,

By changing the initialization U0 of the matrix U in the algorithm, distinct matrices W are obtained. Thus, there are infinitely many distinct orthonormal families with equal energy inside [-F, F] in the space spanned by the columns of V, obtained by changing U0.

The two following results establish the convergence of the algorithm in Table 1 toward an orthonormal balanced basis. Proofs are supplied in the Appendix.

Theorem 1 Iterations of the balancing algorithm in Table1lead to a sequence of matrices M(1), M(2), .... The diagonal part of these matrices converges to d ̄ I , where I is the identity matrix.

Let Δ(M) denote the diagonal matrix with i th diagonal entry [Δ(M)] ii = M ii , where [P] ab denotes the entry (a, b) of matrix P. Then, we have

Theorem 2 Whence the diagonal part of M is equal to d ̄ I , the transformed vectors W = [W1, ..., W L ] satisfy the orthonormality property W T W = I and the S-norm property
Δ ( W T S W ) = d ̄ I .

Note that that the proofs of theorems 1 and 2 show that convergence is achieved regardless U0. At convergence, all signals in the columns of W = VU have the same amount of energy inside [-F, F] since these are given by the diagonal entries of M = W T SW. Furthermore, we have checked on the examples in the next subsection that convergence is fast for any choice of U0.

2.2 Examples

2.2.1 Slepian sequences

For a given time interval, say [0, T], regularly sampled with N samples, and a fixed bandwidth [-F, F], one can ensure that there exists a basis with d sequences of length N that concentrate most of their energy inside [-F, F], provided Td/(2F). The elements of this basis are named spheroidal wave sequences or Slepian sequences [10].

Slepian sequences of length N are the eigenvectors of the matrix S of size N with general term S m n = sin ( 2 π F ( m - n ) ) π ( m - n ) . From earlier discussion, it is clear that the eigenvalues of S correspond to the percentage of the energy of the corresponding eigenvectors inside interval [-F, F]. These eigenvectors can be calculated accurately by means of a procedure proposed in [20]. Note that numerically this is not a straightforward task since most eigenvalues are either very close to zero or to one. More precisely, it is well-known that the 2FT largest eigenvalues are close to one and that others show fast decay to zero.

In the particular case of Slepian sequences, Theorem 2 leads to
d ̄ = W i T S W i = - F F k [ W i ] k e - 2 i π k f 2 d f

that represents the value of the energy of the sequence W i lying inside the frequency interval [-F, F]. Thus, all the (W i )i = 1,Lhave energy outside [-F, F] equal to 1 - d ̄ .

Building 2FT sequences with the same (small) amount of energy outside [-F, F] can be of interest for applications. For instance, this could be interesting for multiuser communications on narrow frequency subbands.

Figure 1 shows balancing of Slepian sequences. We are looking for sequences that generate the space of sequences of duration T = 1, with more than 90% of their energy inside bandwidth [-F, F], with F = 2. Signals are sampled with 500 time samples over [0, 1]. If we look at the first four Slepian sequences, we can check that the proportion of their energy outside [-F, F] is, respectively, (0.00, 0.00, 0.04, 0.28). These sequences are plotted on the first line of Figure 1 and the corresponding spectra on the second line. Clearly, the energies of the sequences tend to be located in continguous intervals with increasing center frequency. This explains why the last sequences have more outband energy. The energy balancing procedure leads to sequences presented on the third line of Figure 1. The corresponding spectra are on the fourth line of Figure 1, and their outband energy are all equal to 0.08 = (0.00+0.00+0.04+0.28)/4.
Figure 1

Lines 1 and 2 : first 4 Slepian sequences and corresponding spectra. Lines 3 and 4: energy-balanced sequences and corresponding spectra.

As we can see it, although outband energies are equal, inband spectra remain very different and we will address spectrum equalization of sequences in Section 3.

To study convergence speed, we considered 103 Monte Carlo simulations where U0 is chosen randomly among orthogonal matrices with uniform distribution. More details about the uniform distribution on orthogonal matrices and how to sample from it can be found in [21]. The value of the stopping parameter has been set to ε = 10-10. In average, convergence is achieved after 8 iterations with best and worst cases of 5 and 10 iterations, respectively. Thus, convergence is very fast when balancing is performed with a single-frequency band for any choice of U0.

2.2.2 PSWFs time energy balancing

Alternatively, one may look for signaling functions basis that concentrate all their energy within frequency interval [-F, F] and with most of their energy concentrated in a time interval of length T. The solution of this problem is supplied by Slepians's prolate spheroidal wave functions (PSWFs) basis [9] that consists in a family of orthogonal functions that are solutions of the following integral equation
- T 2 T 2 sin ( π F ( t - t ) ) π ( t - t ) v ( t ) d t = λ v ( t ) .
Since v(t) is bandlimited with spectrum inside [-F, F], we can approximate solutions v(t) by their truncated Shannon representation [22]:
v ( t ) = k = - N 2 N 2 - 1 v n sin ( 2 π F ( t - n ) ) π ( t - n ) .
Then, looking for maximum energy concentration property for v(t) in the time domain amounts to maximizing
ρ = - T T | v ( t ) | 2 d t - | v ( t ) | 2 d t .
In [22], maximization of ρ is solved by replacing v(t) by its approximation in Equation (5), leading thus to
ρ v T S v ̃ v T v ,
where v = [v-N/2, ..., vN/2-1] T and the matrix S ̃ is defined by
S ̃ a b = - T 2 T 2 sin ( 2 π F ( t - a ) ) π ( t - a ) × sin ( 2 π F ( t - b ) ) π ( t - b ) d t .

Thus, successive PSFWs are supplied by successive eigenvectors of matrix S ̃ , starting with the one with largest eigenvalue that represents the PSFW with maximum energy concentration inside [-T/2, T/2].

Hence, looking for energy-balanced PSWFs, that is, PSWFs linear combinations that yield an orthonormal family of functions with the same minimum energy ratio 1 -ρ outside time interval [-T/2, T/2], can be reformulated from our energy balancing framework by replacing matrix S by S ̃ .

Thus, we see that the algorithm in Table 1 can be adapted to cope with several problems by changing the scalar product matrix S. Note in particular that convergence theorems 1 and 2 are valid regardless the choice of the scalar product S.

Let us consider the case where T = 1 and F = 2 again and a maximum amount of energy authorized outside [-T/2, T/2] equal to 0.15. Then, time energy outage equal to (0.00, 0.00, 0.06, 0.38) for the first four PSWFs, while energy balancing leads to similar outage equal to 0.11 for the four balanced PSWFs. Figure 2 illustrates outage energy mitigation outside [-T/2, T/2] in the time domain among balanced PSWFs.
Figure 2

Lines 1 and 2 : first 4 PSFWs and corresponding spectra. Lines 3 and 4: energy-balanced functions in [-T/2, T/2]. Vertical lines represent time interval [-T/2,T/2] limits.

Here again, convergence is fast: for ε = 10-10 and 103 Monte Carlo simulations, where U0 is chosen randomly among orthogonal matrices with uniform distribution, convergence is achieved after 15 iterations in average. Best and worst convergence cases are obtained for 13 and 16 iterations, respectively.

3 Spectrum balancing of an orthonormal family of signals

Here above, we have introduced an iterative technique for energy balancing inside a prescribed bandwidth. With a view to get orthogonal families of signals with similar spectra in the space spanned by vectors {v k }k = 1,L, we derive an iterative technique to jointly equalize energies of these vectors in a set of frequency intervals, extending thus the technique proposed in the previous section.

Let us now introduce some notations. Considering Equation (1), we define a set of matrices {S k }k = 0,K-1associated with a partition {B k }k = 0,K-1of the frequency support of signals. For real valued signals, spectra are even functions, letting [-KF, KF] denote the bandwidth of signals v1, ..., v L , we can take frequency sub-bands in the form
B k = [ ( - k - 1 ) F , ( - k + 1 ) F ] [ ( k - 1 ) F , ( k + 1 ) F ] .
Then, corresponding matrices S k are written as
S a b 0 = sin 2 π F ( a - b ) π ( a - b ) ,
S a b k = 2 cos ( 2 π k F ( a - b ) ) × sin 2 π F ( a - b ) π ( a - b ) , for k = 1 , . . . , K - 1 ,

where S a b k is a compact form for [S k ] ab . Although extension to the complex case is straightforward, in this paper, we restrict ourself to the case of real valued signals.

3.1 Balancing algorithm

As before, U is the orthogonal transform applied to the signals matrix V = [v1, ..., v L ]. We shall note M k = U T (V T S k V)U, for k = 0, ..., K - 1. Diagonal entries of M k represent the energies of the signals given by the columns of the matrix VU that lie inside B k . Our goal is to build a matrix U such that the diagonal parts of all matrices (M k )k = 0,...,k-1become as close as possible. As above, this will be achieved by successive updatings of U by means of Givens rotations. The update UUR ab (θ) T of U amounts to the update M k R ab (θ)M k R ab (θ) T of M k . In order to jointly equalize diagonal terms of M k , we can choose θ such that it is a solution of the following minimization problem:
θ = arg min ϕ k = 0 K 1 | [ R a b ( ϕ ) T M k R a b ( ϕ ) ] a a [ R a b ( ϕ ) T M k R a b ( ϕ ) ] b b | 2 ,
the minimum of which is of the form
θ = 1 4 arctan ( 2 k = 0 K 1 ( M a b K ) + M b a k ) ( M a a k M b b k ) k = 0 K 1 ( M a b k + M b a k ) 2 ( M a a k M b b k ) 2 ) + n π 4 ,
where n = 0, 1, 2 or 3. The optimum value for n can be obtained by checking which of the four possible values 0, 1, 2 or 3 achieves the minimum. In practice, it appears that after a few rotation updates the optimum n is always 0, because θ becomes small. Then, it can be checked that taking n = 0 in any iteration of the algorithm does not modify significantly its behavior while making it work faster. In this case, we can note that for K = 1, we get
θ = 1 2 arctan M a a 0 - M b b 0 M a a 0 + M b b 0
, that is, the value found in Table 1 for a single interval. Indeed, letting α = M a a 0 - M b b 0 , β = M a a 0 + M b b 0 and 2θ1 = arctan(α/β), Equation (12) yields
θ = 1 4 arctan 2 α β α 2 - β 2 = 1 4 arctan sin ( 4 θ 1 ) cos ( 4 θ 1 ) = θ 1 .

On another hand, since the term ( M a a k - M b b k ) 2 in the denominator of the arctan(.) function in Equation (12) could be a source of unstability and should become close to zero at convergence ( M a a k M b b k ) , we set it to 0 from the beginning of the algorithm.

The spectrum balancing algorithm that we obtain is summarized in Table 2. One can observe that this algorithm resorts to ideas quite similar as those developed for joint diagonalization of matrices [23, 24]. As suggested above, the algorithm is implemented with n (n {0, 1, 2, 3}) set to 0 in each loop.
Table 2

Spectrum balancing algorithm

- Set U = U0 with U 0 T U 0 = I ,

Mk = UT (V T Sk V) U, M k - = 0 ( k = 0 , . . . , K - 1 ) and M = [ M 0 , . . . , M K - 1 ] , M - = [ M 0 - , . . . , M K - 1 - ]

- Iterations:

while || M - M- || ≥ ε, (ε 1)

    M k - = M k , ( k = 0 , . . . , K - 1 )

   loop a = 1 → L - 1

      loop b = a + 1 → L

          θ = 1 4 arctan 2 k = 0 K - 1 ( M a b k + M b a k ) ( M a a k - M b b k ) k = 0 K - 1 ( M a b k + M b a k ) 2

         M k = R(a,b)(θ) M k R(a,b)(-θ), (k = 0,..., K - 1)

         U = U R(a,b), (-θ)

      end loop b

   and loop a

end while

W = VU

3.2 Examples

In the previous section, we have considered energy balancing of Slepian sequences. We have checked in Figure 1 that Slepian sequences tend to have spectra concentrated in distinct contiguous subbands of [-F, F] and that after energy balancing over interval [-F, F] with the algorithm in Table 1, spectra remain very dissimilar. Now, we apply the spectrum balancing algorithm in Table 2 with energy balancing inside a partition of [-F, F] into K = 16 subbands and again F = 2. Results are presented in Figure 3. It appears that with spectrum balancing, spectra are now quite similar. Now considering T = 1 and F = 4, there are 8 sequences that concentrate most of their energy inside [-F, F]. Figure 4 shows the corresponding spectra. In both cases, the energy is better spread inside [-F, F] after balancing.
Figure 3

Spectra of spectrally balanced first 4 Slepian sequences over K = 16 subintervals. Dotted line represents the maximum inband frequency F = 2.

Figure 4

Spectra of spectrally balanced first 8 Slepian sequences over K = 16 subintervals. Dotted line represents the maximum inband frequency F = 4.

In Figure 5, spectrum balancing of PSWFs is performed for T = 1 and F = 4. We can see that spectrum balancing with K = 16 subbands yields very smooth spectra inside the bandwidth.
Figure 5

Spectrum balancing of first 8 PSFWs over K = 16 frequency subintervals. Dotted lines represent the limits of time interval [-T/2, T/2]. a PSWFs, b corresponding spectra, c spectrally balanced PSWFs, d spectra of balanced PSWFs.

As already mentioned in the introduction, we can check in Figure 5 that Slepian sequences or PSWFs are slightly shifted upward as order increases while spectrally balanced sequences have spectra that better occupy the whole bandwidth.

More generally, spectrum balancing could be considered for other UWB orthogonal pulses, such as Gaussian, Hermite or Legendre functions, where elements of the family of increasing order tend to have spectra that are centered at increasing frequencies [25].

Achieving spectrum flattening is an interesting property for combatting multipath as we shall see in the next section for another kind of waveform (more specifically balanced Walsh sequences).

3.3 Convergence

When one single subband is considered for spectrum balancing (K = 1), which amounts to search for an orthogonal basis of signals that all have the same part of their energy outband, we have seen in Section 2 that the convergence of the algorithm can be proved and that it is fast in practice. When several frequency intervals are considered (K > 1), convergence issue is more involved and will be considered in future works. However, simulations suggest that between two successive iterations, say n and n + 1, of the main loop of the algorithm, the norm error of matrix M = M(n)decreases to zero at exponential rate:
| | M ( n + 1 ) - M ( n ) | | C e - n β ,

where C and β are positive constants. A straightforward consequence of Equation (15) is that the sequence of matrix (M(n))n≥0converges and convergence is achieved at geometric rate.

This is illustrated in Figures 6 and 7 where 10 plots of the convergence of the evolution of || M(n+1)- M(n)|| are presented for 2FT = 8 and 32, respectively. In both cases the number of subbands is set equal to 2FT. We can check that initial convergence depends on U0. When the criterion becomes small enough, convergence occurs at a geometric rate, but it somewhat varies among experiments. It seems that there is no simple way to boost convergence thanks to a convenient choice of the matrix U0. In particular, we can see that between two experiments initial convergence can be faster, while the asymptotic geometric convergence rate can be smaller. The problem of boosting initial convergence is beyond the scope of this paper.
Figure 6

Convergence of || M ( n +1) -- M ( n ) || for 2 FT = 8 and K = 8 subbands.

Figure 7

Convergence of || M ( n +1) -- M ( n ) || for 2 FT = 32 and K = 32 subbands.

4 Walsh codes balancing

As discussed in the introduction, in a CDMA context we are looking for signals that are constant over chip intervals, a natural approach is to search them in the space spanned by the orthogonal Walsh-Hadamard basis. Then, if the sampled signals of this basis are given columnwise in a matrix form, any new orthogonal basis of the vector space is achieved by applying an orthogonal matrix transform on the right-hand side. Note that instead, references [1] and [2] in the introduction apply matrix permutations on the left-hand side of the matrix of code sequences.

As in the case of continuous signals discussed in the examples of Sections 2 and 3, the algorithm works by starting from an orthonogonal basis and successively transform it into new orthonogonal bases of the same vector space. Of course, some specific properties of the initial family such as constant absolute amplitude in the case of Walsh codes are not preserved by orthogonal transforms, while others such as the chip structure of codes (signal constant over chip durations) are preserved because this property is shared by all signals in the vector space spanned by initial Walsh codes.

4.1 Spectral balancing of Walsh sequences

We illustrate Walsh codes spectral balancing with lengths 8 and 32 in Figures 8, 9 and 10, respectively. In Figure 8, only one subband is used and poor results are achieved in terms of spectrum balancing, although results are better than with the initial Walsh family. In Figures 9 and 10, spectrum balancing is searched over K = 8 and K = 32 subbands, respectively, and codes of lengths 8 and 32 chips, respectively. In Figure 10, only 8 randomly chosen codes are plotted among the 32 codes of length 32. Code vectors are sampled with 8 samples per chip. Figure 11 has been obtained when balancing Walsh codes of length 256 over K = 256 frequency intervals, showing thus that long spreading sequences can be produced by the algorithm.
Figure 8

a Walsh codes of length 8, b corresponding spectra, c spectrally balanced codes, d spectra of balanced codes, for K = 1.

Figure 9

a Walsh codes of length 8, b corresponding spectra, c spectrally balanced codes, d spectra of balanced codes, for K = 8.

Figure 10

a Walsh codes of length 32, b corresponding spectra, c spectrally balanced codes, d spectra of balanced codes.

Figure 11

a spectra of a few Walsh codes of length 256, b spectrally balanced codes, c spectra of balanced codes.

4.2 Convergence and balanced codes properties

4.2.1 convergence

In Figures 12 and 13, convergence of balanced codes with lengths 8 and 32, repectively, has been plotted for 10 experiments with random initialization of U0. We observe that convergence in Figures 12 and 13 is very similar to the convergence obtained for PSWFs balancing in Figures 6 and 7, respectively. Thus, the discussion about convergence of PSWFs balancing presented in Section 3.3 could be reproduced here with the same words.
Figure 12

Convergence speed for 10 experiments of Walsh codes balancing (codes with N = 8 chips).

Figure 13

Convergence speed for 10 experiments of Walsh codes balancing (codes with N = 32 chips).

For codes of length 256, convergence becomes very slow. This is because when using K subbands for codes of K chips, the main loop of the algorithm requires about K3 operations. However, we checked that stopping the algorithm after about 100 iterations already yields quite good mixing in terms of spectral shapes (see Figure 11) and, as we shall see it in section 4.3, BER performance.

4.2.2 Amplitude

With a view to practical use of spectrally balanced codes, one may wonder whether the maximum amplitude of balanced codes remains small enough. Indeed, orthogonal transformation of binary codes preserves energy but not amplitude. Based on a Gaussian approximation of the amplitude of combined chips in the balancing procedure, together with the orthogonal property of the transform, the distribution of the maximum of the chips amplitude among N transformed orthogonal codes of length N is given by
p N ( z ) N 2 2 π e - z 2 2 erf z 2 N 2 - 1 .
This stems from the fact that chips in matrix W approximately have an N ( 0 , 1 ) distribution. Here, we have assumed initial binary codes with amplitude equal to 1. The values of p N (z) are drawn in Figure 14 for codes of length N = 2 k and k = 3,4,...,10. We see that these maximum amplitudes grow quite slowly as sequences length increases. In addition, for short sequences, the Gaussian assumption is not well satisfied and we have checked that the approximation is very pessimistic.
Figure 14

Distribution of the maxima of spectrally balanced sequences with lengths N = 8, 16,..., 1024 ( curves ) and mean values of the distributions ( straight lines ).

We have just seen that the amplitudes of balanced codes can have continuous values. Thus, using the proposed codes instead of classical binary codes such as Walsh codes results in slight increase of complexity of the system, mainly at the receiver side where sequence matched filtering will involve multiplications instead of sign shifts of sampled received signals. Although chip amplitude of balanced codes can have continuous values, in practical systems they should be rounded to remain in some discrete alphabet and thus facilitate digital processing. We have checked that 8 bits encoding of the chips of balanced codes is enough to avoid BER performance degradation for codes of length 32 and codes of length 256. In other words, rounded balanced codes yield no noticeable difference in the BER curves of balanced codes, as it will be shown in section 4.3.

4.2.3 Correlation and cross-correlation of sequences

Correlation and cross-correlation properties of codes dictate the performance of a multiuser communication system at high SNR [26]. For simple receivers based on single-user matched filter, correlation properties are important in particular for receiver synchronization, while in asynchronous systems, cross-correlations of codes limits performance. Thus, we are going to consider these properties and compare them between Walsh codes and balanced codes.

Balanced sequences appear to have nice correlation properties. This is illustrated in Figure 15. The two first subfigures on the first line in Figure 15 show superimposed correlation functions of the 32 Walsh and balanced codes, respectively. Clearly, balanced codes have good autocorrelation properties. In particular, around the main peak correlation coefficients are close to 0. This is an interesting property for CDMA communications, for instance for multipath detection and estimation, but also for using such codes in applications such as synchronization or localization with radars or po-sitionning systems [27].
Figure 15

Superimposed correlations ( up ) and cross-correlations ( down ) of Walsh, balanced and brute force codes.

Since Walsh codes are not considered as good codes in terms of correlation and cross-correlation, we also made a comparison with brute force codes considered in [28]. These codes are obtained by means of an exhaustive search algorithm among codes with good cross-correlation properties. Figure 15 shows that these codes achieve quite poor correlation performance, even when removing the constant code autocorrelation (the one with triangular shape).

As far as cross-correlations are considered, the second line in Figure 15 shows that both balanced and brute force codes achieve good performance, unlike Walsh codes.

Finally, above results advocate in favor of multilevel balanced codes that can achieve higher correlation performance, at the expense of relaxation of the constant amplitude property.

4.3 Asynchronous transmission

Let us now consider an asynchronous transmissions with the above families of codes and simple matched filter detection. Transmission on an AWGN (additive white Gaussian noise) in the presence of 2 users is presented for Walsh, balanced and brute force codes in Figure 16. Clearly, balanced and brute force codes achieve similar performance, while Walsh codes perform poorly at high SNR. The stars in Figure 16 represent the performance lower bound for matched filter detectors under the standard Gaussian asumption upon interference [26], while the lower curve is the single-user performance bound. We see that both balanced and brute force codes reach the bound, proving thus their optimality in terms of level of interference. Another example is supplied in Figure 17 for codes of lengths 256 and 32 users. For this code length, brute force codes are not available in [28]. Balanced codes still show performance closer to the interference lower bound than Walsh codes.
Figure 16

Asynchronous transmission with Walsh, balanced and brute force codes. Code length = 32, 2 users. Lower curve single-user BER. Stars 2 users interference lower bound.

Figure 17

Asynchronous transmission with Walsh and balanced codes. Code length = 256, 32 users. Lower curve single-user BER. Stars 32 users interference lower bound.

Of course, for a fixed spreading code length, the matched filter receiver performs worse as the number of interfering users increases and decorrelator or MMSE detectors would lead to improved BER curves [5]. However, here we only considered the simpler matched filter receiver to focus on code properties rather than on receiver performance.

5 Conclusion

We have proposed a general purpose procedure for deriving spectrally balanced bases of signals in a given signal subspace, approximated as a subspace of N . As examples, we have shown how this procedure enables building spectrally balanced families of signals with maximum time and spectral concentration from Slepian sequences and Slepian functions. We have also shown how it is possible to build efficient signalization sequences for CDMA multiuser communications that show performance similar in terms of BER to brute force optimized binary sequences. Large numbers of such families of codes can be built thanks to the relaxation upon the constant amplitude constraint, but codes maximum amplitude remains acceptable for most applications. Clearly, using balanced signals in applications such as synchronization or for designing radar waveforms is promising, due in particular to nice correlation properties and the wide variety of waveforms that can be generated.


Proof of theorem 1

Let us define J by J ( M ) = | | Δ ( M ) - d ̄ I | | 2 . We remark that
J ( M ) = i M i i - L - 1 j M j j 2 = L - 2 i j [ ( M i i - M j j ) 2 - 2 M i i M j j ] = L - 2 i j ( M i i - M j j ) 2 - 2 d ̄ 2 .
Let M' a matrix obtained by applying to M. The Givens rotation R(a,b)(θ) that transforms M aa and M bb into (M aa + M bb )/2. Since Δ(M') only differs from Δ(M) along diagonal terms with entries (a, a) and (b, b), it comes that
J ( M ) J ( M ) = 1 L 2 j a , b [ ( M a a M j j ) 2 + ( M b b M j j ) 2 ( M a a M j j ) 2 ( M b b M j j ) 2 ] 2 L 2 ( M a a M b b ) 2 = 1 L 2 j a , b [ 2 ( M a a M j j 2 + M b b M j j 2 ) 2 ( M a a M j j ) 2 ( M b b M j j ) 2 ] 2 L 2 ( M a a M b b ) 2 = 1 L 2 j a , b [ 1 2 ( M a a M j j ) 2 + 1 2 ( M b b M j j ) 2 + ( M a a M j j ) ( M b b M j j ) ] 2 L 2 ( M a a M b b ) 2 = 1 2 L 2 j a , b ( M a a M b b ) 2 2 L 2 ( M a a M b b ) 2 = ( L + 2 2 L 2 ( M a a M b b ) 2 0.
So, the sequence (J(M(k)))k≥0decreases along iterations. In addition, the J(M(k)) are lower bounded by 0. Thus, this sequence converges. If we had limk→∞J(M(k)) = α > 0, then for any ε > 0, there would exist k0 such that for k > k0, α + ε > J(M(k)) ≥ α > 0. Then, for k > k0, there would exist M a a ( k ) with M a a ( k ) - d ̄ 2 > α L (otherwise J(M(k)) < α). But, since d ̄ = L - 1 i M i i ,
M a a ( k ) - d ̄ 2 = L - 2 i M a a ( k ) - M i i ( k ) 2 - 2 M a a ( k ) - d ̄ 2 .
M a a ( k ) - d ̄ 2 > α L
i M a a ( k ) - M i i ( k ) 2 = 3 L 2 M a a ( k ) - d ̄ 2 > 3 L α .
The last inequality shows that there would exist an entry b such that M a a ( k ) - M b b 2 > 3 α . Of course, one of the entries a or b can be set to 1. As a consequence, from the structure of the algorithm that builds the sequence of matrices M and because J decreases each time we apply the Givens rotation,
J ( M ( k ) ) - J ( M ( k + 1 ) ) L + 2 2 L 2 M a a ( k ) - M b b ( k ) 2 3 α ( L + 2 ) 2 L 2 .
Then, we would have
J ( M ( k + 1 ) ) J ( M ( k ) ) - 3 α ( L + 2 ) 2 L 2 α + ε - 3 α ( L + 2 ) 2 L 2 ,
with right-hand side strictly less than α provided we choose
ε < 3 α ( L + 2 ) 2 L 2 .
This is contradictory with asumption J(M(k+1)) < α. finally, we must have
lim k J ( Δ ( M ( k ) ) = 0 ,

that is, Δ(M(k)) tends to d ̄ I .

Proof of theorem 2

Since diagonal entries of matrix M = U H DU are all equal to d ̄ and
W T S W = U T V T S V U = U T D U = M ,
we have W i T S W i = M i i = d ̄ . Furthermore, vectors (W i )i = 1,Lform an orthogonal basis for the euclidian scalar product since
W T W = U T V T V U = I .


Authors’ Affiliations

Télécom Bretagne, UEB, Lab-STICC UMR CNRS 3192, Technopôle Brest-Iroise, Institut Télécom


  1. Giallorenzi T, Kingston S, Butterfield L, Ralston W, Nieczyporowicz L, Lundquist A: Non recursively generated orthogonal pn codes for variable rate CDMA. Patent US 2000. 6091 760Google Scholar
  2. Ghassemzadeh S, Sherman M: Method for whitening spread spectrum codes. Patent US 2006. 7 075 968Google Scholar
  3. Hunsinger DKBJ: Method and system for simultaneously broadcasting and receiving digital and analog signals. Patent US 2003. 5745 525Google Scholar
  4. Lozach B, Bollo J, Guyader AL: Method for generating mutually orthogonal signals having a controlled spectrum. 2008.Google Scholar
  5. Verdu S: Multiuser Detection. Cambridge University Press; 1998.Google Scholar
  6. Universal mobile telecommunications; spreading and modulation (fdd): 3GPP technical specification, technical report TS 25.213 V4.2.0. Technical Report 2001.Google Scholar
  7. Ouertani K, Saoudi S, Ammar M: Interpolation Based Channel Estimation Methods for DS-CDMA Systems in Rayleigh Multipath Channels. Quebec; 2008. IEEE Oceans08View ArticleGoogle Scholar
  8. Krauss T, Zoltowski M, Leus G: Simple mmse equalizers for CDMA downlink to restore chip sequence: comparison to zero-forcing and rake. In IEEE Proceedings of the Acoustics, Speech, and Signal Processing (ICASSP) 2000. Volume 2. Indonesia; 2000:2865-2868.Google Scholar
  9. Slepian D, Pollack O: Prolate spheroidal wave functions, fourier analysis and uncertainity. Bell Syst Tech J 1961, 40: 43-63.View ArticleGoogle Scholar
  10. Slepian D: On bandwidth. In Proceedings of the IEEE. Volume 64. Springer; 1976:457-459.Google Scholar
  11. Thomson D: Spectrum estimation and harmonic analysis. Proc IEEE 1982, 70: 1055-1096.View ArticleGoogle Scholar
  12. Huang C: Semiconductor nanodevice simulation by multidomain spectral method with chebyshev, prolate spheroidal and laguerre basis functions. Comput Phys Commun 2009, 180(3):375-383. 10.1016/j.cpc.2008.10.010View ArticleGoogle Scholar
  13. Senay S, Chaparro L, Sun M, Sclabassi R: Compressive sensing and random filtering of eeg signals using slepian basis. In Proceedings of EUSIPCO 2009. Lausanne, Switzerland; 2008.Google Scholar
  14. Raos SZI, Arambasic I: Slepian Pulses for Multicarrier OQAM. 2006. EUSIPCO 06Google Scholar
  15. Pfletschinger S, Speidel J: Optimized impulses for multicarrier offset-QAM. Global Telecommunications Conference, GLOBECOM'01 2001, 1: 207-211.View ArticleGoogle Scholar
  16. Zemen T, Mecklenbruker CF: Doppler diversity in MC-CDMA using the slepian basis expansion model. In Proceedings of EUSIPCO 2004. Vienna; 2004.Google Scholar
  17. Kim J, Wang CW: Frequency domain channel estimation for OFDM based on slepian basis expansion. In Proceedings of ICC 07. Glasgow, Scotland; 2007:3011-3015.Google Scholar
  18. Usuda HZK, Nakagawa M: M-ary pulse shape modulation for PSWF-based uwb systems in multipath fading environment. Proceedings of IEEE GLOBCOM'04 2004, 3498-3504.Google Scholar
  19. Golub G, Loan CV: Matrix Computation. 3rd edition. Johns Hopkins; 1996.Google Scholar
  20. Gruenbacher D, Hummels D: A simple algorithm for generating discrete prolate spheroidal sequences. IEEE Trans Signal Process 1994, 42(11):3276-3278. 10.1109/78.330397View ArticleGoogle Scholar
  21. Diaconis P, Shahshahani M: The subgroup algorithm for generating uniform random variables. Probab Eng Inf Sci 1987, 1: 15-32. 10.1017/S0269964800000255View ArticleGoogle Scholar
  22. Walter G, Soleski T: A new friendly method of computing prolate spheroidal wave functions and wavelets. J Appl Comput Harmon Anal 2005, 19(3):432-443. 10.1016/j.acha.2005.04.001MathSciNetView ArticleGoogle Scholar
  23. Cardoso J, Souloumiac A: Blind, beamforming for non gaussian signals. IEE Proc F 1993, 140(6):362-370.Google Scholar
  24. Belouchrani JCA, Abed-meraim K, Moulines E: A blind source separation technique using second order statistics. IEEE Trans Sig process 1997, 45(2):434-444. 10.1109/78.554307View ArticleGoogle Scholar
  25. Nikookar H, Prasad R: Introduction to Ultra Wideband for Wireless Communications. Springer; 2009.Google Scholar
  26. Chen K, Biglieri E: Optimal spread spectrum sequences constructed from gold codes. Proceedings of IEEE GLOBECOM 2000, 867-871.Google Scholar
  27. Levanon N: Radar Principles. Wiley, NY; 1988.Google Scholar
  28. Poluri R, Akansu A: New linear phase orthogonal binary codes for spread spectrum multicarrier communications. Proceedings of Vehicular Technology Conference, VTC-2006 2006.Google Scholar


© Chonavel; licensee Springer. 2011

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.