cs434/534: topics in networked (networking)...

Post on 13-Aug-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

CS434/534: Topics in Networked (Networking) Systems

Wireless Foundation: OFDM Implementation

Wireless MAC Layer Design

Yang (Richard) YangComputer Science Department

Yale University208A Watson

Email: yry@cs.yale.edu

http://zoo.cs.yale.edu/classes/cs434/

Outline❒ Recap❒ Wireless background

❍ Frequency domain❍ Modulation and demodulation❍ Wireless channels❍ Wireless PHY design

• design for flat fading• design for ISI

– what is ISI– band limited ISI

» symbol wave shaping– multi-path ISI

» equalization (Viterbi)» OFDM

❍ Wireless MAC design

3

Admin.

❒ PS2 on wireless posted

❒ Please see potential projects

Recap: Inter-Symbol Interference (ISI)

❒ ISI happens when the signaling for one symbol leaks into that of another symbol

❒ Why does ISI happen?❍ Band limit produced ISI❍ Multipath produced ISI

4

1 2

5

Recap: Band-Limited ISIa g(t)

A design of p(t) has no ISI iff folded spectrum is flatP∑( f ) ≡

1T

P( f + n /T ) = p0n=−∞

6

Recap: Multipath ISI

❒ The problem: given received y[m], m = 1, …, L+2, where L is frame size and assume 3 delay taps (it is easy to generalize to D taps):

y[1] = x[1] h0 + w[1]y[2] = x[2]h0 + x[1] h1 + w[2]y[3] = x[3]h0 + x[2]h1 + x[3] h2 + w[3]y[4] = x[4]h0 + x[3]h1 + x[2] h2 + w[4]y[5] = x[5]h0 + x[4]h1 + x[3] h2 + w[5]…y[L] = x[L]h0 + x[L-1]h1 + x[L-2]h2 + w[L]y[L+1] = x[L]h1 + x[L-1]h2 + w[L+1]y[L+2] = x[L]h2 + w[L+2]

determine x[1], x[2], … x[L]http://en.wikipedia.org/wiki/Andrew_Viterbi

7

s[0] s[1] s[2] s[3] s[4]

0

1

00

01

10

11

000

010

100

110

001

011

101

111

000

010

100

110

001

011

101

111

x[1]=0

x[1]=1

x[2]=0

x[2]=1

x[2]=0

x[2]=1

x[3]=0

x[3]=1

x[3]=0

x[3]=1

x[3]=0

x[3]=1

x[3]=0

x[3]=1

observe y[1] observe y[2] observe y[3] observe y[4]

prob. of observing y[4]:w[4] = y[4]-x[4]h0-x[3]h1-x[2]h2

prob. of observing y[1]:w[1] = y[1]-x[1]h0

prob. of observing y[2]:w[2] = y[2]-x[1]h0-x[2]h1

Recap: Multiple Carrier Modulation and OFDM

8

i j

Despite wave shaping, there can be leak from one subcarrier to another subcarrier

if integer number of cycles in [0, T]

cos[2π ft0

T

∫ +φ]dt = 0

OFDM Modulation

9

10

OFDM Implementation

❒ Take N symbols and place one symbol on each subcarrier (freq.)

❒ Q: complexity of the implementation strategy?

Freq0

FreqN-1

d0ej2π 0 fsc 0

dN−1ej2π (N−1) fsc 0

d0ej2π 0 fscTs

dN−1ej2π (N−1) fscTs

d0ej2π 0 fsc 2Ts

dN−1ej2π (N−1) fsc 2Ts

Ts: per sample time

11

OFDM: Implementation Issue❒ Hardware implementation can be expensive if we use

one oscillator for each subcarrier❒ Software implementation requires N multiplications

per time output => N2 multi. per N outputs

Freq0

FreqN-1

d0ej2π 0 fsc 0

dN−1ej2π (N−1) fsc 0

d0ej2π 0 fscTs

dN−1ej2π (N−1) fscTs

d0ej2π 0 fsc 2Ts

dN−1ej2π (N−1) fsc 2Ts

12

OFDM: Key Idea 2

❒ Consider data as coefficients in the frequency domain, use inverse Fourier transform to generate time-domain sequence

outk = dnej2π (nfsc )kTs

n=0

N−1

❒ Assume N outputs per symbol time T, fsc=1/T

outk = dnej2π (nfsc )kTs

n=0

N−1

∑ = dnej2π (nfsc )k

TN

n=0

N−1

∑ = dnej2π 1

NnkfscT

