Skip to content

Placeholder module (need a better name)

Shunning Jiang edited this page Jun 1, 2019 · 1 revision

A placeholder module is a DSL construct, and has the following properties.

  1. It cannot have any child components or any update blocks (if violated, error thrown at elaboration)
  2. It must be swapped out using APIs before applying scheduling passes (if violated, error thrown at pass time)
  3. The DSL support well-defined APIs for any Component. delete_component deletes an existing component and record all the disconnected signal name pairs. add_component adds a component and takes a list of disconnected signal names to fulfill connections. replace_component is the common case where you delete a component and add a new component. These APIs should also be compatible with the placeholder module.
Clone this wiki locally