Week 2: Processor Architecture; ARM Processor (ch. 4,5) Flashcards

1
Q

What is the unit of addressability in the ARM processor?

A

byte

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

How many general purpose registers are in the ARM Cortex-m3/m4?

A

13 general purpose (r0-12), 16 total

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

Which register holds the program counter (pc)?

A

r15

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

Which register is the link register (lr)?

A

r14

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

Which register holds the stack pointer (sp)?

A

r13

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

What is another name for r13?

A

stack pointer (sp)

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

What is another name for r14?

A

link register (lr)

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

What is another name for r15?

A

program counter (pc)

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

What does the program counter (pc) do?

A
  • keeps track of the next instruction to be executed

* acts as a pointer into program memory

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

What is the collection of general purpose registers called?(as a whole)?

A

register file

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

What are the 3 basic steps to modify data?

A
  • Load values from address space into processor registers
  • Perform desired ALU operations on those registers
  • Store values resulting from operations back to address space
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are two items needed in order to fetch data from memory (address space)?

A
  • address

* data size

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

What is the group of instructions that move data from registers to memory?

A

RM

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

(T/F) A byte address is used to access a word.

A

True

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

What is an “entity” (in terms of microprocessors)?

A
  • a processor’s unit of addressability

* generic for data referenced by an address

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

How many address units will a 32 bit entity take?

A

4

32 bit entity = 4 bytes
(1 byte = 8 bits)
(32 bits

17
Q

Describe the instruction type: MR

A

instructions that move data from memory to registers

18
Q

Describe the instruction type: RM

A

instructions that move data from registers to memory

19
Q

Describe the instruction type: RR

A

instructions that operate on register values, then place results back into a register

20
Q

Describe the instruction type: FC

A

instructions that change the flow of control of the instruction sequence (or allow the sequence of instructions to be changed)

21
Q

What is the size for this data type: register

on a typical 32-bit processor

A

32 bits

22
Q

What is the size for this data type: byte

on a typical 32-bit processor

A

8 bits

23
Q

What is the size for this data type: half word

on a typical 32-bit processor

A

16 bits

24
Q

What is the size for this data type: word

on a typical 32-bit processor

A

32 bits

25
Q

What is the size for this data type: short

on a typical 32-bit processor

A

16 bits

26
Q

What is the size for this data type: int

on a typical 32-bit processor

A

32 bits

27
Q

What is the size for this data type: char

on a typical 32-bit processor

A

8 bits

28
Q

What is the size for this data type: pointer

on a typical 32-bit processor

A

32 bits

29
Q

Give an example of a RM instruction

A
  • str
  • strh
  • strb
30
Q

Give an example of a MR instruction

A
  • ldr
  • ldrh
  • ldrsh
  • ldrb
  • ldrsb
31
Q

Give an example of a RR instruction

A
  • add
  • sub
  • mul
  • sdiv
  • udiv
32
Q

Give an example of a FC instruction

A
  • cbz

* cbnz