Schaltfunktionen 1 Teil II.1 Zahlendarstellung 2 b -adische - - PowerPoint PPT Presentation

schaltfunktionen
SMART_READER_LITE
LIVE PREVIEW

Schaltfunktionen 1 Teil II.1 Zahlendarstellung 2 b -adische - - PowerPoint PPT Presentation

Teil II Schaltfunktionen 1 Teil II.1 Zahlendarstellung 2 b -adische Systeme Sei b I N mit b > 1 und E b = { 0 , 1 , . . . , b 1 } (Alphabet). Dann ist jede Fixpunktzahl z (mit n Vorkomma und k Nachkomma- stellen) mit 0 z b


slide-1
SLIDE 1

Teil II

Schaltfunktionen

1

slide-2
SLIDE 2

Teil II.1

Zahlendarstellung

2

slide-3
SLIDE 3

b-adische Systeme

Sei b ∈ I N mit b > 1 und Eb = {0, 1, . . . , b − 1} (Alphabet). Dann ist jede Fixpunktzahl z (mit n Vorkomma– und k Nachkomma- stellen) mit 0 ≤ z · bk ≤ bn+k − 1 (und n ∈ I N, k ∈ I N0) eindeutig als Wort der L¨ ange n + k ¨ uber Eb darstellbar durch z =

n−1

  • i=−k

zibi = (zn−1zn−2 . . . z0.z−1z−2 . . . z−k)b, zi ∈ Eb.

  • Dezimalsystem: E10 = {0, 1, . . . , 9}
  • Dual– oder Bin¨

arsystem: E2 = {0, 1}

  • Oktalsystem: E8 = {0, 1, . . . , 7}
  • Hexadezimalsystem: E16 = {0, 1, . . . , 9, A, B, C, D, E, F}

3

slide-4
SLIDE 4

Umrechnung Dezimal → Basis b

Gegeben: d10 . . . eine Dezimalzahl (ohne Nachkommastellen) Gesucht: (zn−1zn−2 . . . z0)b = d10 Algorithmus: i := 0 // Stelle while d != 0 do // solange d ungleich 0 z[i] := d mod b // Rest von d div b d := d div b // ganzzahlige Division i := i+1 // erh¨

  • he Stelle

endwhile

4

slide-5
SLIDE 5

Nachkommastellen: Dezimal → Basis b

Gegeben: d10 = (0.x1 . . . xk)10: k Nachkommastellen Gesucht: (0.z1 . . . zj)b = d10 Algorithmus: i := 1 // Stelle while d != 0 do // solange d ungleich 0 z[i] := truncate(d * b) // Vorkommastelle (0 <= z[i] <= b-1) d := d * b - z[i] // Nachkommastellen i := i+1 // erh¨

  • he Stelle

endwhile

5

slide-6
SLIDE 6

Beispiel

25.310 25 div 2 = 12 Rest : 1 12 div 2 = 6 Rest : 0 6 div 2 = 3 Rest : 0 3 div 2 = 1 Rest : 1 1 div 2 = Rest : 1 0.3 ∗ 2 = 0.6 z1 = 0 0.6 ∗ 2 = 1.2 z2 = 1 0.2 ∗ 2 = 0.4 z3 = 0 0.4 ∗ 2 = 0.8 z4 = 0 0.8 ∗ 2 = 1.6 z5 = 1 0.6 ∗ 2 = 1.2 z6 = 1 = z2 . . . 25.310 = 11001.010011001 . . .2 = 11001.010012

6

slide-7
SLIDE 7

Umrechnung Basis b → Dezimal

Gegeben: (zn−1zn−2 . . . z0)b Gesucht: d10 = (zn−1zn−2 . . . z0)b Algorithmus: i := n-1 // Stelle d := 0 // Initialisierung while i >= 0 do // solange i gr¨

  • sser oder gleich 0

d := b*d + z[i] // berechne n¨ achste Stelle i := i-1 // vermindere Index endwhile Basiert auf der ¨ Aquivalenz (Hornerschema):

n−1

i=0 zibi = z0 + b(n−1 i=1 zibi−1) =

= z0 + b(z1 + b(. . . b(zn−2 + bzn−1) . . .))

7

slide-8
SLIDE 8

Beispiel

∗ 2 + 1 = 1 ∗ 2 + 1 = 3 ∗ 2 + = 6 ∗ 2 + = 12 ∗ 2 + 1 = 25

8

slide-9
SLIDE 9

Darstellung negativer Zahlen

z = (zn−1 . . . z0.z−1 . . . z−k)2 eine n+k Dualzahl in Fixpunktdarstellung

  • Einerkomplement:

