12
- 1 - Frequency Hopping: Mathematical Approach, Applications and Simulation Mathematics 9 Probability and Stochastic Processes Second Year Electronics and Communication Department مد حافظ سعيد مح كريمرو عصام حسان عممة السيد أيمه أساSection: 7 Number:210 Section: 7 Number:191 Section:3 Number:83 حمدود محم مصطفى م خير مروان مصطفى مصطفىل عبد عادحمد مروان م العظيمSection: 10 Number: 295 Section: 10 Number:281 Section: 10 Number:280 Group N42 أ. د. ف ربيع شري

Frequency Hopping

Embed Size (px)

Citation preview

Page 1: Frequency Hopping

-1-

Frequency Hopping: Mathematical Approach,

Applications and Simulation

Mathematics 9 – Probability and Stochastic Processes

Second Year – Electronics and Communication Department

أيمه أسامة السيد عمرو عصام حسان كريم سعيد محمد حافظSection: 7 Number:210 Section: 7 Number:191 Section:3 Number:83

مصطفى محمود محمد

خيرهللا

مروان محمد عادل عبد مروان مصطفى مصطفى

العظيمSection: 10 Number: 295 Section: 10 Number:281 Section: 10 Number:280

Group N42

شريف ربيع. د.أ

Page 2: Frequency Hopping

-2-

Table of contents

1. Introduction 3

2. Spread spectrum 3

3. Direct sequence vs. frequency hopping 3

4. Pseudorandom process 4

5. Basic concept 4

6. Basic frequency hopping spread spectrum algorithm 5

7. Frequency hopping sequences and hit probability 5 8. Frequency Hopping Code Division Multiple Access (FH-CDMA) 7 9. Plotting the distribution of hitting 8

Appendix A. MatLab code for the plot 9 Appendix B. MatLab simulation for sequence generation 9 Appendix C. Adaptive frequency hopping for unlicensed bands 11 Appendix D. References 12

Page 3: Frequency Hopping

-3-

1. Introduction

In 1895, Guglielmo Marconi opened the way for modern wireless

communications by transmitting the three-dot Morse code for the letter ‘S’ over a

distance of three kilometers using electromagnetic waves. From this beginning,

wireless communications has developed into a key element of modern society. From

satellite transmission, radio and television broadcasting to the now ubiquitous mobile

telephone, wireless communications has revolutionized the way societies function.

To understand how the signal is transmitted in air, we make an analogy between

electromagnetic waves and sound. At the ear of the listener, the waves impinge upon

the eardrum of the listener and are translated into familiar words, phrases, and tones.

When information is transmitted through wireless means such as in radio

transmission, this information must first be converted to electrical signals. In order to

understand the benefits of radio transmission, it is helpful to discuss the nature of the

term "spectrum."

2. Spread Spectrum

Spread-spectrum techniques are methods by which a signal (e.g. an electrical,

electromagnetic) generated in a particular bandwidth is deliberately spread in

the frequency domain, resulting in a signal with a wider bandwidth. These techniques

are used for a variety of reasons, including the establishment of secure

communications, increasing resistance to natural interference and jamming, to prevent

detection … etc. Most commercial spread spectrum systems transmit an RF signal

bandwidth in the neighborhood of one to two orders of magnitude greater than the

bandwidth of the information that is being sent.

There are at least two problems with conventional wireless communications that

can occur under certain circumstances. First, a signal whose frequency is constant is

subject to catastrophic interference. This occurs when another signal is transmitted on,

or very near, the frequency of the desired signal. Catastrophic interference can be

accidental it can be deliberate. Second, a constant-frequency signal is easy to

intercept, and is therefore not well suited to applications in which information must be

kept confidential between the source (transmitting party) and destination (receiving

party).

That's why there are two popular forms of spread spectrum modulation, Direct

Sequence and Frequency Hopping.

3. Direct sequence vs. Frequency Hopping

Direct sequence spread spectrum, the stream of information to be transmitted is

divided into small pieces, each of which is allocated across to a frequency channel

across the spectrum. A data signal at the point of transmission is combined with a

higher data-rate bit sequence (also known as a chipping code) that divides the data

according to a spreading ratio. The redundant chipping code helps the signal resist

interference and also enables the original data to be recovered if data bits are damaged

during transmission.

On the other hand, Frequency-hopping spread spectrum (F.H.S.S) is a method of

transmitting radio signals by rapidly switching a carrier among many

frequency channels, using a pseudorandom sequence known to

both transmitter and receiver. An FHSS signal simply appears as an increase in the

background noise to a narrowband receiver. An eavesdropper would only be able to

intercept the transmission if the pseudorandom sequence was known.

Spread-spectrum transmissions can share a frequency band with many types of

conventional transmissions with minimal interference. The spread-spectrum signals

Page 4: Frequency Hopping

