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
tools:netgen [2022/06/22 06:53]
rajit [Attributes]
tools:netgen [2023/04/15 07:35] (current)
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 [[config:start#generic_configuration_settings|''act.mangle_chars'']].
- +
 ===== 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''). |