THIẾT kế MẠCH mã hóa và GIẢI mã CHẬP TRONG FPGA ............... THIẾT kế MẠCH mã hóa và GIẢI mã CHẬP TRONG FPGA ............... THIẾT kế MẠCH mã hóa và GIẢI mã CHẬP TRONG FPGA ............... THIẾT kế MẠCH mã hóa và GIẢI mã CHẬP TRONG FPGA ...............
THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA MỤC LỤC DANH MỤC CÁC HÌNH VẼ HÌNH 1-1: BỘ MÃ HĨA CHO MÃ CHẬP HÌNH 1-2: CẤU TRÚC FPGA HÌNH 1-3: CẤU TRÚC SLIDE DANH MỤC CÁC TỪ VIẾT TẮT ĐỒ ÁN Trang / 14 CHƯƠNG 1: BỘ MÃ HÓA, BỘ GIẢI MÃ, MÃ CHẬP VÀ FPGA BỘ MÃ HÓA 1.1 Định nghĩa Bộ mã hóa thuật tốn người mà chuyển đổi thông tin từ định dạng loại mã cho thiết bị khác với tiêu chuẩn hóa, tốc độ, nén… 1.2 Ví dụ Mộ • t máy nén mã hóa liệu 8b / 10b mã hóa sử dụng cho tốc độ nhanh hệ thống thơng tin liên lạc Cả • m biến Một mã hóa tuyến tính tương tự chuyển đổi vị trí tuyến tính với tín hiệu điện tử Mộ • t thiết bị dùng để thay đổi tín hiệu liệu vào mã số THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang / 14 BỘ GIẢI MÃ 2.1 Định Nghĩa Là thiết bị có khả chuyển đổi tín hiệu âm video vào dạng khác 2.2 Ví dụ • • • • Giải mã Âm chuyển đổi âm analog sang dạng kỹ thuật số Bộ giải mã nhị phân Giải nén chuyển đổi liệu nén sang không nén Video encoder , chuyển đổi video base-band analog sang dạng số MÃ CHẬP 3.1 Định Nghĩa Mã chập (tiếng Anh: convolutional code) loại mã sửa lỗi symbol m bit (chuỗi m bit) mã hóa thành symbol n bit, với m/n tỉ lệ mã hóa (code rate) (n ≥ m) hàm truyền đạt hàm k symbol thông tin, với k constraint length Mã chập kỹ thuật mã hóa sửa sai Mã chập thuộc họ mã lưới (mã hóa theo Trellis) xây dựng dựa đa thức sinh sơ đồ chuyển trạng thái (trellis mã) đặc trưng Quá trình giải mã mã chập phải dựa vào trellis mã thông qua giải thuật khác nhau, tiếng giải thuật Viterbi 3.2 Ứng dụng Mã xoắn dùng để nâng cao chất lượng hệ thống vô tuyến số, điện thoại di động, thông tin vệ tinh Bluetooth Mã hóa chập thuật tốn giải mã Viterbi sử dụng khoảng tỉ điện thoại, lớn loại thuật tốn ứng dụng Ngày nay, chúng sử dụng thiết bị bluetooth THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang / 14 3.3 Biễu diễn mã chập Có ba phương pháp để biểu diễn mã chập là: sơ đồ lưới, sơ đồ trạng thái, sơ đồ hình Mã chập mã tuyến tính có ma trận sinh có cấu trúc cho phép mã hóa xem phép lọc (hoặc lấy tổng chập) Mã chập sử dụng rộng rãi thực tế Bởi mã hóa xem tập hợp lọc số tuyến tính với dãy mã đầu lọc ghép xen kẽ Các mã chập mã xây dựng thuật toán giải mã định mềm hiệu Mã khối từ khối k dấu (hay ký hiệu) tạo khối n dấu Với mã chập (thường xem mã dòng), mã hóa hoạt động dòng liên tục bit vào khơng phân thành khối tin rời rạc Tuy nhiên tốc độ mã hiểu có k ngõ vào bước thời gian tạo n ngõ Các phép tính số học sử dụng hình thức mã hóa thực trường tùy ý thông thường GF(2) Ta biểu thị dãy hàm truyền đạt chuỗi lũy thừa biến x (đơi dùng ký hiệu D thay cho x) Dãy {…,m-2, m-1, m0, m1, m2, …} (với phần tử mi thuộc trường F) xem chuỗi Laurent: Tập tất chuỗi Laurent F trường, ta ký hiệu trường Như Đối với dòng nhiều bit vào ta dùng ký hiệu m(1)(x) biểu thị dòng đầu vào đầu tiên, m(2)(x) biểu thị dòng đầu vào thứ hai Tập dòng vào xem vectơ: Bộ mã hóa cho mã chập thường coi tập lọc số THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang / 14 Hình 1-1: Bộ mã hóa cho mã chập (các D biểu thị nhớ bít – trigger D) Dòng vào mk qua hai lọc dùng chung phần tử nhớ tạo hai dòng Hai dòng đưa xen kẽ để tạo dòng mã hóa Ck Như bít vào lại có hai bít mã hóa đưa ra, kết ta có mã có tốc độ R = 1/2 Thông thường ta coi trạng thái ban đầu phần tử nhớ Như vậy, với dòng vào m = {1, 1, 0, 0, 1, 0, 1} đầu là: C(1)= {1, 0, 0, 1, 1, 1, 0, 1, 1} C(2)= {1, 1, 1, 1, 1, 0, 0, 0, 1} Dòng ra: C = {11, 01, 01, 11, 11, 10, 00, 10, 11} Ở dấu phẩy phân cách cặp bít ứng với bít vào Ta biểu thị hàm truyền từ đầu vào m(x) từ đầu C(1)(x) sau: Tương tự ta có Dòng vào m = {1, 1, 0, 0, 1, 0, 1} biểu thị sau: Các đầu là: THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang / 14 Với mã chập tốc độ có hàm truyền ma trận k × n (x) (còn gọi ma trận truyền) Với mã tốc độ ví dụ ta có: 3.4 Ưu nhược điểm mã chập Ưu điểm Mã chập cho phép sửa lại liệu bị sai lệch truyền qua kênh truyền để khôi phục xác tín hiệu gốc Việc thực mã hóa dùng mã chập tương đối đơn giản loại mã sửa sai khác mà chất lượng mã hóa lại tốt Việc thực mã hóa dùng mã chập thực phần cứng phần mềm Nhược điểm Việc mã hóa giải mã liên quan đến mã chập giải lỗi bit Kênh truyền phải kênh truyền nhiễu, kênh truyền nhiễu q lớn, mã hóa chập khơng tốt Khi ta phải cần tới trải phổ tín hiệu để đưa tín hiệu xuống mức nhiễu để giảm thiểu ảnh hưởng FPGA 4.1 Định nghĩa Field-programmable gate array (FPGA) loại mạch tích hợp cỡ lớn dùng cấu trúc mảng phần tử logic mà người dùng lập trình Vi mạch FPGA cấu thành từ phận: • Các khối logic (logic block) • Hệ thống mạch liên kết lập trình THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang 10 / 14 • Khối vào/ra (IO Pads) • Phần tử thiết kế sẵn khác DSP slice, RAM, ROM, nhân vi xử lý 4.2 Ứng dụng Ứng dụng FPGA bao gồm: xử lý tín hiệu số DSP, hệ thống hàng không, vũ trụ, quốc phòng, tiền thiết kế mẫu ASIC (ASIC prototyping), 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, máy đánh cờ Do tính linh động cao trình thiết kế cho phép FPGA giải lớp toán phức tạp mà trước thực nhờ phần mềm máy tính, ngồi nhờ mật độ cổng logic lớn FPGA ứng dụng cho tốn đòi hỏi khối lượng tính toán lớn dùng hệ thống làm việc theo thời gian thực THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang 11 / 14 4.3 Cấu trúc Hình 1-2: Cấu trúc FPGA Phần tử FPGA khối logic (logic block) Khối logic cấu thành từ LUT phần tử nhớ đồng flip-flop, LUT (Look up table) khối logic thực hàm logic từ đầu vào, kết hàm tùy vào mục đích mà gửi ngồi khối logic trực tiếp hay thông qua phần tử nhớ flip-flop THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang 12 / 14 Hình 1-3: Cấu trúc slide Slice tạo thành từ gồm khối logic, số lượng Slices thay đổi từ vài nghìn đến vài chục nghìn tùy theo loại FPGA slices tạo thành Configurable Logic Blocks (CLBs) CLBs phần tử cấu thành FPGA, nguồn tài nguyên logic tạo nên mạch logic đồng lẫn khơng đồng 4.4 Thuật tốn Viterbi Thuật tốn Viterbi giải pháp sử dụng để giải mã chuỗi bit mã hóa mã hóa tích chập Thuật tốn Viterbi khởi xướng Andrew Viterbi năm 1967, thuật toán giải mã cho mã chập qua tuyến thơng tin số có nhiễu Thuật toán giải mã Viterbi hai loại thuật toán giải mã sử dụng với mã hóa mã chập- loại khác giải mã THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang 13 / 14 CHƯƠNG 2: MƠ PHỎNG SƠ ĐỒ KHỐI Hình 1: Sơ đồ khối mã hóa giải mã chập GIẢI THUẬT Hình 2: Lưu đồ giải thuật THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang 14 / 14 Kết mô Bit đầu vào Chọn định Mã hóa bit Giải mã bit Chạy CT Reset lại Nhập bit vào Vẽ Ber THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang 15 / 14 CHƯƠNG 3: NHẬN XÉT VÀ KẾT LUẬN NHẬN XÉT Cùng số lượng bit vào giải mã định cứng giải mã với số bit sai nhiều so với giải mã định mềm Giải mã định mềm sử dụng lượng tử hóa nhiều bit => tạo độ tin cậy giải mã cao so với giải mã định mềm sử dụng lượng tử bit Tỷ số tín hiệu/nhiễu SNR cao => nghĩa kênh truyền nhiễu => giải mã định cứng mềm cho kết giải mã gần KẾT LUẬN Trong trình thực thiết kế mạch em ứng dụng nội dung học cộng thêm tư liệu tham khảo sau trình tìm tòi với mục đích hồn thành nhiệm vụ giao Hy vọng thong qua đề tài này, thầy bạn có thêm tài liệu để nghiên cứu THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang 16 / 14 TÀI LIỆU THAM KHẢO THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang 17 / 14 PHỤ LỤC THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ... cứu THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang 16 / 14 TÀI LIỆU THAM KHẢO THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang 17 / 14 PHỤ LỤC THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI... Sơ đồ khối mã hóa giải mã chập GIẢI THUẬT Hình 2: Lưu đồ giải thuật THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang 14 / 14 Kết mô Bit đầu vào Chọn định Mã hóa bit Giải mã bit Chạy... thơng tin số có nhiễu Thuật toán giải mã Viterbi hai loại thuật tốn giải mã sử dụng với mã hóa mã chập- loại khác giải mã THIẾT KẾ MẠCH MÃ HÓA VÀ GIẢI MÃ CHẬP TRONG FPGA ĐỒ ÁN Trang 13 / 14 CHƯƠNG