mikrocontroller.net

Forum: FPGA, VHDL & Co. Einstieg in VHDL Programmierung-> sinnvolles Projekt gesucht


Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
nachdem ich mich jetzt eine ganze Zeit mit VHDL beschäftigt habe und
auch auf einem Evalutionboard das ein oder andere Blinklicht o.ä.
programmiert habe, würde ich jetzt gerne etas sinnvolles programmieren,
sozusagen als Lehrstück. Es sollte so ein Kompromiss zwuschen nicht zu
einfach, aber auch nciht zu schwer sein (also kein omplexes FPGA
Board), sondern ein eigenständiges kleines Projekt. Hat irgendjemand da
eine sinnvolle Idee, was man da basteln könnte? Mir ist da bislang bis
auf eine Uhr in VHDL schreiben nicht sonderlich viel eingefallen.

Vielen Dank schonmal für eure Anregungen und Gruß
Michael

Autor: Christoph Kessler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo
Ja ich habe auch schon über ein Jahr ein Evaluationsboard rumliegen (
trenz-electronic SpartanII) und will damit was sinnvolles zur
VHDL-Übung machen
Ich hab mir ein altes SDRAM-Modul mit einer kleinen Adapterplatine für
die Steckverbinder des Evaluationsborads versehen, darauf noch drei
Video-DACs TDA8702 und einen 65MHz-Quarzoszillator , das soll dann als
erstes mal eine VGA-Ausgabe mit 1024*768 machen, also einfache
Adresszähler und Multiplexer.
Später kann das damit völlig unterbeschäftigte FPGA auch mal eine FFT
oder ähnliches ausführen und auf dem Display darstellen, so ist eine
Weiterführung des ganzen zu einem sinnvollen Projekt möglich.
73
Christoph

