software defined radiocci.usc.edu/wp-content/uploads/2017/09/class-9-qpsk... · 2017-09-28 · real...
TRANSCRIPT
SOFTWARE DEFINED RADIOUSR SDR WORKSHOP, SEPTEMBER 2017
PROF. MARCELO SEGURA
SESSION 5: QPSK TX/RX IMPLEMENTATION
1
USC SDR WORKSHOP
QPSK
• In the case M-PSK modulation, due to rotational symmetry, the synchronization could lock to any of the M
phases.
• To solve this situation, differential encoding can be used or Data Aided rotation.
DR ING MARCELO SEGURA
2
PHASE AMBIGUITY
USC SDR WORKSHOP
QPSK
• Differential encoding maps the data to the phase shift instead to the absolute phase.
• For BPSK, M=2, is very simple implementation using an XNOR
DR ING MARCELO SEGURA
3
DIFFERENTIAL ENCODING
USC SDR WORKSHOP
QPSK
• If we have a phase error of π, the encoded and decoded data is as follow:
• ENCODER
• DECODER
DR ING MARCELO SEGURA
4
DIFFERENTIAL ENCODING: BPSK
USC SDR WORKSHOP
QPSK
• M=4
DR ING MARCELO SEGURA
5
DIFFERENTIAL ENCODING: QPSK
USC SDR WORKSHOP
QPSK
• Example
• ENCODER Phase error π
• DECODER
DR ING MARCELO SEGURA
6
DIFFERENTIAL ENCODING: QPSK
USC SDR WORKSHOP
QPSK
• From now we just work on the PHY layer, then we need to move to the Data Link Layer.
DR ING MARCELO SEGURA
7
COMM PROTOCOL
USC SDR WORKSHOP
REAL TIME QPSK
• The basic task is to detect the start of a signal information. If we are transmitting text, encoded as ASCII,
we need to detect the sequence start to decode properly.
DR ING MARCELO SEGURA
8
FRAME SYNC
USC SDR WORKSHOP
REAL TIME QPSK
• The Header transport the information useful for synchronization.
• Advantages: in cases of error just re-transmite the lost part.
DR ING MARCELO SEGURA
9
FRAME SYNC
USC SDR WORKSHOP
REAL TIME QPSK
• Usually the Header contain a Preamble, that is a sequence with good autocorrelation properties.
• The preamble sequence is very important for start detection.
• BARKER sequence is one with have this characteristics.
DR ING MARCELO SEGURA
10
FRAME SYNC: PREAMBLE
USC SDR WORKSHOP
REAL TIME QPSK
• The receiver implement a correlator, FIR with inverted coefficients, to detect the frame start, usually called
Start Frame Delimiter (SFD).
DR ING MARCELO SEGURA
11
FRAME SYNC: CORRELATOR
USC SDR WORKSHOP
REAL TIME QPSK
• Depends on the type of communication systems, will be the load that header will introduce.
DR ING MARCELO SEGURA
12
FRAME SYNC
USC SDR WORKSHOP
REAL TIME QPSK
• In order to get better correlation peaks, the sequence can be repeated, this also reduce efficiency.
• Ex Barker N=26, Frame=200, Payload=174, efficiencies 174/200=87%
DR ING MARCELO SEGURA
13
FRAME SYNC
USC SDR WORKSHOP
REAL TIME QPSK
• A threshold should be selected to capture the payload when the correlator output cross that level.
DR ING MARCELO SEGURA
14
FRAME SYNC
USC SDR WORKSHOP
REAL TIME QPSK
• Tx Model
• Bit Generation block:
• Data Frame = 200 bits
• Header= 2 Baker 13 sequences (26 bits)
• DataLenght= 200-26= 174bits
• MessageLength=7bits (Ascci) x 15 (Hello World xxx)= 105 bits
• Random bits to improve Scramble= 69 (Bernoulli Gen)
• Scramble: use to reduce the number of consecutives ‘1’ or ‘0’, helps the synchronization.
DR ING MARCELO SEGURA
15
QPSK TX
USC SDR WORKSHOP
REAL TIME QPSK
• Bit generator
DR ING MARCELO SEGURA
16
QPSK TX
USC SDR WORKSHOP
REAL TIME QPSK
DR ING MARCELO SEGURA
17
QPSK RX
AGC: The AGC is placed before the Raised Cosine Receive Filter so that the signal amplitude can be measured
with an oversampling factor of four.
RRC: in this implementation decimate by 2
USC SDR WORKSHOP
REAL TIME QPSK
• FFT implementation
DR ING MARCELO SEGURA
18
QPSK RX: COARSE FREQUENCY
USC SDR WORKSHOP
REAL TIME QPSK
DR ING MARCELO SEGURA
19
QPSK RX: FINE FREQUENCY
USC SDR WORKSHOP
REAL TIME QPSK
DR ING MARCELO SEGURA
20
QPSK RX: TIME RECOVERY
USC SDR WORKSHOP
REAL TIME QPSK
• Interpolation Filter
DR ING MARCELO SEGURA
21
QPSK RX: TIME RECOVERY
USC SDR WORKSHOP
REAL TIME QPSK
• SYMBOL RECOVERY
DR ING MARCELO SEGURA
22
QPSK RX: TIME RECOVERY
USC SDR WORKSHOP
REAL TIME QPSK
DR ING MARCELO SEGURA
23
QPSK RX: DATA DECODING
USC SDR WORKSHOP
REAL TIME QPSK
• FRAME SYNC
DR ING MARCELO SEGURA
24
QPSK RX: DATA DECODING
USC SDR WORKSHOP
REAL TIME QPSK
• Frame Sync
DR ING MARCELO SEGURA
25
QPSK RX: DATA DECODING
From Barker detector
USC SDR WORKSHOP
REAL TIME QPSK
• Phase ambiguity correction: Data aided
DR ING MARCELO SEGURA
26
QPSK RX: DATA DECODING
USC SDR WORKSHOP
REAL TIME QPSK
• Header remove & Descramble
• Send data to workspace for ASCII conversion
DR ING MARCELO SEGURA
27
QPSK RX: DATA DECODING