性能函数与性能模型

性能函数 (Performance Function) 和可行性函数 (Feasibility Function) 是 Martens & Gielen《High-Level Modeling and Synthesis of Analog Integrated Systems》(2008) Ch.2 §2.4 系统定义的概念框架,用于描述模拟/混合信号设计中参数到性能的映射关系。五种性能函数类型覆盖从仿真到符号分析的完整技术谱系。


形式化定义

参数 (Parameter)

描述层 中基本元素 或互连 的属性。如晶体管尺寸 、电容 、极点 、失真系数 。

性能值 (Performance Value)

整个设计的属性。如 SNDR (dB)、NF (dB)、相位裕度 (deg)、功耗 (W)。

性能函数 (Performance Function)

参数到性能值的映射。同一性能值可用于不同描述层(如增益可在行为和电路层计算)。

参数/性能的关系

  • 某抽象级的性能可能成为更高抽象级的参数
  • 性能函数 的选择影响设计流程的计算时间、精度、灵活性

五种性能函数类型(Table 2.2)

类型评估速度设置时间精度灵活性洞察力
Simulation-based••——•••••••••
Table-based••••••••-•••
User-defined equations•••••••••-••••••
Performance models••••••••••••
Symbolic analysis••••-••-••••••

(•••• = 非常高,• = 非常低,— = N/A)

1. Simulation-based(基于仿真)

原理:定义激励集 → 数值仿真输出信号 → 从输出提取性能

技术谱系:

  • Time-marching algorithms(SPICE 标准)
  • Harmonic balance(频域稳态)
  • 离散时间方法(SC 分析)
  • Shooting methods(周期性稳态)
  • 混合频-时方法
  • 多时间技术(MTT)

优势:最广泛的适用性、可调精度 劣势:计算时间随电路规模增长、洞察力低 典型工具:SPICE、SpectreRF、Eldo

2. Table-based(基于查表)

原理:预仿真构建表 → 快速查表评估

变体:

  • 显式预仿真表 [Bishop 1990]
  • Pareto 边界采样法 [De Smedt & Gielen 2003] — 优化 Pareto 最优参数组合,减少设置时间
  • 仅保存 Pareto 前沿点,兼顾速度和覆盖范围

优势:评估极快 劣势:设置时间长、仅覆盖预仿真空间、灵活性低

3. User-defined equations(用户定义方程)

原理:设计者提供分析表达式

典型形式(运放增益):

优势:

  • 评估极快
  • 深入洞察参数-性能关系
  • 可集成在优化循环中

劣势:

  • 推导耗时,需深厚经验
  • 每拓扑需重推导
  • 精度受限(简化假设)

适用场景:初步设计探索、低精度的早期设计阶段

4. Performance models(性能模型)

原理:通过回归方法从仿真数据构建参数-性能模板

模板类型:

  • 有理函数 (Rational functions)
  • 样条函数 (Spline)
  • 正项式 (Posynomials) — 支持几何规划 [Daems 2003]
  • 支持向量机 (SVM) [De Bernardinis 2003]
  • 神经网络 (Neural networks)
  • 基于语法的方法 [McConaghy]

构建流程:

仿真采样(训练集)
    ↓
选择模板类型
    ↓
回归拟合系数
    ↓
验证精度

权衡:

  • 精度 vs 解释性(简化表达式易理解但可能精度不足)
  • 性能模型的可行性函数变体:直接用 SVM 建模可行性边界 [Kiely 2004, Ding 2005]

5. Symbolic analysis(符号分析)

原理:自动推导显式符号表达式

流程:

电路网表
    ↓
符号方程建立
    ↓
简化(前/中/后处理)
    ↓
表达式生成

简化技术:

  • 简化前(层次化分解)
  • 简化中(忽略小项)
  • 简化后(数值重要性排序)
  • DDD (Determinant Decision Diagram) 存储 → 加速评估

典型工具:ISAAC [Gielen 1989]

适用范围:线性/弱非线性性能函数


可行性函数 (Feasibility Function)

定义

用途

  • 指示某性能是否可实现(不需知道具体参数值)
  • 适合架构探索阶段的快速可行性评估
  • 可从性能函数计算得到,也可直接建模(SVM 逼近可行性边界)

应用场景

在高层级综合中,可行性函数帮助回答:“对于给定的规格集合,是否存在一种参数组合使其可行?” 若不可行则触发架构变换。


五种方法的选用策略

设计阶段推荐方法原因
架构探索Feasibility function / User-defined equations快速、可比较不同拓扑
参数优化Performance models平衡精度和速度
精度验证Simulation-based最高精度
知识捕获Symbolic analysis产生可重用洞察
数据库构建Table-based支持快速查询

实际设计中常用组合方法:性能模型预筛选 → 仿真精确验证。


与其他概念的关系