There is a subtle difference between initialise and reset concepts:
initialise indicates the initial state of the circuit.
reset is used to specify which gates should be equipped with the reset pin that forces gates to the appropriate initial state during the circuit start-up (usually, by connecting them to the rst and nrst wires). This is particularly important for gates with internal memory (e.g. C-elements).
@danilovesky knows much more than I about this, as he implemented a special Reset plugin in Workcraft.
An example:
circuit a b c = cElement a b c <> inputs [a, b] <> outputs [c]
<> initialise0 [a, c] <> initialise1 [b] -- note that a = 0 and b = 1 do not force c = 0!
<> reset [c] -- therefore we must reset the C-element at start-up to the desired output value
There is a subtle difference between
initialise
andreset
concepts:initialise
indicates the initial state of the circuit.reset
is used to specify which gates should be equipped with thereset
pin that forces gates to the appropriate initial state during the circuit start-up (usually, by connecting them to therst
andnrst
wires). This is particularly important for gates with internal memory (e.g. C-elements).@danilovesky knows much more than I about this, as he implemented a special Reset plugin in Workcraft.
An example: