1 Introduction

Turbo codes were introduced in 1993 by Berrou et al. [1]. These codes are currently involved in many international standards, such as long-term evolution (LTE) and Digital Video Broadcast (DVB), as well as satellite communications. The turbo code encoder is a parallel concatenation of two recursive systematic convolutional encoders separated by an interleaver. The decoding of received turbo encoded data is performed by an iterative procedure. Since the performance of turbo codes can be significantly affected by the interleaver, in particular for short frame lengths; several researchers have studied the effect of interleavers on the performance of turbo codes [2,3,4,5,6,7]. However, very few have considered the chaotic interleavers.

In the last two decades, there has been a great deal of interest in the application of chaotic signals in communication systems. The distinct random-like behavior of these signals in a completely deterministic setting has proven to be useful in several communication schemes. Due to their good correlation properties, chaotic systems are used to generate spectral spreading sequences in direct-sequence spread-spectrum communication systems [8, 9]. In [10], a secure communication system was implemented for the Lorenz system using the concept of chaos synchronization for transmitting speech signals. In [11], an analog circuit was developed for the Chua’s circuit to realize chaos synchronization in transmission of speech and music signals. In [12], the author demonstrates a new way of building chaotic digital encoder and decoder from nonlinear digital filters. in [13], Chaotic Turbo Codes were presented as a result of a symbiosis between a chaotic digital encoder and a turbo code with the possibility of eliminate the interleaver if the initial states of chaotic digital encoder are different. In [14], a simple technique to control transient chaos in turbo-decoding algorithm was developed. The performance of decoding algorithm with control outperforms the classical decoding algorithm by approximately 0.2 dB. In [15], the authors proposed a secure turbo code design using chaotic signals, but with performance degradation compared with the conventional turbo code. The aim of this work is to enhance the reliability and the security of the communication system with low complexity of implementation using chaotic signals in the design of a turbo code interleaver.

This paper is organized as follows. Section 2 is a survey of different types of interleavers. In sec. 3, chaotic signals generated from lozi map were analyzed and applied in the design of chaotic interleaver for turbo codes. Section 4 is devoted to report the results of our numerical computation. We end with a conclusion and outlook.

2 Interleavers for turbo codes

The interleaver is a fundamental part of the turbo code design and plays a critical role in the performance of turbo coding. The basic role of the interleaver is to construct a random code and spread out burst errors. The interleaver provides "scrambled" information data to the second component encoder for constructing random codes, and decorrelates the inputs to the two component decoders hence, the convergence of the iterative decoding algorithm improves [16]. Barbulescu in [17], identify the iterative decoding process with a random iterated function system (IFS) and the role of the interleaver in this process with the role of the random generator in the “chaos game”.

Based on the structure, one can classify the interleavers into two broad categories: random interleavers and deterministic interleavers. A random interleaver produces new positions indexes based on a random permutation. A main disadvantage for random interleaver is the use of lookup tables to implement the interleaving. So, a pseudo random interleaver can be algorithmically implemented, thereby avoiding lookup tables and reduce the hardware complexity for a convenient implementation [3]. The interleaver is a vector \(\pi\), where \(\pi \left( n \right)\) is the position in the information sequence that is interleaved to position \(n\). Most of the proposed deterministic interleavers are linear interleavers with a designed index function given by:

$$\pi \left( n \right) = kn + u \, \bmod \, N, \, 0 \le n \le N$$
(1)

where k and n are fixed integers, k is relatively prime to N.

The two main properties that characterize any interleaver are the spreading property which is the distance between indexes that were close before being permuted by the interleaver, and the dispersion (randomness) property which is the length of the set of all possible spreading factors for that interleaver, normalized to the total number of possible positions for a bit pair. One can obtain a good randomness property using random interleavers and a good spreading property using deterministic interleavers. In order to improve the randomness property of deterministic interleavers, dithered golden interleaver (DGI) and dithered relative prime interleaver (DRP) have been proposed by adding a random component (dither) to Eq. (1) [2].

2.1 Golden section and Fibonacci sequence

The golden section has application in many mathematical problems. The Golden Section is the proportion that obtains between two quantities if the smaller is to the larger as the larger is to the sum of the two \(\frac{g}{1} = \frac{1 - g}{g}\), the solution of this quadratic equation for g gives the value of the golden section. This value will be used in the building of two subsequent interleaver definitions. The secondary Fibonacci sequence is a sequence of numbers, such that every number is the sum of the two previous ones and the division of each number by its predecessor converges to the golden ratio. Starting from \(F\left( 1 \right) = F\left( 2 \right) = 1\), the terms of the sequence satisfy the recursion law:

