Thuật toán ZF

Một phần của tài liệu Kỹ thuật xử lý cơ bản trong hệ thống MIMO kênh Fading phẳng và đánh giá độ phức tạp của các kỹ thuật này (Trang 32)

3.4.1 Miêu tả thuật toán

ZF là một kỹ thuật MIMO tuyến tính, diễn ra ở bộ thu, với giả thiết ma trận kênh H khả nghịch, và vecto MIMO phát s được ước lượng như sau

. Trong kỹ thuật này, mỗi dòng con được xem như là tín hiệu mong muốn, và dòng dữ liệu còn lại được xem như là “nhiễu. Trong ZF, phép “không hóa” nhiễu có thể được thực hiện bằng cách chọn các vecto trọng số wi

có 1xNr chiều (=1,2,….,Nr) sao cho

Với hp ký hiệu là cột thứ p của ma trận kênh H. Cho wi là hàng thứ i của ma trận W, khi đó có

W là ma trận biểu diễn quá trình xử lý tuyến tính ở bộ thu. Vì thế bằng cách ép nhiễu về không, mỗi phần tử mong muốn của s có thể được ước lượng.

(3.11)

(3.12)

(3.13)

Một nhược điểm tương đối lớn của ZF là chịu ảnh hưởng nhiều của nhiễu, đặc biệt là khi kênh có số điều kiện cao

3.4.2 Đánh giá hiệu suất

Thuật toán ZF được miêu tả ở trên được mô phỏng và BER và hiệu suất PER ở phân sau. Nhắc lại mối quan hệ giữa s và x

Điều này dẫn tới lỗi ước lượng

Ma trận hiệp phương sai của lỗi ước lượng bằng

Vì n là đa biến phức có phân bố chuẩn Gauss và  là biến đổi tuyến tính của n, nên

 cũng là đa biến phức có phân bố chuẩn. Với H cho trước, nó sẽ cho ra hàm mật độ xác suất

Trong trường hợp ZF, không mất tính tổng quát giả sử các phần tử của vecto ước lượng sest là độc lập, Q là ma trận chéo, khi đó hàm mật độ xác suất điều kiện của phần tử thứ p của sest là

Với =/(HHH)pp-1 và (HHH)pp-1 tương ứng với các phần tử (p,p) của ma trận (HHH)-1.

Một phương pháp thông dụng hay dùng để tìm giới hạn trên hiệu suất là tính trung bình PEP. Giả sử có 2 vecto không gian khác nhau kích thước là Ntx1, sivà sk, trong đó các phần tử được lấy từ M điểm chòm sao. Ký hiệu phần tử thứ p của vecto thứ nhất và thứ hai là (si)p và (sk)p, với i,k{1,….,M}, sau đó dựa trên hàm pdf điều kiện và sử dụng tính tương đương trong hình 2-13. thí xác suất bộ thu quyết đinh sai là (sk)p trong khi gửi là (si)p là

(3.15) (3.16) (3.17) (3.18) (3.19) (3.20)

Trong biểu thức trên dik là khoảng cách euclit giữa (si)p và (sk)p, BPSK là độ lệch chuẩn của nhiễu BPSK phức, và Q là hàm xác định miền đuôi dưới của hàm hàm pdf Gauss và bằng[7]

Hình 3-7: Pdf của ký hiệu thu, tương đương với BPSK

Sử dụng giới hạn biên Chernoff Q(x)≤exp(-x2/2), thu được

H có phân bố Rayleigh,  được phân bố bình phương với bậc tự do là 2(Nr-Nt+1). Kết quả là hàm pdf của  là

Phân bố bình phương với bậc tự do n được xem như là phân bố của tổng bình phương của n biến Gauss thực i.i.d có trung bình bằng không và phương sai là 2

, tuy nhiên ở đây ta chỉ dùng n/2 biến phức mà có phương sai là 2, do vậy n biến thực Gauss từ các biến phức được tạo ra phương sai 2//2. Trung bình PEP trên tất cả các kênh là

(3.21)

(3.22)

(3.23)

Trong phương trình thứ 3  được định nghĩa là như là phân bố bình phương ’ vơi bậc tự do là 2(Nr-Nt+1). Phương sai của các biến Gauss thức nằm dưới dấu gạch là

