1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khóa luận tốt nghiệp Kỹ thuật máy tính: Hiện thực khối floating point tích hợp vào bộ xử lý RISC-V 32-bit

67 2 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Hiện Thực Khối Floating Point Tích Hợp Vào Bộ Xử Lý RISC-V 32-Bit
Tác giả Đỗ Tuấn Thuận
Người hướng dẫn ThS. Hồ Ngọc Diễm
Trường học Đại Học Quốc Gia TP. Hồ Chí Minh
Chuyên ngành Kỹ Thuật Máy Tính
Thể loại khóa luận tốt nghiệp
Năm xuất bản 2024
Thành phố TP. HO CHÍ MINH
Định dạng
Số trang 67
Dung lượng 56,39 MB

Cấu trúc

  • 3.3.1. Kiến trúc khối thiết kế tổng quan giao tiếp qua AX14 (0)
  • 3.3.2. Các IP của Xilinx trong thiết kế Block Design (55)
  • Chương 4. Kết quả đánh giá và kiểm định .......................---- 2-2 s++2++2zx+zzxvzzxezrxez 59 4.1. Kết quả độ chính xác của khối FPU..........................-- 2 2 2 22 2+E++E++E++E+zxezxeee 59 4.2. Kết quả mô phỏng của khối RISC-V trên phần mềm ModelSim (57)
    • 4.2.1. Trường hợp kiểm định l..............................--- 2-5 s+£+££+£++E+rzrerrrreres 60 4.2.2. Trường hợp kiểm định 2.......................--- ¿+22 <+++E++E£+EE+EEEEEzEzErrsrreres 61 4.2.3. Kết quả sau khi Synthesis và Implement trên phan mềm Vivado (58)
    • 4.2.4. So sánh kết quả với các đề tài nghiên cứu về bộ nhân Vedic (63)
  • Chương 5. Kết luận và hướng phát triÊn.......................----- 2-2 2 22+ ++£++££+E+z£z+£zzzxez 67 (65)

Nội dung

TÓM TẮT KHÓA LUẬNNội dung chính của luận văn xoay quanh việc tìm hiểu nghiên cứu và thiết kế bộ xử lý RISC-V cũng như khối Floating point, các số dấu cham động được chuyểnđổi dựa vào chu

Các IP của Xilinx trong thiết kế Block Design

3.3.2.1 IP Microblaze giao tiếp với memory microblaze_ 0 microblaze_0_local_memory

M_AXI_DP -E|:› LMB_Clk Reset

Khối IP Microblaze kết nối với bộ nhớ cục bộ (Local memory) thông qua bộ nhớ BRAM, được giao tiếp qua bus LMB (Local Memory Bus) với hai tín hiệu chính.

ILMB: Instruction interface, Local Memory Bus: giao tiếp lệnh theo chuẩn bus

LMB, chỉ dùng cho giao tiếp BRAM.

DLMB: Data interface, Local Memory Bus: giao tiếp dữ liệu theo chuẩn bus

LMB, chi dùng cho giao tiếp BRAM.

3.3.2.2 IP AXI UART Lite axi_uartlite_0O

AXI Uart Lite là giải pháp giao tiếp ánh xạ bộ nhớ với thông lượng thấp, cho phép thực hiện trao đổi dữ liệu từng giá trị một trong mỗi lần thực hiện Dữ liệu có thể di chuyển đồng thời theo cả hai hướng giữa Master và Slave, với kích thước dữ liệu khác nhau Như hình 3.14, giá trị được nạp vào bus S_AXI và xuất ra thông qua bus UART.

Kết quả đánh giá và kiểm định . 2-2 s++2++2zx+zzxvzzxezrxez 59 4.1 Kết quả độ chính xác của khối FPU 2 2 2 22 2+E++E++E++E+zxezxeee 59 4.2 Kết quả mô phỏng của khối RISC-V trên phần mềm ModelSim

Trường hợp kiểm định l - 2-5 s+£+££+£++E+rzrerrrreres 60 4.2.2 Trường hợp kiểm định 2 . - ¿+22 <+++E++E£+EE+EEEEEzEzErrsrreres 61 4.2.3 Kết quả sau khi Synthesis và Implement trên phan mềm Vivado

