Computer Architecture Flashcards

1
Q

Von Neumann architecture

Three Classic Features

A

A single main memory unit shared between program instructions and data. This means that the program is stored with the data in the same format. A single control unit managing program control. Sequential processing takes place with instructions being fetched from memory, decoded and executed one after another, one at a time, in a serial manner. This is known as the fetch-execute cycle.

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

Fetch-Execute Cycle

A

PC holds address of next instruction. Copy contents of PC to MAR. Increment PC. Load instruction pointed to by the MAR to MDR. Copy instruction from MDR to CIR. Decode (and execute) instruction in CIR.

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

Execution of JUMP inst

A

By changing contents of PC (to address part of instruction). Copy address part of instruction… in CIR to PC

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

Register

A

Location in the processor used for a particular purpose. Temporarily stores data/control information. Allows very high speed access.

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

PC - Program Counter

A

PC holds address of next instruction. PC passes this address to MAR…PC is incremented (in each cycle). PC is changed when there is a jump instruction…by taking address from instruction in CIR.

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

MAR – Memory Address Register

A

Receives address of instruction (from PC). Holds address of data/instruction to be used. Receives operand part of instruction from CIR.

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

MDR – Memory Data Register (Also known as Memory Buffer Register MBR)

A

Receives an instruction/data…from memory location in MAR. Receives data/instruction from…memory location in address part of instruction/accumulator. Instruction in MDR is copied to CIR. MDR acts as a buffer/temporary store…storing data / an instruction…when being transferred between memory & processor.

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

CIR – Current Instruction Register (Also known as Instruction Register)

A

Contains the instruction to be executed. Splits instruction into component parts. Holds op-code while it is decoded. Sends the address to the MAR for accessing data/value to accumulator. Sends address to PC for jump instruction. Determines the type of addressing to be used.

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

Accumulator

A

Holds data being processed. Temporary storage of intermediate results (in the ALU) is where calculations are performed.
Input & output data passes through.

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

Pipelining

A

Overlaps the three phases of an instruction (fetch-decode-execute) and uses idle registers. This helps with the speed of throughput unless the next instruction in the pipe is not the next one that is needed. If a JUMP instruction is encountered the pipeline must be flushed and refilled.

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

Co-processor

A

An additional processor…used for a specific task. Improves processing speed by executing concurrently. E.g. maths co-processor/floating point accelerator.
Adv: Allow more complex calculations/processing to be given to a dedicated co-processor which only processes these similar calculations. Disadv: Increased cost of computer (extra component). Can only carry out specific operations.

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

E.g. Maths co-processor

A

Floating point binary representation requires a long string of bits so Maths co-processor has a number of registers long enough to handle this length in one go making processing faster.

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

Parallel processor

A

More than one processor…working together …to perform a single job…which is split into tasks. Each task may be processed by any processor. Processors are controlled by a complex operating system
Adv: Allows faster processing - greatly increases the speed programs can execute. More than one instruction (of a program) is processed at the same time. Different processors can handle different tasks/parts of same job. Speeds up the processing of data from many inputs. Disadv: A more complex program must be developed, compared to the traditional sequential program, to allow execution of different parts at the same time. Operating system is more complex to ensure synchronisation.

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

Array (Vector) Processor

A

A processor that allows the same instruction to operate simultaneously …on multiple data locations using multiple ALUs. Single Instruction Multiple Data (SIMD). Lots of data items get processed with a single instruction. E.g. Weather forecasting, airflow simulation around new aircraft. Adv: Many ALUs (arithmetic logic units) so useful for manipulating 1 dimensional arrays where the same calculation can be applied to every element in the array in one cycle. This is very fast (takes one cycle). Disadv: High price of array memory systems. Increased code complexity.

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

RISC

A

Reduced Instruction Set Computer - a limited number of instructions is available. Has several register sets. An instruction performs a simple task. Uses only simple instructions. Complex tasks can only be performed by combining a number of instructions…so a task may take a number of machine cycles.

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

CISC

A

Complex Instruction Set Computer - uses (complex) instructions each of which may take multiple cycles (but some can be completed in a single cycle). Single register set. Instructions have variable format. Many instructions are available. Many addressing modes are available.

17
Q

RISC adv/disadv

A

Adv: programs run more quickly due to less complicated instructions/circuit and more easily pipelined.
Disadv: programs take up more memory because more instructions are required to complete a task than with CISC.

18
Q

CISC adv/disadv

A

Adv: programs take up less space on backing store and in main memory – fewer instructions required for task.
Disadv: programs run more slowly…due to the more complicated instructions/circuit.