MIKROPROZESSOR PROGRAMMIERUNG 4. VORLESUNG. LV-Nr. 439.026 SS2007 1 INSTITUT FÜR ELEKTRONIK BIT



Ähnliche Dokumente
Speicherkomponenten - Halbleiterspeicher

Tutorium Rechnerorganisation

Halbleiterspeicher. Halbleiterspeicher Michael Kuhfahl 1

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

Mikrocontroller Grundlagen. Markus Koch April 2011

13 Programmierbare Speicher- und Logikbausteine

RO-Tutorien 3 / 6 / 12

SSDs und Flash Memory. Matthias Müller 16.Juni 2010 Institut für Verteilte Systeme

Fachbereich Physik Dr. Wolfgang Bodenberger

Elektrizitätslehre und Elektronik. Halbleiterspeicher

Vorlesung. Technologische Grundlagen der Informationsverarbeitung. Speicherung von Daten. Dipl.-Ing. Gert Martin

Programmierbare Logik CPLDs. Studienprojekt B Tammo van Lessen

Digitaltechnik II SS 2007

Mikroprozessortechnik Grundlagen 1

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

1 Aufgaben zu Wie funktioniert ein Computer?

Fachbereich Medienproduktion

Digital Design Entwicklung der DRAMs. Richard Roth / FB Informatik und Mathematik Speicher 1

Speicher: RAMs, ROMs PROMS, EPROMs, EEPROMs, Flash EPROM

Praktikum Digitaltechnik

Digitaltechnik II SS 2007

Teil VIII Von Neumann Rechner 1

10. Elektrische Logiksysteme mit

a. Flipflop (taktflankengesteuert) Wdh. Signalverläufe beim D-FF

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger

32-Bit Microcontroller based, passive and intelligent UHF RFID Gen2 Tag. Zürcher Fachhochschule

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Einführung in. Logische Schaltungen

AZK 1- Freistil. Der Dialog "Arbeitszeitkonten" Grundsätzliches zum Dialog "Arbeitszeitkonten"

3. Halbleiter und Elektronik

Ram/Rom/EPRom WIRTSCHAFTSINGENIEURSWESEN. Ausbildungsschwerpunkte: BETRIEBSMANAGEMENT LOGISTIK. Xaver Schweitzer. Jahr: 2011/12

Von Bits, Bytes und Raid

Bedienungsanleitung Version 1.0

Klassifizierung der Halbleiterspeicher

easyident Türöffner easyident Türöffner Art. Nr. FS-0007 FS Fertigungsservice

2. Negative Dualzahlen darstellen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Digitalelektronik 4 Vom Transistor zum Bit. Stefan Rothe

Speichern. Speichern unter

Schaltungen Jörg Roth 197

WLAN Konfiguration. Michael Bukreus Seite 1

mit SD-Karte SD-Karte Inhalt

Synchronisierung. Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73

Das Experimentierbrettchen (Aufbau, Messpunkte): A B + 9V

3 ORDNER UND DATEIEN. 3.1 Ordner

RS-Flip Flop, D-Flip Flop, J-K-Flip Flop, Zählschaltungen

Elektrische Logigsystem mit Rückführung

Elektronischer Speicher

Easy-Monitoring Universelle Sensor Kommunikations und Monitoring Plattform

Quanton Manual (de) Datum: URL: )

CLIQ Solo. Einfache und flexible Sicherheit - die Sie selbst aktualisieren können

Professionelle Seminare im Bereich MS-Office

Ein polyadisches Zahlensystem mit der Basis B ist ein Zahlensystem, in dem eine Zahl x nach Potenzen von B zerlegt wird.

Technische Informatik Basispraktikum Sommersemester 2001

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Windows Server 2008 (R2): Anwendungsplattform

MSI TECHNOLOGY. RaidXpert AMD. Anleitung zur Installation und Konfiguration MSI

Objektorientierte Programmierung für Anfänger am Beispiel PHP

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich

Datensicherung. Beschreibung der Datensicherung

Die Mikroprogrammebene eines Rechners

