k420-Sequentielle_Schaltkreise
k420-Sequentielle_Schaltkreise
Page 1
Kapitel 4 – Sequentielle Logik
- Speichernde Elemente
- Sequentielle Schaltkreise
- Entwurf sequentieller Schaltkreise
- SRAM
- Anwendung: Datenpfade von ReTI
- Anwendung: Kontrolllogik von ReTI
Albert-Ludwigs-Universität Freiburg
Prof. Dr. Armin Biere
Institut für Informatik
Page 2
Sequentielle Schaltkreise
Im Folgenden werden keine allgemeinen Schaltpläne mehr analysiert, sondern sogenannte Schaltwerke (auch (synchrone) sequentielle Schaltkreise genannt).
Diese bestehen aus einem Register und einem (kombinatorischen) Schaltkreis (auch kombinatorischer Kern genannt).
Im Gegensatz zu (kombinatorischen) Schaltkreisen können Schaltwerke (= sequentielle Schaltkreise) Zyklen enthalten. Die Zyklen müssen aber durch Flipflops des Registers gehen.
Der Zustand eines Schaltwerkes ist gegeben durch die im Register gespeicherten Werte.
Schaltwerke (= sequentielle Schaltkreise) entsprechen endlichen Zustandsautomaten.
Page 3
Beispiel: Zähler als sequentieller Schaltkreis
┌─────────┐ ┌───────┐
/C ──→│ │──→│ │──→ Y
ck ──→│ n-INC │ │ n-Reg │
Cin ──→│ │──→│ │──→ Cₒᵤₜ
/L ──→│ │ │ │
X ──→│ │ │ │
└─────────┘ └───────┘
Kombinatorischer Kern Register
ck ─────────→
Page 4
Endliche Zustandsautomaten
Endliche Zustandsautomaten (Finite State Machines, FSMs) sind ein Formalismus, um sequentielles (zeitabhängiges) Verhalten zu spezifizieren.
Mealy- und Moore-Automaten
In der theoretischen Informatik werden (unter anderem) endliche Automaten mit akzeptierenden Zuständen betrachtet. Diese sind mit FSMs verwandt, aber nicht identisch.
Aus einer FSM-Spezifikation kann der sequentielle Schaltkreis hergeleitet werden (Sequentielle Synthese).
Page 5
Halbautomat
Definition: Das Quadrupel
eine endliche Menge von erlaubten Eingabesymbolen ("Eingabealphabet"), eine endliche Menge von Zuständen, eine endliche Menge von erlaubten Anfangszuständen, eine Übergangsfunktion.
Page 6
Mealy- und Moore-Automat
Definition: Ein Mealy-Automat
- eine endliche Menge
von Ausgabesymbolen ("Ausgabealphabet"), - eine Ausgabefunktion
.
Definition: Ein Moore-Automat
- eine endliche Menge
von Ausgabesymbolen, - eine Ausgabefunktion
.
Page 7
Mealy- vs. Moore-Automat
| Mealy-Automat | Moore-Automat | |
|---|---|---|
| Ausgabe | abhängig vom Zustand und der Eingabe: |
abhängig nur vom Zustand: |
| Folgezustand | abhängig vom Zustand und der Eingabe: |
abhängig vom Zustand und der Eingabe: |
| Beziehung | – | spezieller Mealy-Automat |
Moore- und Mealy-Automaten kann man ineinander überführen.
Page 8
Unterschiedliche Darstellungen von endlichen Zustandsautomaten
a) Zustands- und Ausgangstafel:
| state | next-state | ||
|---|---|---|---|
| 1 | 0 | ||
| 0 | 1 | ||
| – | 0 |
b) Zustandsdiagramm:
┌─────────┐ ┌─────────┐
│ s₁ │──1/0─→│ s₂ │
│ │←─0/1──│ │
└─────────┘ └─────────┘
c) Sequentieller Schaltkreis:
x ──→[ D-FF ]──→ y
Im Folgenden "Sequentielle Synthese": Wie kommt man von b) zu c)?
Page 9
Sequentielle Schaltkreise allgemein
x₁ᵗ ... xₖᵗ y₁ᵗ ... yₘᵗ
│ │ │ │
↓ ↓ ↑ ↑
┌─────────────────────┐
│ Kombinatorischer │
│ Kern │
│ (δ und λ) │
└─────────────────────┘
│ │ │ │
↓ ↓ ↑ ↑
s₁ᵗ⁺¹ ... sₚᵗ⁺¹ s₁ᵗ ... sₚᵗ
│ │ │ │
└───── Speicher ──────┘
ck
Die Belegung
Page 10
Kombinatorischer Kern
Der kombinatorische Kern hat vier Arten von Ein- und Ausgängen:
- Primäre Eingänge bekommen Werte "von außen".
- Primäre Ausgänge liefern Werte "nach außen".
- Sekundäre Eingänge sind mit den Datenausgängen der Flipflops im Register verbunden. Auf diese Weise kann der aktuelle Zustand des Schaltkreises in Funktionen
und berücksichtigt werden. - Sekundäre Ausgänge sind mit den Dateneingängen der Flipflops verbunden. Durch sie wird der nächste Zustand des Schaltkreises spezifiziert.
Page 11
Primäre und sekundäre Ein- und Ausgänge
x₁ᵗ ... xₖᵗ y₁ᵗ ... yₘᵗ
│ │ │ │
↓ ↓ ↑ ↑ ← Primäre Ausgänge
┌─────────────────────┐
│ Kombinatorischer │
│ Kern (δ und λ) │
└─────────────────────┘
│ │ │ │
↓ ↓ ↑ ↑
s₁ᵗ⁺¹ ... sₚᵗ⁺¹ s₁ᵗ ... sₚᵗ
│ │ │ │
└───── Speicher ──────┘
ck
↑ Sekundäre ↑ Sekundäre
Ausgänge Eingänge
Page 12
Sequentielle Schaltung für einen FSM
Mealy-Automat:
x₁ᵗ ... xₖᵗ y₁ᵗ ... yₘᵗ
│ │ ↑ ↑
↓ ↓ ┌─────┐ ┌─────┐ │
┌──────────────────┐ s₁ᵗ⁺¹ ... sₚᵗ⁺¹ ┌─────┐ │
│ δ │──→ │ │ │ │
└──────────────────┘ │ Register │ │──┘
┌──────────────────┐ │ │ │
│ λ │──→ └───────────────┘ │
└──────────────────┘ s₁ᵗ ... sₚᵗ │
↑ │ │
└────────┘ │
Moore-Automat:
x₁ᵗ ... xₖᵗ y₁ᵗ ... yₘᵗ
│ │ ↑ ↑
↓ ↓ ┌─────┐ ┌─────┐ │
┌──────────────────┐ s₁ᵗ⁺¹ ... sₚᵗ⁺¹ │ │ │
│ δ │──→ │ Register │ │──┘
└──────────────────┘ │ │ │
└───────────────┘ │
s₁ᵗ ... sₚᵗ │
┌──────────────────┐ ↑ │ │
│ λ │←───└────────┘ │
└──────────────────┘ │
- Übergangsfunktion:
- Ausgabefunktion (Mealy):
- Ausgabefunktion (Moore):











