Hallo Amiwerewolf

Willkommen im Abenteuer der programmierbaren Logik. Auch ich befinde mich im Analuf die Lernkurve bei programmierbarer Logik zu durchschreiten und plane einen I/F Baustein zu machen der zwischen einem mega2560 und einem LCD-Controller das I/F realisiert. Habe dazu diverse Threads hier mit gezielten Fragen gestartet, hier ein paar Zwischenergebnisse und Entscheidungen die ich für mich getroffen habe. Vielleicht hilft Dir das?

Grundlagen um eine Schaltung aufzubauen nach dem Prinzip "Programmieren von Logik Bausteinen for Idiots", du Du hast sicher schon von diesen Büchern gelesen, ist für mich folgende englischsprachige Webseite/Tutorial:
http://www.asic-world.com/verilog/veritut.html


Nach dem ich diesen Beitrag angefangen habe durchzulernen bin ich zu der Entscheidung gekommen ein Top-Down Ansatz zu wählen und die Blöcke zu identifizieren die mein Zielbaustein haben soll. Dabei macht man sich konkret Gedanken welche Eingänge, welche Ausgänge, Welche Ein-/Ausgänge, welche Register und welche "wire" und welcher Art prinzipiell die Blöcke haben, bzw. sein sollen.
Im nächsten Schritt kann man dann diese Blöcke mit Hilfe der im oben genannten Tutorial, gemäß Verilog Syntax, beschriebenen Verfahren beginnen zu definieren.

Sobald ich einen, möglichst den einfachsten Block soweit definiert habe das ich diesen synthetisiere und simuliere, werde ich mich in die nächsten Erkenntniss Schritte vertiefen.

Wenn ich am Ende eine Verilog Bechreibung meiner Schaltung habe kann ich auf der Suche nach einem passenden Bauteil einer der Hersteller gehen. Jetzt werde ich eine Vorstellung haben welche Merkmale in etwa mein Zielbaustein haben soll. Auch habe ich mich dann in großer Tiefe mit meiner Zielschaltung vertraut gemacht.

Ob es Atmel, Altera, Xilinx oder sonst jemand ist, alle bieten kostenlose mächtige Werkzeuge an die als Ergebniss eine sogenannte Datei im JEDEC-Format haben die für mein Zielbauteil geeignet ist. Auch werde ich durch die Simulatoren die zu den Werkzeugen gehören auch bereits die Graphiken mit den Signalen der Pins und den angenäherten Zeitverhalten haben. Wie man die passenden Testdateien erstellt um in den Simulatoren die Schaltung zu füttern, genannt Testbenches, ist Teil des oben genannten Lehrgangs.

Da diese Logikbauteile für viel höhere Frequenzen definiert sind als man Sie beim Einsatz mit Atmel-Controllern hat, dürften interne Laufzeitunterschiede für uns vernachlässigbar sein.

Wenn man jetzt also das Bauteil kennt und so weiss man auch ob z.B. das Programmierkabel, siehe z.B. Xilinx für die Parallelschnittstelle am PC, verwenden kann, so kann man sich dieses für ein paar Euro selber bauen.

Bleibt noch das Thema Gehäusewahl. Ich habe für mich beschlossen, da ich als Ziel schon etwas Reserve haben will, auf 2 mögliche Gehäuse mich zu beschränken, PLCC 44 und PLCC 84. Für diese Gehäuse gibt es Sockel die man in eine Lochrasterplatine stecken kann und damit in einem Testaufbau integrieren für ebenfalls nur wenige Euro, aber es gibt für diese beiden Sockel Bauteile von kleinen CPLD´s bis zu schon sehr großen FPGA´s. Auch sind beide Gehäuse noch einigermassen beherrschbar wenn man diese selber in eine Schaltung als SMD-Bauteil löten möchte.

Gerne würde ich mich mit Dir und anderen Einsteigern in programmierbare Logik, oder hilfsbereiten Experten, kurzschliessen um sich gegenseitig zu unterstützen und zu motivieren.