Theorie der Programmiersprachen

Ähnliche Dokumente
Übungen zur Vorlesung Grundlagen der Rechnernetze. Zusätzliche Übungen

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

Teil 2.3. Welche Hardware (Elektronik) benutzt ein Computer zum Speichern von Daten?

Grundlagen der Technischen Informatik. Hamming-Codes. Kapitel 4.3

Codes (6) Fehlererkennende (EDC) bzw. fehlerkorrigierende Codes (ECC)

Technische Grundlagen der Informatik

Error detection and correction

(Prüfungs-)Aufgaben zur Codierungstheorie

Themen. Sicherungsschicht. Rahmenbildung. Häufig bereitgestellte Dienste. Fehlererkennung. Stefan Szalowski Rechnernetze Sicherungsschicht

RO-Tutorien 3 / 6 / 12

Speichermedien

Fachbereich Medienproduktion

4.3 Hintergrundspeicher

Besprechung des 7. Übungsblattes Speicheraufbau Speichertypen DRAM Speicherbelegung

RAM - Random Access Memory

Technische Informatik - Eine Einführung

Übung zu Drahtlose Kommunikation. 1. Übung

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

Fehlererkennung. Fehlererkennung

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

Halbleiterspeicher. Halbleiterspeicher Michael Kuhfahl 1

Fehlererkennende und fehlerkorrigierende Codes

Halbleiterspeicher. Halbleiterspeicher

Rechnerstrukturen Winter SPEICHER UND CACHE. (c) Peter Sturm, University of Trier 1

Codierungstheorie Teil 1: Fehlererkennung und -behebung

Grundlegendes zum PC

Zyklische Codes Rechnernetze Übung SS2010

Busse. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009

Grundlagen der Technischen Informatik. 2. Übung

CPU Speicher I/O. Abbildung 11.1: Kommunikation über Busse

Technische Grundlagen der Informatik

Lösungsvorschlag 3. Übung Technische Grundlagen der Informatik II Sommersemester 2009

Fragenkatalog Computersysteme Test 25. April 2008

Computer-Systeme. Teil 3: Das Boxmodell von Variablen

Grundlagen der Technischen Informatik. Codierung und Fehlerkorrektur. Kapitel 4.2

Nichttechnische Speicherung

Empfänger. Sender. Fehlererkennung und ggf. Fehlerkorrektur durch redundante Informationen. Längssicherung durch Paritätsbildung (Blockweise)

Rechnernetze Übung 5. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai Wo sind wir?

B Hauptspeicher und Cache

B Hauptspeicher und Cache

Notizen-Neuerungen PC- HAUPTSPEICHER

Grundlagen der Technischen Informatik. Codierung und Fehlerkorrektur. Kapitel 4.2. Codewörter. Codewörter. Strukturierte Codes

Fehlererkennung und -behandlung. Paritätsverfahren

Arithmetische und Logische Einheit (ALU)

Tutorium Rechnerorganisation

Mikroprozessortechnik Grundlagen 1

9 Codes. Hochschule für Angewandte Wissenschaften Hamburg FACHBEREICH ELEKTROTECHNIK UND INFORMATIK DIGITALTECHNIK 9-1

3. Massenspeicher. Abbildung 3.1 Festplatte von oben. Abbildung 3.2 Festplatte von unten

E Hauptspeicher und Cache

Elektrizitätslehre und Elektronik. Halbleiterspeicher

4. Digitale Speichermedien

Was machen wir heute? Betriebssysteme Tutorium 12. Organisatorisches. Frage 12.1.a. Programmieraufgaben Vorstellung. Antwort

Digitaltechnik II SS 2007

Systeme 1: Architektur

Angewandte Informationstechnik

Modul 304: Personalcomputer in Betrieb nehmen Thema: Speicher. Speicher / Memory V 1.0. Technische Berufsschule Zürich IT Seite 1

Dekohärenz und Grundprinzip der Quantenfehlerkorrektur

Grundlagen Digitaler Systeme (GDS)

Beschaffung vom Informationssystemen Datenorganisation Kommunikation

Teil VIII Von Neumann Rechner 1

13. Algorithmus der Woche Fehlererkennende Codes Was ist eigentlich ISBN?

Neue Speichermedien für Datenbanken

Digitaltechnik II SS 2007

Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2012

Mikrocontroller Grundlagen. Markus Koch April 2011

Die Mathematik in der CD

Systeme II 7. Die Datensicherungsschicht

Ein- und Ausgabegeräte

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

Trellis Diagramme und Viterbi-Decoder

In diesem Abschnitt werden wir einige Schaltwerke kennenlernen, die als Basisbauteile überall im Aufbau digitaler Schaltungen verwendet werden.

Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2011

Hauptspeicher H.1.1 Einordnung Organisation und Verhalten von Hauptspeichermodulen. Caches und assoziative Speicherung. Höhere Informatik :

Hardware. Speichermedien

Schema eines PCs (Personal Computer)

Die Digitalisierung von Musik

Betriebssysteme K_Kap11C: Diskquota, Raid

REFERAT ÜBER RAM-MODULE:

Klausuraufgaben: Hardware (1.) Notieren Sie die Namen der Schnittstellen!

Rechnernetze 1 Vorlesung im SS 07

Kommunikation in Sensornetzen

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)

Grundbegrie der Codierungstheorie

Datenspeicher oder Speichermedien. Lisa C.

, 2016W Übungstermin: Fr.,

Klausur Lösung

Lösung. H_DA Dr. Frank Fachbereich I. Unterschrift:

5 Zusammengesetzte und reguläre Schaltungsstrukturen

Transkript:

slide 1 Vorlesung Theorie der Programmiersprachen Prof. Dr. Ulrich Ultes-Nitsche Forschungsgruppe Departement für Informatik Universität Freiburg

slide 2 Heute Komponenten eines Computers Speicher Die Grafiken der heutigen Vorlesung stammen im wesentlichen von W. Stallings.

slide 3 Schematische Struktur Prozessor Hauptspeicher Controller für Peripheriegerät... Controller für Peripheriegerät... B u s

slide 4 Hauptspeicher RAM Random Access Memory flüchtiger Speicher ROM wird der Strom abgeschaltet, geht die Information verloren durch Transistor oder Kondensator werden Bits temporär gespeichert Read-Only Memory residenter Speicher auch nach Abschalten des Stroms bleibt die Information erhalten Bits sind fest verdrahtet

slide 5 Eine elementare Speicherzelle (mit Transistoren realisiert) Takt D Q Q

slide 6 Statische und dynamische Speicher (SRAM und DRAM) Ein mit Transistoren realisierter Speicher (z.b. Flip-Flop) wird als statisch bezeichnet (SRAM): ist ein Bit gespeichert, bleibt es erhalten, solange der Speicher mit Strom versorgt wird und der Speicherinhalt nicht geändert wird Im Gegensatz hierzu gibt es Speicher, deren Inhalt ständig aufgefrischt werden muss (mit Kondensatoren realisiert): diese Speicher heissen dynamische Speicher (DRAM)

slide 7 SRAM versus DRAM SRAM schneller als DRAM Cache relativ teuer keine so hohe Packungsdichte DRAM etwas langsamer als SRAM normaler Hauptspeicher billig herzustellen hohe Packungsdichte, weil sehr einfache Schaltung

slide 8 Aufbau eines DRAM

slide 9 Flip-Flop auf Transistorebene

slide 10 Adressierung bei DRAMs

slide 11 SRAM Adressierung (256 kbyte aus 256 kbit Bausteinen)

slide 12 1 MByte aus 256 kbit Bausteinen

