80
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA ĐIỆN TỬ VIỄN THÔNG NGÔ VĂN HƠN THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA ARRIA V KHÓA LUẬN TỐT NGHIỆP CỬ NHÂN NGÀNH ĐIỆN TỬ VIỄN THÔNG CHUYÊN NGÀNH: VIỄN THÔNG - MẠNG THÀNH PHỐ HỒ CHÍ MINH – NĂM 2014

THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Embed Size (px)

Citation preview

Page 1: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN

KHOA ĐIỆN TỬ VIỄN THÔNG

NGÔ VĂN HƠN

THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN

BOARD FPGA ARRIA V

KHÓA LUẬN TỐT NGHIỆP CỬ NHÂN NGÀNH ĐIỆN TỬ VIỄN THÔNG

CHUYÊN NGÀNH: VIỄN THÔNG - MẠNG

THÀNH PHỐ HỒ CHÍ MINH – NĂM 2014

Page 2: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN

KHOA ĐIỆN TỬ VIỄN THÔNG

NGÔ VĂN HƠN

THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN

BOARD FPGA ARRIA V

KHÓA LUẬN TỐT NGHIỆP CỬ NHÂN NGÀNH ĐIỆN TỬ VIỄN THÔNG

CHUYÊN NGÀNH: VIỄN THÔNG - MẠNG

NGƯỜI HƯỚNG DẪN KHOA HỌC:

Th.S ĐẶNG LÊ KHOA

THÀNH PHỐ HỒ CHÍ MINH – NĂM 2014

Page 3: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

LỜI CẢM ƠN

Được nhận nghiên cứu đề tài này và được trình bày trước hội đồng là niềm vinh

hạnh rất lớn đối với em. Tuy gặp rất nhiều khó khăn trong quá trình nghiên cứu, song

kinh nghiệm và bài học mà em có được sau đó là vô cùng quý giá.

Lời đầu tiên, em xin gửi lời cảm ơn sâu sắc đến thầy Đặng Lê Khoa, người đã

trực tiếp hướng dẫn và chỉ dạy tận tình để em có thể hoàn thành được khóa luận này.

Cũng xin gửi lời cảm ơn đến những người bạn đã đồng hành cùng tôi trong suốt

quá trình nghiên cứu, giúp tôi có niềm vui, giảm căng thẳng trong lúc làm việc.

Đồng thời, xin gửi lời cảm ơn đến tất cả các thầy cô giáo đã giảng dạy kiến thức,

tạo nền tảng để em thực hiện đề tài.

Gửi lời cảm ơn tới bố, mẹ và những người thân yêu luôn động viên con trong

những lúc khó khăn.

Chúc sức khỏe và thành công đến tất cả mọi người!

T.p Hồ Chí Minh, ngày 12/07/2014

Sinh viên thực hiện

Ngô Văn Hơn

Page 4: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 1

MỤC LỤC

MỤC LỤC .................................................................................................................. 1

DANH MỤC KÝ HIỆU, CHỮ VIẾT TẮT ................................................................. 4

DANH MỤC CÁC HÌNH VẼ .................................................................................... 5

DANH MỤC CÁC BẢNG BIỂU ............................................................................... 8

LỜI MỞ ĐẦU ............................................................................................................ 9

1 CHƯƠNG 1: TỔNG QUAN ............................................................................. 11

1.1 Giới thiệu về MIMO. ................................................................................... 11

1.1.1 Lịch sử về MIMO. ................................................................................ 11

1.1.2 Các dạng cấu hình anten thu-phát. ......................................................... 13

1.1.3 Một số ứng dụng tiêu biểu. .................................................................... 15

1.1.3.1 Chuẩn 802.11n ............................................................................... 15

1.1.3.2 Wimax............................................................................................ 16

1.1.3.3 Công nghệ 4G. ............................................................................... 17

1.2 Giới thiệu về thiết bị FPGA. ........................................................................ 17

1.2.1 Định nghĩa FPGA. ................................................................................ 17

1.2.2 Ứng dụng của FPGA ............................................................................. 18

2 CHƯƠNG 2: LÝ THUYẾT VÀ CÔNG CỤ THIẾT KẾ ................................... 19

2.1 Lý thuyết về MIMO..................................................................................... 19

2.1.1 Khái niệm MIMO. ................................................................................ 19

2.1.2 Các kỹ thuật phân tập. ........................................................................... 20

2.1.2.1 Phân tập thời gian. .......................................................................... 20

2.1.2.2 Phân tập tần số. .............................................................................. 22

Page 5: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 2

2.1.2.3 Phân tập không gian. ...................................................................... 22

2.1.3 Độ lợi trong hệ thống MIMO. ............................................................... 23

2.1.3.1 Độ lợi Beamforming. ...................................................................... 23

2.1.3.2 Độ lợi ghép kênh không gian. ......................................................... 23

2.1.3.3 Độ lợi phân tập. .............................................................................. 24

2.1.4 MIMO Alamounti STBC. ..................................................................... 24

2.1.5 MIMO – STBC 2x2. ............................................................................. 28

2.2 Công cụ thiết kế. .......................................................................................... 31

2.2.1 Phần mềm DSP Builder. ....................................................................... 31

2.2.2 Thư viện DSP Builder. .......................................................................... 33

2.3 Phần cứng thực hiện. ................................................................................... 36

2.3.1 Giới thiệu board Arria V GT ................................................................. 36

2.3.2 Các thành phần trên board Arria V GT. ................................................. 37

2.3.2.1 Thiết bị Anten 5AGTFD7K3F40I3N .............................................. 37

2.3.2.2 MAX II CPLD EPM2210GF324 .................................................... 39

2.3.3 Ứng dụng Board Test System. .............................................................. 40

2.3.3.1 Giới thiệu về Board Test System. ................................................... 40

2.3.3.2 Sử dụng Board Test System. ........................................................... 41

3 CHƯƠNG 3: THIẾT KẾ. ................................................................................. 47

3.1 Mô hình thiết kế. ......................................................................................... 47

3.1.1 Sơ đồ khối. ............................................................................................ 47

3.1.2 Bộ tạo dữ liệu và các tín hiệu điều khiển. .............................................. 47

3.1.3 Bộ mã hóa. ............................................................................................ 48

3.1.4 Bộ giải mã bằng thuật toán Viterbi. ....................................................... 49

3.1.5 Ánh xạ chòm sao................................................................................... 52

Page 6: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 3

3.1.5.1 Bộ ánh xạ chòm sao. ....................................................................... 52

3.1.5.2 Bộ giải ánh xạ chòm sao. ................................................................ 54

3.1.6 Bộ điều chế MIMO-STBC. ................................................................... 55

3.1.7 Bộ giải điều chế .................................................................................... 55

3.1.8 Kênh truyền .......................................................................................... 57

3.1.9 Bộ đếm lỗi bit ....................................................................................... 57

3.2 Quy trình thiết kế trên FPGA ....................................................................... 58

3.2.1 Mô tả ban đầu về thiết kế ...................................................................... 58

3.2.2 Thực thi ................................................................................................ 59

3.2.3 Quá trình nạp và lập trình. ..................................................................... 62

4 CHƯƠNG 4: KẾT QUẢ. .................................................................................. 64

4.1 Kết quả kiểm tra board bằng phần mềm Board Test System ........................ 64

4.2 Kết quả đo đạt mô hình thiết kế. .................................................................. 69

4.2.1 Bộ mã hóa kênh và giải mã Viterbi ....................................................... 69

4.2.2 Bộ điều chế giản đồ chòm sao bằng QPSK ........................................... 70

4.2.3 Bộ mã hóa và giải mã STBC ................................................................. 71

4.2.3.1 Tín hiệu sau khi qua mã hóa STBC ................................................ 71

4.2.3.2 Tín hiệu sau khi qua kênh truyền .................................................... 72

4.2.3.3 Tín hiệu sau khi giải mã STBC ....................................................... 73

5 CHƯƠNG 5: KẾT LUẬN. ............................................................................... 75

5.1 Kết luận ....................................................................................................... 75

5.2 Hướng phát triển ......................................................................................... 76

TÀI LIỆU THAM KHẢO ........................................................................................ 77

Page 7: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 4

DANH MỤC KÝ HIỆU, CHỮ VIẾT TẮT

FIFO :First In First Out

FPGA : Field Programmable Gate Array

I : Inphase

IP core : Intellectual Property Core

MIMO : Multi Input Multi Output

MISO : Multi Input Single Output

OFDM Orthogonal Frequency-Division Multiplexing

PLL : Phase Locked Loop

Q : Quadrature

QAM : Quadrature Amplitude Modulation

QPSK : Quadrature Phase-Shift Keying

VHDL : Very High Speed Integrated Circuits Hardware

Description Language

STBC :Space-Time Block Code

Page 8: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 5

DANH MỤC CÁC HÌNH VẼ

Hình 1.1. Các chuẩn không dây ................................................................................ 12

Hình 1.2. Hệ thống SISO .......................................................................................... 13

Hình 1.3. Hệ thống MISO ......................................................................................... 14

Hình 1.4. Hệ thống SIMO ......................................................................................... 14

Hình 1.5. Hệ thống MIMO ....................................................................................... 15

Hình 2.1. Phân tập theo thời gian. ............................................................................. 21

Hình 2.2. Kỹ thuật Beamforming. ............................................................................. 23

Hình 2.3. Ghép kênh không gian giúp tăng tốc độ truyền. ......................................... 23

Hình 2.4. Phân tập không gian cải thiện SNR. .......................................................... 24

Hình 2.5. Symbol được truyền qua 2 anten phát. ....................................................... 25

Hình 2.6. Hệ thống Alamouti STBC 2x1 .................................................................. 26

Hình 2.7. Alamouti STBC với nhiều anten thu.......................................................... 27

Hình 2.8. Mô hình STBC 2x2 ................................................................................... 29

Hình 2.9. Mô hình STBC 2x2 ................................................................................... 29

Hình 2.10. Quy trình thiết kế của DSP Builder ......................................................... 32

Hình 2.11. Thư viện của DSP Builder ....................................................................... 33

Hình 2.12. Hoạt động của khối Signal Compiler. ...................................................... 34

Hình 2.13. Board Anten. ........................................................................................... 36

Hình 2.14. Sơ đồ kết nối Anten. ................................................................................ 39

Hình 2.15. Sơ đồ khối MAX II CPLD EPM2210 ...................................................... 40

Hình 2.16. Giao diện Board Test System .................................................................. 41

Hình 2.17. Menu cấu hình ........................................................................................ 42

Hình 2.18. Tab Flash ................................................................................................ 44

Hình 2.19. Tab HSMA.............................................................................................. 44

Hình 2.20. Tab SFP/SMA/C2C ................................................................................. 45

Hình 2.21. Tab HSMB/FMC .................................................................................... 45

Hình 2.22. Tab SDI/Bull's Eye .................................................................................. 46

Hình 2.23. Tab SMA ................................................................................................ 46

Hình 3.1. Mô hình thiết kế hệ thống MIMO-STBC ................................................... 47

Page 9: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 6

Hình 3.2. Mạch tạo dữ liệu và tín hiệu điều khiển. .................................................... 48

Hình 3.3. Bộ mã hóa Convolutional code ................................................................. 49

Hình 3.4. Mô hình thuật toán Viterbi ........................................................................ 49

Hình 3.5. Ví dụ giải mã dùng thuật toán Viterbi ....................................................... 50

Hình 3.6. Bộ giải mã dùng thuật toán Viterbi. ........................................................... 51

Hình 3.7. Dạng sóng của các tín hiệu điều khiển của khối giải mã Viterbi. ............... 51

Hình 3.8. Giản đồ chòm sao phép điều chế QPSK và 16 QAM ................................. 53

Hình 3.9. Mạch thực hiện phép điều chế QPSK. ....................................................... 54

Hình 3.10. Bộ mapper và bộ nhớ FIFO ..................................................................... 54

Hình 3.11. Mạch thực hiện điều chế MIMO-STBC. .................................................. 55

Hình 3.12. Mạch thực hiện giải điều chế MIMO-STBC ............................................ 56

Hình 3.13. Mạch thiết kế bộ chia. ............................................................................. 57

Hình 3.14. Mạch đếm lỗi bit ..................................................................................... 57

Hình 3.15. Tổ hợp logic ............................................................................................ 59

Hình 3.16. Sơ đồ gán chân ........................................................................................ 60

Hình 3.17. Sơ đồ không gian gán bên trong FPGA ................................................... 61

Hình 3.18. Sơ đồ định tuyến ..................................................................................... 61

Hình 4.1. Cấu hình menu Flash/GPIO trên FPGA 1. ................................................. 64