Neuanlage des Bankzugangs ohne das bestehende Konto zu löschen

5 Zusammengesetzte und reguläre Schaltungsstrukturen

BitRecords FPGA Modul XC6SLX25_V2.0, Mai2013 1

OP-LOG

Tageslichtsimulator Easy Time Controll. Bedienungsanleitung

Einführung in die Welt der Microcontroller

Hier ist die Anleitung zum Flashen des MTK GPS auf der APM 2.0. Prinzipiell funktioniert es auch auf der APM 2.5 und APM 1.

iphone-kontakte zu Exchange übertragen

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

OPERATIONEN AUF EINER DATENBANK

ANYWHERE Zugriff von externen Arbeitsplätzen

Grundlagen der Technischen Informatik. Sequenzielle Netzwerke. Institut für Kommunikationsnetze und Rechnersysteme. Paul J. Kühn, Matthias Meyer

TBE332 Controller. Produktbeschreibung

Trackaufzeichnungen können als Active-Logs oder mit eigenen Namen versehene und auf max. 500 Punkte begrenzte Saved-Tracks gespeichert werden.

R C2 R B2 R C1 C 2. u A U B T 1 T 2 = 15 V. u E R R B1

1. Kennlinien. 2. Stabilisierung der Emitterschaltung. Schaltungstechnik 2 Übung 4

FORUM HANDREICHUNG (STAND: AUGUST 2013)

Excel-Anwendung Wartungsplan

Name: ES2 Klausur Thema: ARM Name: Punkte: Note:

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Staatlich geprüfter EDV-Führerschein

How-to: Webserver NAT. Securepoint Security System Version 2007nx

BEO-Sanktionsprüfung Eine Einführung zum Thema Sanktionsprüfung und eine Übersicht zur BEO-Lösung.

Local Control Network

Grundlagen der Informatik 2. Grundlagen der Digitaltechnik. 5. Digitale Speicherbausteine

Wie in der Skizze zu sehen ist, bleibt die Periodendauer / Frequenz konstant und nur die Pulsweite ändert sich.

Grundlagen verteilter Systeme

Entladen und Aufladen eines Kondensators über einen ohmschen Widerstand

Anleitung über den Umgang mit Schildern

Leitfaden zur Nutzung des System CryptShare

S/W mit PhotoLine. Inhaltsverzeichnis. PhotoLine

Update V2.3 B4000+ Firmware

EasyWk DAS Schwimmwettkampfprogramm

S7-Hantierungsbausteine für R355, R6000 und R2700

iphone 4 - Einrichtung des VPN Clients (Cisco VPN Client) / Verbinden des iphones mit einem Exchange

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Transkript:

MIKROPROZESSOR PROGRAMMIERUNG 4. VORLESUNG BIT LV-Nr. 439.026 SS2007 1

Ein Halbleiterspeicher dient der zeitlich begrenzten und unbegrenzten Aufbewahrung von Daten, Zuständen und Programmen in Form von digitalen Signalen. Das Speichern umfasst das Schreiben und Lesen in eine oder mehrere Speicherzellen. Zum Speichern in Speicherzellen macht man sich die physikalischen Effekte zu Nutze, die zwei verschiedene Zustände eindeutig erzeugen und erkennen lassen. Beispiele 1. Zustand an 1 viel groß +5V +3,3V 2. Zustand aus 0 wenig klein 0V 0V 2

Halbleiterspeicher sind Speichermedien, die mittels Halbleitertechnologie hergestellt werden. Dabei dient der Halbleiter nicht als Speichermedium sondern die mit ihm hergestellte elektronische Schaltung in einem integriertem Schaltkreis. Diese Schaltungen wurden früher mittels Röhren oder Relais verwirklicht. Ein Speicherelement ist eine abstrakte Umschreibung für ein Element, das ein Bit speichert und 2 Zustände High oder Low (logische 0/1) besitzt. Die kleinste adressierbare Einheit eines Arbeitsspeichers sind meist 8 Bit, also ein Byte. Früher waren auch Halbbytes (4 Bit) oder 7 Bit üblich. In 16-, 32- und 64-Bit-Systemen sind üblicherweise alle Bytes einzeln adressierbar. Ein Speicherelement ist also auch dort ein Byte. Manchmal werden in Systemen aber auch nur 16-, 32- oder 64-Bit-Wörter als Speicherelemente adressiert. Realisierung in Halbleitertechnologie: Das 1-Bit-Speicherelement ist mittels weniger Transistoren oder einer Kombination aus Transistoren und Kondensatoren realisierbar. 3

