Microcontroller

From CVL Wiki

Revision as of 09:42, 30 April 2007 by Dengy (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents

A typical microcontroller

The programming model

Memory

ROM

PROM

EPROM

EEPROM

Flash EEPROM

RAM

Central Processor Unit (CPU)

The I/O interface

The address, data, and control buses

Microprocessors vs microcontrollers

Hardware architecture

Applications

Instruction set features

MicroBlaze architecture

Data types and endianness

Registers (general-purpose and special-purpose)

Pipeline architecture

Memory architecture

Instruction cache

Data cache

Floating Point Unit

Fast Simplex Link

MicroBlaze instruction set architecture

Instruction set summary

Instruction and operand syntax

Instructions

Load/store instructions

Arithmetic instructions

Logical instructions (including barrel shifts)

Comparisons and conditional branches

Unconditional branches, subroutines/exceptions, and returns

All other MicroBlaze instructions

Assembly language and C programming for the MicroBlaze

Using MicroBlaze tools for assembly and linking

Elements of a program: header, assembler directives, and conventions

Steps for writing an assembler program

Assembly source file, listing file, object file, and executable (elf) file

MicroBlaze C compiler

Downloading machine code into MicroBlaze memory

System stack and subroutines

Debugging techniques

Assembly program examples

C program examples

Overview of MicroBlaze peripherals

On-chip memory

DDR SDRAM

OPB GPIO peripherals: LEDs, switches, LCD, ADC start, and SPI interface

Interrupt controller

Debug module

10/100 Ethernet MAC

VGA video interface

Programmable Timer/Counter

DMA controller

Bus Masters, Slaves, and OPB Bus Arbitration

OPB Timer/Counter

Generate mode

Capture mode

PWM mode

Interrupts

Reset, Interrupts, Exceptions and Break

OPB interrupt controller

Interrupts with OPB GPIO

Serial data link protocols

SPI Protocol

I2C Protocol

RS-232 Protocol

USB Protocol

Firewire Protocol

CAN Bus Protocol

Source-Synchronous and Self-Synchronous protocols

Analog converter subsystem

Concepts and terminology

Analog-to-digital (A/D) converters

A/D input synchronization

A/D interrupts

A/D programming

Example of A/D programs

Appendix A: List of microcontrollers and microprocessors that are widely used today

Appendix B: Glossary

Views
Personal tools
Support