ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA ------------------------------ VƯƠNG ĐÌNH HƯNG THIẾT KẾ BỘ PHÂN ĐOẠN DỮ LIỆU SONG SONG KHÔNG SỬ DỤNG HÀM BĂM TRÊN FPGA Chuyên ngành: Kỹ Thuật Điện Tử Mã số: 8520203 LUẬN VĂN THẠC SĨ TP. HỒ CHÍ MINH, tháng 07 năm 2022 CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐHQC –HCM Cán bộ hướng dẫn khoa học: TS. Trần Hoàng Linh………………………… Cán bộ chấm nhận xét 1: TS.
Nguyễn Minh Sơn …………………………… Cán bộ chấm nhận xét 2: TS. Bùi Trọng Tú ………………………………… Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp.HCM ngày 13 tháng 07 năm 2022. Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm: 1. Trương Quang Vinh.
Nguyễn Lý Thiên Trường. Trần Hoàng Linh. - Ủy viên Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có). CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA ĐIỆN – ĐIỆN TỬ ĐẠI HỌC QUỐC GIA TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập - Tự do - Hạnh phúc NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: Vương Đình Hưng…….MSHV: 1970534 Ngày, tháng, năm sinh: 12/12/1997…………………….
HCM Chuyên ngành: Kỹ Thuật Điện Tử ……………………………Mã số : 8520203 I. TÊN ĐỀ TÀI: THIẾT KẾ BỘ PHÂN ĐOẠN DỮ LIỆU SONG SONG KHÔNG SỬ DỤNG HÀM BĂM TRÊN FPGA II. NHIỆM VỤ VÀ NỘI DUNG: Đề xuất phương pháp phân đoạn dữ liệu song song cho các giải thuật phân đoạn không dùng hàm băm. Xây dựng phần cứng cho phương pháp được đề xuất trên nền tảng FPGA bằng ngôn ngữ Verilog.
Từ đó, đánh giá kết quả nghiên cứu đạt được và bàn luận những hướng nghiên cứu tiếp theo để ứng dụng phân đoạn dữ liệu trong các hệ thống chống trùng lặp dữ liệu. NGÀY GIAO NHIỆM VỤ : 06/09/2021 IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 22/05/2022 V. CÁN BỘ HƯỚNG DẪN : TS.
Trần Hoàng Linh Tp. CÁN BỘ HƯỚNG DẪN CHỦ NHIỆM BỘ MÔN ĐÀO TẠO TRƯỞNG KHOA ĐIỆN – ĐIỆN TỬ Lời cảm ơn GVHD: TS. Trần Hoàng Linh LỜI CẢM ƠN Học viên xin gửi lời cảm ơn sâu sắc đến quý thầy cô trong Khoa Điện – Điện tử, trường Đại học Bách Khoa Thành phố Hồ chí Minh đã chỉ dạy tận tình, giúp đỡ học viên trong quá trình học tập, nghiên cứu và hoàn thành luận văn. Xin được gửi lời cảm ơn chân thành đến thầy TS.
Trần Hoàng Linh. Người hết lòng giúp đỡ, dạy bảo, và tạo điều kiện thuận lợi cho học viên trong suốt quá trình thực hiện luận văn tốt nghiệp. Cảm ơn thầy đã định hướng, góp ý và giúp em có thể hoàn thành luận văn một cách tốt nhất. Cuối cùng, xin được cảm ơn cha mẹ và bạn bè đã luôn động viên và ủng hộ trong suốt quá trình hoàn thành luận văn.
Sự giúp đỡ đó có ý nghĩa tinh thần rất lớn đối với học viên. Hồ Chí Minh, ngày 22 tháng 05 năm 2022 Học viên Vương Đình Hưng i Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh TÓM TẮT LUẬN VĂN Phân đoạn dữ liệu dựa trên nội dung là phương pháp phổ biến được ứng dụng rộng rãi trong các hệ thống chống trùng lặp dữ liệu và các hệ thống đồng bộ dữ liệu. Trong những năm gần đây, nhiều giải thuật mới không dùng hàm băm đã được phát triển và gặt hái được nhiều kết quả tích cực.
Tuy nhiên, các giải thuật này hiện chỉ đang thực hiện đơn luồng trên các vi xử lý. Trong luận văn này, sau khi khảo sát các giải thuật CDC, học viên nhận thấy các giải thuật sử dụng kỹ thuật cửa sổ trượt là khả song song hóa. Luận văn này sẽ đề xuất một phương pháp phân đoạn song song mới, hướng tới việc thực hiện trên nền tảng FPGA. Trong đó, giải thuật PCI được lựa chọn để ứng dụng trong thiết kế.
Bằng cách khai thác sức mạnh phần cứng của FPGA, thiết kế trong luận văn này không những đạt được tốc độ xử lý cao mà còn dễ dàng mở rộng. ii Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh ABSTRACT Content-defined chunking is a common method in many applications such as data deduplication and data synchronization. In recent years, new CDC algorithms using non- hashing methods have been developed, and positive results have been obtained.
However, most of the algorithms are developed for single-thread computation on microprocessors. After analyzing some popular CDC algorithms, we observed that the algorithms using the basic sliding window protocol are more feasible to process in parallel. In this work, we proposed a new parallel chunking method that aims for hardware implementation. Additionally, we used the PCI algorithm, which does not include hash functions, to implement a multi-thread chunking system on FPGA devices.
By exploiting the strength of the FPGAs, our proposed design achieves not only high computational speed but also great scalability. iii Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh LỜI CAM ĐOAN Học viên cam đoan rằng, ngoài trừ các kết quả tham khảo từ các công trình khác như đã ghi rõ và trích dẫn trong luận văn này, các công việc nghiên cứu và trình bày trong luận văn này là do chính học viên thực hiện. Học viên Vương Đình Hưng iv Luận văn thạc sĩ GVHD: TS.
Trần Hoàng Linh MỤC LỤC 1.1 Lý do chọn đề tài .3 Đối tượng và phạm vi nghiên cứu .1 Đối tượng nghiên cứu .2 Phạm vi nghiên cứu .4 Ý nghĩa khoa học và thực tiễn của đề tài nghiên cứu.1 Ý nghĩa khoa học .2 Ý nghĩa thực tiễn .1 Tình hình nghiên cứu trong và ngoài nước .2 Nhiệm vụ đề tài .1 Lý thuyết về phân đoạn dữ liệu .2 Tiêu chí đánh giá giải thuật dữ liệu .3 Lý thuyết về các giải thuật phân đoạn dữ liệu không cố định .1 Giải thuật Asymmetric Extremum (AE) .2 Giải thuật Rapid Asymmetric Maximum (RAM) .3 Giải thuật Parity Check of Interval (PCI) .4 Phương pháp phân đoạn dữ liệu song song .1 Phương pháp P-Dedupe .2 Phương pháp SS-CDC .3 Phương pháp MUCH .5 Lý thuyết về bộ lọc Bloom Filter .14 v Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh 4. NỘI DUNG NGHIÊN CỨU .1 Đề xuất phương pháp phân đoạn dữ liệu song song .1 Đánh giá khả năng song song hóa của các giải thuật .2 Đề xuất phương pháp phân đoạn dữ liệu song song .2 Thiết kế phần cứng cho bộ phân đoạn dữ liệu song song .1 Sơ đồ thiết kế tổng quát .2 Thiết kế bộ Chunking Module.3 Thiết kế bộ Marshalling Module. ĐÁNH GIÁ VÀ BÀN LUẬN KẾT QUẢ .1 Kết quả tổng hợp, mô phỏng và kiểm thử .1 Kết quả kiểm thử phương pháp phân đoạn đề xuất .2 Kết quả mô phỏng thiết kế phần cứng .3 Kết quả tổng hợp mạch.2 Đánh giá, bàn luận và so sánh kết quả .3 Tác động của kích thước bộ nhớ đệm với kết quả phân đoạn .4 Tác động của số lượng segment với kết quả phân đoạn.5 Tác động của kích thước bộ nhớ đệm với thông lượng của thiết kế .6 Đánh giá thiết kế phần cứng.
KẾT LUẬN VÀ ĐỀ NGHỊ HƯỚNG PHÁT TRIỂN TRONG TƯƠNG LAI.1 Hướng phát triển trong tương lai .45 DANH MỤC CÁC CÔNG TRÌNH KHOA HỌC .46 DANH MỤC TÀI LIỆU THAM KHẢO .50 vi Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh DANH SÁCH HÌNH MINH HỌA Hình 1 So sánh giữa phân đoạn dữ liệu kích thước cố định và không cố định .6 Hình 2 Hoạt động của giải thuật AE .7 Hình 3 Hoạt động của giải thuật RAM .9 Hình 4 Hoạt động của giải thuật PCI.10 Hình 5 Hoạt động phân đoạn song song của P-Dedupe .12 Hình 6 Quá trình phân đoạn của phương pháp SS-CDC.13 Hình 7 Hoạt động của kỹ thuật Dual Mode Chunking trong bộ phân đoạn MUCH .14 Hình 8 Hoạt động của bộ Bloom Filter .15 Hình 9 Ảnh hưởng của hiện tượng byte shifting với giải thuật AE. 17 Hình 10 Tác động của hiện tượng byte shifting với giải thuật RAM. 18 Hình 11 Xác định điểm cắt chính thức với 𝐷12 < 𝑊, 𝐷23 < 𝑊, 𝐷34 ≥ 𝑊 và 𝑃1 là điểm cắt.20 Hình 12 Xác định điểm cắt chính thức với 𝐷12 ≥ 𝑊, 𝐷23 < 𝑊, 𝐷34 ≥ 𝑊 và 𝑃1, 𝑃2 là điểm cắt .21 Hình 13 Sơ đồ thiết kế phần cứng của bộ phân đoạn song song .22 Hình 14 Phần cứng của bộ Chunking Module.
23 Hình 15 Thiết kế của bộ Chunking Module .25 Hình 16 Máy trạng thái của bộ Chunking Controller .25 Hình 17 Mạch phần cứng cho giải thuật PCI. 27 Hình 18 Phần cứng của bộ Marshalling Module .28 Hình 19 Thiết kế của bộ Marshalling Module. 29 Hình 20 Máy trạng thái của bộ Data Request. 30 Hình 21 Mô hình kiểm thử thiết kế đa luồng.
31 Hình 22 Kết quả khi phân đoạn tuần tự với giải thuật PCI bằng phần mềm .32 Hình 23 Kết quả khi phân đoạn song song với giải thuật PCI bằng phần mềm.33 vii Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh Hình 24 Mô phỏng trên dạng sóng kết quả của bộ Chunking Module .34 Hình 25 Mô phỏng trên dạng sóng kết quả của bộ Marshalling Module .34 Hình 26 Kết quả mô phỏng khi phân đoạn song song với thiết kế phần cứng.35 Hình 27 Kết quả tổng hợp tài nguyên cho thiết kế 4 luồng .36 Hình 28 Kết quả tốc độ mạch của thiết kế 4 luồng trường hợp Slow 1100 mV 85C .36 Hình 29 Số lượng đoạn dữ liệu lỗi được tạo ra khi thay đổi kích thước bộ nhớ đệm .38 Hình 30 Thông lượng của thiết kế phân đoạn 2 luồng với các cấu hình bộ nhớ đệm .40 Hình 31 Thông lượng của thiết kế phân đoạn 4 luồng với các cấu hình bộ nhớ đệm .41 Hình 32 Thông lượng của thiết kế phân đoạn 8 luồng với các cấu hình bộ nhớ đệm .41 Hình 33 Thông lượng của thiết kế phân đoạn 16 luồng với các cấu hình bộ nhớ đệm .42 Hình 34 Thông lượng của thiết kế phân đoạn 32 luồng với các cấu hình bộ nhớ đệm .42 Hình 35 So sánh tốc độ xử lý của các thiết kế. 44 viii Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh DANH SÁCH BẢNG SỐ LIỆU Bảng 1 So sánh các giải thuật CDC.16 Bảng 2 Bảng chân phần cứng của bộ Chunking Module .23 Bảng 3 Bảng chân phần cứng của bộ Marshalling Module .28 Bảng 4 Danh sách các tập dữ liệu dùng trong nghiên cứu .36 Bảng 5 So sánh giữa giải thuật PCI và phương pháp phân đoạn đề xuất.39 Bảng 6 Kết quả tổng hợp của thiết kế phần cứng .43 Bảng 7 Định nghĩa các thuật ngữ được sử dụng .50 ix Luận văn thạc sĩ GVHD: TS.
Trần Hoàng Linh 1.1 Lý do chọn đề tài Dữ liệu số là một nguồn tài nguyên đặc biệt có thể khai thác vô cùng tận nhưng không bao giờ cạn kiệt.