Hình 4.2. Kết quả cấu hình LED, LCD hiện thị, các Switch và nút nhấn. .................. 65

Hình 4.3. Kết quả kiểm tra đọc, ghi bộ nhớ RAM gắn với Chip FPGA 1. ................. 65

Hình 4.4. Kết quả kiểm tra đọc, ghi bộ nhớ RAM gắn với Chip FPGA 2. ................. 66

Hình 4.5. Kết quả thu phát loopback trên cổng kết nối HSMA. ................................. 66

Hình 4.6. Kết quả thu phát loopback trên cổng kết nối HSMB. ................................. 67

Hình 4.7. Kết quả kiểm tra phát trên cổng kết nối FMC. ........................................... 67

Hình 4.8. Kết quả kiểm tra phát tại Bull’s Eye. ......................................................... 68

Hình 4.9. Kết quả kiểm tra thu phát qua SMA. ......................................................... 68

Hình 4.10. Tín hiệu qua mã hóa kênh ....................................................................... 69

Hình 4.11. Tín hiệu qua bộ mã hóa kênh và giải mã ................................................. 70

Hình 4.12. Tín hiệu phần thực QPSK ........................................................................ 70

Hình 4.13. Tín hiệu phần ảo QPSK ........................................................................... 71

Hình 4.14. Tín hiệu trước khi mapper và sau khi demapper ...................................... 71

Page 10: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 7

Hình 4.15. Tín hiệu anten 1 ...................................................................................... 72

Hình 4.16. Tín hiệu anten 2 ...................................................................................... 72

Hình 4.17. Tín hiệu anten 1 sau khi qua kênh truyền ................................................ 73

Hình 4.18. Tín hiệu anten 2 sau khi qua kênh truyền ................................................ 73

Hình 4.19. So sánh tín hiệu sau giải điều chế STBC và tín hiệu gốc ......................... 74

Page 11: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 8

DANH MỤC CÁC BẢNG BIỂU

Bảng 2-1. Các đặc tính của Arria V GT. ................................................................... 39

Bảng 3-1. Ý nghĩa các đường tín hiệu của bộ giải mã Viterbi ................................... 52

Bảng 3-2. Dữ liệu bảng tra của QPSK ...................................................................... 53

Page 12: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 9

LỜI MỞ ĐẦU

Trong khi mạng không dây trở nên phổ biến, nhu cầu người sử dụng càng cao thì

vấn đề băng thông hữu hạn luôn là vấn đề được luôn được quan tâm hàng đầu. Các nhà

nghiên cứu tập trung tìm cách để truyền được nhiều bit hơn trên 1 Hz, sử dụng hiệu quả

phổ tần hơn, tiếp cận đến tốc độ theo lý thuyết Shanon.

Những tiến bộ trong mã hóa như mã kiểm tra chẵn lẻ, mã Turbo… đã có thể tiếp

cận đến giới hạn Shannon với hệ thống 1 anten phát, 1 anten thu. Và ngày nay, kỹ thuật

MIMO ra đời mang lại nhiều hiệu quả hơn nữa, đặc biệt là hiệu quả phổ tần. Đó là kỹ

thuật nhiều anten phát và nhiều anten thu ở nơi truyền và nơi nhận.

Hỗ trợ cho quá trình nghiên cứu, nhiều hãng trên thế giới thiết kế rất nhiều phần

cứng là các board mạch. Điển hình là hãng Altera với các sản phẩm FPGA thuộc họ

Stratix, Cyclone, Arria. Các board này là công cụ đắc lực để thiết kế các hệ thống về

viễn thông như: bộ mã hóa chập – giải mã Viterbi, bộ điều chế QPAK, QAM…, hệ

thống MIMO-OFDM,…Thiết bị được sử dụng trong đề tài là board FPGA Arria V GT

của hãng Altera. Đây là một linh kiện có tốc độ rất cao nhưng hiện tại vẫn chưa có nhiều

nghiên cứu kể cả trong nước và quốc tế.

Mục tiêu chính của đề tài là tìm hiểu về cấu trúc và cách nạp một thiết kế lên

board, thiết kế thử nghiệm hệ thống MIMO trên nền DSP Builder và kiểm tra đánh giá

hệ thống.

Để tài bao gồm 5 chương như sau:

Chương 1: Tổng quan - Chương này sẽ giới thiệu chung về hệ thống MIMO, các

ứng dụng thực tế, đồng thời cũng giới thiệu về phần cứng FPGA.

Chương 2: Bao gồm lý thuyết cơ bản về hệ thống MIMO nói chung và MIMO-

STBC nói riêng, đồng thời giới thiệu công cụ thiết kế DSP Builder và Board FPGA

Arria V của hãng Altera.

Page 13: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 10

Chương 3: Trình bày phương pháp thiết kế mạch của từng khối và ghép các khối

lại với nhau để tạo thành hệ thống thu phát MIMO hoàn chỉnh. Ngoài ra còn trình bày

quy trình chung để thiết kế hệ thống trên nền FPGA.

Chương 4: Trình bày kết quả mô trên board Arria V thông qua công cụ Board

Test System, tiếp đến là trình bày các kết quả đo đạt mô hình và kiểm tra hệ thống.

Chương 5: Tổng kết các nội dung chính đã hoàn thành và hướng phát triển của

đề tài.

Page 14: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 11

1 CHƯƠNG 1: TỔNG QUAN

Chương này trình bày một vài điểm về lịch sử cũng như đặc điểm, khái niệm

cơ bản của hệ thống MIMO, các chuẩn truyền thông tiêu biểu trong MIMO. Đồng

thời cũng trình bày sơ lược về quá trình thiết kế hệ thống trên nền phần cứng FPGA.

1.1 Giới thiệu về MIMO.

1.1.1 Lịch sử về MIMO.

Các hệ thống thông tin không dây luôn được nghiên cứu nhằm cải thiện chất

lượng cũng như chống lại hiện tượng đa đường. Đối với các hệ thống thông tin, chất

lượng tín hiệu có thể cải thiện bằng cách tăng công suốt, tăng dung lượng truyền khi

tăng băng thông. Tuy nhiên công suất cũng chỉ có thể tăng đến một mức giới hạn nào

đó vì khi công suất tăng thì có thể gây nhiễu cho các hệ thống thông tin xung quanh

và việc phân bố . Vì thế để có thể tăng năng suất và chất lượng người ta trong cậy vào

các kỹ thuật truyền phát và xử lý tín hiệu. Trong đó có MIMO-OFDM. Ở đề tài này

chỉ nghiên cứu một phần về MIMO.

Hệ thống MIMO có thể tăng dung lượng kênh truyền, sử dụng băng thông

hiệu quả nhờ ghép kênh không gian, cải thiện chất lượng hệ thống đáng kể nhờ vào

phân tập tại phía phát và phía thu mà không cần tăng công suất phát cũng như băng

thông của hệ thống.

Hình 1.1 mô tả các chuẩn thông tin không dây của IEEE tương ứng với tốc độ

bit và vùng phủ sóng, trong đố các chuẩn màu đậm được ứng dụng trong hệ thống

MIMO-OFDM, điều này cho thấy tầm ứng dụng rất lớn của MIMO-OFDM.

Page 15: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 12

Năm 1984, Jack Winters thuộc phòng thí nghiệm Bell đã xin cấp bằng sáng

chế về việc sử dụng đa anten trong hệ thống vô tuyến. Năm 1985 đồng nghiệp của

Jack Winters là Jack Salz đã xuất bản công trình về MIMO dựa trên những nghiên

cứu của Jack Winters. Từ năm 1986 đến 1995 đã có nhiều bài báo về MIMO được

đưa ra. Năm 1996, trong khi đang làm việc tại trường đại học Stanford, Greg Raleigh

và VK jones đã khám phá ra hiện tượng phản xạ đa đường do hệ thống vô tuyến va

chạm với các vật tạo ra nhiều kênh truyền ảo riêng lẻ trong hệ thống MIMO. Từ đó

Greg Raleigh đã viết bài báo chỉ ra rằng hiện tượng đa đường là yếu tố giúp tăng dung

lượng kênh truyền. Cũng trong năm 1996 G.J.Foschini thuộc phòng thí nghiệm Bell

đã đưa ra kiến trúc D-BLAST (Diagonal-Bell Laboratories Layered Space-Time) cho

truyền dẫn vô tuyến sử dụng công nghệ MIMO. Năm 1998, P.W.Wolniansky và các

đồng nghiệp thuộc phòng thí nghiệm Bell đã đưa ra kỹ thuật V-BLAST (Vertical-

Bell Laboratories Layered Space-Time) với hiệu suất sử dụng phổ lần đầu tiên khoảng

20-40 bps/Hz. Siavash M.Alamouti cũng đưa ra sơ đồ phân tập phát đơn giản sử dụng

2 anten phát và 1 anten thu, sơ đồ này cũng đưa ra phương pháp áp dụng cho M anten

thu để có độ lợi 2M. Năm 2003, Airgo đã tung ra chip MIMO đầu tiên. Năm 2004,

IEEE đã lập nhóm TGn nghiên cứu chuẩn 802.11n dựa trên hệ thống MIMO kết hợp

Hình 1.1. Các chuẩn không dây

Page 16: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 13

kỹ thuật OFDM. Năm 2006, TGn đã đưa ra bản nháp đầu tiên của 802.11n để thảo

luận và sửa chữa.

1.1.2 Các dạng cấu hình anten thu-phát.

Các mô hình hệ thống thông tin không dây có thể được phân loại thành 4

hệ thống cơ bản gồm:

SISO (Single Input Single Output)

SIMO (Single Input Multiple Output)

MISO (Multiple Input Single Output)

MIMO (Multiple Input Multiple Output)

Hệ thống SISO

Hình 1.2. Hệ thống SISO

Hệ thống SISO là hệ thống thông tin không dây truyền thống chỉ sử dụng một

anten phát và một anten thu. Máy phát và máy thu chỉ có một bộ cao tần và một bộ

điều chế, giải điều chế. Hệ thống SISO thường dùng trong phát thanh và phát hình,

và các kỹ thuật truyền dẫn vô tuyến cá nhân như Wi-Fi hay Bluetooth. Dung

lượng hệ thống phụ thuộc vào tỉ số tín hiệu trên nhiễu được xác định theo công thức

Shanon:

2log (1 SNR)bit/ s/ HzC

Page 17: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 14

Hệ thống MISO

Hình 1.3. Hệ thống MISO

Hệ thống sử dụng nhiều anten phát và một anten thu được gọi là hệ

thống MISO. Hệ thống này có thể cung cấp phân tập phát thông qua kỹ thuật

Alamouti từ đó cải thiện lượng tín hiệu hoặc sử dụng Beamforming để tăng hiệu suất

phát và vùng bao phủ. Khi máy phát biết được thông ti kênh truyền, dung lượng hệ

thống tăng theo hàm logarit của số anten phát và có thể được xác định gần đúng theo

công thức:

2log (1 . )bit/ s/ HzC N SNR

Hệ thống SIMO

Hình 1.4. Hệ thống SIMO

Hệ thống sử dụng một anten phát và nhiều anten thu được gọi là hệ

thống SIMO. Trong hệ thống này máy thu có thể lựa chọn hoặc kết hợp tín hiệu từ

các anten thu nhằm tối đa tỷ số tín hiệu trên nhiễu thông qua các giải thuật

beamforming hoặc MMRC (Maximal- Ratio Receive Combining). Khi máy thu biết

thông tin kênh truyền, dung lượng hệ thống tăng theo hàm logarit của số anten thu,

được tính theo công thức:

Page 18: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 15

2log (1 . ) bit/ s/ HzC M SNR

Hệ thống MIMO

Hình 1.5. Hệ thống MIMO

Hệ thống MIMO là hệ thống sử dụng đa anten cả nơi phát và nơi thu. Hệ thống

có thể cung cấp phân tập phát nhờ đa anten phát, cung cấp phân tập thu nhờ vào đa

anten thu nhằm tăng chất lượng hệ thống hoặc thực hiện Beamforming tại nơi phát

và nơi thu để tăng hiệu suất sử dụng công suất, triệt can nhiễu. Ngoài ra dung lượng

hệ thống có thể cải thiện đáng kể nhờ vào độ lợi ghép kênh cung cấp bởi kỹ thuật mã

hoá không gian - thời gian V-BLAST. Khi thông tin kênh truyền được biết tại cả nơi

phát và thu, hệ thống có thể cung cấp độ lợi phân tập cực cao và độ lợi ghép kênh cực

đại, dung lượng hệ thống trong trường hợp phân tập cực đại có thể xác định theo công

thức:

2log (1 M.N.SNR) bit/ s/ HzC

1.1.3 Một số ứng dụng tiêu biểu.

