1. Trang chủ
  2. » Giáo án - Bài giảng

BÀI GIẢNG TRUYỀN DẪN SỐ Chương 3

120 687 4

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 120
Dung lượng 4,64 MB

Nội dung

Phân biệt hệ thống FEC và hệ thống ARQ:Hệ thống ARQ Automatic Repeat Request  Phát hiện lỗi và yêu cầu truyền lại, không thực hiện việc tự sửa lỗi.. Phân biệt hệ thống FEC và hệ thống

Trang 2

3.1 Giới thiệu tổng quan

Format encodeSource

Format decodeSource

Channelencode

Pulsemodulate

Bandpassmodulate

Channeldecode

Demod

SampleDetect

Trang 3

Nguyên lý cơ bản DSL

Scrambler Interleaver

Modulator Shaping

Channel Input bit

Output bit

Receiver Transmitter

01001010111010101

01101 0 11010010

Forward error correction encoder

Reducing bit error

Forward error correction encoder

interleave

Trang 4

MÃ HÓA KÊNH

source

data reduction/

compression

data protection

Trang 5

Kiểm tra bít và xác định lỗi

Calculate

check bits

Channel

Recalculate check bits

Compare

Sent check bits

Information accepted if check bits match

Received check bits

k bits

n – k bits

Trang 6

Định lý về mã kênh của Shannon

ĐỊNH NGHĨA :

Tỷ lệ mã R=k/n<1

k bít tin tức, ( n-k) bít kiểm tra

Định lý về mã kênh của Shannon: Nếu khả năng phát nguồn

nhỏ hơn khả năng thông qua của kênh thì luôn luôn xây dựng

phương pháp mã đảm bảo truyền tin không sai:

R ≤ Capacity

an encoding methods exist with decoding error probability 0

Trang 7

Phân loại lỗi

Trang 9

Burst Error

2 or more bits in the data unit have changed

Burst error does not necessarily mean that the errors occur in consecutive bits

Most likely to happen in a serial transmission

Number of bits affected depends on the data rate and duration of noise

If the data is sent at 1 kbps, a noise of 1/100 s can affect 10 bits

If the data is sent at 1 Mbps, a noise of 1/100 s can affect 10000 bits

Trang 10

Ví dụ

– Consider the code C = { 000, 111 }

– A burst error of length 3 can not be corrected.

– Let us use a block interleaver 3X3

Trang 11

3.1.1 Phân loại mã hóa kênh

Mã hóa kênh biến đổi tín hiệu để cải thiện hiệu năng của

chống lại nhiễu ( Noice) , suy giảm, can nhiễu

(interference) …

Có 2 loại:

1 Mã hóa dạng sóng : mã hóa tín hiệu để giảm error khi tách sóng: đối xứng (antipodal), trực giao (orthogonal), song trực giao (biorthogonal),

mã lưới , mã tín hiệu đa mức

2 Mã chuỗi có cấu trúc : thêm các bit để giúp phát hiện và sửa lỗi Mã khối ( mã không nhớ),Mã chập ( mã có nhớ), mã liên kết

Trang 12

(tt)

Trang 13

3.1.2 Các phương pháp điều khiển lỗi

• Automatic Repeat reQuest (ARQ)

– Kết nối song hướng, xác định lỗi – Phía nhận gửi phản hồi thông báo với bên phát Nếu bản tin lỗi NACK, bản tin nhận đúng là

– Bên nhận truyền lại các bản tin lỗi nếu nhận được NACK.

• Sửa lỗi hướng đi Forward Error Correction (FEC)

– Kết nối đơn hướng , sửa lỗi – Bên nhận sửa được 1 số lỗi

• Hybrid ARQ (ARQ+FEC)

– Kết nối song hướng, xác định lỗi và sửa lỗi

Trang 14

Phân biệt hệ thống FEC và hệ thống ARQ:

Hệ thống ARQ (Automatic Repeat Request )

 Phát hiện lỗi và yêu cầu truyền lại, không thực hiện việc tự sửa lỗi

 Hệ thống ARQ yêu cầu phải có đường truyền ngược và cần ít bit kiểm tra

Áp dụng: * Mạng máy tính

* Các hệ thống không yêu cầu độ trễ nhỏ

 Các mã sử dụng: mã lặp, mã kiểm tra chẵn lẻ, mã CRC, vv…

Trang 15

Phân biệt hệ thống FEC và hệ thống ARQ:

Hệ thống ARQ có ba dạng cơ bản:

Cơ chế ARQ dừng và chờ (Stop and Wait ARQ)

Cơ chế ARQ quay ngược N từ mã (Go back N ARQ)

Cơ chế ARQ lựa chọn việc lặp lại (Selective repeat ARQ)

Hệ thống FEC (Forward Error Correction)

 Phát hiện lỗi và thực hiện việc tự sửa lỗi, không yêu cầu truyền lại

Áp dụng: * Hệ thống đơn công

* Hệ thống truyền khoảng cách xa và độ trễ là vấn đề quan trọng

 Các loại mã : mã Hamming, mã tích chập, mã Turbo,vv…

Trang 17

Chương 3 MÃ HÓA KÊNH

3.1.3 Một số khái niệm cơ bản về mã hóa:

 Trọng số Hamming của một từ mã [w(X)]: số thành phần khác zero trong từ

Ví dụ: Từ mã X = 101  w(X) = 2

 Khoảng cách Hamming giữa hai từ mã X, Y [d(X,Y)]: số vị trí các phần tử

khác nhau giữa hai từ mã

Ví dụ: X = 1010; Y = 1110  d(X,Y) = 1

 Khoảng cách cực tiểu của một tập mã [d min ]: khoảng cách Hamming nhỏ

nhất giữa hai từ mã bất kỳ thuộc tập mã

Trang 18

Chương 3 MÃ HÓA KÊNH

3.2 Một số mã phát hiện lỗi và sửa lỗi đơn giản:

 Xét một khối n bit, giả sử lỗi xảy ra ngẫu nhiên, độc lập thống kê Khi xác suất sai một bit là α thì xác suất sai i bit trong n bit là:

• Xác suất không phát hiện được lỗi: P(3,3) = α3

 Với hệ thống FEC: giả sử dùng luật đa số để sửa lỗi (VD: 0010; 1011)

• Khi thu được từ mã khác 111 hay 000  phát hiện lỗi xảy ra  sửa lỗi.

• Xác suất giải mã sai: P(2,3) + P(3,3) = 3α2 - 2α3

( , ) n i i(1 )n i

P i n = C α − α −

Trang 19

Chương 3 MÃ HÓA KÊNH

Một số mã phát hiện lỗi và sửa lỗi đơn giản (tt):

3.2.2 Mã kiểm tra chẵn lẻ ( Parity Check Code):

 Từ mã n bit gồm (n-1) bit tin tức và 1 bit kiểm tra

 Bit kiểm tra được chọn tùy vào kiểm tra chẵn hay kiểm tra lẻ

• Mã kiểm tra chẵn: chèn bit sao cho (Σ bit 1) là chẵn

• Mã kiểm tra lẻ: chèn bit sao cho (Σ bit 1) là lẻ

 Chỉ phát hiện lỗi, không sửa được lỗi

 Khi số bit lỗi là chẳn  không phát hiện được

Xác suất không phát hiện được lỗi là:

 Đơn giản, thích lợp trong môi trường ít nhiễu

2

( 1) (2, ) (4, ) (6, )

2

we

n n

P = P n +P n +P n + ≈ − α

Trang 20

Mã hóa và giải mã kiểm tra chẵn lẻ

Trang 21

Example 1

Suppose the sender wants to send the word world In

ASCII the five characters are coded as

1110111 1101111 1110010 1101100 1100100

The following shows the actual bits sent

Trang 22

Kiểm tra chẵn lẻ theo hàng và cột (BCC)

Trang 23

Kiểm tra chẵn lẻ theo hàng và cột (BCC)

Trang 24

