logikschaltungen [designfrage]
-
Hallo
ich arbeite grade an einem programm, mit dessen hilfe man von einfachen und-
und odergattern (und anderem zeugs) komplexe schaltungen aufbauen kann.im informatikunterricht arbeiten wir mit einem solchen programm (locad), da
dieses jedocha) unter lizenz steht
b) schrecklich langsam ist
c) nicht genug "platz" bietet
d) und gelegentlich abstürztmöchte ich selber so ein programm schreiben
man kann verschiedene gatter auf den bildschirm ziehen und zwischen deren ein-
und ausgängen leitungen spannen, die die elemente verbinden.ich habe das im augenblick so realisiert, dass ein element seine ausgänge
entsprechend der eingänge schaltet und dann aufgrund der position des ausgangs
nach anderen eingängen sucht, die in der unmittelbaren nähe liegen. das hat
eine deutlich (!) höhere geschwindigkeit als das originalprogramm und kommt
auch mit verzweigungen von leitungen zurecht.allerdings möchte ich jetzt erlauben, aus vorhandenen bauteilen einen neuen
chip zusammenzusetzen, der den ablauf in sich integriert und selber wieder
als bauelement verwendet werden kann (entspricht den funktionen aus programmier-
sprachen).hier stößt mein "positionsbasiertes" arbeiten jedoch an seine grenzen, die
kommunikation zwischen "außenwelt" und "chipinnenleben" funktioniert nur
bedingt, da die beiden schaltkreise in verschiedenen verarbeitungsschichten
liegen und so nicht zusammen ausgeführt werden können (verarbeitung im haupt-
programm ruft chip-verarbeitungsschleife auf, diese muss also kommplett durch-
laufen).multithreading würde das ganze nurnoch verschlimmern damit gehts also nicht.
ich dachte mir, dass jedes element statt durch seine position mithilfe von
zeigern mit anderen elementen verbunden wird.+ direktes "antworten" auf einen impuls
+ kommunikation über chipgrenzen hinweg möglich- gefahr von "endlosschleifen", ließe sich aber auch irgentwie beheben
- mehr aufräumarbeit notwendig (kann durch oop fast ganz vermieden werden, daher
nebensächlich)bevor ich jedoch das ganze programm umschreibe, was immer schlecht ist, wollte
ich mal eure meinung/tipps zum design hören:wie organisier ich die verbindungen zwischen den elementen?
an dieser stelle danke fürs durchlesen und einen schönen abend noch!
MfG cad-mensch
-
*push*
-
Ich verstehe nicht ganz was dein positionsbasiertes System sein soll, aber mach es folgendermaßen. Trenne die Simulation der Bauteile von der grafischen Darstellung. Die Schaltung kannst du dann mit einem Graphen realisieren.