Thêm INTERFACE để tạo bộ điều hợp AXI4LiteS để IP-XACT được tạo trong bước xuất RTL.. Hình 8: Áp dụng bundle để gán tín hiệu điều khiển chức năng cho bộ điều hợp AXI4LiteLưu ý rằng các b
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HỒ CHÍ MINH
KHOA ĐIỆN-ĐIỆN TỬ
BÁO CÁO CUỐI KÌ
SINH VIÊN THỰC HIỆN:
HỌC KỲ: 2 – NĂM HỌC: 2021-2022
TP HỒ CHÍ MINH – THÁNG…/NĂM …
Trang 2MỤC LỤC
1 Tạo một project mới 3
2 RUN C Simulatuon 4
3 Tổng hợp thiết kế 5
4 Chạy RTL/C CoSimulation, chọn Verilog 6
5 Setup IP-XACT Adapter 6
6 Tạo IP-XACT Adapter 10
7 Tạo 1 project trên Vivado 12
8 Xuất phần cứng cùng với dòng bit đã tạo sang SDK 14
9 Kết nối phần cứng 16
Trang 3Sơ đồ tổng quan các bước thực hiện project với zedboard:
Hình 1 Sơ đồ các bước thực hiện project
1 Tạo một project mới
1.1 Tạo 1 project mới trong Vivado HLS và chọn vào Zedboard
(XC7Z020CLG484-1)
1.2 Vào Vivado HLS: chọn Start > All Programs > Xilinx Design Tools > Vivado
2017.4 >Vivado HLS > Vivado HLS 2017.4 Lúc này một Getting Started GUI sẽ xuất hiện
1.3 Trong Getting Started GUI, chọn Create New Project để tạo 1 project mới
1.4 Chọn Brown, tạo đường dẫn sau c:\xup\hls\labs\lab4 vào tạo project với tên fir.prj 1.5 Tiếp theo tạo tệp fir và thêm vào 2 file fir.c và fir_coef.dat
1.6 Cuối cùng, tạo Solution Name field với tên là solution1 vào chọn Zedboard cho
project
1.7 Chọn file fir.c
Trang 4Hình 2.Code file fir.c
Bộ lọc FIR x mẫu ngõ vào Cả hai đều được định nghĩa kiểu dữ liệu data_t Các hệ
số được tải trong mảng c kiểu coef_t từ tệp có tên fir_coef.dat nằm trong thư mục hiện tại Thuật toán tuần tự được áp dụng và giá trị tích lũy (lấy mẫu) được tính trong biến acc kiểu acc_t
1.8 Chọn fir.h trong mục outline
Hình 3 Code file fir.h
1.9 Chọn fir_test.c để bắt đầu RUN C Simulationq
2 RUN C Simulatuon
Chọn Project>Run C Simulation Lúc này ở cửa sổ console thu được kết quả
Trang 5Hình 4 Kết quả sau khi chạy
3 Tổng hợp thiết kế
3.1 Chọn Solution > Run C Synthesis > Active Solution để bắt đầu tiến trình tổng hợp 3.2 Khi đã tổng hợp xong, thu được trong INTERFACE
Trang 6Hình 5 Kết quả trong Interface
3.3 Thêm PIPELINE vào vòng lặp và tổng hợp lại thiết kế để xem kết quả tổng hợp
4 Chạy RTL/C CoSimulation, chọn Verilog
5 Setup IP-XACT Adapter
5.1 Thêm INTERFACE để tạo bộ điều hợp AXI4LiteS để IP-XACT được tạo trong bước xuất RTL
5.1.1 Mở fir.c
5.1.2 Chọn tab Directve
5.1.3 Click chuột phải vào x và chọn Insert Directive
5.1.4 Trong hộp thoại Vivado HLS Directive Editor, chọn INTERFACE bằng cách sử dụng nút mũi tên danh sách xổ xuống
5.1.5 Click nút bên cạnh mode (optional), chọn s_axilite
5.1.6 Ở dòng bundle (optional), điền fir_io và click OK
Trang 7Hình 6: Chọn bộ điều hợp AXI4LiteS và đặt tên
5.1.7 Thực hiện tương tự đối với ngõ ra y
Trang 8Hình 7: Chọn bộ điều hợp AXI4LiteS và đặt tên đối với ngõ ra y
5.1.8 Áp dụng INTERFACE cho module top-level fir
Trang 9Hình 8: Áp dụng bundle để gán tín hiệu điều khiển chức năng cho bộ điều hợp AXI4Lite
Lưu ý rằng các bước 5-1-3 đến 5-1-8 ở trên sẽ tạo bản đồ địa chỉ cho x, y, ap_start ap_valid, ap_done và ap_idle, có thể được truy cập thông qua phần mềm Ngoài ra, ap_start, ap_valid, tín hiệu ap_done, ap_idle có thể được tạo thành các cổng riêng biệt trên lõi bằng cách không áp dụng RESOURCE vơi module top-level Các cổng này sau
đó sẽ phải được kết nối trong một hệ thống xử lý sử dụng GPIO IP có sẵn
Trang 106 Tạo IP-XACT Adapter
6.1 Tổng hợp lại thiết kế khi các chỉ thị đã được thêm vào Chạy RTL Export để tạo bộ điều hợp IP-XACT
6.1.1 Vì các chỉ thị đã được thêm vào, nên việc tổng hợp lại thiết kế sẽ rất an toàn Chọn Solution>Run C Synthesis> Active Solution
Kiểm tra phần Interface summary ở cuối Synthesis report để xem giao diện đã được tạo 6.1.2 Khi thiết kế được tổng hợp, chọn Solution> Export RTL để mở hộp thoại để
IP mong muốn có thể được tạo
Hình 9: Hộp thoại Export RTL
6.1.3 Click OK để tạo bộ điều hợp IP-XACT
6.1.4 Khi quá trình chạy hoàn tất, hãy mở rộng thư mục impl trong chế độ Explorer và quan sát các thư mục được tạo; ip, misc, Verilog và vhdl
Trang 11Hình 10: Bộ điều hợp IP-XACT đã được tạo
Mở rộng thư mục ip và quan sát một số tệp và thư mục con Một trong những thư mục con của quan tâm là thư mục drivers bao gồm các tệp tiêu đề, c, tcl, mdd và makefile Một tệp cần quan tâm nữa là tệp zip, là tệp kho lưu trữ ip có thể được thêm trong IP Integrator design
Hình 11 Thư mục drivers của bộ điều hợp
Trang 127 Tạo 1 project trên Vivado
7.1 Vào Vivado Tcl shell, chạy lệnh: cd c:/xup/hls/labs/lab4 và source
zed_audio_project_create.tcl for ZedBoard Lúc này trong Vivado mở ra 1 Block desig n
Hình 12 Block design 7.2 Thêm HLS IP trong IP Catalog
Chọn đường dẫn như hình sau:
Trang 13Hình 13 Thêm HLS IP trong IP Catalog 7.3 Thêm vào thiết kế 2 module với tên fir_left và fir_right
7.4 Kết nối các cổng ngõ vào và ra như hình sau:
Hình 14 Sơ đồ kết nối
7.5 Xác minh địa chỉ và xác nhận thiết kế Tạo tệp system_wrapper,
và thêm Xilinx Design Constraints (XDC)
7.5.1 Click vào Address Editor và mở rộng process_system7_0> Data nếu cần
Trang 14Hình 15: Bảng địa chỉ đã tạo
7.5.2 Chạy Design Validation (Tools > Validate Design) và xác minh không có lỗi 7.5.3 Trong chế độ sources, nhấp chuột phải vào tệp sơ đồ khối, system.bd và chọn Create HDL Wrapper để cập nhật HDL wrapper file Khi được nhắc, hãy nhấp vào OK(chọn Let Vivado manage wrapper and auto-update.)
7.5.4 Click Add Sources ở trong Flow Navigator, chọn Add or Create Constraints, và click Next
7.5.5 Click Add Files, dẫn tới folder c:\xup\hls\labs\lab4, chọn
zed_audio_constraints.xdc hoặc zybo_audio_constraints.xdc
7.5.6 Click Copy constraints files into project và click Finish
7.5.7 Click Generate Bitstream trong Flow Navigator để chạy tổng hợp, triển khai và các quy trình tạo dòng bit
7.5.8 Nhấp vào Save, Yes và OK
7.5.9 Khi quá trình tạo bit hoàn tất, một hộp lựa chọn sẽ được hiển thị với Open
Implemented Design Click vào Cancel
8 Xuất phần cứng cùng với dòng bit đã tạo sang SDK
Trang 158.2 Chắc chắn rằng tùy chọn Include Bitstream được chọn và nhấp vào OK, rời khỏi bộ thư mục đích đến thư mục dự án cục bộ
8.3 Chọn File > Launch SDK
8.4 Chọn OK
8.5 Tại SDK, chọn File > New > Board Support Package
8.6 Nhấp vào Finish với cài đặt mặc định (với hệ điều hành độc lập)
Thao tác này sẽ mở biểu mẫu Software Platform Settings hiển thị các lựa chọn OS và thư viện
8.7 Chọn OK để chấp nhận cài đặt mặc định, vì chúng ta muốn tạo một phần mềm standalone_bsp_0 dự án nền tảng mà không yêu cầu bất kỳ hỗ trợ thư viện bổ sung nào
Trình tạo thư viện sẽ chạy ở chế độ nền và sẽ tạo file xparameters.h trong đường dẫn
C:\xup\hls\labs\lab4\audio\audio.sdk\standalone_bsp_0\ps7_cortexa9_0\include\
directory
8.8 Chọn File > New > Application Project
8.9 Nhập TestApp như Project Name và đối với Board Support Package, hãy chọn Use
Existing (standalone_bsp phải là tùy chọn duy nhất)
8.10 Chọn Next, và chọn Empty Application và chọn Finish
8.11 Nhấp TestApp trong project view, bấm chuột phải vào thư mục src và chọn Import 8.12 Mở rộng General và nhấp đúp vào File System
8.13 Dẫn đến c:\xup\hls\labs\lab4 folder và nhấp OK
Trang 168.14 Chọn cả hai file zed_testapp.c và zed_audio.h cho ZedBoard hoặc zybo_testapp.c và
zybo_audio.h cho Zybo cho nhấp Finish để thêm file vào project
9 Kết nối phần cứng