Tổng quan nghiên cứu

Mạng 5G đặt ra hai yêu cầu khắt khe chưa từng có: độ trễ truyền dẫn dưới 1ms và độ tin cậy đạt 99.999%. Để đáp ứng các tiêu chuẩn này, Polar Code — loại mã kênh được Arıkan giới thiệu năm 2008 — đã được chuẩn hóa trong 5G NR, thay thế Turbo Code truyền thống vốn không thể đáp ứng yêu cầu về độ trễ thấp. Tuy nhiên, thách thức lớn nhất không nằm ở lý thuyết mã hóa, mà ở bài toán triển khai phần cứng giải mã hiệu năng cao trên nền tảng thực tế.

Luận văn thạc sĩ của Nguyễn Đức Nam, thực hiện tại Đại học Bách Khoa TP.HCM (VNU-HCM) từ tháng 9 đến tháng 12 năm 2023, tập trung giải quyết đúng vấn đề cốt lõi này: thiết kế và tối ưu hóa bộ giải mã Polar Code SC (Successive Cancellation) trên FPGA, sử dụng ngôn ngữ Verilog. Mục tiêu cụ thể gồm bốn hướng chính: tăng thông lượng (throughput) so với kiến trúc Semi-parallel SC Decoder tham chiếu; giảm chu kỳ độ trễ bằng cách giải mã song song; cải thiện tần số xung nhịp tối đa (fmax); và đánh giá toàn diện hiệu năng triển khai trên FPGA Stratix IV.

Kết quả đạt được vượt kỳ vọng ban đầu: bộ giải mã mới đạt thông lượng 132 Mbps — tăng hơn 50% so với kiến trúc tham chiếu — với fmax đạt 203 MHz, và chỉ cần 1.572 chu kỳ xung nhịp để giải mã một từ mã 1024-bit, giảm 512 chu kỳ so với kiến trúc cũ 2.084 chu kỳ.


Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết áp dụng

Lý thuyết phân cực kênh (Channel Polarization): Polar Code dựa trên nguyên lý phân cực kênh — khi tổ hợp N kênh nhị phân đầu vào rời rạc không có bộ nhớ (B-DMC), hệ thống phân tách thành hai nhóm: kênh tốt (dung lượng tiến tới 1) và kênh nhiễu (dung lượng tiến tới 0). Khi chiều dài mã N tiến tới vô cực, tỷ lệ kênh tốt hội tụ về dung lượng kênh gốc, đây là điểm khác biệt cơ bản so với mã Turbo và LDPC. Ma trận sinh của Polar Code có dạng tích Kronecker lũy thừa thứ n của ma trận F = [[1,0],[1,1]], cho phép mã hóa và giải mã đệ quy hiệu quả.

Lý thuyết giải mã Successive Cancellation (SC): Bộ giải mã SC ước tính tuần tự các bit u₀ đến u_{N-1} dựa trên tỷ số likelihood logarithm (LLR). Tính toán LLR được thực hiện đệ quy qua đồ thị nhân tử (factor graph) dạng biến đổi Fourier nhanh, với hai hàm cốt lõi f và g. Để giảm độ phức tạp phần cứng, hàm f được xấp xỉ bằng phương trình min-sum (MS): λ_f(λ_a, λ_b) ≈ sign(λ_a)·sign(λ_b)·min(|λ_a|, |λ_b|), cho phép triển khai bằng cổng XOR và bộ so sánh chọn lọc (CS operator) thay vì hàm hyperbolic phức tạp.

Năm khái niệm kỹ thuật cốt lõi bao gồm: (1) Semi-parallel SC Decoder — kiến trúc tham chiếu với P phần tử xử lý (PE) chia sẻ bộ nhớ; (2) Processing Element (PE) — đơn vị tính toán LLR theo dạng sign-and-magnitude; (3) Log-Likelihood Ratio Memory — bộ nhớ trung gian lưu kết quả giải mã tạm thời; (4) Partial Sum Register — thanh ghi lưu tổng một phần phục vụ hàm g; (5) Frozen Channel ROM — ROM lưu chỉ số các bit đóng băng, cho phép tái lập trình linh hoạt.

