Types of computer Architectures, ISA’s and ARM, Difference between RISC and
CISC, RISC Design philosophy, ARM Design Philosophy, History of ARM
microprocessor, ARM processor family, Embedded System Software and
ARM Architecture and pipeline structure
The Acorn RISC Machine, ARM Core data flow model, Architectural inheritance,
The ARM7TDMI programmer’s model: General purpose registers, CPSR, SPSR,
ARM memory map, data format, load and store architecture, ARM 3 stage
Pipeline, ARM 5 stage Pipeline, Pipeline Hazards, Data forwarding – a hardware
solution, Stack implementation in ARM, Endianness, condition codes. Processor
core Vs CPU core, ARM7TDMI Interface signals
ARM7TDMI assembly language instructions and programming
Different Types of Instructions, ARM Instruction set, data processing instructions.
Shift Operations, shift Operations using RS lower byte, Immediate value
encoding. Data processing Instructions. Addressing modes with examples.
Instruction Timing, Swap Instructions, Swap Register related Instructions,
Loading Constants. Program Control Flow, Control Flow Instructions, B & BL
instructions, BX instruction. Interrupts and Exceptions, Exception Handlers, Reset Handling. Aborts, software Interrupt Instruction, undefined instruction exception.
Interrupt Latency, Multiply Instructions,. Thumb state, Thumb Programmers
model, Thumb Implementation, Thumb Applications. Thumb Instructions,
Interrupt processing. Interrupt Handling schemes, Examples of Interrupt Handlers,
Embedded C Programming for ARM:
ARM Development Environment
Embedded Software, Overview of C compiler and optimization, Basic C data
types, C Looping structures, Register allocations, function calls, pointer aliasing,
structure arrangement, bit-fields, unaligned data and Endianness, Division,
floating point, Inline functions and inline assembly, Portability issues. C programs
for General purpose I/O, general purpose timer, PWM Modulator, UART, I2C
Interface, SPI Interface, ADC, DAC
Cache and Memory Management and Protection
Memory Technologies, Need for memory Hierarchy, Hierarchical Memory
Organization, Virtual Memory. Cache Memory, Mapping Functions. Cache
Design, Unified or split cache, multiple level of caches, ARM cache features,
coprocessor 15 for system control. Processes, Memory Map, Protected Systems,
ARM systems with MPU, memory Protection Unit (MPU). Physical Vs Virtual
Memory, Paging, Segmentation. MMU Advantage, virtual memory translation,
Multitasking with MMU, MMU organization, Tightly coupled Memory (TCM).
ARM Peripherals and versions
AMBA Overview, Typical AMBA Based Microcontroller, AHB bus features,
AHB Bus transfers, APB bus transfers, APB bridge. Overview of ARM Versions:
ARMv5, ARMv6, ARM v7 (Cortex family R: Real time A: Application and M:
Microcontroller), ARM big.LITTLE Technology, ARMv8.