1.1.3.1 Chuẩn 802.11n

Mạng máy tính cục bộ không dây (WLAN: wireless LAN ), còn gọi tắt là

WiFi (Wireless Fidelity) đầu tiên được IEEE chuẩn hoá vào năm 1997 và được

gọi là 802.11. Chuẩn này hoạt động trong dải tần vô tuyến 2.4Ghz với tốc độ chỉ

đạt được là 2Mbps. Tốc độ này quá thấp cho các ứng dụng. Vì vậy, IEEE đã phát

triển các chuẩn mới. Năm 1999, các chuẩn 802.11a/b được chấp thuận và sản phẩm

thương mại đầu tiên ra đời năm 2001. Các mạng WLAN đã phát triển vượt bậc nhờ

Page 19: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 16

giá thành ngày càng giảm, được tích hợp sẵn trong các thiết bị xách tay và nhất là

sự tiện nghi cho người sử dụng khi truy cập mạng mà không cần dây nối.

Đến nay, mạng WLAN đã được phát triển thêm rất nhiều chuẩn, trong đó

nổi bật là 802.11a, 802.11b, 802.11g, 802.11n và gần đây là 802.11ac. Trong đó,

chuẩn 802.11n sử dụng kỹ thuật MIMO-OFDM nên tốc độ đạt trên 100Mbps (tối

đa là 600 Mbps).

Wireless LAN không những hỗ trợ thiết lập mạng cục bộ mà còn cho phép

thiết lập mạng ngang hàng peer-to-peer (adhoc network) giữa các thiết bị. Vì vậy,

mạng này không chỉ hiện diện trên các máy tính xách tay, các thiết bị hỗ trợ cá

nhân (PDA), mà còn xuất hiện ở nhiều thiết bị giải trí đa phương tiện, các thiết bị

văn phòng. Thành công của mạng wireless LAN đã thúc đẩy việc phát triển nhanh

mạng máy tính với quy mô lớn hơn và có nhiều tính năng hơn. Mạng máy tính không

dây diện rộng (Wireless MAN) được nghiên cứu và thử nghiệm, chuẩn 802.16 ra

đời. Sự phát triển cực nhanh đó cho thấy mối quan tâm của thế giới dành cho mạng

máy tính không dây cục bộ và các thế hệ sau của nó là rất lớn.

1.1.3.2 Wimax

IEEE 802.16 còn được gọi với tên WiMAX (Worldwide Interoperability

for Microwave Access) được phát triển trong những năm gần đây. Chuẩn 802.16 đầu

tiên được công bố vào tháng 12 năm 2001, dành cho hệ thống không dây dải rộng

cố định điểm – đa điểm (fixed point to multipoint broadband wireless system) hoạt

động trong vùng phổ tần đăng ký (licensed spectrum) từ 10 đến 66 GHz. Trên

thực tế, WiMax hoạt động tương tự WiFi nhưng ở tốc độ cao và khoảng cách lớn

hơn rất nhiều cùng với một số lượng lớn người dùng. Một hệ thống WiMAX gồm

2 phần cơ bản là trạm phát và trạm thu. Trạm phát giống như các trạm BTS

trong mạng thông tin di động với công suất lớn có thể phủ sóng một vùng rộng

tới 8000 km2. Trạm thu có thể là các anten nhỏ như các card mạng kết nối vào hoặc

được thiết lập sẵn trên bo mạch chủ bên trong các máy tính. Các trạm phát BTS

được kết nối tới mạng Internet thông qua các đường truyền tốc độ cao dành riêng

hoặc có thể được nối tới một BTS khác như một trạm trung chuyển bằng đường

Page 20: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 17

truyền thẳng (line of sight) và chính vì vậy WiMAX có thể phủ sóng đến những

vùng rất xa.

1.1.3.3 Công nghệ 4G.

Truyền thông vô tuyến thế hệ thứ 4 là các hệ thống di động băng rộng.

Với hệ thống này, các thiết bị di động có khả năng truyền tải các dữ liệu, âm thanh

và hình ảnh với chất lượng cao. Đồng thời, các nhà thiết kế kỳ vọng sẽ có thể cho

phép các thiết bị di động chuyển vùng (roaming) tự động qua các công nghệ không

dây khác nhau. Kỹ thuật MIMO-OFDM cho phép truyền tín hiệu với tốc độ cao,

tránh được cảICI và ISI. Vì vậy, kỹ thuật MIMO-OFDM là công nghệ then chốt

của truyền thông vô tuyến thế hệ thứ tư (4G).

1.2 Giới thiệu về thiết bị FPGA.

1.2.1 Định nghĩa FPGA.

Field-programmable gate array (FPGA) là vi mạch dùng cấu trúc mảng phần

tử logic mà người dùng có thể lập trình được. (Chữ field ở đây muốn chỉ đến khả

năng tái lập trình “bên ngoài” của người sử dụng, không phụ thuộc vào dây chuyền

sản xuất phức tạp của nhà máy bán dẫn). Vi mạch FPGA được cấu thành từ các bộ

phận:

Các khối logic cơ bản lập trình được (logic block)

Hệ thống mạch liên kết lập trình được

Khối vào/ra (IO Pads)

Phần tử thiết kế sẵn khác như DSP slice, RAM, ROM, nhân vi xử lý...

FPGA cũng được xem như một loại vi mạch bán dẫn chuyên dụng ASIC,

nhưng nếu so sánh FPGA với những ASIC đặc chế hoàn toàn hay ASIC thiết kế trên

thư viện logic thì FPGA không đạt đựợc mức độ tối ưu như những loại này, và hạn

chế trong khả năng thực hiện những tác vụ đặc biệt phức tạp, tuy vậy FPGA ưu việt

hơn ở chỗ có thể tái cấu trúc lại khi đang sử dụng, công đoạn thiết kế đơn giản do vậy

chi phí giảm, rút ngắn thời gian đưa sản phẩm vào sử dụng.

Page 21: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 18

Còn nếu so sánh với các dạng vi mạch bán dẫn lập trình được dùng cấu trúc

mảng phần tử logic như PLA, PAL, CPLD thì FPGA ưu việt hơn các điểm: tác vụ tái

lập trình của FPGA thực hiện đơn giản hơn; khả năng lập trình linh động hơn; và khác

biệt quan trọng nhất là kiến trúc của FPGA cho phép nó có khả năng chứa khối lượng

lớn cổng logic (logic gate), so với các vi mạch bán dẫn lập trình được có trước nó.

Thiết kế hay lập trình cho FPGA được thực hiện chủ yếu bằng các ngôn ngữ

mô tả phần cứng HDL như VHDL, Verilog, AHDL, các hãng sản xuất FPGA lớn như

Xilinx, Altera thường cung cấp các gói phần mềm và thiết bị phụ trợ cho quá trình

thiết kế, cũng có một số các hãng thứ ba cung cấp các gói phần mềm kiểu này như

Synopsys, Synplify...

Các gói phần mềm này có khả năng thực hiện tất cả các bước của toàn bộ quy

trình thiết kế IC chuẩn với đầu vào là mã thiết kế trên HDL (còn gọi là mã RTL).

1.2.2 Ứng dụng của FPGA

Ứng dụng của FPGA bao gồm: xử lý tín hiệu số DSP, các hệ thống hàng không,

vũ trụ, quốc phòng, tiền thiết kế mẫu ASIC (ASIC prototyping), các hệ thống điều

khiển trực quan, phân tích nhận dạng ảnh, nhận dạng tiếng nói, mật mã học, mô hình

phần cứng máy tính...

Do tính linh động cao trong quá trình thiết kế cho phép FPGA giải quyết lớp

những bài toán phức tạp mà trước kia chỉ thực hiện nhờ phần mềm máy tính, ngoài

ra nhờ mật độ cổng logic lớn FPGA được ứng dụng cho những bài toán đòi hỏi khối

lượng tính toán lớn và dùng trong các hệ thống làm việc theo thời gian thực.

Page 22: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 19

2 CHƯƠNG 2: LÝ THUYẾT VÀ CÔNG CỤ THIẾT KẾ

Bên cạnh những điều kiện về kênh truyền, cấu trúc của hệ thống MIMO cũng

sẽ ảnh hưởng lớn đến chất lượng và năng suất của hệ thống. Thêm vào đó, phương

pháp xử lý tín hiệu sẽ ảnh hưởng đến cấu trúc của bộ phát và bộ thu. Nhìn chung, cấu

trúc của hệ thống MIMO có thể được phân thành hai nhóm: Mã hóa không gian- thời

gian (STC) và đa hợp phân chia theo không gian (SDM). STC nâng cao chất lượng

và năng suất của hệ thống bằng cách mã hóa ở các nhánh bộ truyền khác nhau trong

khi đó SDM nâng cao tốc độ truyền thông tin bằng cách truyền cách chia nguồn thông

tin thành những luồng nhỏ hơn và truyền trên cùng một dải tần. Bằng cách sử dụng

các kỹ thuật đầu thu thích hợp, có thể đạt được chất lượng và hiệu quả hệ thống nhờ

hai kỹ thuật trên.

Nội dung trong chương này sẽ tập trung giới thiệu về hệ thống MIMO nhóm

STC, đồng thời, sẽ giới thiệu các công cụ thiết kế hệ thống trên FPGA là DSP Builder

và board Arria V GT.

2.1 Lý thuyết về MIMO.

2.1.1 Khái niệm MIMO.

Nhu cầu về dung lượng hệ thống di động, không dây, internet tăng lên nhanh

chóng trên thế giới. Tuy nhiên phổ tần lại giới hạn, do đó việc tăng hiệu quả sử dụng

phổ tần là điều cần thiết. Việc tăng hiệu quả sử dụng phổ tần có thể cao hơn nữa khi

sử dụng nhiều anten ở đầu phát và đầu thu.

MIMO (Multiple Input Multiple Output) là hệ thống truyền thông điểm-điểm

với đa anten ở đầu phát và đầu thu (Hình 2.1). Những nghiên cứu cho thấy hệ thống

MIMO có thể tăng tốc độ dữ liệu, giảm BER, tăng vùng bao phủ hệ thống vô tuyến

mà không cần tăng công suất hay băng thông. Chí phí trả cho tăng tốc độ đường

truyền chính là chi phí triển khai hệ thống anten, không gian hệ thống tăng và độ

phức tạp xử lý tín hiệu số cũng tăng.

Page 23: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 20

2.1.2 Các kỹ thuật phân tập.

Trong các hệ thống thông tin vô tuyến di động, các kỹ thuật phân tập được sử

dụng rộng rãi để giảm ảnh hưởng của Fading đa đường và cải thiện độ tin cậy của

truyền dẫn mà không phải tăng công suất phát hoặc mở rộng băng thông. Kỹ thuật

phân tập dựa trên các mô hình mà ở đó tại bộ thu sẽ nhận được các bản sao chép của

tín hiệu phát, tất cả các sóng mang sẽ có cùng một thông tin nhưng sự tương quan về

Fading thống kê là rất nhỏ. Ý tưởng cơ bản của phân tập là ở chỗ, nếu hai hoặc nhiều

mẫu độc lập của tín hiệu được đưa tới và các mẫu đó bị ảnh hưởng của Fading là độc

lập với nhau, có nghĩa là trong số chúng, có những tín hiệu bị ảnh hưởng nhiều, trong

khi các mẫu khác bị ảnh hưởng ít hơn. Điều đó có nghĩa là khả năng của các mẫu

đồng thời chịu ảnh hưởng của Fading dưới một mức cho trước là thấp hơn nhiều so

với khả năng một vài mẫu độc lập bị nằm dưới mức đó. Do vậy, bằng cách kết hợp

một cách thích hợp các mẫu khác nhau sẽ dẫn tới giảm ảnh hưởng của Fading và do

đó tăng độ tin cậy của việc phát tín hiệu. Một số phương pháp phân tập được sử dụng

để có được chất lượng như mong muốn tương ứng với phạm vi phân tập được giới

thiệu, các kỹ thuật phân tập được phân lớp thành phân tập thời gian, tần số và phân

tập không gian.

2.1.2.1 Phân tập thời gian.

Phân tập theo thời gian có thể thu được qua mã hóa và xen kênh. Sau đây ta

sẽ so sánh hai trường hợp: truyền ký tự liên tiếp và dùng xen kênh khi độ lợi kênh

truyền rất nhỏ.

Page 24: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 21

th

t

Hình 2.1. Phân tập theo thời gian.

Từ hình vẽ ta thấy rằng: từ mã x2 bị triệt tiêu bởi Fading nếu không dùng bộ

xen kênh, nếu dùng bộ xen kênh thì mỗi từ mã chỉ mất một ký tự và ta có thể phục

hồi lại từ 3 ký tự ít bị ảnh hưởng bởi Fading.

Phân tập thời gian có thể đạt được bằng cách truyền dữ liệu giống nhau qua

những khe thời gian khác nhau, tại nơi thu các tín hiệu Fading không tương quan với

nhau. Khoảng cách thời gian yêu cầu ít nhất bằng thời gian nhất quán của kênh truyền

hoặc nghịch đảo của tốc độ Fading.

1

.d c

c

f v f ( 2.1)

Mã điều khiển lỗi thường được sử dụng trong hệ thống truyền thông để cung

cấp độ lợi mã (coding gain) so với hệ thống không mã hóa. Trong truyền thông di

động, mã điều khiển lỗi kết hợp với xen kênh để đạt được sự phân tập thời gian. Trong

trường hợp này, các phiên bản của tín hiệu phát đến nơi thu dưới dạng dư thừa trong

miền thời gian. Khoảng thời gian lặp lại các phiên bản của tín hiệu phát được quy

định bởi thời gian xen kênh để thu được Fading độc lập ở ngõ vào bộ giải mã. Vì tốn

thời gian cho bộ xen kênh dẫn đến trì hoãn việc giải mã, kỹ thuật này thường hiệu

quả trong môi trường Fading nhanh, ở đó thời gian nhất quán của kênh truyền nhỏ.

Page 25: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 22

Đối với kênh truyền Fading chậm nếu xen kênh quá nhiều thì có thể dẫn đến trì hoãn

đáng kể.

2.1.2.2 Phân tập tần số.

Trong phân tập tần số, sử dụng các thành phần tần số khác nhau để phát cùng

một thông tin. Các tần số cần được phân chia để đảm bảo bị ảnh hưởng của fading

một cách độc lập. Khoảng cách giữa các tần số phải lớn hơn vài lần băng thông nhất

quán để đảm bảo rằng fading trên các tần số khác nhau là không tương quan với nhau.

Trong truyền thông di động, các phiên bản của tín hiệu phát thường được cung cấp

cho nơi thu ở dạng dư thừa trong miền tần số còn được gọi là trải phổ, ví dụ như trải

phổ trực tiếp, điều chế đa sóng mang và nhảy tần. Kỹ thuật trải phổ rất hiệu quả khi

băng thông nhất quán của kênh truyền nhỏ. Tuy nhiên, khi băng thông nhất quán của

kênh truyền lớn hơn băng thông trải phổ, trải trễ đa đường sẽ nhỏ hơn chu kỳ của tín

hiệu. Trong trường hợp này, trải phổ là không hiệu quả để cung cấp phân tập tần số.

Phân tập tần số gây ra sự tổn hao hiệu suất băng thông tùy thuộc vào sự dư thừa thông

tin trong cùng băng tần số.

2.1.2.3 Phân tập không gian.

Phân tập không gian còn gọi là phân tập anten. Phân tập không gian được sử

dụng phổ biến trong truyền thông không dây dùng sóng viba. Phân tập không gian sử

dụng nhiều anten hoặc chuỗi array được sắp xếp trong không gian tại phía phát hoặc

phía thu. Các anten được phân chia ở những khoảng cách đủ lớn, sao cho tín hiệu

không tương quan với nhau.

Yêu cầu về khoảng cách giữa các anten tùy thuộc vào độ cao của anten, môi

trường lan truyền và tần số làm việc. Khoảng cách điển hình khoảng vài bước sóng

là đủ để các tín hiệu không tương quan với nhau. Trong phân tập không gian, các

phiên bản của tín hiệu phát được truyền đến nơi thu tạo nên sự dư thừa trong miền

không gian. Không giống như phân tập thởi gian và tần số, phân tập không gian không

làm giảm hiệu suất băng thông. Đặc tính này rất quan trọng trong truyền thông không

dây tốc độ cao trong tương lai.

Page 26: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 23

Tùy thuộc vào việc sử dụng nhiều anten hoặc ở nơi phát hoặc nơi thu mà

người ta chia phân tập không gian thành ba loại:

Phân tập anten phát (hệ thống MISO)

Phân tập anten thu (hệ thống SIMO)

Phân tập anten phát và thu (hệ thống MIMO).

2.1.3 Độ lợi trong hệ thống MIMO.

2.1.3.1 Độ lợi Beamforming.

Beamforming giúp hệ thống tập trung năng lượng bức xạ theo hướng mong

muốn giúp tăng hiệu quả công suất, giảm can nhiễu và tránh được can nhiễu tới từ

các hướng không mong muốn, từ đó giúp cải thiện chất lượng kênh truyền và tăng độ

bao phủ của hệ thống. Để có thể thực hiện Beamforming, khoảng cách giữa các anten

trong hệ thống MIMO thường nhỏ hơn bước sóng (thông thường là ),

Beamforming thường được thực hiện trong môi trường ít tán xạ .Khi môi trường tán

xạ mạnh hệ thống MIMO có thể cung cấp độ lợi ghép kênh không gian và độ lợi phân

tập.

Hình 2.2. Kỹ thuật Beamforming.

2.1.3.2 Độ lợi ghép kênh không gian.

Hình 2.3. Ghép kênh không gian giúp tăng tốc độ truyền.

2/

Page 27: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 24

Tận dụng các kênh truyền song song có được từ đa anten tại phía phát và phía

thu trong hệ thống MIMO, các tín hiệu sẽ được phát độc lập và đồng thời ra các anten

(hình 2.3), nhằm tăng dung lượng kênh truyền mà không cần tăng công suất phát hay

tăng băng thông hệ thống. Dung lượng hệ thống sẽ tăng tuyến tính theo số các kênh

truyền song song trong hệ thống. Để cực đại độ lợi ghép kênh qua đó cực đại dung

lượng kênh truyền thuật toán V-BLAST (Vertical- Bell Laboratories Layered Space-

Time) được áp dụng.

2.1.3.3 Độ lợi phân tập.

Hình 2.4. Phân tập không gian cải thiện SNR.

Trong truyền dẫn vô tuyến, mức tín hiệu luôn thay đổi, bị Fading liên tục

theo không gian, thời gian và tần số, khiến cho tín hiệu tại nơi thu không ổn định,

việc phân tập cung cấp cho các bộ thu các bản sao tín hiệu giống nhau qua các kênh

truyền Fading khác nhau (hinh 2.4), bộ thu có thể lựa chọn hay kết hợp hay kết hợp

các bản sao tín hiệu này để giảm thiểu tốc độ sai bit BER, chống Fading qua đó tăng

độ tin cậy của hệ thống. Để cực đại độ lợi phân tập, giảm BER và chống lại Fading,

thuật toán STBC (Space-Time Block Code) và STTC (Space-Time Trellis Code)

được áp dụng.

Thực tế, để hệ thống có dung lượng cao, BER thấp, chống được Fading, ta

phải có sự tương quan giữa độ lợi phân tập và độ lợi ghép kênh trong việc thiết kế hệ

thống.

2.1.4 MIMO Alamounti STBC.

Trong các hệ thống SISO, với một chuỗi thông tin {x1,x2,x3,…,xn} cần truyền,

thông tin sẽ được truyền nối tiếp nhau, x1 rồi đến x2 ,… xn. Tuy nhiên, trong MIMO

STBC không làm như thế, chuỗi thông tin cần truyền sẽ được sao ra vài bản tùy thuộc

Page 28: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 25

vào số anten truyền, một bản sao tín hiệu tương ứng với 1 anten, được truyền vào

không gian tại các thời điểm khác nhau dựa trên các anten khác nhau. Vì thế phương

pháp này được gọi là kỹ thuật mã hóa khối không gian- thời gian (space-time block

coding).

Mô hình của alamouti là mô hình STBC đầu tiên được nhà khoa học Siavash

M Alamouti giới thiệu vào năm 1998. Một số đặc điểm của Alamouti STBC:

Mô hình sử dụng 2 anten phát và không giới hạn số anten thu - Nr. Điều

đó có nghĩa là có thể sử dụng 1 anten thu.

Bậc phân tập anten là tích của số anten phát và anten thu tương ứng là 2Nr.

Alamouti STBC sẽ không cải thiện tốc độ truyền dữ liệu thay vào đó là

chất lượng tín hiệu sẽ được cải thiện đáng kể.

Mô hình hệ thống:

Tín hiệu được truyền dựa trên 2 anten phát và được đóng gói thành một nhóm

2 symbols. Ở khe thời gian thứ nhất, symbols x1, x2 được truyền tương ứng từ anten

thứ nhất và thứ hai. Ở khe thời gian thứ hai, symbols –x2* và x1* sẽ được truyền

tương ứng từ anten thứ nhất và thứ hai. Tương tự như thế, symbols x3, x4 ở khe thời

gian thứ ba, rồi –x4*, x3* cho khe thời gian thứ bốn. Vì vẫn cần 2 khe thời gian để

truyền 2 symbols nên tốc độ sẽ không được cải thiện.

Hình 2.5. Symbol được truyền qua 2 anten phát.

Với Nr=1, ở đầu thu

Page 29: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 26

Hình 2.6. Hệ thống Alamouti STBC 2x1

Tại khe thời gian thứ nhất tín hiệu nhận được có dạng:

1

1 1 1 2 2 1 1 122

xy h x h x n h h n

x

( 2.2)

Tại khe thời gian thứ hai tín hiệu nhận được có dạng:

** * 2

2 1 2 2 1 2 1 22 *1

xy h x h x n h h n

x

( 2.3)

Với:

y1,y2 lần lượt là symbols nhận được ở khe thời gian thứ nhất và thứ hai

h1,h2 lần lượt là hàm truyền từ anten thứ nhất và thứ hai đến anten thu

x1,x2 là symbols truyền đi

n1,n2 là nhiễu tại khe thời gian thứ nhất và thứ hai

Có thể viết gọn lại bằng cách kết hợp (2.2)

1

1 1 1 2 2 1 1 122

xy h x h x n h h n

x

( 2.2)và liên hợp phức

của (2.3):

���

��∗� = �

ℎ� ℎ�

ℎ�∗ −ℎ�

∗� ���

��� + �

��

��∗� = � �

��

��� + �

��

��∗� ( 2.4)

Page 30: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 27

Với � = �ℎ� ℎ�

ℎ�∗ −ℎ�

∗�, cần tìm nghịch đảo của H để có thể giải hệ phương trình

tìm được ���

���. Với định nghĩa hàm đảo Pseudo của ma trận:

�� = (���)���� ( 2.5)

Nhân ��vào phương trình (2.4):

���

���

�= (���)���� �

��

��∗� = (���)���� �� �

��

��� + �

��

��∗ ��

= ���

��� + (���)���� �

��

��∗�

( 2.6)

Kết quả ở (2.6) cho thấy tín hiệu nhận được bao gồm tín hiệu phát và bộ phận

của nhiễu. ���

���

� sau đó có thể được đưa qua bộ Maximum likelihood Decoder để chọn

ra tín hiệu phát phù hợp.

Tổng quát với Nr=i:

Hình 2.7. Alamouti STBC với nhiều anten thu

Tại đầu phát, thông tin được truyền tại thời điểm m và tiếp đó một khe thời

gian:

� = ���(�) ��(� + 1)��(�) ��(� + 1)

� = ��(�) −�∗(� + 1)

�(� + 1) �∗(�)� ( 2.7)

Page 31: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 28

Tại đầu thu, anten thu thứ i ,

���(�)

��∗(� + 1)

� = �ℎ�� ℎ��

ℎ��∗ −ℎ��

∗ � ��(�)

�(� + 1)� + �

��(�)

��∗(� + 1)

= � ��(�)

�(� + 1)� + �

��(�)

��∗(� + 1)

� ( 2.8)

SNR tại anten thứ i,

���� = (|ℎ��|� + |ℎ��|�)��

�� ( 2.9)

SNR cho Nr anten:

��� = ∑ (|ℎ��|� + |ℎ��|�)��

��

����� ( 2.10)

Nhìn chung, mô hình alamouti STBC có chất lượng tốt hơn so với các hệ thống

SISO. Điều đó thể hiện ở tỉ lệ lỗi bit BER. BER thường được tính theo hàm xác suất:

��� =�

�(1 − ���)���/�� ( 2.11)

Trong đó erf là hàm xác suất lỗi, khác nhau đối với các kỹ thuật điều chế khác

nhau nhưng nhìn chung chúng tỉ lệ với SNR. SNR càng lớn thì BER càng tốt. SNR

của một hệ thống SISO có thể tính bằng |ℎ|��

��. So sánh với (2.11), ta có thể nhận thấy

STBC cho BER tốt hơn SISO ngay cả khi dung cùng một công suất phát.

2.1.5 MIMO – STBC 2x2.

Xét hệ thống MIMO STBC 2 x 2:

Page 32: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 29

Hình 2.8. Mô hình STBC 2x2

Xét tín hiệu truyền đi sau. Cần lưu ý là tốc độ so với hệ thống SISO vẫn không

thay đổi do vẫn tốn 2 khe thời gian để truyền 2 symbols:

Hình 2.9. Mô hình STBC 2x2

Tại khe thời gian thứ nhất, tín hiệu thu được có dạng:

����

���� = �

ℎ�� ℎ��

ℎ�� ℎ��� �

��

��� + �

��

��� ( 2.12)

Và tín hiệu nhận được ở khe thời gian thứ hai:

����

���� = �

ℎ�� ℎ��

ℎ�� ℎ��� �

−��∗

��∗ � + �

��

��� ( 2.13)

Page 33: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 30

Trong đó: ����

���� lần lượt là tín hiệu thu được tại anten thứ nhất và thứ 2 tại thời

điểm thứ nhất, ����

���� là tín hiệu thu được tại anten thứ nhất và thứ 2 tại thời điểm thứ

2. Và hij là hàm truyền từ anten phát thứ j đến anten thứ i. ���

��� là nhiểu xảy ra tại thời

điểm thứ nhất, và tương ứng với thời điểm thứ 2 là ���

���.

Kết hợp cả hai thời điểm, hai khe thời gian ta được:

���

���

���∗

���∗

� = �

ℎ�� ℎ��

ℎ�� ℎ��

ℎ��∗ −ℎ��

ℎ��∗ −ℎ��

� ���

��� + �

����

��∗

��∗

� ( 2.14)

Tương tự như trên, để giải tìm được tín hiệu truyền ta cần phải dựa vào khái

niệm ma trận đảo Psuedo của H, �� = (���)���� . Với

��� = �ℎ��

∗ ℎ��∗

ℎ��∗ ℎ��

∗ℎ�� ℎ��

−ℎ�� −ℎ��� �

ℎ�� ℎ��

ℎ�� ℎ��

ℎ��∗ −ℎ��

ℎ��∗ −ℎ��

� ( 2.15)

��� = �|ℎ��|� + |ℎ��|� + |ℎ��|� + |ℎ��|� 0

0 |ℎ��|� + |ℎ��|� + |ℎ��|� + |ℎ��|��

( 2.16)

(���)�� =

⎣⎢⎢⎡

1

|ℎ��|� + |ℎ��|� + |ℎ��|� + |ℎ��|�0

01

|ℎ��|� + |ℎ��|� + |ℎ��|� + |ℎ��|�⎦⎥⎥⎤

( 2.17)

Khi đó

Page 34: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 31

���

��� = (���)���� �

���

���

���∗

���∗

� ( 2.18)

Sau khi được xử lý, tín hiệu sẽ được đưa vào MLD (maximum likelihood

decoder) để quyết định tính hiệu gốc. Nhờ đó, ta sẽ thu được tín hiệu ban đầu.

2.2 Công cụ thiết kế.

2.2.1 Phần mềm DSP Builder.

Đề tài được thiết kế bằng phần mềm DSP Builder, đây là một tiện ích do hãng

Altera thiết kế nhằm hỗ trợ người sử dụng có thể thiết kế nhanh chóng các ứng dụng

về xử lý tín hiệu số. DSP Builder chạy trên nền Simulink của Matlab và thừa hưởng

khả năng mô phỏng của Simulink. Do đó, để sử dụng được DSP Builder thì người

dùng cần biết về Matlab và Simulink trước.

DSP Buider tạo ra môi trường làm việc thân thiện để thiết kế các hệ DSP. Nhờ

các khối chức năng có sẵn, việc thiết kế trở nên dễ dàng hơn. Người sử dụng có thể

tạo ra những ứng dụng mong muốn và mô phỏng trên Simulink để kiểm tra kết quả.

DSP Builder cung cấp công cụ chuyển đổi thiết kế thành dạng VHDL cho phép

biên dịch và tổng hợp thành các cấu hình phần cứng, giúp rút ngắn thời gian biến ý

tưởng thành hiện thực.

Đặc điểm của DSP Builder là nó có các khối chứa bít và chu kỳ chính xác nên

thực hiện được các chức năng về số học, lưu trữ. Chúng có thể tích hợp những chức

năng phức tạp bằng cách sử dụng các MegaCore Functions trong DSP Builder model.

Các Functions này tăng cường sức mạng cho DSP Builder và mở ra khả năng phát

triển rộng lớn. Error! Reference source not found. trình bày các cách biên dịch để

chuyển từ sơ đồ thiết kế xuống phần cứng.

Page 35: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 32

Hình 2.10. Quy trình thiết kế của DSP Builder

Matlab Simulink tạo ra một model, sử dụng kết hợp các các khối DSP Builder

và các khối của Simulink.

Biểu diễn mô phỏng RTL (Register Transfer Level): DSP Builder hỗ trợ mô

phỏng cho phần mềm ModelSim bằng các Tcl scripts. Có thể sử dụng VHDL đã được

tạo ra để mô phỏng bằng các công cụ khác.

Sử dụng các file do khối DSP Builder SignalCompiler tạo ra để tổng hợp RTL.

DSP Builder hỗ trợ các Tcl scripts dùng để tổng hợp tự động bằng các chương trình

phần mềm khác như: Quartus II, Synplify, Leonardo Spectrum.

Page 36: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 33

Trong khóa luận này, việc biên dịch thiết kế được thực hiện bằng phần mềm

Quartus II phiên bản 13.1 và phải trên nền Windows 64 bit.

2.2.2 Thư viện DSP Builder.

Hình 2.11. Thư viện của DSP Builder

Hình 2.11 trình bày các nhóm thư viện của DSP Builder. Tùy các phiên bản

khác nhau thì DSP Builder sẽ có các thư viện thay đổi. Nhưng nhìn chung thì thư viện

bao gồm các khối chức năng cơ bản như sau:

Thư viện AltLab: Đây là thư viện chứa các khối hỗ trợ thiết kết như: khối chọn

loại linh kiện lập trình, khối đưa một thiết kế VHDL hoặc Verilog HDL vào trong

một subsystem, khối trả về các thông tin: chu kỳ lấy mẫu, số bit tối đa cần trong quá

trình mô phỏng và giá trị tối đa hoặc tối thiểu nhận khi mô phỏng. Trong thư viện có

hai khối quan trọng là khối Khối SignalCompiler và Khối SignalTap II Analysis:

Page 37: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 34

Hình 2.12. Hoạt động của khối Signal Compiler.

Khối Signal Compiler là khối quan trọng nhất trong DSP Builder. Hình 2.12

trình bày giao diện khi chạy Signal Compiler. Khối này có chức năng sau:

Chuyển đổi thiết kế Simulink sang ngôn ngữ RTL VHDL

Tạo ra file kiểm tra bằng ngôn ngữ VHDL hoặc Verilog

Tạo ra Tcl scripts cho Quartus II biên dịch, hoặc cho các phần mềm khác

như: Synplify, Precision RTL, LeonardoSpectrumTM và ModelSim.

Page 38: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 35

Cho phép tạo ra file SignalTap II (.stp)

Tạo ra file dùng các khối định dạng trong Quartus II (.bsf)

Khối SignalTap II Analysis dùng để kiểm tra các tín hiệu bên trong linh kiện

khi hệ thống đang chạy. SignalTap II Analysis có thể dùng để triggers, cấu hình bộ

nhớ, và hiển thị dạng sóng. Đề tài sử dụng công cụ này để kiểm tra từng khối chức

năng và quá trình xử lý dữ liệu của cả hệ thống.

Thư viện Arithmetic: Thư viện gồm các khối dùng cho phép tính số học như

so sánh, vi phân, tích phân, nhân, cộng, khai căn …

Thư viện Board: Board được sử dụng trong đề tài là Board Anten. Khi muốn

kết nối với phần cứng nào của board, ta chỉ cần thêm các khối trong thư viện vào mô

hình thiết kế.

Thư viện Complex Type: Thư viện cung cấp các hàm liên quan đến số phức

như: cộng trừ số phức, tính biên độ, pha…

Thư viện Gate and Control: Đây là thư viện cung cấp các khối về điều khiển

đường đi của dữ liệu và các cổng logic như đa hợp, giải đa hợp, flip flop, cổng AND,

OR, đảo…

Thư viện IO and Bus: Thư viện này cung cấp các khối vào/ra và bus như:

chuyển đổi bus (ví dụ chuyển từ bus 20 bit sang bus 16 bit, bỏ đi 4 bit), tách bit,

nguồn, mass, hằng số…

Thư viện Rate Change: Thư viện này cung cấp các khối để thay đổi tốc độ

trong model, chủ yếu dùng khi ta muốn thiết kế chương trình có nhiều hơn 1 clock.

Khối quan trọng nhất trong thư viện này là khối PLL, và khối này chỉ có thể

sử dụng được khi đặt nó ở mức cao nhất của model. Đồng thời, các khối sử dụng kết

quả của PLL phải là subsystem chứ không đồng mức với PLL.

Thư viện Storage: Thư viện Lưu trữ cung cấp các khối nhớ như ROM, FIFO,

LUT (look-up table: lưu trữ dữ liệu trong bảng tìm kiếm)…

Page 39: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 36

Thư viện MegaCore Functions: Các MegeCore Functions là những khối có

một chức năng hoàn chỉnh riêng biệt, nhưng DSP Builder không cung cấp sẵn các

MegaCore Functions này. Các MegaCore Functions này có thể cài đặt thêm và

thường được điều khiển rất phức tạp.

2.3 Phần cứng thực hiện.

2.3.1 Giới thiệu board Arria V GT

Hình 2.13. Board Anten.

Hình 2.13 là kit Development Arria V GT của hãng Altera. Kit này cung cấp

một môi trường thiết kế hoàn chỉnh, bao gồm tất cả các phần cứng và phần mềm mà

người sử dụng cần để phát triển tất cả những thiết kế FPGA và tiến hành kiểm tra

chúng trong môi trường hệ thống. Kit có tiêu chuẩn RoHS và bao gồm các đặc điểm

như sau:

Hai FPGA cho thiết kế ở mức hệ thống là Arria V GT: 504000 phần tử

logic (LEs), đóng gói F1517, cho tốc độ truyền tải lên tới 10.3125 Gb/s.

Ba khe nhập/xuất gồm: 2 khe HSMC tốc độ cao và 1 khe FMC

Page 40: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 37

SDRAM DDR3 với bộ nhớ 2Gb, QDR II+ với bộ nhớ 4.5Mb và bộ nhớ

flash 1Gb.

Hai kết nối SFP+

Kết nối SMAs và Samtec Bull’s Eye tốc độ cao.

Có thể đo công suất riêng biệt trên mỗi chip.

2.3.2 Các thành phần trên board Arria V GT.

2.3.2.1 Thiết bị Anten 5AGTFD7K3F40I3N

Trên board có 2 thiết bị quan trọng là FPGA1 và FPGA 2 họ Arria V GT với

1517 chân FineLine BGA

504000 phần tử logic (LEs)

190240 mô đun đáp ứng logic (ALMs)

Bộ nhớ M10K là 24140 Kb

Bộ nhớ MLAB là 2906 Kb

36 bộ thu phát

16 vòng lặp khóa pha (PLLs)

2312 kênh 18x18.

Điện thế nội 1.15 V

FPGA 1 kết nối với các thành phần sau:

Các port giao tiếp:

Một kết nối PCI Express 8 cạnh.

Một kết nối USB 2.0

Cầu nối C2C với 29 ngõ vào LVDS, 29 ngõ ra LVDS và 8 kênh truyền

nhận.

Hai kênh SFP+

Page 41: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 38

Một kênh truyền nhận SMA 10 Gb/s

Ba kênh truyền nhận Bull’s Eye 10 Gb/s

Bộ nhớ:

DDR3 SDRAM 1152 Mb với bus dữ liệu 72 bit.

QDRII + SRAM 72Mb.

Flash đồng bộ với bus dữ liệu 16 bít.

Nhập/xuất:

LED và LCD:

Tám LED 2 màu xanh và đỏ.

LCD hai dòng chữ.

Ba LED báo hiệu chọn cấu hình

Một LED báo hiệu cấu hình xong.

Hai LED báo hiệu HSMC truyền/nhận.

Ba LED báo hiệu cho PCI Express

Năm LED báo hiệu Ethernet.

Nút nhấn:

Một nút nhấn reset CPU.

Một nút nhấn điều khiển cấu hình cho MAX II

Một nút nhấn để tải hình ảnh vào FPGA từ bộ nhớ flash.

Một nút nhấn chọn hình ảnh để tải từ bộ nhớ flash.

