Version: 9167910
If I remove 1 MHz in the example from the documentation,
sim.add_clock(Period(MHz=1))
(from https://github.com/amaranth-lang/amaranth-lang.github.io/blob/0856ab9702c05600e159de2fc9c4ccbf2dcf3cf6/docs/amaranth/latest/_code/up_counter.py#L71)
then the VCD ends like this and does not contain any value changes:
...
$dumpvars
1!
0"
0#
b0 $
1%
$end
The minimum time interval is 1 fs. For a 1-0 cycle, the _femtoseconds must be modified to 2:
|
class Period: |
|
def __init__(self, **kwargs): |
|
if not kwargs: |
|
self._femtoseconds = 0 |
|
return |
Motivation: In many designs, the absolute period is irrelevant. In this case, we can use a clock cycle of 2 fs.
If this makes sense, I can open a PR.