Chapter 1: Microprocessor Design Flashcards

1
Q

What is a microprocessor ? (Definition)

A

A microprocessor is a programmable device that takes inputs, processes them according to a set of instructions that are stored in memory and then produces outputs. It is the heart of any computing system.

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

What is a microprocessor responsible for?

A

1) Getting data or information from system inputs
2) Storing that information in the system memory
3) Manipulating the information
4) Sending the results of the manipulation to the system memory or an output

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

What is the main component of a microprocessor?

A

Silicon-based transistors used to create digital logic circuits.

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

What is an Arithmetic Logic Unit?

A

Combined circuitry that can perform mathematical functions on two inputs with a third input determining what type of process should be done; addition, subtraction or comparison.

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

What does VLSI stand for? What is it?

A

Very-large-scale-integration is the process of combining different gates (millions or billions of transistors) onto a single chip, a piece of semiconductor.

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

What digital blocks / components does a microprocessor contain?

A

1) Arithmetic Logic Unit (ALU)
2) Registers
3) Memory arrays (can be on-chip or off-chip) : RAM & ROM
4) Control Unit / counter

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

What defines the architecture of a microprocessor?

A

1) The instruction set – a set of commands like a programming language. They tend to be very basic commands such as add or subtract or jump.
2) Locations of memory containing data.
We use this information to enable the computer to do different tasks.

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

What architecture is most commonly used in personal computers? Who developed it? When was it first introduced?

A

X86, developed by Intel, introduced in 1978

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

Which architecture did Apple computers use before 2005/2006? Who developed it?

A

PowerPC, developed by Motorola and IBM.

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

Which architecture is primarily used in mobile phones and why? Name 2 companies that use it.

A

ARM because it uses less power and produces less heat.
Used by Apple and Samsung.

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

Which gaming consoles have used the MIPS architecture?

A

Sony’s PlayStation products.

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

Who developed the SPARC architecture?

A

Sun Microsystems

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

Why is it beneficial to have the same architecture on different hardware? Give an example.

A

It allows you to use the same programs, like Word or PowerPoint, across various devices.
Both Intel and AMD produce chips with the x86 architecture.

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

What is a microcontroller? What does it consist of?

A

A microcontroller consists of a microprocessor and other essential items such as memory, a clock signal, and other peripheral devices on a single piece of silicon. This allows them to be embedded into systems out of sight of the user.

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

What is machine language?

A

Instructions encoded into a number of binary digits (bits)

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

What is assembly language?

A

Decoded machine instructions (machine language) into mnemonics that are easy to remember.

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

What does an instruction describe?

A

An instruction describes an action (e.g. ‘move some data’, ‘add some data together’) along with the address where the data can be found.
The action is called the opcode, whilst the address(s) are called the operand.

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

What is CISC and why was it developed?

A

CISC: Complex Instruction Set Computer
It was developed to enable more powerful programs with complex instructions, similar to creating reusable functions in code.

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

What are the main challenges of CISC design?

A

Low power operations: the hardware needs to be able to handle lots of instructions (often consisting of variable numbers of bits) which is harder to design.
Speed optimization: some of these instructions take longer to carry out than others.

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

What is an example of a CISC architecture ?

A

x86 architecture used in Intel and AMD chips.
This architecture retains old instructions to prioritize software compatibility over technical simplicity so that old algorithms still work.

21
Q

What is RISC architecture? What is its main advantage?

A

RISC: Reduced Instruction Set Computer
Optimized speed: RISC uses a small, fixed set of basic instructions

22
Q

How are RISC instructions encoded and why?

A

All instructions are encoded in the same number of bits with a well-defined format. This ensures each instruction takes the same time to complete and makes them easier to decode in the hardware.

23
Q

How does RISC handle complex operations?

A

More-complicated instructions (e.g reading and writing to external memory) are broken down into simpler functions (e.g. load and store), using the faster registers for temporary storage of data.

24
Q

What is a potential risk as RISC evolves? Give an example

A

The danger with RISC architectures is that as more instructions are added, they evolve and transform into a CISC architecture.
ARM : RISC architecture initially had 46 instructions but recently the latest processor has several hundred.

25
Q

What is a word in computer architecture?

A

A word is a fixed-sized group of bits handled as a unit by the microprocessor.
Its length varies by architecture.

26
Q

What is non-volatile memory? What does this memory store?

A

Non-volatile memory must continue to store information when there is no power on the chip.
Used to store instructions.

27
Q

What is volatile memory?

A

Memory that requires power to maintain stored information; it is typically faster and used for data storage.

28
Q

How do instructions access a specific byte of data?

A

Each piece of data has a unique address that the instruction uses to access it.

29
Q

What is a memory map?

A

A layout showing addresses of different types of memory in a microprocessor, often given in hexadecimal.

30
Q

What does it mean to “memory map” inputs and outputs?

A

Assigning them addresses to make them appear as memory, simplifying their handling.

31
Q

What are registers?

A

Registers are the fastest type of memory and can be directly addressed by processor machine code instructions. They are used for the most immediate data access.

32
Q

What determines the speed at which a processor can execute a program?

A

The speed is mainly determined by how quickly the processor can access data.

33
Q

What is cache memory?

A

Cache: next fastest memory after registers, located close to the processor, provides quick access to frequently needed data.

34
Q

How does main memory compare to registers and cache in terms of speed?

A

Main memory is slower than registers and cache and requires a bus transaction to access, typically taking a few cycles.

35
Q

How does storage (e.g., disk, flash) compare in access speed?

A

Storage systems are the slowest type of memory, requiring multiple bus transactions and having typical access times in hundreds of cycles.

36
Q

How does a microprocessor execute instructions?

A

A microprocessor executes instructions in sequence.
Each of the instructions is stored in consecutive addresses in memory.

37
Q

What is the program counter?

A

Program counter: special register that marks the address of the current instruction being carried out and increments by one with each instruction.
You can change the linear flow of a programme by adjusting the programme counter.

38
Q

What is the programmers model? What does it include?

A

The programmers’ model is a description of the processor and enough of the rest of the system for the programmer to write software.

It includes:
- Description of all instructions: The Instruction Set
- Memory map
- Details of the registers
- Vector information, i.e. places to look for programs and when to execute them (e.g. on power-up/reset, interrupt vector)

39
Q

What is the function of the clock in a microprocessor? What does it do?

A

The clock synchronizes logic components to operate at the correct time.
It determines the speed of instruction execution, often a simple square wave with a MHz or GHz frequency.

40
Q

How does instruction execution differ in RISC vs. CISC architectures?

A

RISC executes each instruction in one clock cycle, while CISC may take multiple cycles.

41
Q

What is the Von Neumann architecture? Give an example.

A

An architecture where program instructions and data share a single memory and a single bus.
The x86 PC is an example.

42
Q

What are the advantages of the Von Neumann architecture?

A

It stores program instructions and data together, allowing the system to create or modify its own code.

43
Q

What is the main disadvantage of the Von Neumann architecture?

A

The single bus (used for both instructions and data) creates a bottleneck because instructions and data have to take turns using the same pathway, slowing down the CPUs speed.

44
Q

What is a bus?

A

Bus: digital data highway consisting of several parallel wires.

45
Q

What is a bottleneck?

A

A bottleneck is a point of congestion or limitation in a system that slows down overall performance. In computing, a bottleneck occurs when a component cannot keep up with the rest of the system, limiting the speed at which tasks can be completed.

46
Q

What is the Harvard architecture? Give an example.

A

An architecture with separate memory blocks and buses for program instructions and data.
The PIC microcontroller is an example.

47
Q

What are the advantages of the Harvard architecture?

A

It allows simultaneous access to instructions and data, making it faster, and buses can have different sizes (carry a different number of bits since data words and instructions aren’t necessarily the same size).

48
Q

What is a disadvantage of the Harvard architecture?

A

It cannot download new programs to itself.
A system with Harvard architecture cannot easily modify or add new program code directly to its instruction memory while it is running because it cannot treat instructions as modifiable data.