使用高级综合HLS,开发 2D 中值滤波器算法 (HLS) 。
概述
该项目包含使用高级综合 (HLS) 的 2D 中值滤波器算法的实现。该项目的目标是在不到 3 ms的时间内对测试图像进行去噪,同时消耗不到 25% 的可用 PL 资源。特征如下:
- 包含具有任意精度数据类型的高效数据类型管理。
- 采用 HLS 编译指示来确保最佳系统性能。
- 通过多个测试用例进行验证。
内容
该项目包含以下内容:
- 2D中值滤波器算法的源代码文件
- C 仿真文件
- 协同仿真文件
- 综合文件
- 包含干净和有噪声的图像数据的 CSV 文件
- 仿真和综合过程的屏幕截图
设置和安装
该项目已在 Vivado HLS 中设计和测试。要设置并运行项目:
- 克隆此仓库:git clone <repository_link>
- 打开 Vivado HLS 软件并导入项目。
- 加载包含图像数据的 CSV 文件。
- 运行 C 仿真以确保算法正常运行。
- 进行综合和协同仿真。
用法
将项目导入 Vivado HLS 后:
- 运行 C 仿真以验证中值滤波器的功能。
- 执行综合过程以查看资源利用率报告并进行必要的调整。
- 执行协同仿真以确保综合设计的行为符合预期。
请注意:可能需要根据所使用的 FPGA 板调整代码中的 HLS 编译指示以获得最佳性能。
最终设计应用于测试数据时,在不到 12 ms的时间内实现了去噪,总体 PL 资源利用率约为 13%。
代码
> ❝
>https://github.com/suisuisi/Xilinx_Library/tree/main/HLS/2D-median-filter-algorithm-HLS
> ❞
原文:OpenFPGA
作者:碎碎思
相关文章推荐
- 开源的Bluespec SystemVerilog (BSV)语言表现如何?
- 优秀的 Verilog/FPGA开源项目介绍(三十七)- MATH库
- FPGA 的数字信号处理:重写 FIR 逻辑以满足时序要求
- FPGA 的数字信号处理:Verilog 实现简单的 FIR 滤波器
- FPGA 设计中经常犯的 10 个错误
更多FPGA干货请关注FPGA的逻辑技术专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。