Kiểm tra chẵn lẻ theo hàng và cột (BCC)

Trang 25

Block Sum Check

Trang 26

The sender follows these steps:

1 The unit is divided into k sections, each

4 The checksum is sent with the data.

The receiver follows these steps:

1 The unit is divided into k sections,

each of n bits.

2 All sections are added using one’s

complement to get the sum.

3 The sum is complemented.

4 If the result is zero, the data are

accepted: otherwise, rejected

Trang 30

Cyclic Redundancy Check

 Nguyên lý

 k-bit message

 Bên phát tạo ra chuỗi n bit FCS (Frame Check Sequence) sao cho frame gởi đi (k+n bit) chia hết cho 1 số xác định trước

 Bên thu chia frame nhận được cho cùng 1 số và nếu không có phần

dư thì có khả năng không có lỗi

Trang 31

Cyclic Redundancy Check

 T: frame được truyền (k+n bit)

 M: message dữ liệu cần truyền (k bit đầu của T)

 F: FCS (n bit sau của T)

 P: số chia được xác định trước (n+1 bit)

RQP

M

n2

+

=

FM

n2

R

F =

RM

n2

QP

RP

RQP

RM

n2P

T

=++

=+

=

Trang 32

Cyclic Redundancy Check

Trang 33

Cyclic Redundancy Check

1 1 1 1 0 1

1 1 0 1 1 1 1 1 0 1 0 0

0

M P

111101 011

T

Trang 34

Cyclic Redundancy Check

Trang 35

Dữ liệu nhị phân được chia thành từng khối k bit.

 Bộ mã hóa khối sẽ ánh xạ khối k bit tin tức thành khối n bit (từ mã mã hóa X)

 Tập hợp 2k từ mã khác nhau có chiều dài n tạo lập nên bộ mã khối (n,k)

 Tỷ lệ mã :

k R

n

=

3.3 Mã khối tuyến tính (Linear Block Code):

Trang 36

Chương 3 MÃ HÓA KÊNH

Mã khối tuyến tính (Linear Block Code):

a Quá trình mã hóa:

 Giả sử vector M chứa k bit tin tức: M = [m1,m2,m3,…,mk]

và vector C chứa q = n – k bit kiểm tra: C = [c1,c2,c3,…,cq]

 Vector từ mã của mã khối tuyến tính (n,k) là:

X = [M | C] = [m1,m2,…,mk|c1,c2,…,cq]

 Quy luật tạo từ mã mã hóa X:

trong đó: G là ma trận sinh có cấu trúc như sau:

k

q q

p p

p

p p

p

p p

p P

2 22

21

1 12

11

Trang 37

Chương 3 MÃ HÓA KÊNH

Trang 38

Chương 3 MÃ HÓA KÊNH

Quá trình mã hóa (tt):

 Sơ đồ mạch mã hóa:

 Mỗi khối các bit tin tức đưa vào khối phát cũng được tải vào thanh ghi dịch

 Các giá trị trong thanh ghi dịch này được kết nối đến các cổng EX-OR để tạo các bit kiểm tra

 Sau khi các bit tin được đưa ra ngoài, khóa K chuyển, đưa các bit kiểm tra ra

 Một bộ đệm ngõ vào sẽ giữ

khối các bit tin tức kế tiếp trong

khi các bit kiểm tra được dịch

ra ngoài

 Quá trình này tiếp tục

được lặp lại cho khối các

bit tin tức kế tiếp

Trang 39

Chương 3 MÃ HÓA KÊNH

1

c

4 3

2

4 2

Trang 40

Chương 3 MÃ HÓA KÊNH

b Quá trình giải mã:

 Sử dụng phương pháp giải mã syndrome

 Gọi Y là vector từ mã thu được khi vector từ mã phát đi là X

Lúc đó: Y = X + E, với E = [e1,e2,e3,…,en]: vector lỗi

 Quá trình phát hiện lỗi:

 Định nghĩa Hqxn là ma trận kiểm tra: H = [PT|Iqxq]

