Download presentation
Presentation is loading. Please wait.
Published byGyles Osborne Modified over 9 years ago
1
Dr. Dóra Maros Institute of Telecommunication Óbuda University Telecommunications Techniques II. Source Coding (speech) Error detection and Error correction
2
Transmission from source to destination Source (analog) Destination (analog/digital) Channel (digital) Channel coding Channel decoding Source coding Source decoding -Microphone -Camera -Pressure, temperature etc sensors -Speaker (ears) -Displays (eyes) -Alarms (see and hear!)
3
Bandwidth allocation Source information Source information Filter A/D Compression Channel coding Channel coding ModulationChannel
4
How we „generate” voice? Vocal tract (resonator filter system) Excitation Vocal cords Glottis
5
Characterization of Human Speech Frequency: 300-3400 Hz The charcaterization of a 20 ms duration sample does not change (excitation, filter system) We can find some correlations between two consecutive 20 ms samples Using a long time analysis we can predict the next pattern (differencial coding, eg. DPCM) Our brain can correct a lot of „errors”!
6
Classification of Speech Encoders Waveform encoder: describes the analog signals in the time and frequency domain Vocoders: describes the rules of phonation (how we generate the voice) Hybrid encoders: combines good properties of two coders (low rate, good quality)
7
Subjective MOS MOS: Mean Opinion Score
8
Theory of Waveform Encoders Sampling (sampling frequency) Quantization (number of levels) Coding (length of codeword) Benefits: good voice quality Disadvantage: big rate (PCM: 64 kbit/s)
9
Theory of Vocoders Benefit: low rate (pár kb/s) Disadvantage: bad quality A, E, O, I etc. vowels B, F, P, M etc. consonants Excitation
10
Voiced - Vowels Typical amplitude/time signal Typical Power Spectrum Density/ Frequency signal Pitch frequency: 50-500 Hz
11
Voiceless - Consonants Typical amplitude/time signal (white noise) Typical Power Spectrum Density/ Frequency signal
12
Sub-band Coding Baseband is divided into sub-bands regarding PSD Each sub-bands are encoded separately Benefits: low noise sensitivity (different sampling frequencies and codeword length are used) Bitrate: 16-32 kbit/s Receiver: sub-bands are superimposed (added)
13
Speech Codecs MOS AMR: Adaptive Multirate Codec (3G és 4G mobile) G723: VoIP (mobile) G728: LD-CELP, Low- Delay code excited linear prediction G729: CS-ACELP, Coding of Speech, Adaptive Code Excited Linear Prediction (VoIP) GSM FR and EFR: Full rate, Enhanced Full Rate Internet Low Bitrate Codec (iLBC)
14
Theory of Hybrid Encoder/Decoder Analysis by Synthesis (AbS)
15
Excitation: MPE and RPE MPE: Multiple Pulse Excitation RPE: Regular Pulse Excitation, GSM- 13kbit/s MPE: aplitudes and phases are encoded RPE: only amplitudes is encoded RPE MPE
16
Excitation: CELP (Code Excited Linear Prediction) Code table: 1024 excitation samples Only the index of table is sent! Bitrate: 4,8-16 kbit/s Excitation Table Excitation Table Index
17
Codec Rate Codec rate: t in -t out Typical: 50-100 ms Fast: G728 CELP (Do- CELP) codec, 2-5 ms Encoder Decoder t in t out
18
GSM Speech Codec Bitrate: 260 bit/20ms, 13kbit/s Waveform encoder Voice activity detector
19
Voice Activity Detector (VAD)
20
Discontinous Transmission (DTX) and SID Frame SID: Silence Indicator
21
Frequency Fletcher-Munson Curves (sensitivity of ears) Equal-loudness contours for the human ear Phon: Unit of relative loudness level for pure tones
22
Color Sensitivity of Eyes Luminosity sensitivity is 3 x more faster then color sensitivity
23
Compression of Source Information Lossless compression: small part of information is lost Lossy compression: huge part of information is lost Compression Rate: original information/compressed information image: lossless :.raw lossy:.jpeg (eg. 25/1)
24
Error Correction (general) Noisy channelDemodulator Received bit sequence (BER) Error detection Error detection procedures Error correction Automatic Repeat Request (ARQ) Forward Error Coding (FEC)
25
Error Detection I. (repetition) We use small blocks Each block is sent repeatedly Efficient, when we have only one bit error 1011 10101011 SenderReceiver 1011 101010111010
26
Even or odd parity Even: we add „1” parity if the number of „1”s is odd, otherwise parity is „0”. Odd: we add „1” parity, if the number of „1”s is even Applications: mikrocontollers, data bus, data storage 10110010 00110010 Even parity Odd parity SenderReceiver 10110110 00110110 Error Detection II. (parity)
27
Error Detection III. (polarity change) 10110010 01001101 SenderReceiver 10110010 01011101 We send the original and negated bit sequency If the bit polarity is the same at the receiver - error Disadvantege: big redundancy Application: multicarrier systems 01011101 10100010 Receiver
28
Error Detection IV. (Cyclic Redundancy Check -CRC) A polimon is generated from bit sequence (data) Generator polinom is the same (known) at sender and receiver CRC= data polinom/generator polinom Application: mobile, RFID, Bluetooth, Ethetnet..etc 10110010101001 SenderReceiver CRC10100010101001CRC polinom generator polinom division polinom division CRC ? MSBLSB
29
Error Detection V. (CheckSum) The message is segmented into parts We binary add the parts (CS) The message and CS are sent We binary add the parts again at receiver side If two CSs are not equal -error
30
Error Detection VI. (Hamming coding) Eg: 4/7 Hamming code …….4 data bits – 3 parity bits d=2 error can be detected, but only one is corrected Number of parity bits = largest exponent (2 3 ) Sender Receiver Code i Hamming distance calculator The Hamming distance of the code words is greater or equal d+1
31
Hamming coding (even parity) 7653 p1 p2 p3 0001 1 1 0 0010 1 0 1 0011 0 1 1 0100 0 1 1 DATA PARITY p1: (3,5,7) – 2 0 =1 P2: (3,6,7) – 2 1 =2 P3: (5,6,7) – 2 2 =4 7 6 5 4 3 2 1 HD:4 HD:3
32
Error Correction (ARQ:Automatic Repeat Request) Four types: Stop and Wait Go-Back-N Selective Hybrid
33
Stop and Wait ARQ t1 t2 t1 After time out the sender repeats the transmission Problem: receiver does not know whether it received the repeated or next data block Solution: 0 and 1 flag bits in consecutive data blocks Data block Sender Receiver
34
Go-Back-N ARQ 1. We define a sliding time window 2. The packets are sent one by one (without ACKs) in this window 3. If the first ACK is detected window slides. 4. If not, all packets are sent again
35
Selective ARQ Message Long message – one ACK Advantage: if no errors – fast transmission Disadvantage: If errors – the message is sent again – slow transmission Small block – more ACKs Advantage: we repeate only those blocks where errors are detected Disadvantage: slow ( ACK)
36
Hibrid ARQ (Chase combining) NACK is sent back, receiver does not drop faulty packets Using an errors correction procedure we can repair the data from faulty packets
37
Hibrid ARQ (Incremental redundancy) A FEC (Forward Error Coding) is used at sender side The redundancy bits are sent after NACK
38
Forward Error Coding: FEC Two main types: Convolutional coding Block coding We add redundancy bits which help correct data at the receiver
39
Convolutional Coding (theory example) (n,k,m) coder D laches and modulo2 adders n: number of outputs k: number of inputs m: number of D laches number of input state : (m-1) 2 (3,1,3) coder Generator polinoms G 1 (1,1,1) G 2 (0,1,1) G 3 (1,0,1)
40
Types of Convolutional Coders (Mother coder and „punctured” coder) Mother coder:1/n „Punctured” coder: k/n eg: 2/3 coder
41
Systematic coder We send original data (V 3,V 2,V 1 and redundancy (v 4 )
42
Non systematic coder We do not send original data We send only convolutional coded info
43
We code „1” (find the error!) Output: 11111011
44
1011 vs. 1 1 1 1 0 1 1 1 0 1 0 1 1 1 ?
45
But we use convolution ! Input bits Respones (coded data) 11 1 1 1 1 0 1 1 0 0 0 0 0 0 0 0 0 (two bits shift) 1 1 1 1 1 1 0 1 1 ----------------------------------------------------------------------------- Kódolt info1 1 1 1 0 1 1 1 0 1 0 1 1 1 We use modulo2 adder for outputs! Shift: L-1 (L: number of inner D laches)
46
Operation table
47
State graph Info: 1011 Coded info: 1 1 1 1 0 1 1 1 0 1 0 1 1 1
48
Tree structure Info: 1011 Coded info: 1 1 1 1 0 1 1 1 0 1 0 1 1 1
49
Trellis Graph
50
Coding with Trellis Graph Info: 1011 Coded info: 1 1 1 1 0 1 1 1 0 1 0 1 1 1
51
Error Correction – Fano algorythm I. Info: 1011 Coded info: 11 11 01 11 01 01 11 - Detected info: 01 11 01 11 01 01 11
52
Error Correction – Fano algorythm II.
53
Error Correction – Fano algorythm III.
54
Error Correction – Viterbi algorythm I. Hamming metric We use Hamming metric
55
Error Correction – Viterbi algorythm II.
56
Error Correction – Viterbi algorythm III.
57
Error Correction – Viterbi algorythm IV.
58
Error Correction – Viterbi algorythm V.
59
Error Correction – Viterbi algorythm VI.
60
Error Correction – Block Coding (general) G= 1+ X 11 +X 13 +X 14 +X 16 XOR Gates LFSR: Linear Feedback Shift Register
61
Error Correction – Block Coding (GSM Speech) Data 50 bits Block code bits XOR gate SW-ON – coding (50 clocks) SW-OFF – Reading Data from D laches
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.