目录
3.1 Classic Configuration Settings
3.2 New Configuration Settings
1. 简介
Vitis 2024.1 已经完全不支持传统界面了,新版软件提供一个更加统一和现代化的用户界面。
传统的 Vitis GUI 像是一位老朋友,我们熟悉它的每一个角落,每一个命令,就像回到自己温馨的家。新的统一软件界面却像是搬进了一个未知的新城市,尽管它充满了现代化的便利和先进的功能,但那份亲切感和熟悉度却需要时间来建立。
命令行选项的变更、菜单结构的重组、工具链的整合,每一个细节都需要重新学习。笔者不得不告别那些熟悉的命令行快捷方式,转而学习新的操作方法。
比如运行 vitis -w <workspace> 将直接进入新的界面,不在提供进入传统 SDK 的模式。
这个过程中,我们可能会感到迷茫,甚至有些挫败。
但正如所有的成长过程一样,适应是必经之路。随着时间的推移,我们将逐渐掌握新界面的奥秘,发现它带来的高效和便捷。新的统一软件界面不仅仅是一个工具的更新,它是我们作为开发者进步的象征,是我们与时俱进的证明。
据说从2023.2版本开始,Vitis统一IDE整合了多个工具,以便在Vitis、Vitis AIE编译器/仿真器和Vitis HLS中提供一致的图形用户界面。
本文将探索这种变换的一角,开启笔者适应新GUI的过程。
Vitis IDE的新特性简述如下:
- 用户界面友好:Flow Navigator助力工作流程管理,模板样本启迪新手,多任务并行执行提升效率。
- AI引擎优化:软件仿真在x86环境下加快迭代,AI引擎的流水线和微代码视图得到多核支持和筛选功能增强。
- 界面现代化:提供明亮和暗色两种主题,自定义快捷键简化操作,命令选用板更加人性化,C++语法高亮和智能提示功能。
- 灵活切换:GUI和CLI模式无缝转换,结合两者优势,配置文件实时展示,CLI构建项目,GUI用于调试和核心分析,操作记录可用于批处理。
2. 界面展示
2.1 启动方式
Vitis Unified 把 Vitis HLS 和 SDK 合并了。
启动 Vitis Unified IDE:
vitis -w <workspace>
workspace 是一个文件夹,用于保存设计的各种组件和项目。
3. HLS Settings 对比
在 Vivado IP Flow Target 流程中。
3.1 Classic Configuration Settings
3.1.1 config_array_partition
- complete_threshold, defalt=4
- throughput_driven, default=auto, (auto/off)
3.1.2 config_compile
- enable_auto_rewind, default=true
- ignore_long_run_time, default=false
- name_max_length, default=80
- no_signed_zeros, default=false
- pipeline_loops, default=64
- pipeline_style, default=frp, (stp/flp/frp)
- pragma_strict_mode, default=false
- pre_tcl
- unsafe_math_optimizations, default=false
3.1.3 config_dataflow
- default_channel, default=pingpong, (fifo/pingpong)
- disable_fifo_sizing_opt, default=false
- fifo_depth, default=2
- override_user_fifo_depth, default=0
- scalar_fifo_depth, default=2
- start_fifo_depth, default=2
- strict_mode, default=warning, (off/warning/error)
- strict_stable_sync, default=false
- task_level_fifo_depth, default=2
3.1.4 config_debug
- directory, default=.debug
- enable, default=false
3.1.5 config_export
3.1.6 config_interface
3.1.7 config_op
3.1.8 config_rtl
3.1.9 config_schedule
- enable_dsp_full_reg, default=true
3.1.10 config_storage
- fifo impl, default=autosrl, (bram/lutram/ram/memory/srl)
- fifo auto_srl_max_bits, default=1024
- fifo auto_srl_max_depth, default=2
3.1.11 config_unroll
- tripcount_threshold, default=0
3.2 New Configuration Settings
4. 创建 HLS 工程
在 Vitis Unified IDE 中,PL 内核被创建为 HLS 组件,你可以在 C/C++ 源代码上运行 C 仿真,使用编译指示或指令优化设计,综合和分析结果,并将设计导出为 Vivado IP 与 Vivado Design Suite 一起使用,或作为 Vitis 内核 ( .xo ) 文件在更高级别的系统项目中使用。
4.1 选择 HLS 组件
4.2 名称和路径
4.3 创建配置文件
4.4 选择综合源文件和TestBench
这里我们先跳过,后续再添加。
编写良好的测试平台可以极大地提高工作效率,因为 C 函数的执行速度比 RTL 仿真快几个数量级。在综合之前使用 C 来开发和验证算法比开发和调试 RTL 代码要快得多。
4.5 选择硬件平台
4.6 配置Clock和Flow
当未指定时钟不确定度时,默认时钟不确定性为时钟周期的 27%。
4.7 查看摘要
4.8 新建组件完毕
5. 总结
在Vitis 2024.1版本中,传统的Vitis GUI已经被全新的统一软件界面所取代。这个变化虽然初看令人生疏,但它实际上为开发者们带来了更加高效和现代化的工作环境。新界面的Flow Navigator、多任务并行执行、AI引擎优化、以及界面的现代化设计,都极大地提升了工作流程的管理和执行效率。此外,新的统一软件界面还提供了GUI和CLI模式的无缝转换,使得项目构建和调试更加灵活。虽然适应新界面需要时间,但随着熟悉度的提升,开发者们将能够充分利用这些新特性,以更快的速度迭代和优化他们的工程。总的来说,Vitis的这次更新不仅仅是界面上的改变,更是开发者与时俱进、不断进步的体现。