Lúc đó: XHT = [0,0,…,0]

 Tính giá trị syndrome S1xq: S = YH T ( Véc tơ sửa sai)

 Sử dụng tính chất: XHT = [0,0,…,0] Suy ra:

• Nếu S = [0,0,…,0]: máy thu không phát hiện được lỗi (không có lỗi xảy ra

hay lỗi xảy ra mà không phát hiện được)

• Nếu S [0,0,…,0]: máy thu phát hiện được lỗi

 Bộ giải mã trong hệ thống ARQ ( chỉ phát hiện lỗi ) chỉ là bộ tính toán giá trị

syndrome.

Trang 41

Chương 3 MÃ HÓA KÊNH

Quá trình giải mã (tt):

 Quá trình phát hiện lỗi và sửa lỗi:

Tính giá trị syndrome: S = YHT = (E+X)HT = EHT + XHT = EHT

 Giá trị syndrome chỉ phụ thuộc vào các vector mẫu lỗi E mà không phụ thuộc vào vector từ mã phát đi X

 Vì E có kích thước 1xn  có 2n vector mẫu lỗi khác nhau

S có kích thước 1xq  có 2q giá trị syndrome khác nhau

 Chọn 2q-1 mẫu lỗi thường xảy ra nhất Lập bảng quan hệ giữa E và S

 Từ đó, ta có quá trình giải mã như sau:

• Phía thu xây dựng ma trận kiểm tra H dựa trên ma trận P đã biết.

• Lập bảng quan hệ giữa S và E.

Dựa vào giá trị của S, tra bảng quan hệ S – E, tìm được vector E.

Trang 42

Chương 3 MÃ HÓA KÊNH

Quá trình giải mã (tt):

 Sơ đồ mạch giải mã syndrome:

 Đánh giá khả năng sửa lỗi:

 Với từ mã n bit:

Cn1 : mẫu lỗi đơn

Cn2 : mẫu lỗi kép

……

Cnt : mẫu lỗi t bit

 Muốn mạch giải mã có khả năng

sửa mẫu lỗi sai đến t bit thì phải chọn n và q thỏa điều kiện sau:

Ví dụ: muốn sửa lỗi đơn thì phải chọn n và q thỏa: 2q-1≥n

Trang 43

Chương 3 MÃ HÓA KÊNH

Quá trình giải mã (tt):

 Giải mã syndrome cho mã Hamming (7,4):

 Với mã Hamming: n = 2q -1  mã Hamming chỉ sửa được các mẫu lỗi đơn

 Xây dựng quan hệ S – E:

• Giả sử lỗi xảy ra ở bit thứ j trong từ mã  vector mẫu lỗi E có ej=1; ei ≠ j= 0

• Mặc khác, ta có: S = EHT = (HT)j  giá trị của S giống với hàng thứ j của HT

• Suy ra cách xây dựng bảng quan hệ S – E

Ví dụ: (giải mã, dữ liệu cần truyền đi: M = 0111)

Quá trình mã hóa với mã Hamming (7,4) Cho ma trận:

Trang 44

Chương 3 MÃ HÓA KÊNH

Quá trình giải mã (tt):

Lời giải:

 Mã Hamming(7,4): n = 7; k = 4; q = 3

a Từ ma trận P, ta xây dựng ma trận HT:

 Giá trị của S giống với hàng thứ j của

ma trận HT khi lỗi xảy ra ở vị trí j

q q

P H

Trang 45

Chương 3 MÃ HÓA KÊNH

Trang 46

Chương 3 MÃ HÓA KÊNH

Với Y = 01 0 1010: (có lỗi đơn xảy ra)

 chuỗi bit thu được 0111: chính xác, đã sửa được lỗi đơn

Với Y = 011 01 10: (có lỗi kép xảy ra)

Trang 47

Dùng mã hamming để phát hiện lỗi chùm

– Mã Hamming chỉ sửa được lỗi đơn và xác định lỗi kép

– Tuy nhiên dùng ghép xen có thể phát hiện được lỗi chùm (tách lỗi kép

thành các lỗi đơn!)

