www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Spartan 6: Erfahrungen?


Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Wir sind auf der Suche nach einem ordentlichen Development Board für ein 
kleines Design. Dabei ist uns ein möglichst schneller, zuverlässiger und 
großer Speicher wichtig (für Videoverarbeitung), also kommt nur DDR1/2 
Speicher in Frage.

Nun haben wir zuerst den Fehler gemacht und ein Spartan 3E Starter Board 
gekauft. Der Speicher darauf (bzw das PCB und dieser "tolle" Loopback 
Path) ist leider eine absolute Katastrophe, er funktioniert eher 
schlecht als recht. Wir haben verschiedene Controller ausprobiert und 
die auch entsprechend teilweise umgeschrieben aber es nicht hinbekommen 
den Speicher zuverlässig anzusteuern, es kommt bei bestimmten 
Schreibmustern immer wieder und wieder zu Fehlern :( Nicht mal das 
Referenzdesign von Xilinx funktioniert ordentlich, was haben die sich 
dabei eigentlich gedacht?

Wir wollen nun auf das SP601 Evaluation Kit 
(http://www.xilinx.com/products/devkits/EK-S6-SP601-G.htm) umsteigen. 
Das scheint nur Vorteile zu haben:
- das verwendete XC6SLX16 FPGA ist deutlich größer als der bisher 
geplante Spartan 3E-500, gleichzeitig aber nicht teurer und ebenfalls 
Digikey zu haben
- das FPGA enthält bereits Speichercontroller, das sollte eine Menge 
Ärger sparen und eigtl. einfach so out-of-the-box funktionieren
- es sollte deutlich schneller sein durch LUT6 und moderneren 
Fertigungsprozess


Nun unsere Frage: hat hier irgendjemand bereits Erfahrungen mit den 
neuen Spartan 6 FPGAs gesammelt oder hat evtl. sogar dieses SP601 Board?

Das ganze erscheint uns nämlich schon fast zu schön um wahr zu sein. Das 
Ding kann einfach alles was wir brauchen und ist mit 23€ dazu noch sehr 
billig. Was ist der Haken an der Sache?

Eine andere Sache ist: warum ist das Board vergleichsweise teuer? Sind 
dort irgendwelche Komponenten drauf die unbedingt für diesen Spartan 6 
benötigt werden und den Preis in die Höhe treiben?

Danke im Voraus für Antworten,

ein Gastuser der hier schon seit langer Zeit im Forum mitliest :)

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich sehe gerade dass da 2 supertolle und -teure (30€ pro Stück) 
Spannungsregler drauf sind, das erklärt wohl den höheren Preis des 
Boards :(

Autor: Uwe Bonnes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
- Zu der Videoanwendung auf dem SP601 Board ist bisher der Quellcode 
meines Wissens nicht verfuegbar
-Bisher gibt es in der freien Wildbahn (aka Digikey) nur den XC6S16 und 
das auch nur als Engineering Sample. Bei allen bisherigen Einfuehrungen 
dauerte es dann noch eine unbestimmt lange Zeit bis zur allgemeinen 
Verfügbarkeit
- Fuer DDR2 kenne ich noch keinen freien Core

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Fuer DDR2 kenne ich noch keinen freien Core

Das war ja genau einer der Vorteile den wir uns vom Spartan 6 erhofft 
hatten: problemloses verwenden von sehr schnellem DDR2 Speicher da dort 
ja schon ein Controller drauf ist :)


Der XC6S16 würde von der Größe her locker reichen und die ES scheinen 
keine Bugs zu haben die für uns wirklich relevant sind.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der MIG im ISE (bekommst du beim Kauf eines SP601 sowieso mit) erzeugt 
problemlos ein DDR-2 interface. Hab ich zumindest kürzlich auf einer 
Veranstaltung gesehen.

Autor: Johann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich finde das Board auch sehr interessant. Noch schöner wäre ein 
PCIe-Anschluß gewesen.

Autor: Uwe Bonnes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Gast:

Aber das DDR2-MIG will dann noch an die restliche Logik angeschlossen 
werden. Und fuer Wishbone habe ich dazu nur etwas in den Arbeiten von
Andrew Heckerling et.al. Und die Atrbeiten waren wohl fuer die US Air 
Force und damit wohl nicht zugaenglich. Damit muss das mit dem 
entsprechenden Zeit/Geldaufwand noch gemacht werden und mit 
entsprechenden Kosten zugekauft werden.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Johann schrieb:
> Ich finde das Board auch sehr interessant. Noch schöner wäre ein
> PCIe-Anschluß gewesen.

Gibts jetzt mit dem SP605 Board. 495 $ und alles drauf. Mit dem LX45T 
dann.

Autor: Andreas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Christian R,

Hm, gibts jetzt ist wohl ein wenig übertrieben...
Das Board gibts auf der Homepage zu sehen, wobei das Produktphoto wohl 
noch ein wenig retuschiert wurde, oder warum lässt sich die Spartan 
Bauteilbezeichnung im PDF markieren... ;)
Das Board soll ja in 8-12Wochen lieferbar sein (je nach Quelle...).

