模拟电路合成方法与相关技术的制作方法

文档序号:6466436阅读:169来源:国知局
专利名称:模拟电路合成方法与相关技术的制作方法
技术领域
本发明涉及一种模拟电路合成方法与技术,尤其涉及一种以优化计划主 导优化引擎数值仿真的模拟电路合成/设计/优化方法与技术。
背景技术
集成电路是现代信息社会最重要的硬件基础。随着集成电路的功能日趋 复杂多元,电路设计也越来越困难。因此,集成电路设计业者与设计工具发 展商无不致力研发更好、更方便、更有系统、自动化程度更高的集成电路设 计方法与技术。
如本领域普通技术人员所知,针对数字电路的自动化电路合成方法已经 发展成熟。数字电路设计者只要描述数字电路的输出入功能与一些运行限制
(constraint,如时序的限制),电路合成工具(软件)就能自动完成数字电路 的合成(也就是要以哪些逻辑门、触发器等电路单元并以何种连接方式来实 现数字电路设计者所想要的功能及限制)。相较于成熟的数字电路合成技术, 业界还在摸索模拟电路的自动化合成技术发展。由于模拟电路处理的不只是 0与1的数字信号,故模拟电路的设计门坎更高,在公知技术中也缺乏系统 性自动化模拟电路合成方法与技术。
在公知技术中,曾有业者推出针对锁相回路(PLL , Phase Lock Lo叩)的 编译器(compiler)作为锁相回路的自动化电路合成解决方案。不过此种技术仅 能针对锁相回路进行合成,设计弹性较低。另外,也有业者尝试以几何规划 (geometric programming)技术来进行的自动化PLL设计;此种技术不进行电 路数值仿真,而是将影响电路的参数与设计规格等映像至特定形式的数学等 式,并以几何规划技术对此数学等式求解以决定电路的设计参数。由于此种 公知的模拟电路合成技术需要繁杂艰深的数学计算与求解,其实用性尚待验 证。

发明内容
因此,本发明的主要目的,在于提供一种基于数值模拟的系统性通用
(general)模拟电路合成方法与技术,以协助模拟/混合电路(即数字/模拟混合 电路)的自动化合成/设计/优化。
更明确地说,本发明的目的之一,是提供一种进行模拟电路合成的方法, 其主要步骤包括有决定该模拟电路的电路设计拓扑(designtopology),并提 供一优化计划(optimization plan),用来记录至少一个由该模拟电路的多个电 路单元中选出的关键(critical)电路单元,以针对各关键电路单元分别记录至 少一个设计参数;这些设计参数即是由对应关键电路单元的多个参数中选出 的关键性参数。此外,此优化计划中尚可记录至少一优化目标、测式指针(test bench ,用来指定数值模拟中待监测的项目)、工艺相关数据 (technology-dependent data)、该模拟电路的设计规格/设计限制及/或该模拟电 路预设的操作环境。
完成优化计划后,本发明即可根据该优化计划中所记录的设计参数,使 用一优化引擎(optimization engine)改变各设计参数的数值反复进行数值模 拟,以追踪测试指标(针对该模拟电路求出测试指针中各待监测项目的数 值),找出在预设的操作环境下能符合设计规格/设计限制,并趋近该优化目 标的关键电路单元与设计参数组合,实现自动化模拟电路合成/设计/优化的 目的。
在本发明中,可就电路层级(circuitlevel)或是系统层级(systemlevel)来进 行模拟电路合成。譬如说,优化计划中所记录的设计参数可以是电路层级的 参数,像是一晶体管的尺寸、长宽比、临限电压及其它工艺参数;而该优化 引擎进行数值仿真时,则进行电路层级(circuitlevel)模拟,譬如说是以SPICE 为基础的数值模拟。电路层级仿真的优点是模拟结果较为精确,可明确地仿 真各晶体管/被动组件的运行情形,但也须耗费较长的时间来完成模拟。
另一方面,本发明模拟电路合成方法也可搭配一模拟数据库来进行系统 层级的合成。此模拟数据库中记录有多个电路单元及各电路单元所对应的系 统层级与电路层级信息;对应地,优化计划中所记录的设计参数也可以是会 影响电路单元系统层级行为的系统层级的特性(attribute),譬如说是一电路单 元的增益、反馈系数(coefficient)、回转率(slew rate)、极点(pole)、频宽、频
率响应等系统层级巨观特性;而当优化引擎进行数值仿真时,则可根据模拟
电路系统层级行为模型(behaviormodel)进行系统层级仿真,其另可由模拟数 据库中选出不同的电路单元取代同 一关键电路单元以反复根据优化计划中 记录的设计参数进行系统层级行为模型数值仿真。系统层级仿真重视的不是 电路单元中个别晶体管/组件的运行,而是整体模拟电路的行为,也因此,系 统层级的电路合成较有效率,完成合成所需的时间也较短。
举例来说,在本发明中,可将特定功能电路单元(像是一运算放大器或 一交换电容(switch capacitor)电路单元)的晶体管层级微观特性模型化成 系统层级的巨观行为模型,像是电路单元中各晶体管/被动组件(如电容等) 的参数会如何影响该电路单元的整体频宽或增益。利用系统层级的行为模 型,就能根据优化计划来进行系统层级数值仿真,譬如说是以Matlab为基础 的数值模拟。只要能将晶体管层级微观特性准确地模型化为系统层级行为模 型,系统层级的仿真结果与电路层级仿真结果会十分接近,这样一来,就可 利用系统层级快速仿真趋近电路层级仿真的精确度。在本发明中,这些系统 层级的行为模型、系统层级与电路层级间的关联及其模型化技术/知识就可保 存记录于模拟数据库中,方便日后的应用。
相较于本发明的模拟数据库应用,在公知技术中,因为无法系统性地弥 补系统层级与电路层级间的差异,故系统层级特性与电路层级参数间的关联 性较差,使得系统层级行为模型仿真结果和电路层级仿真结果之间的差异较 大,也就难以由系统层级仿真结果来准确预期模拟电路于电路层级的实际运 行情形,增加模拟电路设计上的困难。模拟电路设计者往往必须进行逾越设 计(over-design),将系统层级规格订定的比真正需求规格更为严格,以弥补系 统层级与电路层级间可能发生的差异。然而,更为严格的系统层级规格往往 难以实现,或使模拟电路的成本/布局面积/功率消耗无法最佳化。
本发明优化计划中也可另行加入对数值仿真进行的流程控制(flow control),此流程控制可记录有多个步骤,各步骤分别记录不同的关键电路单 元与对应的设计参数;在根据此优化计划使用优化引擎进行数值仿真时,就 可依据流程控制中的各步骤依序改变各设计参数的数值以进行数值模拟。
另一方面,本发明也可就布局前(pre-layout)与布局后(post-layout)进行模 拟电路合成/设计/优化。布局前优化可依据前述进行;而在进行布局后优化
时,另可依据布局进行一寄生效应萃取,以由布局设计中萃取出实际布局所 导致的电路寄生效应,在考虑这些寄生效应等效电路的情形下再度进行电路 设计验证。若验证失败,就可重新依据优化计划使用优化引擎再度依据寄生 效应萃取的结果进行数值模拟。本发明可分别在布局前/布局后使用相同的优 化计划或是分别订定优化计划(譬如说,可将布局前优化计划微调后更改为 布局后优化计划)。
总结来说,本发明又一目的是提供一种高效能模拟电路合成方法,用来 进行自动化的模拟电路合成/设计/优化。此方法可应用于电路层级或系统层 级的电路设计,并可适用于布局前或布局后优化。本方法要点包含有在针 对一模拟电路进行电路合成/设计/优化时,整合一电路设计拓扑、 一优化计 划及一测试指标,并选择是否要利用一模拟数据库,以进行一个以数值模拟 为基础的优化流程。
本发明可利用优化计划与模拟数据库来记录模拟电路合成的知识与技
巧(know-how),以增进合成的再运用(reusable)特性,提高模拟电路设计的生 产力,也能有效地设计出优化的模拟电路。模拟电路设计的关键之一是在模 拟电路中识别出对模拟电路行为影响最大的关键电路单元及相关的关键设 计参数,否则模拟电路设计者只能在众多电路单元中针对每一参数进行没有 系统且耗时费力的试误(trialanderror)。相较之下,本发明可将关键电路单元 及相关的关键设计参数记录于优化计划,只要微调优化计划细节(譬如说是 设计参数容许变动范围、测试指针、设计规格/设计限制、工艺相关资料等), 就可由一优化计划而衍生出多种优化计划,可分别合成出不同工艺下具有不 同规格的同种类模拟电路,发挥出极大的合成知识再运用优点,减少模拟电 路设计的时间与成本,提高电路设计的生产力。本发明可广泛使用于各种模 拟/混合电路的合成,譬如说是锁相回路、模拟至数字/数字至模拟转换器或 是滤波器等等。