Phương pháp nghiên cứu

Nghiên cứu áp dụng quy trình thiết kế phần cứng số theo bốn giai đoạn liên tiếp với tổng thời gian 3,5 tháng (4/9/2023 – 18/12/2023).

Giai đoạn 1 — Mô phỏng thuật toán trên MATLAB: Triển khai hệ thống Polar Code (1024, 512) — mã hóa và giải mã SC — qua kênh BPSK-AWGN. Hệ thống sinh ngẫu nhiên 100.000 khối dữ liệu, mỗi khối gồm 512 bit thông tin đầu vào và 1.024 bit từ mã đầu ra, phục vụ làm dữ liệu kiểm tra (test bench) cho các bước tiếp theo. Phương pháp này đảm bảo tính đúng đắn của thuật toán trước khi hiện thực hóa phần cứng.

Giai đoạn 2 — Thiết kế RTL bằng Verilog: Triển khai kiến trúc Enhanced Semi-parallel SC Decoder với P = 64 phần tử xử lý, bao gồm: PE tiêu chuẩn được tối ưu hóa đường truyền tới hạn, PE0 đặc biệt cho giải mã song song 2 bit ở tầng 0, bộ điều khiển (controller) tạo tín hiệu địa chỉ và chọn hàm.

Giai đoạn 3 — Xác minh mô phỏng trên ModelSim: Nạp 100.000 bộ dữ liệu kiểm tra từ MATLAB vào bộ nhớ thiết kế. ModelSim xác minh kết quả giải mã khớp hoàn toàn với MATLAB, với độ trễ đo được là 1.572 chu kỳ xung nhịp.

Giai đoạn 4 — Tổng hợp và đánh giá trên FPGA Stratix IV: Sử dụng Quartus Prime 22.0 để tổng hợp thiết kế, đo lường tài nguyên sử dụng, fmax, độ trễ, và thông lượng. Thiết bị kiểm tra phần cứng thực tế là board FPGA DE10, với Signal Tap Logic Analyzer để đọc kết quả đầu ra.


Kết quả nghiên cứu và thảo luận

Những phát hiện chính

Phát hiện 1 — Tăng thông lượng hơn 50% so với kiến trúc tham chiếu: Bộ giải mã mới đạt 132 Mbps, trong khi kiến trúc Semi-parallel SC Decoder của Leroux et al. [5] chỉ đạt khoảng 85 Mbps. Mức tăng này đến từ hai cải tiến kết hợp: giảm 512 chu kỳ độ trễ (từ 2.084 xuống 1.572 chu kỳ cho N=1024) và nâng fmax từ 173 MHz lên 203 MHz. Kết quả này được xác nhận nhất quán qua cả môi trường ModelSim và phần cứng FPGA thực tế.

Phát hiện 2 — Giải mã song song 2 bit ở tầng 0 giảm đáng kể chu kỳ độ trễ: Kỹ thuật mới cho phép tính toán đồng thời node f và node g ở tầng cuối (s=0) bằng cách tính đầu ra g theo cả hai giá trị có thể của u_s, sau đó chọn kết quả đúng sau khi f được tính xong — với độ trễ tổ hợp bổ sung không đáng kể. Điều này giúp tiết kiệm N/2 = 512 chu kỳ cho mã N=1024, đúng theo dự báo lý thuyết. Chỉ một trong P phần tử xử lý cần được nâng cấp thành PE0 (thêm 8 bộ MUX 2 đầu vào), giữ tác động diện tích ở mức tối thiểu.

