使用 PLI 仿真期间输入输出端口的活动方向

Active direction of inout port during simulation using PLI

我试图从我基于 PLI 的 C 代码中找出在模拟过程中 inout 端口是用作输入端口还是输出端口。怎么做到的?

在您走这条路之前,请注意,大多数工具都可以通过扩展 VCD 文件或通常与功率估算工具相​​关的其他格式为您提供此信息。

使用 VPI 执行此操作需要广泛了解 1800- 2012 年 LRM。我可以给你一个需要做什么的大纲:

  • 每个 inout 端口
    • 使用 vpi_register_cb
    • 注册一个 cbValueChange 回调
    • 使用图表构建驱动程序列表 §37.16 Nets
    • 将每个驱动程序分类为模块外部 (HiConn) 或内部(本地或 LoConn)
  • 回调例程需要扫描更改值的端口的驱动程序列表
    • 如果活动驱动程序在模块外部,则端口处于输入模式。
    • 如果活动驱动程序在模块内部,则端口处于输出模式。