Khi burst có kích thước 4 lỗi trong1 frame, chỉ có 1 bit trong mỗi từ mã là bị lỗi –

Trang 48

Chương 3 MÃ HÓA KÊNH

3.3 Mã tích chập (Convolutional Code):

 Thực hiện việc mã hóa dòng dữ liệu một cách liên tục chứ không chia thành

khối như mã khối tuyến tính

 Giá trị các bit ngõ ra là sự kết hợp tuyến tính của bit vào hiện tại và các bit vào trước đó đã được lưu trong thanh ghi  hệ có nhớ

Trong đó: k: số ngõ vào; n: số ngõ ra

L: số phần tử nhớ trong thanh ghi dịch;

Kc = L+1: chiều dài giới hạn của mã tích chập

 Tốc độ mã:

 Ký hiệu mã tích chập: (n,k,L) ví dụ: mã tích chập (3,2,1), (2,1,2),vv…

(R,Kc) ví dụ: mã tích chập (2/3, 2), (1/2,3),vv…

k R

n

=

Mã tích chập (n,k,L)

Dữ liệu vào

m 1 ,m 2 ,m 3 ,…

Dữ liệu mã hóa

x 1 ,x 2 ,x 3 ,…

Trang 49

Ứng dụng mã chập

Trong viễn thông, mã xoắn là một loại mã sửa lỗi, trong đó k-bit mang tin tức được

mã hóa thành từ mã n-bit Mã xoắn được sử dụng rộng rãi trong rất nhiều các ứng dụng để đạt được truyền dữ liệu đáng tin cậy, bao gồm cả video kỹ thuật số, radio, thông tin di động, và thông tin liên lạc vệ tinh

Các mã này thường được thực hiện kết hợp với một mã quyết định cứng, đặc biệt

là Reed Solomon.

Trang 50

Chương 3 MÃ HÓA KÊNH

Mã tích chập (tt):

3.3.1 Quá trình mã hóa:

a Sơ đồ mạch mã hóa tích chập:

 Sơ đồ tạo các bit mã hóa trong mã tích chập:

 Giá trị bit ngõ ra:

trong đó: g = (g0,g1,…,gL): đa thức sinh

 Nhận xét:

x j : phụ thuộc vào giá trị bit

ngõ vào hiện tại mj và L bit trước đó đã lưu trong thanh ghi.

Mỗi bit tin tức sẽ ảnh hưởng đến (L+1) bit ngõ ra khi nó được dịch trong

thanh ghi

j j j j L L

x = m gm g− ⊕ ⊕ m g

Trang 51

Chương 3 MÃ HÓA KÊNH

Trang 52

Chương 3 MÃ HÓA KÊNH

b Các dạng biểu diễn của mã tích chập:

 Có 3 dạng biểu diễn thông dụng: sơ đồ cây mã,

sơ đồ lưới mã, giản đồ trạng thái

 Xét mã tích chập (2,1,2)

g(1) = (1,1,1); g(2) = (1,0,1)

 Sơ đồ cây mã (Tree Code):

Trang 53

Chương 3 MÃ HÓA KÊNH

b Các dạng biểu diễn của mã tích chập (tt):

 Sơ đồ lưới mã (Code Trellis) và giản đồ trạng thái (State Diagram):

a/00 c/10 a/11 c/01

b/11 d/01 b/00 d/10

Giá trị ngõ vào

Giá trị ngõ ra

Trạng thái kế

Trạng thái hiện tại

Trang 54

Chương 3 MÃ HÓA KÊNH

Quá trình mã hóa (tt):

c Thực hiện việc mã hóa:

 Xét mã tích chập (2,1,2) Giả sử chuỗi dữ liệu vào: 001101 Xác định chuỗi dữ liệu ngõ ra ?

Trang 55

Chương 3 MÃ HÓA KÊNH

c Quá trình giải mã:

 Sử dụng phương pháp giải mã Viterbi

 Phương pháp giải mã Viterbi:

• Xác định dữ liệu dựa trên xác định đường mã tối ưu.