In ähnlichem Rahmen ist aber auch ein Board von Avnet angekündigt, 
welches ein Board mit dem XC6SLX150T (größter bisher angekündigter 
Spartan6) als 4Lane PCIe Board (Hard-IP unterstützt jedoch nur eine 
Lane?!).
Preis $995 - Lieferbar Coming Soon

Bischen Bauchschmerzen bereitet mir das Errata welches zum SLX45T 
erhälltlich ist im Hinblick auf die enthaltenen Hard-IP Probleme und dem 
empfohlenen Workaround: -

@Uwe Bonnes
Der Wishbonebus ist ja nun nicht so kompliziert, die Anbindung an den 
DDR-Controller damit auch noch zu stemmen...
Als Alternative könnte z.B. auch eine Umsetzung DDDR-CTRL - PLB - 
Wishbone herhalten. Hierfür wären dann alle Komponenten via EDK und 
OpenCores vorhanden.

Gruß

Andreas

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andreas schrieb:
> @Christian R,
>
> Hm, gibts jetzt ist wohl ein wenig übertrieben...
> Das Board gibts auf der Homepage zu sehen, wobei das Produktphoto wohl
> noch ein wenig retuschiert wurde, oder warum lässt sich die Spartan
> Bauteilbezeichnung im PDF markieren... ;)
> Das Board soll ja in 8-12Wochen lieferbar sein (je nach Quelle...).
>

Nun ja, immhin. Das SP601 Board steht nun auch endlich mal bei 2 Wochen 
Lieferzeit. Wobei ich da nicht so dran glaube. Wenn man dann wirklich 
bestellt, werden auch 8 Wochen draus. Ist halt so mit den brandaktuellen 
Teilen. Und die Engineering Samples....najaaa...

Autor: Andreas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Christian R,

das SP601 war mit Stand Freitag letzter Woche nach der Auslieferung der 
vorbestellten Exemplare bei Nu-Horizons noch einige Boards ab Lager 
lieferbar. Scheint also nicht ganz so eng zu sein...

Gruß

Andreas

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Andreas, Ume Bones
>Als Alternative könnte z.B. auch eine Umsetzung DDDR-CTRL - PLB -
>Wishbone herhalten. Hierfür wären dann alle Komponenten via EDK und
>OpenCores vorhanden.

Das User-Interface am MCB (Memory Control Block) ist wirklich
einfach - der Umweg über PLB würde alles nur komplizierter machen
und darüber hinaus noch mehr Ressourcen benötigen..

Gruß

Autor: Xenu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Der Speicher darauf (bzw das PCB und dieser "tolle" Loopback
>Path) ist leider eine absolute Katastrophe, er funktioniert eher
>schlecht als recht. Wir haben verschiedene Controller ausprobiert und
>die auch entsprechend teilweise umgeschrieben aber es nicht hinbekommen
>den Speicher zuverlässig anzusteuern, es kommt bei bestimmten
>Schreibmustern immer wieder und wieder zu Fehlern

Hallo,

könntest Du genauer beschreiben, was da nicht läuft?

Geht der nur mit der Maximalgeschwindigkeit nicht oder gibt's auch schon 
bei moderateren Geschwindigkeiten Probleme?

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> könntest Du genauer beschreiben, was da nicht läuft?

Bei 100 MHz läuft es stabil (was uns eigtl. erstmal reicht für niedrige 
Auflösungen zum entwickeln), bei 110 gibt es die ersten umgekippten Bits 
beim Schreiben an einer der Datenleitungen.

Autor: Georg A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das mit dem Loopback vom 3E-Board ist wirklich ziemlicher Blödsinn, bei 
nur einem Speicher dran ist das im wesentlichen ein NOP, allerdings mit 
versteckter rand()-Funktionalität. Eigentlich ist aber das ganze 
DDR-Design Käse. Es reicht bereits, den VHDL-Code dazu anzuschauen und 
es wird einem schon schlecht. Das ganze sieht nach 
"unser-erstes-VHDL-Projekt" aus.

Das DDR-Timing beim Lesen von nur einem Chip lässt sich deutlich 
einfacher realisieren, wenn man eine zweite DCM mit variabler Phase für 
die Lese-FFs nimmt und dann im Microblaze-Bootcode das Datenauge 
justiert. Also schrauben, bis die Fehler weg sind und dann bis sie 
wieder kommen und davon die Mitte. Da braucht es dann keine schaltbaren 
Delays wie in einem anderen (ebenfalls gruseligen) DDR-Design von 
Xilinx.

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.