metor的c语言综合器-转
上一篇 /
下一篇 2007-11-19 23:43:36
/ 个人分类:业界咨询
C语言综合器一直是广受关于的一项技术,如果实用化,将使系统建模、综合、验证、实现等FPGA或ASIC开发流程大大简化,新产品的开发周期会大幅度缩短,因此C综合技术可以说是划时代的,其伟大意义应该和HDL语言和综合技术差不多。
今天听了Mentor的工程师介绍他们的C综合器-Catapult C,感觉虽然还不成熟,在大多数情况下还不能代替人手编写RTL代码(所以我们暂时还不会失业),但是已经有了很大的进步。
Catapult C的主要特点是,使用标准的C++,比以往的Handle C、SystemC抽象层次更高,工具优化的空间更大。很多工程师马上会问,Catapult C会不会有严格的代码编写要求?答案是否定的,它对C代码编写的限制和RTL代码编写所收到的限制差不多,核心原因在于,Catapult C主要用于以数据处理为主的设计中。在这样的设计中,控制、时序方面的要求比较少,因此C语言稍加“努力”,是可以做到的。类似UART、DMA控制器这样的设计不是Catapult C的强项,但是对于现在越来越多的、需要高强度数据处理的应用,如图像处理、无线基带处理等,使用Catapult C来实现,优点就非常明显,包括可以快速从定点算法模块生成RTL代码,可以方面评估explore不同的体系结构下,占用的资源和处理延迟等,可以大大加快实验性系统的开发速度。
Catapult C提供了很好的GUI界面,从GUI界面中可以通过甘特图了解Catapult C产生的RTL代码的处理顺序关系,占用的资源和处理延迟等,用户还可以方便的调整约束,让Catapult C产生不同架构的RTL代码,再比较不同架构的优劣,挑选最合用的。
出了产生RTL代码,Catapult C还可以生成SystemC模型,用于加快系统级仿真的速度。它也可以调用Modelsim等仿真工具,比较算法模型和生成的RTL模型的功能是否一致。
Catapult C的强项是数据处理模块和系统的实现,例如FFT、DCT、Viterbi、Turbo、Mpeg等,对于控制复杂的设计力不从心。但是,谁生下来就会跑呢?

Catapult C
导入论坛
收藏
分享给好友
推荐到圈子
管理
举报
TAG: