其他分享
首页 > 其他分享> > 关于esl_0.1_2019目录说明

关于esl_0.1_2019目录说明

作者:互联网

  1. /workspace/esl_0.1_2019/esl_0.1/testcase/pan
    (使用esl_0.1工具进行测试,目标为了生成Verilog .v文件)

  2. 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