【发布时间】:2017-04-22 06:19:34
【问题描述】:
我已经成功地为我的设计设置了一个 Cocotb 验证环境,我很高兴它为 RTL(在我的例子中是 VHDL)工作的方式。
我的设计使用了泛型,我在 python 代码的多个位置(主要在 run_test 和模型中)检索这些泛型的值,遵循模板:
my_generic = dut.GEN_NAME.value
不幸的是,这不适用于门级仿真,因为我的综合设计不再具有泛型,因此 dut.GEN_NAME.value 不存在。
我是否应该朝着从模拟流程(Cocotb 的 makefile)中获取参数/泛型值的方向前进?
如果是这样,最干净的方法是什么?使用环境变量?
(顺便说一句,我使用 Questa,即使我不希望这方面依赖于模拟器......)
感谢您的帮助和建议...
【问题讨论】:
-
通常情况下,合成器的输出看起来不太像 RTL。经典的方法是使用包装器:在层次结构的虚拟层中实例化您的门级模型,其接口(在您的 VHDL 案例中为实体)看起来像原始 RTL。
标签: python vhdl simulation cocotb netlist