slide 13 Überlegen Sie selbst! Wie viele Adressleitungen brauch man um 16 Blöcke von 1024 1024 Bit Speicherbausteinen zu adressieren? Wie viel mehr Adressleitung braucht man, um einen Hauptspeicher fester Grösse (in Bit) bei einem Computer der Wortlänge 8 Bit zu adressieren, im Vergleich zu einem Computer der Wortlänge 16 Bit?

slide 14 Fehlerbehandlung In Speicherbausteinen können Bits verändert werden. Manche Computerspeicher enthalten daher redundante Information, die nur dazu dient, Fehler zu erkennen oder zu beheben.

slide 15 Speicheraufbau mit Fehlerkorrektur

slide 16 Fehlererkennung auf Bitebene Grundlegende Alternativen Ausnutzung der Distanz zwischen gültigen Codewörtern, d.h. nicht alle möglichen Bitkombinationen sind gültige Codewörter Hinzufügen von Redundanz bei der Übertragung (z.b. Paritätsbits, Prüfsummen) Hamming-Abstand Anzahl unterschiedlicher Bits zweier Codewörter c 1 und c 2, d.h. Anzahl der 1-Bits von c 1 XOR c 2. Beispiel: d(10001001, 10110001) = 3 Hamming-Abstand D von vollständigem Code C : minimaler Abstand zwischen zwei Code-Wörtern.

slide 17 Hamming Codes (I) Hamming-Abstand eines Code bestimmt die Fähigkeit des Codes, Fehler zu erkennen und zu beheben erkennen von e-bit-fehlern: Hamming-Abstand e+1 notwendig beheben von e-bit-fehlern: Hamming-Abstand 2e+1 notwendig

slide 18 Hamming Codes (II) Wieviele Prüfbits r werden benötigt, um 1-Bit- Fehler bei Codewörtern mit m Bits zu beheben? mit m Bits können 2 m Codewörter erzeugt werden pro Codewort c i der Länge n = m + r existieren n illegale Codewörter gleicher Länge mit Hamming-Abstand 1. 2 n ist die Gesamtzahl der Codewörter es müssen also (n+1) 2 m Codewörter mit n Bits darstellbar sein untere Grenze für r berechnet sich zu: ( n + 1)2 fi ( m + m 2 n = r + 1) 2 2 r m+ r

slide 19 Hamming Codes (III) Beispiele Fehlererkennender Code Code mit einem einzigen Paritätsbit Hamming-Abstand des Codes = 2 Erkennung eines 1-Bit-Fehler möglich (allg.: Fehler mit ungerader Anzahl von Bits) Fehlerbehebender Code (vereinfacht) 00000 00000, 00000 11111, 11111 00000, 11111 11111 Hamming-Abstand des Code = 5 Korrektur von 2-Bit-Fehlern möglich Beispiel: 00000 00111 00000 11111 Hamming-Codierung Methode zur Erzeugung fehlerbehebender Codes

slide 20 Hamming Codierung (I) Ziel: Fehlerkorrektur bei 1-Bit Fehlern bei minimaler Redundanz Verfahren: Einfügen von Kontrollbits an alle Positionen, deren Nummer eine Zweierpotenz ist Durchnummerierung aller Bits Kontrollbits werden so gesetzt, dass die Summe aller Bits mit Wert 1, die in ihrer Binärdarstellung die Nummer des Kontrollbits enthalten, gerade ist.

slide 21 Hamming Codierung (II) Beispielcodierung: 0010: 0 _ 0 1 0 0 _ 0 _ 0 1 0 0 I 0 _ 0 1 0 0 1 0 1 0 1 0 Codewort: 0101010

slide 22 Hamming Codierung (III) Kippt bei der Datenübertragung ein Bit, so werden all jene Kontrollbits inkorrekt sein, deren Summe die Position des gekippten Bits angibt. z.b.: 0 1 0 1 0 1 0 letztes Bit kippt: 0 1 0 1 0 1 1 ungültige Kontrollbits: 0 1 0 1 0 1 1 gekipptes Bit an Position 1 + 2 + 4 = 7

