Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
tools:netgen [2022/06/22 06:53]
rajit [Attributes]
tools:netgen [2023/04/15 07:35]
rajit [Output handling]
Line 108: Line 108:
 </code> </code>
  
 +===== Output handling  =====
  
- +ACT supports name mangling to sanitize the output so that it can be accepted by third-party tools. Since the largest variability in supported names is in different versions of SPICE, the ''prs2net'' tool also accepts another configuration file option called ''net.mangle_chars'' that can be used to change the name mangling that is used only for the output of ''prs2net''. (The meaning of this configuration  parameter is the same as [[''act.mangle_chars''|config:start#generic_configuration_settings]].
- +
 ===== Attributes ===== ===== Attributes =====
  
Line 134: Line 133:
  
 ^ Attribute ^ Meaning ^ ^ Attribute ^ Meaning ^
-| keeper | The production rules for a signal are analyzed to determine if the pull-up and pull-down networks are perfect complements of each other. If they aren't, then a keeper is generated. There are two common scenarios when this behavior is undesired: (i) the gate is intended to be dynamic, and so it is state-holding but a staticizer should not be generated. Set ''keeper'' to ''0'' for this behavior. (ii) the gate looks state-holding, but it is actually a combinational gate because certain inputs are supposed to be complements of each other. In this case, set ''keeper'' to ''2''. |+| keeper | The production rules for a signal are analyzed to determine if the pull-up and pull-down networks are perfect complements of each other. If they aren't, then a keeper is generated. There are two common scenarios when this behavior is undesired: (i) the gate is intended to be dynamic, and so it is state-holding but a staticizer should not be generated. Set ''keeper'' to ''0'' for this behavior. (ii) the gate looks state-holding, but it is actually a combinational gate because certain inputs are supposed to be complements of each other. In this case, set ''keeper'' to ''2''. (iii) the gate is state-holding, is a C-element (uses ''#>''), is a two-input gate, and should use the H-topology C-element keeper structure. For this, set ''keeper'' to 3. |
 | comb | If set to 1, uses combinational feedback rather than a weak inverter for the staticizer; if 0, uses a weak inverter instead of combinational feedback | | comb | If set to 1, uses combinational feedback rather than a weak inverter for the staticizer; if 0, uses a weak inverter instead of combinational feedback |
 | iskeeper | used to let prs2net know that the specified production rule is in fact the manually  specified staticizer/keeper circuit. prs2net labels transistors used for keepers in the spice netlist, and this attribute can be used to ensure that manually specified keepers are also labeled (with ''_keeper''). | | iskeeper | used to let prs2net know that the specified production rule is in fact the manually  specified staticizer/keeper circuit. prs2net labels transistors used for keepers in the spice netlist, and this attribute can be used to ensure that manually specified keepers are also labeled (with ''_keeper''). |