The necessities in Microprocessor Based System Design
Background
Combinational and Sequential Circuits
FSM
Tiny CPU Example
Microprocessor Architecture
- ARM Architecture
- ARM Organization
- ARM Cortex-M Processor Architecture
- ARM Processor Cores
Instruction Set Architecture
- ARM Instruction Set
- - Overview (pdf)
- - Addressing Modes (pdf)
- - Multiple Transfer (pdf)
- - Assembler Format
- - Binary Encoding (pdf)
- Thumb Instruction Set
Assembly Programming
ARM Assembly Programming (I)
- 1. Overview (pdf)
- 2. Example Programs (pdf)
- 3. Addressing Modes (pdf)
- 4. Data Transfer (pdf)
- 5. Data Processing (pdf)
- 6. Control (pdf)
- 7. Arrays (pdf)
- 8. Data Structures (pdf)
- 9. Finite State Machines (pdf)
- 10. Functions (pdf)
- 11. Parameter Passing (pdf)
- 12. Stack Frames (pdf)
ARM Assembly Programming (II)
- 1. Branch and Return Methods (pdf)
- 2. PC Relative Addressing (pdf)
- 3. Thumb instruction Set (pdf)
- 4. Exceptions (pdf)
- 5. Exception Programming (pdf)
- 6. Exception Handlers (pdf)
- 7. Interrupt Programming (pdf)
- 8. Interrupt Handlers (pdf)
- 9. Vectored Interrupt Programming (pdf)
- 10. Tail Chaining (pdf)
ARM Assembly Programming (III)
- 1. Fixed point arithmetic (integer division)
- 2. Floating point arithmetic
- 3. Matrix multiply
ARM Linking
- arm link (pdf)
ARM Microcontroller Programming
- 1. Input / Output
- 2. Serial / Parallel Port Interfacing
- 3. Analog I/O Interfacing
- 4. Communication
Memory Architecture
Memory Hierarchy
System and Peripheral Buses
Architectural Support
- High Level Languages
- System Development
- Operating Systems
Peripheral Architecture
Vectored Interrupt Controller
Timers
- Timer / Counter (pdf)
- Real Time Clock
- Watchdog Timer
Serial Bus
- UART : Universal Asynchronous Receiver/Transmitter (pdf)
- I2C : Inter-Integrated Circuit
- SPI : Serial Peripheral Interface
- USB : Universal Serial Bus Device Controller
I/Os
- General Purpose Input/Output ports (GPIO)
- Pulse Width Modulator
- Analog-to-Digital Converter (ADC)
- Digital-to-Analog Converter (DAC)
Synchrnoization
H/W and S/W Synchronization
- busy wait synchronization
- handshake interface
Interrupt Synchronization
- interrupt synchronization
- reentrant programming
- buffered IO
- periodic interrupt
- periodic polling
Interfacing
Time Interfacing
- input capture
- output compare
Serial Interfacing
- Programming UART
- Programming SPI
- Programming I2C
- Programming USB
Analog Interfacing
- OP Amp
- Filters
- ADC
- DAC
Old materials
Instruction Set Architecture
- ARM Instruction Set