HLS编程环境入门

本文探讨了高层次综合(HLS)作为新一代FPGA设计工具,如何通过C/C++语言简化硬件开发。对比了HLS与VHDL/Verilog的关系,指出HLS的并行优化优势,但也面临设计效率和灵活性质疑。着重讨论了HLS在技术难题中的位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HLS(high-level synthesis)简介

高层次综合(High Level Synthesis, HLS)是Xilinx公司推出的最新一代的FPGA设计工具,它能让用户通过编写C/C++等高级语言代码实现RTL级的硬件功能。随着这款工具的出现,软硬之间的区别越来越模糊,即使你对于硬件完全不懂,你也能编写出符合工程功能要求的RTL代码。
可以将其看作一种简化了学习成本的硬件开发工具,通过使用被大众广泛接受的C/C++等高级语言来实现、操作硬件功能。

HLS与VHDL/Verilog的关系

在笔者个人的理解看来,新兴的HLS与VHDL/Verilog两种工具就像是通往一个目的地的两条不同的路,这三者都只是为人所用的工具,类似于软件开发中的不同编程语言,虽然在效力和功能上互有优劣,但本质上是一类物事。

HLS目前所面临的技术难题

笔者在网上查阅资料时发现,HLS除了入门难度较低以外相比其他硬件开发语言还有一定优势,例如因为其对代码中的循环体进行并行性优化,采用流水、展开、合并、嵌套、数据流等方法,可以大幅提高计算速度,以满足当下对高计算量的需求。
可以说HLS本身的使用效力是高于两种传统硬件语言的,但它也有它的劣势,比如另一位作者便在他的文章中提出了对HLS的一些疑问,虽然Verilog耗时耗力,但是设计自由度高,那位作者对HLS能不能设计出最优方案和它的设计效率持保留意见,并且在他的文中表示HLS并没有想象得那么简单,FPGA内部大型算法可以尝试用HLS,至于外部接口等等还是Verilog。
据笔者猜测,这有可能是在软硬结合中导致出的“翻译”差错,有可能在硬件语言中的一些逻辑在软件语言中是没有的,所以虽然HLS倡导降低难度,但在某种意义上却南辕北辙。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值