Phát hiện 3 — Tối ưu đường truyền tới hạn trong PE cải thiện fmax lên 203 MHz: Kiến trúc PE gốc của [5] tính |L_g| qua chuỗi: bộ so sánh magnitude → chuyển đổi two's complement → bộ cộng, tạo ra đường truyền dài. Kiến trúc mới tính song song ba giá trị có thể (|L_a|−|L_b|, |L_b|−|L_a|, |L_a|+|L_b|), sau đó chọn kết quả theo u_s, sign(L_a), sign(L_b). Mặc dù diện tích PE tăng, nhưng PEs chỉ chiếm 5,5% tổng ALUTs (với P=64), nên tác động tổng thể nhỏ trong khi fmax cải thiện đáng kể.

Phát hiện 4 — Hiệu quả tài nguyên với chiến lược lưu trữ LLR bằng thanh ghi: Không như [5] dùng RAM cho LLR Memory, thiết kế này dùng thanh ghi để đạt tần số cao hơn. Tổng cộng, LLR Memory tiêu tốn 50.568 ALUTs và 10.235 thanh ghi. Các module còn lại chỉ dùng 5.060 ALUTs và 1.046 thanh ghi — tiết kiệm 645 thanh ghi so với [5], đổi lấy 930 ALUTs bổ sung.

Thảo luận kết quả

Kết quả có thể được trực quan hóa hiệu quả qua biểu đồ so sánh cột (bar chart) với hai trục: trục X là các kiến trúc (Ours vs. Leroux [5] vs. Ideguchi [13]), trục Y gồm các chỉ số fmax (MHz), thông lượng (Mbps), và chu kỳ độ trễ. Bảng so sánh trong luận văn cho thấy thiết kế đề xuất đạt fmax 203 MHz và 132 Mbps thông lượng với 1.572 chu kỳ, vượt trội so với kiến trúc [5] nhưng vẫn còn khoảng cách so với [13] ở chỉ số thông lượng tuyệt đối (318 Mbps) — lý do chính là [13] dùng kiến trúc hoàn toàn khác với P lớn hơn và chiến lược xử lý song song rộng hơn, kéo theo số ALUTs gần như bằng không (8.558 so với 55.628 của thiết kế này).

Mức tăng thông lượng 50% mà không tăng đáng kể tài nguyên phần cứng chứng minh rằng chiến lược tối ưu kiến trúc tại điểm tắc nghẽn (critical path và N/2 latency reduction) hiệu quả hơn việc đơn thuần tăng số lượng PE. Đây là hướng tiếp cận phù hợp với ràng buộc tài nguyên thực tế trên các nền tảng FPGA thương mại.


Đề xuất và khuyến nghị

1. Tối ưu hóa logic cập nhật tổng một phần (Partial Sum Update Logic): Nhóm nghiên cứu xác định đây là yếu tố tới hạn (critical path) chính còn lại sau khi cải tiến PE. Cần tinh gọn mạch tổ hợp trong module cập nhật partial sum và giảm số lớp logic để nâng fmax từ 203 MHz lên mục tiêu hơn 250 MHz trong phiên bản tiếp theo. Nhóm phát triển kỹ thuật tại các đơn vị thiết kế IC có thể thực hiện trong vòng 3–6 tháng.

2. Mở rộng sang CRC-Aided List SC (CA-SCL) Decoder: Tiêu chuẩn 5G thực tế dùng CA-SCL với danh sách L đường giải mã song song kết hợp CRC để đạt BER thấp hơn đáng kể so với SC thuần túy. Kiến trúc SC đã tối ưu trong luận văn là nền tảng trực tiếp để mở rộng sang L-parallel SC decoders. Mục tiêu là đạt throughput hơn 500 Mbps cho CA-SCL với L=8, phù hợp hoàn toàn với yêu cầu eMBB của 5G. Đây là hướng nghiên cứu sau đại học (PhD) hoặc dự án R&D cấp doanh nghiệp.

