Gates I ------- keine Beachtung von Schwellwerten keine explizite Beachtung von Propagation Delay Es gibt eine Ringliste "aller ausstehenden Änderungen". In dieser sind, in der Reihenfolge, wie Änderungen im Simulator auftraten, Output-Pins gespeichert, an denen Änderungen auftraten. Auf der Leseseite werden die Output-Pins mit Änderungen ausgelesen, geprüft, ob tatsächlich noch eine Änderung zu bearbeiten ist, und dann der geänderte Status an das angeschlossene Netz ("Net") weitergeleitet. Das Net leitet den neuen Status an alle angeschlossenen Input-Pins weiter. Eine Änderung an einem Input-Pin eines Gates führt zum Aufruf der Gate-Action-Funktion die ggf. den Wert an einem Output-Pin ändert. Der Status des Output-Pins wird sofort geändert und der Pin an die Ringliste der ausstehenden Änderungen angehängt. Propagation Delays werden insofern beachtet, als bei dieser Methode alle Gates die gleiche Verzögerung zu haben scheinen und keine Glitches auftreten können. Gates mit höherer Latenz können simuliert werden, indem man an den Ausgängen weitere Gates dazwischenschaltet. Start & Run: create Stepper with listsize ≥ num_inputpins*2 add() all outputpins to stepper list run() some iterations