Từ mô hình tín hiệu ở mục 4.3, dễ dàng suy luận rằng 2 (adsbygoogle = window.adsbygoogle || []).push({});

=1 và kết quả cuối cùng của PEP là

Khi chúng ta chuẩn hóa (si)p và (sk)p như là (si)p=s(s’i)p và (sk)p=s(s’k)p, biểu thức được viết lại là

Chú ý là hiệu suất tốc độ lỗi ký hệu là tổng của PEP. Xác suất lỗi ký hiệu kh gửi (si)p là

Hoặc khi tính trung bình trên M ký hiệu TX trên anten thứ p, thì SER của dòng dữ liệu TX là (3.25) (3.26) (3.27) (3.28) (3.29)

Tính trung bình thì SER toàn phần bằng với kết quả trên, thêm nữa từ giới hạn biên có thể tính xác suất lỗi bít thông qua

Với m=log2M ký hiệu số lượng bít trên trên điểm chòm sao. Quan sát thấy là BER như là hàm của SNR trên mỗi anten RX và giảm theo hàm mũ, nói cách khác bậc phân tập bằng Nr-Nt+1, tức là khi SNR tăng 10dB thì BER giảm. Dựa vào kết quả trên, thì dễ dàng thấy là hiệu suất của hệ thống NtxNr với quá trình ZF tương đương với hiệu suất của hệ thống với MRC, một anten TX( có công suất giống như anten TX của hệ MIMO ZF) và Nr-Nt+1 anten RX. Ví dụ với BPSK, khi có si và sk là 2 ký hiệu TX khác nhau cho cùng một anten TX, thì PEP của hệ thống MRC tính trung bình trên toàn kênh là

Với

Bỏ qua công suất phát, BPSK chỉ phát ký hiệu {-1, 1} với xác suất là như nhau. Vì thế xác suất lỗi bít toàn phần là Prb=Pr(s1s2)/2+ Pr(s2s1)/2= Pr(s1s2). Khi SNR lớn trên một anten , thì (1+µ)/21 và (1-µ)/21\Nr/(4), thêm nữa

Khi c tương đối lớn ( lớn hơn 10dB) thì xác suất lỗi tính là

Từ biểu thức này, ta thấy tốc độ lỗi giảm theo hàm mũ (Nr-Nt+1) của SNR

3.4.3 ZF lối ra quyết định mềm

Thông thường để hiệu suất được cải thiện thì bộ giải mã phải biết về độ tin cậy của các các bít lối vào tiếp theo đối với giá trị lượng tử của chúng. Các giá trị trước đó coi như là giá trị quyết định mềm, trong khi những giá trị sau được gọi là giá quyết

(3.30) (3.31) (3.31) (3.32) (3.33) (3.34)

định cứng. Trong ZF, việc tạo ra giá trị lối ra quyết định mềm dựa trên sự biến đổi của vecto thu x từ “không gian x” sang “không gian s”. Nhắc lại hàm mật độ xác suất điều kiện của ước lượng vecto s cho kênh H

Chú ý là nói chung ma trận hiệp phương sai Q không được coi là ma trận đường chéo, tức là các lỗi ước lượng cho các anten khác nhau là tương quan. Việc tạo ra giá trị lối ra quyết định mềm cho ZF dựa theo nguyên tắc tối đa xác suất sau (MAP). Tại khoảng thời gian tức thời, Nb=Nrm bit được vecto/ký hiệu MIMO gửi đi, m=log2M là số lượng bit trên điểm chòm sao, nếu bk là bit thứ k của vecto phát si để ước lượng, thì bộ giải mã MAP tại bộ thu sẽ quyết định, vecto thu được x, bít là “1” nếu

Và ngược lại bít là “0”.Nguyên tắc này có thể được viết lại theo dạng trung bình của tỉ số xác suất log (LLR)

Hoặc tương đương khi truyền vấn đề tới “không gian s”

Với si (1≤i≤I) ký hiệu cho tất cả các vecti MIMO phát, với I=MN. Bây giờ nguyên tắc quyết định ở trên có thể dễ dàng thực hiện khi bk=(sgn(L(bk))+1)/2. Áp dụng công thức Bayer, Pr(A|B)=Pr(B|A).Pr(A)/Pr(B), LLR trở thành

Bởi vì vecto si đều được phát đi như nhau, nên Pr(si) là bằng nhau cho tất cả các vecto si. Áp dụng phân bố p(sest|si) cho LLR là

Áp dụng xấp xỉ max-log cho biểu thức trên ta có

(3.35) (3.36) (3.37) (3.38) (3.39) (3.40)

Suy giảm hiệu suất của xấp xỉ trên là không đáng kể. Tuy nhiên trong LLR thì khi I tăng theo hàm mũ với Nt, thì độ phức tạp cũng tăng theo hàm mũ với Nt. Để có thuật toán mà độ phức tạp chỉ tăng tuyến tính với số lượng anten TX, thì phải đưa vào một số điều kiện là, các phần tử của vecto lỗi ước lượng  không tương quan với nhau, và Q là ma trận đường chéo, khi đó LLR trở thành

Với qab ký hiệu là phần tử (a,b) của Q, và (sest) tương ứng với phần tử thứ p của sest và si. Áp dụng xấp xỉ max-log trên kết quả và dụng một số hạng trong tổng là cực đại và bằng exp(max(…))…..exp(max(….)), giá trị mềm của một bít bk nào đó được ánh xạ lên phần tử thứ k’ của s, được chỉ ra là

Với Và (3.41) (3.42) (3.43) (3.44)

Với ký hiệu a cho phần nguyên nhỏ. Để tìm hệ số tỉ lệ thích hợp, trước tiên chúng ta xác định ma trận hiệp phương sai mong muốn của lỗi ước lượng cho số đa số kênh thực. Nếu hệ thống thông tin được giả sử là hoạt động trong môi trường fading Rayleigh phẳng thì ta chỉ ra là

Để phân tích giá trị mềm của bít thứ k, thì vài giả thiết cần có, thứ nhất là giả sử truyền bít bk=1, thứ 2 là (si)k’|bk=1 thì

Cuối cùng là giả sử (si)k’|bk=0 được chọn sai, khoảng cách giữa (sest)k’ và (si)k’|bk=0 được xem là khoảng cách euclit lớn nhất giữa hai điểm chòm sao bất kỳ. Với BPSK và QPSK khoảng cách này là 2, tổ hợp các kết quả, ta có giá trị mềm của bít thứ k bằng

Chú ý nếu giả sử bk=0 được phát đi, thì kết quả thu được sẽ là

Với Nq bít lượng tử hóa, khoảng lượng tử hóa là

Khi 4Nr>>n 2 thì hệ số tỉ lệ lượng tử được tính là (3.45) (3.46) (3.47) (3.48) (3.49) (3.50) (3.51) (adsbygoogle = window.adsbygoogle || []).push({});

3.5 Phƣơng pháp tối thiểu trung bình bình phƣơng lỗi (MMSE) 3.5.1 Miêu tả thuật toán 3.5.1 Miêu tả thuật toán

Một phương pháp lý thuyết ước lượng khác để đánh giá vecto ngẫu nhiên s dựa trên x là chọn một hàm f(x) để tối thiểu hóa trung bình bình phương lỗi (MSE)

Rất khó để biết chính xác hàm f(x), Tuy nhiên nếu chúng ta hạn chế cho hàm này là hàm tuyến tính, thì có khả năng sẽ tính toán được. Sử dụng quá trình tuyến tính, ước lượng s:

Để thu được MMSE, W phải được để sao cho trung bình bình phương lỗi nhỏ nhất

Vì aHa=tr(aaH), với tr(.) là trace của ma trận, MSE được viết lại là

Với và . Vì Qx được định

nghĩa là ma trận Hermitian và không âm

x là ma trận chéo có trị riêng của ma trận Qx nằm trên đường chéo và A được gọi là “căn bậc 2” của Qx. Viết lại biểu thức

Vì số hạng đầu tiên và số hạng thứ 2 không phụ thuộc vào W, nên để kết quả tối thiểu được thì

Biến đổi công thức này ta có

