Das Problem: Schaltungen wachsen über eine Arbeitsfläche hinaus
Eine Handvoll Gatter passt bequem auf einen Bildschirm; eine 4-Bit-ALU oder ein von Hand gebauter Automat beginnen bereits zu wuchern, und jeden Block direkt mit jedem anderen auf einer einzigen flachen Arbeitsfläche zu verdrahten, erzeugt schnell mehr kreuzende Drähte als Logik.
Ebenen und VIA-Verbindungen
Boolflow lässt eine Schaltung über mehrere Ebenen verteilen, wobei VIA-Elemente als benannte Verbindung zwischen Ebenen fungieren: Ein Signal, das auf einer Ebene in ein VIA eingespeist wird, taucht bei jedem anderen VIA mit demselben Namen auf jeder beliebigen Ebene wieder auf, ohne dass je ein expliziter Draht dazwischen gezeichnet würde. Das ist rein eine Anzeige-Erleichterung, kein separater Gültigkeitsbereich — ein über VIA verbundenes Signal verhält sich exakt wie ein direkt verdrahtetes; es bleibt dieselbe flache Schaltung, nur über mehr als ein sichtbares Blatt verteilt.
Gruppieren mit Frame und Label
Ein Frame zeichnet eine visuelle Umrandung und Beschriftung um eine Gruppe von Elementen — nützlich, um zu markieren „dieser Gatterhaufen ist die Übertragslogik" oder „das ist Registerbank 2", rein als Dokumentation für alle, die die Schaltung später lesen, da sich dadurch nichts an der Simulation der enthaltenen Elemente ändert. Ein Label-Element benennt entsprechend einfach einen Punkt der Schaltung zur besseren Lesbarkeit, ganz ohne Einfluss auf die Simulation.
Praktischer Aufbau
Platzieren Sie eng zusammengehörige Logik — etwa den Opcode-Auswahlmultiplexer einer ALU und ihre vier Kandidatenoperationen — auf einer Ebene innerhalb eines beschrifteten Frames, und benennen Sie VIA-Verbindungen nach dem Signal, das sie tragen (CARRY_OUT, OPCODE_1 und so weiter), um zu der Ebene zu wechseln, die dieses Signal als Nächstes braucht, statt einen langen Draht über die gesamte Arbeitsfläche zu ziehen. Die vollständige Referenz zu VIA- und Frame-Elementen finden Sie in der Hilfe-Referenz.