Ba nút nhấn sử dụng chung.

Tám switch điều khiển.

Sơ đồ kết nối của Arria V GT với các thành phần trên board như sau:

Page 42: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 39

Hình 2.14. Sơ đồ kết nối Anten.

Các đặc tính của Anten được mô tả trong bảng sau:

Bảng 2-1. Các đặc tính của Arria V GT.

Modul đáp ứng logic (ALMs) 190,240

Số phần tử logic (LEs) 504,000

Số RAM M10K 24,140

Tổng bộ nhớ RAM 27,046 Kb

Đa kênh 18x18 bit 2,312

PLLs 16

Số bộ truyền/nhận 36

Loại đóng gói FBGA 1517 chân

2.3.2.2 MAX II CPLD EPM2210GF324

Board này sử dụng bộ điều khiển hệ thống MAX II CPLD EPM2210 với mục

đích:

Cấu hình FPFA từ bộ nhớ Flash.

Giám sát công suất tiêu thụ.

Ảo hóa giao diện JTAG cho giao diện đồ họa máy tính cơ bản (PC-

based GUI).

Page 43: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 40

Điều khiển thanh ghi cho xung clock.

Điều khiển thanh ghi cho quá trình điều khiển cập nhật hệ thống.

Hình 2.15. Sơ đồ khối MAX II CPLD EPM2210

2.3.3 Ứng dụng Board Test System.

2.3.3.1 Giới thiệu về Board Test System.

Bộ kit bao gồm một ví dụ thiết kế và một ứng dụng được gọi là Board Test

System (BTS) để kiểm tra các chức năng của board Arria V. Ứng dụng này có giao

diện làm rất dễ sử dụng để thay đổi các tính năng và quan sát kết quả. Ngoài ra, có

thể sử dụng BTS để kiểm tra các thành phần của board, thay đổi các thông số, quan

sát hiệu suất và đo công suất sử dụng của board.

Giao diện đồ họa của BTS trên máy tính giao tiếp với board thông qua bus

JTAG để kiểm tra những thiết kế đang chạy trên board. Hình 2.16 là giao diện của

BTS.

Page 44: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 41

Hình 2.16. Giao diện Board Test System

Một số thiết kế được cung cấp để kiểm tra những đặc tính chính của board.

Mỗi thiết kế sẽ có dữ liệu cho một hoặc nhiều tab trong phần ứng dụng. Nếu chọn

một menu cấu hình thì một thiết kế thích hợp sẽ được tải xuống FPGA. Sau khi cấu

hình FPGA thành công, một số tab sẽ xuất hiện cho phép ta thực hành một số đặc tính

liên quan đến board.

2.3.3.2 Sử dụng Board Test System.

Menu cấu hình:

Sử dụng menu cấu hình để chọn những thiết kế mà ta muốn sử dụng. Mỗi

thiết kế sẽ có chức năng khác nhau khi đó sẽ có một hoặc nhiều tab tương ứng sẽ xuất

hiện.

Page 45: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 42

Hình 2.17. Menu cấu hình

Tab thông tin hệ thống:

Như hình 2.16, tab thông tin hệ thống sẽ hiển thị các thông tin sau:

Thông tin trạng thái cấu hình của board.

Nội dung của thành ghi MAX II

Thông tin của các JTAG

Địa chỉ MAC của board

Một số lưu trữ chi tiết khác

Tab GPIO trên FPGA 1:

Tab GPIO cho phép tương tác với tất cả các thành phần nhập/xuất trên

board như viết lên LCD, đọc Switch DIP, đóng tắt LED và nhận diện khi

nhấn các nút nhấn.

Tab Flash:

Tab flash cho phép đọc và viết tất cả bộ nhớ flash lên trên board. Hình

2.18 thể hiện rõ hơn về chức năng này.

Tab HSMA:

Page 46: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 43

Tab HSMA cho phép kiểm tra hồi tiếp trên bộ thu phát (XCVR) và cổng

CMOS. Lưu ý là phải hồi tiếp HSMA trên cổng kết nối HSMC A thì chức

năng này mới làm việc được. Hình 2.19 là giao diện làm việc của HSMA.

Tab SFP/SMA/C2C:

Tab SFP/SMA/C2C cho phép chạy các thiết kế kiểm tra, sử dụng giao diện

kênh thu phát riêng biệt trên FPGA 1. Hình 2.20 là giao diện của tab này.

Tab HSMB/FMC:

Tab HSMB/SMC cho phép thực hiện hồi tiếp trên XCVR và cổng CMOS

FPGA 2. Hình 2.21 la giao diện của tab. Chú ý là cần hồi tiếp HSMB trên

cổng kết nối HSMC B thì mới kiểm tra được chức năng này.

Tab SDI/Bull’s Eye:

Tab này cho phép thực hiện hồi tiếp trên cổng Bull’s Eye và SDI của

FPGA 2. Tab này được thể hiện trong hình 2.22.

Tab SMA:

Tab SMA cho phép thực hiện hồi tiếp qua cổng SMA trên FPGA 2. Tab

này có giao diện như hình 2.23.

Page 47: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 44

Hình 2.18. Tab Flash

Hình 2.19. Tab HSMA

Page 48: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 45

Hình 2.20. Tab SFP/SMA/C2C

Hình 2.21. Tab HSMB/FMC

Page 49: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 46

Hình 2.22. Tab SDI/Bull's Eye

Hình 2.23. Tab SMA

Page 50: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 47

3 CHƯƠNG 3: THIẾT KẾ.

Trong chương 4 này sẽ trình bày việc thiết kế từng khối và ghép các khối thành

hệ thống truyền thông MIMO hoàn chỉnh. Để tiện theo dõi, việc thiết kế sẽ được phân

tích theo từng khối chức năng ở cả bên phát và bên thu. Ngoài ra, đề tài còn trình bày

quy trình chung để thiết kế hệ thống trên phần cứng FPGA.

3.1 Mô hình thiết kế.

3.1.1 Sơ đồ khối.

Mô hình hệ thống MIMO được thiết kế như hình 3.1.

Hình 3.1. Mô hình thiết kế hệ thống MIMO-STBC

3.1.2 Bộ tạo dữ liệu và các tín hiệu điều khiển.

Việc tạo dữ liệu để kiểm tra khả năng hoạt động của mạch được thực hiện bằng

cách đặt dữ liệu trong một bảng tra, như vậy, dữ liệu ta có thể kiểm soát được. Bảng

dữ liệu tạo sẵn 320 giá trị nhằm tiện cho việc mở rộng hệ thống MIMO-OFDM sau

này. Hệ thống OFDM có 320 kênh con, trong đó có 64 Cyclic Prefix, 55 giá trị ‘0’ ở

hai đầu của symbol, một giá trị ‘0’ ở chính giữa, và 8 kênh con dùng cho pilot. Vì

Page 51: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 48

vậy, chỉ có 192 kênh còn lại được dùng cho dữ liệu. Đề tài sử dụng bộ mã hoá

convolution code ½. Trong trường hợp phép đều chế QPSK, ta có mỗi symbol sẽ

mang 2 bit thông tin. Vì vậy, một symbol của hệ thống sẽ mang được 192 bit thông

tin. Do đó, ta sẽ đặt 192 giá trị nhị phân vào bảng tra và 192 giá trị ‘0’ tức là không

có thông tin để đảm bảo thời gian chèn bit và symbol OFDM. Bộ đếm có nhiệm vụ

truy xuất giá trị trong bảng tra và thực hiện chức năng làm chỉ số symbol (index_out)

cho cả hệ thống. Tín hiệu data_out là dữ liệu được tạo. Tín hiệu cho phép (ena) dùng

để báo hiệu cho các mạch ngẫu nhiên hoá, mã hoá kênh hoạt động. Hình 3.2 thể hiện

mạch tạo dữ liệu và các tín hiệu điều khiển.

Hình 3.2. Mạch tạo dữ liệu và tín hiệu điều khiển.

3.1.3 Bộ mã hóa.

Bộ mã hoá kênh được sử dụng là bộ mã convolutional code, tốc độ mặc định

là 1/2, chiều dài bộ mã hoá là 7 và dùng đa thức sinh là: G1 = 171OCT và G2 = 133OCT.

Bộ mã hoá được thiết kế bằng cách kết hợp 6 bộ trễ (delay) và 2 cổng XOR 5 ngõ

vào. Hình 3.3 trình bày bộ mã hóa Convolutional Code. Cổng in_cc là ngõ vào của

bộ mã hóa, cổng out_cc là ngõ ra của bộ mã hóa. Tín hiệu sau khi qua 2 bộ XOR

tương ứng với G1 và G2 của mã hóa. Ena là tín hiệu cho phép mã hóa.

Page 52: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 49

Hình 3.3. Bộ mã hóa Convolutional code

3.1.4 Bộ giải mã bằng thuật toán Viterbi.

Đề tài sử dụng bộ giải mã bằng thuật toán Viterbi. Kiến trúc căn bản của thuật

toán Viterbi được trình bày trong hình 3.4. Thuật toán gồm bốn khối chính: khối tính

khoảng cách nhánh (branch metric), khối cộng-so sánh-chọn (add compare and

select), khối chọn đường tối ưu (survivor path metric), và khối quy hồi và giả mã

(traceback and output decode block).

Khối tính khoảng cách nhánh (branch metric) dùng đểtính khoảng cách

Hamming của các bit (là 2 bit nếu sử dụng tốc độ mã là R=1/2) với các nhánh. Khối

cộng-so sánh-chọn có nhiệm vụ tính tổng khoảng cách Hamming của nhánh với trạng

thái hiện tại và giữ lại nhánh có khoảng cách ngắn nhất. Khối chọn đường tối ưu để

tìm ra chuỗi trạng thái phù hợp nhất. Khối quy hồi và giả mã có nhiệm vụ chọn, dò

lại chuỗi trạng thái tối ưu và quyết định chuỗi bit ở ngõ ra. Đây là chuỗi bit giải mã

của thuật toán.

Hình 3.4. Mô hình thuật toán Viterbi

Page 53: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 50

Hình 3.5 là ví dụ về giải mã dùng thuật toán Viterbi cho chuỗi dữ liệu thu là

(11, 00, 01, 11, 10, 10, 11). Chuỗi trạng thái phù hợp nhất được xác định bằng cách

tính khoảng cách Hamming với tất cả các đường. Khi hai đường cùng gặp nhau tại

một điểm, ta chỉ giữ lại đường có khoảng cách Hamming ngắn hơn. Đường cuối cùng

được chọn để quyết định trạng thái ngõ ra là đường có khoảng cách Hamming ngắn

nhất. Vì vậy, chuỗi dữ liệu tối ưu nhất là (11, 01, 01, 11, 11, 10,11). Khi xác định

được chuỗi dữ liệu tối ưu, ta có thể xác định chuỗi dữ liệu ở ngõ ra bộ giải mã. Trong

ví dụ trên, chuỗi dữ liệu sau khi giải mã là (1100100).

Hình 3.5. Ví dụ giải mã dùng thuật toán Viterbi

Đề tài sử dụng MegaCore để thực hiện bộ giải mã dùng thuật toán Viterbi.

Khối chức năng được thể hiện trong hình 3.6.

Page 54: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 51

Hình 3.6. Bộ giải mã dùng thuật toán Viterbi.

Các đường tín hiệu cơ bản để điều khiển bộ giải mã được trình bày ở hình 3.7.

Thuật toán Viterbi dựa vào chuỗi trạng thái phù hợp nhất. Vì vậy, việc xác định độ dài của chuỗi sẽ ảnh hưởng đến hiệu quả của bộ giải mã. Nếu chiều dài được chọn quá dài sẽ làm cho tăng các phép tính toán, sử dụng nhiều bộ nhớ, và tăng thời gian

trễ. Ngược lại, nếu chọn chiều dài quá ngắn sẽ hạn chế khả năng sửa lỗi của thuật toán. Chiều dài qui hồi thường được chọn gấp 6 lần chiều dài bộ mã trong trường hợp

không bỏ bớt. Trong trường hợp có bỏ bớt, chiều dài được chọn tối đa dài gấp 15 lần chiều dài bộ mã. Trong thiết kế này, chiều dài bộ mã là 7 và không sử dụng kỹ thuật bỏ bớt nên chiều dài qui hồi được chọn là 42. Chi tiết các đường tín hiệu được diễn tả ở

Bảng 3-1. Các dữ liệu đến bộ giả mã là không liên tục nên dữ liệu ngõ ra của

bộ giả mã là không liên tục. Các dữ liệu này sẽ được ghi vào bộ nhớ FIFO. Sau đó,

tín hiệu rd_data_out sẽ đọc liên tục 192 bit dữ liệu trong bộ nhớ.

