Consider the following data path of a

The the bus and all the registers in the data path are of identical size. All operations including incrementation of the and the are to be carried out in the Two clock cycles are needed for memory read operation – the first one for loading address in the and the next one for loading data from the memory bus into the
The instruction "call Rn, sub” is a two word instruction. Assuming that is incremented during the fetch cycle of the first word of the instruction, its register transfer interpretation is
;
;
The minimum number of CPU clock cycles needed during the execution cycle of this instruction is:
View worked solution
Answer: B
At the start of the execution cycle, the first word of the instruction has already been fetched, and the has been incremented to point to the second word (which contains the address sub).
To execute the instruction, we need to perform two operations:
This can be achieved in the minimum number of clock cycles as follows:
- Cycle 1: Load the address of the second word into the to initiate the memory read.
(This uses the internal CPU bus to transfer the value of to . Memory read starts.) - Cycle 2: Complete the memory read and simultaneously perform the register increment.
(The memory read uses the external memory bus to load . Since the internal CPU bus is free, is placed on it, incremented by the , and the result is stored in .) - Cycle 3: Update the with the target address loaded into .
(This transfers the target address from to via the internal CPU bus.)
Thus, the minimum number of CPU clock cycles needed during the execution cycle is 3.
Free practice · Your answers on this page are not saved.
