By means <strong>of</strong> the serial implementation, a random N-bits sequence is developed by gett<strong>in</strong>g oneby one the bits at the output each clock cycle. In the case <strong>of</strong> the parallel configuration, the XORoperation becomes more complex, but each time there are m random bits at the output, where, rely<strong>in</strong>g on the chosen parallel architecture. Thereby the choice <strong>of</strong> the architecture willdepend on the time, area and power constra<strong>in</strong>ts <strong>of</strong> the <strong>system</strong>, <strong>in</strong> the case <strong>in</strong> which areasupposes a critical feature, parallel implementation is discouraged because more DFF areneeded <strong>in</strong> the block; on the other hand if the <strong>system</strong> strictly needs k random bits each clockcycle, a parallel LSFR can be implemented. Similarly, <strong>in</strong> order to face the design <strong>of</strong> a serial orparallel LSFR, but more necessarily <strong>in</strong> the latter, an aim <strong>of</strong> the design will be decreas<strong>in</strong>g thepower consumption as much as possible by us<strong>in</strong>g ultra-low power consum<strong>in</strong>g Flip-Flops.Furthermore, the number <strong>of</strong> DFFs, k, which are needed to implement a detailed length <strong>of</strong> bitssequence, N, is related <strong>in</strong> correspondence with the random sequence period shown <strong>in</strong> Eq.13,this relation is the time-period <strong>of</strong> the Maximum Length Sequence, (MLS). An important th<strong>in</strong>g tonote is that all XOR tapp<strong>in</strong>g configurations do not lead to MLS but to get these MLS <strong>of</strong> period 2 k– 1, a primitive polynomial h(x) <strong>of</strong> degree k is required. The algebraic terms occurr<strong>in</strong>g <strong>in</strong> thispolynomial represent the LFSR tapp<strong>in</strong>g positions <strong>for</strong> MLS. A primitive polynomial is anirreducible polynomial <strong>of</strong> that degree. For example, <strong>for</strong> the serial LFSR <strong>of</strong> the Fig.4.2.1.2 theprimitive polynomial is:(12)Changes <strong>in</strong> the polynomial lead to change <strong>in</strong> the occurr<strong>in</strong>g output sequence. After N bits, thesequence will repeat itself, and so, this must be taken <strong>in</strong>to consideration <strong>in</strong> order to avoidcorrelations <strong>in</strong> or between the different <strong>signals</strong> which are be<strong>in</strong>g modified by the randomsequence.(13)In the case <strong>of</strong> serial implementation, N bits will be achieved at the output <strong>of</strong> the signal after Nclock periods. For the other hand, <strong>in</strong> parallel implementation, each clock period, m bits willpropagate across the k outputs each clock period. In Fig. 4.1.1.1 there have been <strong>in</strong>cluded anexample <strong>of</strong> a parallel (top) and serial (bottom) LFSR configurations with k = 5, both <strong>of</strong> thembased on five DFFs. It can be observed that the parallel one is implemented by us<strong>in</strong>g five DFFsand four XORs, <strong>in</strong> addition to the circuitry related with connections, port and clock sett<strong>in</strong>g. Theserial architecture is more compact, because it is implemented with five DFFs and one XOR,plus extra circuitry.40
Figure 4.1.1.1. LSFR parallel (top) and serial (bottom) architectures based on five DFFs design.Figure 4.1.1.2. Galois (top) and Fibonacci (bottom) configurations <strong>for</strong> a k = 16 LFSR.In the case <strong>of</strong> serial LFSR, here are two types <strong>of</strong> architectures, Fibonacci and Galois, the latterhas been chosen to implement the PRBS because the concatenation <strong>of</strong> the gates gives raise toone DFF <strong>in</strong> the critical path, and so less execution speed is needed. A comparison <strong>for</strong> k = 16DFFs is <strong>in</strong>cluded <strong>in</strong> Fig.4.1.1.2, Galois (top) and Fibonacci (bottom). It can be observed that <strong>in</strong>this case taps are <strong>in</strong> positions 16, 14, 13 and 1. As previously it has been stated, <strong>for</strong> an k-bitsLFRS, the maximum possible outcome can be – bit-vectors or states because a state withbit-vector conta<strong>in</strong><strong>in</strong>g all ‘0’s will keep repeat<strong>in</strong>g itself not allow<strong>in</strong>g any other state to occur (allXOR outputs will always be ‘0’). Measurement matrix generation has to be carry though bywarrant<strong>in</strong>g that all its rows are uncorrelated between each others. Thereby, <strong>in</strong>coherencebetween basis and measurement matrix is <strong>in</strong>sured and the CS recovery can be implemented.On the other hand, <strong>in</strong> many applications, as the ones based on Random Convolution, (RC) [21],it is a target simultaneously obta<strong>in</strong><strong>in</strong>g several random coefficients <strong>in</strong> order to carry out thecompression. By tak<strong>in</strong>g <strong>in</strong>to account these requirements, random generation block becomes acritical design issue, and its study has to be carefully determ<strong>in</strong>ed <strong>in</strong> other to realize a compactand efficient compression <strong>in</strong> CS <strong>system</strong>s on-chip.41