关于esl_0.1_2019目录说明
作者:互联网
-
/workspace/esl_0.1_2019/esl_0.1/testcase/pan
(使用esl_0.1工具进行测试,目标为了生成Verilog .v文件) -
testcasr/pan以下有三个文件夹
每个处理的文件夹都必须含有boards、run.tcl 和原始.c文件
包含两个文件夹byFunction & byHand
byFunction 处理的是removeStruct函数所得.bc文件
该文件要添加含有struct的C文件与经过removeStruc函数处理所得的bc文件,
检查:
%set design struct_variabels(此为C文件的名字)
%run_hw rm_struct.bc(此为经过removeStruc函数处理所得的bc文件)
%中间注释掉
%运行 …/…/…/…/bin/Linux_64/esl run.tcl,在output中生成所得Verilog文件
%运行lli hw.ll检查结果
byHand处理的是手动打断Struct函数生成的.c文件
该文件只要添加手动打断struct的C文件,bc文件通过run.tcl生成。
%set design struct_variabels(此为C文件的名字)
%打开exec clang ${design}.c -emit-llvm -c -O1 -o ${design}_O1.bc
%打开run_hw ${design}_O1.bc
%运行 …/…/…/…/bin/Linux_64/esl run.tcl,在output中生成所得Verilog文件
%运行lli hw.ll检查结果
(1)struct_without_nesting (处理struct不包含嵌套)
(2)struct_with_one_nesting (处理struct包含一层嵌套)
(3)struct_with_more_nesting (处理struct包含多层嵌套)
当用ESL0.1以上生成Verilog文件进行测试,目标路径:/home/cpan/workspace/HLSTest/MPS
(MPS是esl的项目名称)
下面对应上面三个文件夹
(1)struct_without_nesting (处理struct不包含嵌套)
(2)struct_with_one_nesting (处理struct包含一层嵌套)
(3)struct_with_more_nesting (处理struct包含多层嵌套)
每个文件夹应该包含四个基础文件
main.sdc:create_clock -period 10 -name clock [get_ports clk]
用MPS处理时设置为get_ports clk。
verilog :将之前ouput中的Verilog文件copy进来
vivado.tcl:不同仿真,需要不同vivado.tcl文件
%注意仿真的板子类型,后期都需要选择。
synthesize.sh :以上设置完毕,./synthesize.sh,
进入HLSTest/MPS/struct_without_nesting/byFunction/HLS_output/Synthesis/mps_flow,通过main.xml文件查看结果。
simulation:是为了vivado 2018.1对上述Verilog文件进行仿真的simulation Sources,Verilog文件放在Design Sources中,准备完毕即可进行Run Simulation得出cycles数。
%注意main.v中的选择注释哪些文件从而达到选择软件的效果。
标签:文件,struct,bc,0.1,2019,nesting,esl,Verilog 来源: https://blog.csdn.net/pc153262603/article/details/96480947