0

Origen 具有用于顶级 DUT 和 IP 的模式。但是,模式API不允许灵活地随意定义属性。有预定义的属性,其中一些(例如 typ_voltage)看起来特定于特定公司或设备。

相反,参数模块确实允许在“上下文”中创建灵活的参数/属性定义。芯片“模式”和参数“上下文”之间真正的概念区别是什么?它们都需要用户设置它们。

add_mode :mymode do |m|
  m.typ_voltage = 1.0.V
  # I believe I am limited to what I can define here
end

define_params :mycontext do |params|
  params.i.can.put.whatever.i.want = 'bdedkje'
end

它们都包含功能相似的with_modeswith_params方法。为什么不让模式属性像更灵活的参数 API 一样工作呢?

谢谢

4

1 回答 1

1

能够任意向模式添加命名属性对我来说似乎是个好主意,但你说得对,今天不支持它。

没有什么特别的原因,除了到目前为止没有人看到需要它,但接受 PR 来添加它不会有问题。

理想情况下,在实现它时,最好尝试通过一个模块来实现,然后可以将其包含到其他类中以提供相同的功能,例如为引脚、位等提供相同的功能。

于 2017-09-08T12:35:44.040 回答