Jump to content

The necessities in Microprocessor Based System Design

From Wikiversity

Background

[edit | edit source]

Combinational and Sequential Circuits

FSM

Tiny CPU Example


Microprocessor Architecture

[edit | edit source]
  • ARM Architecture
- Programmer's Model (pdf)
- Pipelined Architecture (pdf)
  • ARM Organization
  • ARM Cortex-M Processor Architecture
  • ARM Processor Cores


Instruction Set Architecture

[edit | edit source]
  • ARM Instruction Set
- Overview (pdf)
- Addressing Modes (pdf)
- Multiple Transfer (pdf)
- Assembler Format
- Data Processing (pdf)
- Data Transfer (pdf)
- Coprocessor (pdf)
- Summary (pdf)
- Binary Encoding (pdf)
  • Thumb Instruction Set


Assembly Programming

[edit | edit source]

ARM Assembly Programming (I)

[edit | edit source]
  • 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)

[edit | edit source]
  • 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)

[edit | edit source]
  • 1. Fixed point arithmetic (integer division)
  • 2. Floating point arithmetic
  • 3. Matrix multiply

ARM Linking

[edit | edit source]



ARM Microcontroller Programming

[edit | edit source]
  • 1. Input / Output
  • 2. Serial / Parallel Port Interfacing
  • 3. Analog I/O Interfacing
  • 4. Communication




Memory Architecture

[edit | edit source]


Memory Hierarchy

[edit | edit source]


System and Peripheral Buses

[edit | edit source]


Architectural Support

[edit | edit source]
  • High Level Languages
  • System Development
  • Operating Systems



Peripheral Architecture

[edit | edit source]


Vectored Interrupt Controller

[edit | edit source]


Timers

[edit | edit source]
  • Timer / Counter (pdf)
  • Real Time Clock
  • Watchdog Timer


Serial Bus

[edit | edit source]
  • UART : Universal Asynchronous Receiver/Transmitter (pdf)
  • I2C : Inter-Integrated Circuit
  • SPI : Serial Peripheral Interface
  • USB : Universal Serial Bus Device Controller


I/Os

[edit | edit source]
  • General Purpose Input/Output ports (GPIO)
  • Pulse Width Modulator
  • Analog-to-Digital Converter (ADC)
  • Digital-to-Analog Converter (DAC)




Synchrnoization

[edit | edit source]


H/W and S/W Synchronization

[edit | edit source]
  • busy wait synchronization
  • handshake interface


Interrupt Synchronization

[edit | edit source]
  • interrupt synchronization
  • reentrant programming
  • buffered IO
  • periodic interrupt
  • periodic polling


Interfacing

[edit | edit source]


Time Interfacing

[edit | edit source]
  • input capture
  • output compare



Serial Interfacing

[edit | edit source]
  • Programming UART
  • Programming SPI
  • Programming I2C
  • Programming USB


Analog Interfacing

[edit | edit source]
  • OP Amp
  • Filters
  • ADC
  • DAC


Old materials

[edit | edit source]

Instruction Set Architecture

[edit | edit source]
  • ARM Instruction Set
- Overview (pdf)
- Binary Encoding (pdf)
- Assembler Format (pdf)
  • Thumb Instruction Set
  • ARM Assembly Language (pdf)
  • ARM Machine Language (pdf)




go to [ Electrical_&_Computer_Engineering_Studies ]