$$F\left( n \right) = F\left( {n - 1} \right) + F\left( {n - 2} \right)$$
(2)

2.1.1 Golden interleaver

In the aim to distribute burst errors into a sequence of smaller bursts or isolated errors, Crozier et al. [2] proposed a new interleaver design based on golden section. The Golden interleaver is different from the random interleaver, which is generated using the sorted real valued numbers derived from the golden section. The elements of the golden vector \(v\) are calculated as follows:

$$v\left( n \right) = nc + b \, \bmod N$$
(3)

where b is a starting index and \(c = {{N\left( {g^{m} + j} \right)} \mathord{\left/ {\vphantom {{N\left( {g^{m} + j} \right)} r}} \right. \kern-\nulldelimiterspace} r}\) is a real increment value.

where g is the golden section value and m is any positive integer preferably set to 1 or 2. In order to maximally spread out of nearby elements, j is set to 0 and r is set to 1. The golden interleaver is performed as following:

Step 1: The integer sequence \(\left\{ n \right\}_{n = 1}^{N} \in {\mathbb{Z}}\) is mapped to a real number sequence \(\left\{ {v\left( n \right)} \right\}_{n = 1}^{N} \in {\mathbb{R}}\) using (3).

Step 2: \(\left\{ {v\left( n \right)} \right\}_{n = 1}^{N}\) is mapped to another integer sequence \(\left\{ {s\left( n \right)} \right\}_{n = 1}^{N} \in {\mathbb{Z}}\) by designing \(s\left( n \right)\) as the position of index of \(v\left( n \right)\) in the sort ascending of \(\left\{ {v\left( n \right)} \right\}_{n = 1}^{N}\).

Step 3: The golden interleaver indexes are given by:\(\pi \left( {\left\{ {s\left( n \right)} \right\}_{n = 1}^{N} } \right) = \left\{ n \right\}_{n = 1}^{N}\).

2.1.2 Dithered golden interleaver

In the aim to improve the randomness property of Golden interleaver, a random component was added to the latter. This random (dither) component \(d\left( n \right)\) is uniformly distributed between 0 and \(ND\), where D is a normalized width. For the turbo codes, the experimental value of D is set to 0.01 according to [2]. Thus, the indexing function becomes:

$$v\left( n \right) = nc + b + d\left( n \right) \, \bmod N$$
(4)

To build the dithered golden interleaver we use (4) instead of (3) in the procedure of golden interleaver.

3 Chaotic systems

In the last decades, there has been a tremendous interest in the study of chaos theory. chaotic systems exhibit aperiodic seemingly unpredictable behavior with sensitive dependence on initial conditions and parameters commonly known as the butterfly effect. Because of these characteristics, chaotic phenomenon is now applied in almost all disciplines, ranging from physics, biology, meteorology, to engineering, economics and medicine.

In 1963 Edward Norton Lorenz worked as a meteorologist at the Massachusetts Institute of Technology, he accidentally discovered the first system that exhibits chaotic behavior, produced by three first-order differential equations. He thus shows that a very complex dynamic can appear in a formally very simple system [18], and then, several three-dimensional chaotic systems were constantly discovered such as Rossler system, chua’s system, and Genesio-Tesi system [9]. In 1976, a French mathematician and astronomer Michel Hénon was originally proposed the well-known Hénon map [19] as a simplified version of the Poincare map for a three-dimensional system. In 1978, René Lozi introduced in a short note [20] a two-dimensional map, so called lozi map via a direct modification of the Hénon map. Since then, these maps have been studied in many works [21,22,23,24,25,26]. Hereafter the orbits of lozi map will be analyzed.

3.1 Lozi map

The Lozi map (see Fig. 1) is a two-dimensional map introduced by René Lozi in a short note [20], via a direct modification of the famous Hénon map [19]. Simply, a quadratic term in the latter is replaced with a piecewise linear version in the former. The same procedure is done for the quadratic map to derive the Skew Tent map. The state or system equations \(x_{n} = f\left( {x_{n - 1} } \right)\) for the lozi map, expressed component-wise is the following:

$$\left\{ \begin{gathered} x\left( n \right) = 1 - a\left| {x\left( {n - 1} \right)} \right| + y\left( {n - 1} \right) \hfill \\ y\left( n \right) = bx\left( {n - 1} \right) \hfill \\ \end{gathered} \right.$$
(5)
Fig. 1
figure 1

Lozi map for \(a = 1.7\) and \(b = 0.5\): a and b Orbits \(\left\{ {\left( {x_{n} ,y_{n} } \right)^{T} ,n = 0,1 \cdot \cdot \cdot \cdot \cdot } \right\}\) starting from the initial point \(\left( {x_{0} ,y_{0} } \right)^{T} { = }\left( {0,0} \right)^{T}\), c chaotic attractor

where n is the iteration number and \(\left( {x\left( 0 \right),y\left( 0 \right)} \right)^{T}\) are the initial conditions. The system exhibits the chaotic behavior for the typical values \(a = 1.7\) and \(b = 0.5\) which are used in this work. The lozi map may be expressed by a one-dimensional map given by (6), similarly to the Fibonacci sequence given by (2) and hence, it gives some sort of second-order non-linear auto-regressive process.

$$x\left( n \right) = 1 - a\left| {x\left( {n - 1} \right)} \right| + bx\left( {n - 2} \right)$$
(6)

Taking note that when \(b = 0\), the Lozi map reduces to the skew tent map [24] given by:

$$T\left( x \right) = 1 - a\left| x \right|$$
(7)

3.1.1 Probability density

The probability density of some chaotic maps are the fixed points of their Frobenius–Perron operators [27], while the probability density functions of most of chaotic systems are difficult to derive analytically, and only can they be calculated numerically. Numerical computation leads to the density of orbits of the Lozi map for \(a = 1.7\) and \(b = 0.5\), displayed in Fig. 2.

Fig. 2
figure 2

density of states of the Lozi map for 1,000,000 iterated values

3.1.2 Lyapunov Exponent

Lyapunov exponent is a powerful tool that measures the sensitivity to initial conditions (Fig. 3). A positive Lyapunov exponent indicates a chaotic behavior which means that two initially close orbits in a system will separate very quickly (see Fig. 4). In the contrary, negative Lyapunov exponents represent a fixed point or stable periodic orbit and a zero Lyapunov exponent indicates the occurrence of bifurcation phenomenon. The Lyapunov exponent is given by the following expression [28]:

$$h\left( {x_{0} ,u_{0} } \right){ = }\mathop {\lim }\limits_{n \to \infty } \frac{1}{n}\left\| {DL^{n} \left( {x_{0} } \right) \cdot u_{0} } \right\|$$
(8)
Fig. 3
figure 3

a: Bifurcation diagram and b: Largest Lyapunov exponent for the Lozi map with respect to \(a\) for \(b = 0.5\)

Fig. 4
figure 4

Evolution of two trajectories generated from lozi map (\(a = 1.7\) and \(b = 0.5\)), that diverge rapidly illustrating the sensitivity to initial conditions

where \(u_{0}\), is a small perturbation of the initial point \(x_{0}\), \(L^{n}\) is the considered map composed with itself \(n\) times, \(\left\| \cdot \right\|\) denotes the norm, and \(D\) denotes the differentiation.

Figure 3. (a) and (b) shows respectively the bifurcation diagram and the variation of the largest Lyapunov exponent \(h_{L}\) for the Lozi map as the parameter \(a\) is varied for \(b = 0.5\). For the periodic case: \(a = 1.2\) and \(h_{L} < 0\), for two band chaotic attractor:\(a = 1.53\) and (\(h_{L}\) positive close to zero) and for the single band chaotic attractor:\(a = 1.7\) and \(h_{L} > 0\).

3.1.3 autocorrelation and power spectrum

The autocorrelation is an important tool to verify the chaotic behavior. The autocorrelation function has a periodical form for periodical signals and decay rapidly to zero for chaotic signals. Chaotic signals generated by a particular map can be considered as sample functions of an ergodic stochastic process [29], so the autocorrelation function of the x-series of \(N\) observations at lag \(k\) is given by:

$$R_{xx} \left( k \right) = \mathop {\lim }\limits_{N \to \infty } \frac{1}{N}\sum\limits_{n = 1}^{N - \left| k \right|} {x_{n} x_{n + \left| k \right|} }$$
(9)

The power spectrum often called power spectral density, which is a Discrete Time Fourier Transform of the autocorrelation function is another important tool for identifying the chaotic behavior and investigating the spectral properties of orbits. For a periodic oscillation the power spectral density contains a finite peaks, and possess a continuous form in the case of chaotic signals. The power spectral density is given by:

$$S_{xx} \left( \omega \right) = \sum\limits_{k = - \infty }^{k = + \infty } {R_{xx} \left( k \right)e^{ - j\omega k} }$$
(10)

3.1.4 Numerical results

This section, is devoted to the investigation of spectral properties of the lozi map through numerical simulation based on the Matlab software. There we present only the x-series properties, the corresponding y-series properties are similar. The estimated power spectral density is obtained via Welch’s method with \(N = 5 \times 10^{5}\).

Our numerical results corresponding to different bifurcation parameters are summarized in Fig. 5. This figure contains, attractor, autocorrelation function and power spectral density. We can distinguish: the periodical cycle, the two-band chaotic attractor and finally the single-band chaotic attractor.

Fig. 5
figure 5

attractor, autocorrelation function and power spectral density of orbits of lozi map a:\(\left( {a,b} \right) = \left( {1.2,0.5} \right)\), b: \(\left( {a,b} \right) = \left( {1.53,0.5} \right)\) and c:\(\left( {a,b} \right) = \left( {1.7,0.5} \right)\)

Figure 5a shows the periodic case (period 2): \(\left( {a,b} \right) = \left( {1.2,0.5} \right)\) the autocorrelation function of the orbits is periodic and the Peaks in the power spectral density correspond to the frequency \(\omega = \pi\) and its harmonics.

For the case of two band chaotic attractor (see Fig. 5 (b)):\(\left( {a,b} \right) = \left( {1.53,0.5} \right)\) the points of an orbit alternate between two pieces attractor, the autocorrelation function has a very slowly oscillatory damping form, and the narrowband peaks stand out at the frequency \(\omega = \frac{\pi }{2}\) and its harmonics in the power spectral density.

In the case of single band chaotic attractor (see Fig. 5 (c)): \(\left( {a,b} \right) = \left( {1.7,0.5} \right)\), the two pieces have merged to form one-piece attractor and the autocorrelation function has a non-impulsive oscillatory damping form. The frequencies peaks disappeared and the orbits have high-pass properties.

3.2 Design of chaotic interleaver

chaotic signals display random-like behavior in deterministic context that improve both the randomness and the spreading properties of the interleaver. Furthermore, the initial conditions and control parameters serve as a secret key, which enhance the security of the encoded data [30]. The chaotic interleaver based on lozi map is performed as following:

Step 1: The integer sequence \(\left\{ n \right\}_{n = 1}^{N} \in {\mathbb{Z}}\) is mapped to a real number sequence \(\left\{ {x\left( n \right)} \right\}_{n = 1}^{N} \in {\mathbb{R}}\) using (5).

Step 2: \(\left\{ {x\left( n \right)} \right\}_{n = 1}^{N}\) is mapped to another integer sequence \(\left\{ {s\left( n \right)} \right\}_{n = 1}^{N} \in {\mathbb{Z}}\) by designing \(s\left( n \right)\) as the position of index of \(x\left( n \right)\) in the sort ascending of \(\left\{ {x\left( n \right)} \right\}_{n = 1}^{N}\).

Step 3: The chaotic interleaver indexes are given by: \(\pi \left( {\left\{ {s\left( n \right)} \right\}_{n = 1}^{N} } \right) = \left\{ n \right\}_{n = 1}^{N}\).

3.2.1 Randomness analysis

The constellation of chaotic and uniform random interleavers with N = 4096-bits is shown in Fig. 6 (a) and Fig. 6 (b). In these figures, the x-axis is the input bit positions of the interleaver and the y-axis is the interleaved (permuted) bit positions. Chaotic interleaver resemble the random interleaver such that we can observe irregularity in the density of points in the plane (Fig. 6).

Fig. 6
figure 6

a: constellation of Chaotic Interleaver for N = 4096. b: constellation of random Interleaver for N = 4096

3.2.2 Correlation analysis

The interleaver enables the information exchange between the two component decoders in iterative soft output decoding algorithms. The more uncorrelated the information exchange is, the high the performance of the decoding process is. The correlation function between the Systematic data sequence \(d_{n}^{S} = \left\{ {d_{1}^{S} ,d_{2}^{S} ,.............,d_{N}^{S} } \right\}\) and the Interleaved data sequence \(d_{n}^{I} = \left\{ {d_{1}^{I} ,d_{2}^{I} ,.............,d_{N}^{I} } \right\}\), is defined as:

$$R_{SI} \left( k \right) = \frac{1}{N}\sum\limits_{n = 1}^{N - \left| k \right|} {\left( {2d_{n}^{S} - 1} \right)} \left( {2d_{n + \left| k \right|}^{S} - 1} \right)$$
(11)

where \(d_{n}^{S,I} \in \left\{ {0,1} \right\}\).

For \(k = 0\), the correlation function reduces to the average correlation coefficient of data sequences originally proposed by Wang et al. [31].

Figures 7 (a) and (b) show the correlation between the systematic and the interleaved data sequences for different interleavers. It should be note that the longer the block length, the lower is the correlation between the input and the output data sequences, which improving the performance of turbo decoding process. However, it is difficult to evaluate the performance of the interleaver from its statistical properties. Therefore, the effect of the interleaver design on the performance of turbo code should be investigated by simulation.

Fig. 7
figure 7

a: Correlation properties of different Interleavers for N = 169 b: Correlation properties of different Interleavers for N = 4096

4 Simulation results

The results are presented using graphs in which the bit error rate is plotted versus bit energy to noise power spectral density Eb/N0 in decibels. The simulations were carried out for turbo-codes formed by two identical recursive systematic coders (RSC), parallel with \(\left( {7,5} \right)_{oct}\) as generator polynomials and fixed code rate \(R = {\raise0.7ex\hbox{$1$} \!\mathord{\left/ {\vphantom {1 2}}\right.\kern-\nulldelimiterspace} \!\lower0.7ex\hbox{$2$}}\). The termination method is applied for the first RSC. The performance of turbo codes using Log-MAP decoding algorithm with 5-iterations is studied for different interleaving schemes. frame lengths of 169-bits and 4096-bits were chosen for comparison. Throughout all simulations BPSK signaling is used and one hundred frame errors are counted for stopping the simulation.

Figures 8 and 9 illustrate the performance of different interleavers over AWGN channel. From Fig. 8 (N = 169-bits), one can notice that, for the low values of Eb/N0, the performance of all interleavers are nearly identical. However, for the higher values, the chaotic interleaver outperforms the random interleaver. For BER = 2.56 × 10–3, we have an Eb/N0 = 2 dB for random interleaver and Eb/N0 = 1.882 dB for chaotic interleaver which is a difference of 0.118 dB.

Fig. 8
figure 8

Performance of turbo code with the interleavers of length 169 under AWGN channel

Fig. 9
figure 9

Performance of turbo code with the interleavers of length 4096 under AWGN channel

From Fig. 9 (N = 4096-bits), one can observe that, for the low values of Eb/N0, the performances of all interleavers are nearly identical. However, for the higher values, the chaotic interleaver outperforms the DGI interleaver.

Figures 10 and 11 present the performance of different interleavers over Rayleigh channel. Figure 10 (N = 169-bits) exhibits that all the employed interleavers perform much similar to each other and no significant difference is observed.

Fig. 10
figure 10

Performance of turbo code with the interleavers of length 169 under Rayleigh channel

Fig. 11
figure 11

Performance of turbo code with the interleavers of length 4096 under Rayleigh channel

Figure 11 (N = 4096-bits) shows that the chaotic interleaver outperforms the DGI interleaver especially when Eb/N0 exceed 4.5 dB. For BER = 1.946 × 10–5 one finds Eb/N0 = 5 dB for DGI interleaver and Eb/N0 = 4.864 dB for chaotic interleaver which is a difference of 0.136 dB. As longer the interleaver length is, as better the BER performance of the chaotic interleaver.

5 Conclusion

In this paper, chaotic signals generated from lozi map were analyzed and applied in the design of a chaotic interleaver. While the chaotic interleaver belong to the deterministic category of interleavers, there is no need to transmit all interleaver look up table, which reduces the memory usage and the latency. compared with random interleaver and Dithered Golden Interleaver, chaotic interleaver has low latency, low complexity of implementation and enhance the security of the encoded data. The chaotic interleaver for turbo codes may find its application in satellite communications. The effectiveness of chaotic interleaver in the Interleave- Division Multiple-Access schemes will be a subject of a future work.