HLS编程环境入门

本文介绍了HLS(高层次综合)的基本概念,阐述了HLS与VHDL/Verilog的关系,强调HLS能降低FPGA开发的时间。同时,文章探讨了HLS的关键技术问题,如优化限制、动态参数处理、并行执行的复杂性、内存过度分配以及资源重用的挑战,并指出HLS工具在某些情况下可能不如手写Verilog设计灵活。
摘要由CSDN通过智能技术生成

1. HLS是什么?与VHDL/Verilog有什么关系?

  • HLS全称高层次综合(high level synthesis),采用C/C++等高级语言描述功能,可以降低FPGA代码的开发时间和验证时间
  • VHDL/Verilog两种语言都是用于数字电子系统设计的硬件描述语言,而且都已经是 IEEE 的标准
  • HLS与VHDL/Verilog一样都是FPGA的开发语言

2. HLS有哪些关键技术问题?目前存在什么技术局限性?

2.1 HLS的关键技术问题

与Verilog相比,能做到的优化十分有限
在这里插入图片描述

  • 动态参数:HLS禁止动态分配指针,因为硬件设计通常具有多个存储空间,并且该工具必须知道函数打算访问哪个存储空间,以便可以相应地放置电线连接。动态传递函数参数的一种方法是通过静态定义所有可能的函数调用并对每个参数进行硬编码来引入间接层,然后使用条件语句动态选择正确的调用。
  • 并行执行:为了确保正确执行,HLS 禁止访问同一数组的函数并行运行。由于不支持常量参数,因此它包括只读函数,因为无法对它们进行分类。必须拆分或复制数组,或者必须合并函数以启用并行执行。
  • 内存过度分配:有两种方法可以将大型阵列合成为多个 BRAM 块链。首先是宽度扩展,它可以在多个
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值