HALBLEITERSPEICHER Tabellenspeicher RAM ROM STATISCH MROM SRAM PROM DYNAMISCH EPROM DRAM EEPROM FLASH Funktionsspeicher FPGA PLD RAM ROM M/P EP EE PLD FPGA RANDOM ACCESS MEMORY READ ONLY MEMORY MASKENPROGRAMMIERBAR / PROGRAMMIERBAR LÖSCHBAR & PROGRAMMIERBAR ELEKTRISCH LÖSCHBAR & PROGRAMMIERBAR PROGRAMMABLE LOGIC DEVICE FIELD PROGRAMMABLE GATE ARRAY 4

Die Speicherkapazität C ist die maximale speicherbare Informationsmenge in Bit oder Byte. C wird auf die kleinste, getrennt adressierbare Informationseinheit bezogen. Übliche Angaben: 1K = 2 10 1M = 2 20 1G = 2 30 1 Bit - (2 1 = 2 mögliche Zustände), z. B. 0/1 1 Byte = 8 bit 1 KByte = 1024 Byte 1 MByte = 2 20 = 1048576 Byte 1 GBit = 2 30 Byte = 1 073 741 824 Byte Kenngrößen von Halbleiterspeichern: Speicherkapazität Speicherorganisation Auswahlprinzip der Speicherzelle Zugriffszeit Zeit, die von der Adressbereitstellung bis zur Ausgabe gültiger Daten am Speicher vergeht Zykluszeit kleinste zulässige Zeitdifferenz zwischen zwei Speicherzugriffen (Lese/Schreibzyklus unterschiedlich) 5

µc/µp/dsp SYSTEME PROGRAMMSPEICHER & KONSTANTEN DATENSPEICHER & VARIABLEN MROM (maskenprogrammierbarer ROM) PROM (Programmierbares ROM) EPROM (Erasable Programmable ROM) OTP (One Time Programmable) EEPROM (Electrically EPROM) FLASH Memory NOVRAM (Nonvolatile SRAM)... SRAM (statischer RAM) DRAM (dynamisches RAM) NOVRAM (Nonvolatile SRAM) EEPROM (Electrically EPROM) EDO DRAM (EDO = Extended Data Out) EDRAM (Enhanced DRAM) SDRAM (Synchronous DRAM) VRAM (Video RAM)... 6

Festwertspeicher ROM (Read Only Memory) sind nichtflüchtige Speicher, die eine gespeicherte Information beliebig oft auslesen gestatten. Das Löschen oder Umschreiben der Information ist im eigentlichen Arbeitsrhythmus des Speichers nicht möglich Maskenprogrammierte ROM: MROM sind Kundenwunsch Schaltkreise mit hohem Vorfertigungsgrad. Die Programmierung erfolgt beim Schaltkreishersteller Bei den maskenprogrammierten ROMs sind je nach zu speicherndem Bit mittels Maske bei der Herstellung des ICs, Brücken eingebaut, oder nicht. Bei Ansteuerung mit Brücke ist der Transistor leitend, sodass am Widerstand eine Spannung ansteht (Bit 1). 7

Programmierbare ROM: PROM sind vom Anwender einmal programmierbar, aber nicht wieder löschbar Es gibt auch ROMs, die erst vom Anwender mit Bits beladen (programmiert) werden. Bei diesen PROMs sind dünne Schmelzleiter eingebaut, die beim Programmieren durchgebrannt werden. Die ursprünglichen PROMs werden inzwischen nahezu nicht mehr verwendet. Heutige PROMs sind in Wirklichkeit nichts anderes als EPROMs ohne Löschfenster Allgemeine Eigenschaften der PROM: freie Programmierbarkeit keine Lösch- oder Umprogrammiermöglichkeit Programmierfehler sind nicht behebbar wird fast nicht mehr verwendet EPROM! 8

Re-Programmierbare ROM: EPROM sind kostengünstige ROM Bausteine zur mehrmaligen Programmierung durch den Anwender. Bei EPROMs enthält das Speicherelement einen FET mit schwebendem Gate. Dieses lädt sich bei der Programmierung langlebig auf, sodass der Speicherinhalt für viele Jahre erhalten bleibt, und zwar auch ohne Betriebsspannung. Ein EPROM hat zum Löschen ein Quarzglasfenster. Wird das EPROM mehrere Minuten lang mit UV-Licht bestrahlt, so entlädt sich das schwebende Gate, sodass eine erneute Programmierung möglich wird. Allgemeine Eigenschaften der EPROM: frei programmierbare Festwertspeicher vom Anwender programmierbar, löschbar und re-programmierbar unprogrammierbar (gelöscht) liegen alle Zellen auf H-Pegel Programmierspannungen und Zeitbedingungen bei verschiedenen Typen und Herstellern unterschiedlich (Programmiergerät verwenden) zum Löschen UV-Löschgeräte benutzen Anwendung: flexibler und zeitlich stabiler Programmspeicher (die gespeicherten Daten sind nach Herstellerangaben über 10 Jahre stabil) UV-LICHT 9

Re-Programmierbare ROM: EEPROM (E²PROM) sind ROM Bausteine zur mehrmaligen Programmierung durch den Anwender Electrical erasable PROM ist ein Oberbegriff für mehrere Varianten, die Bit-, Wort- Sektorweise oder vollständig löschbar und neu programmierbar sind. Sie nehmen eine Zwitterstellung zwischen RAM und ROM ein. Allgemeine Eigenschaften der E²PROM: frei programmierbare Festwertspeicher vom Anwender wiederholt programmierbar (nach Herstellerangaben bis zu 10 6 Lösch/Schreibzyklen möglich) Programmierspannungen und Zeitbedingungen bei verschiedenen Typen und Herstellern unterschiedlich (Programmiergeräte verwenden) Anwendung: zeitlich stabiler Programmspeicher (die gespeicherten Daten sind nach Herstellerangaben über 10 Jahre stabil) 10

Re-Programmierbare ROM: FLASH Speicher (Flash-EPROM) sind flexible ROM Bausteine mit hoher Speicherdichte zur mehrmaligen Programmierung durch den Anwender Im Gegensatz zu gewöhnlichem EEPROM-Speicher lassen sich beim Flash-EEPROM Bytes, die kleinste adressierbare Speichereinheit, nicht einzeln löschen. Anwendung finden Flash-Speicher überall dort, wo Informationen persistent (nichtflüchtig) auf kleinstem Raum gespeichert werden müssen. Allgemeine Eigenschaften der FLASH- Speicher: frei programmierbare und freilöschbare Festwertspeicher vom Anwender schnell programmierbar und auch schnell (elektrisch) löschbar eingebaute Programmierhilfen ermöglichen eine einfache Handhabung Bausteine sind EPROM anschlusskompatibel (Austausch gegen EPROM der gleichen Typennummer ist möglich) zum Löschen und Re-Programmieren können die Bausteine auf der Leiterplatte verbleiben (OBP: On Board Programming; dazu wird das Programmiergerät über Steckadapter angeschlossen) 11

