• IIANews微官网
    扫描二维码 进入微官网
    IIANews微信
    扫描二维码 关注微信
    移动客户端
  • English
2025机器人产业趋势论坛报名
传感器

新综合技术将突破今天的RTL级设计方法

  2004年07月30日  

三家EDA供应商承诺,凭借他们新推出来的高级综合工具,ASIC和FPGA设计人员可以在今天RTL级之上进行设计。虽然这三家公司分别采取了不同的方法,但他们都宣称自己的工具不仅能显著加快上市时间,还能大幅提高设计质量。

明导资讯的Catapult C综合工具采用不定时的C++描述作为输入,同时适用于ASIC和FPGA设计。Celoxica公司的Agility C编译器提供对可编程逻辑的SystemC综合功能。新兴企业Bluespec公司则抛弃了C语言综合,转而采用SystemVerilog声明。

这三家公司的产品可能有助于实现电子系统级(ESL)设计。一些观察家认为,ESL设计将是EDA行业的下一波发展浪潮。由于缺少自动化综合工具,ESL的发展一直徘徊不前。为了填补这项空白,Forte设计自动化公司不久前发布了SystemC行为综合产品Cynthesizer。

但明导公司认为,SystemC并不是唯一的解决方案。它声称其Catapult是一款“算法”综合工具,而不是行为综合工具。Catapult输入纯粹的不定时C++语言,并产生可综合代码。它瞄准的目标是计算密集型应用,如数字信号处理等。据称,Catapult至少能加快50%的设计速度,而且与手工编写的RTL代码相比,它能生成相同甚至更好的结果。

Gartner Dataquest公司首席EDA分析师Gary Smith认为,Catapult是2004年设计自动化大会上最重要的新闻。“该工具似乎具备接口综合能力,”他指出。虽然多家供应商已经提供了针对模块的行为综合工具,但根据Smith的ESL“发展蓝图”,接口综合是被大家忽略的部分。

以10年的研发作为后盾,Catapult不仅是一种承诺。“它已经投入使用有2年左右的时间,并实现了10个以上的出带,客户包括阿尔卡特、爱立信、诺基亚、西门子和意法半导体(ST)等,”明导公司高级综合产品经理Shawn McCloud表示。在2001年3月举行的国际HDL研讨会上,明导公司曾透露过Catapult背后的一些技术。

“我们第一次可以从完全抽象的C++描述(类似于今天系统设计师编写的代码)开始做系统级建模。”McCloud说,“结果的质量不仅能与设计师手工编写的代码相媲美,而且还常常超过它们。”

虽然Catapult能同时处理数据路径和控制逻辑,但McCloud表示,该工具目前瞄准的是计算密集型应用,特别是通信和视频图像处理市场。它没有瞄准数据密集型应用,如网络交换器件。

“我们的使命是完全从C++描述开始进行综合,”McCloud说,“这意味着不仅算法,而且连接口也是不定时的。”他透露,明导正在申请一项名为“接口综合”的专利技术,它允许用户保持纯粹的C++描述,并将C语言接口映射成硬件元件。然后,该工具将创建符合接口带宽要求的硬件。

Catapult对C++代码有一些限制。例如,指针必须是静态可确定的。用户需要定义约束条件,并必须提供时钟周期和目标技术。对于ASIC设计,Catapult的C库创建器允许用户收集该工具所需的详细特征数据。

除了周期精确的仿真模型外,Catapult还能为数据路径和控制逻辑生成可阅读、可综合的RTL。“在大多数情况,代码质量超过手工编写的代码,”McCloud表示,“与手工编写的RTL相比,用户一般会发现ASIC设计的面积缩小了20%,同时速度加快了20倍。”

“诺基亚的达拉斯研究中心使用Catapult已经有2年的时间,”该中心研究经理Dennis McCain表示。该研究中心的应用目标是赛灵思的Virtex FPGA,而不是ASIC。诺基亚还没有在产品开发中使用Catapult。

“我们通常用Matlab或C代码开发算法。”McCain说,“借助Catapult,我们可以在非常高的层次上作出架构决策,并生成可综合的RTL,从而显著缩短了我们的设计流程。与以前手工编写RTL的流程相比,它可以节省50%到60%的时间。”

“结果质量与手工编写的VHDL相当接近,”McCain表示,“在规范固定的情况下,如果你非常努力地用手工编程,那么有可能得到比Catapult C更好的结果。但通常,我们没有固定的规范,而且它们经常变化。”

诺基亚的研究员Yaunbin Guo表示,他希望该工具在处理控制逻辑方面能有所改进。“在现阶段,他们仍专注于计算密集型应用,”他说。

