Khóa luận tốt nghiệp Điện tử viễn thông: Thực hiện hệ thống MIMO STBC trên Board FPGA Arria V được thực hiện nhằm 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.
Trang 1ĐẠ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
Trang 2ĐẠ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
Trang 3LỜ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
Trang 4MỤ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
Trang 52.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
Trang 63.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
Trang 7DANH MỤC KÝ HIỆU, CHỮ VIẾT TẮT
FIFO :First In First Out FPGA : Field Programmable Gate Array
IP core : Intellectual Property Core MIMO : Multi Input Multi Output MISO : Multi Input Single Output OFDM Orthogonal Frequency-Division Multiplexing PLL : Phase Locked Loop
QAM : Quadrature Amplitude Modulation QPSK : Quadrature Phase-Shift Keying VHDL : Very High Speed Integrated Circuits Hardware
Description Language STBC :Space-Time Block Code
Trang 8DANH 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
Trang 9Hì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
Trang 10Hì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
Trang 11DANH MỤC CÁC BẢNG BIỂU
Bảng 2-1 Các đặc tính của Arria V GT 39Bảng 3-1 Ý nghĩa các đường tín hiệu của bộ giải mã Viterbi 52Bảng 3-2 Dữ liệu bảng tra của QPSK 53
Trang 12LỜ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à 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
Trang 13MIMO-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
Trang 141 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
Trang 15Nă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
Trang 16kỹ 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:
2
log (1 SNR) bit/ s/ Hz
Trang 17Hệ 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:
Trang 18Hệ 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:
Trang 19giá 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
Trang 20truyề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.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
Trang 21Cò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
Trang 222 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
Trang 232.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ỏ
Trang 24h
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
Trang 25Đố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
Trang 26Tù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
Trang 27Tậ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
Trang 28và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 Alamoutigiớ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
Trang 29x1,x2 là symbols truyền đi
n1,n2 là nhiễu tại khe thời gian thứ nhất và thứ hai
∗ = ℎ ℎ
ℎ∗ −ℎ∗ + ∗ = + ∗ ( 2.4)
Trang 30Tổ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) ∗( ) ( 2.7)
Trang 31Tại đầu thu, anten thu thứ i ,
2.1.5 MIMO – STBC 2x2
Xét hệ thống MIMO STBC 2 x 2:
Trang 33Trong đó: 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:
Trang 34DSP 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
Trang 35Hì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
Trang 36Trong 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:
Trang 37Hì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
Trang 38Cho 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)…
Trang 39Thư 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
Trang 40SDRAM 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
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+