1.1.1 Structure and Function of the Processor Flashcards

(a) The Arithmetic and Logic Unit; ALU, Control Unit and Registers (Program Counter; PC, Accumulator; ACC, Memory Address Register; MAR, Memory Data Register; MDR, Current Instruction Register; CIR). Buses: data, address and control: how this relates to assembly language programs. (b) The Fetch-Decode-Execute Cycle; including its effects on registers. (c) The factors affecting the performance of the CPU: clock speed, number of cores, cache. (d) The use of pipelining in a processor to improve

1
Q

What does the ALU do?

A

Performs all maths and logic operations

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

What does the CU do?

A

The control unit:
1. Sends signals to coordinate movement of data through the processor during the FDE cycle
2. Controls the buses
3. Decodes instructions

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

What are registers?

A

Temporary storage inside the CPU used for a specific purpose. Faster to access than RAM.

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

What are the registers in the CPU called?

A

ACC, PC, CIR, MAR, MDR

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

What does the ACC do?

A

The accumulator:
1. Acts as temporary storage for data being processed during calculations
2. Acts as a buffer for input and output operations in the processor
3. Is checked for conditional branching operations

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

What does the MAR do?

A

Stores the address of the next instruction or data to be accessed in memory

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

What does the MDR do?

A

Stores data and instructions which have been accessed from memory

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

What does the CIR do?

A

Holds data to be decoded into opcode and operand

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

What does the PC do?

A

Stores the address of the next instruction to be processed

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

What are the three buses?

A

Control bus, data bus, address bus

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

What does the control bus do?

A

Transmits control signals between the CU and other parts of the system

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

What does the data bus do?

A

Carries data between different system components

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

What does the address bus do?

A

Carries a memory address from the CU to memory

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

Six examples of control signals

A

(data) bus request, (data) bus grant, memory write, memory read, interrupt request, clock

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

What happens in the Fetch step of the FDE cycle

A
  1. Value in the PC is copied to the MAR
  2. Address in the MAR is sent down the address bus at the same time as a memory read signal is sent down the control bus
  3. The value in stored in the location specified by the address bus is sent to the MDR on the address bus
  4. The value in the MDR is copied to the CIR
  5. The value in the PC is incremented by one
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What happens during the decode step of the FDE cycle?

A

The instruction in the CIR is split into opcode and operand.

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

What happens during the execute step of the FDE cycle?

A

The instruction specified by the opcode is carried out, possibly using the ALU.
Results are stored in the ACC if necessary.
The value of the PC will change if it is a branching instruction.

17
Q

What is a word length?

A

The largest group of digits that can be considered at a single time by the processor.

18
Q

What is an opcode?

A

The first part of a machine code instruction, specifies the instruction to carry out.

19
Q

What is an operand?

A

The second part of a machine code instruction, specifies the data the instruction will be carried out on.

20
Q

What are the three LMC branching instructions?

A

BRA, BRZ, BRP

21
Q

What does the LMC SUB instruction do?

A

Performs subtraction using the ALU
Stores the result in the ACC

22
Q

What does the LMC ADD instruction do?

A

Performs addition using the ALU
Stores the result in the ACC

23
Q

What does the LMC STA instruction do

A

Stores the value in the ACC at a specified memory address

24
Q

What does the LMC LDA instruction do?

A

Loads a specified value into the ACC

25
Q

What does the LMC INP instruction do?

A

Waits for input

26
Q

What does the LMC Output instruction do?

A

Outputs a value

27
Q

What does the LMC HLT instruction do?

A

Ends the program

28
Q

What does the LMC DAT instruction do?

A

Reserves a memory location for data

29
Q

What does the LMC BRA instruction do

A

Branches to the specified location, always

30
Q

What does the LMC BRZ instruction do?

A

Branches to the specified location if the value in the ACC is zero.

31
Q

What does the LMC BRP instruction do?

A

Branches to the specified location if the value in the ACC is zero or positive.

32
Q

What are the three factors effecting the speed of the CPU?

A

Cache size and level, number of cores, clock speed

33
Q

How does cache effect the speed of the CPU?

A

Time taken to access instructions in RAM is often a limiting factor in the FDE cycle
Cache is faster to access than RAM because it is closer to the CU
A larger cache means more instructions can be stored and RAM needs to be accessed less frequently
Lower levels of cache are faster to access than higher levels of cache

34
Q

How does the number of cores effect the speed of the CPU?

A

The higher the number of cores the more independent FDE cycles can be completed per second, if the software allows for multi-core processing

35
Q

How does clock speed effect the speed of the CPU?

A

Higher clock speed means more cycles per second, which means more instructions can be executed per second, so the program takes less time to run.
Clock speed can be increased with overclocking.

36
Q

Explain pipelining

CPU piplining

A

An instruction can be fetched as the previous one is being decoded and the one before that is being executed, causing the program to run faster because all parts of the CPU can be used at once.
In the case of a branch the pipeline is flushed.

37
Q

What are two computer architectures called?

A

Harvard, Von-Neumann

38
Q

What are the differences between Harvard and Von-Neumann architecture?

A

Harvard has separate memory for instructions and data, VN has shared memory.
Harvard has separate buses for instructions and data, VN has shared buses.
In Harvard the size of instruction and data memory is fixed. In VN the amount of the shared memory allocated to instructions or data can change.
In Harvard the instruction memory may be read only. In VN the instructions and data are stored in the same format.

39
Q

How is modern computer architecture different from traditional Von-Neumann architecture?

A

Pipelining, cache, multiple cores, overclocking, seperate instruction and data cache

40
Q

Which LMC instructions will change the value in the ACC?

A

ADD, SUB, LDA, INP

41
Q

Which LMC instructions will change the value in the PC?

A

BRA, BRZ, BRP