Why does a single-cycle datapath need to use the longest instruction's execution time as its clock period?
Think about your answer, then reveal below.
Model answer: Because all instructions must complete within one clock cycle, the clock period must accommodate the slowest path through the datapath — typically a LOAD instruction that uses the ALU, memory, and register write-back in sequence. Faster instructions waste the remaining time each cycle.
In a single-cycle design, every instruction occupies exactly one clock tick regardless of complexity. If the clock were faster than the longest instruction's critical path, that instruction would not finish correctly. The result is that simple instructions like ADD are penalized by the latency of rare complex instructions, which is the key inefficiency that pipelining addresses.