0a43031b addi t1,t1,164 3b63839b addi t2,t2,950 f00300d3 fmv.w.x ft1,t1 f0038153 fmv.w.x ft2,t2 1820f1d3 fdiv.s ft3,ft1,ft2

Hình 4.4 Tập lệnh của trường hợp kiểm định 1

Hình 4.5 trình bày kết quả mô phỏng lệnh nạp của trường hop 1 Lệnh ADDI được thực hiện để cộng 2 giá trị, sau đó đưa giá trị vào 2 thanh ghi REG FILE chứa các số nguyên 2 Kết quả sẽ được lưu vào 2 thanh ghi tạm, cụ thể là thanh ghi t1 và thanh ghi t2, do việc thực hiện chuyển đổi từ thanh ghi nguồn sang thanh ghi đích trong cả 2 phép toán.

Hình 4.6 Kết quả mô phỏng phép toán cộng số nguyên

FMV: Ta thực hiện lệnh move dé chuyên 2 thanh ghi giá trị số nguyên khi ta vừa cộng vào đề đưa vào thanh ghi số dấu chấm động.

44 [Testbench/RV32IF_top_Inst/Datapath_Inst0/FP_RegisterFile_I 7 3200000000

3-44 /Testbench/RV32IF_top_Inst/Datapath_Inst0/FP_RegisterFile_I ví 3200000000

Hình 4.7 Kết qua mô phỏng lệnh di chuyền thanh ghi

FDIV: Chia hai số dấu chấm động sau khi chuyển đổi giá trị từ thanh ghi số nguyên sang thanh ghi số dấu chấm động Việc thực hiện phép chia số dấu chấm động sẽ mất 30 chu kỳ để nạp và cho ra kết quả.

Khởi tao input A là 41e20000 (28.25) va input B là c0ae1000

41620337 lui t1,0x41457 cũae13h7 lui t2,0xcOael f00300d3 fmv.w.x = ft1,t1

0038153 fmv.w.x T(2,12 282081d3 fmax.s Tt3,ft1,ft2 282091d3 fmin.s ft3, ft, ft?

08201253 fsub.s ft4,ft1,ft2 1020f2d3 fmul.s ft5, ft1, ft?

2001843 fmv.x.w s1,ft3 e00289d3 {mv.xw_ s3,ft5

Hình 4.9 Tập lệnh của trường hợp kiểm định 2

After comparing FMIN/EMAX, the WB will return the results to the register bench RVSZIF_top_InstDatapath_InstO/FP_RegisterFie_InstO/out_data_A nch/V32iF_top_InstDatapath_Inst)/FP_Registerrie_InstOjout data 6.

Kết quả mô phỏng các lệnh so sánh trên số dấu chấm động cho thấy kết quả FADD đạt được là 41b67bff (22.810) và kết quả FMUL cũng trên số dấu chấm động với giá trị c319aa20.

/RV32IF_top_Inst/Datapath_Inst0)FP_RegisterFle_inst

Hình 4 11 Kết quả mô phỏng phép toán nhân và cộng trên số dau cham động

Lệnh FMV được sử dụng để chuyển giá trị từ thanh ghi số dấu chấm động sang thanh ghi số nguyên Sau khi hoàn tất lệnh move, chúng ta có thể tiếp tục sử dụng các thanh ghi số dấu chấm động để thực hiện các phép toán khác Trong phép FSUB, kết quả thu được là 4206c200 (33.689), như thể hiện trong hình 4.9 dưới đây.

[Testbench/DM_wr_en fTestbench/done_load_inst

‘x .bench/RV32IF_top_Inst/Datapath_Inst0/FP_RecisterFile_InstO/out_dat

1 ô bench/RV32IF_top_Inst/Datapath_Inst0/FP_RegisterFile_Inst0/out_dat }32h00000000

Hình 4.12 Kết quả mô phỏng phép toán trừ số dấu cham động

4.2.3 Kết quả sau khi Synthesis và Implement trên phần mềm Vivado

The analysis reveals a Worst Negative Slack (WNS) of 0.970 ns, a Worst Hold Slack (WHS) of 0.088 ns, and a Worst Pulse Width Slack (WPWS) of 4.358 ns Notably, the Total Negative Slack (TNS), Total Hold Slack (THS), and Total Pulse Width Negative Slack (TPWS) all measure 0.000 ns Importantly, there are no failing endpoints reported in this evaluation, indicating robust performance across all metrics.

Total Number of Endpoints: 10778 Total Number of Endpoints: 10776 Total Number of Endpoints: 7015 Alluser specified timing constraints are met.

The frequency will be generated in the specified XDC file located in the constraints folder, determining the system's frequency With this constraint, the clock period is set to 10.000 ns, with a rise time of 0 ns and a fall time occurring after 5.000 ns.

Q + * — KEM X / 8 Q9 l1 ¡ create clock -period 10.000 -name Clk -waveform {0.000 5.000} [get_ports Clk]

Tcl Console Messages Log Reports | Design Runs DRC Methodology Power Timing š €£$ 4Q = = Clock Summary

General Information ^ Name Waveform Period(ns) Frequency (MHz) Timer Settings Clik {0.000 5.000} 10.000 100.000

Design Timing Summary Clock Summary (1)

Inter-Clock Paths > Other Path Grnuns_ - - 1<

Power analysis from Implemented netlist Activity On-Chip Power derived from constraints files, simulation files or vectorless analysis {| Dynamic: 0.214W (47%)

Total On-Chip Power: 0.457 W [ Clocks: 0.023W (11%)

Design Power Budget: Not Specified [ | Signals: 0.064W (30%)

Power Budget Margin: NIA i vo: 0.078W (36%)

Power supplied to off-chip devices: OW

Launch Power Constraint Advisor to find and fix invalid switching activity

Utilization Post-Synthesis | _Post-Implementation

Resource Utilization Available Utilization % LUT 6759 303600 2.23 LUTRAM 40 130800 0.03

So sánh kết quả với các đề tài nghiên cứu về bộ nhân Vedic

Nghiên cứu này ứng dụng thuật toán Vedic trong khối nhân của dấu chấm động, với kết quả so sánh trên FPGA Virtex 707 được trình bày trong bảng 4.3 Nghiên cứu [11] cho thấy sự kết hợp giữa bộ cộng và DSP dẫn đến tiêu thụ năng lượng cao hơn, trong khi thuật toán Vedic không sử dụng DSP để tối ưu hóa tốc độ tính toán Nghiên cứu [12] là một trong những nghiên cứu đầu tiên áp dụng Vedic cho tính toán số dấu chấm động, nhưng chưa tối ưu về tốc độ và tài nguyên Nghiên cứu [14] kết hợp hai thuật toán Karatsuba và Urdhva-Tiryagbhyam nhằm giảm đáng kể thời gian delay Nghiên cứu [13] tập trung vào khối nhân Vedic 3x3, cho phép tính toán song song Đề xuất của luận văn sử dụng khối nền tảng 2x2, tuy nhiên thiết kế này tiêu tốn nhiều tài nguyên hơn và việc sử dụng KSA cho bộ cộng số mũ chưa được tối ưu, dẫn đến hiệu suất chưa đạt yêu cầu so với nghiên cứu [13].

Luận | Floating- 32 piece An green Design of văn | Point Floating Floating Vedic

Single- factor Vedic | €lement IEEE 754 Precision | Multiplier[12] | Multiplier Floating Fused layout for point

Multiplier- excessive pace | Multiplie[13] adder Unit packages the on use of

Karatsuba set of rules and Urdhva

Bang 4.1 So sánh kết quả của khối nhân số cham động

Ngày đăng: 23/12/2024, 23:59

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[2] V. Patil, A. Raveendran, P. M. Sobha, A. D. Selvakumar, and D. Vivian, “Out of order floating point coprocessor for RISC V ISA,” in 19th InternationalSymposium on VLSI Design and Test, VDAT 2015, Ahmedabad, India, June 26-29, 2015, pp. 1-7 Sách, tạp chí
Tiêu đề: Outof order floating point coprocessor for RISC V ISA
[4] R. P. Colwell, C. Y. Hitchcock, E. D. Jensen, H. M. Brinkley Sprung and C. P. Kollar, "Instruction sets and beyond: computers, complexity, and controversy,, "IEEE Computer, 1986 Sách, tạp chí
Tiêu đề: Instruction sets and beyond: computers, complexity, and controversy
[5] | R. Cherian, N. Thomas and Y. Shyju, "Implementation of Binary to Floating Point Converter using HDL," no. 461-64, 2013 Sách, tạp chí
Tiêu đề: Implementation of Binary to FloatingPoint Converter using HDL
[10] Aniruddha Kanhel, Shishir Kumar Dasl and Ankit Kumar Singh, “DESIGN AND IMPLEMENTATION OF LOW POWER MULTIPLIER USING VEDICMULTIPLICATION TECHNIQUE”, International Journal of Computer Science and Communication, Vol. 3, No. 1, January-June 2012, pp. 131 -132 Sách, tạp chí
Tiêu đề: DESIGNAND IMPLEMENTATION OF LOW POWER MULTIPLIER USINGVEDICMULTIPLICATION TECHNIQUE
[11] Wilson José, Ana Rita Silva, H. Neto, M. Véstias, “Floating-Point Single- Precision Fused Multiplier-adder Unit on FPGA”, 2014 Sách, tạp chí
Tiêu đề: Floating-Point Single-Precision Fused Multiplier-adder Unit on FPGA
[12] Swapnil Suresh Mohite, Sanket Sanjay Nimbalar, Madhav Makarand Bhathande, Rashmi Rahul Kulkarni, "32 piece Floating factor Vedic Multiplier", IOSR magazine of VLSI and sign Processing(IOSR-JVSP), extent 6, problem 2, Ver.I, pp 16-20, Mar-Apr.2016 Sách, tạp chí
Tiêu đề: 32 piece Floating factor Vedic Multiplier
[13] Soumya Havaldar, k S Gurumurthy, "Design of Vedic IEEE 754 Floating point Multiplier", IEEE international conference On modern dispositions In Electronics records conversation era, pp 1131-1135, can also 20-21,2016 Sách, tạp chí
Tiêu đề: Design of Vedic IEEE 754 Floating pointMultiplier
[15] Himanshu Thapliyal and M.B Srinivas, “An EfficientMethod of Elliptic Curve Encryption Using AncientIndian Vedic Mathematics”, IEEE, 2005 Sách, tạp chí
Tiêu đề: An EfficientMethod of EllipticCurve Encryption Using AncientIndian Vedic Mathematics
[1] Jinde Vijay Kuma , Chintakunta Swapna , Boya Nagaraju and Thogata Ramanjappa, “FPGA Based Implementation of Pipelined 32-bit RISC Processor withFloating Point Unit, vol. 4, no.4, April 2014, pp.01-07 Khác
[3] Noor Alhuda Saad Adela, Amani Najeeb Ben Yousuf and Mohamed Muftah Eljhani, Design and Implementation of Single Precision Floating-point Arithmetic Logic Unit for RISC Processor on FPGA, 2023 IEEE 3rd International Maghreb Meeting of the Conference on Sciences and Techniques of Automatic Control andComputer Engineering (MI-STA), Benghazi, Libya 21-23 May 2023 Khác
[6] J. Poornima, G.V.Ganesh, M. Jyothi, M. Shanti and A.Jhansi Rani,”Design and implementation of pipelined 32-bit Advanced RISC processor for various D.S.P Applications”, Proceedings of International Journal of Computer Science andInformation Technology, ISSN: 3208-3213, Vol-3(1), June-2012 Khác
[7] Samir Palnitkar,’Verilog HDL: A Guide to Digital Design and Synthesis”, Prentice Hall, 2 nd Edition, 2003 Khác
[9] Galani Tina G,Riya Saini and R.D.Daruwala, ”Design and Implementation of 32-bit RISC Processor using Xilinx”, International Journal of Emerging Trends in Electrical and Electronics(JETEE)-ISNN:2320-9569,Vol No.5,Issue 1,July-2013 Khác
[14] Arish S, R ok Sharma, " An green Floating element Multiplier layout for excessive pace packages the use of Karatsuba set of rules and Urdhva Triyagbhyam calculation, IEEExplore, pp 303-308, July 2015 Khác

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN