Bối cảnh và vấn đề nghiên cứu

Trong các hệ thống nhúng và hệ thống trên chip (System-on-Chip - SoC), nhu cầu truyền nhận dữ liệu tốc độ cao giữa phần cứng và mạng máy tính ngày càng trở nên phổ biến. Việc xử lý các giao thức mạng truyền thống thông qua bộ xử lý trung tâm (CPU) thường tiêu tốn tài nguyên tính toán và gây trễ lớn đối với các ứng dụng thời gian thực. Do đó, việc hiện thực hóa các lõi IP (Intellectual Property) Ethernet xử lý trực tiếp trên phần cứng FPGA giúp giảm tải cho CPU, tối ưu hóa hiệu năng truyền thông và đảm bảo tính linh hoạt trong thiết kế vi mạch. Tuy nhiên, việc tích hợp lõi IP Ethernet có kích thước nhỏ gọn vào hệ thống SoC vẫn là một thách thức lớn do giới hạn tài nguyên phần cứng trên các dòng vi mạch định trình FPGA.

Khóa luận tốt nghiệp của tác giả Lê Hoàng Văn và Nguyễn Thanh Tùng (ngành Kỹ thuật Máy tính, Trường Đại học Công nghệ Thông tin – ĐHQG-HCM, năm 2024) tập trung giải quyết bài toán thiết kế, hiện thực và tích hợp một lõi IP Ethernet 1Gbps hỗ trợ giao thức chẩn đoán mạng ICMP trên nền tảng FPGA.

Văn bản xác định các mục tiêu và nhiệm vụ nghiên cứu cụ thể như sau:

  1. Nắm vững kiến thức về cách hoạt động của giao thức IP Ethernet, bao gồm quá trình truyền thông giữa các thiết bị, cấu trúc gói tin, định tuyến và quản lý địa chỉ.
  2. Hiện thực một hệ thống SoC tích hợp lõi IP Ethernet 1Gbps hỗ trợ giao thức ICMP trên FPGA.
  3. Cấu hình được địa chỉ cho lõi Ethernet thông qua giao diện điều khiển.
  4. Triển khai và kiểm chứng hệ thống hoàn chỉnh trên board mạch phát triển Xilinx Virtex-7 (VC707).

Đối tượng nghiên cứu của đề tài là kiến trúc lõi IP Ethernet tốc độ 1Gbps, các khối xử lý giao thức phần cứng (Ethernet MAC, IPv4, ARP, UDP, ICMP) và giao diện bus nội chip ARM AMBA AXI. Phạm vi nghiên cứu giới hạn ở việc xử lý các khung truyền Ethernet II, gói tin IPv4, giao thức phân giải địa chỉ ARP, giao thức truyền dữ liệu không kết nối UDP và các thông điệp phản hồi Ping cơ bản (Echo Request/Reply) của giao thức ICMP; hệ thống được tổng hợp và kiểm tra trên phần cứng FPGA Xilinx Virtex-7 VC707 kết nối với máy tính cá nhân (PC) qua giao diện mạng cáp đồng.

Cơ sở lý thuyết và phương pháp

Nghiên cứu được xây dựng trên nền tảng mô hình phân tầng truyền thông và các tiêu chuẩn giao thức mạng quốc tế, kết hợp với các chuẩn giao tiếp phần cứng vi mạch số:

  • Mô hình tham chiếu mạng: Mô hình OSI 7 tầng và mô hình TCP/IP 4 tầng. Đề tài tập trung hiện thực hóa các tầng bên dưới: Tầng vật lý (Physical Layer), Tầng liên kết dữ liệu (Data Link Layer - MAC, LLC), Tầng mạng (Network/Internet Layer - IPv4, ARP, ICMP) và Tầng giao vận (Transport Layer - UDP).
  • Các tiêu chuẩn giao thức:
    • IEEE 802.3 Ethernet: Khung truyền dữ liệu Ethernet II với cấu trúc gồm Tiền tố (Preamble - 7 bytes), Dấu phân cách bắt đầu khung (SFD - 1 byte 0xD5), Địa chỉ MAC nguồn (6 bytes), Địa chỉ MAC đích (6 bytes), Trường EtherType (2 bytes), Dữ liệu tải (Payload - 46 đến 1500 bytes) và Chuỗi kiểm tra khung (FCS/CRC-32 - 4 bytes).
    • Giao thức ARP (Address Resolution Protocol): Gói tin kích thước 28 bytes với EtherType 0x0806, phục vụ ánh xạ địa chỉ IP và địa chỉ MAC vật lý qua các gói tin ARP Request (Opcode 1) và ARP Reply (Opcode 2).
    • Giao thức IPv4 (Internet Protocol version 4): Header chuẩn 20 bytes với EtherType 0x0800, bao gồm các trường Version, IHL, TOS, Total Length, Identification, Flags, Fragment Offset, TTL, Protocol (UDP là 0x11, ICMP là 0x01) và Header Checksum 16-bit.
    • Giao thức UDP (User Datagram Protocol): Header 8 bytes gồm Source Port (16 bits), Destination Port (16 bits), Length (16 bits) và Checksum (16 bits).
    • Giao thức ICMP (Internet Control Message Protocol): Hỗ trợ cấu trúc thông điệp Ping gồm trường Type (Type 8 cho Echo Request, Type 0 cho Echo Reply), Code (0), Checksum, Identifier và Sequence Number.
Giao diện phần cứng Tần số xung nhịp tối đa Tốc độ truyền Độ rộng bus dữ liệu
MII (Media-Independent Interface) 25 MHz 100 Mbps 4 bits
RMII (Reduced MII) 50 MHz 100 Mbps 2 bits
GMII (Gigabit MII) 125 MHz 1 Gbps 8 bits
RGMII (Reduced GMII) 125 MHz 1 Gbps 8 bits
SGMII (Serial GMII) 625 MHz 1 Gbps 2 bits
HSGMII (High Serial GMII) 1562.5 Gbps - 2 bits
  • Chuẩn bus giao tiếp trên chip (ARM AMBA AXI4):
    • AXI4-Lite: Sử dụng cấu trúc 5 kênh truyền tín hiệu độc lập (Read Address, Read Data, Write Address, Write Data, Write Response) để CPU cấu hình địa chỉ IP, MAC và UDP Port cho lõi phần cứng.
    • AXI4-Stream: Giao diện luồng dữ liệu tốc độ cao giữa các module phần cứng không qua định địa chỉ bộ nhớ, điều khiển bởi các tín hiệu chuẩn như ACLK, ARESETn, TVALID, TREADY, TDATA, TKEEP, TLAST, TUSER.

Phương pháp nghiên cứu thực hiện bao gồm: phân tích lý thuyết các giao thức; thiết kế kiến trúc vi mạch bằng ngôn ngữ mô tả phần cứng; mô phỏng kiểm tra chức năng từng khối trên phần mềm ModelSim/Vivado Simulator; tổng hợp và phân tích định thời trên Vivado; nhúng hệ thống lên board FPGA Virtex-7 VC707; thu thập và phân tích gói tin thực tế bằng phần mềm Wireshark và script kiểm thử Python.

Thiết kế và triển khai

Hệ thống được thiết kế theo kiến trúc phân luồng độc lập giữa nhánh thu (RX) và nhánh phát (TX), đảm bảo khả năng xử lý song công toàn phần (Full-Duplex) ở băng thông 1 Gbps với tần số làm việc 125 MHz.

1. Kiến trúc lõi IP Ethernet

  • Nhánh tiếp nhận (RX Path): Dữ liệu 8-bit từ chip PHY đi vào giao diện GMII_in qua module eth_mac_1g_fifo để loại bỏ Preamble, SFD và kiểm tra mã lỗi CRC/FCS. Khối eth_axis_rx tiếp nhận luồng AXI4-Stream và phân tách Frame Header với Frame Data. Khối IP_complete kiểm tra trường EtherType: nếu giá trị là 0x0806, gói tin được chuyển đến module ARP; nếu giá trị là 0x0800, dữ liệu chuyển đến IP_rx. Module UDP_complete tiếp tục giải mã trường Protocol của IP Header: nếu là 0x01 sẽ gửi đến khối ICMP_rx, nếu là 0x11 sẽ đưa vào khối UDP_rx và lưu trữ tại udp_payload_fifo (FIFO_rx).
  • Nhánh truyền dẫn (TX Path): Dữ liệu người dùng từ FIFO phát được đưa qua khối UDP_checksum để tính toán trường kiểm tra 16-bit và đóng gói UDP Header. Module IP_arb_mux đóng vai trò là bộ chọn kênh dồn ưu tiên (Priority Multiplexer), trong đó luồng phản hồi ICMP_reply được đặt mức ưu tiên cao hơn luồng dữ liệu UDP. Dữ liệu sau đó được đóng gói IP Header tại IP_tx và chuyển tới bộ dồn kênh ETH_arb_mux (ưu tiên gói ARP_reply hơn gói IP). Cuối cùng, eth_axis_tx kết hợp header với payload để đưa sang khối MAC hoàn chỉnh việc thêm Preamble (0x55), SFD (0xD5), tính toán mã kiểm tra CRC-32 và xuất ra giao tiếp GMII_out.

2. Thiết kế khối ICMP phần cứng và bộ tính Checksum

Module ICMP được tích hợp thành một khối phần cứng chuyên biệt gồm 4 khối con: ICMP_rx, ICMP_tx, ICMP_checksum và FIFO. Khối tính toán ICMP_checksum hoạt động dựa trên máy trạng thái hữu hạn (FSM) gồm 5 trạng thái:

  • Trạng thái S1: Gán giá trị Checksum ban đầu bằng 0, thiết lập chiều dài gói tin Length = 8 (8 bytes của ICMP Header).
  • Trạng thái S2: Cộng dồn giá trị trường định danh (16-bit Identifier).
  • Trạng thái S3: Cộng dồn giá trị số thứ tự (16-bit Sequence).
  • Trạng thái S4: Duyệt qua từng byte dữ liệu trong FIFO. Nếu vị trí byte chẵn thì cộng {8'h0, data}, nếu vị trí lẻ thì cộng {data, 8'h0} và tăng biến đếm Length.
  • Trạng thái S5: Đảo bit kết quả cộng dồn 32-bit để tạo giá trị Checksum chuẩn, đồng thời tăng biến Length thêm 20 bytes (tính cả IP Header) để chuyển cho các khối đóng gói tiếp theo.

3. Tích hợp SoC và kết nối lớp vật lý (PHY)

Hệ thống được đóng gói trên phần mềm Vivado, tích hợp lõi IP Ethernet cùng giao diện cấu hình AXI4-Lite và lõi xử lý điều khiển. Tín hiệu GMII từ IP Ethernet được kết nối với chip PHY ngoài Marvell 88E1111 trên board VC707 thông qua IP Core 1G/2.5G PCS/PMA or SGMII LogiCORE IP, cho phép chuyển đổi giao tiếp giữa chuẩn song song GMII và chuẩn nối tiếp SGMII tương thích với phần cứng board mạch.

Nội dung chính theo từng chương

Chương 1. TỔNG QUAN

Chương 1 trình bày lý do chọn đề tài xuất phát từ nhu cầu thực tiễn về việc phát triển các hệ thống mạng nhúng, yêu cầu tối ưu hóa tài nguyên phần cứng SoC và nâng cao hiệu năng truyền thông. Tác giả xác định 4 mục tiêu nghiên cứu trọng tâm và đề ra phương pháp luận thực hiện dựa trên quy trình thiết kế số chuẩn IEEE 802.3, sử dụng công cụ mô phỏng ModelSim, môi trường thiết kế Vivado và nền tảng FPGA Xilinx Virtex-7 VC707.

Chương 2. TỔNG QUAN VỀ ETHERNET

Chương 2 phân tích chi tiết cơ sở lý thuyết về mô hình mạng OSI 7 tầng và mô hình TCP/IP 4 tầng. Nội dung tập trung làm rõ chức năng của từng tầng từ Tầng vật lý đến Tầng ứng dụng, nguyên lý định dạng gói tin mạng (UDP, ICMP, ARP), cấu trúc địa chỉ MAC 48-bit (Unicast, Broadcast, Multicast). Đồng thời, chương này tổng hợp các chuẩn giao tiếp MII (MII, RMII, GMII, RGMII, SGMII, HSGMII) và phân tích giao thức bus ARM AMBA AXI4 (bao gồm cấu trúc 5 kênh của AXI4-Lite và định dạng luồng dữ liệu của AXI4-Stream).

Chương 3. GIAO THỨC SỬ DỤNG TRONG LÕI IP ETHERNET

Chương 3 đi sâu vào cấu trúc kỹ thuật và cơ chế hoạt động của các giao thức được hiện thực trong lõi IP:

  • Giao thức UDP: Cơ chế truyền không kết nối (CL mode), cấu trúc header 8 bytes và thuật toán kiểm tra lỗi Checksum.
  • Giao thức IPv4: Cách biểu diễn địa chỉ 32-bit (dạng thập phân, hệ 16, hệ 8), cấu trúc header 20 bytes với 12 trường thông tin bắt buộc và quy tắc đệm padding.
  • Giao thức ARP: Quy trình 5 bước giải mã địa chỉ MAC/IP thông qua gói tin Request và Reply kích thước 28 bytes.
  • Giao thức Ethernet: Kiến trúc phân lớp LLC/MAC, cơ chế truy cập môi trường CSMA/CD, các chuẩn Ethernet (Standard, Fast, Gigabit) và định dạng khung Ethernet II (64 đến 1518 bytes).
  • Giao thức ICMP: Cấu trúc bản tin điều khiển, các trường Type, Code, Identifier, Sequence Number và định dạng tải dữ liệu thử nghiệm Ping chuẩn.

Chương 4. HIỆN THỰC LÕI IP ETHERNET

Chương 4 trình bày thiết kế chi tiết kiến trúc phần cứng của lõi IP Ethernet. Tác giả phân tích sơ đồ khối tổng thể fpga_core, cấu trúc module ICMP kèm FSM tính Checksum 5 trạng thái (S1 đến S5), sơ đồ khối UDP_complete và cơ chế dồn kênh ưu tiên của IP_arb_mux và ETH_arb_mux. Ngoài ra, chương này mô tả chi tiết máy trạng thái FSM điều khiển khối MAC GMII cho cả hai chiều: GMII_rx (gồm các trạng thái STATE_IDLE, STATE_PAYLOAD, STATE_WAIT_END) và GMII_tx (gồm các trạng thái STATE_IDLE, STATE_PREAMBLE, STATE_PAYLOAD với biến đếm chèn đệm tối thiểu 59 bytes).

Chương 5. KIỂM TRA THIẾT KẾ TRÊN PHẦN MỀM MÔ PHỎNG

Chương 5 cung cấp kết quả mô phỏng kiểm tra chức năng dạng sóng cho tất cả các khối phần cứng đơn lẻ và toàn hệ thống:

  • Khối MAC: Kiểm tra phân tích và đóng gói gói tin thành công; kiểm tra phản ứng của hệ thống khi gói tin bị sai FCS, trường SFD khác 0xD5, nhận tín hiệu báo lỗi hoặc kích thước dữ liệu gửi đi bé hơn kích thước tối thiểu.
  • Khối Eth_axis: Kiểm tra phân tích header và xử lý gói tin bị rút gọn.
  • Khối ARP: Kiểm tra phân tích gói tin, xử lý gói bị cắt ngắn, header không hợp lệ, cơ chế ghi/đọc/ghi đè/xóa bộ nhớ ARP_cache, xử lý gói tin ARP Request/Reply, trường hợp truy xuất địa chỉ MAC chưa lưu dẫn đến timeout và xử lý IP broadcast.
  • Khối IP: Kiểm tra tính kích thước gói tin, phân tích gói tin thành công, phát hiện các lỗi chiều dài gói, không đủ header, header không hợp lệ và lỗi IP checksum.
  • Khối UDP: Kiểm tra đóng gói và phân tách UDP datagram, phát hiện lỗi chiều dài, lỗi header và kiểm tra tính toán checksum.
  • Khối ICMP: Kiểm tra phân tách gói ICMP_rx, đóng gói ICMP_tx, tính checksum và chiều dài, quy trình nhận/gửi packet độc lập và kiểm tra tích hợp trên fpga_core.

