Application Processor Part 1 Flashcards
What is the Arithmetic/ Logic Unit?
Operate on values stored in the Registers
What is a register?
Group of flip-flops with common clock used to store binary data
What is the instruction register?
Hold current instruction.
What is the instruction pointer?
Hold the address of the next instruction in memory
What is RISC?
Reduced Instruction Set Computer. Only execute one instruction at a time but usually take one machine cycle.
What is CISC?
Complex Instruction Set Computer. Executes an instruction over a span of two to ten machine cycles but can execute multiple steps of each instruction at the same time.
What is the CORTEX A series used in?
Smartphones, digital TV, servers and networking.
What is the CORTEX R series used in?
Automotive Braking systems, powertrain solutions, and mass storage controller.
What is the CORTEX M series used in?
Micro controllers, mixed signal devices, and smart sensors
What are the main features of ARMv7 A architecture?
- Large uniform register file
- 32 bit processor
- Instructions are 32 bit long
- Good speed/power consumption ratio
- High code density
What are the enhancements to basic RISC features?
- Control over ALU and shifter for every data processing operation to maximize there usage.
- Auto-increment and auto-decrement addressing modes to optimize program loops
- Load and store multiple instructions to maximize data throughput
- Conditional execution of instruction to maximize execution throughput.
What does the ARM Core Registers do?
- The general purpose registers hold either data or address.
- All registers are 32 bits
- In user mode 16 data registers and 2 states registers are visible
What is the function of register r13?
Stack pointer (can also be used as GPR)
What is the function of register r14?
Link register (where return address is put whenever a subroutine is called and can be used as GPR)
What is the function of register r15?
Program counter
What are the two status registers?
- CPSR : current program status register
- SPSR : saved program status register
What are the flags of CPSR?
- Condition code flags
- Sticky overflow flag
- J bit
- Interrupt disable bits
- T Bit
- Mode bits
What are the flags of condition code flags?
- N : Negative result from ALU
- Z : Zero result from ALU
- C : ALU operation Carried out
- V : ALU operation oVerflowed
What does flag N of condition code flags do?
- Logical Instruction : No meaning
- Arithmetic Instruction : Bit 31 of the result has been set. Indicates a negative number in signed operations
What does flag Z of condition code flags do?
- Logical Instruction : Results in all zeros
- Arithmetic Instruction : Result of operation was zero
What does flag C of condition code flags do?
- Logical Instruction : After Shift operation ‘1’ was left in carry flag
- Arithmetic Instruction : Result was greater than 32 bits
What does flag V of condition code flags do?
- Logical Instruction : No meaning
- Arithmetic Instruction : Result was greater than 31 bits. Indicates a possible corruption of the sign bit in signed numbers