-4-

add minimal noise to the narrow-frequency communications, and vice versa. As a

result, bandwidth can be utilized more efficiently.

4. Pseudorandom process

It is a process that appears to be random but it is not. Pseudorandom sequences

typically exhibit statistical randomness while being generated by an entirely

deterministic causal process. Such a process is easier to produce than a genuine

random one, and has the benefit that it can be used again and again to produce exactly

the same numbers, useful for testing and fixing software. Besides, it have to be known

by transmitter and receiver only so when any other one try to enter the sequence he

just hear noises and no information can be heard.

5. Basic Concept

Any communication system has a band of transmission. This band is divided into

channels, and each user occupies a channel to perform his call.

Channel 1

User 1

User 1

User 1

User 1

Channel 2

User 2

User 2

User 2

User 2

Channel 3

User 3

User 3

User 3

User 3

Channel 4

User 4

User 4

User 4

User 4

Time slot 1

Time slot 2

Time slot 3

Time slot 4

However, if an external noise acts on a certain channel, the user occupying this

channel will get a poor service, while he is paying the same fare as the other users,

which is unfair. Consequently, the service provider wants to provide an equal service

for all users, but with a minimum percentage of poor service, i.e. minimum noise

interference.

To do so, each user occupies all channels during different time slots. Given that a

time slot is in the order of micro or milliseconds, the time a certain user is subjected to

a noisy channel will be small. So the signal by the users contains two types of data;

the normal data and the frequency hopping sequence, which can be considered as the

path of the data sent.

Channel 1

User 1

User 4

User 2

User 3

Channel 2

User 2

User 3

User 1

User 4

Channel 3

User 3

User 1

User 4

User 2

Channel 4

User 4

User 2

User 3

User 1

Table 5.1 : Normal Frequency Distribution

Table 5.2 : Frequency Hopping

Page 5: Frequency Hopping

-5-

It is clear that if a fifth user entered the system, then probability that any user is

interfered will be 1/m.

But this path is randomly generated according to a certain algorithm called the

frequency hopping sequence. So there is a probability that two users interfere with

each other on the same channel at the same time slot, which is called hit probability.

This hit probability is system dependent:

If the systems is self contained, like , the algorithm adopted can assure that as

long as the number of active users is less than or equal to the number of

carriers, the hit probability equals zero, and increases as the number of active

users exceeds the number of carriers.

If the system works on an unlicensed band, such as Blue-tooth, the hit

probability depends not only on the algorithm, but also on different systems

using the same frequency.

6. Basic Frequency Hopping Spread Spectrum Algorithm

The basic algorithm for successfully transmitting and receiving an FHSS signal

is:

Step 1 – The calling/initiating party sends a request via a control channel or

other pre-defined frequency.

Step 2 – The receiving party then sends a seed number back to the initiating

party.

Step 3 – The seed number is then used as the key variable in the pre-defined

algorithm for the FHSS communications device that then calculates the series

of frequencies to use during the communication session. Many times, this

period of frequency change is pre-defined so that a single base station can

service a number of communication connections.

Step 4 – The calling/initiating party then sends a synchronization signal on the

first frequency in the calculated sequence.

Step 5 – The communication session between the two parties commences and

each party shifts frequencies in sync with the other.

7. Frequency Hopping Sequences and Hitting Probability

Frequency hopping sequence is a sequence of randomly chosen numbers from a

given set & indicates the order of the channel the user will use at each time slot. The

choice of each sequence to be used by the user is a random choice of a given family of

sequences while the generation is a Pseudo Random process which is implemented

mostly using hardware digital circuit consists of several components; mainly linear

feedback shift registers. For two sequences of length n we need to minimize that the

two users are using the same channel at the same time slot which is called the Hit

Probability.

There are several ways to generate families of sequences with minimal hit

probability, we will discuss the approach delivered by this paper; "Families of

sequences with optimal Hamming correlation properties" published 1974, then we

will state other approaches.

We will discuss briefly the principle concept used in generating the sequence:

a. Hamming Correlation: A method to compare sequences with each other. It is

divided into two ways :

Page 6: Frequency Hopping

-6-

Auto Correlation: The sequence is compared to itself but with

time shift.

Cross Correlation: Two different sequences are compared

together.

b. M - Sequence :

It was found mathematically that its range is a Prime numbers of channels, i.e.

{0, 1... P-1}. Also can be implemented using linear feedback registers.

For every prime number and positive integer n, there exist an M-sequence of

length q = Pn-1; n is a parameter.

Now we are going to talk about the proposed approach to develop optimal

families of sequences:

Consider P = { 0, 1, ......., P-1 }

PK {0, 1... Pk-1} where P

K: Set of all word of length K (Transformation

parameter) over P.

It can be proved that if X is an M-sequence then for each K, the σK Transform

