Hallo, im Zusammenhang mit FPGAs lese ich immer, wie wichtig es ist, asynchrone Signale einzutakten, Latches zu vermeiden und möglichst ein synchrones Design zu machen. Ich habe ohne groß darauf zu achten, das IDE-Interface auf http://members.multimania.co.uk/leeedavison/6502/ide/index.html nachgebaut und an einen MC68008 gehängt. Wenn ich nun Drive-Informationen auslesen möchte, bekomme ich fast richtige Daten, aber leider werden einzelne Bytes immer an unterschiedlichen Stellen verschluckt. Das GAL ist - auch bei der Vorlage - rein kombinatorisch. Zum Testen habe ich mal den Zugriff verlangsamt (DTACK ein paar Takte verzögert), aber der Effekt bleibt derselbe - es werden wie zufällig Bytes verschluckt. Ich habe noch nicht herausgefunden, ob es immer die Bytes sind, welche durch das Latch laufen oder die, welche im Flipflop gehalten werden. Aber rein vom Verständnis her würd ich sagen, dass es egal ist, ob ich etwas in einem FPGA/CPLD baue oder extern. Sprich: Das gegebene Design ist so nicht sauber, sollte die Latches durch Flipflops ersetzen und das GAL sollte mit der CPU synchron getaktet sein, um die Daten der IDE-Schnittstelle einzutakten. Ist meine Überlegung korrekt oder könnte es sein, dass ich etwas nicht bedacht habe? Sonnige Grüße Bogo
:
Verschoben durch User