3. Đánh giá triển khai trên ASIC để tối ưu năng lượng: Các chỉ số FPGA không phản ánh đầy đủ hiệu năng khi chuyển sang ASIC (tích hợp mạch chuyên dụng). Cần tổng hợp thiết kế trên công nghệ TSMC 28nm hoặc 7nm để đo power consumption và PPA (Power-Performance-Area), hướng đến ứng dụng trong chipset modem 5G thương mại. Nhóm nghiên cứu tại các công ty bán dẫn hoặc viện nghiên cứu có thể triển khai trong 12–18 tháng.

4. Tích hợp cơ chế thích nghi frozen bit động: Thay thế Frozen Channel ROM bằng RAM có khả năng ghi lại, cho phép bộ giải mã tự thích nghi chỉ số frozen bits theo điều kiện kênh thực tế (SNR thay đổi trong môi trường di động). Điều này tăng tính linh hoạt vận hành mà không thay đổi kiến trúc phần cứng cốt lõi, phù hợp với yêu cầu adaptive coding trong 5G Advanced và 6G.


Đối tượng nên tham khảo luận văn

1. Kỹ sư thiết kế phần cứng số và FPGA: Luận văn cung cấp quy trình triển khai hoàn chỉnh từ thuật toán đến RTL Verilog, bao gồm kiến trúc PE tối ưu, chiến lược quản lý LLR Memory bằng thanh ghi, và phương pháp sinh test bench từ MATLAB. Đây là tài liệu kỹ thuật thực hành có thể tái sử dụng trực tiếp cho các dự án thiết kế modem 5G trên FPGA hoặc ASIC.

2. Nghiên cứu sinh và học viên cao học ngành Kỹ thuật Điện tử-Viễn thông: Luận văn trình bày rõ ràng nền tảng lý thuyết Polar Code từ mức cơ bản đến nâng cao, bao gồm chứng minh toán học các công thức LLR, scheduling diagram, và phân tích trade-off giữa số lượng PE, độ trễ, và thông lượng. Đây là nguồn tham khảo học thuật chất lượng cho các đề tài liên quan đến channel coding và hardware acceleration.

3. Nhà nghiên cứu chuyên về mã sửa lỗi và truyền thông không dây: Kết quả so sánh định lượng giữa các kiến trúc (Leroux [5], Ideguchi [13], và thiết kế mới) cung cấp benchmark có giá trị. Phân tích chi tiết về tác động của kích thước lượng tử hóa (5-bit) đến tỷ lệ lỗi frame (FER) trong điều kiện kênh AWGN cũng là thông tin hữu ích để hiệu chỉnh các thiết kế tương lai.

4. Đội ngũ phát triển sản phẩm 5G tại doanh nghiệp công nghệ: Kiến trúc đề xuất đã được kiểm chứng trên phần cứng thực (FPGA DE10, Stratix IV) và đáp ứng tiêu chuẩn 3GPP 5G NR về giải mã Polar Code. Với thông lượng 132 Mbps và fmax 203 MHz, thiết kế này là điểm khởi đầu khả thi cho các đội R&D muốn xây dựng prototype modem 5G tốc độ cao với tài nguyên phần cứng có kiểm soát.


Câu hỏi thường gặp

1. Polar Code khác gì so với Turbo Code và LDPC Code trong 5G? Polar Code là mã kênh đầu tiên được chứng minh lý thuyết đạt dung lượng Shannon với giải mã SC có độ phức tạp O(NlogN). 5G sử dụng Polar Code cho kênh điều khiển (control channel) và LDPC cho kênh dữ liệu (data channel), do Polar Code ưu việt hơn ở khối mã ngắn và độ trễ thấp. Turbo Code đã bị loại bỏ vì không đáp ứng yêu cầu độ trễ 1ms của 5G.

