Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| language:langs:spec [2026/06/14 13:41] – [Simulation directives] rajit | language:langs:spec [2026/06/14 13:41] (current) – [Timing directives] rajit | ||
|---|---|---|---|
| Line 37: | Line 37: | ||
| The directive '' | The directive '' | ||
| - | ==== Timing directives ==== | + | ===== Timing directives |
| There are two types of timing directives: constraints, | There are two types of timing directives: constraints, | ||
| - | === Tick specifiers === | + | ==== Tick specifiers |
| Asynchronous circuits oscillate, and each oscillation can be viewed as an iteration of the circuit. For [[asic: | Asynchronous circuits oscillate, and each oscillation can be viewed as an iteration of the circuit. For [[asic: | ||
| Line 59: | Line 59: | ||
| This says all edges leaving '' | This says all edges leaving '' | ||
| - | === Timing constraints === | + | ==== Timing constraints |
| Timing constraints in ACT are specified using [[asic: | Timing constraints in ACT are specified using [[asic: | ||
| Line 85: | Line 85: | ||
| </ | </ | ||
| This has the same meaning as the earlier fork, except that the tools are provided with a hint that says that it is okay to add delays to correct any violations of this fork. | This has the same meaning as the earlier fork, except that the tools are provided with a hint that says that it is okay to add delays to correct any violations of this fork. | ||
| - | |||
| - | |||
| Finally, timing forks may relate transitions from adjacent iterations. | Finally, timing forks may relate transitions from adjacent iterations. | ||
| - | |||
| <code act> | <code act> | ||
| spec { | spec { | ||
| Line 97: | Line 94: | ||
| The '' | The '' | ||
| - | === Deleting timing edges === | + | ==== Deleting timing edges ==== |
| When computing conservative approximations to timing graphs, ACT may add extra edges to the timing graph that are in fact not present in the true timing graph for the system. This can occur, for example, when a gate is modified to incorporate extra signals to simplify the circuit implementation but the new input has no bearing on event causality in the asynchronous circuit. If the automated timing graph construction algorithm includes such edges, they can be explicitly deleted using the following directive: | When computing conservative approximations to timing graphs, ACT may add extra edges to the timing graph that are in fact not present in the true timing graph for the system. This can occur, for example, when a gate is modified to incorporate extra signals to simplify the circuit implementation but the new input has no bearing on event causality in the asynchronous circuit. If the automated timing graph construction algorithm includes such edges, they can be explicitly deleted using the following directive: | ||