(3.52) (3.53) (3.54) (3.55) (3.56) (3.57) (3.58)

Trở lại mô hình kênh (x=Hs+n) và giả sử là Qs=E[ssH]=s2I và Qn=E[nnH]= n2I và Qn=E[xxH]=HQsHH+Qn có thể nghịch đảo, với Qsx= E[sxH]= E[s(sHHH+nH)]=QsHH ( s và n là độc lập với nhau), W trở thành

Với  bằng n 2

/s 2

. Khi chúng ta ngịch đảo ma trận theo dạng A+BCD, áp dụng bổ đề ngịch đảo ma trận (MIL)

Với A và C là ma trận ngịch đảo bình phương. Áp dụng MIL ta có

Tóm lại để tối thiểu trung bình bình phương lỗi (trên W), thì quá trình xử lý tại bộ thu phải bằng

Với =Nt/. Dựa trên kết quả này chúng ta có thể nói phương pháp MMSE cân bằng chất lượng tín hiệu và giảm nhiễu. Từ phương trình trên, rõ rang nhận thấy là phương pháp ZF tương ứng với phương pháp MMSE với =0. Mặt khác phương pháp MMSE là phương pháp ZF với việc thay thế

Chú ý là trong thực hành, rất khó để đo SNR, vì thế đôi khi  được đặt cho một giá trị cố định mà không phụ thuộc vào tỉ lệ tín trên nhiễu

3.5.2 MMSE với lối ra quyết định mềm

Ma trận hiệp phương sai của lỗi ước lượng s-sest trong trường hợp MMSE là

(3.60)

(3.60)

(3.61)

(3.62)

3.6 ZF với SIC

3.6.1 Miêu tả thuật toán

Một số kỹ thuật tuyến tính chúng ta đã nghiên cứu ở mục trên. Tuy nhiên để hiệu suất thu được cao hơn thì thường người ta sử dụng ký thuật phi tuyến. Nếu bằng cách nào đó đa số các phần tử của vecto phát s được giải hóa và được sử dụng để nâng cao khả việc giải mã các phần tử còn lại của s, thì hiệu suất thu được sẽ tốt hơn nhiều. Điều này gọi là khử nhiễu thành công (SIC) và nó sử dụng đồng bộ thời gian trong mô hình hệ thống. Nói cách khác SIC dựa trên phép trừ can nhiễu của các phần tử đã dò được ở s từ vec tín hiệu x tại bộ thu. Điều khiến cho vecto thu bị điều chỉnh mà trong đó can nhiễu sẽ giảm đi nhiều.

Khi áp dụng SIC, thì bậc của các thành phần s mà dò ra là rất quan trọng đối với hiệu suất toàn phần của hệ thống. Để xác định tốt bậc, thì chúng ta phải sử dụng ma trận hiệp phương sai lỗi ước lượng s-sest. nhắc lại công thức ma trận hiệp sai:

Hoặc sử dụng giả ngịch đảo (adsbygoogle = window.adsbygoogle || []).push({});

Cho (sest)p là lối vào thứ p của sest, ước lường “tốt nhất” là một khi mà Ppp(phần tử đường chéo thứ p của P) là nhỏ nhất, bởi vì đây là ước lượng với sự sai lệch lỗi nhỏ nhất. Từ biểu thức trên ta thấy Ppp băng độ dài bình phương của hang p của

. Tóm lại thuật toán giải mã bao gồm 3 phần

1. Ordering:Xác định dòng dữ liệu TX với độ sai lệch lỗi thấp nhất

2. Nulling can nhiễu: Đánh giá tín hiệu TX mạnh nhất bằng cách nulling tất cả các tín hiệu TX yếu hớn

3. Triệt tiêu can nhiễu: Điều chế lại bit dữ liệu, trừ ra những phần liên quan từ vecto tín hiệu thu và quay trở lại bước 1 (ordering)

(3.64)

(3.65)

