What We Need:
Wait until combinational logic has finished and result it stable...
Then sample the output value and save...
Feed the saved output back to the input of the combinational logic
- Make sure the saved output can’t change
Key idea: we sample the result at the right time, i.e. when it is ready
- Only then do we update the stored value
How do we know when to sample?
How do we know when the inputs changed?
How do we know how long to wait?