Servus, ich bin auf ein seltsames Problem bei Quartus II gestoßen, wie schon erwähnt bin ich dabei ein TTL Grab in ein CPLD (EPM3064) zu verpflanzen und aus der existierenden Schaltung etwas Platzsparendes zu machen. Es handelt sich um einen IDE Controller für eine PDP11. Das Ding besteht im Wesentlichen aus einer Zeit-und Zustandssteuerung und diversen Registern für den Controller, z.B. muß ein Interruptvektor erzeugt und auf den Bus geschaltet werden als auch z.B.ein Statusregister. Ich habe zuerst die Zeit und Zustandssteuerung in das CPLD integriert und zwar mit dem Schematic Editor in Form von den TTL Primitives die auch in der originalen Schaltung verwendet werden. Ich benötige dann aber immer noch extern 6 Stück 74LS244 um auf dem Datenbus eben die Register darzustellen oder den Vektor einzublenden etc. Ich habe deshalb zuerst versucht Sowas wie "alt_buffer_tri" zu verwenden, da hat mich das Ding angebrochen das die bei dem von mir verwendeten Device nicht unterstützt sind. Ok, nehme ich halt 74244. Jetzt beschwert sich der Analyzer das das Signal DB6 (das auch zur Decodierung interner Zustände als Eingang existiert, aber keine Rückführung in dem Sinne ist) nun von 2 Ausgängen getrieben wird, nämlich der jeweilige Ausgang 6 von 2 verschiedenen LS244. Diese beiden Treiber sind aber nie gleichzeitig aktiv, da deren /OE Eingänge eben freigegeben werden wenn entweder ein Vektor auszugeben oder das Statusregister zu lesen ist. Wie mache ich das dem Analyzer klar? Mir ist klar, das wenn ich über diesen Fehler drüber komme, die restlichen Datenbuspins angemeckert werden bei denen ja auch 2 Ausgänge aufeinander führen. Bitte keine Hinweise wie "das wäre mit VHDL/Verilog nicht passiert". Das nützt mir im gegebenen Fall wirklich herzlich wenig. BTW: das was ich umzubasteln gedenke findet sich hier: http://www.telegraphics.com.au/pdp11/dsu/ als WAU1420.pdf (eine SM1420 hatten wir mal im Rechenzentrum der Uni in FG) Falls sich hier Jemand fpr Geriatronic Interessiert, hier ist ein Bild der E60 in der der Controller werkeln soll, die oberste Platine ist die in etwas PDP11/03 kompatible CPU mit 4K Worten DRAM (links, rosa): http://www.tiffe.de/Robotron/PDP-VAX/E60/CPU-oben.jpg Gruß und Dank im Voraus, Holm
Hi, die Kurschlüße an den Ausgängen wirst du so nicht einfach wegbekommen. Ich würde hier einen Multiplexer / Umschalter einbauen der abhängig von der Auswahl der Ausgangsbausteine den Ausgang weiter schaltet. Damit kann die Synthese auch was anfangen und es gibt keine Kurzschlüße zwischen Ausgängen. Gruß, Schorschi.
Das Problem hat sich verkrümelt als ich die Ausgänge auf bidirektional gesetzt hatte, (das machte sich zum Teil notwendig durch andere Schaltungsteile notwendig). 2 zu verschiedenen Zeiten eingeschaltete Ausgangstreiber sind bereits ein Multiplexer, ich hätte nach deiner Methode also durch zusätzliche Hardware den Softwarebug vertrieben..glücklicherweise ging es auch so. Danke trotzdem, Holm
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.