Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor...

34
Mikroprozessoren Grundlagen Aufbau, Blockschaltbild Grundlegende Datentypen AVR-Controller Anatomie Befehlssatz Assembler Speicherzugriff Adressierungsarten Kontrollstrukturen Stack Input / Output (I/O) Parallel I/O Seriell I/O Timer Zusammenfassung I/O Interrupt Mathematische Operationen

Transcript of Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor...

Page 1: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

MikroprozessorenGrundlagen

Aufbau, BlockschaltbildGrundlegende Datentypen

AVR-ControllerAnatomieBefehlssatzAssemblerSpeicherzugriffAdressierungsartenKontrollstrukturenStack

Input / Output (I/O)Parallel I/OSeriell I/OTimerZusammenfassung I/O

InterruptMathematische Operationen

Page 2: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Erster Mikroprozessor 4004

4 Bit Mikroprozessor Intel 4004 (1971)�

Page 3: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Personal Computer (PC)�

Page 4: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus
Page 5: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Single Chip Microcontroller

Page 6: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus
Page 7: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Labor–Hardware

Page 8: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Mikrorechner (Z80)�

ROMRAM

CPUCPUTakt

IO-Port

Page 9: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Mikroprozessorvon Neumann Architektur

µP ROM RAM I/O

Page 10: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

MikroprozessorHarvard Architektur

µP ROM RAM I/O

Programm Bus

Daten Bus

Page 11: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

MikrocontrollerSingle Chip Computer

µP RAM ROM I/O

+ -Quarz Batterie

Page 12: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Daten und Adreßbus

µP RAM ROM I/O

Adress-

Daten-

Steuerbus

Page 13: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Busleitung

L (Gnd)�

H H

L

H

1/2 1/2

Page 14: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Busverbindungen

Page 15: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Anschluss von Bausteinen an den Systembus

CPU liest: RD=0CPU schreibt: WR=0

Dn sind Tri-State-Anschlüsse

S

S

E

E

Datenbit Dnvom/in Register

Dn

RD

WR

Steuerwerk

CPU

Datenbit Dnvom/in Speicher

RAM

RD

WR

CS0

Dn

SE

Datenbit Dnvon/in Port

I/OCS1

Dn

Datenbus: n. Datenleitung

Teil vom Steuerbus

RD

WR

1

1 0

Page 16: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Tri-State Busanschluss

0

hochohmig1

PinCS

nD

0CS =

0RD = 0WR =

1nD =0nD =

• jedes Daten-Pin kann drei Zustände einnehmen– High ( )�– Low ( )�– hochohmig

• Datentransfer-Richtung kann eingestellt werden (hier mit

• oder )�• nur eine Komponente wird von

der CPU freigeschaltet (hier mit Chip-Select )�

• die Daten-Pins aller anderen Komponenten sind hochohmig

Page 17: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Bus Signal

L

H

Signal OKTristate Buffer Hochohmig

Page 18: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

SpeicherRAM = Random Access MemoryDer Speicher kann beliebig oft in beliebiger Reihenfolgegelesen und geschrieben werden.ROM = Read Only MemorySpeicher kann im normalen Betrieb nur gelesen werdenEEPROM = Electrically Erasable PROMNur-Lese Speicher der elektrisch gelöscht werden kann.FLASH ROMSpeicher kann blockweise (z.B 64 kByte) gelöschtund wortweise geschrieben werden. Die Anzahl der Löschvorgänge ist begrenzt (105– 106) �

NOR FLASH verhält sich beim Lesen wie RAM und ist daher für Programmspeicher geeignetNAND FLASH kann nur blockweise (z.B. 512 Byte)gelesen werden. Beispiele: USB Stick,

Speicherkarten.

Page 19: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

RAM Zelle (“Flipflop”) �

Quelle: Wikipedia.org

Page 20: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

D3

0

014

D2

0

014

D1

1

114

Prinzip Speicher-Matrix

1100101000111101

11

01

1 aus 4 Multiplexer

1 au

s 4

Mul

tiple

xer

A1 A0

A2

A3

x3 x1x2 x0

y0

y1

y2

y3

D0

00123

4567

8910

15

11

14 13 12

Page 21: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Typische Anschlussbelegung von Speicherbausteinen

256 4⋅

A7...A0D3...D0

Adressen Daten

SteuerleitungenCS

R/W*

Speicher

Speicher-kapazität

Wortbreite[Bit]

(1kBit) �

*1 für Read, 0 für Write

Page 22: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

FLASH Zelle