FLASH- SPEICHER Anmerkung: PROGRAMMIEREN LÖSCHEN Ein Flash-Speicher besteht aus einer bestimmten, von der Speichergröße abhängigen Anzahl einzelner Speicherelemente. Die Speicherung eines Bits innerhalb eines solchen Speicherelements erfolgt über ein Floating Gate, dem eigentlichen Speicherelement des Flash-FETs. Es liegt zwischen dem Steuer-Gate und der Source- Drain- Stecke und ist von dieser wie auch vom Steuer- Gate jeweils mittels einer Oxid- Schicht isoliert. Im ungeladenen Zustand des Floating Gate kann bei am Gate aufgesteuertem Transistor in der Source- Drain- Strecke (sog. Kanal) ein Strom fließen. Werden über das Steuer- Gate durch Anlegen einer hohen positiven (10..18 V) Spannung Elektronen auf das Floating- Gate gebracht, so kann in der Source- Drain- Strecke auch bei aufgesteuertem Transistor kein Strom mehr fließen: das negative Potential der Elektronen auf dem Floating Gate wirkt der Spannung am Steuer- Gate entgegen und hält den Flash-Transistor geschlossen. Der ungeladene Zustand wird wieder erreicht, indem die Elektronen durch Anlegen einer hohen negativen Spannung über die Steuergate- Kanal- Strecke wieder aus dem Floating Gate ausgetrieben werden. 12

FLASH- SPEICHER VORTEILE: Datenerhalt bei fehlender Versorgungsspannung (nichtflüchtiger Speicher/nonvolatile Memory) geringer Energieverbrauch im Betrieb günstiger Massenspeicher Auslesen funktioniert bei NOR-Typen genau so wie bei herkömmlichen statischen RAM-Bausteinen resistent gegen Erschütterungen kleine Bauform NACHTEILE: langsamer als RAM (Random Access Memory), vor allem beim Schreiben es können (oft) nur ganze Sektoren auf einmal gelöscht werden relativ komplexe Ansteuerung beim Schreiben/Löschen (Memory Controller erforderlich, z. T. werden Flash-Speicher sogar mit eigenen intelligenten Interfaces ausgestattet) begrenzte Anzahl von Schreibzyklen, schon beim Annähern an diese Grenze steigende Unzuverlässigkeit 13

Schreib Lesespeicher RAM RAM (Random Access Memory) sind Arbeitsspeicher, die schnelles Speichern (Schreiben) und Lesen von Daten ermöglichen Schreiben und Lesen sind getrennte Vorgänge. Beim Lesen wird die gespeicherte (d.h. vorher eingeschriebene) Information nicht gelöscht. Beim Schreiben wird die vorher gespeicherte Information überschrieben. RAMs sind in der Regel flüchtige Speicher, beim Ausschalten der Betriebsspannung gehen alle Informationen verloren. Sonderausführungen zum Speicherschutz: Batteriegepufferte CMOS Speicher (Zero Power RAM) Kombination aus RAM und EEPROM (NOVRAM = Non Volatile RAM) Geschichte: Ende der fünfziger Jahre entwickelten Vorläuferfirmen von Silicon Valley integrierte Schaltkreise zur Datenspeicherung. Somit wurden die schweren, langsamen und teilweise unzuverlässigen Ferritkerne ersetzt. Der RAM dient zur kurzfristigen Speicherung von Daten und ermöglicht das Abarbeiten von Programmen durch die CPU. Diese werden hierbei von einem externen Datenträger gelesen und in den Arbeitsspeicher geschrieben. Nachdem eine Auswertung und Veränderung erfolgt ist, müssen sie wieder auf den Datenträger gebracht werden. Die Verbindung erfolgt über Busse (Adressbus, Datenbus, Steuerbus) 14

Aufbau: Statische RAM (SRAM) speichern die Information in statischen Speicherzellen. Die Speicherwirkung ist an das Vorhandensein der Versorgungsspannung gebunden (flüchtige Speicherung). Im Gegensatz zu DRAMs müssen, um die Daten zu erhalten, außer der Betriebsspannung keine Signale zum Auffrischen erzeugt werden. Die Daten bleiben also auch bei statischer Ansteuerung erhalten, ohne dass die Steuerleitungen ihren Zustand ändern. Die elementare Speicherzelle eines SRAM ist das Flipflop. Durch diese Realisierung ist der Speicherbaustein relativ schnell und lässt sich einfach ansteuern. Der Nachteil liegt jedoch in der technologisch aufwendigen (teuren) Herstellung. Zudem kommt ein größerer Strom- und Platzbedarf, da für das Flipflop und dessen Ansteuerung mindestens 6 Transistoren benötigt werden. Flip-Flop: SRAM- Chip: Ein 4 Mbit großen SRAM- Speicher, bei dem jede 1- bit-speicherzelle bestehend aus sechs Transistoren - auf einer Fläche von 0,57 µm² Platz findet Ein Flipflop (engl. flip-flop), auch bistabile Kippstufe oder bistabiles Kippglied genannt, ist eine elektronische Schaltung, die zwei stabile Zustände einnehmen und diese speichern kann. 15

