7. Multi-Cycle Processor Design Flashcards

1
Q

Give two reasons why multi-cycle processors are better then single-cycle ones.

A

The average instruction requires less time than the longest instruction.

Functional units can be used in multiple instruction’s execution.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Which additional registers are added to the multi-cycle processor design?

A

IR (though this has just been named)
MDR
A & B
ALUOut

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Which additional control signals are required for the multi-cycle processor design?

A

IorD
IRWrite
PCWrite
PCWriteCond

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What happens in the instruction fetch cycle?

A

The IR is set to the value of the address held in the PC. In other words, it holds the instruction.
The PC is incremented by 4.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What happens in the instruction decode cycle?

A

The instruction is split up into its component parts, being stored in A and B.

The branch address target is computed and stored in ALUOut.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

In an R-type instruction, what happens in the execute stage?

A
  1. The values in A and B are passed into the ALU, and the result is stored in ALUOut.
  2. The value is passed to the IR, which writes the data to the register required.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

In an I-type immediate instruction, what happens in the execute stage?

A
  1. The value in A and the sign-extended constant are operated on by the ALU. The result is stored in ALUOut.
  2. The value is passed to the IR, which writes the data to the register required.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

In a branch instruction, what happens in the execute cycle?

A

The value of A and B are subtracted and compared. If zero, the zero flag is engaged, and the branch is taken.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

In a sw instruction, what happens in the execute cycle?

A
  1. The value of the offset (sign-extended) and value of A are added by the ALU and result stored in ALUOut.
  2. The data in B is written to the memory address in ALUOut.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

In a lw instruction, what happens in the execute cycle?

A
  1. The value of the offset (sign-extended) and value of A are added by the ALU and result stored in ALUOut.
  2. Read from the memory address in the ALUOut and put the result in the MDR.
  3. Write the data in the MDR to the required register.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

In a jump instruction, what happens in the execute cycle?

A

The jump address is calculated.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly