Z80 und Fremdperipherie

Sep 07, 2013 3 Replies

Moin,



ich stehe etwas auf dem Schlauch. Hier liegt eine Schaltung vor mir mit einem Z80 und daran hängen MC6800-Peripherie-ICs. Das E-Signal wird aus dem Output des Adressdecoders und CPU-Clock synchronisiert, ok soweit. Aber ich hätte erwartet, dass R/W-nicht mit dem WR-nicht des Z80 gesteuert werden müsste - wird es aber nicht sondern mit dem invertierten RD-nicht. Hat da jemand eine schlüssige Idee zu? Ist das einfach nur seltsam (in derselben Schaltung wird ein 7474 als Inverter verwendet...), oder hat das einen tieferen Sinn?



vg Stefan


"Stefan Huebner" schrieb im Newsbeitrag news: snipped-for-privacy@mid.uni-berlin.de...

Es hängt stark vom jeweiligen Chip und dessen Timingverhalten ab, RD ist eben zu einer anderen Zeit aktiv alsö WR und passte offenbar besser. Die Leute musssten damals viel mehr denken, als heute üblich zu sein scheint.

Manfred Winterhoff, reply-to invalid, use mawin at gmx dot net homepage: http://www.oocities.com/mwinterhoff/ de.sci.electronics FAQ: http://dse-faq.elektronik-kompendium.de/ Lies 'Die hohe Schule der Elektronik' von Horowitz/Hill bevor du fragst. Read 'Art of Electronics' Horowitz/Hill before you ask.

Sowas dachte ich mir auch. Allerdings schien es mir auf den ersten Blick logischer, den Chip immer im "read" zu lassen und beim Schreiben darauf zu achten, die entscheidende steigende Flanke aus WR-nicht zu gewinnen. Wobei die beim 68xx ja nicht auf R/W entscheidend ist, sondern eher auf E.

Auf jeden Fall. ich erwische mich ständig dabei, kurz die Schnittstellen zur Aussenwelt (Eingänge schützen, Ausgangstreiber,...) zu definieren und dann den Rest auf uC oder CPLD am Schreibtisch machen zu wollen.

Hallo zusammen,

Ich habe mir nun das Timingdiagram vom Z80 angeschaut, mit der gegebenen Flipflop-Schaltung, die CS mit dem Z80-Clock synchronisiert und E bei steigender MREQ-Flanke sofort auf 0 setzt, sind die Bedingungen für einen 6850 am Ende des E-Zyklus eigentlich erfüllt.

Was jedoch nicht erfüllt ist, ist der Zustand der R/W-Leitung am Anfang des E-Zyklus. Laut 6850-DB muss CS, Adresse und R/W 80ns vor E->1 valide sein. Das ist beim Z80 für WR nicht gegeben, für RD schon. Damit ist die Frage denke ich geklärt, ob das nun wirklich so streng zu sehen ist, seit dahingestellt - der Funktion widerspricht es auf jeden Fall nicht und daher wird es so übernommen.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required