Hallo Bei ein paar Überlegungen zum Thema BAS-Signal und Videospeicher ist mir immer mehr aufgefallen, wie praktisch es wäre, einen etwas komplexeren Logikchip nach eignen Vorstellungen zu entwickeln. Ich denke hier noch nicht an einen FPGA, sondern eher an einen kleineren CPLD. Einerseits aus Komplexitätsgründen, aber auch, weil ich die Hoffnung habe, sowas noch auf einfacheren Platinen handhaben zu können. Ein paar Fragen: 1. Welche CPDL(-Familien) kann man für den Anfang empfehlen? (Möglichst im DIP (wohl eher unmöglich?) oder mindestens sollten Adapter verfügbar sein, um das Ding irgendwie auf eine einfache Platine zu bringen (wenn mgl. Lochraster)) 2. Wie läuft das mit der Programmierung, d.h. was brauche ich für Programmiertools, Programmieradapter etc.? 3. Was liegt mit nem CPLD in etwa drin? Und wie sieht es mit der Einarbeitungszeit aus? 4. Wo bekomme ich entsprechendes Material? Conrad (jaaa, in der Schweiz hat man kaum alternativen) hat sowas jedenfalls nicht. Gruss Michael
Die von xilinx, lassen sich mit nem guenstigen JJTAG kabel programmieren, dafuer gibts auch die programmierumgebung fuer solaris und linux (was nicht unwichtig ist, wenn man kein win nutzt ;) ) Für altera gibts auch einfache programmierkabel. Es gibt di CPLD auch in plcc gehaeuse, lassen sich auch leicht auf lochraster aufbauen. schau mal hier im forum bei fpga cpld&co nach, da gibts gute links zum informieren. (weiss ja nicht richtug was du brauchst). Wenn du auch mal in fpga machen willst, dann kann ich das starterkit von digilent (gibts bei segor fuer 130e) empfehlen. hat nen cpld board (mit 2 cpld) und n fpgaboard incl 2 jtagkabeln bei. die cplds sind eigentlich nur auf nem headerboard, aber das stoert nicht weiter. Es gibt auch ein Board mit FPGA und CPLD fuer 180e, aber daas ist komplexer, und meiner meinung ist das fuer130 fuer den anfang optimal. (aber da scheiden sich die Geister)
Meine ersten Erfahrungen mit programmierbarer Logik habe ich mit dem CPLD XC9536 von Xilinx gemacht. Damals gab es diesen Baustein sehr günstig bei eBay, bei Reichelt kostet er heute EUR 1,90 (SMD) bzw. EUR 4,15 für die PLCC-Variante und für PLCC gibt es ja Sockel. Um mit diesem Baustein zu arbeiten, brauchst du eigentlich nur das kostenlose Webpack von Xilinx sowie einen Programmieradapter. Ich benutze diesen hier: http://warmcat.com/milksop/cheaptag.html Er wird vom Webpack problemlos erkannt und funktioniert auch unter Windows XP einwandfrei. Meine erste Logikschaltung habe ich noch mit dem Schematics-Modul gemacht aber langfristig kommt man um eine Hardwarebeschreibungssprache wie VHDL nicht drum rum. Ein Nachteil haben die XC9536, sie brauchen sehr viel Strom. Thorsten
Hallo Bezüglich FPGA vs. CPLD: Wie weit kommt man mit einem CPLD, und ab wann braucht man einen FPGA? Nicht, dass ich jetzt mich in einen CPLD einarbeite und sofort merke, dass die Dinger viel zu klein sind. Aber wie gesagt, vorerst sollen die Dinger einfach mal komplexere Schaltungen aus Logikbausteinen ersetzen. Gruss Michael
Hallo Mal ne kleine Liste, was ich in der Schweiz so für CPLDs bekommen könnte im PLCC: XC 9572-10PC84C (72 Makrozellen, PLCC-84) für 23 CHF / 16 EUR XCR 3064 XL - 7PC44C (64 Makrozellen, PLCC-44) für 18 CHF / 12 EUR XCR 3064 XL - 10PC44C (64 Makrozellen, PLCC-44) für 40 CHF / 26 EUR Wobei ich bei letzteren beiden nicht sicher bin, ob sie In-System-Programmierbar sind oder ob ich hier noch spezielle Programmer benötigen würde, zudem laufen diese auf 3.3V. Ich tendiere also zum XC9572. Den sollte ich ja auch mit dem http://warmcat.com/milksop/cheaptag.html programmieren können? Aber 23 CHF / 16 EUR sind schon heftig...wie robust sind diese Chips, wenn mal was schief geht? Gruss Michael
Habe jetzt bei Farnell noch den XC9536 gefunden, der ist dann aber doch eher etwas kleiner (vom Preis her geschätzt).
Wenns nur zum Basteln ist, ich haette dir allenfalls gratis ein paar Altera EPM7032S im PLCC-44 (32 Makrozellen, hat JTAG fuer ISP). Ein solches CPLD ist fuer dein Projekt viel zu klein, aber du koenntest ja mehrere nehmen. Wobei du vermutlich mit einem MaxII, CycloneII (oder halt Spartan 3) Experimentierboard vermutlich besser bedient bist. Falls du trotzdem interesse an einer Stange EPM7032S hast, schreib ne mail an rsteinerATdigsolDOTch Cheers, Roger
http://cgi.ebay.de/10-x-XILINX-CPLD-XC9536-7VQ44C-nach-ESD-verpackt_W0QQitemZ280029425626QQihZ018QQcategoryZ12949QQssPageNameZWDVWQQrdZ1QQcmdZViewItem und http://cgi.ebay.de/XILINX-JTAG-Programmer-FPGA-CPLD-3x-XC9536-VQ-Platine_W0QQitemZ200028254590QQihZ010QQcategoryZ12949QQssPageNameZWDVWQQrdZ1QQcmdZViewItem
> Ein solches CPLD ist fuer dein Projekt viel zu klein, > aber du koenntest ja mehrere nehmen. Hätte grundsätzlich Interesse, ja! Trotzdem noch die Frage: Was kriege ich mit 32 Makrozellen hin? Ich kann mir das irgendwie absolut nicht vorstellen, null Ahnung ;-)
Ich habe z. B. ein Board mit einem Mega128, einem externen SRAM, einer Festplatte und einem Display. Ein CPLD erzeugt alle notwendigen CS-Signale für die Peripherie sowie die Adressen für die Festplattenansteuerung. Außerdem noch ist das notwendige Addresslatch für das SRAM integriert. Das alles in einem XC9536 und es ist noch immer nicht voll. Das CPLD ersetzt quasi folgende Bausteine: * 2 x 74573 * 1 x 74138 * 1 x 7432 * 1 x 7404 Vorteil: man kann jederzeit Änderungen an der Logik vornehmen ohne den Lötkolben in die Hand zu nehmen. Und das ganze für EUR 1,90.
> Hätte grundsätzlich Interesse, ja! Trotzdem noch die Frage: Was kriege > ich mit 32 Makrozellen hin? Naja, mit Zaehler und Register werden die 32 Flip-Flops wohl der limitierende Faktor sein. Zudem ist das EPM7032 nicht grad ueppig mit routing resourcen ausgestattet, was heisst, dass man je nach auslastung Kompromisse im Pin placement machen muss. Du kannst dir auch Zeit zum Entscheiden lassen, es ist nicht so dass mein Angebot verfaellt. Am schlausten ist wohl dass du dir zuerst die Design Software von Altera ziehst - Quartus Web Edition und mal zuerst dein design dort zu implementieren versuchst, dann weisst du ob du mit den kleinen CPLDs gluecklich wirst. Bevor du anfangest was zu Verdrahten, ist das sowieso der erste Schritt. Das Tool hat ein fuer Anfaenger verlockendes Schema entry. Am besten laesst du das gleich bleiben und setzt dich von Anfang an mit VHDL oder Verilog auseinander. Dann kannst du naemlich auch die Software von Xilinx oder Lattice ziehen und hast so ein Anhaltspunkt was mit welchen Bausteinen von verschiedenen Herstellern moeglich ist. Da du ja vorerst CPLDs einsetzen willst, sollte portabler HDL code ein klacks sein. Cheers, Roger
Hallo Ich hab mir jetzt mal das ISE Webpack von Xilinx gezogen. Übrigens mit 1 GB meine mit Abstand grösste Entwicklungs-Software - keine Ahnung, was die da alles 'reinpacken. Als nächstes werde ich damit mal versuchen, ein Design zu entwerfen, damit ich ungefähr eine Ahnung kriege, wie das so läuft. Nun stellt sich für mich die Frage: Welche Möglichkeiten gibt es, den CPLD zu programmieren? VHDL und Verilog sowie das von Roger erwähnte 'Schema entry' fallen mir spontan ein - was würdet ihr empfehlen? Gruss Michael
VHDL oder Verilog. Ersteres wäre wegen in Europa höherer Verbreitung erste Wahl. Einfache CPLDs kann man auch in ABEL programmieren, aber da wird es schnell unübersichtlich bei großen Sachen. Für FPGAs kommen sowieso nur die ersten beiden HDLs in Frage.
Hallo nochmals Gibt es eigentlich gute Tutorials zum Thema CPLD und VHDL? Im Internet ist leider kaum etwas zu finden, oder ich Suche am falschen Ort. Gruss Michael
VHDL gibts ne Menge Tuts, da brauch man auch nicht unbedingt eins, was sich mit VHDL mit CPLDs beschäftigt. Am besten einfach mal Code shcreiben, und sehen, was der Fitter dann draus macht. Also welcher Code welche Ressourcen allokiert. Bei Xilinx oder Altera gibts bestimmt Paper, wo erklärt wird, wie man effizienten Code für CPLDs schreibt. Für FPGAs gibts sowas, also denk ich auch mla für CPLDs. Ansonsten die Datenblätter der Schaltkreise, da steht oft ne Menge drin, oft auch schon was zum VHDL Code. T.M.
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.