工艺设计工具包 PDK
工艺设计工具包PDK 是 Process Design Kit 的缩写, 是制造和设计之间沟通的桥梁, 是模拟电路设计的起始点
PDK是芯片设计流程中与EDA工具一起使用的特定于代工厂的数据文件和脚本文件的集合。 PDK的主要组件是模型,符号,工艺文件,参数化单元(PCell)和规则文件。 使用PDK,设计人员可以快速启动芯片设计,并从原理图输入到版图输出,无缝地完成设计流程。
PDK 是半导体行业内使用的一组文件,用于对集成电路的制造流程进行模拟和特征参数提取, PDK是由代工厂创建,定义了该代工厂制程工艺的那些确定的技术波动, 将其传递给他们的客户以在设计过程中使用。 客户可以对PDK进行再设计,以使其适应特定的设计风格和市场。 设计人员使用PDK进行设计,仿真,绘制版图和验证设计,然后再将设计交还给代工厂加工芯片。 PDK中的数据只适合于特定代工厂的工艺变化,并在设计进程中的早期就要根据芯片市场需求的影响来选定,一个精准 的PDK将极大的增加芯片设计首次流片成功的机会
图 1 工艺设计工具包 PDK
PDK 的构成
一个典型的PDK包含:
原始器件库: 符号标识, 器件参数, PCell
验证台 ( Test Bench ): 设计规则检查, 布局与原理图, 天线和电气规则检查, 物理提取
技术数据: 层,层名称,层/用途; 颜色填充和显示属性; 工艺限制; 电气规则
规则文件: LEF, 工具相关的规则格式
原始器件的仿真模型(SPICE或SPICE衍生产品): 晶体管(通常为SPICE), 电容器类, 电阻器类, 电感器类
设计规则手册: 用户友好的工艺需求表征
PDK也可能包含来自代工厂,库供应商或内部开发的标准单元库:LEF格式的抽象版图数据, 符号标识, Liberty(.lib)文件, GDSII版图数据等
图 2 工艺设计工具包的构成
PDK 的 ( 设计 ) 生成
典型的PDK生成:
走过模拟集成电路设计的全部流程:
设计部分:基础元器件参数制定;电路原理图设计;电路原理图仿真;画版图;版图物理验证;生成 PCell
验证和生成部分:测试结构流片;测试结构实测;实测和仿真比较;模型的抽取,验证和优化;PDK生成,包括各种运行集 Runset 和其它的数据文件和脚本文件
图 3 工艺设计工具包的生成
参数化单元 Pcell
PCell 是 Parameterized Cell 的缩写,代表参数化单元,该概念广泛用于模拟集成电路的自动化设计中。 PCell代表电路的一部分或组件,其结构取决于一个或多个参数。 因此,它是由电子设计自动化(EDA)软件根据这些参数的值自动生成的单元。 例如,可以创建一个晶体管PCell,然后使用具有不同用户定义长度和宽度的晶体管PCell的不同实例
用户可根据自己产品的特征,设计环境和技能,设计出专用的 Pcell, 是模拟电路设计的出发点
图 4 Pcell
在电子电路设计中,单元是功能的基本单位。给定的单元可以重复或实例化很多次。 PCell比非参数化的单元更灵活,因为不同的实例可能具有不同的参数值,因此结构也不同。例如,在给定设计中,不是定义许多不同的单元来表征各种尺寸的晶体管,而是将晶体管的尺寸(宽度和长度)作为参数。单个PCell的不同实例可以代表不同大小的晶体管,但具有相似的特性。
集成电路的结构以及约束其物理尺寸的规则(设计规则)通常很复杂,从而使手工绘制版图变得乏味,但通过使用PCell,电路设计人员可以轻松地生成仅在几个参数上不同的大量各种结构,从而提高了设计的效率和一致性。
PCell通常表示物理层面的单元,即电子组件在描述其位于集成电路(IC)内部的物理结构的物理表述。尽管大多数PCell是物理单元,但是电路原理图中的器件符号也可以实现为PCell。
所有PCell的基本特征是对(输入)参数的依赖以及基于这些参数生成设计数据的能力。
PCell 是一段编程代码,该代码负责根据其(输入)参数创建PCell 变体合适的结构。 对于物理 PCell 的实物化,该代码生成(绘制)构成电路的版图设计的实际形状。
由于一个 PCell 代码可以创建许多不同的对象(具有不同的参数值),因此将其称为 PCell 母版。 这段代码创建的对象/形状/数据称为 PCell 的实例。 通常,一个 PCell 母版会产生许多实例/变体。 这不仅在设计输入和参数规范期间很有用,而且在减少用于表示设计数据所需存储器资源方面也有帮助。
图 5 Pcell 实例化
尽管编写 PCell 的编程语言并不重要,但 SKILL 或 Python 是最常用于编写 PCell 的代码。 也可以使用图形用户界面(GUI)或基于预定义功能的库的专用 PCell 设计工具来生成 PCell
图 6 Pcell 实例化应用
图 7 使用PDK做电路原理图设计
专家版图设计流程:PDK包括技术文件,PCell和规则文件。 PDK可以轻松,平稳地实现电路原理图驱动的布局和版图设计
图 8 使用PDK做电路版图设计