数字芯片是怎样设计出来的( 二 )


数字芯片是怎样设计出来的

文章插图
功能仿真验证 在整个芯片设计流程中的位置(黑体)


后端设计
(5)逻辑综合(Synthesis)
从这一步开始,就进入芯片设计的后端设计(物理设计)阶段了 。主要负责将RTL code转换为实际后端使用的Netlist(网表,包含了RTL中所有的逻辑信息,以及离散傅立叶变换、门控时钟和I/O等) 。网表的质量对芯片的布局布线工作起到决定性作用 。该过程需要考虑工艺的电特性和物理特性等因素,要尽可能做到Performance(性能)、Power(功耗)和Area(面积)的PPA优化 。Synthesis的质量在一定程度上取决于综合软件的性能,业界流行的两个逻辑综合工具是Synopsys的Design Compiler和Cadence的Genus,综合工程师的一个基本要求便是熟练的掌握两个工具的使用方法 。
数字芯片是怎样设计出来的

文章插图
国内外布局布线工具厂商


(6)布局布线(PD)
布局布线是数字后端中占比最大的工作 , 主要就是把网表转化成GDSII流格式(这是一种用于集成电路版图的数据转换的标准数据文件库格式,其中含有集成电路版图中的平面的几何形状、文本或标签等有关信息,由层次结构组成) , 确定各种功能电路的摆放位置 。PD的步骤包括Floorplan(布局规划)、Place(功能电路的摆放)、CTS(时钟综合)、Optimize(优化)、Route(布线)和ECO(工程变更)等 , 确保各个模块满足时序和物理制造的要求 。这个步骤是后端设计中最核心的工作 。布局布线对工具的依赖程度较强,而且工具操作相对来说较为复杂 。业界较为常用的是Cadence的Innovus和Synopsys的ICC 。
数字芯片是怎样设计出来的

文章插图
国内外布局布线工具厂商
数字芯片是怎样设计出来的

文章插图
Leplace图形界面


(7)静态时序分析(STA)
STA(Static Timing Analysis,静态时序分析)是芯片后端设计中的重要步骤 。芯片上有海量的极其微小的金属元器件,这些元器件的大小不一,通过引线流过这些元器件的延时会有不同,由于元器件过于微小,芯片的布局布线肯定会受到这些不同大小元器件和之间引线的各种限制 , 而静态时序分析则是模拟各种元器件间的互联和各种不同状况的仿真,找出存在的各种问题 。


静态分析需要保证芯片设计中所有的路径,满足内部时序单元对建立时间和保持时间的设计要求 。也就是说无论信号的起点是什么,信号都可以被及时地传递到该路径的终点 。同时 , 也要满足电平跳变时间、电容、噪声、等要求 。STA需要制定整个芯片的时序约束约束文件,选择芯片需要Signoff(签发)的Corner(工作范围)以及全芯片的Timing(时序) ECO流程,这个步骤的难度要求很高 。STA阶段应用较广的是Synopsys的Primetime和Cadence的Tempus软件 。值得一提的是国内鸿芯微纳的ChimeTime , 它是一种静态时序签核工具,提供了SPICE仿真精度的签核结果 。


(8)物理验证
物理验证也是流片(即试生产)前的一项重要事项 。如果物理验证有错,那芯片生产就会失败 。在布局布线工具中,真正的物理验证需要检查到器件底层 。因此,物理验证需要将金属层和底层金属合并到一起,进行全芯片的DRC(设计规则检查) 。同时,还需要做全芯片的LVS(版图与原理图一致性检查),ERC(电气规则检查),确保芯片没有违反任何物理设计规则 。物理验证的主要工具在Mentor(西门子EDA)的Calibre中进行,Calibre也是业界标准的物理验证工具 。


(9)功耗分析(PA)
功耗分析也是芯片签发的重要步骤 , 功耗分析的两大任务是分析IR drop(电压降)和EM(电迁移) 。及时将结果反馈给布局布线任务组,让他们及时修改后端设计图,解决设计中潜在的问题 。功耗分析常用的软件有Ansys公司的Redhawk,以及Cadence公司的Voltus和Synopsys公司的Ptpx 。


(10)时序仿真
该步骤是对芯片实际工作时的状态进行仿真,即后仿真,来验证功能是否正常 。时序仿真使用布局布线后器件给出的模块和连线的延时信息,在最坏的情况下对电路的行为进行实际评估 。时序仿真使用的仿真器和上述第四步的功能仿真使用的仿真器是相同的,区别在于功能仿真是在布线前进行,仅仅关注输出和输入的逻辑关系是否正确 , 不考虑时间延时信息;而时序仿真是在布线后进行,不仅关注输出和输入的逻辑关系是否正确,同时还计算了时间延时信息 。


推荐阅读