K1(z) = (zn−1zn−2 . . . z0.z−1 . . . z−k)2 mit zi = 0 ↔ zi = 1, und zi = zi.

  • Zweierkomplement:

K2(z) = (K1(z) + 1 ulp)modulo2n = 2n − z

  • b-Komplement f¨

ur n + k Fixpunktzahlen: Kb(z) = (˜ zz−1˜ zn−2 . . . ˜ z0.˜ z−1 . . . ˜ z−k)b + 1 ulp

9

slide-10
SLIDE 10

Beispiel

Bei einer Wortl¨ ange von n = 8 Bits lauten die Darstellungen von +92 und -92 im Einer– bzw. Zweierkomplement: Komplement +92

  • 92

Einer– dual 01011100 dual 10100011 hexadezimal 5C hexadezimal A3 Zweier– dual 01011100 dual 10100100 hexadezimal 5C hexadezimal A4

10

slide-11
SLIDE 11

Subtraktion mit Zweier-Komplement

x − y = x + K2(y) F¨ ur n = 8, berechne 45 − 92 45 = 25 + 23 + 22 + 20: (00101101)2 + K2(92): (10100100)2 (11010001)2 = K2(z) Aus K2(z) = (11010001)2 folgt: z = K1(K2(z) − 1 ulp) = K1((11010001)2 − 1) = (00101111)2 = 25 + 23 + 22 + 21 + 20 = 47

11

slide-12
SLIDE 12

Gleitkommazahlen nach IEEE 754/854

Vorzeichen–Bit ↓ Exponent: l Bit Mantisse: m Bit S el−1el−2 . . . . . . . . . e1e0 fm−1fm−2 . . . . . . . . . . . . f1f0 Exponentencharakteristik : E = (el−1el−2 . . . . . . e1e0)2 Mantisse : M = (fm−1fm−2 . . . . . . f1f0) DargestellteZahl : (−1)S · (1.M)2 · 2(E−EBias) 1 ≤ E ≤ 2 · EBias normalisiert (−1)S · (0.M)2 · 21−EBias E = 0, M = 0 denormalisiert (−1)S · 0 E = 0, M = 0 Null mit Vorz. (−1)S · ∞ E = 2 · EBias + 1, M = 0 ∞ mit Vorz. NaN E = 2 · EBias + 1, M = 0 Not a Number

12

slide-13
SLIDE 13

Bereich und Genauigkeit

  • Mantisse m . . . Genauigkeit
  • Exponent l − EBias . . . Gr¨
  • ße des Zahlenbereichs.

Genauigkeit Exponent Mantisse EBias Bereich Stellen single: 32 Bit l = 8 m = 23 127 1.5 · 10−45 . . . 3.4 · 1038 7 – 8 double: 64 Bit l = 11 m = 52 1023 5.0 · 10−324 . . . 1.7 · 10308 15 – 16 Beispiel: 1.0 single 1.0 ∗ 20 = 1.0 ∗ 2127−127 ˆ =

Exponent

  • 01111111

Mantisse

  • 00000000000000000000000

= $3F800000 double 1.0 ∗ 20 = 1.0 ∗ 21023−1023 ˆ =

Exponent

  • 01111111111

Mantisse

  • 00000...............00000
  • 52 Nullen

= $3FF0000000000000

13

slide-14
SLIDE 14

Umwandlung Dezimal → Bin¨ ar

  • Gegeben: z
  • Schritt 1: Mantisse M = z ∗ 2y sodass 1 <= M < 2
  • Schritt 2: Exponent E = y + EBias

Beispiel: 6.5 = 22 · 1.625 = 22 ·

  • 1 + 1

2 + 0 22 + 1 23

  • =

2129−127 ·

  • 1 + 1

2 + 0 22 + 1 23

  • =

2129−127 · (1.101)2 ˆ = 0 10000001 10100000000000000000000 = $40D00000.

14

slide-15
SLIDE 15

Teil II.2

Boolesche Algebra

15

slide-16
SLIDE 16

Boolesche Algebra

F¨ ur B = {0, 1}, x, y ∈ B seien folgende Verkn¨ upfungen definiert: x ∪ y := Max(x, y), x ∩ y := Min(x, y), x := 1 − x, (B, ∪, ∩, ) ist eine Boolesche Algebra

16

slide-17
SLIDE 17

Gesetze der Booleschen Algebra

