作为一种描述控制系统硬件的高级语言,Esterel正在走向IEEE标准化之路。但业内人士目前仍在观察:标准化是否能使其走出小众市场,融入电子系统级(ESL)设计的主流当中。
Esterel是一种形式上可验证的语言,主要用于设计控制密集型硅IP模块。20多年前,它起源于学术界;随后,在法国Inria研究院得到了进一步开发。Esterel Technologies公司(Esterel Studio设计和验证工具套件供应商)实质上是目前唯一积极支持该语言的EDA软件销售商。
今年4月,Esterel Technologies公司宣布IEEE已经开始了IEEE P1778的研究工作。IEEE P1778是一项针对现有Esterel版本(V7)语言参考手册的标准化努力。该研究已得到IEEE新标准委员会的批准,并计划于2008年中期完成。Esterel Technologies公司首席执行官Eric Bantegnie透露,该研究得到了包括IBM、英特尔、NXP、意法半导体和TI等公司在内的众多Esterel用户的支持。
“标准化极其重要,”Bantegnie指出,“因为Esterel用户需要一个稳定的标准,以便得到多个供应商的工具支持。为了使Esterel从小范围工具走向标准主流中,先决条件之一就是不要受制于任何一家特定供应商的产品。所以,我们决定公开这个技术,以便它能被更广泛地采纳。”
目标:更广泛的应用
Esterel Technologies公司声称,与HDL或C语言相比,基于Esterel V7的设计一般要小三到五倍,而且更容易开发、进行形式验证和通信。“在一定程度上,我们将Esterel定位为控制领域的Matlab。”Bantegnie说,“我们需要一种标准语言,能够支持以控制为主导的设计中所有特殊的功能,诸如显式文件控制或显式并行处理。”Matlab是MathWorks公司提供的一种广泛被用于算法设计的语言。
图: 利用形式上可验证、可执行的规范,Esterel Studio能进行高级建模
TI法国分公司正在使用Esterel为一个GSM方案设计Java处理器,TI公司GSM项目设计经理Eric Badi表示,“对我们来说,我们在设计中用到的工具或方法不能是某个公司的专有产品,这非常重要。同样,也应该给其它工具供应商开发基于Esterel语言工具的机会,例如综合工具、仿真工具和等效性检查工具。”Badi同时也是IEEE标准化工作小组成员。他表示,TI法国分公司希望将来利用Esterel语言实现硅IP。
英特尔公司正在“观察”Esterel,并已经将其用在一些研究项目中,英特尔战略CAD实验室前端设计组负责人Mike Kishinevsky表示。Kishinevsky同时也是P1778工作组成员,他认为,IEEE标准化将有助于Esterel的早期采用者(以及任何想在学术领域或产业界使用该语言的人)聚集在一起,对该语言进行统一定义。”
“Esterel已经存在了很长时间,它代表的,是一种与以往截然不同的设计观点。”IEEE设计自动化标准委员会(P1778项目发起人)主席Victor Berman说,“尽管它从未达到VHDL和Verilog那样的使用度,但它有一个坚实的产业基础。我认为,开发一个基于Esterel的IEEE标准,将赋予Esterel一次市场增长的机会,并使主流EDA公司更关注它。”
一个对Esterel持怀疑的态度来自Tensilica公司首席科学家Grant Martin(Martin是最近发行的《ESL设计和验证》的合著者之一)。Martin指出:“大约在10年前,Esterel曾赢得了产业界的短期关注。当时,它被用在加州大学伯克利分校的Polis项目上,并一度获得了Synopsys和Cadence公司的支持。然而,Esterel终究仅适于规模非常小的专业领域,而且其吸引力已经在逐渐衰退。”
作为一种同步响应性语言,Esterel擅长于为控制系统建模,Martin指出。但是他不认为IEEE目前进行的标准化工作会带来实质性的进展。
非常简洁的语言
Estere有其自己的优势,Cadence公司验证部门全球副总裁Steve Glaser认为。“Esterel是一种非常简洁(clean)的语言,而且对以控制为主导的应用很有益。”他指出,“由于它是一种同步响应性语言,所以能进行高效率综合。”不过,Cadence公司目前面对的大部分ESL客户的语言需求是以SystemC为中心,Glaser说。
“Esterel标准化努力是时代的象征,”Gary Smith EDA公司的首席分析师Gary Smith认为,“系统架构设计师正在抨击C语言;软件社群也正在寻找一种新的并发式语言。”现在的问题是:像Esterel这样的硬件语言能否插手并解决软件问题,他指出。
Esterel Technologies公司的Bantegnie表示,目前Esterel主要用在“软件友好型的硬件实现方案中”。他指出,Esterel主要用户都是大型半导体公司,他们采用Esterel来设计特殊类型的控制IP,包括用于电源管理、存储器管理和直接存储器访问的模块。典型的应用领域包括无线和消费电子产品,而大部分的应用则在欧洲和美国。
时下,大部分设计者让将SystemC作为硬件设计的主要ESL语言,而不是Esterel。Bantegnie认为,Esterel有可能成为SystemC的一个“控制领域的延伸”。
即使IEEE的标准化工作无法引发Esterel的广泛应用,但是它也能帮助某些Esterel技术融入VHDL或Verilog的未来版本中,IEEE的Berman认为。“把一些其它理念引入混合语言之中只会使事情变得更有趣。”他说。
|