, or (b) one more 1 than 0, depending on the output value when the register memory is in the state having rj==0for all j # 1, and ri = 1. Figure 5.12, which illustrates a modification of the generator of Figure 5.11, provides a balanced pseudorandom sequence. However, balance and large linear span do not together guarantee the generation of unpredictable sequences. A preliminary design for the NLFFL to be attached to an M-stage m- sequence generator can be mapped out with the aid of Key's bound, the result being an estimate of the number of multipliers required and the num- Non-Linear Feed-Forward Logic Figure 5.12. A high-linear-span (30) generator with balance. ber of inputs for each multiplier in a sum-of-products form. To complete the design, one must choose the connections between multiplier inputs and shift register memory elements, and then determine, on a case by case basis, whether or not the other statistics (e.g., correlation properties, run-length sta- tistics, etc.) constitute a satisfactory design. Very little has appeared in the open literature on this problem, although it was stated in [24], in the con- text of quadratic NLFFL and on the basis of experimental results, that each memory element should connect to at most one multiplier, and that the spac- ing between memory elements connected to one multiplier should differ from the spacing between connections to any other multiplier. These sug- gestions may serve as initial guidelines in selecting an NLFFL design which will generate a sequence with good statistical properties. 5.6.3 Difference Set Designs A v, k, l cyclic difference set [26] is a collection D = {d1, d,...dk), integers modulo V (0 < di , V for all i) such that for every choice of the inte- ger B, < v, the equation di -d;= B modv (5.175) has exactly l solution pairs (di,di) with di and dj being distinct elements of D Since there are exactly 1(k(k-1)non-zero differences between the k ele- ments of D , and since these must assume each of V - 1 values exactly 1 times, the parameters v, k