Celoxica公司对于C语言综合并不陌生。这家英国公司的DK设计套件提供了采用其专有语言Handel-C的综合和仿真。Agility C的新颖之处在于它采用工业标准的SystemC语言进行综合。新综合技术将突破今天的RTL级设计方法 - 1ALT="图:明导的Catapult输入抽象的不定时C++描述,产生可综合代码。">

Celoxica公司专注于可重配置逻辑,不仅包括FPGA,还包括一些新的架构,如Elixent公司所谓的“可编程算法处理”架构。“把系统级设计的重点放在ASIC是完全错误的。”Celoxica的副总裁Jeff Jussell表示,“C设计人员应该采用FPGA创建首个原型。”

Agility C能产生用于ASIC设计的RTL代码,但它真正的重点是可编程逻辑。“该工具是面向DSP的,”Jussell表示,“瞄准的应用包括数字成像和信号处理等。”

与明导的Catapult不同,Agility C使用定时的SystemC描述。“我们相信这是向设计师提供控制能力的最有效方式。”Jussell说,“如果你正在使用C语言,并试图用硬件实现设计,那么一点都不懂硬件功能肯定是行不通的。”

软件设计师可能比较喜欢Celoxica的Handel-C系列产品,因为它基本上是带编译器指南的ANSI C,Jussell表示。而Agility C瞄准的目标是那些想用C++编程或已经拥有SystemC IP模块的硬件设计师。

Jussell强调,Celoxica公司并不认为使用Agility C会牺牲面积或性能,而且Handel-C综合经常能取得超过人工RTL代码的性能。“设计时间能加快50%,而结果也具有相同的质量,甚至常常超出目标,”他说。

新兴公司Bluespec也声称能减少一半的设计时间,并提供与手工RTL代码相同或更好的结果。因此,它似乎与Forte、明导和Celoxica等公司处于同一阵营,但实际上却有重大差别。Bluespec的编译器可以根据SystemVerilog声明产生可综合的RTL,从而完全避免了C语言综合。

另一个重大区别是:Bluespec公司瞄准的主要目标不是DSP或数据路径密集型设计。该公司首席执行官Shiv Tasker透露,目前大多数评估中的应用集中在控制逻辑领域,包括网络处理芯片和MPU。

Bluespec已经公布了它的综合方法,并详细介绍了所采用的“术语重写系统”技术。不久前,它正式发布了Bluespec Comiler。

在使用此编译器时,工程师首先要识别状态单元,然后阐释SystemVerilog设计声明蕴含的行为。“我们相信工程师应该能控制微架构,”Tasker说,“我们发现了一种方法,既能提高抽象水平,又能使工程师保持良好的控制。”

Bluespec公司最近发布了一个综合的基准套件,它采用了Interra系统公司的IP库。其中,25个中小规模的设计在设计声明级被重新编码和测试,以确保与原始Verilog设计具有相同的功能。Tasker表示:“通过在相同的综合流程中运行原始的Verilog代码和Bluespec综合得到的RTL代码,这项测试表明我们可以获得与手工RTL代码相同或更好的结果。”

Bluespec Compiler输出Verilog 95 RTL代码。之所以这样选择是因为对新思的Design Compiler而言,Verilog 95 RTL具有非常好的可预测性。Bluespec Compiler还能生成周期精确的C模型,可用于Bluespec Simulator的系统级验证。“这种方法架起了高级建模与硬件设计之间的桥梁,”Tasker说。

作者:葛立伟


最新视频
伊顿Bussmann:百年品牌 以创新驱动发展   
欧姆龙光电传感器E3AS | 角度特性演示:高反光不锈钢工件稳定检出   
研祥金码
专题报道
《我们的回答》ABB电气客户故事
《我们的回答》ABB电气客户故事 ABB以电气问题解决专家之志,回答未来之问。讲述与中国用户携手开拓创新、引领行业发展、推动绿色转型的合作故事,共同谱写安全、智慧和可持续的电气化未来。
企业通讯
优傲机器人新品巡展 NVITATION 邀请函
优傲机器人新品巡展 NVITATION 邀请函

优傲机器人将于2025年6月5日在北京亦庄举办新品巡展活动。届时,您将有机会近距离品鉴优傲新品成为首批见证 UR15 中

2025中国智能制造发展论坛报名邀请函
2025中国智能制造发展论坛报名邀请函

6月4日,2025中国智能制造发展论坛聚焦“数智创新赋能产业升级”与“绿色低碳构建可持续生态”双核议题,汇聚政府机构、全

在线会议
热门标签

社区