Hardware Systems & Design

109 views 9:17 am 0 Comments June 26, 2023

Adv. Hardware Systems & Design [ELEE1064] 2016-17, Lab 2
Page 1 of 1
Lab 2: Pseudo-random Sequence Generator
Background:
Pseudo-random sequences are often required in engineering. An example can be found in spread
spectrum wireless communications, where the communications channel is rapidly varied in a
technique known as
frequency hopping in order to enable the coexistence of multiple networks and
mitigate against the effects of multipath fading.
A linear feedback shift register (LFSR) uses a system of shift registers (D-type flip flops) and XOR
gates to produce a pseudo-random sequence (it is not truly random because an initial ‘seed’ is
required that produces the same sequence each time and the sequence repeats periodically. There
are two types of LFSR: Fibonacci and Galois. LFSRs are used in applications such as generating
frequency hopping sequences in wireless communications, but can be used anywhere where
pseudo-random sequences are required.
An example of a Fibonacci LFSR which produces a 5-bit pseudo random sequence is shown in Fig. 1.
The XOR gates are connected according to an
n degree ‘characteristic polynomial’ that describes the
particular implementation of LFSR being used. Each polynomial term has a coefficient of 1 or 0, so it
is either present with a coefficient of 1 or not present at all. An XOR gate is used in a feedback path
for all powers of
ݔthat have a coefficient of 1 (except for ݔand .)ݔThe initial outputs of the shift
registers are the ‘seed’ of the LFSR but they must not be set to all 0’s, otherwise the output will never
change from all 0’s. Subsequent shifts of the registers produce the pseudo random sequence (taken
at the outputs of the shift registers).
Fig. 1: Example of an LFSR with characteristic polynomial
ݔ+ ݔ+ ݔ+ + ݔ1
Not all characteristic polynomials produce a pseudo-random sequence that covers all binary
possibilities (i.e. a sequence of length 2
n, but primitive polynomials, like the one in Fig. 1, do have
this property.
Task:
Design an LFSR to generate a repeating pseudo-random sequence of length 79 and implement in
on the FPGS of a DE0 board. In order to illustrate the operation of the system, each push of a
button should display the next number of the sequence on the seven segment displays on the DE0.

Tags: , , , , , , , , , ,