SRAM - Ausführungen Asynchrone Speicher (Asynchronous Static Memory) Diese Speicher benötigen kein Taktsignal und sind adressen-aktivierbar Synchrone Speicher (Synchronous Static Memory) SRAM mit getakteter Adresseingabe in einen Zwischenspeicher Burst RAM sind synchrone SRAM mit integriertem Burst Zähler (z.b. bei CACHE Speichern). Vom Prozessor wird nur die Startadresse auf den Adressbus gelegt. Nach der Zwischenspeicherung im Adressregister des RAMs kann der Prozessor andere Operationen durchführen. Anmerkung: Prinzipielle Anordnung der Speicherzellen in Reihen und Spalten (Matrix) in einem RAM. Die Adresscodierer befinden sich auf dem gleichen Chip. Der Schreib- / Leseschaltkreis schaltet die Informationsrichtung um und verstärkt die schwachen Signale der adressierten Speicherzellen. Schreib/Lesevorgang: ~5-60ns/~5-60ns 16

Dynamische RAM (DRAM) speichern die Information in dynamischen Speicherzellen. Die Speicherwirkung ist an das Vorhandensein der Versorgungsspannung und eine periodische Datenauffrischung (Refresh) gebunden (flüchige Speicher) Prinzip: Diese Form des RAMs besteht nur aus einem Transistor, der zusammen mit einem Kondensator eine Zelle bildet. Durch diese Kombination werden höchste Speicherkapazitäten auf kleinstem Raum erreicht, was allerdings Zugeständnisse in der Geschwindigkeit und eine aufwendige Steuerung erfordert. Dafür sind die Herstellungskosten im Gegensatz zum SRAM geringer. Um ein Überforderung des Speicherchips bei zu hoher Taktfrequenz zu vermeiden, werden Wartezyklen eingeführt, die die Zugriffsgeschwindigkeit herabzusetzen. Da Kondensatoren ihre Ladung verlieren ist eine periodische Auffrischung notwendig. Diese erfolgt ca. alle 3 ms, wobei der Inhalt gelesen, verstärkt und erneut abgespeichert wird. Funktionsweise: Jede Speicherzelle besteht aus 3 Schichten, die oberste Schicht, die Zellplatte, steht ständig unter positiver Spannung. Darunter befindet sich eine Isolierschicht und eine Lage aus dotiertem Silicium. Durch die positive Spannung der oberen Schicht werden die Elektronen der unteren angezogen, so daß sie unter der Isolierschicht kleben, dieser stabile Zustand entspricht der binären Null. Durch positive Spannung lassen sich die an der Isolierschicht angelagerten Elektronen absaugen. Dadurch entsteht eine Raumladungszone ohne freie Elektronen, die einer binären Eins entspricht. Da dieser Zustand instabil ist, muss eine Auffrischung erfolgen. Deswegen besteht der größte Teil des Speicherchips aus einem Speicherzellenfeld, welches für die Speicherung vieler Einsen und Nullen verwendet wird. Durch die Anordnung der Zellen in Form einer Matrix wird jede Speicherzelle durch eine Zeilen- und Spaltennummer eindeutig bestimmt. Prinzipschaltung von DRAM Schreib/Lesevorgang: ~25-50ns/~25-50ns 17

