在一个analog macro端口上,有些pin是always on的,有些是shut down的,如何描述这些pin的power属性?这是一个常见问题,驴就此机会大致描述一下常见的做法。对于这个问题,UPF2.0跟UPF2.1有不同的处理方式。

UPF2.0, IEEE1801-2009,因为modeling的能力比较弱,有以下两种方式来处理:

方式一:需要Library的支持:

  • 需要在library里有电源跟地的定义

pg_pin(VDDA) {
     voltage_name : VDDA;
     pg_type : 
primary_power;
}
pg_pin(VSSA) {
     voltage_name : VSSA;
     pg_type : 
primary_ground;
}

   pg_pin(VDDB) {
     voltage_name : VDDB;
     pg_type : 
primary_power;
}

  • 需要将signal pin跟power pin关联起来

pin(IA) {
  related_power_pin : "VDDA";
  related_ground_pin : "VSSA";
  direction : input; 
}

  pin(OB) {
  related_power_pin : "VDDB";
  related_ground_pin : "VSSB";
  direction : output

       power_down_function:  “!VDDB || VSSB”;
};

  • 在UPF文件中,需要将Hard_IP的PG pin连起来

connect_supply_net VDD1 –ports {Hard_IP/VDDA}

connect_supply_net VDD2 –ports {Hard_IP/VDDB}

connect_supply_net VSS –ports {Hard_IP/VSSA}

connect_supply_net VSS –ports {Hard_IP/VSSB}

方式二:如果library中没有电源跟地的定义:

  • 用UPF命令set_port_attributes来指定Hard_IP输入的receiver supply跟输出的driver supply。

set_port_attributes -ports {Macro/IA} –receiver_supply_set SS_VDDA_VSSA

set_port_attributes –ports {Macro/OB} –driver_supply_set SS_VDDB_VSSB

 

UPF2.1, IEEE1801-2013吸收了CPF hard macro model的精华,可以通过hard macro的power model来描述hard macro的power属性。

  • 由两组命令组合完成:

begin_power_model upf_model -for cellA

create_power_domainPD1-elements {.} -supply {ssh1} -supply {ssh2} 

# other commands ...

end_power_model

apply_power_model power_model_name

[-elements instance_list]

[-supply_map {{lower_scope_handle upper_scope_supply_set}*}] 

 

如果library里没有电源跟地的定义,建议使用UPF2.1的power_model来定义,更灵活且可以描述更复杂.

的power关系。一个power_model的完整示例:

Analog power pin UPF defination的更多相关文章

  1. Unused port adds a PWM/analog channel to a microcontroller

    Low-cost, 8-bit, single-chip microcontrollers are stingy when it comes to on-chip PWM (pulse-width-m ...

  2. Power Gating的设计(架构)

    switching network的层次: 一般选择flatted的形式,hierarchy的结构对voltage drop和performance delay有影响. Power network的结 ...

  3. ADC Power Supplies

    http://www.planetanalog.com/author.asp?section_id=3041&doc_id=563055 Jonathan Harris, Product Ap ...

  4. mwc config.h 中文注释

    #ifndef CONFIG_H_ #define CONFIG_H_ /*************************************************************** ...

  5. SAE J1850 VPW Implement

    ---恢复内容开始--- OBDII Interface Project When I can ever find enough time away from schoolwork, I try to ...

  6. Understanding the STM32F0's GPIO

    Understanding the STM32F0's GPIO This is the first part of the GPIO tutorial for the STM32F0Discover ...

  7. MCU相关知识

    一个处理器达到 200 DMIPS的性能,这是个什么概念? DMIPS全称叫Dhrystone MIPS 这项测试是用来计算同一秒内系统的处理能力,它的单位以百万来计算,也就是(MIPS) 上面的意思 ...

  8. nRF52-PCA10040——Overview

    Overview Zephyr applications use the nrf52_pca10040 board configuration to run on the nRF52 Developm ...

  9. MTK Camera驱动移植

    对于MTK Camera驱动移植一般分为四部分: 1.硬件IO口配置: 2.Camera驱动移植: 3.上电时序. 4.改动i2c控制器: 硬件电路: 1.GPIO配置 打开 mediatek\dct ...

随机推荐

  1. DVR

    DVR,全称为Digital Video Recorder(硬盘录像机),即数字视频录像机,相对于传统的模拟视频录像机,采用硬盘录像,故常常被称为硬盘录像机.它是一套进行图像计算存储处理的计算机系统, ...

  2. SpringBoot学习- 10、设计用户角色权限表

    SpringBoot学习足迹 前几节已经基本了解了SpringBoot框架常用的技术,其他的消息队列,定时器等技术暂时用不到,真正项目中如果基于微信系,阿里系开发的话,还要了解平台专用的技术知识,学习 ...

  3. mybatis-plus - TableInfo

    在前面 的 inject() 方法中, 调用了一个 TableInfoHelper.initTableInfo(builderAssistant, modelClass) 方法, 来获取 表信息: T ...

  4. 巨杉Tech | 十分钟快速搭建 Wordpress 博客系统

    介绍 很多互联网应用程序开发人员第一个接触到的网站项目就是博客系统.而全球使用最广的Wordpress常常被用户用来快速搭建个人博客网站.默认情况下,Wordpress一般在后台使用MySQL关系型数 ...

  5. [HEOI2015] 小Z的房间 - 矩阵树定理

    #include <bits/stdc++.h> using namespace std; #define int long long const int N = 105; const i ...

  6. python3 win 建立虚拟环境(virtualenv)

    1.安装virtualenv pip3 install virtualenv 2.进入即将创建虚拟环境的目录 cd xxxx 3.创建虚拟环境 py -3 -m venv testxunihua 4. ...

  7. 网页前端导出CSV,Excel格式文件

    通过自己实际测试有以下几种方法 方法一通过a标签实现,把要导出的数据用“\n”和“,”拼接成一个字符串,然后把字符串放到href中,这种方法只支持chrome,firefox等非ie浏览器 html页 ...

  8. IntelliJ IDEA 2017.3尚硅谷-----省电模式

  9. BigInteger和BigDecimal的基本用法

    整型大数 BigInteger: import java.math.BigInteger; import java.util.Scanner; public class Main { public s ...

  10. VIM键盘映射 (Map)

    http://www.pythonclub.org/linux/vim/map VIM键盘映射 (Map) 设置键盘映射 使用:map命令,可以将键盘上的某个按键与Vim的命令绑定起来.例如使用以下命 ...