2. Tại sao chọn FPGA thay vì chỉ mô phỏng phần mềm để đánh giá thiết kế? FPGA cho phép đo lường hiệu năng thực tế (fmax, latency, resource utilization) trong điều kiện phần cứng thật, điều mà mô phỏng phần mềm không thể phản ánh chính xác. Kết quả tổng hợp trên Stratix IV với Quartus Prime cung cấp số liệu đáng tin cậy để so sánh với các công trình khác trong cùng điều kiện chuẩn, đồng thời là bước trung gian trước khi tiến tới sản xuất ASIC.

3. Kỹ thuật giải mã 2 bit song song hoạt động như thế nào trong thực tế? Ở tầng cuối (stage 0), hai bit kế tiếp u_i và u_{i+1} được suy ra từ các node f và g chia sẻ cùng đầu vào LLR. Kiến trúc mới tính đồng thời cả hai kết quả có thể của node g (ứng với u_s=0 và u_s=1) trong khi đang tính node f. Khi f hoàn tất, kết quả g đúng được chọn tức thì bằng một MUX, tiết kiệm toàn bộ một chu kỳ xung nhịp cho mỗi cặp bit — tổng cộng N/2 = 512 chu kỳ cho N=1024.

4. Tại sao dùng thanh ghi thay RAM để lưu LLR Memory, và đánh đổi là gì? Thanh ghi cho phép đọc/ghi trong cùng một chu kỳ xung nhịp mà không cần logic địa chỉ phức tạp, giúp tối ưu fmax. Tuy nhiên, thanh ghi tiêu tốn diện tích lớn hơn RAM theo bit: trong thiết kế N=1024, P=64, LLR Memory chiếm 50.568 ALUTs và 10.235 thanh ghi — đây là lý do tổng ALUTs (55.628) cao hơn nhiều so với kiến trúc dùng RAM. Đây là sự đánh đổi có chủ đích để đạt fmax 203 MHz.

5. Kết quả BER/FER của thiết kế có đạt chuẩn 3GPP 5G không? Luận văn kiểm tra FER trên 100.000 khối với mã Polar (1024, 512) theo chuẩn giải mã offset min-sum của 3GPP 5G, trong điều kiện BPSK-AWGN ở nhiều mức SNR. Kết quả cho thấy bộ giải mã hoạt động đúng và nhất quán với MATLAB reference model. Tuy nhiên, việc dùng 5-bit lượng tử hóa gây tràn số ở hàm F và G trong một số trường hợp; tăng số bit lượng tử hóa sẽ cải thiện FER mà không ảnh hưởng đến kiến trúc.


Kết luận

Luận văn thạc sĩ này đóng góp kết quả cụ thể và có giá trị thực tiễn cao trong lĩnh vực thiết kế phần cứng giải mã Polar Code cho 5G:

  • Tăng 50%+ thông lượng (từ ~85 Mbps lên 132 Mbps) so với kiến trúc Semi-parallel SC tham chiếu, được xác minh trên FPGA Stratix IV thực tế.
  • Giảm 512 chu kỳ độ trễ (từ 2.084 xuống 1.572 chu kỳ cho N=1024) nhờ kỹ thuật giải mã 2 bit song song tại tầng cuối.
  • Cải thiện fmax lên 203 MHz (từ 173 MHz) qua tối ưu đường tới hạn trong kiến trúc PE, với tác động diện tích tối thiểu (5,5% tổng ALUTs).
  • Quy trình thiết kế hoàn chỉnh từ MATLAB → Verilog RTL → ModelSim → FPGA DE10, có thể tái sử dụng cho các dự án tương tự.
  • Hướng phát triển tiếp theo bao gồm tối ưu partial sum logic, mở rộng sang CA-SCL Decoder cho 5G thực tế, và đánh giá trên ASIC 28nm.

Các kỹ sư và nghiên cứu sinh quan tâm đến thiết kế phần cứng mã kênh thế hệ tiếp theo nên tham khảo luận văn này như một tài liệu kỹ thuật có số liệu benchmark đáng tin cậy, cấu trúc trình bày rõ ràng, và kết quả kiểm chứng thực nghiệm đầy đủ.