Quelle: Wikipedia.org

Page 23: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

FLASH Zelle (1 Bit NOR)�

Fowler

-Nor

dheim

Tun

nelin

g

Erase = 0V

Page 24: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

NAND FLASH

Page 25: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus
Page 26: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Design-Kriterien für Prozessoren

Architektur

• Anzahl der Gatter• Taktfrequenz• Anzahl Arbeitsschritte pro Takt• Parallelisierung• Integrierte I/O und Speicher-Ansteuerung• Integrierter Speicher

Page 27: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

CISC-Architektur• Complex Instruction Set Computing

– Maschinenbefehle werden in mehreren Schritten abgearbeitet (Mikroprogramm) und benötigen deshalb meist mehrere Takte

– verschiedene Befehle greifen auf den Zentralspeicher zu– Befehle benötigen unterschiedlich viel Speicherplatz

• Vor- und Nachteile+ flexibel

• neue Befehle sind leicht auf die CPU zu bringen, da durch Software realisiert (Mikroprogramm)�

+ Fehlerbeseitigung einfach• Design-Fehler-Behebung durch Einspielen neuer

Mikroprogramme– Aufwand

• Dekodierung der Befehle benötigt aufwändige Hardware(bis zu 70% der Chip-Fläche einer CPU)�

– Geschwindigkeit• CPUs wurden gegenüber RAM und Bussystem immer

langsamer je komplexer der Befehlssatz ist

Page 28: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

RISC-Architektur• Reduced Instruction Set Computing

– wenige, einfache Maschinenbefehle werden direkt durch Hardware abgearbeitet und benötigen (meist) nur 1 Takt

– nur mit zwei Befehlen kann auf den Zentralspeicher zugegriffen werden (Load/Store-Architektur)�

– großer Registersatz– Befehle benötigen alle gleich viel Speicherplatz und haben

ähnliches Format (regelmäßiger Befehlssatz)

• Vor-/Nachteile: + hohe Geschwindigkeit

• wenig langsame RAM/ROM-Zugriffe, alle Operationen arbeiten nur mit Registern, direkte Hardware-Realisierung der Befehle, schnelle Befehlsdekodierung

– vergrößerter Programmieraufwand (Assembler-Ebene) und Speicherverbrauch

• komplexe Befehle müssen durch Programmierer realisiert werden (z.B. Division), einheitliches Befehlsformat vergrößert Speicherbedarf

Page 29: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Prozessorfamilien

Gleiche oder sehr ähnliche CPU

• CPU Kompatibilität oder• Upgrade path • Unterschiedliche Taktfrequenzen• Unterschiedliche Speicherausstattung• Anderer Peripherie Mix

Page 30: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Prozessorfamilien

ARMdiv.

X86INTEL, AMD,div.

68000/COLDFIREFreescaleAVR

ATMELTMS320TI

MSP430TI

(unvollständig)�

8051INTEL, div.

HC05/08/11/12/16Freescale

C166Infineon

V850NEC

Page 31: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

ParallelisierungParallelität auf Instruktionsebene

IF: Instruction FetchID: Instr. DecodeEX: Exec/Addr. Calc.MEM: Memory readWB: Write back

Page 32: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

SoC System-on-a-Chip

Page 33: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

Spezialprozessoren

• Mikroprogrammierung• FPU: Floating Point Units• DSP: Digital Signal Processor• GP: Graphics Processoe (-Engine)�

• ... beliebiges

Page 34: Mikroprozessoren - mit.eit.h-da.demit.eit.h-da.de/Vorlesung/0100_Grundlagen.pdf · Mikroprozessor Harvard Architektur µP ROM RAM I/O Programm Bus Daten Bus

DSP: Digital Signal Processor• CPUs, die speziell an Anforderungen der Verarbeitung

digitalisierter Signale (z.B. Audio-, Video-, Sensor-Signale) angepasst, z.B.:– Datenaustausch zwischen digitaler und analoger Welt– hohe Rechengeschwindigkeit

• Beispiele: – integrierte AD- und DA-Wandler– spezielle Befehle für Rechenoperationen, die häufig

angewendet werden • Realisierung von Filtern

erfordert Multiplikation mit anschließender Addition zum vorhergehenden Ergebnis -> MAC-Befehl (in Hardware) „Multiply-Accumulate“

– RISC-Prozessoren mit modifizierter Harward-Architektur mit einem Programm- und zwei Datenspeichern, um Befehl und zwei Operanden parallel aus RAM laden zu können