Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| language:langs:prs [2022/05/13 12:52] – rajit | language:langs:prs [2024/08/07 11:09] (current) – [Loops] rajit | ||
|---|---|---|---|
| Line 105: | Line 105: | ||
| } | } | ||
| </ | </ | ||
| + | |||
| + | ==== Attributes ==== | ||
| + | |||
| + | Production rules can also be decorated with attributes that are used for a variety of purposes by ACT tools. The meaning of attributes is not pre-defined within the ACT language, but is a convention based on how these attributes are interpreted by various tools. Current attributes and their meanings is available in the section on [[language: | ||
| ==== CMOS implementation ==== | ==== CMOS implementation ==== | ||
| Line 120: | Line 124: | ||
| ~a | ~b -> e+ | ~a | ~b -> e+ | ||
| </ | </ | ||
| + | This is because '' | ||
| === Transistor sizing and flavors === | === Transistor sizing and flavors === | ||
| Line 137: | Line 142: | ||
| a < | a < | ||
| </ | </ | ||
| - | Transistors come in different //flavors// in a modern technology. The flavors supported by ACT are specified in the top-level ACT [[config: | + | Transistors come in different //flavors// in a modern technology. The flavors supported by ACT are specified in the top-level ACT [[config: |
| Finally, it is often the case that multiple transistors in an expression use the same sizing information. | Finally, it is often the case that multiple transistors in an expression use the same sizing information. | ||
| Line 181: | Line 186: | ||
| </ | </ | ||
| The '' | The '' | ||
| + | |||
| + | ==== Direct transistor specifications ==== | ||
| + | |||
| + | In case this syntax is not sufficient, the '' | ||
| + | <code act> | ||
| + | prs { | ||
| + | passp < | ||
| + | passn < | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Note that automatic staticizer (keeper) generation is only triggered when a production rule is specified. If part of your circuit for an output signal is described using production rules and part of it is described using transistors, | ||
| + | |||
| + | ==== Explicit capacitors ==== | ||
| + | |||
| + | The '' | ||
| + | <code act> | ||
| + | prs { | ||
| + | cap (node1, node2); /* explicit capacitor of one unit size between the two nodes */ | ||
| + | cap< | ||
| + | cap< | ||
| + | } | ||
| + | </ | ||
| + | The unit capacitor is specified in the netlist configuration file; if it is unspecified, | ||