Autor: TheMason (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie wäre es mit einem VGA-Controller (Text/Grafik) der sich von einem uC
per SPI ansteuern lässt ?
Oder ein kleiner Logic-Analyzer oder ein RS232 Datensniffer mit
VGA-Textausgabe ...
Also einfallen tun mir da so einige sachen die auch halbwegs
realisierbar sind (weil ich z.B. so einen VGA-Text-Controller an 4
Tagen zusammengetippert habe, incl. Simulation und uC-Programm).
Weiß ja nicht wie fit du bist, aber ein Audio-Projekt wäre auch ne
feine Aufgabe für nen FPGA (vor allem ist man da auch in der
Architektur frei *ggg)

Gruß
Rene

Autor: Christoph Kessler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PS wenn jemand an der Eagle-Datei zu meinem SDRAM-Adapter interessiert
ist, kann ich das gern hier reinstellen, ist halt etwas speziell für
genau die vier 40poligen Stiftleisten von Trenz.
Außerdem musste ich die Buchsenleiste für das SDRAM-Modul aus einem
alten PC auslöten, da sowas kaum einzeln zu bekommen ist, ziemlich viel
Arbeit, das Ding intakt rauszukriegen, es zerfällt in viele
Einzelkontakte
73
Christoph

Autor: Michael Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
der Schaltplan würde mich interessieren.

Autor: Christoph Kessler (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo
Hier sind mein Eagle-Files und je ein Ausdruck von .brd und .sch als
PDF
Ein Fehler ist mindestens vorhanden: Das SDRAM ist noch an VCC (+5V)
angeschlossen, das habe ich von Hand auf 3,3V umverdrahtet, es gab auch
mal 5V-SDRAMs, aber die meisten dürften 3,3 haben. An 5V verbleiben die
drei DACs von Philips

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für alle, die es interessiert, ich habe mich dazu entschieden, in den
nächsten Wochen eine Funkuhr aufzubauen. Dabei übernimmt der CPLD
folgende Aufgabven:- die eigentliche Uhrenfunktion
                   - die DCF-77 Dekodierung
                   - die Ansteuerung einer 7 Segment Anzeige

Gruß
Michael

Autor: Christoph Kessler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja das klingt gut für den Anfang, mein erstes CPLD war ein 4
1/2stelliger Frequenzzähler mit 7-Segment LCD. die meisten pins kostet
das LCD, für die Uhr ist ja nur ein Eingang nötig. Nicht vergessen, das
LCD über EXOR-Gatter an jedem Ausgang mit Wechselspannung zu versorgen,
gegenphasig zur Backplane, die mögen langfristig keinen DC-Anteil , das
soll zu elektrolytischen Zersetzungen führen oder so.

73
Christoph

Autor: Christoph Kessler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo nochmal,
Da anscheinend Interesse an meiner Platine besteht, noch dazu einige
Anmerkungen:
Ich habe sie bisher nur bestückt, aber noch nicht ausprobiert. Da das
Trenz-Board kaum GND-Pins hat, muß ich vielleicht noch mit
selbstklebendem Kupferband auf den Flachkabeln eine zusätzliche breite
Verbindung herstellen. Auf dem Evaluation-Board sind die Pfostenleisten
auf der Ober- und Unterseite verteilt, daher meine unübliche
Konstruktion mit einer senkrecht stehenden Platine und vier etwa gleich
langen Flachkabeln, ca. 7-8 cm lang - so sind die Laufzeiten für alle
Signale etwa gleich.
Die Masseseite meiner Platine habe ich beim Ätzen einfach mit der
Schutzfolie belassen und nachträglich die Lötaugen mit einem 3mm
Spiral-Holzbohrer ausgefräst( der hat eine Zentrierspitze, das ergibt
flache Bohrungen ). Das Layout für solche einfachen Platinen drucke ich
auf Laserfolie zwei- bis dreimal aus und nagle sie mit dem Tacker
übereinander, dann verrutschen sie nicht und die Schwärzung des
Ausdrucks reicht auch mit meinem alten 300dpi HPLJ IIIP aus.
73
Christoph

Autor: Christoph Kessler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auf die Gefahr hin, hier Monologe zu halten: zu den LC-Display mit CPLD
ist mir noch ein gemeines Verhalten dieser Dinger wieder eingefallen:
 Beim Umschalten der dargestellten Ziffern entstehen durch die relativ
große Kapazität der LCD-Elektroden Spannungen ( mit Vcc=5V) bis 10 V an
den Segmentanschlüssen. Das geht wie beim kapazitiven Spannungswandler
ICL7660 und ähnlichen Typen. Dadurch sieht man auch eigentlich nicht
angesteuerte Segmente, das ganze ist sehr verwaschen und schlecht
lesbar.
Abhilfe: sauber wäre eine Wartezeit zwischen zwei wechselnden
Zahlenwerten, in der kein Segment dunkel ist. Nachteil: passt
vielleicht nicht mehr ins CPLD rein- so war's damals.
quick'n dirty: (so hab ich es damals gelöst): An jeden Segmantanschluß
ein R nach GND, am einfachsten ein Widerstandsnetzwerk so 8 oder 9 *
1...10kOhm mit gemeinsamem GND-Pin. Damit gehts auch.
73
Christoph

Autor: Franz Lorenz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe ein Spiel "Ping-Pong" für das Spartan-3 Board geschrieben
und bräuchte Unterstützung bei der Soundprogrammierung.
Vielleicht möchtest Du mir dabei helfen.

Autor: Dirk Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,

ich habe gelesen, dass Du eine DCF-Uhr planst. Wenn es möglich ist,
schicke mir doch bitte die Projektfiles zu.


Danke, Dirk

Autor: Marco N. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, hier ein - wie ich finde - ganz netter Link, heute gefunden:

http://www.fpga4fun.com/

Sind auch ein paar einfache Projekte drauf, vielleicht ist das was
dabei was gefällt.

Autor: The Daz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Christian,
Ich hab mir mal dein SDRAM Dingelchen angesehen und bin doch
überrascht, dass das so funktioniert. Ich beschäftige mich erst seit
ein paar Tagen ernsthaft mit dem Thema FPGA und hab mir mal die Xilinx
design Info zum Power-Design für Spartan 3 angesehen und zweifle
seitdem, ob sich dass Thema nicht damit für mich wieder erledigt hat.
Dort schreiben die Jungs, dass ohne mindestens 4 Lagen und zig
Entkopplungskondensatoren in diversen Kapazitäten keine saubere
Funktion bei Frequenzen >= 100MHz zu schaffen ist. Ich wollte konkret
für mein Projekt zwei SDRAM Controller in einem FPGA zusammenfassen um
daran, genau wie du es machst, übriggebliebene SDRAM Module mit 100 MHz
anschliessen. Ich staune Bauklötze, dass du mit Flachbandkabeln und zwei
Lagen zu brauchbaren Ergebnissen kommst. Mit welchem Takt betreibst du
deine SDRAMs ? Übertreiben die Xilinx-Jungs bloss oder hab ich hier was
übersehen ?

Autor: Christoph Kessler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich hab das Ding noch nicht benutzt, aber bei den Taktfrequenzen erwarte
ich noch keine Probleme. Das Evaluation-Board hat halt nur diese weit
auseinanderliegenden Anschlüsse. Vielleicht muß mandas Flachkabel mit
CU-Band als Massefläche bekleben, und breitflächig an GND anschließen,
damit es einen definierten Wellenwiderstand bekommt, und das
Übersprechen zu Nachbar-Adern kleiner wird

Autor: Christoph Kessler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mein VGA-Pixeltakt soll den 1024*768/60Hz-Standardwert 65 MHz bekommen,
im FPGA wird der nochmal verdoppelt auf 130 MHz, 16 Bit pro Pixel, der
Speicher ist 64 Bit breit, also brauche ich eine Zugriffsrate von 16,25
MHz. Ich denke die werden über eine Strecke von weniger als 10 cm noch
keine Probleme machen

Autor: The Daz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieviel Vogelfutter streust du so gefuehlsmaessig um den FPGA herum ?

Autor: Christoph Kessler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
soviele Platz haben, ohne dass die Viecher sich beim Picken gegenseitig
im Weg stehen

nein das FPGA ist ja fertig verdrahtet vom Hersteller des Evaluation
Boards, das kann ich nix ändern, ich nehme an. der hat das einigermaßen
vernünftig abgeblockt.

nach "gefühlter" Außentemperatur - ich propagiere ja die gefühlte
Taktfrequenz von AMD - jetzt auch der gefühlte Abblockfaktor...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.