18.luck新利
的意见

高级合成的真正好处是什么?

不仅仅是生产力。

受欢迎程度

曾几何时,“行为合成”,高级合成前体,挂帽子设计生产力作为其唯一值。,我的意思是,如果一个行为合成工具提供了一个足够高的生产力效益,设计师或设计经理将沸腾海洋移动。几乎没有方法。事实上,即使是设计输入语言是陌生的。是的,这是Verilog硬件描述语言(VHDL),但这是“行为”Verilog或VHDL-something不熟悉大多数工程师。

90年代末作为应用工程师,我无法想象我的次数解释说,“@ (posedge clk)”顺序构造,而不是平行构造。“一直”和“初始”并行结构!

今天,“陌生的语言”的问题已经解决了利用IEEE 1666 SystemC和c++的设计语言选择时使用高级设计和验证。大部分硬件工程师知道SystemC允许他们表达硬件结构(模块、层次结构、I / O时间,bit-accuracy)以及每一块的算法功能。

移除一个巨大障碍实现生产力HLS的承诺,但生产力还不足以解释为什么世界上最顶尖的半导体公司正在使用HLS。去年布莱恩·贝利恰当地指出,“在一天结束的时候,用户有口语和使用HLS最顶尖的半导体公司。他们把EDA供应商到C, c++, SystemC营地和HLS创建他们使用芯片赚他们的钱。”看到布莱恩的原创文章http://新利体育下载注册www.es-frst.com/tale-of-two-hls-viewpoints/

所以,如果它不是所有关于生产力,为什么这些公司使用HLS ?

设计和验证的生产力

好吧,我承认。为HLS原始生产力仍然是一个主要的驱动程序。如果我说否则我那是在说谎。实际上,生产力是最常见的原因公司询问HLS进来大门。HLS确实提供了一种快速、高质量的RTL之路。它允许设计师专注于他们的设计工作与详细和机械RTL实现任务。

cadence_figure_1

工程师专注于设计工作;HLS处理实现细节。

但是HLS不仅仅是设计效率。是更有效率的设计和验证流程。你不仅是设计硬件,也验证它。这意味着你倾向于抓住问题和修复它们。更好的是,您可以重用你的许多验证行为SystemC和RTL之间的资产。简而言之,HLS不仅仅提供了一个高效路径的RTL实现,但是对于一个高质量的well-verified RTL实现。

更广泛的IP重用

如果生产力为什么HLS新用户进来门,IP重用是为什么他们留下来。

在设计与HLS, IP设计是用高级SystemC / c++写的。“高级”意味着功能和macro-architecture编码你的IP,不但是实现决策。具体来说,有限状态机,datapath公司组件、多路复用器,管道寄存器,以及其他细节没有记在您的SystemC IP模型。相反,那些能够自动地实现决策HLS工具用技术的图书馆和合成约束如时钟周期(s)和最大延迟时钟周期。

这意味着,例如,一个实现高性能和低功耗的实现可以使用相同的行为IP。只对每个实现综合约束条件变化。

cadence_figure_2

一个行为IP描述支持多种实现。

此外,通过IP源代码在更高层次的抽象,你可以比你更实质性的功能修改设计轻松可以手工编写RTL时。例如,您可以更改SystemC或c++行为规范来实现改变,甚至使用不同的算法。在这两种情况下,HLS将自动生成修改RTL。通常,这种新的(修改)的IP将被添加到行为IP库重用未来的项目。

顺便说一下,如果你是在2015年DAC,你可能还记得兰德Litman从英特尔谈论行为IP重用的好处在海报论文31.33中,在创造Soft-IP“HLS Soft-IP:新标准。”

质量提高的结果

HLS不会在你口袋里的硅,车,家里如果没有产生高质量的结果(QoR)。

一些QoR好处是由于先进的由HLS自动优化。HLS可以创建许多定制的datapath公司组件为例,在其自动化的权衡分析,挑选最好的合成(s),以满足给定的约束在给定的技术。HLS可以决定如何分享同样,datapath公司之间的逻辑和寄存器不同深度的管道,通常非常困难(但不是不可能)做手工。

但总的来说,最常见的方式HLS产生QoR比手写的RTL(是的,我说“更好”)是允许更多的设计空间探索。我们都知道,在设计过程的早期架构决策的影响最QoR。通过手写的RTL设计时,您通常只能创建一个一个的RTL实现架构。HLS,然而,许多不同的实现可以创建从一个金色的行为知识产权,允许您选择最符合需要的实现这个特定的项目。

如下所示,即使是一个简单的逆离散余弦变换可以实现几十种不同的微架构,每个提供不同的PPA权衡。HLS,您可以仔细评估每个和选择最好的实现为每个特定的应用程序的IP。

cadence_figure_3

设计空间探索发现最好的PPA权衡你的特定的应用程序。

更高层次的抽象

主线,所有这些好处,根本原因是在更高层次的抽象。这是更高层次的abstraction-working设计决策和实现细节,使HLS更有效的方法来创建硬件。

一条建议任何新的HLS用户:不要把最后一个语句。虽然你正在与SystemC和c++,你还创建和HLS硬件。这是一个更有效和更有趣的方式去硅,但不是魔法。与任何工具一样,你仍然需要花时间学习如何使用它精通地对手头的任务。



留下一个回复


(注意:这个名字会显示公开)

Baidu