Hình 3.7. Dạng sóng của các tín hiệu điều khiển của khối giải mã Viterbi.

Page 55: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 52

Bảng 3-1. Ý nghĩa các đường tín hiệu của bộ giải mã Viterbi

Tên đường tín hiệu Hướng Mô tả

sink_val Input Tín hiệu cho phép truyền dữ liệu

rr Input Ngõ vào của dữ liệu cần giải mã.

eras_sym Input Ngõ này sử dụng cho kỹ thuật bỏ bớt

source_rdy Input Tín hiệu cho phép truyền dữ liệu ngõ ra

ber_clear Input Xóa bộ đếm BER

source_val Output Báo tín hiệu ngõ ra

decbit Output Ngõ ra của tín hiệu sau giải mã

sink_rdy Output Cho phép truyền dữ liệu ngõ vào

normalizations Output Chứa các giá trị chuẩn hóa, đây là thông tin

được dùng để tránh hiện tượng tràn bộ đếm.

numerr Output Số bít lỗi

reset Input Khởi động lại bộ giải mã.

state_node_sync Input

Sử dụng trong các trường hợp đặc biệt,

dùng để thiết lập điểm bắt đầu của dữ liệu

vào.

3.1.5 Ánh xạ chòm sao.

3.1.5.1 Bộ ánh xạ chòm sao.

Ánh xạ chòm sao là phương pháp chuyển chuỗi dữ liệu có m bit thành một

điểm a+jb dạng số phức. Trong đó, số bit m phụ thuộc vào phép ánh xạ. Đề tài sử

dụng kiểu điều chế QPSK với m = 2. Có các phương pháp để thiết kế bộ mapper như

sử dụng cấu trúc case hoặc dùng một bảng tra (LUT) hoặc dùng bộ nhớ ROM. Ở đây,

khối mapper được thiết kế bằng bảng tra.

Hình 3.8 trình bày nguyên tắc của phép QPSK. Có hai bảng tra riêng được

sử dụng để lưu giá trị trục đồng pha (I) và trục vuông pha (Q). Dữ liệu cần thực hiện

ánh xạ sẽ đặt vào đường địa chỉ của bảng tra. Nội dung trong bảng tra lưu trữ giá trị

Page 56: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 53

tương ứng với chòm sao. Dữ liệu được ánh xạ sẽ có giá trị từ -1 đến 1. Ngõ ra của bộ

DAC là 14 bit. Vì vậy, đề tài chuẩn hoá tín hiệu về dạng số có dấu chấm cố định.

Hình 3.8. Giản đồ chòm sao phép điều chế QPSK và 16 QAM

Bảng 3-2 là các dữ liệu đặt trong bảng tra cho bộ mã hoá QPSK. Sơ đồ mạch

thực hiện phép điều chế QPSK được trình bày ở hình 3.9.

Bảng 3-2. Dữ liệu bảng tra của QPSK

Dữ liệu vào (địa chỉ) Ngõ ra

Hệ thập

phân

Hệ nhị

phân

Trục I Trục Q

Giá trị

(hệ 10)

Số dấu chấm

cố định (hệ 10)

Giá trị

(hệ 10)

Số dấu chấm

cố định (hệ 10)

0 00 0.707 5792 0.707 5792

1 01 0.707 5792 -0.707 10592

2 10 -0.707 10592 0.707 5792

3 11 -0.707 10592 -0.707 10592

Page 57: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 54

Hình 3.9. Mạch thực hiện phép điều chế QPSK.

3.1.5.2 Bộ giải ánh xạ chòm sao.

Ở đầu thu, các điểm chòm sao ở bộ truyền sẽ bị thay đổi do tác động của kênh

truyền. Vì vậy, bộ giải ánh xạ chòm sao phải chọn ngưỡng để xác định điểm chòm

sao ở phía thu. Khối giải ánh xạ chòm sao (demapper) được thiết kế bằng ngôn ngữ

Verilog. Nguyên tắc của của bộ demapper là so sánh giá trị nhận được trên đường I

và Q với các điểm lân cận trong chòm sao. Điểm được chọn ở ngõ ra là điểm có gần

nhất với tín hiệu nhận được. Khi sử dụng phép QPSK, bộ demapper được thực hiện

đơn giản bằng cách cho giá trị ngõ ra là bit có ý nghĩa lớn nhất (MSB) của chuỗi bit

nhận được. Đây là bit dấu của chuỗi dữ liệu. Dữ liệu ở ngõ ra sẽ được đặt vào bộ nhớ

FIFO để chuẩn bị đi vào bộ giải mã kênh. Ở đây dữ liệu truyền có 192 giá trị do đó

bộ nhớ FIFO cần 192 từ nhớ. Mỗi từ có 2 bit nhớ tương ứng với phép điều chế QPSK.

Hình 3.10 là mạch thực hiện demapper.

Hình 3.10. Bộ mapper và bộ nhớ FIFO

Page 58: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 55

3.1.6 Bộ điều chế MIMO-STBC.

Dữ liệu ngõ vào bộ điều chế MIMO-STBC là tín hiệu đồng thời I và Q tương

ứng với giá trị thực và ảo. Hai tín hiệu này được gộp với nhau thành tín hiệu phức và

lần lượt cho qua nhánh anten 1 hoặc anten 2 nhờ bộ Demux với tín hiệu điều khiển là

bộ counter. Ở khối tạo số phức, do tín hiệu vào lần lượt là giá trị I, Q với 14 bít, do

đó cần thiết lập cho khối này tối thiểu là 14 bit. Tín hiệu ở nhánh anten 1 được trì

hoãn một chu kì xung để thời điểm tiếp theo, nhánh anten 1 sẽ phát tín hiệu S0, nhánh

anten 2 sẽ phát tín hiệu S1. Tại thời điểm thứ nhất, ngõ ra của anten 1 là S0 và anten

2 là S1. Tại thời điểm tiếp theo, anten 1 là −��∗và anten 2 sẽ là ��

∗. Các luồng tín hiệu

lúc này đều ở dạng phức. Hình 3.11 là mạch thực hiện khối điều chế STBC.

Hình 3.11. Mạch thực hiện điều chế MIMO-STBC.

3.1.7 Bộ giải điều chế

Mạch thực hiện bộ giải điều chế STBC được thực hiện như hình 3.12. Các tín

hiệu vào là các giá trị phức, được tách thành các tín hiệu thực và ảo riêng biệt sau đó

truyền trên 4 nhánh khác nhau tại 2 thời điểm khác nhau bằng khối Demux. Hai tín

hiệu tại thời điểm đầu tiên được trì hoãn một chu kỳ xung, tới thời điểm tiếp theo, tín

hiệu tại 4 nhánh lần lượt là r1, r2, r3, r4. 4 tín hiệu này được xử lý nhân với các giá

trị kênh truyền H đã ước lượng được. Trong đề tài này, các giá trị kênh truyền H được

gán cố định, nên không có bộ ước lượng. Sử dụng 2 bộ cộng để cộng các tín hiệu theo

bộ quyết định maximunlikelihood. Lúc này chỉ còn lại 2 đường tín hiệu, đem chia

Page 59: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 56

cho hệ số * * * *

1 1 2 2 3 3 4 4. . . .H H H H H H H H sẽ được tín hiệu gốc. Mạch thiết kế

bộ chia được thực hiện như hình 3.13.

Hình 3.12. Mạch thực hiện giải điều chế MIMO-STBC

Page 60: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 57

Hình 3.13. Mạch thiết kế bộ chia.

3.1.8 Kênh truyền

3.1.9 Bộ đếm lỗi bit

Bộ đếm tốc độ bit có nhiệm vụ kiểm tra hai luồng dữ liệu ở phía thu và phía

phát. Nếu phát hiện thấy một sai biệt, bộ đếm lỗi sẽ tăng biến đếm lên 1 bằng cách

cho phép bộ counter. Phần dò lỗi được thực hiện bằng cổng XOR. Ngõ ra của cổng

XOR sẽ cho phép bộ đến tăng trị số đếm. Mạch thực hiện đếm BER được trình bày ở

Hình 3.14.

Hình 3.14. Mạch đếm lỗi bit

Page 61: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 58

3.2 Quy trình thiết kế trên FPGA

3.2.1 Mô tả ban đầu về thiết kế

Khi xây dựng một chip khả trình FPGA với ý nghĩa dành cho một ứng dụng

riêng biệt, vì xuất phát từ mỗi ứng dụng trong thực tiễn cuộc sống, phải đặt ra yêu

cầu phải thiết kế IC thực hiện tối ưu nhất những úng dụng đó. Bước đầu tiên của quy

trình thiết kế này có nhiệm vụ tiếp nhận các yêu cầu của thiết kế và xây dựng nên

kiến trúc tổng quát của thiết kế.

Mô tả thiết kế: Trong bước này, từ những yêu cầu của thiết kế và dựa trên

khả năng của công nghệ hiện có, người thiết kế kiến trúc sẽ xây dựng nên toàn bộ

kiến trúc tổng quan cho thiết kế. Nghĩa là trong bước này, người thiết kế kiến trúc

phải mô tả được những vấn đề sau:

Số lượng các khối cần thiết kế.

Chức năng của mỗi khối.

Hoạt động cụ thể của thiết kế và mỗi khối.

Phân tích các kỹ thuật được sử dụng trong thiết kế và các công cụ, phần

mềm hỗ trợ thiết kế.

Một thiết kế có thể được mô tả sử dụng ngôn ngữ mô tả phần cứng như VHDL

hay Verilog HDL hoặc có thể mô tả qua bản vẽ mạch. Một thiết kế có thể vừa bao

gồm bản vẽ mạch mô tả sơ đồ khối chung, vừa có thể dùng ngôn ngữ HDL để mô tả

chi tiết cho các khối trong sơ đồ.

Mô phỏng chức năng: Sau khi mô tả thiết kế, người thiết kế cần mô phỏng

tổng thể thiết kế về mặt chức năng để kiểm tra thiết kế có hoạt động đúng với các

chức năng yêu cầu.

Tổ hợp logic: là quá trình tổng hợp các mô tả thiết kế thành sơ đồ bố trí mạch

(netlist) được thể hiện trong hình 3.15. Quá trình này chia thành 2 bước: chuyển đổi

các mã RTL, mã HDL thành mô tả dưới dạng các biểu thức đại số Boolean và dựa

Page 62: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 59

trên các biểu thức này kết hợp với thư viện tế bào chuẩn sẵn có để tổng hợp nên một

thiết kế tối ưu.

Hình 3.15. Tổ hợp logic

Hiệu chỉnh các kết nối (Datapath Schematic): Nhập netlist và các ràng buộc

về thời gian vào một công cụ phân tích thời gian. Công cụ phân tích này sẽ tách rời

tất cả các kết nối của thiết kế, tính thời gian trễ của các kết nối dựa trên các ràng buộc.

Dựa trên kết quả phân tích của công cụ phân tích, xác định các kết nối không thỏa

mãn về thời gian. Tùy theo nguyên nhân dẫn đến không thỏa mãn mà ta có thể viết

lại mã và tiến hành lại tổng hợp logic hoặc hiệu chỉnh lại các ràng buộc.

3.2.2 Thực thi

Ta có sơ đồ bố trí netlist mô tả tổng thể thiết kế tại mức cổng (chỉ gồm các

cổng logic cổng cơ bản và các mạch logic khác như MUX). Quá trình này sẽ đặt sơ

đồ netlist này lên chip, gọi là quá trình thực thi.

Quá trình gồm các bước:

Ánh xạ: (mapping hay còn gọi là fitting): Chuẩn bị dữ liệu đầu vào, xác định

kích thước các khối. Các khối này sẽ phải phù hợp với cấu trúc của một tế bào cơ bản

của FPGA (gồm nhiều cổng logic) và đặt chúng vào các vị trí tối ưu cho việc chạy

dây. Hình 3.16 cho ta hình dung rõ hơn về quá trình ánh xạ.

Page 63: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 60

Hình 3.16. Sơ đồ gán chân

Đặt khối và định tuyến:

Đặt khối: đặt các khối ánh xạ vào các tế bào (cell) ở vị trí tối ưu cho việc chạy

dây. Quá trình này thể hiện rõ trong hình 3.17.

Page 64: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 61

Hình 3.17. Sơ đồ không gian gán bên trong FPGA

Định tuyến: bước này thực hiện việc nối dây các tế bào, được thể hiện ở hình

3.18.

Hình 3.18. Sơ đồ định tuyến

Page 65: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 62

Để thực hiện việc này, chúng ta cần có các thông tin sau:

Các thông tin vật lý về thư viện tế bào, ví dụ kích thước tế bào, các điểm

để kết nối, định thời, các trở ngại trong khi đi dây.

Một Netlist được tổng hợp sẽ chỉ ra các chi tiết các instance và mối quan hệ

các hết nối bao gồm cả các đường dẫn bị hạn chế trong thiết kế.

Tất cả các yêu cầu của tiến trình cho các lớp kết nối, bao gồm các luật thiết

kế cho các lớp chạy dây, trở kháng và điện dung, tiêu thụ năng lượng, các luật về sự

dẫn điện trong mỗi lớp.

3.2.3 Quá trình nạp và lập trình.

Sau quá trình thực hiện, thiết kế cần được nạp vào FPGA dưới dạng dòng bit

(bit stream).

Quá trình nạp thiết kế vào FPGA thường nạp vào bộ nhớ tạm ví dụ như

SRAM. Thông tin cấu hình được nạp vào bộ nhớ. Dòng bit được truyền lúc này sẽ

mang thông tin định nghĩa các khối logic cũng như kết nối của thiết kế. Tuy nhiên

lưu ý rằng, SRAM sẽ mất dữ liệu khi mất nguồn nên thiết kế sẽ không được lưu lại

đến phiên làm việc kế tiếp.

Lập trình là thuật ngữ để mô tả quá trình nạp chương trình cho các bộ nhớ

không bay hơi, ví dụ như PROM. Như vậy thông tin cấu hình vẫn được lưu trữ lại khi

mất nguồn.

Với các kit do Altera phát triển, hãng còn hỗ trợ thêm công cụ DSP Builder.

Đây là một công cụ đắc lực cho các nhà nghiên cứu, nó hỗ trợ việc thiết kế phần cứng

nhờ các khối sẵn có, hay các chức năng hoàn chỉnh trong IP core, ngoài ra, nó còn hỗ

trợ cả việc biên dịch và nạp trực tiếp lên board nhờ khối SignalCompiler và các

Interface của các dòng board FPGA của Altera. Trong đề tài này, do xử dụng board

Anten của Altera, là dòng ra đời cách đây không lâu, hiện vẫn chưa có hỗ trợ các

Interface trong DSP Builder, do đó, việc nạp các thiết kế lên FPGA sẽ được tiến hành

như sau:

Thiết kế hệ thống trên DSP Builder.

Page 66: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 63

Biên dịch và xuất ra file VHDL

Sử dụng Quartus II 64 bít phiên bản từ 11.0 trở lên, tiến hành:

Bước 1: Tạo Project mới

Bước 2: Thêm thư viện là các file VHDL đã tạo ra ở trên.

Bước 3: Chọn dòng thiết bị là Arria V GT 5AGTFD7K3F40I3N.

Bước 4: Biên dịch tạo ra file *.sof

Bước 5: Nạp file *.sof vào FPGA thông qua Programmer của

Quartus II.

Page 67: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 64

4 CHƯƠNG 4: KẾT QUẢ.

Chương này trình bày các kết quả kiểm tra một số chức năng chính của board

FPGA Arria V GT bằng phần mềm Board Test System đồng thời kiểm tra kết quả

của hệ thống MIMO trên mô phỏng bằng khối. Các dữ liệu ở ngõ ra thường có thời

gian trễ so với dữ liệu vào. Tuy từng khối cụ thể mà thời gian trễ sẽ khác nhau.

4.1 Kết quả kiểm tra board bằng phần mềm Board Test System

Hình 4.1Error! Reference source not found. đến Hình 4.9 cho ta thấy việc

thực hiện được cấu hình và kiểm tra board Arria V GT bằng phần mềm Board Test

System.

Hình 4.1. Cấu hình menu Flash/GPIO trên FPGA 1.

Page 68: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 65

Hình 4.2. Kết quả cấu hình LED, LCD hiện thị, các Switch và nút nhấn.

Hình 4.3. Kết quả kiểm tra đọc, ghi bộ nhớ RAM gắn với Chip FPGA 1.

Page 69: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 66

Hình 4.4. Kết quả kiểm tra đọc, ghi bộ nhớ RAM gắn với Chip FPGA 2.

Hình 4.5. Kết quả thu phát loopback trên cổng kết nối HSMA.

Page 70: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 67

Hình 4.6. Kết quả thu phát loopback trên cổng kết nối HSMB.

Hình 4.7. Kết quả kiểm tra phát trên cổng kết nối FMC.

Page 71: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 68

Hình 4.8. Kết quả kiểm tra phát tại Bull’s Eye.

Hình 4.9. Kết quả kiểm tra thu phát qua SMA.

Page 72: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 69

4.2 Kết quả đo đạt mô hình thiết kế.

4.2.1 Bộ mã hóa kênh và giải mã Viterbi

Tín hiệu qua bộ mã hóa kênh được thể hiện như hình 4.10

Hình 4.10. Tín hiệu qua mã hóa kênh

Kết quả so sánh trước và sau khi điều chế được thể hiện trong hình 4.11. Tín

hiệu ở phần trên là tín hiệu qua bộ mã hóa kênh, tín hiệu ở phần ở là giải điều chế và

bị chậm hơn một symbol. Kết quả phân tích cho thấy tín hiệu được giải mã trùng

khớp với tín hiệu trước khi mã hóa.

Page 73: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 70

Hình 4.11. Tín hiệu qua bộ mã hóa kênh và giải mã

4.2.2 Bộ điều chế giản đồ chòm sao bằng QPSK

Các tín hiệu điều chế QPSK là I và Q được thê hiện trong hình 4.12 và Hình

4.13

Hình 4.12. Tín hiệu phần thực QPSK

Page 74: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 71

Hình 4.13. Tín hiệu phần ảo QPSK

Kết quả so sánh tín hiệu trước khi ánh xạ giản đồ chòm sao và sau khi giải ánh

xạ được thể hiện như hình 4.14.

Hình 4.14. Tín hiệu trước khi mapper và sau khi demapper

4.2.3 Bộ mã hóa và giải mã STBC

4.2.3.1 Tín hiệu sau khi qua mã hóa STBC

Tín hiệu phát trên anten 1 thể hiện trong hình 4.15 và anten 2 thể hiện trong

hình 4.16 với phần trên là phần thực, phần dưới là phần ảo.

Page 75: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 72

Hình 4.15. Tín hiệu anten 1

Hình 4.16. Tín hiệu anten 2

4.2.3.2 Tín hiệu sau khi qua kênh truyền

Tín hiệu sau khi qua kênh truyền của anten1 và anten2 lần lượt được thể hiện

trong hình 4.17 và hình 4.18 với phần thực ở trên và phần ảo ở dưới.

Page 76: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 73

Hình 4.17. Tín hiệu anten 1 sau khi qua kênh truyền

Hình 4.18. Tín hiệu anten 2 sau khi qua kênh truyền

4.2.3.3 Tín hiệu sau khi giải mã STBC

Tín hiệu sau khi giải điều chế STBC đúng với tín hiệu ban đầu và bị châm

hơn. Kết quả được thể hiện trong hình 4.19.

Page 77: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 74

(1)

(2)

Hình 4.19. So sánh tín hiệu sau giải điều chế STBC và tín hiệu gốc

(1): Phần thực

(2): Phần ảo

Page 78: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 75

5 CHƯƠNG 5: KẾT LUẬN.

Đây là chương tổng kết các kết quả của đề tài và đánh giá kết quả đo đạt được,

đồng thời chương này trình bày các hướng nghiên cứu để phát triển đề tài.

5.1 Kết luận

Đề tài đã hoàn thành mục tiêu ban đầu đặt ra là nghiên cứu, thiết kế hệ thống

MIMO băng DSP Builder trên nền Simulink của Matlab và hơn hết là nạp thành công

một thiết kế lên Board Arria V GT. Việc thiết kế bằng DSP Builder cho phép đề tài

tận dụng các khối chức năng của DSP Builder. Ngoài ra, DSP Builder không những

cho phép xây dựng các khối từ ngôn ngữ lập trình Verilog hoặc VHDL mà còn cho

phép sử dụng các MegaCore của Altera. Điều này giúp tiết kiệm thời gian thực hiện

lại các khối cơ bản.

Hệ thống MIMO của đề tài bao gồm các khối chức năng: khối mã hóa chập –

giải mã bằng thuật toán Viterbi, khối ánh xạ chòm sao bằng phương pháp QPSK, khối

điều chế và giải điều chế MIMO-STBC, khối tạo kênh truyền H.

Hệ thống MIMO-STBC hoàn chỉnh được thực hiện đúng với lý thuyết. Đề tài

có nhiều đóng góp trong việc chuyển các cơ sở lý thuyết thành các thiết kế trên phần

cứng cho một hệ thống OFDM hoàn chỉnh trên phần cứng. Khi thiết kết trên phần

cứng, ngoài yêu cầu về thuật toán mà còn yêu cầu về kiểm soát và quản lý dữ liệu

giữa các tầng có độ phức tạp cao. Việc thiết kế trên phần cứng nhằm mở ra khả năng

nghiên cứu các hệ thống truyền dẫn số tiên tiến trên phần cứng. Các nghiên cứu về

lĩnh vực thiết kế các hệ thống truyền dẫn số trên phần cứng sẽ góp phần vào sự phát

triển lĩnh vực thiết kế SoC hoặc SoPC còn mới mẻ tại Việt Nam. Đây cũng là cơ sở

để hướng đến thiết kế vi mạch tích hợp cho viễn thông. Tuy nhiên, do phần cứng này

khá mới, chưa có nhiều nghiên cứu và chưa có sự hỗ trợ của hãng Altera nên quá

trình nghiên cứu còn nhiều khó khăn, như cấu trúc board khá phức tạp, phần mềm

DSP Builder chua hỗ trợ Interface cho thiết bị, quá trình nạp board phải đi trung gian,

nhiều giai đoạn.

Page 79: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 76

5.2 Hướng phát triển

Đề tài là cơ sở thực hiện nghiên cứu và cải tiến hệ thống MIMO-OFDM hoàn

chỉnh theo các chuẩn như 801.11g, 802.11n, 802.16. Ngoài ra, đề tài còn mở ra khả

năng nghiên cứu và phát triển các hệ thống truyền thông tiên tiến ở dải gốc.

Về phần cứng, hiện tại hãng Altera hợp tác cùng TI phát triển một bộ kit hoàn

chỉnh để thu phát sóng vô tuyến (RF). Điều này mở ra một hướng nghiên cứu các kỹ

thuật vô tuyến thực tế.

Về thuật toán: Các thuật toán phức tạp sẽ gặp nhiều khó khăn khi thiết kế trên

phần cứng. Tuy nhiên, các lĩnh vực cần tiếp tục nghiên cứu để hoàn chỉnh hệ thống

như: phương pháp giảm tỉ số đỉnh trên trung bình (PAR), thử nghiệm các phương

pháp mã hoá sửa sai khác như: Reed Solomon, mã hoá Turbo, kết hợp với bộ đan xen

(Interleaving) các kỹ thuật ước lượng kênh truyền hai chiều, và các phương pháp điều

chế mã hoá thích nghi.

Page 80: THỰC HIỆN HỆ THỐNG MIMO STBC TRÊN BOARD FPGA …i.vietnamdoc.net/data/file/2015/Thang04/25/thuc-hien-he-thong-mimo... · Dạng sóng của các tín hiệu điều khiển

Trang 77

TÀI LIỆU THAM KHẢO

Tiếng Việt:

[1] Đặng Lê Khoa, Nguyễn Trường An, Bùi Hữu Phú, Nguyễn Hữu Phương (2008),

Thực hiện hệ thống OFDM trên phần cứng, Hội Nghị Khoa Học Trường Đại Học

Khoa Học Tự Nhiên lần 6.

Tiếng Anh:

[1] Siavash M. Alamouti (1998), A Simple Transmit Diversity Technique for

Wireless Communication, IEEE Journal on Select Areas in Communication, Volume

16 Issue 8.

[2] Nazia Parveen, D.S.Venkateswarlu (2012), Implementation of Space-Time Block

Coding Using 2 Transmit and 2 Receive Antennas, International Journal of Emerging

Technology and Advanced Engineering, Volume 2 Issue 10.

[3] Altera Corporation (2013), DSP Builder Handbook, URL:

http://www.altera.com/products/software/products/dsp/dsp-builder.html

[4] Altera Corporation (2012), Arria V GT FPGA Development Board, URL:

http://www.altera.com/products/devkits/altera/kit-arria-v-gt.html

[5] Altera Corporation (2013), Arria V GT FPGA Development Board, URL:

http://www.altera.com/products/devkits/altera/kit-arria-v-gt.html

[6] Altera Corporation (2007), Viterbi Compiler User Guide, URL:

http://www.altera.com/technology/dsp/dsp-index.jsp