Chương 6. XÂY DỰNG HỆ THỐNG SOC

Chương 6 mô tả quy trình tích hợp lõi IP Ethernet vào hệ thống SoC hoàn chỉnh trên phần mềm Vivado. Nội dung bao gồm việc thiết lập luồng dữ liệu, tích hợp IP Core 1G/2.5G PCS/PMA or SGMII LogiCORE, cấu hình các ràng buộc xung nhịp (clock constraints) cho khối PHY Device, tổng hợp mạng xung nhịp và thực hiện phân tích định thời (Timing Analysis). Chương này cũng tổng kết mức độ tiêu thụ tài nguyên phần cứng (LUT, FF, BRAM) của riêng lõi IP Ethernet và của toàn bộ hệ thống SoC trên vi mạch FPGA Xilinx Virtex-7 VC707.

Chương 7. KIỂM TRA THIẾT KẾ TRÊN BOARD

Chương 7 trình bày quá trình thực nghiệm phần cứng thực tế:

  • Cấu hình sơ đồ kết nối khối Ethernet với chip PHY Marvell 88E1111 trên board VC707 cho ứng dụng cáp đồng.
  • Thiết lập địa chỉ mạng IPv4 trên máy tính kiểm thử, xác nhận kết nối mạng vật lý đạt tốc độ 1 Gbps.
  • Kiểm tra chức năng cấu hình IP Ethernet qua giao diện AXI4-Lite: thay đổi địa chỉ IP/MAC và kiểm tra phản hồi tương ứng.
  • Kiểm tra giao thức ICMP: thực hiện lệnh ping từ máy tính đến board FPGA và giám sát các gói tin ICMP Request/Reply trên phần mềm Wireshark.
  • Kiểm tra giao thức UDP: kết nối đến UDP Port 12344, gửi và nhận các gói tin ngắn và gói tin dài, kiểm chứng việc bắt gói tin trên Wireshark.
  • Kiểm tra truyền nhận tệp dữ liệu: thực thi script Python để gửi tệp dữ liệu sang IP Ethernet và hiển thị nội dung tệp nhận lại.
  • So sánh hiệu năng và tài nguyên với các khóa luận thế hệ trước, đồng thời đề xuất các hướng phát triển tiếp theo.

Kết quả và đóng góp

Kết quả nghiên cứu thực nghiệm

  • Thiết kế và hiện thực hoàn chỉnh lõi IP Ethernet hỗ trợ các giao thức mạng ARP, IPv4, UDP và ICMP trên phần cứng vi mạch số.
  • Lõi IP hoạt động ổn định ở tốc độ đường truyền 1 Gbps, tương thích chuẩn giao tiếp GMII với tần số làm việc 125 MHz.
  • Tích hợp thành công lõi IP vào hệ thống SoC trên nền tảng FPGA Xilinx Virtex-7 VC707, hỗ trợ cấu hình động các thông số mạng (IP nguồn/đích, MAC, UDP Port) thông qua các thanh ghi điều khiển giao tiếp bus AXI4-Lite.
  • Kiểm chứng thực nghiệm phần cứng thành công:
    • Máy tính kết nối thành công với board VC707 qua chip PHY Marvell 88E1111 ở tốc độ 1 Gbps.
    • Phản hồi lệnh ping chính xác thông qua khối phần cứng ICMP, dữ liệu bắt được trên Wireshark thể hiện đúng cấu trúc gói ICMP Echo Request và Echo Reply.
    • Truyền nhận dữ liệu UDP hai chiều ổn định qua cổng 12344; hệ thống lọc và từ chối xử lý chính xác khi gửi sai địa chỉ IP đích.
    • Truyền nhận thành công toàn bộ nội dung tệp dữ liệu thử nghiệm từ máy tính sang FPGA thông qua script Python.

