综合技术是提高设计产能的一个很重要的技术,没有综合技术的发展就不可能用HDL实现电路的设计,因为HDL开始是用来供电路仿真建模使用的,到了后来才把其中一部分子集作为可综合的语言,也就是RTL CODE。很多人入门都用HDL做设计,就以为HDL就只是用来做设计的,没有看到HDL最初始的一面,所以在验证时,就无法用好HDL另外一部分强大的功能。有时间还是可以看看Writing Testbench这本书,增强对HDL语言在验证方面作用的了解,也是提高对HDL认识很好的补充。
这里以Design Compiler为例子讲解综合的过程。
首先,综合就要必须要用综合库,这个你可以向厂家要,综合库可以通过.lib这个库文件转变成.db综合库,这个过程可以在DesignCompiler里面用实现。
综合库里面有什么内容呢?.db 是无法阅读的,.lib是可以阅读的,里面有库的基本参数的单位,库运行的条件,各种参数,最重要的是两个部分,一个是WLM-Wire Load Model,一个Gate的定义(输入输出,功能,时序参数,面积等等);这只是StandarCell的库,另外还有其他库,如RAM,DSP的综合库,都以.db的形式存在。
综合需要三种输入,一个是代码,一个是综合库,一个是综合脚本 script。
综合脚本主要包括了一下内容,对综合工具环境的配置,对综合对象外部环境的设置(operation condiction),对WLD的设置,对综合对象的时序的约束,综合策略,综合优化,综合报告和输出。
综合技术的研究可以追溯到20世纪60年代,IBM公司T.J.Watson研究中心开发ALERT系统,将寄存器传输级算法描述转化成逻辑级的结构实现;20世纪70年代,综合技术发展迅速,但主要致力于较低层次的逻辑综合和版图综合;20世纪80年代中期,专用集成电路的广泛应用,要求芯片设计大规模、高性能、短周期,大大推动了从算法级设计描速向寄存器传输级设计描述转换的高层次综合技术。
逻辑综合负责将寄存器传输级的结构描述转化为逻辑层的结构描述,以及将逻辑层的结构描述转化为电路的结构描述。在数字IC设计领域常用的EDA综合工具中,最权威的要算Synopsys公司提供的综合工具。Synopsys公司提供的Design Compiler(DC)是业界流行的、功能强大的逻辑综合工具。用户只需要输入设计规格的HDL描述和时间约束,就可能得到较为优化的门级综合网表。此外,DC还集成了功能强大的静态时序分析引擎,并支持与后端布局布线工具交互工作。
从某种意义而言,综合就是将设计的HDL描速转化为门级网表的过程。Synopsys公司提供的综合工具DC把综合分为三个步骤进行&#x