RAM Übersicht (nicht vollständig): Abkürzung SRAM SSRAM DRAM CDRAM EDO-RAM EDRAM MDRAM PM-DRAM RDRAM SDRAM 3D-RAM FBRAM FRAM NVRAM SGRAM VRAM WRAM Erklärung static random access memory synchronous SRAM dynamic random access memory cached DRAM extended data out DRAM enhanced DRAM Multibank DRAM page mode DRAM rambus DRAM synchronous DRAM frame buffer RAM ferroelektrisches RAM non volatile RAM synchronous graphic RAM Video RAM Windows RAM Bemerkung schnell, teuer, ohne refresh synchronisiert benötigt refresh, preiswert sync. Zugriff durch SRAM Cache gepufferter Datenausgang integrierter SRAM Cache einzelne 32 KByte Speicherbänke beschl. Zugriff bei gleicher Zelle sehr schneller Datenbus synchroner Speicherzugriff Grafikspeicher, auf 3D- Operat. optimiert interne ALU für Z-Vektor bei 3D- Operat. Prinzip des ferroelektr. Kondensators Kombination aus SRAM und EEPROM SDRAM mit zusätzl. Videofunktionen gleichzeitiger Zugriff von 2 Seiten VRAM mit EDO Eigenschaften weiterhin existieren noch kombinierte Speichertypen mit dem Burst- sowie dem Piplined- Burst- Modus 18

On-Chip Peripherie Systemkomponenten für µc On-Chip Peripherie eines C167 µc von Infineon : Allg. Beispiele für µc-peripherie: Interrupt Controller Taktoszillator Eingabe- und Ausgabe- Ports (I/O Ports) Timer (verschiedene Timer und Counter- Funktionen) Kommunikationsschnittstellen (UART, I²C, SPI, CAN, IrDA ) Analog/Digital-Umsetzer (ADU) Digital/Analog-Umsetzer (DAU) Externe Interrupts Echtzeituhr (RealTime Clock RTC) WatchDogTimer (WDT) Ansteuerung von Anzeigebauelementen (LCD- Anzeigen, LED Anzeigen) Verschiedene Stromsparfunktionen Debugging- Unterstützung 19

On-Chip Peripherie Systemkomponenten für µc Interrupt-System: Die Auslegung eines Interrupt-Systems für einen µc wird durch die integrierenden Interrupt- fähigen Peripheriekomponenten bestimmt Eigenschaften vieler Interrupt- Systeme: Jede Interrupt Quelle verfügt über ein eigenes Enable Flag über ein globales Enable Flag kann die Weiterleitung von Interrupt- Anmeldungen an den Core gesperrt werden Nach einem RESET ist eine Grundpriorität der Interrupt- Quellen eingestellt Es bestehen umfangreiche Möglichkeiten zur Einstellung der Prioritäten Unterschiedliche Interrupts benutzen z.t. den gleichen Interrupt- Vektor Auftretende Interrupt Ereignisse werden in Request Flags gespeichert Request Flags können auch zum Polling benutzt werden Hinweis: Der in die Interrupt- Vektortabelle einzutragenden Interrupt Vektor für die entsprechende On- Chip Komponente ist bei vielen µc die direkte Startadresse der Interrupt Serviceroutine (ISR) und kein Sprungbefehl zur ISR! 20

10101010101110101010101010101010101010010101010101010101010101001010101010101010101010101010101010101010101010101011111010100010101010101 On-Chip Peripherie Systemkomponenten für µc Interrupt-System: Notwendige Einstellungen für die Nutzung und Aktivierung eines Interrupts: Eintrag des Interrupt- Vektors in die Interrupt- Vektortabelle Definition der Betriebsart für die Interrupt auslösende Komponente Einstellung der notwendigen Interrupt Priorität Zulassen des Interrupts für die On-Chip Komponente Erlauben von Interrupts im System Programmierung der Interrupt Serviceroutine (ISR) Anmerkung: Übliche Interrupt- Reaktionszeiten liegen im Bereich einiger Maschinenzyklen. Sehr schnell getaktete Systeme bieten Reaktionszeiten im Bereich von einigen 100ns, sodass anspruchsvolle Echtzeitanforderungen erfüllt werden können! Die Einstellung der Priorität für das Interrupt- System erfolgt über ein oder mehrere SFR. Hardware- Traps: Eine Besonderheit bei der Prioritätszuweisung stellen bei einigen µcs Hardware- Traps dar, die als spezielle Interrupts mit höchster Priorität eingeordnet sind und sich nicht sperren lassen. Hardware- Traps sind z.b. Core- nahe Fehlermeldungen Peripheral-Event-Controller: Zum schnellen Datentransfer, z.b. zum Laden des Senderegisters der seriellen Schnittstelle, sind einige µcs mit einem PEC (Peripheral Event Controller) ausgerüstet. Der PEC ist eine initialisierbare On-Chip-Hardware, die innerhalb eines Maschinenzyklus 8- Bit- oder 16-Bit Datentransfers ohne weitere CPU Belastung ausführt. Ausgelöst wird der Transfer durch einen Interrupt. Quell- und Zieladresse und die Anzahl der PEC-Transfers lassen sich zuvor initialisieren 21

On-Chip Peripherie Systemkomponenten für µc Sicherheitskomponenten: WatchDogTimer: Ein WatchDogTimer (WDT) besteht aus einem frei laufendem Zähler, der kurz vor seinem Überlauf durch das aktuelle Programm zurückgesetzt wird. Erfolgt das Rücksetzen nicht rechtzeitig, so wird durch den Zähler ein Reset oder ein Interrupt ausgelöst, wodurch das System in einen definierten Ausgangszustand versetzt wird. Innerhalb einer fehlerfrei laufenden Applikationssoftware lässt sich sicherstellen, dass der WDT vor seinem Überlauf zurückgesetzt wird. Ein Fehler in der Programmabarbeitung wird zu einem WDT-Reset für den µc führen. Oszillator-Safe-Guard: Beim Absinken der Versorgungsspannung reduziert der Oszillator-Safe-Guard (OSG) die Taktfrequenz auf den für die vorhandene Spannung zulässigen Maximalwert. Weiterhin überwacht der OSG die Funktion des Hauptoszillators und schaltet bei dessen Ausfall einen Hilfsoszillator zu. Low-Voltage-Detect: Die Funktion des Low-Voltage-Detect (LVD) überwacht den Spannungsanstieg beim Zuschalten der Betriebsspannung und untersucht zusätzlich im laufenden Betrieb die Versorgungsspannung auf Spannungseinbrüche. ESD-Schutz: Mit entsprechenden On-Chip-Schutzbeschaltungen sind ESD-Festigkeiten (Electro Static Discharge) von mehr als 5000V erreichbar. Stromsparmodi: Siehe 3. Vorlesung 22

Ports: 10101010101110101010101010101010101010010101010101010101010101001010101010101010101010101010101010101010101010101011111010100010101010101 On-Chip Peripherie Systemkomponenten für µc Über Portpins ist der µc mit der Außenwelt verbunden. Üblich ist eine Zusammenfassung einzelner Portpins mit gleicher Funktionalität z.b. zu 8-Bit oder 16-Bit Ports. Welche maximale Datenbreite über die Ports digital übertragen werden kann, ist von der Breite des On-Chip Datenbusses abhängig. Anmerkung: I/O Ports eines C167 µc von Infineon: Typisch ist eine Ansteuerung der Ports für digitale I/O über Portregister. Daten werden über ein Port-Daten-Register (Port Data Register) bereitgestellt, die Richtung des Datentransfers bei bidirektionalen Ports wird über ein Datenrichtungsregister (Data Direction Register) definiert. Sind neben digitale, I/O Alternativfunktionen für Ports bzw. Portpins vorgesehen, so sind zusätzlich meist noch Steuerregister notwendig Hinweis: Als Ausgangstufen findet man Open- Drain, Pull-Up und Open- Kollektor Stufen. Zusätzlich wird Tristate- Verhalten vorgesehen, wenn die Ports alternativ einen externen Daten-/Adressbus bereitstellen. 23