Cadence公司是一家eda软件公司。成立于1988年。其主要产品线从上层的系统级设计到逻辑综合到低层的布局布线,还包括封装、电路版pcb设计等等多个方向。下面主要介绍其产品线的范围。
1、板级电路设计系统。
包括原理图输入、生成、模拟数字/混合电路仿真,fpga设计,pcb编辑和自动布局布线mcm电路设计、高速pcb版图的设计仿真等等。包括:
Concept HDL原理图设计输入工具,有for NT和for Unix的产品。
Check Plus HDL原理图设计规则检查工具。(NT & Unix)
SPECTRA Quest Engineer PCB版图布局规划工具(NT & Unix)
AllegroExpert专家级PCB版图编辑工具(NT & Unix)
SPECTRA Expert AutoRouter 专家级pcb自动布线工具
SigNoise信噪分析工具
EMControl 电磁兼容性检查工具
Synplify FPGA / CPLD综合工具
HDL Analyst HDL分析器
Advanced Package Designer先进的MCM封装设计工具
2、Alta系统级无线设计
这一块的产品主要是应用于网络方面的,我个人以为。尤其是它包括有一套的gsm模型,很容易搞cdma等等之类的东西的开发。但是我觉得做信号处理和图象处理也可以用它,因为它里面内的spw太牛了,至少是看起来是,spw最牛的地方就是和hds的接口,和matlab的接口。matlab里面的很多模型可以直接调入spw,然后用hds生成c语言仿真代码或者是hdl语言仿真代码。(这我没有license,没有试过,看openbook上说的)。也就是说,要是简单行事的话,就可以直接用matlab做个模型,然后就做到版图了,呵呵。
Alta主要有下面的一些Package:
SPW (Cierto Signal Processing Work System)信号处理系统。
可以说,spw包括了matlab的很多功能,连demo都有点象,呵呵。它是面向电子系统的模块化设计、仿真和实现的环境。它的通常的应用领域包括无线和有线载波通信、多媒体和网络设备。在进行算法设计、滤波器设计、c Code生成、软/硬件结构联合设计和硬件综合的理想环境。它里面非常有意思的就是信号计算器。
HDS (Hardware Design System)硬件系统设计系统
它现在是SPW的集成组件之一。包括仿真、库和分析扩展部分。可以进行spw的定点分析行为级和rtl级的代码生成。
Mutimedia多媒体 (Multimedia Design Kit)
我没有见识过这部分的东东。在产品发布会的演示上看起来倒是很有意思。据说可以很快的生成一个多媒体的应用环境。它可以进行多媒体应用的设计,包括电视会议系统、数字电视等等以及任何种类的图象处理系统的设计。
无线技术Wireless(IS-136 Verification Environment)
无线电技术标准系统级验证工具,可以在系统级的抽象层上生成、开发和改进遵守IS-54/136 标准的信号处理算法。在完成硬件结构设计后,就可以使用hds直接生成可综合的hdl描述和相应的标准检测程序(testbench)。
IS-95无线标准系统级验证
同上。呵呵。
BONeS网络衉议分析和验证的设计工具。
这个东东看起来很有意思。它是一套软件系统,专门用来做多媒体网络结构和衉议的设计这个东东看起来很有意思。它是一套软件系统,专门用来做多媒体网络结构和衉议的设计的。可以用来快速的生成和分析结构单元之间的信息流的抽象模型,并建立一个完整的无线网络的运作模型。例如,用户可以改进atm转换器的算法,并建立其基于微处理器包括高速缓存和内存和总线、通信处理方法的应用模型。
G、VCC 虚拟衉同设计工具包
它是用来进行基于可重用的ip核的系统级设计环境。
在上面的这些东西中,我觉得很重要的还是需要有库的支持,例如在spw里面就要有对应的不同的算法的hdl库的支持,才能够得到最后rtl级的实现。在大学版中,这些部分的license和部分bin代码也没有提供。
3、逻辑设计与验证(LDV)设计
这部分的软件大家都应该是很熟悉的,因为pc版的d版好象现在已綺很普及了。^-^这里简单介绍一下cadence的ldv流程,虽然感觉大家用synopssy还是居多。
首先是老板产生一个创意,然后就是设计人员(学生)使用vhdl或者是verilog语言对设计来进行描述,生成hdl代码。然后,可以用Verilog-XL, NC-Verilog, LeapfrogVHDL NC-VHDL等工具来进行行为级仿真,判断设计的可行性,验证模块的功能和设计的debug。然后是调试和分析环境中使用代码处理箱(verisure/for verilog) (VHDLCover/for VHDL)分析仿真结果,验证测试级别。然后用Ambit BuildGates进行综合,并使用综合后的时延估计(SDF文件)来进行门级仿真,然后再使用verifault进行故障仿真。
以上是很简单的一个流程,实际上系统级设计后,就应该进行设计仿真的,要是设计是一个大的模块的话。而且在综合的时候,写综合限制文件也是很麻烦的,要求很多次的反复。上面的流程还不包括测试的加入(如扫描啦什么的)。上面的流程对于小设计是可以的。
LDV包括的模块有下面的这些东西:
verilog-xl仿真器
这个不用多说了,这是业界的标准。
Leapfrog VHDL仿真器
支持混合语言的仿真,其vhdl语言的仿真是通过编译后仿真,加快了速度。
Affirma NC Verilog仿真器
其主要的特点是适合于大系统的仿真。
Affirma NC VHDL仿真器
适用于VHDL语言的仿真。
Affirema 形式验证工具--等价检验器
Verifault-XL 故障仿真器
感觉故障仿真是最费时间的仿真步骤。用来测试芯片的可测性设计的。
VeriSure代码覆盖率检查工具
Envisia Build Gates 综合工具
Ambit 的BuildGates的特性中,我觉得最好用的应该是它的PKS的feature,当然,呵呵我没有它的license。因为在pks feature中,ambit可以调用se的pdp等物理布局工具来进行时延估计。这样的话,我觉得它的Timing 会比synopsys要好。在我试过的synopsys的小的设计中,大概它的误差在100%左右,呵呵。综合后时间是2.9ns,布局布线和优化后的时间是5ns。可是ambit的综合肯定是要比synopsys的差的,因为它没有很大的库的支持,在大的逻辑块的综合的时候我觉得就可以很明显的感觉出来的。我没有具体试过,那位大虾有时间可以比较一下他们的综合特性。
4、时序驱动的深亚微米设计
这部分是底层设计的软件。底层设计的工作我感觉是细活,来来回回是需要走很多次重复的流程的。在以前的设计流程中( .6um及其以上 ),一般情况下对于连线延时是可以不用考虑,或是说它们对设计的影响不算很大。在设计完成后,做一下pex,然后仿真一下,小
设计的话,多半是可以通过的。
现在的很多软件都直接在布局阶段就将线路延时考虑进去,这也是现在的深亚微米设计的要求。因为在设计中,连线延时对整体设计的影响很大,因此甚至在综合阶段就需要考虑到floorplan的影响。synopsys和ambit和jupiter(Avanti!公司的综合软件)等在它们的综合过程中都加入了这样的考虑。
candence的软件中,有SE和design planner两个主要的软件来进行时序驱动的设计,cadence 的这块的软件推出很早,可惜就是更新比较慢,现在象avanti公司的软件都把布局布线,时序分析和综合等等几乎全套的流程都统一起来的时候,cadence现在在底层还没有什么创新的地方,还是几年前的模样。
Cadence 的底层软件有下面这些:
逻辑设计规划器。
这是用于设计早期的规划工具。其主要用途是延时预测、生成供综合工具使用的线路负载模型。这个工具是用来在物理设计的早期象逻辑设计者提供设计的物理信息。
物理设计规划器。
物理设计的前期规划。对于大型设计而言,物理设计的前期规划非常重要。很多流程中,在前期的物理规划(floorplan)结束后,就需要一次反标验证设计的时序。
SE (Silicon Ensemble)布局布线器
se是一个布局布线的平台,它可以提供多个布局布线及后期处理软件的接口。
PBO Optimization基于布局的优化工具
CT-GEN 时钟树生成工具
RC参数提取
HyperRules规生成,HyperExtract RC提取,RC简化,和delay计算
Pearl静态时序分析
Pearl 除了界面友好的特点外,还有就是可以和spice仿真器交换数据来进行关键路径的仿真。
Vampire验证工具
5、全定制ic设计工具:
Virtuos Schematic Composer : IC Design Entry 它是可以进行混合输入的原理图输入方式。支持 vhdl/hdl语言的文本输入。
Affirma Analog DEsign Environment
这是一个很好的混合信号设计环境
Virtuos Layout Editor版图编辑
它支持参数化单元,应该是一个很好的特性。
Affirma Spectra 高级电路仿真器
和hspice一类的仿真器。
Virtuoso Layout Synthesizer
直接的layout生成工具,小规模设计环境
Assura 验证 环境,包括pa
dracula验证和参数提取包
ICCragtsman 布局设计的环境。在面向ip的设计中比较合适。