Hallo, ich will folgende IC's durch einen CPLD ersetzen: - 3 x 12 Bit Zähler - 2 x MUX - 2 x NAND - 2 x 3-state Line Driver - 1x Quad D-FlipFlop Da ich aber absoluter Anfänger bzgl. CPLD/FPGA/VHDL bin, wollte ich fragen, ob das überhaupt geht, oder ob ein CPLD ungeeignet (evtl. zu 'klein') für diese Aufgabenstellung ist und ich besser einen FPGA nehme (was ich aber ungern tun würde)? Das Ganze soll einen externen RAM ansteuern. MFG Sam
@ Sam (Gast) >- 3 x 12 Bit Zähler = 36 Makrozellen >- 2 x MUX >- 2 x NAND >- 2 x 3-state Line Driver Je 2 Makrozellen. >- 1x Quad D-FlipFlop 4 Makrozellen Summe = 46 Makrozellen + Sicherheit >fragen, ob das überhaupt geht, oder ob ein CPLD ungeeignet Geht. >'klein') für diese Aufgabenstellung ist und ich besser einen FPGA nehme Nein. MFG Falk
Lade dir mal die ISE Webedition runter. Da kannst du deine Schaltung grafisch eingeben. XILINX ISE sagt dir dann, welches CPLD dafür geeignet ist. Ohne näher darüber nachzudenken, würde ich sagen, dass ein XP9536 dafür ausreichend ist.
Falk Brunner schrieb: > Summe = 46 Makrozellen + Sicherheit Wurstwasser schrieb: > Ohne näher darüber nachzudenken, würde ich sagen, dass ein XP9536 > dafür ausreichend ist. Da würde ich aber der Schätzung von Falk eher trauen. Und 46 Makrozellen sind mehr als 36...
> Da ich aber absoluter Anfänger bzgl. CPLD/FPGA/VHDL bin, Dann würde ich mir erstmal anschauen was was ist und was jeder kann. ...VHDL ist eine mögliche Programmiersprache für FPGAs und CPLDs. zu CPLD http://www.fischl.de/thomas/elektronik/cpld/index.html Ferner: http://www.unmuth.de/technik/projekte.htm
Vielen Dank für die Antworten. Interessant, dass man die IC's in Makrozellen umrechnen kann - das hilft mir sehr. Gruß Sam
Tim schrieb: > ...VHDL ist eine mögliche Programmiersprache für FPGAs und CPLDs. Um es genau zu sagen: VHDL ist eine Beschreibungssprache. Programmiert wird damit nichts...
Nicht die ICs, sondern deren Funktionen. Eine Makrozelle im CPLD ist im Wesentlichen ein Flipflop mit etwas Hühnerfutter drumherum (ein bisschen was fürs Verdrahten, ein wenig für logische Verknüpfungen usw.) Nun braucht jedes Bit deiner Zähler ein Flipflop, also eine Makrozelle, sofern du das Flipflop nicht aus logischen Funktionen zusammenflicken möchtest. Das sind dann 3x12 = 36 Zellen. Pro Logikfunktion kommt üblicherweise eine Zelle dazu. Wenn du Verknüpfungen mit vielen Eingängen realisieren musst, dann werdens entsprechend mehr. Je nach CPLD/FPGA-Typ kann man dazu Zellen miteinander verbinden, über irgendwelche Carries, Kaskaden und solcherlei Zeugs. Das meint Falk dann mit 'Sicherheit'. Noch etwas Sicherheit dann falls es mit dem Verdrahten räumlich nicht hinhaut.
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.