• Xác định đường mã được chọn = đường mã có chỉ số đo nhỏ nhất.

• Chỉ số đo của đường mã = tổng chỉ số đo của các nhánh thuộc đường mã.

• Chỉ số đo của mỗi nhánh = khoảng cách Hamming giữa ngõ ra trong sơ đồ

lưới mã với dữ liệu thu tương ứng.

 Xét quá trình giải mã Viterbi cho mã tích chập (2,1,2)

• Phía phát cần truyền bản tin gồm 12 bits

• Chuỗi dữ liệu thu được ở phía thu gồm 24 bits như sau:

Y = 110111000110001111101100

 Quá trình thực hiện như sau:

Trang 56

Chương 3 MÃ HÓA KÊNH

Quá trình giải mã (tt):

 Xây dựng lưới mã theo thời gian như sau:

 Bắt đầu từ trạng thái a (có giá trị chạy (running metric) bằng 0), lần lượt tính

chỉ số đo (metric) của các nhánh có thể có dựa vào dữ liệu thu và sơ đồ lưới mã

Trang 57

Chương 3 MÃ HÓA KÊNH

Quá trình giải mã (tt):

 Tính chỉ số đo của từng nhánh dựa vào khoảng cách Hamming

 Tính giá trị chạy tại mỗi node bằng cách cộng giá trị chạy của node trước đó với chỉ số đo của nhánh chuyển trạng trạng thái giữa hai node này

Trang 58

Chương 3 MÃ HÓA KÊNH

Quá trình giải mã (tt):

 Lặp lại quá trình tính toán cho tất cả các chuyển trạng thái có thể có tại các

node

Trang 59

Chương 3 MÃ HÓA KÊNH

Quá trình giải mã (tt):

 Lặp lại quá trình tính toán như phần trước

 Khi có nhánh đến cùng một node, nhánh nào tạo ra giá trị chạy tại node đó lớn hơn sẽ bị loại bỏ

Trang 60

Chương 3 MÃ HÓA KÊNH

Quá trình giải mã (tt):

 Quá trình được lặp lại cho đến khi hết dữ liệu

 Từ trạng thái cuối cùng (trạng thái a), đi ngược lại (từ phải sang trái) để xác

định đường mã còn tồn tại  đây là đường mã tối ưu

 Từ đường mã tối ưu, ta xác định được dữ liệu thu

 Ta thu được sơ đồ đầy đủ như sau:

 Chuỗi dữ liệu thu được: 110111001000

Trang 61

3.4 Mã ghép (Concatenated codes)

• Mã ghép dùng 2 lần mã hóa, gọi là mã hóa trong và mã hóa

ngoài (có tốc độ cao hơn) - an inner code and an outer code

(higher rate).

– Thông thường 1 mã ghép dùng mã chập và giải mã Viterbi ở phần mã

hóa trong, mã Reed-Solomon ở phần mã hóa ngoài

• Mã ghép giảm sự phức tạp, tăng hiệu quả sửa lỗi.

Interleaver Modulate

Deinterleaver

Inner encoder

Inner decoder Demodulate

Outer decoder

Input

data

Output

data

Trang 62

Mã Turbo (Turbo codes)

• Mã Turbo là mã ghép nhưng có thêm giải thuật lặp (iterative algorithm)

• Dùng soft-decision  lặp nhiều lần để có giá

trị tin cậy hơn.

Trang 63

3.5 Đan xen (Interleaving)

• Mã chập (Convolutional codes) thích hợp cho kênh

truyền không nhớ (memoryless channels) vì các lỗi là

ngẫu nhiên (random error events).

• Trên thực tế, có loại lỗi chùm (bursty errors) vì kênh

truyền có nhớ (channel with memory)

– Ví dụ: lỗi trong kênh multipath fading, lỗi do nhiễu …

• Đan xen (Interleaving) giúp cho kênh truyền trở

thành như kênh truyền không nhớ (memoryless

channel) ở bộ giải mã.

Ngày đăng: 14/05/2015, 16:32

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w