• low power-upf-vcsnlp(六)


    low power-upf-vcsnlp(一)

    例子中最初dut和环境见上篇low power-upf-vcsnlp(二)

    例子中dut和环境在上篇基础上修改low power-upf-vcsnlp(三)

    low-power-upf-vcsnlp(四)

    low power-upf-vcsnlp(五) 

    low power-upf-vcsnlp(六)

    4.create_power_switch

     -switch_type 指定switch类型,如果是粗粒度或者both,则output_supply_port必须指定否则报错。细粒度的则会忽略output_supply_port。

    -output_supply_port指定output port name以及连接的net name

    -input_supply_port指定input port name以及连接的net name

    -control_port指定control port name和连接的net name。net负责开关的。

    -on/off_state指定state,和对应的布尔表达式

    -ack_port -ack_delay指定响应port和延时。

    (1)添加PD0的power switch

    1. set_design_top top/dut_u
    2. #create_power_domain PD_TOP -include_scope
    3. create_power_domain PD_TOP -elements {.} \
    4. -exclude_elements {inst0}
    5. create_supply_port VDD_TOP
    6. create_supply_port VSS_TOP
    7. create_supply_net VDD_TOP
    8. create_supply_net VSS_TOP
    9. connect_supply_net VDD_TOP -ports VDD_TOP
    10. connect_supply_net VSS_TOP -ports VSS_TOP
    11. create_supply_set PD_TOP_SET \
    12. -function {power VDD_TOP} \
    13. -function {power VSS_TOP}
    14. create_power_domain PD_TOP \
    15. -supply {primary PD_TOP_SET} \
    16. -update
    17. create_supply_port VDD_TOP0
    18. create_supply_net VDD_TOP0
    19. connect_supply_net VDD_TOP0 -ports VDD_TOP0
    20. #PD0
    21. set_scope inst0
    22. create_power_domain PD0 -elements {.}
    23. create_supply_port VDD0_i
    24. create_supply_port VSS0
    25. create_supply_net VDD0_i
    26. create_supply_net VSS0
    27. #这个net是接到power switch中的output_supply_port上,并且作为PD0的supply_net.
    28. create_supply_net VDD0_o
    29. connect_supply_net VDD0_i -ports VDD0_i
    30. connect_supply_net VSS0 -ports VSS0
    31. create_power_switch PD0_SWITCH -domain PD0 \
    32. -input_supply_port {in0 VDD0_i} \
    33. -output_supply_port {out0 VDD0_o } \
    34. -control_port {en0 pwr_en} \
    35. -on_state {PD0_on in0 {en0}} \
    36. -off_state {PD0_off {!en0}}
    37. create_supply_set PD0_SET \
    38. -function {power VDD0_o} \
    39. -function {ground VSS0}
    40. create_power_domain PD0 \
    41. -supply {primary PD0_SET} \
    42. -update
    43. set_scope ..
    44. connect_supply_net VSS_TOP -ports inst0/VSS0
    45. connect_supply_net VDD_TOP0 -ports inst0/VDD0_i

    仿真结果的power map如下,其中PD0的power supply port和power switch的 output supply port使用VDD0_o连接起来,power switch通过pwr_en进行控制:

    (2)在增加一个PD1的power domain,并为其增加一个power switch。

    1. set_design_top top/dut_u
    2. #create_power_domain PD_TOP -include_scope
    3. create_power_domain PD_TOP -elements {.} \
    4. -exclude_elements {inst0}
    5. create_supply_port VDD_TOP
    6. create_supply_port VSS_TOP
    7. create_supply_net VDD_TOP
    8. create_supply_net VSS_TOP
    9. connect_supply_net VDD_TOP -ports VDD_TOP
    10. connect_supply_net VSS_TOP -ports VSS_TOP
    11. create_supply_set PD_TOP_SET \
    12. -function {power VDD_TOP} \
    13. -function {power VSS_TOP}
    14. create_power_domain PD_TOP \
    15. -supply {primary PD_TOP_SET} \
    16. -update
    17. create_supply_port VDD_TOP0
    18. create_supply_net VDD_TOP0
    19. connect_supply_net VDD_TOP0 -ports VDD_TOP0
    20. #PD0
    21. set_scope inst0
    22. create_power_domain PD0 -elements {.}
    23. create_supply_port VDD0_i
    24. create_supply_port VSS0
    25. create_supply_net VDD0_i
    26. create_supply_net VSS0
    27. #这个net是接到power switch中的output_supply_port上,并且作为PD0的supply_net.
    28. create_supply_net VDD0_o
    29. connect_supply_net VDD0_i -ports VDD0_i
    30. connect_supply_net VSS0 -ports VSS0
    31. create_power_switch PD0_SWITCH -domain PD0 \
    32. -input_supply_port {in0 VDD0_i} \
    33. -output_supply_port {out0 VDD0_o } \
    34. -control_port {en0 pwr_en} \
    35. -on_state {PD0_on in0 {en0}} \
    36. -off_state {PD0_off {!en0}}
    37. create_supply_set PD0_SET \
    38. -function {power VDD0_o} \
    39. -function {ground VSS0}
    40. create_power_domain PD0 \
    41. -supply {primary PD0_SET} \
    42. -update
    43. set_s
  • 相关阅读:
    Spring学习(8) AOP
    又一重磅利好来袭!Zebec Payroll 集成至 Nautilus Chain 主网
    如何通过一键导出导入数据实现批量重命名文件名称
    我的NAS方案及使用的功能
    XSS脚本(存储型xss获取肉鸡的cookies)
    编程杂谈|十余年后再做课堂练习题
    idea安装与配置(2019版本)
    Maven进阶-属性与资源文件
    【MySQL】select语句——group by子句和having子句的使用
    Web前端:跨浏览器测试和响应式测试之间的主要区别
  • 原文地址:https://blog.csdn.net/geter_CS/article/details/126784165