Bitte testet mal diese 7400.lib

spicer

Forum-Chef
Teammitglied
Administrator
Moderator
Landesflagge

Anhänge

  • 7400.lib
    71,5 KB · Aufrufe: 1
  • 7448.asy
    1.018 Bytes · Aufrufe: 1
  • 7400_test.asc
    678 Bytes · Aufrufe: 1
Zuletzt bearbeitet:
Ich wollte eigentlich, dass wir die erste Platform sind, welche die 7400er Serie für LTspice veröffentlicht.
 
Ich habe mal kurz nur mit einem NAND getestet und in einer neuen LIB nur die für das NAND notwendigen Subcircuits kopiert. Da bekam auch die Fehlermeldung "undefined subcircuit: d_nand", obwohl dieser subcircuit definitiv vorhanden war/ist.
Ich kenn' mich jedoch mit digital nicht sonderlich gut aus . . .
 
Irgend etwas unlogisches passiert da...
Ich denke, das hat nichts mit "digital nicht sonderlich gut auskennen" zutun ;)
Merkwürdig ist aber, dass Du "undefined subcircuit: d_nand" bekamst. Ich bekomme das Gleiche mit d_xor.
Kannst mir bitte mal Deine nur-NAND Lib rüberreichen?
 
Ich habe mir nochmal die LIB vorgenommen und das, was mir zu denken gab, geändert.
Jetzt bekomme ich keine Fehlermeldung mehr, und die Simulation wird problemlos durchgeführt.
Was aber nicht bedeutet, dass es keine Probleme mehr gibt! Schau dir mal die Ausgangsspannung V(y) in meiner Simulation an!
Von der zu erwartenden +5V weit entfernt. . .
Der Parameter TOL=5% wurde von LTspice nicht akzeptiert, ich hab' den daher erst einmal weggelassen.
Ob die Parameter rise_delay und fall_delay nicht nur übermittelt, sondern auch bei der Ausführung berücksichtigt werden,
muss unbedingt noch getestet werden.
Anbei Screenshot, Testprogramm und Lib, schau Dir alles mal in Ruhe an.

Gruss,

RudiS
 

Anhänge

  • ntest.png
    ntest.png
    37,7 KB · Aufrufe: 3
  • 74xx_ntest.zip
    37,2 KB · Aufrufe: 1
"was mir zu denken gab, geändert."
Was gab Dir denn zu denken?

Die (problem) Spannung y hab ich gefunden. Danke für den Hinweis.
 
Hier mal ein Zwischenresultat :)
 

Anhänge

  • nand_test.lib
    425 Bytes · Aufrufe: 1
"... gab mir zu denken" war vielleicht der falsche Ausdruck - mir fiel in dem Moment nichts Besseres ein,
fühlte mich selber ein bisschen unglüccklich bei dieser Wortwahl, aber das passiert mir ab und zu, weil es mir mitunter leichter fällt,
mich auf Japanisch auszudrücken als auf Deutsch. "... machte mich stutzig" wäre vielleicht passender gewesen,
es war ja sowieso keine grossartige Sache.
Ein Vergleich der relevanten Passage der ursprünglichen LIB mit meiner Version - da erkennt doch jeder gleich den Unterschied.

Nach Durchsicht der LIB vermutete ich schon, dass wahrscheinlich ein syntaktischer Fehler dafür verantwortlich zeichnete,
dass die Simulation mit einer Fehleranzeige sofort abgebrochen wurde.
Mit dem Abbruch blieb ja weiterhin unklar, ob die LIB vom elektronischen Standpunkt her bestehen konnte.

Durch diese meine kleine Änderung lief die Simulation erst einmal, so dass man sah, dass das Nand auch als Nand funktionierte.
Die ungewöhnliche Ausgangsspannung als Ergebnis der Formel bei der B-source ist dann noch einmal eine andere Sache.
Aber die hat - post factum - mit dem eingangs erörterten Ausdruck nichts zu tun.
 
Hier mal ein Zwischenresultat :)

Habe gerade die nand_test.lib ausprobiert, Nand-Funktion ok - allerdings irritierte mich ein bisschen,
warum Du die transition time so gross gemacht hast, 200u bzw. 300u.
Für den Test? --- Zuerst dachte ich, das das Nand nicht richtig schaltet . . . :D
Im Datenblatt zum SN7400 werden typisch 11n bzw. 7n gelistet, mit diesen Zeiten sieht das Plot gleich viel besser aus!
 

Anhänge

  • nand_test mit neuer lib.png
    nand_test mit neuer lib.png
    5,4 KB · Aufrufe: 1
Habe gerade die nand_test.lib ausprobiert, Nand-Funktion ok - allerdings irritierte mich ein bisschen,
warum Du die transition time so gross gemacht hast, 200u bzw. 300u.
Für den Test? --- Zuerst dachte ich, das das Nand nicht richtig schaltet . . . :D
Im Datenblatt zum SN7400 werden typisch 11n bzw. 7n gelistet, mit diesen Zeiten sieht das Plot gleich viel besser aus!
Das ist nach wie vor ein Test. Darum die grossen Werte.
Wie sollte ich 7ns auf einer 20ms Skala sonst einfach erkennen...
 
Ach so, deshalb.
Man hätte natürlich auch die andren Parameter ändern können:
PULSE(0 5 0 1n 1n 1u 2u)
PULSE(0 5 0 1n 1n 1.5u 3.1u)
.tran 20u
Wäre vielleicht so schöner gewesen.
 
Habe mal spasseshalber versucht, ein NAND mittels einer BV-source zu erstellen.
Die Schwellenspannung habe ich, damit man den Schaltzeitpunkt im Plot besser erkennen kann,
erst einmal auf 2V gelegt. Die kann man natürlich auch, da es sich eh nur um ein behavioural NAND handelt,
auf Vhigh/2 legen.

01__BS_NAND_schema.png

02__BS_NAND_TRAN.png

RudiS
 

Anhänge

  • BS_NAND.zip
    60,6 KB · Aufrufe: 0
Danke. Aber ich will ja die grosse Lib, welche Du sicher angeschaut hast, möglichst so zum laufen bringen, ohne dass ich alles neu schreiben muss.
Habe bereits viel neu geschrieben :(
Im untersten Teil sind die subckt's, welche intern gebraucht werden. Eben wie d_xor, d_nand usw.
Die werden irgendwo in der Lib aufgerufen (mit oder ohne Parameter). Diese "Sub-Routinen" müssen universell sein.
 

Benutzer welche diesen Thread betrachten (Mitglieder: 0, Gäste: 1)

Wer hat diesen Thread gelesen

Zurück
Oben