Chú ý nguyên tắc này tương tự như phương pháp cân bằng phần hồi ZF (DFE) trong miền thời gian trong đó nulling can nhiễu tương ứng với bộ lọc trước và triệt tiêu can nhiễu tương ứng với bộ lọc phản hồi. Đầu tiên thuật toán này được giới thiệu cho SDM và có tên là V-BLAST. Nguyên tắc của nó giống như SIC trong sơ đồ tách sóng đa người dùng. Dưới đây là 3 bước miêu tả đệ quy chi tiết các bước tiến hành ở trên

1. Tính toán tìm hàng có độ dài bình phương nhỏ nhất của giả sử là ở hàng thứ p, tráo hàng này với hàng cuối cùng. Tráo các cột của H

2. Ước lượng các phần tử của s. Trong trường hợp ZF

Với vecto trọng số Nt

w bằng hàng Nt của đã tráo. (sest)p gần nhất với điểm chòm sao (sest,sliced)p

3. Khi Nt-1>1 thì trở lại bước 1, nhưng với giá trị là

Để đơn giản cho tính toán thì ta nên sử dụng khai triển QR. Giả sử quá trình đệ quy chạy tới (k+1), chiều của H là Nrx(Nt-k). Dựa trên khai triển QR có thể viết H=QQRR với QQR là ma trận đơn vị biểu diễn bộ lọc trước, và R chạy ở bước thứ (k+1)

Với R’ ( hàng trên Nt-k của R) là ngịch đảo. Dựa vào Nt, vecto trọng số có thành

Với ryy ký hiệu phần tử (y,y) của R và qy cột thứ y của QQR

3.7 MMSE với SIC 3.7.1 Miêu tả thuật toán 3.7.1 Miêu tả thuật toán

Để thưc hiện được triệt tiêu can nhiễu (SIC) với ước lượng trung bình bình phương tối thiểu, thì thuật toán SIC phải đáp ứng một số điều kiện nào đó. Một lần nữa ma trận hiệp phương sai của lỗi ước lượng s-sest sẽ được sử dụng để xác định bước ordering cho việc dò. Nhắc lại công thức cho ma trận hiệp phương sai

(3.67)

(3.68)

(3.69)

Chú ý là P có khác so với trường hợp sử dụng kỹ thuật ZF. Để có SIC dựa trên thuật toán MMSE, thì thuật toán SIC được điều chỉnh sao cho kết quả mang lại là:

1. Tính toán W (P tìm được trong khi xác định W). Tìm lối vào đường chéo nhỏ nhất của P và giả sử nó là lối vào thứ p. Hoán vị cột thứ p của H với cột cuối cùng và hoán vị các hàng của W theo đó

2. Dạng ước lượng của phần tử s trong trường hợp MMSE Với vecto trọng số Nt

w bằng hàng Nt của W đã tráo.(sest)p gần điểm chòm sao nhất (sest,sliced)p

3. Khi Nt-1> trở lại bước 1, nhưng với giá trị là

Hiệu suất BER của ZF với SIC và MSSE với SIC sẽ được so sánh ở phần sau

3.8 Phƣơng pháp tách với xác suất lớn nhất (MLD) 3.8.1 Miêu tả thuật toán 3.8.1 Miêu tả thuật toán

MLD là một phương pháp thực hiện tìm kiếm xác suất tối đa trên tất cả các vecto phát s. Đa số các vecto phát được tìm theo công thức sau

Ở đây tìm kiếm được thực hiện trên tất cả các vecto sj thuộc các phần tử của s {s1,….,sI}. trong đó (adsbygoogle = window.adsbygoogle || []).push({});

Với M là số lượng các điểm chòm sao. Chú ý là với MLD thì không có Nt≤Nr. Có một cách để có vecto phát là sử dụng trạng thái của nó. Chúng ta muốn tìm vecto sj trong {s1,….,sI} với xác suất là Pr(s=sj|x) hoặc Pr(sj|x) có giá trị tối đa. Đây gọi là xác suất sau tối đa (MAP). Áp dụng công thức Baye là

thì xác suất Pr(sj|x) được viết là

Với p(x|si) là hàm mật độ xác suất có điều kiện của vecto đã cho mà gửi si đi và

Một phần của tài liệu Kỹ thuật xử lý cơ bản trong hệ thống MIMO kênh Fading phẳng và đánh giá độ phức tạp của các kỹ thuật này (Trang 32)