rchitect-of-info
rchitect-of-info

Reputation: 1596

Relationship between Parameter set context and model mode?

Origen has modes for the top level DUT and IP. However, the mode API doesn't allow the flexibility to define attributes at will. There are pre-defined attributes, some of which (e.g. typ_voltage) look specific to a particular company or device.

In contrast, the Parameters module does allow flexible parameter/attribute definitions to be created within a 'context'. What is really the conceptual difference between a chip 'mode' and a parameter 'context'? They both require the user to set them.

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

They both contain methods with_modes and with_params that look similar in function. Why not make the mode attributes work exactly like the more flexible params API?

thx

Upvotes: 0

Views: 39

Answers (1)

Ginty
Ginty

Reputation: 3501

Being able to arbitrarily add named attributes to a mode seems like a good idea to me, but you are right that it is not supported today.

No particular reason for that other than nobody has seen a need for it until now, but there would be no problems accepting a PR to add it.

Ideally, when implementing that, it would be good to try and do it via a module which can then be included into other classes to provide the same functionality e.g. to give pins, bits, etc. the same ability.

Upvotes: 1

Related Questions