高级综合(hls)软件协同设计的方法
在过去的20年中 , 该行业一直在寻求部署硬件/软件协同设计概念 。在取得进展的同时 , 软件/硬件协同设计的前景似乎更加光明 。
为了理解这两种方法之间的区别 , 定义一些基础知识很重要 。
硬件/软件协同设计本质上是一个自下而上的过程 , 首先开发硬件并具有如何使用它的一般概念 。然后将软件映射到该硬件 。这有时称为基于平台的设计 。最近的一个例子是Arm新的嵌入式边缘可扩展开放架构(SOAFEE) , 它旨在实现软件定义的汽车开发 。
【高级综合(hls)软件协同设计的方法】相比之下 , 软件/硬件协同设计是一个自上而下的过程 , 其中软件工作负载用于驱动硬件架构 。这在今天正成为一种更流行的方法 , 它的典型代表是AI推理引擎和异构架构 。高级综合也是这种方法论的一种形式 。
两者都是可行的设计方法 , 有些设计流程是两者的结合 。“它总是回到基本面 , 即规模经济 , ”Cadence产品营销总监MichaelYoung说 。“它基于您需要实现的功能 , 而这通常转化为响应时间 。某些功能具有实时的关键任务限制 。在这些情况下 , 硬件和软件之间的平衡很明显 , 因为您需要确保无论做什么 , 响应时间都在定义的限制内 。其他应用程序没有这个限制 , 可以在资源可用时完成 。”
但随着摩尔定律的缩放速度放缓 , 今天还有其他压力在起作用 。ImperasSoftware的首席执行官西蒙·戴维曼(SimonDavidmann)说:“正在发生的事情是软件正在推动硬件中的功能 。”“产品需要更高效的软件 , 这推动了硬件架构的发展 。”
这两种方法都不比另一种更好 。Synopsys首席应用工程师TimKogel表示:“我们看到了硬件优先和软件优先的设计方法 , 两者都不会产生次优结果 。”“在人工智能中 , 优化硬件、人工智能算法和人工智能编译器是一个相位耦合的问题 。它们需要一起设计、分析和优化 , 以得出优化的解决方案 。举个简单的例子 , AI加速器中本地内存的大小决定了AI编译器中的最佳循环平铺 。”
成本是等式中非常重要的一部分 。“协同设计是针对给定问题实现高度优化硬件的一种非常好的方法 , ”弗劳恩霍夫IIS自适应系统部工程高级系统集成组组长兼高效电子部门负责人AndyHeinig说 。“但这种高水平的优化是该方法的缺点之一 。优化设计非常昂贵 , 因此这种方法只有在生产的设备数量非常多的情况下才能奏效 。大多数应用程序不需要优化的硬件 , 而是使用可以在不同应用程序中重复使用的更灵活的架构 。高度优化但灵活的架构应该是下一代硬件/软件协同设计流程的结果 。”
高级综合发展
几十年来 , 从软件自动生成硬件一直是学术界和工业界的目标 , 这导致了高级综合(HLS)的发展 。“为在CPU上运行而开发的软件并不是高级综合的最佳代码 , ”西门子EDA战略和业务开发高级经理AnoopSaha说 。“映射本质上是将串行代码转换为并行块 , 这具有挑战性 。这就是HLS的价值以及您如何做到这一点 。我们已经看到SystemC的使用 , 它具有对多线程的本机支持 , 但它是面向硬件的 , 而不是面向软件的 。”
这种方法仍然存在挑战 。Xilinx软件和人工智能解决方案营销总监NickNi表示:“我们一直在持续投资 , 并继续提高它的采用率 。”“十年前 , 99%的人只写Verilog和VHDL.但是今天 , 我们有超过一半的开发人员正在将HLS用于一个IP , 因此我们在采用方面取得了很大进展 。最重要的是 , 我认为从硬件/软件协同设计的角度来看 , 没有任何东西真正起飞 。在语言方面已经有很多有趣的建议 , 使其更加并行 , 更加多处理器友好 , 而且这些绝对是朝着正确的方向发展的 。例如 , OpenCL真的很想达到这个目标 , 但它已经失去了动力 。”
- 全新汉兰达ccrt综合得分86.3分位居第二
- 黎明觉醒高级枪托怎么入手(黎明觉醒高级枪托获取方式介绍)
- 超凡先锋高级子弹怎么得(超凡先锋高级子弹入手途径分享)
- 6条全市首创!临港新片区发布首个综合性知识产权专项扶持政策
- 别克威朗综合得分率85.3%达到“五星级”标准
- 殷图网联——电网智能化综合解决方案提供商
- 谷德锦城市商业综合体盛大开幕
- 山东地矿八院获得数据中心能源综合利用等级评估证书
- 哈利波特魔法觉醒高级魔咒课卡组怎么搭(哈利波特魔法觉醒高级魔咒课卡组搭配指南)
- 多地车险综合成本率超100%消费者普遍受益