of X is an Optimal sequence,

H(Y) = Pn-k

-1, where H(Y) is the Auto Correlation.

Using one of M-Sequence properties we can obtain an optimal family F where

M ( Yr , Ys ) = Pn-K

( Cross Correlation ) for every pair of distinct members of

F considering the case of P = 2 , n=K+1

H(Y) = 2 - 1 = 1

M (Yr, Ys) = 2

So the frequency hopping sequence has a maximum of two hits with any other

sequence.

In 2004, Ryoh Fuji Hara, Ying Miao and Miwako Mishima proposed a paper

in which they stated 13 new approaches.

We can conclude that for any frequency hopping sequence family there are

three parameters:

v: Length of the sequence.

m: Number of channels.

λ: Maximum number of hits of two users having same sequence

H(Y).

It is obvious that the probability that two users having the same sequence hit at

given time slot is (λ/v).

And the probability that two users having the same sequence is (1/m).

If the two users have the same sequence Phit = λ/vm, then the probability that

two users not having the same sequence hit equals (λ+1)/v.

The probability that they don't have the same sequence equals (m-1)/m.

Therefore,

Total Phit = λ/vm + [λ+1/v]*[(m-1)/m]

Page 7: Frequency Hopping

-7-

And the number of users interfering a given user: x, can be modeled as a

binomial random variable, as each user independently interfere the given user

or not. Then,

Phit = 𝑈−1𝑥

phitx

(1- phit )U-x-1

, phit is the PDF of x and U is the number of active

users.

8. Frequency Hopping Code Division Multiple Access (FH-CDMA)

Code Division Multiple Access (CDMA) is a channel transmission standard that

allows several transmitters to send information simultaneously over a single

communication channel. This ensures that the bandwidth is used in a perfect way and

in an optimized manner.

CDMA is popular because it provides privacy, protection against multi-path

interference, anti-jamming capabilities, and a low probability of interception (LPI). In

CDMA each sender is assigned a unique code sequence that encodes the information-

bearing signal. The receiver also knows the code sequence of the sender and decodes

the received signal upon reception, recovering the original data. FH-CDMA technique

is a relatively less widely used CDMA scheme in real applications. The reason for its

less wide acceptance is owing to several factors. First, the FH technique requires a

very accurate reference clock in the whole wireless system which uses the FH-CDMA

technique for user separation. This accurate network-wide reference clock is very

costly to implement using currently available digital technology.

In an FH-CDMA system, a transmitter "hops" between available frequencies

according to a specified algorithm, which can be either random or preplanned. The

transmitter operates in synchronization with a receiver, which remains tuned to the

same center frequency as the transmitter. A short burst of data is transmitted on a

narrowband. Then, the transmitter tunes to another frequency and transmits again. The

receiver thus is capable of hopping its frequency over a given bandwidth several times

a second, transmitting on one frequency for a certain period of time, then hopping to

another frequency and transmitting again. Frequency hopping requires a much wider

bandwidth than is needed to transmit the same information using only one carrier

frequency.

The length of time the transmitted carrier is unchanged is called the dwell time

(TD). After this time has elapsed the transmitted carrier may change, i.e. hop, to

another carrier. There is a sequence of frequency hops that is given to a user. This

sequence is a frequency hopping code, and in general this code sequence continuously

repeats while a user is transmitting data. Figure 8.1 shows a code sequence for the

situation of eight carrier frequencies. Each shaded block represents a data modulated

signal positioned at a specific frequency. Suppose the modulated data are binary

frequency shift keying (BFSK) where a logical 1 is represented by frequency fA and a

logical 0 by a frequency fB. If the duration of a data bit is Tb, then the BFSK output is

either fA or fB and lasts for Tb seconds. Should TD < Tb, then it follows that for one bit

there will be a number of frequency hops as shown in figure 8.2. This is the case of

FFH-CDMA On the other hand, if TD ≥ Tb, each hop may last for a packet of data

and this is referred to as (SFH-CDMA) shown in figure 8.3 . The military often use

FFH-CDMA, where the hopping rate may be very fast making it difficult to

effectively jam the transmitted signal. However, the technology is complex and

expensive for the commercial market where SFH-CDMA is preferred.

Page 8: Frequency Hopping

-8-

Fig. 8.1 Fig. 8.2 Fast FHSS

Fig. 8.3 Slow FHSS

9. Plotting the distribution of hitting

Fig 9.1 v=31,

lambda=2,m=16,number of active

users=100

Fig 9.2 v=63,

lambda=2,m=32,number of active

users=100

Page 9: Frequency Hopping

-9-

It is clear from the above figure that as the number of channels gets greater and

the length of sequence gets longer, the expected value for the number of users

interfering a given user decreases, which is good.

Appendix A. MatLab code for the plot

