综合(Synthesis)工具已经开始支持SystemVerilog,但是仍存在一个问题:一个RTL模块可能只运行在一种综合工具中,却无法在其它综合工具中运行。目前,一项提议的SystemVerilog综合子集标准得到了大多数综合厂商的一致好评,虽然作为市场领导者的新思科技(Sysnopsys)仍对其持怀疑态度。
在最近的DVCon会议中,培训公司Sutherland HDL的总裁Stuart Sutherland展示了标准SystemVerilog综合子集提案的具体细节。他表示,该提案综合了试验和失败的经验,以及多家综合工具供应商的建议。
“关键问题是公司想使用多家厂商提供的工具,但通用性是个难题。”他说,“他们无法编写出可以运行在不同工具中的代码。”标准综合子集存在于Verilog和VHDL中,Sutherland强调,但是并不存在于SystemVerilog中。
截至目前,正式的标准化活动仍未展开,但是除了新思外,其它合成工具供货商都表示强烈支持。“新思并不是反对子集,只是我们没有看到需求。” 新思负责互操作性的主管Karen Bartleson表示,“除非客户提出了强烈要求,否则公司花费高昂的代价来开发标准对整个产业而言并无意义。”
Cadence设计系统公司则持不同的观点。该公司的营销主管Victor Berman表示,市场上“确实”有对SystemVerilog综合子集的需求,即使在现阶段它还不是正式标准。
Cadence查看了Sutherland的早期草案,Berman表示:“我几乎完全同意Sutherland的意见。少数一些特性也许不会提前设置,除非客户对这些特性的需求越来越明显。”
“Mentor Graphics完全支持SystemVerilog合成子集的标准化进程,”该公司FPGA综合产品线主管Daniel Platzker表示。虽然Mentor已经为其精密的FPGA合成工具定义了自己的综合成子集,但是我们也很高兴看到Accellera标准组织聘请工作团队来开发标准,他说。
“我们喜欢Sutherland的提案,并赞同SystemVerilog应该有明确的综合子集规范。”Synplicity公司的应用工程副总裁Andrew Dauman表示,“我们很愿意看到该规范成为IEEE 1800(SystemVerilog)规范的补充部分。”
Magma设计自动化公司的产品营销总监Yatin Trivedi则表示,标准综合子集对整个工具链的共同理解和使用非常重要,不仅仅是综合,而且还包括形式验证、功率分析、RTL原型与可测试性设计。他指出,Sutherland的提案内容‘非常广泛’。
新创企业Bluespec公司(提供自SystemVerilog断言的综合)的Rishiyur Nikhil强调,合成子集‘不可或缺’,但是存在条件限制。“必须认识到工具的执行重点强调了语言的某些层面。”他指出,“所以即使具有通用性的设计,也很少能够达到目标。”
Sutherland的提案列出了可综合的SystemVerilog结构,包括不同类型的软件包、不同的数据类型、net数据类型、用户定义类型、数据阵列、模块端口、操作界面和程序块等。
Sutherland认为目前最具争议的就是软件包,目前只得到了一些工具的支持。软件包的价值勿庸置疑,他表示,因为它们实现了可以被多个模块共享的用户定义类型。还有一些综合特征是现有工具不支持的,例如排序和面向对象的程序设计(OOP)。
另一个问题就是综合子集在哪里进行定义。Sutherland认为应该交给Accellera标准组织。
Accellera并没有承诺要进行此一计划。“如果我们的组成要素中有必要对SystemVerilog规格予以修正,我们的技术团队将就此进行深入研究。” Accellera主席Shrenik Mehta说。
(源自:电子工程专辑)