Lecture 1 - Types of computer Architectures, ISA's and ARM History
Lecture 2 - Embedded System Software and Hardware, stack implementation in ARM, Endianness, condition codes
Lecture 3 - Processor core VS CPU core, ARM7TDMI Interface signals, Memory Interface, Bus Cycle types, Register set, Operational Modes
Lecture 4 - Instruction Format, ARM Core Data Flow Model, ARM 3 stage Pipeline, ARM family attribute comparision
Lecture 5 - ARM 5 stage Pipeline, Pipeline Hazards, Data forwarding - a hardware solution
Lecture 6 - ARM ISA and Processor Variants, Different Types of Instructions, ARM Instruction set, data processing instructions
Lecture 7 - Shift Operations, shift Operations using RS lower byte, Immediate value encoding
Lecture 8 - Dataprocessing Instructions
Lecture 9 - Addressing Mode-1, Addressing Mode-2
Lecture 10 - Addressing Mode-2, LDR/STR, Addressing mode-3 with examples
Lecture 11 - Instruction Timing, Addressing Mode-4 with Examples
Lecture 12 - Swap Instructions, Swap Register related Instructions, Loading Constants
Lecture 13 - Program Control Flow, Control Flow Instructions, B & BL instructions, BX instruction
Lecture 14 - Interrupts and Exceptions, Exception Handlers, Reset Handling
Lecture 15 - Aborts, software Interrupt Instruction, undefined instruction exception
Lecture 16 - Interrupt Latency, Multiply Instructions, Instruction set examples
Lecture 17 - Thumb state, Thumb Programmers model, Thumb Implementation, Thumb Applications
Lecture 18 - Thumb Instructions, Interrupt processing
Lecture 19 - Interrupt Handelling schemes, Examples of Interrupt Handlers
Lecture 20 - Coprocessors
Lecture 21 - Coprocessor Instructions, data Processing Instruction, data transfers, register transfers
Lecture 22 - Number representations, floating point representation
Lecture 23 - Flynn's Taxonomy, SIMD and Vector Processors, Vector Floating Point Processor (VFP), VFP and ARM interactions, An example vector operation
Lecture 24 - Memory Technologies, Need for memory Hierarchy, Hierarchical Memory Organization, Virtual Memory
Lecture 25 - Cache Memory, Mapping Functions
Lecture 26 - Cache Design, Unified or split cache, multiple level of caches, ARM cache features, coprocessor 15 for system control
Lecture 27 - Processes, Memory Map, Protected Systems, ARM systems with MPU, memory Protection Unit (MPU)
Lecture 28 - Physical Vs Virtual Memory, Paging, Segmentation
Lecture 29 - MMU Advantage, virtual memory translation, Multitasking with MMU, MMU organization, Tightly coupled Memory (TCM)
Lecture 30 - ARM Development Environment, Arm Procedure Call Standard (APCS),
Lecture 31 - Example C program
Lecture 32 - Embedded software Development, Image structure, linker inputs and outputs, memory map, application startup
Lecture 33 - AMBA Overview, Typical AMAB Based Microcontroller, AHB bus features, AHB Bus transfers, APB bus transfers, APB bridge
Lecture 34 - DMA, Peripherals, Programming Peripherals in ARM
Lecture 35 - DMA:Direct Memory Access
Lecture 36 - Protocols (I2c, SPI), UART, GPIO
Lecture 37 - ARM ISAs, ARMv5, ARMv6, ARM v7, big.little technology, ARMv8