n=2; while (n<10) v=(2^n)-1;%length of sequence l=2;%auto correlation m=2^(n-1);%number of channels p=(l/(v*m))+(((1+1)/v)*((m-1)/m));%hit probability x=1:1:99;%number of intrfering users y=binopdf(x,99,p);%binomial distribution of x plot(x,y,'+') title(['v=' num2str(v) ',lambda=' num2str(l) ',m=' num2str(m)

',number of active users=100'])

n=n+1;%next iteration end

Appendix B. MatLab simulation for sequence generation

We decided to make a simulation by generating two frequency hopping

sequences of the same family, and calculate the number of hits between a sequence

and itself, and between two different sequences, to verify the relation for maximum

hit probability derived in a previous section.

Our problem was that we had not deal with generating m-sequences before.

Fortunately there is an open source function to generate an m-sequence within the

ranges in the following table.

p n

2 2,3,4,5,6,7,8,9,10

3 2,3,4,5,6,7

5 2,3,4

Table B.1

We took that m-sequence and made the transformation twice on it, and then we

calculated the number of hits between a sequence and itself, and between the two

sequences.

Here is the code for that:

function [h M]=fh_sequence(p,n,k)

ms=transpose(mseq(p,n));

for j=p^n:(p^n)+k-1 ms(j)=ms(j-p^n+1); end

Page 10: Frequency Hopping

-10-

for i=1:(p^n)-1 fhs(i) = 0; for j=1:k o=i+j-1; fhs(i) = fhs(i)+ms(o)*(p^(j-1)); end end

for i=1:(p^n)-1 if i<(p^n)-1 fhs2(i+1)=fhs(i); else fhs2(1)=fhs(i); end end

h=0; for i=1:(p^n)-1 if fhs2(i)==fhs(i) h=h+1; end end

for j=1:(p^n)-1 ms2(j)=ms(j); end

ms2=circshift(ms2,[0 60]);

for j=p^n:(p^n)+k-1 ms2(j)=ms2(j-p^n+1); end

for i=1:(p^n)-1 fhs3(i) = 0; for j=1:k o=i+j-1; fhs3(i) = fhs2(i)+ms2(o)*(p^(j-1)); end end

M=0; for i=1:(p^n)-1 if fhs3(i)==fhs(i) M=M+1; end end

And here are some sample runs in the next page.

Page 11: Frequency Hopping

-11-

Fig B.1 p=2, n=3, k=2, U=100

Fig B.2 p=5, n=4, k=2, U=150

It appears that in both runs the output values are within the limits derived before.

Appendix C. Adaptive frequency hopping for unlicensed bands

Some technologies operate in unlicensed bands, just as Bluetooth, and wireless

LANS, both work at the band 2.4≈2.485 GHz, with a channel increment of 1 MHz

Therefore, a concern arises. How can we deal with the interference between them?

Nevertheless, how can we deal with interference among several Bluetooth networks

for example?

To solve this problem, a concept arisen called Adaptive Frequency Hopping.

Page 12: Frequency Hopping

-12-

Adaptive frequency hopping has two main types:

a) Adaptive frequency rolling:

The band is divided by the network in interest into sub-bands, the

transmissions of the whole network rolls between these sub-bands, while the

users hop inside the band. If the network detects an error while in a certain

sub-band, it randomly jumps to another sub-band.

b) Dynamic adaptive frequency hopping:

The network initially uses the whole band. If it detects and error, the band is

divided into two sub-band and the network rolls between them. If an error is

detected again, the band is divided into four sub-bands… Etc.

Appendix D. References

1. Introduction and definitions of spread spectrum and its types:

Tutorials from.

www.searchnetworking.com

www.sss-mag.com

2. FH-sequences and hit probability:

Families of sequences with optimal hamming correlation properties,

Abraham Lempel and Haim Greenberger, IEEE transactions on

information theory, January 1974.

Optimal frequency hopping sequences:

a combinatorial approach, Ryoh Fuji-Hara, Ying Miao and Miwako

Mishina, IEEE transactions on information theory, June 2004.

3. CDMA:

GSM, cdmaOne and 3G Systems, Raymond Steele , Chin-Chun Lee and

Peter Gould, publisher: john wiley and sons, 2001

An Overview of CDMA Techniques for Mobile Communications, M.F.L.

Abdullah and Mayada Faris Ghanim, Journal of Mobile

Communicat ion, 2011 .

The next generation CDMA technologies, Hsiao-Hwa Chen, publisher:

Wiley.

Multi-Rate FH-CDMA wireless systems, a lecture by Guu Chang Yung,

Department of Electrical Engineering, National Chung-Hsing University,

Taiwan.

4. MatLab:

Tutorials by Eng. Wael El Sharkasy, IEEE Alexandria Student Branch,

Summer 2009.

http://www.mathworks.com/matlabcentral