a) Kommutativgesetze: x ∪ y = y ∪ x, x ∩ y = y ∩ x b) Assoziativgesetze: (x ∪ y) ∪ z = x ∪ (y ∪ z), (x ∩ y) ∩ z = x ∩ (y ∩ z) c) Verschmelzungsgesetz: (x ∪ y) ∩ x = x, (x ∩ y) ∪ x = x d) Distributivgesetze: x ∩ (y ∪ z) = (x ∩ y) ∪ (x ∩ z), x ∪ (y ∩ z) = (x ∪ y) ∩ (x ∪ z) e) Komplementgesetz: x ∪ (y ∩ y) = x, x ∩ (y ∪ y) = x f) x ∪ 0 = x, x ∩ 0 = 0, x ∩ 1 = x, x ∪ 1 = 1 g) de Morgansche Regeln: x ∪ y = x ∩ y, x ∩ y = x ∪ y h) x = x ∪ x = x ∩ x = x

17

slide-18
SLIDE 18

Potenzmenge

F¨ ur B = P(A) die Menge aller Teilmengen von A ist (B, ∪, ∩, ) ebenfalls eine Boolesche Algebra

18

slide-19
SLIDE 19

Teil II.3

Schaltfunktionen

19

slide-20
SLIDE 20

Schaltfunktionen

  • Schaltfunktion: F : Bn → Bm
  • Totale Schaltfunktion: f¨

ur alle 2n Inputs gibt es einen eindeutigen Output, der alle m Bits belegt.

  • Boolesche Schaltfunktion: f : Bn → B
  • Komponenten Darstellung:

F(x1, . . . , xn) = (f1(x1, . . . , xn), f2(x1, . . . , xn), . . . , fm(x1, . . . , xn)).

  • Anzahl verschiedener Boolescher Funktion: 22n

20

slide-21
SLIDE 21

Beispiele

  • Addition zweier 2 Bit Zahlen: A : B4 → B3

A(x1, x2, x3, x4) = (a1(x1, x2, x3, x4), a2(x1, x2, x3, x4), a3(x1, x2, x3, x4)) mit a1(x1, x2, x3, x4) = x2 ⊕ x4 a2(x1, x2, x3, x4) = x1 ⊕ x3 ⊕ (x2 ∧ x4) a3(x1, x2, x3, x4) = (x1 ∧ x3) ∨ (x1 ∧ x2 ∧ x4) ∨ (x3 ∧ x2 ∧ x4)

  • Sortieren von 30 16 Bit Zahlen: S : B30∗16 → B30∗16

21

slide-22
SLIDE 22

Boolesche Funktionen f¨ ur n = 2

(1) x · x x · y x · y x x · y y ⊕ x + y (2) ≡ 0 Min > x < y = Max (3) ∧ → x ← y ↔ ∨ x y f0 f1 f2 f3 f4 f5 f6 f7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 (1) x + y x ⊕ y y x + y x x + y x · y x + x (2) 1 - Max = 1 − y ≥ 1 − x ≤ 1 - Min ≡ 1 (3) ↓ ↔ ¬y ← ¬x → ↑ x y f8 f9 f10 f11 f12 f13 f14 f15 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

22

slide-23
SLIDE 23

Disjunktive Normalform

  • i = (i1i2 . . . in)2 ist ein einschl¨

agiger Index zu f : Bn → B genau dann wenn f(i1, i2, . . . , in)2 = 1

ur einen einschl¨ agigen Index i einer Booleschen Funktion f, heißt die Funktion mi(x1, x2, . . . , xn) := xi1

1 xi2 2 . . . xin n

der i-te Minterm von f, wobei xij

j :=

  • xj

falls ij = 1 xj falls ij = 0

  • Darstellungssatz: F¨

ur jede Boolesche Funktion f gilt (DNF): f =

  • i∈I

mi.

23

slide-24
SLIDE 24

Beispiel

Gegeben sei die folgende Boolesche Funktion f : B3 → B durch die Wertetabelle i x1 x2 x3 f(x1, x2, x3) 1 1 2 1 3 1 1 1 4 1 5 1 1 1 6 1 1 7 1 1 1 1 Einschl¨ agigen Indizes sind 3, 5, 7. Die zugeh¨

  • rigen Minterme sind:

m3(x1, x2, x3) = x1x2x3 m5(x1, x2, x3) = x1x2x3 m7(x1, x2, x3) = x1x2x3. f(x1, x2, x3) = x1x2x3 + x1x2x3 + x1x2x3

24

slide-25
SLIDE 25

Funktionale Vollst¨ andigkeit

Ein System B = {f1, . . . , fn} Boolescher Funktionen heißt (funktional) vollst¨ andig, wenn jede Boolesche Funktion allein durch Einsetzungen

  • bzw. Kompositionen von Funktionen aus B dargestellt werden kann.

a) {+, ·, } ist funktional vollst¨ andig. b) {+, } ist funktional vollst¨ andig. c) {·, } ist funktional vollst¨ andig. d) {NAND} ist funktional vollst¨ andig. e) {NOR} ist funktional vollst¨ andig.

25

slide-26
SLIDE 26

Konjunktive Normalform

  • i-ter Maxterm: Mi(x1, . . . , xn) := mi(x1, ..., xn) = xi1

1 + . . . + xin n

  • Konjunktive Normalform: F¨

ur jede Boolesche Funktion f gilt (KNF): f =

  • i/

∈I

Mi KNF(f) = DNF(f)

  • Beispiel:

f(x1, x2, x3) = x1x2x3 + x1x2x3 + x1x2x3 = M0 · M1 · M2 · M4 · M6 = (x1 + x2 + x3) · (x1 + x2 + x3) · (x1 + x2 + x3) ·(x1 + x2 + x3) · (x1 + x2 + x3).

26

slide-27
SLIDE 27

Teil II.4

Schaltnetze

27

slide-28
SLIDE 28

Bausteine

28

slide-29
SLIDE 29

Beispiel

f(x1, x2, x3) = x1x2x3 + x1x2x3 + x1x2x3

1 1 & & & & & & x1 x2 x3 1 1 f xxx ( , , )

1 2 3

29

slide-30
SLIDE 30

Kriterien f¨ ur Schaltungen

  • Geschwindigkeit: Minimiere Stufen
  • Gr¨
  • ße: Minimiere Anzahl der Gatter
  • Fan-In, Fan-Out: Minimiere Anzahl der Inputs und Outputs

30

slide-31
SLIDE 31

Graphen

  • Punktmenge P ⊆ I

N.

  • Kantenmenge K ⊆ P × P.

nicht-reflexiv

  • Graph G = (P, K)

ungerichtet: K symmetrisch. gerichtet: K nicht symmetrisch

  • Pfad: (p1, p2, . . . , pn)
  • Zyklus: (p1, p2, . . . , pn, p1)
  • DAG: Gerichteter, azyklischer Graph

(Directed Acyclic Graph)

31

slide-32
SLIDE 32

Beispiel

32

slide-33
SLIDE 33

Teil II.5

Ringsummennormalform

33

slide-34
SLIDE 34

Ringsummennormalform

RNF: Sei f : Bn → B und I = {α1, . . . , αk} die Menge der einschl¨ agigen Indizes zu f. Dann gilt: f = mα1 ⊕ mα2 ⊕ . . . ⊕ mαk =

k

  • i=1

mαi

34

slide-35
SLIDE 35

¨ Aquivalenzen

F¨ ur alle x, y, z ∈ B gilt: a) x ⊕ 1 = x, x ⊕ 0 = x b) x ⊕ x = 0, x ⊕ x = 1 c) x ⊕ y = y ⊕ x (Kommutativit¨ at) d) x ⊕ (y ⊕ z) = (x ⊕ y) ⊕ z (Assoziativit¨ at) e) x · (y ⊕ z) = x · y ⊕ x · z (Distributivit¨ at bzgl. ·) f) 0 ⊕ 0 ⊕ . . . ⊕ 0 = 0 g) 1 ⊕ 1 ⊕ . . . ⊕ 1

  • n−−mal

=

  • 1

falls n ungerade falls n gerade

35

slide-36
SLIDE 36

Komplementfreie RNF

Reed–Muller Form: Jede Boolesche Funktion f : Bn → B ist eindeutig darstellbar als Poly- nom (Multinom) in den Variablen x1, x2, . . . , xn mit den Koeffizienten a0, a1, . . . , a1...n ∈ B. Die Darstellung ist wie folgt: f = a0 ⊕ a1x1 ⊕ a2x2 ⊕ . . . ⊕ anxn ⊕ a12x1x2 ⊕ . . . ⊕ an−1,nxn−1xn . . . ⊕ a1...nx1x2 · . . . · xn.

36

slide-37
SLIDE 37

Herleitung der komplementfreien RNF

  • 1. Bestimme DNF ¨

uber einschl¨ agige Indizes

  • 2. Ersetze + durch ⊕
  • 3. Ersetze x durch x ⊕ 1
  • 4. Multipliziere aus unter Verwendung der ¨

Aquivalenzen f¨ ur ⊕. Beispiel: f(x1, x2, x3) = x1x2x3 + x1x2x3 + x1x2x3 = x1x2x3 ⊕ x1x2x3 ⊕ x1x2x3 = (x1 ⊕ 1)x2x3 ⊕ x1(x2 ⊕ 1)x3 ⊕ x1x2x3 = x1x2x3 ⊕ x2x3 ⊕ x1x2x3 ⊕ x1x3 ⊕ x1x2x3 = x2x3 ⊕ x1x3 ⊕ x1x2x3.

37