Đóng góp của đề tài

  • Hiện thực hóa thành công module xử lý giao thức ICMP trực tiếp trên phần cứng (Hardware-based ICMP engine), bao gồm bộ tính toán Checksum tự động bằng FSM. Giải pháp này giúp hệ thống tự phản hồi các yêu cầu kiểm tra mạng (Ping) mà không cần can thiệp của bộ xử lý trung tâm, qua đó giảm tải cho CPU trong hệ thống SoC và tăng tốc độ đáp ứng chẩn đoán mạng.
  • Xây dựng cấu trúc phân luồng ưu tiên linh hoạt (IP_arb_mux và ETH_arb_mux), giải quyết triệt để vấn đề xung đột dữ liệu giữa các luồng điều khiển mạng (ARP, ICMP) và luồng dữ liệu ứng dụng (UDP).
  • Tối ưu hóa kích thước và tài nguyên phần cứng của lõi IP Ethernet 1Gbps, tạo tiền đề thuận lợi cho việc nhúng vào các hệ thống SoC có tài nguyên logic hạn chế.

Hạn chế và hướng nghiên cứu tiếp

Hạn chế

  • Hệ thống chỉ mới hỗ trợ giao thức giao vận không kết nối UDP; chưa hiện thực giao thức truyền thông tin cậy TCP.
  • Giao thức ICMP mới chỉ dừng lại ở việc hỗ trợ các thông điệp cơ bản phục vụ lệnh Ping (Echo Request Type 8, Echo Reply Type 0 với Code 0); chưa hỗ trợ đầy đủ các bản tin báo lỗi mạng khác của ICMP (như Destination Unreachable, Time Exceeded, Redirect).
  • Quá trình gán địa chỉ IP vẫn dựa trên cấu hình tĩnh qua AXI4-Lite hoặc giá trị mặc định; chưa tích hợp giao thức cấu hình máy chủ động DHCP để tự động nhận IP trong mạng nội bộ.

Hướng nghiên cứu tiếp

  • Nghiên cứu và hiện thực lõi IP hỗ trợ giao thức truyền thông tin cậy TCP (TCP/IP Offload Engine) trên phần cứng FPGA.
  • Mở rộng chức năng cho khối ICMP để hỗ trợ đa dạng các loại thông điệp chẩn đoán và báo lỗi mạng theo chuẩn RFC 792.
  • Tích hợp giao thức DHCP để hỗ trợ cấp phát địa chỉ IP tự động.
  • Tiếp tục tối ưu hóa tài nguyên logic và năng lượng tiêu thụ của lõi IP trên các dòng vi mạch FPGA thế hệ mới.

Giá trị tham khảo

Khóa luận là tài liệu tham khảo chuyên sâu dành cho sinh viên, học viên cao học và kỹ sư thuộc các ngành Kỹ thuật Máy tính, Điện tử - Viễn thông, Thiết kế Vi mạch và Hệ thống Nhúng.

