はじめに
Xilinx Vitis の中を調べるのその2。
今回は、
- C SIMULATION => Run C Simulation
を実行した時の生成ファイルをみていきます。
C SIMULATION => Run C Simulation で生成されたファイル
solution1 ディレクトリの下に以下のファイルが生成されました。
- csim (ディレクトリ)
- solution1.log
C SIMULATION => Run C Simulationを実行している最中に、下記のような csim.tcl というファイルも生成されますが、その後、消されています。
tcl ファイルで、このファイルを使って、csim_design コマンドを行っているんですね。。。
############################################################ ## This file is generated automatically by Vitis HLS. ## Please DO NOT edit it. ## Copyright 1986-2022 Xilinx, Inc. All Rights Reserved. ############################################################ open_project multi_apuint add_files multi_apuint.cpp add_files -tb testbench_multi_apuint.cpp open_solution "solution1" -flow_target vivado set_part {xc7z010iclg225-1L} create_clock -period 10 -name default #source "./multi_apuint/solution1/directives.tcl" csim_design -quiet
csim ディレクトリ
csim ディレクトリには、下記の2つのディレクトリが生成されます。
- build
- report
build ディレクトの下には、
- Makefile.rules
- csim.exe
- csim.mk
- obj
- multi_apuint.d
- multi_apuint.o
- testbench_multi_apuint.d
- testbench_multi_apuint.o
- run_sim.tcl
- sim.sh
が生成されます。
csim.exe を生成するためのもののようです。sim.sh の中で、vitis_hls に対して、run_sim.tcl ファイルを読み込んで実行しています。
#!/bin/sh # ============================================================== # Vitis HLS - High-Level Synthesis from C, C++ and OpenCL v2022.1 (64-bit) # Tool Version Limit: 2022.04 # Copyright 1986-2022 Xilinx, Inc. All Rights Reserved. # ============================================================== # The next line restarts using autoesl tclsh \ exec /mnt/usb/XILINX/Vivado/2022.1/Vitis_HLS/2022.1/bin/vitis_hls run_sim.tcl
csim.exe を実行すると、
./csim.exe multi_out = 0 multi_out = 2 multi_out = 6 multi_out = 12 multi_out = 20 multi_out = 30 multi_out = 42 multi_out = 56 multi_out = 72 multi_out = 90
になりました。
report ディレクトリの下には、
- _csim.log
が生成されます。_csim.log の内容は、csim.exe を実行したもののようです。
INFO: [SIM 2] *************** CSIM start *************** INFO: [SIM 4] CSIM will launch GCC as the compiler. make: 'csim.exe' is up to date. multi_out = 0 multi_out = 2 multi_out = 6 multi_out = 12 multi_out = 20 multi_out = 30 multi_out = 42 multi_out = 56 multi_out = 72 multi_out = 90 INFO: [SIM 1] CSim done with 0 errors. INFO: [SIM 3] *************** CSIM finish ***************
vitis_hls run_sim.tcl を実行してみると
vitis_hls run_sim.tcl ****** Vitis HLS - High-Level Synthesis from C, C++ and OpenCL v2022.1 (64-bit) **** SW Build 3526262 on Mon Apr 18 15:47:01 MDT 2022 **** IP Build 3524634 on Mon Apr 18 20:55:01 MDT 2022 ** Copyright 1986-2022 Xilinx, Inc. All Rights Reserved. source /mnt/usb/XILINX/Vivado/2022.1/Vitis_HLS/2022.1/scripts/vitis_hls/hls.tcl -notrace INFO: [HLS 200-10] Running '/mnt/usb/XILINX/Vivado/2022.1/Vitis_HLS/2022.1/bin/unwrapped/lnx64.o/vitis_hls' INFO: [HLS 200-10] For user 'vengineer' on host 'LAPTOP-HGGR6RPK.localdomain' (Linux_x86_64 version 5.10.60.1-microsoft-standard-WSL2) on Sun Jun 26 13:39:13 JST 2022 INFO: [HLS 200-10] On os Ubuntu 20.04.3 LTS INFO: [HLS 200-10] In directory '/mnt/c/Users/haray/home/src/vitis/multi_apuint/solution1/csim/build' Sourcing Tcl script 'run_sim.tcl' INFO: [HLS 200-1510] Running: source run_sim.tcl multi_out = 0 multi_out = 2 multi_out = 6 multi_out = 12 multi_out = 20 multi_out = 30 multi_out = 42 multi_out = 56 multi_out = 72 multi_out = 90 INFO: [HLS 200-112] Total CPU user time: 0.43 seconds. Total CPU system time: 0.31 seconds. Total elapsed time: 2.08 seconds; peak allocated memory: 19.297 MB. INFO: [Common 17-206] Exiting vitis_hls at Sun Jun 26 13:39:13 2022...
おわりに
次回は、
- C SYNTHESIS => Run C Synthesis
で生成されるファイルをみてみます。