n=0

N−1

= dnej2π 1

Nnk

n=0

N−1

13

OFDM Implementation: FFT

channel

14

OFDM Implementation

❒ Parallel data streams are used as inputs to an IFFT

❒ IFFT does multiplexing and modulation in one step !

15

Guard Interval: Removing ISI

❒ Orthogonal subcarriers remove inter-carrier interference

❒ Slow symbol rate reduces inter-symbol interference, but may still have ISI

❒ Basic idea of GI: skip the first part “damaged” signal

1 2

1 2

More details: Chap. 13.1.4 Gast

16

OFDM Guard Interval

17

OFDM Implementation

http://proquest.safaribooksonline.com/0596100523?tocview=true

OFDM in 802.11a: Channels+Subcarriers❒ Symbol time T = 1/312.5KHz = 3.2us❒ Each physical channel is 20 MHz

❒ Each channel is divided into subcarriers (48 data, 4 pilot (requirement on subcarrier freq?)

18

5150 [MHz]5180 53505200

36 44

center frequency = 5000 + 5*channel number [MHz]

channel#40 48 52 56 60 64

149 153 157 1615220 5240 5260 5280 5300 5320

5725 [MHz]5745 58255765

channel#

5785 5805

OFDM in 802.11a:FFT + GI❒ 64 samples FFT + 16 GI❒ Office: delay spread 40-70 ns (up to 200 ns)

19

http://standards.ieee.org/getieee802/download/802.11a-1999.pdf

20

Other Multipath Techniques

❒ There are other techniques to handle multipath such as Rake Receiver

❒ See backup slides for somedetails

21

Summary of Wireless PHY

InterleavingConvolutional

encoderQAM Mod IFFT GI Addition

Symbol WaveShaping

ScrambleTo RF

Direct SequenceSpread Spectrum

DQPSK ModSymbol Wave

ShapingScramble

(a) IEEE 802.11b 2Mbps

To RF

(b) IEEE 802.11a/g 24Mbps

Demod +Interleaving

FFTViterbi

decodingRemove GI

From RF

Descramble

DQPSK DemodDespreading Descramble

Transmitter:

Receiver:

Transmitter:

Receiver:

Samples@32Mbps

Samples@352Mbps

Samples@1.4Gbps

From RF

Samples@1.4Gbps

Decimation

Samples@352Mbps

Samples@32Mbps

Bits@2Mbps

Bits@48Mbps

Bits@48Mbps

Samples@512Mbps

Samples@1.28Gbps

Samples@640Mbps

Decimation

Samples@384Mbps

Bits@24Mbps

Bits@2Mbps

Samples@1.28Gbps

Samples@640Mbps

Samples@512Mbps

Samples@384Mbps

Bits@48Mbps

Bits@24Mbps

Bits@24Mbps

To MAC

From MAC

To MAC

Bits@2Mbps

Bits@2Mbps

Bits@24Mbps

From MAC

Figure 1: PHY operations of IEEE 802.11a/b/g transceiver.

functional blocks in their PHY components. Thesefunctional blocks are pipelined with one another. Dataare streamed through these blocks sequentially, but withdifferent data types and sizes. As illustrated in Figure 1,different blocks may consume or produce different typesof data in different rates arranged in small data blocks.For example, in 802.11b, the scrambler may consumeand produce one bit, while DQPSK modulation mapseach two-bit data block onto a complex symbol whichuses two 16-bit numbers to represent the in-phase andquadrature (I/Q) components.

Each PHY block performs a fixed amount of compu-tation on every transmitted or received bit. When thedata rate is high, e.g., 11Mbps for 802.11b and 54Mbpsfor 802.11a/g, PHY processing blocks consume a sig-nificant amount of computational power. Based on themodel in [19], we estimate that a direct implementationof 802.11b may require 10Gops while 802.11a/g needsat least 40Gops. These requirements are very demand-ing for software processing in GPPs.

PHY processing blocks directly operate on the dig-ital waveforms after modulation on the transmitter sideand before demodulation on the receiver side. Therefore,high-throughput interfaces are needed to connect theseprocessing blocks as well as to connect the PHY andradio front-end. The required throughput linearly scaleswith the bandwidth of the baseband signal. For example,the channel bandwidth is 20MHz in 802.11a. It requiresa data rate of at least 20M complex samples per secondto represent the waveform [14]. These complex samplesnormally require 16-bit quantization for both I and Qcomponents to provide sufficient fidelity, translating into32 bits per sample, or 640Mbps for the full 20MHz chan-nel. Over-sampling, a technique widely used for betterperformance [12], doubles the requirement to 1.28Gbps

to move data between the RF frond-end and PHY blocksfor one 802.11a channel.

2.2 Wireless MACThe wireless channel is a resource shared by alltransceivers operating on the same spectrum. As si-multaneously transmitting neighbors may interfere witheach other, various MAC protocols have been developedto coordinate their transmissions in wireless networks toavoid collisions.

Most modern MAC protocols, such as 802.11, requiretimely responses to critical events. For example, 802.11adopts a CSMA (Carrier-Sense Multiple Access) MACprotocol to coordinate transmissions [7]. Transmittersare required to sense the channel before starting theirtransmission, and channel access is only allowed whenno energy is sensed, i.e., the channel is free. The latencybetween sense and access should be as small as possible.Otherwise, the sensing result could be outdated and inac-curate. Another example is the link-layer retransmissionmechanisms in wireless protocols, which may require animmediate acknowledgement (ACK) to be returned in alimited time window.

Commercial standards like IEEE 802.11 mandate aresponse latency within tens of microseconds, which ischallenging to achieve in software on a general purposePC with a general purpose OS.

2.3 Software Radio RequirementsGiven the above discussion, we summarize the require-ments for implementing a software radio system on ageneral PC platform:High system throughput. The interfaces between theradio front-end and PHY as well as between somePHY processing blocks must possess sufficiently high

22

Wireless PHY

http://setemagali.com/2009/10/12/climbing-the-mountain-everyday/

WirelessPHY

23

Physical Communication in Context

applicationtransportnetworklinkphysical

applicationtransportnetworklinkphysical

applicationtransportnetworklinkphysical

applicationtransportnetworklinkphysical

networklinkphysical

data

data

PHY considers only a sender sends a seq. of bits to a receiver

Outline❒ Recap❒ Wireless background

❍ Frequency domain❍ Modulation and demodulation❍ Wireless channels❍ Wireless PHY design❍ Wireless MAC design

25

Link Layer Servicesq Framing

o separate bits into frames; each frame has header, trailer and error detection/correction

q Multiplexing/demultiplexingo use frame headers to identify src, dest

q Media access controlq Reliable delivery between adjacent nodes

o seldom used on low bit error link (fiber, some twisted pair)o common for wireless links: high error rates

26

Wireless Access Problem

❒ Single shared broadcast channel ❍ thus, if two or more simultaneous

transmissions by nodes, due to interference, only one node can send successfully at a time

27

Multiple Access Control (MAC) Protocol❒ Protocol that determines how nodes share channel, i.e.,

determines when nodes can transmit❒ MAC is hard because communication about channel

sharing must use channel itself ! ❒ We start with the simplest scenario (e.g., 802.11 or

cellular up links) in this class:❍ a single receiver (the Access Point)

28

Properties of Ideal MAC Protocol

q Efficient

q Fair/rate allocation

q Simple

29

MAC Protocols: a Taxonomy

Goals❒ efficient, fair, simple

Three broad classes:❒ channel partitioning

❍ divide channel into smaller “pieces” (time slot, frequency, code)

❒ non-partitioning❍ random access

• allow collisions❍ “taking-turns”

• a token coordinates shared access to avoid collisions

Outline❒ Recap❒ Wireless background

❍ Frequency domain❍ Modulation and demodulation❍ Wireless channels❍ Wireless PHY design❍ Wireless MAC design

• wireless access problem and taxonomy• resource partitioning MAC

31

Example Partitioning: FDMA

FDMA: frequency division multiple access❒ Channel divided into frequency bands❒ A transmission uses a frequency band

freq

uenc

y ba

nds

5

1

432

6

32

Example Partitioning: TDMA

TDMA: time division multiple access❒ Time divides into frames; frame divides into slots❒ A transmission uses a slot in a frame

33

Recall: GSM

❒ A GSM operator uses TDMA and FDMA to divide its allocated frequency❍ divide allocated spectrum into different physical

channels; each physical channel has a frequency band of 200 kHz

❍ partition the time of each physical channel into frames; each frame has a duration of 4.615 ms

❍ divides each frame into 8 time slots (also called a burst)❍ each slot is a logical channel❍ user data is transmitted through a logical channel

34

Example Partitioning: CDMA

CDMA (Code Division Multiple Access)❒ Unique “code” assigned to each user; i.e.,

code set partitioning

❒ All transmissions share the same frequency and time; each transmission uses DSSS, and has its own “chipping” sequence (i.e., code) to encode data❍ e.g. code = -1 1 1 -1 1 -1 1

Examples: Sprint and Verizon, WCDMA

35

DSSS Revisited

user data d(t)

code c(t)

resultingsignal

1 -1

-1 1 1 -1 1 -1 1 -11 -1 -1 1 11

X

=

tb

tc

tb: bit periodtc: chip period

-1 1 1 -1 -1 1 -1 11 -1 1 -1 -11

36

Illustration: CDMA/DSSS Using BPSK

❒ Assume BPSK modulation using carrier frequency f :yi(t) = A xi(t)ci(t) sin(2p ft)

• A: amplitude of signal• f: carrier frequency• xi(t): data of user i in [+1, -1]• ci(t): code of i (a chipping sequence in [+1, -1])

❒ Suppose only i transmitsy(t) = yi(t)

❒ Decode at receiver i❍ incoming signal multiplied by ci(t) sin(2p ft)❍ since, ci(t) ci(t) = 1,

yi(t)ci(t) sin(2p ft) = A xi(t) sin2(2pft)

37

Illustration: Multiple User CDMA

❒ Assume M users simultaneously transmit:y(t) = y1(t) + y2(t) … + yM(t)

❒ At receiver i, incoming signal y(t) multiplied by ci(t) sin(2p ft)

❍ consider the effect of j’s transmissionyj(t)ci(t) sin(2p ft) = A cj(t)ci(t)xj(t) sin2(2p fct)

Condition for signal from j on effect on i?

38

CDMA: Deal with Multiple-User Interference

❒ Two codes Ci and Cj are orthogonal, if❍ , where we use “.” to denote inner product,

e.g.

❒ If codes are orthogonal, multiple users can “coexist” and transmit simultaneously with minimal interference

•0=• ij cc

C1: 1 1 1 -1 1 -1 -1 -1C2: 1 -1 1 1 1 -1 1 1

--------------------------------------------------C1 . C2 = 1 +(-1) + 1 + (-1) +1 + 1+ (-1)+(-1)=0 •

Analogy: Speak in different languages!

39

Capacity of CDMA

❒ In realistic setup, cancellation of others’ transmission is incomplete

❒ Assume the received power at base station from all nodes is the same P (how?)

❒ The power of the transmission with known code is increased to N P, where N is chipping expansion factor

❒ The others remain on the order of P❒ Assume a total of M users❒ Then 1)1( 0 -

»+-

=MN

NPMNPSNR For IS-95 CDMA,

N = 1.25M/4800 = 260

B

40

Generating Orthogonal Codes

❒ The most commonly used orthogonal codes in current CDMA implementation are the Walsh Codes

÷÷ø

öççè

æ=

=

nn

nnn WW

WWW

W

2

0 )1(

41

Walsh Codes

1

1,1

1,-1

1,1,1,1

1,1,-1,-1

X

X,X

X,-X 1,-1,1,-1

1,-1,-1,11,-1,-1,1,1,-1,-1,1

1,-1,-1,1,-1,1,1,-1

1,-1,1,-1,1,-1,1,-1

1,-1,1,-1,-1,1,-1,1

1,1,-1,-1,1,1,-1,-1

1,1,-1,-1,-1,-1,1,1

1,1,1,1,1,1,1,1

1,1,1,1,-1,-1,-1,-1

1 2 4 8

n 2n

...

...

...

...

42

Orthogonal Variable Spreading Factor (OSVF)❒ Variable codes: Different users use different

lengths spreading codes❒ Orthogonal: diff. users’ codes

are orthogonal

1

1,1

1,-1

1,1,1,1

1,1,-1,-1

X

X,X

X,-X 1,-1,1,-1

1,-1,-1,11,-1,-1,1,1,-1,-1,1

1,-1,-1,1,-1,1,1,-1

1,-1,1,-1,1,-1,1,-1

1,-1,1,-1,-1,1,-1,1

1,1,-1,-1,1,1,-1,-1

1,1,-1,-1,-1,-1,1,1

1,1,1,1,1,1,1,1

1,1,1,1,-1,-1,-1,-1

SF=1 SF=2 SF=4 SF=8

SF=n SF=2n

...

...

...

...

If user 1 is given code [1,1], what orthogonal codes can we give to other users?

43

WCDMA Orthognal Variable Spreading Factor (OSVF)❒ Flexible code (spreading factor) allocation

❍ up link SF: 4 – 256❍ down link SF: 4 - 512

WCDMA downlink

44

Summary

❒ SDMA, TDMA, FDMA and CDMA are basic media partitioning techniques❍ divide media into smaller “pieces” (space, time

slots, frequencies, codes) for multiple transmissions to share

❒ A remaining question is: how does a network allocate space/time/freq/code?

Outline❒ Recap❒ Wireless background

❍ Frequency domain❍ Modulation and demodulation❍ Wireless channels❍ Wireless PHY design❍ Wireless MAC design

• wireless access problem and taxonomy• resource partitioning MAC• media access protocols

46

GSM Logical Channels and Request

❒ Control channels❍ Broadcast control channel

(BCCH)• from base station, announces

cell identifier, synchronization❍ Common control channels

(CCCH)• paging channel (PCH): base

transceiver station (BTS) pages a mobile host (MS)

• random access channel (RACH): MSs for initial access, slotted Aloha

• access grant channel (AGCH): BTS informs an MS its allocation

❍ Dedicated control channels• standalone dedicated control channel

(SDCCH): signaling and short message between MS and an MS

❒ Traffic channels (TCH)

❒ call setup from an MSBTSMS

RACH (request signaling channel)

AGCH (assign signaling channel)

SDCCH (request call setup)

SDCCH (assign TCH)

SDCCH message exchange

Communication

47

Slotted Aloha [Norm Abramson]

❒ Time is divided into equal size slots (= pkt trans. time)

❒ Node with new arriving pkt: transmit at beginning of next slot

❒ If collision: retransmit pkt in future slots with probability p, until successful.

Success (S), Collision (C), Empty (E) slots

A

B

48

Slotted Aloha EfficiencyQ: What is the fraction of successful

slots?suppose n stations have packets to sendsuppose each transmits in a slot with probability p

- prob. of succ. by a specific node: p (1-p)(n-1)

- prob. of succ. by any one of the N nodesS(p) = n * Prob (only one transmits) = n p (1-p)(n-1)

49

Goodput vs. Offered Load Curve

Define G = offered load = np0.5 1.0 1.5 2.0

Slotted Aloha

❒ when G (=p*n) < 1, as p (or n) increases❍ probability of empty slots reduces❍ probability of collision is still low, thus goodput increases

❒ when G (=p*n) > 1, as p (or n) increases, ❍ probability of empty slots does not reduce much, but❍ probability of collision increases, thus goodput decreases

❒ goodput is optimal when G (=p*n) = 1

50

Maximum Efficiency vs. n

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

2 7 12 17 n

max

imum

effi

cien

cy1/e = 0.37

At best: channeluse for useful transmissions 37%of time!

51

Dynamics of (Slotted) Aloha

❒ In reality, the number of stations backlogged is changing❍ we need to study the dynamics when using a fixed

transmission probability p

❒ Assume we have a total of m stations (the machines on a LAN):❍ n of them are currently backlogged, each tries

with a (fixed) probability p❍ the remaining m-n stations are not backlogged.

They may start to generate packets with a probability pa, where pa is much smaller than p

52

Modeln backlogged

each transmits with prob. p

m-n: unbackloggedeach transmits with prob. pa

53

Dynamics of Aloha: Effects of FixedProbability

n: number of backlogged stations

0 m

successful transmission rate at

offered load np + (m-n)pa

new arrival rate:(m-n) pa

desirable stable point

undesirable stable point

Lesson: if we fix p, but n varies, we may have an undesirable stable point

offered load = 1

- assume a total ofm stations- pa << p- success rate is thedeparture rate, the rate the backlog is reducing

dep.andarrivalrateofbackloggedstations

54

Summary of Problems of Slotted Aloha❒ Advantages

o Simple, decentralized random access protocol

q Issueso Low efficiency

o Only ~37% at optimal transmission rateo Even lower efficiency at non-optimal (fixed p)

o No rate allocation/fairness

Outline❒ Recap❒ Wireless background

❍ Frequency domain❍ Modulation and demodulation❍ Wireless channels❍ Wireless PHY design❍ Wireless MAC design

• wireless access problem and taxonomy• wireless resource partitioning dimensions• media access protocols

– ALOHA protocol– The Ethernet protocol

56

Ethernet Fix for Efficiency

❒ Introduce collision detection: instead of wasting the whole frame transmission time (a slot), we waste only the time needed to detect collision.

❒ Introduce adaptive probability: reduce probability of trans. as # of collisions increases❍ If more collisions => p is high => should reduce p

P

P: packet size, C: contention window

C C C

57

Ethernet Fix: Carrier-Sense Multiple Access /Collision Detection/Exponential Backoff

get a frame from upper layer;K := 0; n := 0; // K: control wait time; n: no. of collisionsrepeat:

wait for K * 512 bit-time;while (network busy) wait;wait for 96 bit-time after detecting no signal;transmit and detect collision;if detect collision

stop and transmit a 48-bit jam signal;n ++;m:= min(n, 10), where n is the number of collisionschoose K randomly from {0, 1, 2, …, 2m-1}.if n < 16 goto repeatelse give up

elsedeclare success

The Ethernet algorithm

Q: Does Ethernet alg work well in wireless?

Carrier sense

DetectCollision

AdaptProbability

Rake Receiver

58

59

Multipath Diversity: Rake Receiver

❒ Instead of considering delay spread as an issue, use multipath signals to recover the original signal

❒ Used in IS-95 CDMA, 3G CDMA, and 802.11

❒ Invented by Price and Green in 1958❍ R. Price and P. E. Green, "A

communication technique for multipath channels," Proc. of the IRE, pp. 555--570, 1958

60

Multipath Diversity: Rake Receiver

❒ Use several "sub-receivers" each delayed slightly to tune in to the individual multipath components

❒ Each component is decoded independently, but at a later stage combined❍ this could very well result in

higher SNR in a multipath environment than in a "clean" environment

LOS pulsemultipathpulses

61

Rake Receiver Blocks

Correlator

Finger 1

Finger 2

Finger 3

Combiner

62

Rake Receiver: Matched Filter

❒ Impulse response measurement❒ Tracks and monitors peaks with a

measurement rate depending on speeds of mobile station and on propagation environment

❒ Allocate fingers: largest peaks to RAKE fingers

63

Rake Receiver: Combiner

❒ The weighting coefficients are based on the power or the SNR from each correlator output

❒ If the power or SNR is small out of a particular finger, it will be assigned a smaller weight:

å=

= M

ii

mm

Z

Z

1

2

2

a

64

Comparison [PAH95]

MCM is OFDM

Backup Slides: Error Corrections Codes

65

66

Reed-Solomon Codes

❒ Very commonly used, send nsymbols for k data symbols❍ e.g., n = 255, k = 223

❒ We will discuss the original version (1960)❍ modern versions are slightly different; they use generator

polynomial, but the idea is essentially the same

❒ If the data we want to send is (x0, x1,…, xk-1), where xi are data symbols, define polynomial

P(t) = x0 + x1t + x2t + …xk-1tk-1

❒ Assume b is a generator of the symbol field (i.e., bi not equal to bj if i not equal to j)

❒ Then for the data sequence, send P(0), P(b), P(b2), P(bn-1) to receiver

67

Reed-Solomon Codes

❒ Receive the message P(0), P(b), P(b2), P(bn-1)❒ If no error, can recover data from any k

equations:

)1)(1(1

2)1(2

110

1

)1(21

42

210

2

11

2210

0

...)(...

...)(

...)(

)0(

---

---

--

--

++++=

++++=

++++=

=

knk

nnn

kk

kk

xxxxP

xxxxPxxxxP

xP

bbbb

bbbb

bbbb

since any k equations are independent, they have a unique solution

68

Reed-Solomon Codes: Handling Errors

❒ But, what if s errors occur during transmission?

❒ Keep a counter (vote) for each solution

❒ Enumerate all combinations of k equations, for each combination, solve it, and increase the counter of the solution

❒ Identify the solution which gets the largest # of “votes”

69

Reed-Solomon Codes

❒ The transmitted data is the correct solution for n-s equations, and thus gets

votes (i.e., combinations of k equations)

❒ An incorrect solution can satisfy at most k-1+s equations, and the # of votes it can get is at most:

÷÷ø

öççè

æ -ksn

÷÷ø

öççè

æ +-ksk 1

70

Reed-Solomon Codes

❒ If

or (n-s > k – 1 + s) or (n-k > 2s – 1) or (n-k ³ s), it can correct any s errors

÷÷ø

öççè

æ +->÷÷

ø

öççè

æ -ksk

ksn 1

71

Reed-Solomon Codes❒ The voting-based decoding algorithm proposed in 1960 is

inefficient❒ 1967 - Berlekamp introduced first truly efficient algorithm

for both binary and nonbinary codes. Complexity increases linearly with number of errors

❒ 1975 - Sugiyama, et al. Showed that Euclid’s algorithm can be used to decode R-S codes

❒ Below is a typical current decoder

top related