我正在使用此doc guide来实例化IP块的多个实例。
sub_blocks :core_pll, class_name: 'CORE_PLL', instances: 7
当我检查DUT模型中的sub_blocks时,我看到Origen在实例名称中从0-6增加。有没有办法提供自定义名称列表来覆盖编号?我知道我可以单独实例化每一个,只是想知道是否有另一种方式。
THX
答案 0 :(得分:1)
目前不是。
这是使用原生Ruby功能的一种可能性,这不是太糟糕:
sub_blocks :core_pll, class_name: 'CORE_PLL', instances: 7
# Aliases for the PLL blocks...
def plla; core_pll0; end
def pllb; core_pll1; end
def pllc; core_pll2; end
#...
然后您可以使用替代方法访问者名称:
dut.pllb == dut.core_pll1 # => true
请注意,由于在您首次访问访问者方法之前未生成访问者方法,因此您不能这样做:
alias :pllb :core_pll1
显然,如果您认为值得,可以在sub_block
API中构建支持此功能的内容。