Hallo Leute, in einem Projekt möchte ich eine Logikschaltung mit 7400 Gattern realisieren. Also NAND mit zwei Eingängen. Die Logikschaltung soll für jeden Zustand des BCD-Codes ein Signal liefern. Anders gesagt: Zu jeder mögliche Kombination des BCD gibt es einen bestimmten Ausgang. Im Anhang mal eine Schaltung von mir. Es werden zuerst je zwei Eingänge (A&B) (C&D) in jeder möglichen Kombination UND-Verknüpft. Im nächsten Schritt werden jeweils zwei Kombinationen wieder UND-Verknüpt. Macht 16 Möglichkeiten und 52 Gatter. Hat jemand noch einen Vereinfachungsvorschlag? Oder gar einen ganz anderen Lösungsansatz mit 7400 Gattern? Ich hoffe irgendwer hat verstanden was ich meine. Sonst sende ich gleich nochmal eine Funktionstabelle. Danke Hein PS: Ja, ich kann mit µC umgehen. :)
Quine-Mc Clusky Verfahren sollte hier wohl etwas zur vereinfachung Beitragen denk ich :)
Die als Inverter geschalteten NANDS V7 bis V10 und V17 bis V20 kannst du weglassen, wenn du A0 mit A3, A1 mit A2, A4 mit A8 (sollte wohl A7 heißen) und A5 mit A6 tauschst. Du schriebst etwas von BCD. Das heißt doch, dass an den Eingängen nicht alle Kombinationen von 0 (0000) bis 15 (1111), sondern nur von 0 (0000) bis 9 (1001) auftreten. Damit kannst du V21 bis V32 ebenfalls weglassen. So arg viel mehr lässt sich meinem Gefühl nach nicht vereinfachen, es sei denn, jemand hat eine Idee, wie man einige der hässlichen Inverter an den Ausgängen (V44, V42, V40 usw.) wegbekommt.
@Läubi danke guter tipp, habe ich noch nicht gekannt. Leider hilft es in diesem speziellen Fall nicht weiter, da er sich einfach ein 4-Fach-NAND nimmt. Oder kann man das noch umstellen? @Yalu Danke, das werde ich gleich mal prüfen. Und ja du hast recht, es ist nicht wirklich ein BCD sondern einfach 4Bit Hein
@ hein (Gast) >Hat jemand noch einen Vereinfachungsvorschlag? Oder gar einen ganz >anderen Lösungsansatz mit 7400 Gattern? GAL, CPLD, EPROM. >PS: Ja, ich kann mit µC umgehen. :) Und warum nutzt du den dann nicht? MfG Falk
Ich nehme hiermit den Quatsch, den ich um 19:30 geschrieben habe, ersatzlos zurück. Denkfehler ;-)
@Falk So eine Antwort habe ich von dir erwartet und ich werde sie auch nicht weiter kommentieren. Nix für ungut. :D @Yalu Jo, habe mich grade stark gewundert. Hein
Na klar, es gibt viele Möglichkeiten dieses Problem zu lösen. 74154 ist dabei wohl die eleganteste, aber es geht mir darum das Problem ausschießlich mit 7400 zu lösen. Hein
brutale methode: schalt algebra (terme vereinfachen) alternativ: KV-diagramm aquivalent zu KV-diagramm: Quine-Mc Clusky Verfahren (wie bereits von läubi vorgeschlagen)
>alternativ: KV-diagramm Das werd ich morgen mal probieren, lange ists her.. A,B,C,D sind EIngänge und 0..9 sind die Ausgänge? Was ist mit den nicht eingetragenene Werten in der Tabelle? Alle Null nehme ich an? 74HC00 = NAND...
Eine Möglichkeit: Minimieren mittels Quine/McClusky, danach die N-fach-NANDs durch Kaskaden von 2-NANDs realisieren. Ist aber fraglich wie "minimal" das dann noch ist. Versuchen kann mans aber mal. Ansonsten kannst du natürlich auch per Programm und Brute-Force diverse Möglichkeiten durchprobieren. Beachte dabei, nicht jede Ausgangsfunktion für sich zu minimieren, sondern gemeinsame Terme mitzubenutzen. Suchbäume, die auf jeden Fall ein schlechteres Ergebnis als eine bereits gefundene Lösung liefern (start: deine Lösung), kannst du gleich an deren Wurzel ignorieren, das spart Laufzeit. Gibts in 74xx Multiplexer? Wenn ja kannst du damit die Funktionen nach je einer Variablen entwickeln: F(a,b,c,d) = (a AND F(1,b,c,d)) OR (/a AND F(0,b,c,d)) Das entspricht einem Mux mit a als selector und den 3-Eingänge-Fs als Daten. Überleg auch mal ob du noch mehr Schaltungen rein auf 74xx aufbauen willst; in dem Fall machst du es dir sicher einfacher wenn du den Computer für dich rechnen lässt.
Matthias Lipinsky wrote: >>alternativ: KV-diagramm > > Das werd ich morgen mal probieren, lange ists her.. > > > A,B,C,D sind EIngänge und 0..9 sind die Ausgänge? > Laut funktionstabelle sind die A,B,C,D eingänge. Ausgänge sind 0...9,A',B',C',D',E,F Die striche bei den ABCD deshalb weil laut schematik die eingangs ABCDs nicht mit den ausgangs ABCDs zusammenhängen. > Was ist mit den nicht eingetragenene Werten in der Tabelle? > Alle Null nehme ich an? > Nein können auch Dont Cares sein, musst du überprüfen. > 74HC00 = NAND... kA :-)
Wozu dient eine solche Schaltung? Es gibt doch dafür einerseits fertige 74xx und wenn einem das nicht dienlich ist kann man ja ein GAL/PAL/PALCE... nehmen. Und CPLDs gibts ja auch noch, und wenn man ein etwas dickeres Portemmonaie hat kann man auch noch einen FPGA verwenden.
>Wozu dient eine solche Schaltung?
Wurde oben schon erwähnt. Entweder Lötmasochist, Aktieninhaber von z. B.
TI, ...
MW
@ Michael Wilhelm (Gast) >>Wozu dient eine solche Schaltung? >Wurde oben schon erwähnt. Entweder Lötmasochist, Aktieninhaber von z. B. >TI, ... Oder da gabs auf Ebay billig ein kg 7400, die müssen jetzt verbaut werden, koste es was es wolle! ;-) MFG Falk
@Falk: Nur ein kg? Das reicht ja nirgends hin. Wenn schon soll er doch einen eigenen, neuen 64 Bit Processor mit NANDs erfinden. Das könnte man nachher auch brauchen... ;)
>Oder da gabs auf Ebay billig ein kg 7400, die müssen jetzt verbaut >werden, koste es was es wolle! ;-) Das wären 7727 ICs. Eben bei TI nachgesehen, einer wiegt 129,4 mg. Könnte bei verbleiter Version etwas weniger werden :-( . MW
hein wrote: > in einem Projekt möchte ich eine Logikschaltung mit 7400 Gattern > realisieren. Und ich dachte, er will 7.400 Gatter verbauen (obwohl er nur 52 braucht). Vereinfachungsvorschlag: nimmt ein paar Relais...
Hallo, danke für die Antworten. Ich hatte die Aufgabe aus einem Gray-Code 15 verschiedene Schaltzustände auszuwerten. Jetzt habe ich das ganze nochmal verkompliziert. Einfach nur so ein Gedankenspiel wie weit man mit 2-Fach-NANDS vereinfachen kann. Das heißt ich habe nicht vor diese Schaltung zu bauen, sondern nur zu vereinfachen. Dabei habe ich das Gefühl, dass mein Vorschlag noch nicht das kleinst möglichste Ergebnis ist. Man stelle sich einfach eine theoretische Übungsaufgabe vor(andere lösen Sudoku) mit folgender Aufgabenstellung: Von einen 4-Bit Signal(A,B,C,D) soll für jede Kombination je ein Ausgang (1-F) auf 1 geschaltet werden. Entwerfe eine möglichst kleine Logikschaltung ausschließlich mit 2-Fach-NANDS. So und bitte keine Haarspaltereien mit meiner Aufgabenformulierung. ;) @Morin Das mit dem NAND Kaskadieren verstehe ich nicht, kannst du mir das nochmal erläutern? Nochwas: In der Wertetabelle stehen die freien Felder auf der Ausgangseite für 0. Gruß Hein
Ja... da macht man ne Wertetabele... trägt das in ein KV-Diagramm oder Quine MC-Clusky wenn man lustig ist und schon hat man eine Minimierung ereicht, sogar in zweistufiger Logik.
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.