图1示出的是本发明进行模拟电路合成/设计/优化的一实施例。 图2示出的是图1中优化计划的一个实施例。 图3示出的是一模拟电路的实施例。
图4列出的是本发明针对图3中模拟电路所订定的优化计划实施例。
图5为图1中模拟数据库的一实施例。
图6为本发明进行布局前/布局后模拟电路合成/设计/优化的实施例。
其中,附图标记说明如下-
10、 20优化计划
Sl-S10要点
OP积分器
sc切换电容
Ll画2 Ll-24、 L2國2 L2-62行
具体实施例方式
请参考图1。图1示出的是本发明方法一实施例的进行要点(步骤)。本 发明可就电路层级或是系统层级来进行模拟电路(譬如说是一模拟电路功能
方块)的合成/设计/优化,而本发明模拟电路合成方法中可包括下列要点
要点Sl:决定模拟电路的设计规格(design spec)及/或设计限制(design constraint)。在此要点中,可根据模拟电路的使用者需求来决定模拟电路的设 计规格/限制。譬如说,就电路层级的设计/合成来说,运算放大器此种模拟 电路的设计规格通常包括指定的增益(gain)、回转率(slew rate)、频宽 (bandwidth)等等。另举一例就系统层级的设计/合成来说,模拟至数字转换 器此种模拟/混合电路的设计规格则通常会包括指定的信噪比(SNR)、过采样 率OSR(over-sampling rate)、功率消耗等等。设计规格有时会以限制(constraint) 的形式来呈现,譬如说信噪比应小于某一给定值。
要点S2:根据设计规格决定该模拟电路的电路设计拓扑(design topology),也就是模拟电路的电路架构中会包括哪些电路单元。就电路层级 的设计/合成来说,电路单元通常是晶体管层级的组件,而其电路设计拓扑可 用(譬如说)电路网络列表(netlist)等基于SPICE的硬件电路语言/格式来加 以描述。另一方面,就系统层级的设计/合成来说,电路单元通常是电路功能 构筑方块,其电路设计拓扑可利用像是Matlab这种高级语言的算法来加以描 述。
要点S3:提供一优化计划。基本上,本发明优化计划可视为合成/设计/ 优化流程自动化进行的脚本(script)。优化计划中可记录有模拟电路预设的操作环境(如温度与操作电压等)、设计拓扑、模拟电路的设计规格与优化目
标、工艺相关数据(technology-dependent data),并记录模拟电路中的关键电 路单元及其对应的重要设计参数,与这些设计参数在优化过程中容许变动的 范围。此外,优化计划中也可记录一流程控制(flow control),流程控制中记 录有至少一步骤,各步骤可分别记录不同的关键电路单元与对应设计参数的 优化步骤。换句话说,本发明在模拟电路合成/设计/优化的过程中,可根据 此一流程控制先针对某一(或某些)电路单元进行优化微调,再针对另一(或 另一些)其它的电路单元进行优化微调。
如本领域普通技术人员所知,模拟电路中有许多电路单元,各电路单元 又有许多对应的参数会改变电路单元的特性/表现,连带地,也会或多或少影 响模拟电路的整体性能与运行。因此,模拟电路设计的关键之一是在模拟电 路中识别出对此模拟电路行为影响最大的关键电路单元及相关的关键设计 参数,否则模拟电路设计者只能在众多电路单元中针对每一参数进行没有系 统且耗时费力的试误(trialanderror)。而在本发明中,即是利用优化计划来记 录关键电路单元及其对应之关键设计参数,连带也可记录优化的流程控制。 换句话说,优化计划基本上记录了完成一模拟电路合成/设计/优化所必须的 数值、知识与流程。此优化计划可用一般的脚本语言(像是td、 perl等等)来 加以描述。
要点S4:提供一测试指标(test bench),以在进行数值仿真时指定对模拟 电路的待监测项目;譬如说是模拟电路中某一节点上的电流或电压,或是增 益等等。指定测试项目后,在进行数值模拟时就会针对这些测试指标进行计 算,得出这些测试指标中各待监测项目所对应的数值。
要点S5:可根据优化/电路仿真的层级选择是否要引用一模拟数据库。 若是要进行系统层级的模拟电路合成/设计/优化,就可援引此一模拟数据库。 本发明模拟数据库中可记录多个具有相同功能或不同功能的电路单元,譬如 说,模拟数据库中可记录各种电流镜(current mirror)、差动对(differential pair)、 偏压电路(bias circuit)、运算放大器、压控振荡器(VCO, Voltage-Controlled Oscillator)、混合器(mixer)或甚至是锁相回路(PLL)等模拟/混合电路构筑方 块。这些电路单元可以是己针对本身进行优化的电路单元。
本发明模拟数据库最重要的特点之一,就是此数据库中的各个电路单元
都有特征化的特性(attributes),也就是由各龟路单元的晶体管层级特征模型 化/特征化所形成的系统层级的巨观行为特性。以运算放大器这种电路单元来 说,其晶体管层级的特征(像是各晶体管的尺寸、工艺参数与特性)会影响 运算放大器的系统层级整体特性(像是其增益、单增益频宽(imit-gain bandwidth)、回转率等),而这些晶体管层级特征与系统层级特性间的相互关 系就会被模型化/特征化而被记录于本发明模拟数据库中。换句话说,在本发 明模拟数据库中,不仅会针对各电路单元记录晶体管层级特征与参数,也可 一并记录其对应的功能方块(譬如说运算放大器中有差动输入对、偏压负载 等等)、行为模型及/或系统层级特性等等。电路单元的行为模型/功能方块可 用Matlab为基础的语言来加以描述记录。
本发明模拟数据库中可根据功能、电路架构(architecture)与特性(attribute) 来进行组织、分类,使优化引擎能依据不同需求(如设计规格、测试指针) 自动选择适当的电路单元。
要点S6:根据优化计划,利用优化引擎来进行数值仿真以产出优化结果。 换句话说,本发明是以模拟为基础的优化引擎来进行电路设计的优化。在现 代的电子设计自动化领域中,已具备各种成熟的数值模拟,故采用模拟为基 础的优化可使用既有的数值模拟来进行,不需重新开发优化引擎。在优化的 过程中,优化引擎会根据优化计划中的记录依序(若有流程控制)在各关键 设计参数的容许变动范围中改变各关键设计参数,反复进行数值模拟,以求 得测试指针中待监测项目的数值,并了解模拟电路运行时是否可符合设计规 格/设计限制,同时也针对优化目标进行优化,以趋近最佳化的电路设计。优 化引擎的运行结果可记录于一优化结果(optimizedresult)中,如图1中的要点 S7所示。
在进行电路层级的模拟电路合成/设计/优化时,优化引擎可使用电路层 级(circuit level)模拟,像是基于SPICE的电路数值仿真。另一方面,在进行 系统层级的模拟电路合成/设计/优化时,优化引擎则可配合模拟数据库进行 系统层级的仿真,像是以Matlab为基础的数值模拟。在针对某一关键电路单 元进行优化时,优化引擎可在相同功能的不同电路单元间选取适当的电路单 元来作为该关键电路单元进行数值仿真,据以进行优化。
要点S7:完成优化结果。若成功完成优化,代表要点S2中的电路拓扑
能趋近要点S3中最佳化的优化目标。就龟路层级的模拟电路合成/设计/优化 而言,优化结果是电路设计的电路网络列表(netlist),其物理布局尺寸也一并
确定。就系统层级的模拟电路合成/设计/优化而言,可确定出系统层级的优 化电路设计。由于优化是在系统层级完成的,故还可进一步选择要以哪些电
路架构来实现此一系统层级的电路;也可利用模拟数据库中的记录来决定如 何实现系统层级电路。举例来说,在针对某一模拟电路进行系统层级的模拟 电路合成/设计/优化时,其优化结果可能会指明该模拟电路需使用一个具有 特定频宽的运算放大器才能实现优化后的模拟电路。而在决定要如何以晶体 管层级架构来实现该运算放大器时,就可参考模拟数据库中的记录,实际决 定该运算放大器要由哪些晶体管(与被动组件)来实现。
要点S8:验证优化结果,也就是验证优化后的电路设计是否可正确满足 设计规格/设计限制。在本发明中,可依传统设计流程进行一般的验证,譬如 说是进行一或多次仿真以确定关键设计规格都已被满足。就系统层级的模拟 电路合成/设计/优化来说,优化是在系统层级进行的,但验证时就可进行电 路层级的数值模拟。同时,若有更进一步(moreaggressive)的优化目标,也可 在实际实现系统层级电路时进行更进一步的优化与验证。通过验证后,也就 完成本发明模拟电路合成/设计/优化的流程。
另一方面,若验证未通过,则需进行错误分析(trouble shooting),再重新
进行优化的程序。验证未通过的可能原因包括关键设计规格未在优化计划 中限制,模拟数据库中系统层级行为模型不够精确等等。
以下先以图2的优化计划10为例来说明本发明针对一模拟电路进行电 路层级电路合成/设计/优化的实施情形。优化计划10中有多行描述Ll-2、 Ll-4、 Ll-6等等,在此要强调的是,此处的行号Ll-2、 Ll-4等等仅为方便 解释之用,并不代表本发明只能按图2中行号顺序撰写/执行各行描述。首先, 行Ll-2的意义是将整个优化流程进行情形记录于一文件ckt.log。行Ll-4代 表优化引擎会使用SPECTRE此种类似SPICE的电路仿真器来进行电路层级 的数值模拟。行Ll-6设定该模拟电路的运行温度为摄氏25度(也就是此模 拟电路的操作环境之一)。行L-8由一文件inputscs加载此模拟电路的电路 设计拓扑(其可为一电路网络列表,netlist)。行L1-12则由另一个不同文件 路径的input.scs载入测试指标(test bench)。另夕卜,行L1-14则代表该模拟电路中的关键电路单元为NM7 (譬如说是 一 n型金属氧化物半导体晶体管),关键设计参数则为其宽度(故于L1-14 中记录为I0.I0.NM7.w)。为了根据此设计参数优化模拟电路,行L1-14也以 "-start 5u -stop 8u -step O.lu"来使优化引擎能将此设计参数在5um和8um 间以符合0.01um最小分辨率的方式变化,以了解怎样的设计参数数值能使 此模拟电路性能趋近其优化目标。换句话说,行L1-14记录了此模拟电路的 关键电路单元,其所对应的关键设计参数,以及此设计参数在优化过程中容 许变动的范围("-start 5u-stop 8u-step O.lu")。行L1-16记录了此模拟电路 的设计规格之一 (譬如说,其回路增益Loop—Gain必须小于1)。行L1-18与 L1-20则与优化目标有关。行L1-18代表要将回路增益Loop—Gian最小化, 而行L1-20就代表此优化计划的优化目标是依照行L1-18来优化回路增益 Loop—Gain o
根据优化计划10中的上述记录,优化引擎就可反复进行数值模拟,在 改变关键参数的同时, 一方面求出测试指针中待监测项目的数值,并测试此 模拟电路是否能在设定的操作环境下符合设计规格/设计限制,另一方面则力 求实现(合理地趋近)优化目标。实现优化目标后,可根据优化后的设计参 数更新/输出优化后的电路设计(行L1-22与Ll-24)。基本上,本发明模拟 电路的电路层级合成/设计/优化也就此完成。
请参考图3及图4。以下将以图3与图4为例来说明本发明如何应用于 系统层级模拟电路合成/设计/优化。在图3、图4中,本发明是用来设计一和 差调变器(Sigma-Delta Modulator),其系统层级功能方框图(也就是电路拓扑) 就如图3所示;其主要(关键)电路单元包括了n个由运算放大器(其转移 函数于图中表记为Hl(z)、 H2(z)至Hn(z))形成的积分器(integrator)OP,以及 h个切换电容(switching capacitor)SC (在图中分别记为al、 a2至an,以及 bl、 b2至bn)。在系统层级电路合成/设计/优化中,各积分器OP的系统层级 运行特征可由4个关键性的系统层级特性来加以模型化,也就是增益(Gain)、 单增益频宽(Unit-GainBand-Width, UGBW)、回转率(slew rate, SR)以及相位 裕度(phase margin, PM)来代表。各个切换电容则分别有一个关键性的系统 层级系数(coefficient)来模型化其系统层级运行特征。对整个和插调变器来 说,本发明可在其系统层级行为模型中考虑非线性增益与两个极点(pole)等效
应,以增加系统层级行为模型的精确度,使系统层级行为模型的数值仿真结 果可以相当接近真正的电路层级行为。
图4示出的则是本发明针对图3中电路(以n=3为例)进行模拟电路合成 /设计/优化的优化计划20。优化计划20中有多行描述L2-2、 L2-4、 L2-6等 等,在此要强调的是,这些行号L2-2、 L2-4等等仅为技术解释时方便参考之 用,并不代表本发明只能按图4中行号顺序撰写/执行各行描述。其中,行 L2-2即代表此优化计划将Matlab此种高级语言来进行系统层级数值仿真。 行L2-6则加载一个名称为analog—叩的模拟数据库。在此实施例中,此模拟 数据库中记录的是有两个极点的各种运算放大器。行L2-18、 L2-20、 L2-22、 L2-24、 L2-26、 L2画28、 L2誦30、 L2画32、 L2-34、 L2-38、 L2-40、 L2-42、 L2-46、 L2-48、 L2-50、 L2-52、 L2-54及L2-56则记录了各积分器OP、切换电容SC 的系统层级特性的可容许变动范围,也就是各关键电路单元的关键设计参数 在优化过程中可调整的范围。在执行此优化计划20时,本发明就可根据这 些范围反复进行系统层级数值仿真。行L2-58描述的则是设计规格限制(譬 如说,其信噪比snr需大于100)。另外,行L2-60及L2-62则与优化目标有 关。在此实施例中,优化目标是使各运算放大器与各切换电容的总和面积最 小,基本上也就是使和差调变器的总布局面积趋近最小。
根据优化计划20,优化引擎就可以自动选用模拟数据库中的各种运算放 大器,并根据各设计参数的可调整范围反复进行系统层级数值仿真, 一方面 测试模拟电路(此例中为和差调变器)是否能符合电路设计规格/设计限制, 一方面趋近模拟电路的优化目标(此例中是使和差调变器的总面积最小)。 由于使用了系统层级仿真来进行电路设计/合成/优化,优化计划20的总执行 时间与电路层级仿真进行一次所需时间相比大约仅为1/10,且系统层级优化 结果和电路层级仿真结果十分相近。如前面讨论过的,电路层级仿真会实际 仿真模拟电路中各晶体管、被动组件的运行情形,其精确度/正确度较高,但 缺点是需耗费大量的时间进行模拟运算。系统层级仿真则针对模拟电路的系 统层级行为模型进行数值仿真,其运算时间短,但若无配套措施(如本发明中 的模拟数据库),系统层级的仿真结果会和电路层级仿真结果相差甚大。在现 有技术中,其实很难在电路层级与系统层级间取得平衡;若要在系统层级中 进行电路合成/设计/优化,设计者常要进行逾越设计(over-design),将系统层
级的规格、限制订定的较严格,以弥补系统层级与电路层级间的差异。然而, 过度设计的程度难以拿捏,且过于严格的规格常会导致电路合成失败。另一 方面,现有技术也很难在电路层级参数与系统层级特性间取得平衡。譬如说, 在现有技术中,其实无法在系统层级上最佳化电路布局面积,因为布局面积 是电路层级的参数。
相较于现有技术的缺点,本发明可通过良好的模拟数据库来解决系统层 级与电路层级的差异。在本发明的模拟数据库中,可针对每一电路单元记录 其电路层级参数(像是布局面积、功率消耗等等)以及系统层级特性(像是 极点、增益、频宽等等),使本发明的模拟电路合成/设计/优化能在电路层级 与系统层级间取得平衡,不仅可使系统层级优化结果趋近电路层级的优化结 果以同时达到省时、精确的目的,也可利用系统层级优化电路层级的优化目 标。
为进一步说明本发明模拟数据库的构想,请参考图5;图5是以一实施 例来示意本发明模拟数据库中为某一类型的电路单元(譬如说是一个具有两
极点的运算放大器)所建立的信息。此信息可以是用XML等能以巻标(tag) 形式记录分类信息的语言来记录/描述一电路单元的种种参数与特性。如图5 所示,标签〈DESIGN NAME= "OP2" >代表此类电路单元属于运算放大器
"OP2"这一类别。巻标〈ARCHITECTURE〉代表此类电路单元适用的电路 架构可以是一和差调变器。巻标〈SPECIFICATION〉代表此一信息中为此类电 路单元记录了哪些规格特性,譬如说是相位裕度PM (Phase Margin)、增益 GAIN、信噪比SRN等等。巻标OPTIMIZE〉代表的则是此类电路单元中已 针对哪些特性进行过优化;譬如说其直流偏压电流已经趋近最小(图5中记 录为MINIMIZE IVDDA)以节省功率消耗,其布局面积也已经趋近最小
(MINIMIZE AREA)。另外其两个极点的位置(与频宽有关)的位置(频率) 也已经趋近最佳化。
另一方面,标签〈INSTANTID-"1,则代表此类电路单元中的第1例(也 就是此类电路单元中的第1种电路)。在此巻标下(也就是由头标签 <INSTANT ID-,T,〉至尾标签々INSTANT〉之间所涵盖的各项信息)则代表此 一例电路的各项特性,像是其相位裕度PM为46.4931度、增益GAIN为 74.9998163、其单增益频宽UGBW则为21197000.0Hz等等。当然,此类电
路单元下可以有许多例(instance),分别对应此类电路单元下的多种不同电 路。模拟数据库中也可针对不同种类电路单元(譬如说是标准电压产生器, bandgap generator)分别记录对应的各例。
在建立本发明模拟数据库时,可沿用本发明在图2中的技术,也就是以 电路层级优化计划及数值模拟来自动地优化各类电路单元,并记录下各电路 单元优化后的系统层级特性,作为模拟数据库中的内容。
在图3、图4的实施例中,本发明是以布局面积为优化目标。事实上, 本发明在针对一模拟电路进行合成/设计/优化时,也可在优化计划中安排一 流程控制(flow control),此流程控制中可以有多个步骤,各步骤分别记录不 同的关键电路单元、对应的设计参数、设计规格/设计限制及/或测试指标, 以逐步地渐进完成整个模拟电路的合成/设计/优化。譬如说,若某一模拟电 路中共有6个关键电路单元,流程控制就可先针对第1关键电路单元的关键 设计参数进行反多值模拟,以针对第1关键电路单元的设计规格、测试指针 及/或优化目标进行优化。完成之后,再针对第2关键电路的对应设计参数与 其特定的设计规格、测试指针及/或优化目标进行优化,以此类推。在图2与 图4的例子中,行L1-10 (图2)与行L2-16 (图4)中的叙述"set—current—step 1"即是用来设定现行步骤为1。如流程控制需要进fi^多个步骤,即可利用类 似的叙述设定步骤2、 3等等。
本发明技术可同时适用于布局前(pre-layout)与布局后(post-layout)的模
拟电路合成/设计/优化。布局前的电路合成/设计/优化主要可依据图1的要点 来实施。若要进一步进行布局后的电路合成/设计/优化,则可依据图6的要 点来实施。请参考图6 (并一并参考图1);延续图1中的实施例,在要点S8 的验证顺利通过后,基本上就可完成布局前的电路合成/设计/优化。若要进 一步进行布局后的电路合成/设计/优化,可依图6的实施例,在布局设计完 成后继续进行下列要点(步骤)
要点S9:进行布局寄生效应萃取。在布局设计完成后,可以由布局设计 中萃取出因电路布局所导致的电路寄生效应,像是导电线路的等效电阻、电 容、电感等等。
要点S10:在考虑寄生效应的情形下再度进行验证;也就是将寄生效应 等效电路加入至验证过程中,以了解这些寄生效应对整个模拟电路的影响程度。若通过验证,布局后的模拟电路合成/设计/优化也就完成了。相对地, 若验证未通过,则要在考虑寄生效应的情形下重新依据优化计划以优化引擎 再度进行优化,如图6中所示。若有需要的话,也可在重新进行优化时微调 优化计划的内容(譬如说是改变关键设计参数的可容许范围等等)。
总结来说,相较于现有的公知技术,本发明可用模拟数据库来紧密结合 电路层级与系统层级的电路合成/设计/优化,可兼顾系统层级的高效率与电 路层级的精确。本发明中使用的优化计划则能自动化整个模拟电路合成/设计 /优化流程,并能用来记录模拟电路设计的知识、经验与技巧,提高这些知识 的再运用性,让电路设计者只要微调优化计划就可容易地设计出不同工艺下 能满足不同设计规格、领U试指针及域优化目标的模拟电路,降低模拟电路合 成/设计/优化的成本与资源。
综上所述,虽然本发明已以较佳实施例公开如上,然其并非用以限定本 发明,任何本领域普通技术人员,在不脱离本发明的精神和范围内,当可作 各种更动与润饰,因此本发明的保护范围当以随附的权利要求的范围为准。
权利要求
1.一种进行模拟电路合成的方法,该模拟电路中有多个电路单元,各电路单元分别具有多个对应的参数,各参数可改变对应电路单元的运行或特性;而该方法包含有提供一优化计划,用来记录至少一个由该多个电路单元中选出的关键电路单元,并针对各关键电路单元分别记录至少一个设计参数,其中各设计参数由对应关键电路单元的多个参数中选出;以及根据该优化计划中所记录的设计参数,使用一优化引擎改变各设计参数的数值反复进行数值模拟。
2. 如权利要求1所述的方法,其还包含有-于该优化计划中记录至少一优化目标,而当针对该优化计划使用该优化引擎进行数值仿真时,是改变各设计参 数的数值以趋近该优化目标。
3. 如权利要求1所述的方法,其还包含有于该优化计划中记录一流程控制,该流程控制中记录有至少一步骤,各 步骤分别记录不同的关键电路单元与对应的设计参数;而当根据该优化计划使用该优化引擎进行数值仿真时,根据该流程控制 中的各步骤依序改变各设计参数的数值以进行数值模拟。
4. 如权利要求1所述的方法,.其中该优化计划中所记录的设计参数是电 路层级的参数,其可为一晶体管的尺寸、临限电压或工艺参数;而当该优化 引擎进行数值仿真时,是进行电路层级模拟。
5. 如权利要求1所述的方法,其中该优化计划中所记录的设计参数是系 统层级的特性,其可为一电路单元的增益、反馈系数、回转率、极点、频宽、 频率响应、功率消耗或布局面积;而当该优化引擎进行数值仿真时,是进行 系统层级模拟。
6. 如权利要求1所述的方法,其还包含有提供一模拟数据库,该模拟数据库中记录有多个电路单元及各电路单元 所对应的系统层级信息;其中当根据该优化计划使用优化引擎进行数值仿真时,另可由该模拟数 据库中选出不同的电路单元取代同一关键电路单元以反复根据各电路单元所对应的系统层级行为模型进行系统层级数值仿真。
7. 如权利要求1所述的方法,其还包含有 决定该模拟电路的电路设计拓扑。
8. 如权利要求1所述的方法,其还包含有于该优化计划中记录一测试指针,用来指定数值模拟中待监控的项目。
9. 如权利要求8所述的方法,其还包含有在根据该优化计划使用优化引擎进行数值仿真时,针对该模拟电路求出 该测试指针中待监测项目的数值。
10. 如权利要求1所述的方法,其还包含有于该优化计划中记录 一工艺相关数据、该模拟电路的设计规格或该模 拟电路预设的操作环境。
11. 如权利要求1所述的方法,其是用来进行一布局前优化。
12. 如权利要求1所述的方法,其是用来进行一布局后优化,该方法还包 含有进行一寄生效应萃取,以由布局设计中萃取出因电路布局所导致的电路 寄生效应。
13. —种高效能模拟电路合成方法,用来进行自动化的模拟电路合成/设 计/优化;该方法可应用于电路层级或系统层级的电路设计,并可适用于布局 前或布局后优化;该方法包含有在针对一模拟电路进行电路合成/设计/优化时,整合一电路设计拓扑、 一优化计划及一测试指标,并选择是否要利用一模拟数据库,以进行一个以 数值模拟为基础的优化流程。
14. 如权利要求13所述的方法,其中该模拟电路中有多个电路单元,各 电路单元分别具有多个对应的参数,各参数可改变对应电路单元的运行或特 性;而该优化计划,是用来记录至少一个由该多个电路单元中选出的关键电 路单元,并针对各关键电路单元分别记录至少一个设计参数,其中各设计参 数是由对应关键电路单元的多个参数中选出。
15. 如权利要求14所述的方法,其中该模拟数据库中记录有多个电路单 元及各电路单元所对应的系统层级信息。
全文摘要
本发明提供一种模拟电路合成方法与相关技术。一个模拟电路中通常由许多个电路单元组合而成,各电路单元的运行与特性分别受控于对应的参数。而本发明是将这些电路单元中关键电路单元的重要设计参数连同优化目标、设计规格和/或设计限制一起记录于一优化计划中,再使用一优化引擎针对这些设计参数反复进行电路层级或系统层级的数值模拟,以找出符合设计规格/设计限制并趋近优化目标的关键电路单元与设计参数,自动化系统地完成模拟电路的合成/设计/优化。本发明可分别合成出不同工艺下具有不同规格的同种类模拟电路,发挥出极大的合成知识再运用优点,减少模拟电路设计的时间与成本,提高电路设计的生产力。
文档编号G06F17/50GK101339582SQ20081014601
公开日2009年1月7日 申请日期2008年8月6日 优先权日2008年8月6日
发明者何荣基, 吴章昌, 张永嘉, 钟伟滋, 陈麒哲 申请人:智原科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1