I'm reading a book on Introduction to Computer Architecture.
A section of the book reads as follows about the RISC interface of processors: "Each instruction typically takes a clock cycle."
But the same book contains the following excerpt, in Verilog language:
always @(positiveclockedge clk )
begin
case ( state )
STATE_FETCH:
begin
fetch;
state = STATE_DECODE;
end
STATE_DECODE:
begin
decode;
state = STATE_EXECUTE;
end
STATE_EXCUTE:
begin
execute;
state = STATE_FETCH;
end
endcase
end
According to the Verilog snippet, even RISC processors take at least 3 clock cycles for an instruction (ignoring any memory access delay yet). Can anyone give me a light on this subject as there is an apparent contradiction (have I noticed this in other texts I have read)?