Eine Schaltung besteht mindestens aus Eingängen, Ausgängen, einer Spezifikation der Funktion sowie des Zeitverhaltens – also was die Schaltung macht, und wie lang sie dafür benötigt. Dabei kann man sich eine Schaltung wie eine Black-Box vorstellen. Es interessiert nicht, wie sie das tut was sie tun soll, solange sie es in der spezifizierten Art und Weise tut. Das ist ein wichtiger Grundsatz der Abstraktion (Beherrschung von Komplexität). Eine Schaltung kann intern aus weiteren Schaltungen bestehen, für die natürlich genau das gleiche gilt.
Dabei gibt es zwei grundlegende Arten von Schaltungen:
-
Kombinatorische Logik
Der Zustand der Ausgänge hängt nur vom Zustand der Eingänge ab. Es ist also jeder Ausgangswert reproduzierbar, wenn man den gleichen Eingangswert erneut anlegt. -
Sequentielle Logik
Hier hängt der Zustand der Ausgänge nicht nur von den Eingängen ab, sondern auch von den vorherigen Zuständen. Die sequentielle Logik kann also Zustände speichern und bei späteren Berechnungen einbeziehen.
Dabei gibt es eine Reihe von Regeln, wie Schaltungen verknüpft werden dürfen:
- Jedes Element der Schaltung muss kombinatorisch sein.
- Jeder Verbindungsknoten ist ein Eingang in eine Schaltung oder an genau einem Ausgangsterminal angeschlossen. (Folie 6)
- Die Schaltung enthält keine Zyklen, d.h. ein Ausgang einer Schaltung darf nicht gleichzeitig auch ein Eingang der gleichen Schaltung sein.
Die Folien von Prof. Andreas Koch (TU Darmstadt, http://www.esa.informatik.tu-darmstadt.de/twiki/bin/view/Lectures/TGdI09De.html) wurden als Vorlagen benutzt.