Tài liệu cung cấp giá trị học thuật và ứng dụng thực tiễn ở các nội dung:

  • Quy trình thiết kế và mô phỏng các máy trạng thái FSM xử lý giao thức truyền thông tốc độ cao (MAC, GMII, Checksum).
  • Phương pháp thiết kế các khối tính toán kiểm tra lỗi (CRC-32, 16-bit One's Complement Checksum) hoàn toàn bằng phần cứng.
  • Kỹ thuật phân luồng và thiết kế bộ dồn kênh ưu tiên (Arbiter Multiplexer) cho các luồng dữ liệu AXI4-Stream.
  • Phương pháp tích hợp lõi IP Ethernet với chip PHY ngoài thông qua IP Core SGMII/PCS/PMA và chuẩn bus AXI4-Lite trên môi trường Xilinx Vivado.

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

1. Lõi IP Ethernet trong đề tài hỗ trợ những giao thức nào và đạt tốc độ truyền nhận là bao nhiêu?
Lõi IP Ethernet được thiết kế hỗ trợ các giao thức: Ethernet II (tầng liên kết dữ liệu), ARP và IPv4 (tầng mạng), UDP (tầng giao vận) và ICMP (giao thức điều khiển/chẩn đoán mạng). Hệ thống đạt tốc độ truyền nhận thực tế là 1 Gbps (1000 Mbps).

2. Giao diện phần cứng nào được lựa chọn để kết nối giữa khối MAC và lớp vật lý PHY, và thông số hoạt động của giao diện đó là gì?
Đề tài lựa chọn giao diện GMII (Gigabit Media-Independent Interface). Giao diện này hoạt động với đường truyền dữ liệu 8-bit riêng biệt cho chiều thu (RXD[7:0]) và chiều phát (TXD[7:0]), chạy trên tần số xung nhịp 125 MHz để đạt thông lượng 1 Gbps.

3. Khối ICMP phần cứng trong khóa luận hỗ trợ những loại thông điệp nào và chức năng của nó là gì?
Do giới hạn phạm vi phục vụ chức năng Ping mạng, khối ICMP chỉ sử dụng Type 8 (Echo Request), Type 0 (Echo Reply) với Code 0. Khối này chịu trách nhiệm nhận gói tin Ping Request từ thiết bị khác (như PC), tự động tính toán lại Checksum, đóng gói và gửi trả bản tin Ping Reply hoàn toàn bằng phần cứng mà không cần CPU xử lý.

4. Cơ chế dồn kênh ưu tiên (Arbiter Multiplexer) trong nhánh truyền (TX) hoạt động như thế nào khi có nhiều luồng dữ liệu cùng lúc?
Tại khối IP_arb_mux, luồng dữ liệu từ ICMP (gói phản hồi ICMP Reply) được gán mức ưu tiên cao hơn luồng dữ liệu từ UDP; chỉ khi dữ liệu ICMP truyền xong thì đầu ra mới chuyển sang dữ liệu UDP. Tương tự, tại khối ETH_arb_mux, dữ liệu từ ARP (gói ARP Reply) được ưu tiên truyền trước dữ liệu từ khối IP.

5. Hệ thống SoC và lõi IP Ethernet được hiện thực và kiểm chứng trên nền tảng phần cứng và công cụ phần mềm nào?
Hệ thống được thiết kế, tổng hợp và phân tích định thời trên phần mềm Xilinx Vivado; mô phỏng chức năng trên ModelSim/Vivado Simulator; kiểm chứng thực tế trên board mạch FPGA Xilinx Virtex-7 (VC707) kết nối với chip PHY Marvell 88E1111; kiểm tra và phân tích lưu lượng truyền nhận qua phần mềm Wireshark và script Python trên PC.

Kết luận

Khóa luận tốt nghiệp của tác giả Lê Hoàng Văn và Nguyễn Thanh Tùng đã hiện thực hóa thành công hệ thống SoC tích hợp lõi IP Ethernet 1Gbps hỗ trợ giao thức ICMP trên nền tảng FPGA Xilinx Virtex-7. Công trình đã giải quyết trọn vẹn việc xử lý các giao thức mạng Ethernet, ARP, IPv4, UDP và ICMP trực tiếp trên phần cứng, kết hợp cơ chế cấu hình động qua bus AXI4-Lite và phân luồng ưu tiên AXI4-Stream. Toàn bộ hệ thống đã được kiểm chứng hoạt động chính xác cả trên phần mềm mô phỏng và môi trường thực nghiệm với máy tính cá nhân ở tốc độ đường truyền 1 Gbps.