Chương I. 2-2 2£+2£+SE+EEEEE£EEEEEEEEEEEEEEEEEEerkerrkrree 2 1. LY do chọn đề tài. Mục tiêu và phương pháp thực hiện.-- 5 c5 3+ £++sEeeeseerrss 2 mm lo.
Phương pháp thực hiỆn.- G5 5 3283 ESEeEeeererrerrsereree 3 Chương 2. TONG QUAN VE ETHERNET. Mô hình OSD oc cccccecsseseseseseenesesesesesesnssesesesesescsnensseseseseseeneneneseseees 4 2. Tầng 1: Tang vat lý (Plysical Layer).
Tầng 2: Tang liên kết dữ liệu (Data Link Layer). Tầng 3: Tầng mang (Network LaY€T). Tầng 4: Tang giao vận (Transport Layer). Tang 5: Tang phiên (Session Layer).
Tầng 6: Tầng trình diễn (Presentation Layer). Tầng 7: Tang ứng dụng (Application Layer). Dinh dang 261 tine. Mac address Oooo.
Media Independent Interface LÍOÌ,. Gigabit media-independent Inf€TFACG. Giao thức AXĨ. 2Q HH HH HH HH HH HH 12 2.
Ăn TH TH TH TH TH TH ng 12 Chương 3. GIAO THUC SỬ DỤNG TRONG LOI IP ETHERNET. Cách thức hoạt động của IDFP. Cau trúc UDP header.---- 2 ©5¿++<+EE£EE2EEEEEEEEEEEEerkrrrrrrkrree 18 3.
_ Cách biểu diễn địa chỉ. Cấu trúc IPv4 header. Cách thức hoạt động của ARP. Cau trúc gói ARP.
2Q 2Q ST T TH TT TT TH TH TH TT TT TH re 24 3. _ Kiến trúc giao thức Ethernet. Cấu trúc khung giao thức Ethernet.--------- 2s s+cz£zzzzxzes 26 Sao».-c 1111 11T vn vn vn29 3. HIỆN THUC LOI IP ETHERNET.
Cấu trúc module ICMP. ICMP rx/ICMP _tx. Cau trúc lõi IP Ethernet. Eth axis rx/Eth_ aXIS_ EX.ccnn HH nnn ng 1x keg 39 “`.
KIEM TRA THIET KE TREN PHAN MEM MO PHONG /19)8)5863)000712775. Eth_axis_rx/Eth aXIS_ẨX. Eth aXIS TX.QQ DO nnnnnkkkkv vế47 5. Eth axIs bẤW⁄2⁄.-SAS Sen seeeserse49 ¬=.
HH TH TH HH HH ng 64 5. ICM cs, Cn 67 5.Sc 2S 2 TH E22 11211 1c errey 69 5. FPGA_COLEC ha BK. cv TH HH ng rry 71 3.- Án TH TH TH HH 71 Chương 6.
XÂY DỰNG HE THONG SOC. Luỗồng dit iGu coececececcecccsccsessessessessessessessesscssessessesscssessssuessessesssssssesseeseeaee 73 6.5G PCS/PMA or SGMII IP LogiCORETM. Xây dựng hệ thống trên phần mềm Vivado .--- 2-2 s+ss+sz+cz+s+2 74 6. Phan tích hệ thống.
Dinh thời hệ thống.----:- 2+ E+SE+EE+EEEEEEEEEErrrrrrrreres 75 6. Tai nguyên SU Ụng. cv ky 77 Chương 7. KIÊM TRA THIET KE TREN BOARD.
V707 Board Block Diagram. Chan kết nối của Ethernet với PHY Device. 222 HH HH He 83 7. Thiết lập cho quá trình kiỂm tra.
Cấu hình mạng trên PC.-- 2 ++++E++EE+EE+EE2EEEEEEEEEEEErrrrrrei 83 7. Phần mềm hỗ trợ quá trình kiểm tra. Kết quả kiểm tra.---:- 2+ St EEE1EE1811211211211711211 2111. ICMP & AXI4-LI(e.-- LH HH it 86 7.
UDP & AXI4-LI(€. Gửi dữ liệu trong tệp sang IP Ethernet. So sánh với khóa luận tTƯỚC. Hướng phát triỀn.----- ¿- 2SEEE+EE+EEEEE2EEEE12E121121171121111 111.95 DANH MỤC HÌNH Hình 2.
MG Ninh OSL. Định dạng các 261 KIT.- -- SG 1132118311139 39 111 11 91118 11 1 1 ng rệt 8 Hình 2. Cấu trúc kênh truyền chung AXT4 LÍTÌ,. 2 s+Ss+S£2EE+EE+E£+E£2E£zEzEzzxez 13 Hình 2.
Các tín hiệu của AXI4-ÌLIfe.----- -Ăc SE 2211113112231 1 111511 eree 14 Hình 3. Cấu trúc UDP header.--:-©2+22++t22EYYt2EEEvttEkvrrrrtrrrrrrrrrrrrre 18 Hình 3. Biểu diễn dia Chic. Cấu trúc IPv4 header.
Cách hoạt động của ARP prOtOCOÏ. Cấu trúc gói tin ARP. Kiến trúc của giao thức Ethernet. Cấu trúc khung giao thức Ethernet.
Cấu trúc ICMP header.- 5 c1 1S TT TH nh HT Hết 31 Hình 4. Máy trạng thái ICMP_checksum. s5 5 + + *sE+seeeeerseeeeeee 32 Hình 4. Sơ đồ cau trúc IP Ethernet.
Sơ đồ module UDP_complete.----:- 2 s¿s+++2+++£x++£x++zx+zrxe+zxs 34 Hình 4. Cấu trúc module MAC.:--©22¿22+vt2££xvttEExvvrerrtrrsrtrrrirrrrrrrrre 36 Hình 4. Quá trình xử lí Ethernet frame .--- 55222213 *+2 ++evE+esessssexrs 37 Hình 4. Quá trình truyền tải Ethernet frame.
Cấu trúc module ARP. Quá trình tinh checksum của ÏÍÏP. MAC _rx thành công phân tích gói tin (Ï). MAC _rx thành công phân tích gói tin (2).
--¿- 5+ ++x*++v£see+seeseess 42 Hình 5. MAC _ 1x g6i tin bi Sai FCS 1. MAC rx trường SFD khác OxID5. MAC rx nhận được tín hiệu gói tin lỗi từ nguồn dữ liệu.
MAC tx đóng gói thành công gói tin (Ï). MAC tx đóng gói thành công gói tin (2).- - - 55c sk*++sksseeseeeesee 45 Hình 5. MAC tx kích thước dit liệu gửi đi bé hơn kích thước tối thiểu (1). MAC tx kích thước dữ liệu gửi đi bé hơn kích thước tối thiểu (2).
Eth_axis_rx thành công phân tích gói tin. Eth_axis_rx gói tin DỊ TÚt ØỌII. Eth axis tx đóng gói thành công gói tin .- --- 5-55 s++ss++s+sxsss 48 Hình 5. ARP_rx thành công phân tích gói fin.- ---«s + «+ +++ve+seeessees 49 Hình 5.
ARP_rx gói tin bị cắt ngắn. ARP_rx header không hợp lỆ. ARP_rx header không hop lỆ. ARP_ cache ghi và đọc bộ NG.
eee eeccescesececeeseeeceeeeeseeeeeseeneeeseeaeens 51 Hình 5. ARP cache ghi đè vùng nhớ. ARP_cache xóa bộ nhớ. ARP nhận và gửi gói tin ARP (Í).- c5 ScSSxS+EskskEsirerrsrrserreree 53 Hình 5.
ARP nhận va gửi gói tin ARP (2) oo. eee eee eeceeecceseeeseeceeeeseeeeaeeeeeeeeseeeees 53 Hinh 5. ARP Truy xuất địa chi MAC chưa được lưu trong bộ nhớ và time out. ARP time OUK.
- s26 0 1x19 11219 ng nh nh nh nh 54 Hình 5. ARP IP broadcast .- - <6 111 ng Hết 55 Hình 5. Tính kích thước gói tin theo dữ liệu fes(.-- -5 55+ <++<<++se>+sss2 56 Hình 5. IP_rx thành công phân tích gói tin (1) .-- «+ «+ +s£++ve+sexseesss 56 Hình 5.
IP_rx thành công phân tích gói tin (2) .-- ------«+++<x++se+seeessees 56 Hình 5. IP_rx lỗi chiều đài gói tin (1).- 2-2-2 ©++2x++£x++zx++rxesrxrsrxerrxee 57 Hình 5. IP_rx lỗi chiều đài gói tin (2).----:-2¿©+¿©++2x++£x++zx++zxezrxrzrxerrxee 57 Hình 5. IP_rx lỗi không đủ header (1) .--- ¿2-5 25s 2 2+2 £££+E+Ez£kzE+zzzxzxers 58 Hình 5.
IP_rx lỗi không đủ header (2). IP_rx header không hợp lỆ (1) .-- << + + + £++vE+eeeeeeeeeeresrs 58 Hình 5. IP_rx header không hop lệ (2). IP_rx checksum không hop 16 (1).
IP_rx checksum không hợp lỆ (2) .-- ¿55-52 *++sx+veseeseeersesss 59 Hình 5. IP_tx đóng gói thành công gói tin (1) .-- 55+ +<s*++se++eexeeeessess 60 Hình 5. IP_tx đóng gói thành công gói tin (2) .- ¿6 St sskEsersersersrse 60 Hình 5. IP_tx lỗi chiều dài gói tin (1) .-------¿-+ ++22++2++zx++x+zrxerxezrxerxee 61 Hình 5.
IP_tx lỗi chiều dài gói tin (2) .--- 2: 2¿©<+++x+EE+Ex+Eeerxerxerrxerxee 61 Hình 5. UDP_rx thành công phân tích gói tin (Ï).--- -- «+ ««++ss++sex+se++ 62 Hình 5. UDP_rx thành công phân tích gói tin (2). UDP_rx lỗi chiều đài gói tin (1).
UDP_rx lỗi chiều đài gói tin (2). UDP_rx header không hợp 16 ((Í).- - s5 + 5+ £++se++seeeeseeereesss 64 Hình 5. UDP_rx header không hop lỆ (2). UDP_tx đóng gói thành công gói tin (Ï).- 5555 + + ++s+sex+eesss 65 Hình 5.
UDP_tx đóng gói thành công gói tin (2). UDP_checksum thành công tính checksum (Ï). UDP_ checksum thành công tính checksum (2). ICMP_rx phân tach ICMP packet (1) .- --- «<< <++<ex+seexeeereeess 67 Hình 5.
ICMP_rx phân tach ICMP packet (2) .-----«++<s<++sc+seeseseresees 67 Hình 5. ICMP_tx đóng gói IMCP packet (1). cece eeeeseesseeeeseeeeeseeeseeeeeeeeseens 68 Hình 5. ICMP_ tx đóng gói IMCP packet (2).
ICMP_checksum tinh checksum va length (1). ICMP_checksum tinh checksum va length (2). ICMP nhận packet. ec ceecccesecesceesseeeseeeseeceaeeeseeceaeeeaeeesaeeeaeeseaeseaeeeaes 70 Hình 5.
ICMP gửi packet .- - G2 1 HH ng TH ng 70 Hình 5. FPGA nhận và gửi UDP pacKage. FPGA nhận ICMP pacKaØ©.v ng nệt 71 Hình 5. FPGA gửi ICMP package .- G5 HH ng rệt 72 Hình 6.
Sơ đồ luồng dit liệu.---2- 2-52 252 SE+SE+EE+EEEEEEEEEEEEEEEEEEEEErrrrrerrree 73 Hình 6. Sơ đồ kết nối chân của IP Ethernet với PHY thông qua PCS/PMA. Hệ thống xây dựng trên phần mềm Vivado. Tóm tắt định thời thiết kẾ.
Constrain cho clock của khối PHY Device. Tổng hop clock trong hệ thống đã xây dựng. Tài nguyên sử dụng cua IP Ethernet trên board VC707. Tài nguyên sử dung của SoC trên board VC707.
VC707 Board Block Diagram Í?Ì,.- ¿+ +s +8 St SEeEeEeEeEexexexexrxrrrxrxrs 79 Hình 7. Các kết nối Ethernet, từ FPGA đến thiết bi PHY !l. Thiết bị 88E1111 được sử dụng trong ứng dụng cáp đồng. Các chức năng của 88E1111 (datasheet) .- -- ---5S<cscccs+ceseeeee 82 Hình 7.
Cấu hình IPv4 trên PC.---- 2 +¿©£+2E+EE++EE£EE+EEEEEEEEEEEkerkerkrrrkerkree 84 Hình 7. Thông tin cấu hình mạng với tốc độ đường truyền 1 Gbps. Kết nối tới UDP port 12344.----¿ +: ©2+©++2E++£E++EE++EE++Exezrxrzrxrrrxee 85 Hình 7. Cau hình mặc định của IP Ethernet.
Thực hiện lệnh ping trên PC. Gói ICMP request va reply quan sát trên Wireshark. Cấu hình địa chi IP mới cho IP Ethernet.- s- - + s2 +se£++x+zezxzxezs 87 Hình 7. Ping đến địa chỉ cũ và MOi.
Dữ liệu gói tin UDP gửi và nhận trên PC. Nhận gói tin UDP từ PC. 2G G1121 911931 9111 1 1 ng ng ngư. Gửi gói tin UDP đến PC.--- 2 2 ©2¿+E£EE+EE+EEtEEzEEerkerkrrreerrree 89 Hình 7.
Gửi va nhận gói tin UDP dài.-- ó5 +33 E*vE+sEEsevseesserseesse 90 Hình 7. Gói tin UDP bắt được trên Wireshark.- ¿22+ +s+E+EvEEE+EzEzEsxsrerrs 91 Hình 7. IP Ethernet không nhận dữ liệu khi không đúng dia chi IP. IP Ethernet nhận dữ liệu khi đúng địa chi IP.
Thực thi đoạn code Python. Hiển thị dữ liệu trong tệp đã nhận được. Gói tin UDP bắt được trên Wireshark.--s- - + vEx+x+EvE+xererxsxers 93 DANH MỤC BANG Bảng 2-1. Một số giao thức trong mô hình OSÌ.
Các biến thé và thông $6 .-- 2-2-5252 E+EE2EE2EE2EE2E2EE2E12E22E22Ee ke, 10 Bang 2-3. Các tin hiệu truyền của GMIDo0. Các tín hiệu nhận của GMIIÍ,. -- c5 SE E9 VESkSerirseeeerrereree 11 Bang 2-5.
Các tín hiệu của AXI4-Stream oo. eee --- «cà 1kg ng tr 15 Bảng 8-1. So sánh với khóa luận trước ÍfÌ,.-¿- + + St +++++x+xexeEeEeztzvzxrxexerersrs 94 DANH MỤC TU VIET TAT IP Intellectual property FPGA Field-programmable gate array IEEE Institute of Electrical and Electronics Engineers CSMA/CD Carrier-sense multiple access with collision detection FCS Frame check sequence ARP Address Resolution Protocol Ipv4 Internet Protocol version 4 UDP User Datagram Protocol ICMP Internet Control Message Protocol MAC Medium access control TCP Transmission Control Protocol DHCP Dynamic Host Configuration Protocol GMII Gigabit media-independent interface PHY Physical layer CRC Cyclic redundancy check SDF Start frame delimiter ICMP Internet Control Message Protocol PCS Physical coding sublayer PMA Physical Medium Attachment SoC System-on-Chip MIG Memory Interface Generator TOM TAT KHÓA LUẬN Khóa luận này tập trung tìm hiểu và hiện thực IP Ethernet 1Gbit/s. Trong hệ thống mạng, dữ liệu được đóng gói thành các frame vì vậy khóa luận này tập trung xử lý các Ethernet frame, IPv4 packet, và UDP datagram, đồng thời phân tích các trường thông tin tương ứng với từng đơn vị dữ liệu đóng gói.
Ngoài ra, em cũng đã tích hợp IP này vào hệ thống SoC và sử dụng lõi xử lí để cấu hình và điều khiển. Mặc dù IP Ethernet không phải là khái niệm mới và đã trở nên phổ biến, nhưng nhu cầu tích hợp IP kích thước nhỏ gọn vào hệ thống SoC van rat quan trọng do tài nguyên phần cứng có hạn. Vì lý do này, em đã chọn hiện thực IP Ethernet 1Gbit/s cùng với giao thức truyền dữ liệu UDP dé đơn giản hóa quá trình thực hiện. Kết quả đánh giá dựa trên: tốc độ, khả năng kết nối với PC, và tài nguyên sử dụng.
Thông qua thử nghiệm trên FPGA, IP Ethernet hỗ trợ đầy đủ các chức năng theo mục tiêu đặt ra với tốc độ 1Gbit/s. Bên cạnh đó, khóa luận này còn mở rộng thêm hiện thực giao thức ICMP trên phần cứng để giúp tăng cường khả năng kiểm tra và chân đoán mạng. Việc hiện thực ICMP trên phần cứng không chỉ giúp tối ưu hóa hiệu năng ma còn giảm tải cho CPU, nâng cao khả năng của hệ thông.