Professional Documents
Culture Documents
Freq Hopping
Freq Hopping
Abstract—The frequency hopping ad hoc network system is There are two main challenges emerging to implement an
the product of frequency hopping (FH) technology and ad hoc FH MAC protocol on FPGA. Firstly, frequency synthesizer
network technology. Because of its anti-interference, mobility is the most important part in FH, which can generate a
and invulnerability, the frequency hopping ad hoc network is
widely applied to military and civil communications systems. large number of discrete frequency signals from one or more
To make efficient use of the transmission channel, a frequency standard signals. It usually has two stages when frequency
hopping hybrid multiple access (FHMA) protocol is proposed hopping. One is the transition period (transient time), and
for frequency hopping ad hoc network. Each hop duration of the other is the retention period (stable-state time) [3]. The
the FH is divided into three parts. The first one is the transition transition period is required to be as short as possible in order
period for frequency synthesis, and the following part is the time
division multiple access (TDMA) period for reservation based to achieve high-speed conversion, but it actually exists and can
multiple access, and the last part is the carrier sensing multiple be easily ignored in the design of FH MAC protocol. Thus
access with collision avoidance (CSMA/CA) period for random how to design an FH MAC protocol by taking the transition
access. Furthermore, an FPGA based implementation design is period into account, becomes the first challenges. Secondly,
given for FHMA, where the transmitter module as well as the how to accurately describe the sequential working procedures
receiver module are designed with the finite state machine (FSM)
method. Finally, the FHMA is implemented in Xilinx Vivado of the designed MAC protocol on FPGA becomes the other
design suite to show the project is feasible and efficient. This challenge. Since FPGA, as a hardware platform, is a parallel
protocol implementation is done in Verilog HDL language so working environment, while the designed MAC protocol is
that it can be easily transplanted. Behaviour simulation results usually a time dimensional sequential working process.
verifies the correctness of the implementation. The related works on how to design and implement FH
Index Terms—Frequency hopping ad hoc network, Frequency
hopping hybrid multiple access protocol (FHMA), MAC, FPGA. MAC protocols on FPGA can be classified into two categories,
according to the ‘design’ and/or the ‘implement’ of a MAC
protocol on FPGA.
I. I NTRODUCTION
• A large amount of new MAC protocols combined FH
Ad hoc network works without fixed infrastructure, where with other techniques are proposed. In Ref. [4], a protocol
every mobile has the same data communication function. called statistical priority-based media access (SPMA) is
Frequency hopping is a kind of technique, which switches proposed, that is based on contention based CSMA and
working frequency in a random sequence. Frequency hopping asynchronous frequency hopping technique. A virtual full
ad hoc network system combines FH technology with ad hoc duplex physical frequency hopping method is employed,
network technology. It gets the anti-interference performance which enables the node overhears all the transmitting
from FH technology and the performance of network mobility signals while it is sending messages to other nodes. Ref.
and invulnerability from ad hoc network technology [1], [2]. [5] analyses the performance of a slow-frequency-hopped
FH multiple access control (MAC) protocol plays a key role with reservation based TDMA communication system.
in applications which have higher demands of timeliness and In Ref. [6], it shows the combination of CSMA/CA
reliability, such as aeronautical ad hoc network (AANET). In and TDMA can improve the channel access capacity of
such a network the MAC protocol is desired to be implemented the wireless communication networks. A MAC protocol
on field programmable gate arrays (FPGA) due to its advan- that is equipped with the CSMA/CA and the scheduling
tages, such as high integration, high speed and low power method based TDMA is put forward to output a better
consumption. FPGA is a kind of semi-custom circuit that throughput in [7]. These paper indicate the capability of
develops on the original hardware-editable device in recent hybrid multiple access protocol is better than one only
years. Using FPGA to implement the MAC protocols can make multiple access protocol.
the design product miniaturized, integrated and reliable, while • An FPGA based design and implementation of IEEE
the development cycle is greatly shortened. What’s more, it is 802.15.4 MAC protocol is shown in Ref. [8]. And an
convenient for internal debugging and modification. efficient method to design time-critical MAC protocol
978-1-5386-7946-3 / 18 / $ 31.00
c 2018 IEEE by using finite state machines (FSM) is given in [9]–
l-)))
7LPHIUDPHVWUXFWXUH
7LPHVROW
)UHTXHQF\ 7
)UHTXHQF\ ĂĂ ĂĂ
7LPH
)UHTXHQF\
)+SHULRG7X
ā
ā
ā 7'0$SHULRG7W
WUDQVLWLRQSHULRG
%$&.2)) '$7$B6(1'
)UHTXHQF\1 7LPH
7LPHVROW7LPHVROW7LPHVROW 7LPHVROW7LPHVROW UHWHQWLRQSHULRG
&60$&$SHULRG7F
āāā 0 0
Es;d^Ϳ
^dϮ ϲϱϰϯ
ϵϴϳϲ
designing and implementation of next generation WLAN
MAC prototype. A modified 802.11MAC FPGA-based Fig. 3. Sequence diagram of CSMA/CA mechanism.
prototype is proposed and designed in Ref. [11].
As far as the authors know, there exists no works on FPGA
based design and implementation of FH MAC protocols. This is also slotted into time slots. When each time slot starts,
motivates us to combine FH with hybrid multiple access the system will hop into another frequency channel in a
protocol to design an FH hybrid multiple access protocol, discrete random FH sequence. Let T denote the length of the
and implement it on FPGA. The main contributions are timeslot. In each timeslot, there exists an FH unstable period
summarised as follows: at the beginning of the timeslot, with length of Tu , named the
• A frequency hopping hybrid multiple access (FHMA) transition period of the FH system. And the left part of the
protocol is proposed, which combines the FH tech- timeslot is the retention period, with length of T − Tu . The
nology, reservation based TDMA and contention based transition period is reserved to make sure that frequency slots
CSMA/CA. It can not only improve anti-interference are switched successfully. And the retention period is provided
performance of the system, but also enhance the channel for transmission of data, where the proposed hybrid multiple
utilization. access protocol works.
• A design scheme of FHMA on FPGA is proposed by
using finite state machine (FSM) [12] method. With FSM, III. FHMA: FH H YBRID M ULTIPLE ACCESS P ROTOCOL
the proposed MAC protocol is designed as a control logic
of a node, which controls the node when to send, to This section will introduce FHMA in details. The basic
receive and to backoff/wait according to the state of the principle of FHMA is to divide the time line into time frames
FSM. Both the designed FSMs of the sender module and first, where each time frame consists of M timeslots. Then, for
the receiver module are given. each time slot the retention period is divided into two parts,
• The proposed FHMA is implemented in Xilinx Vivado i.e., the reservation based TDMA period Tt , and the contention
design suite. The project is edited in Verilog HDL, which based CSMA/CA period Tc , where we have T -Tu =Tt +Tc .
can be easily transplanted. Behaviour simulation results Fig.2 shows the time frame structure of the proposed
verify that the design and implementation is reliable. FHMA. The length of these three periods is different but fixed.
The rest of this paper is organized as follows. In Section The length of FH period is determined by the frequency syn-
II, we provide an integrated framework of FHMA to describe thesizer, then the length of other two periods can be optimized
the overall model of the protocol. In Section III, we provide by evaluating its performance via network simulation.
a comprehensive introduction to FHMA proposed by us. In In each time frame, the TDMA periods, i.e., Tt , of the
Section IV, we illustrate the the system FPGA design scheme timeslots can be scheduled by a cluster head, or dynamically
and the key part design of hybrid multiple access protocol. reserved in distribute. Because TDMA has the performance
Section V describes the simulation results of the FHMA in of real-time, some important data that has high real-time and
Vivado design suite. Section VI concludes this paper. reliability requirements will send in revised TDMA. During
the contention based CSMA/CA period Tc , the nodes contend
II. S YSTEM M ODEL to access into the channel in a CSMA/CA mode, and an
Suppose that there are many nodes deployed in an ad example is shown in Fig.3. The nodes transmitting data in
hoc network, and every one uses an FH system capable of CSMA/CA mode, can enhance the channel utilization of the
wireless communication. Fig.1 shows the working process of network. Therefore, the proposed FHMA can provide different
the frequency hopping system. The wide frequency band is traffic quality of service (QoS), and the traffic priorities can
divided into N narrow frequency channels, while the time be defined according to its data type.
-
FON UVW '$7$ )
'$7$ '
%$&.2)
',)6B: 576B6( &76B:$
6HQGHU0RGXOH ,'/( & $,7(5
( )B:$,7 * 1'
, ,7(5
(5
$ 2 + .
&ORFN&RXQWHU % 3 /
• cts valid: Signal of right CTS has been received 1$9B83 5(&9B&
2
'$7$ 76$&.
• ack valid: Signal of right ACK has been received
Thirdly, the main outputs Δ = {csma o en, csma o, -
,
ready data in en, ready data in en1}. The outputs is de-
scribed below. Fig. 6. Finite state machine of receiver module.
• csma o en: csma o valid
• csma o: The output of data frame and control frame
• ready data in en: Acknowledge signal from sender B. FPGA implementation scheme of receiver module
module to tell memory module to send CSMA/CA data The function of the receiver module is to parse the received
in frame and generate a corresponding signal to inform the sender
• ready data in en1: Acknowledge signal from sender module to send the corresponding CTS or ACK or DATA
module to tell memory module to send TDMA data in frame.
Finally, letters of A-P represent all transitions from one Fig.6 is the extend finite state machine designed for the
state to another state in Fig.5. Now, we try to describe each receiver module. Its design follows the same principle of
letter in 3-tuple(pt , nt , ct ) [15], where: pt represents the CSMAM/CA above.
present state; nt is the next state; and ct is the transition The receiver module can be divided into nine states
condition, that returns 1/0 to enable/disable the transition. according to its function, {IDLE, RECV V ECT OR,
RECV DAT A, RECV CT S/ACK, DAT A W AIT ER
• A: (IDLE, CT S/ACK SEN D, The signal of sending N AV U P DAT E, RECV RT S, SIF S W AIT ER1,
CTS or ACK comes) SIF S W AIT ER2}.
• B: (CT S/ACK SEN D, IDLE, CTS/ACK has been
• IDLE: The initial state.
sent over)
• RECV V ECT OR: Receiving vector from PHY, and
• C: (IDLE, DIF S W AIT ER, Data ready to be sent
analyzing the type of following frame.
and channel is free)
• RECV DAT A: Receiving and analyzing Data frame.
• D: (DIF S W AIT ER, IDLE, Channel is busy)
• RECV RT S: Receiving and analyzing RTS.
• E: (DIF S W AIT ER, BACKOF F W AIT ER, D-
• RECV CT S/ACK: Receiving and analyzing CTS or
IFS counts to zero)
ACK.
• F : (BACKOF F W AIT ER, IDLE, Channel is busy)
• N AV U P DAT E: Updating and countdowning NAV.
• G: (BACKOF F W AIT ER, RT S SEN D, Back-off
• SIF S W AIT ER1: Waiting in the duration of SIFS to
number counts to zero)
tell sender to send CTS.
• H: (BACKOF F W AIT ER, DAT A SEN D, The
• SIF S W AIT ER2: Waiting in the duration of SIFS to
length of data is quite small)
tell sender to send ACK.
• I: (RT S SEN D, CT S W AIT ER, RTS has been sent
• DAT A W AIT ER: Waiting data frame coming.
over and the length of data is long)
• J: (CT S W AIT ER, IDLE, CTS overtime time out- Secondly, the input ports can be just regard as the output
numbers maximum time or right ACK arrives) ports of sender module. The main inputs are {clk, rst,
• K: (CT S W AIT ER, DIF S W AIT ER, CTS over- csma in en, csma in}.
time and the time is no larger than maximum time) • clk: System synchronization clock
• L: (CT S W AIT ER, SIF S W AIT ER, Right CTS • rst: System reset signal
arrives) • csma in: Input of data frame and control frame
• M : (SIF S W AIT ER, DAT A SEN D, SIFS counts • csma in en: csma in valid
to zero) Thirdly, the outputs Δ = {sif s waiter1 over,
• N : (DAT A SEN D, ACK W AIT ER, Data frame has sif s waiter2 over, nav, cts valid, ack valid, data out,
been sent over) data out en}. The first five outputs is just part of the inputs
• O: (ACK W AIT ER, DIF S W AIT ER, ACK over- of sender module, so these outputs will not be declared again
time and the time is no larger than maximum time) and the other outputs are described below.
• P : (ACK W AIT ER, IDLE, ACK overtime time out- • data out en: data out valid
numbers maximum time or right ACK arrives) • data out: Output of valid data from data frame
Finally, all transitions in Fig.6 are also represented by letters
of A-P again. Here is the description of A-P .
• A: (IDLE, RECV V ECT OR, Data frame coming)
• B: (RECV V ECT OR, RECV DAT A, Following
frame is data frame)
• C: (RECV V ECT OR, RECV RT S, Following
frame is RTS)
• D: (RECV V ECT OR, RECV CT S/ACK, Follow-
ing frame is CTS/ ACK)
• E: (RECV DAT A, SIF S W AIT ER2, CRC check
of DATA frame is correct)
• F : (RECV DAT A, IDLE, Destination address does
not match the local address or CRC check is wrong or
the frame is sent in TDMA)
• G: (SIF S W AIT ER2, IDLE, SIFS counts to zero)
• H: (RECV RT S, SIF S W AIT ER1, Destination ad-
dress matches the local address and CRC check is correct) Fig. 7. Simulation of the sender module.
• I: (RECV RT S, IDLE, CRC check is incorrect)
• J: (RECV RT S, N AV U P DAT E, Destination ad-
dress does not match the local address and CRC check
is correct)
• K: (SIF S W AIT ER1, DAT A W AIT ER, SIFS
counts to zero)
• L: (DAT A W AIT ER, IDLE, Waiting data frame
overtime)
• M : (DAT A W AIT ER, RECV V ECT OR, Data
frame coming)
• N : (RECV CT S/ACK, IDLE, CRC check is incor-
rect or the destination address matches the local address
and the CRC check is correct)
• O: (RECV CT S/ACK, N AV U P DAT E, Destina- Fig. 8. Simulation of the receiver module.
tion address does not match the local address and CRC
check is correct)
• P : (N AV U P DAT E, IDLE, NAV counts to zero) csma o en in Fig.7. Therefore, the functional simulation of
V. S IMULATION R ESULTS this module is equivalent to the overall functional simulation.
As we can see, the data received in Fig.8 is the same as data
We employ Xilinx’s Vivado design suite to implement FH- transmitted in Fig.7. In the Box ,
1 tdma mode en becomes
MA in VC707 Evaluation Platform. The entire design is imple- 1 when the frame comes, it means this frame is sent in TDMA.
mented using Verilog HDL hardware description language. In Box 2 and 3 show that when the receiver receive frame
the test verification process, a testbench is used to complete the transmitted in CSMA/CA, a series of follow-up signals will
verification. The following is the simulation of each module work as the design in Fig.6.
and the whole project. In the overall simulation verification, Fig.9 is the simulation of receiver output. This model
In consideration of no physical layer (PHY), so the sender and extracts the valid data and outputs them from the port of
receiver module interfaces are directly connected without the data out. Port data out en indicates data out data valid
physical layer.