slide 23 Ist diese Codierung wirklich optimal? Zeigen Sie, dass für das Beispiel mit der Wortlänge 4 Bit, Codeworte der Länge 7 Bit tatsächlich einen optimalen (d.h. kürzesten) 1-Bit- Fehler korrigierenden Code bilden.

slide 24 Was ist hier passiert? Angenommen ein Speicherinhalt wurde Hamming-codiert. Beim Auslesen einer Speicherzelle erhalten Sie das Ergebnis 1111111001111111. Ist hier ein Fehler aufgetreten? Falls ja, welches Bit ist fehlerhaft verändert worden? (unter der Annahme, dass, falls ein Fehler aufgetreten ist, genau ein Bit verändert wurde)

slide 25 Redundanz durch Paritätsbits Hinzufügen eines Paritätsbits zu einer Dateneinheit Gerade Parität (even parity): Ergänzung mit Paritätsbit auf eine gerade Anzahl von 1 -Bits Ungerade Parität (odd parity): Ergänzung auf ungerade Varianten Vertikale Parität (VRC, vertical redundancy check): Paritätsbit für jedes Zeichen Längsparität (LRC, longitudinal redundancy check; auch BCC genannt, block control character): Paritätsbit für die Bits einer Bitposition in einem Block von Zeichen. Matrixparität: Kombination von VRC und LRC

slide 26 Beispiel für Paritäten Zeichen 1 0 1 0 0 0 0 1 0 Zeichen 2 1 0 0 1 0 1 1 0 Zeichen 3 1 1 0 0 0 0 1 1 VCR (even parity) 0 0 0 1 0 1 1 BCC (even parity)

slide 27 Externe Speichermedien Magnetische Medien Festplatte, Floppy, ZIP-Drive Codierung durch Polarität elementarer Magneten auf dem Medium Getrennte Lese- und Schreibköpfe Optische Medien CDROM, DVD Kleine Löcher in Oberfläche Abtastung durch Laser

slide 28 Beispiel eines magnetischen Mediums

slide 29 Spuren und Sektoren Es gibt zwei Unterteilungen der Oberfläche magnetischer Speichermedien: Spuren (Tracks) konzentrische Ringe getrennt durch dünne unbenutzte Spuren (intertrack gaps) Sektoren (Sectors) Unterteilung der Spuren in einzelne Abschnitte (die Sektoren) getrennt durch dünne unbenutzte Sektoren (intersector gaps) Adressierung durch Track/Sector/Position

slide 30 Schema einer magnetischen Platte

slide 31 Layout magnetische Plattenspeicher Konstante Winkelgeschwindigkeit (CAV; constant angular momentum) Sektoren werden nach aussen breiter Multizonenaufnahme Zonen gleicher Dichte bessere Ausnutzung des Speichermediums

slide 32 Schreib-/Leseköpfe Die Einheit (auf engstem Raum) aus einem System zum Schreiben von Daten und einem weiteren zum Lesen von Daten wird als Schreib-/ Lesekopf bezeichnet. fester Kopf: pro Spur gibt es einen Schreib-/Lesekopf der Kopf bleibt unbeweglich beweglicher Kopf: nur ein Kopf pro Platte der Kopf wird zwischen Spuren hin- und herbewegt

slide 33 Beispiel einer Sektorenaufteilung Gap1 Id Gap2 Data Gap3 Gap1 Id Gap2 Data Gap3 Sync Byte Track Head Sector CRC Sync Byte Data CRC

slide 34 Multidisk-Systeme

slide 35 Zylinder von Spuren in Multidisk-Systemen identisch positionierte Spuren in einem Multidisk- System werden Zylinder genannt.

slide 36 Heute mögliche Datendichten aktuell: 4 Gbyte auf 4.3 cm 3.6 cm 0.5 cm (16g)

slide 37 Das war s für heute. Das ist alles, was ich heute machen wollte. Einen schönen Rest der Woche!