参数化单元
参数化单元(PCell,parameterized cell)[1],是一个广泛用于自动化设计模拟集成电路的概念。PCell表示电路中,结构依赖于一个或多个参数的部件或组件。因此,它是一个由電子設計自動化(EDA)软件根据这些参数的取值自动生成的单元。例如,可以创建一个晶体管PCell,然后以不同的用户定义的长度和宽度使用该PCell的不同实例。EDA软件的厂商有时对参数化单元采用不同的名称,例如T-cell和magic cell。[2]
应用
[编辑]在电子电路设计中,单元是基本功能单元。给定的单元可以被多次放置或实例化。PCell比非参数化单元更灵活,因为不同实例可以具有不同的参数值,从而具有不同的结构。例如,与其为设计中各种尺寸的晶体管维护许多不同的单元定义,不如用单个PCell将晶体管的尺寸(宽度和长度)作为参数。单个PCell的不同实例即可表示不同尺寸但其他特性相似的晶体管。
集成电路内部的结构及其物理尺寸约束(设计规则)通常很复杂,手工绘制这些结构既繁琐又容易出错。通过使用PCell,电路设计人员可以轻松生成大量只在少数参数上不同的各种结构,从而提高设计效率与一致性。
PCell通常指代“物理PCell”,即描述电子元件在集成电路内物理结构的物理表示。尽管大多数PCell属于物理PCell,但器件符号在原理图捕获中也可以作为PCell实现。
所有PCell的基本特征是依赖于(输入)参数,并能基于这些参数生成设计数据。
实现
[编辑]PCell是一段程序代码。该代码负责根据其(输入)参数创建相应PCell变体结构的过程。以物理PCell为例,该代码生成(绘制)组成电路的掩模设计的实际图形。
由于一段PCell代码可以创建许多不同对象(具有不同参数值),因此该代码被称为“PCell master”(PCell主体)。该代码创建的对象/图形/数据称为该PCell的一个“实例”。通常一个PCell主体会产生多个实例/变体。这不仅有利于设计录入和规范说明,也能减少表示设计数据所需的内存资源。
生成
[编辑]PCell所使用的编程语言本身并不重要,但通常使用Cadence SKILL或Python来编写PCell的代码。也可以使用图形用户界面(GUI)生成PCell[3],或基于预定义函数库的专用PCell设计工具来生成PCell。
参考
[编辑]- ^ Bales, Mark, Design Databases, CRC Press: 12_1–12_16, 2018-10-03 [2025-10-03], ISBN 978-1-315-22169-4
- ^ Barr, Keith. ASIC Design in the Silicon Sandbox: A Complete Guide to Building Mixed-Signal Integrated Circuits. McGraw Hill Professional. 2007.
- ^ Tanner EDA: L-Edit T-Cell Builder. [2015-01-09].