If this order is not followed, then the wrong result will be written to the final destination.
Recall that a clock in the computer is a device that generate a train (serie) of pulses:
The main purpose of the clock is to pace various devices inside the computer. By "pacing", I mean: to make sure things happen in a certain order.
A 4-phase clock will have 4 different outputs and the waves outputted on each output looks like as follows:
Just imaging what would happen if you would the output signals of the 4-phase clock to trigger different D-flipflops that are found on the datapath.
As you know, when a D-flipflop is triggered by a clock signal, only then it will update its output to be equal to its input.
We can pace the executing of the datapath by connecting:
So we can connect the MAR write signal to phase 3.
We therefore get the following connections:
|
(Recall: this is the instruction R1 = R0 + R6)
|
/home/cs355001/demo/datapath/cs355-demo-dp2 |
How to operate:
It's like "clock work"...
A crystal generates a clock-wave that is split off into 4 output.
By placing "delays" between the cystal signal and the output,
we can shift the wave in time.
The "delays" are nothing more than a long piece of copper wire so that
the electricity must travel a longer distance to different outputs:
The crystal element generates the following clock wave form: