mikrocontroller.net

Forum: FPGA, VHDL & Co. FPGA als USB Massenspeicher?


Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich habe eine Aufgabe bekommen, die ich dank wissensfreiheit 
(hauptsächlich) in Sachen USB im Moment schwer überblicken kann und 
würde mich über Ideen oder Hinweise von Euch freuen.

Über einen Spartan 3e 500 soll (unter Anderem) ein bisschen AD gewandelt 
und die Messungen ausgewertet werden. Die ausgewerteten Messdaten sollen 
dann als Textdatei über USB an einen Computer gehen. Entweder, indem das 
Gerät als Massenspeicher erkannt wird und die Dateien einfach rüber 
kopiert werden, oder indem ein USB Stick eingesteckt wird, auf den 
automatisch die Messdaten kopiert werden.

Günstiger wäre die Variante des Geräts als Massenspeicher. In dem Fall 
müsste der FPGA wohl am einfachsten die Messdaten auf einen Flash 
Speicher kopieren, an dem parallel ein USB Flash Controller sitzt... 
oder gibt es da einfachere Möglichkeiten? Ist das ganze für einen 
Studenten mit rudimentären C und VHDL Kenntnissen eurer Meinung nach in 
1-2 Monaten machbar?

Ich danke für jeden Hinweis!

Viele Grüße

Michael

Autor: Duke Scarring (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael schrieb:
> Studenten mit rudimentären C und VHDL Kenntnissen eurer Meinung nach in
> 1-2 Monaten machbar?

Nein. Die Zeit brauchst Du alleine schon für den USB-Teil...

Hast Du schon eine fertige Hardware?

Duke

Autor: John-eric K. (mockup)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zum Thema Massenspeicher
http://www.ftdichip.com/Products/ICs/VNC1L.htm

oder der neuere
http://www.ftdichip.com/Products/ICs/VNC2.htm

============================
Typical Applications
# USB Flash drive to MCU  PLD  FPGA for data storage and firmware 
upgrades.
============================

kommt ja drauf an, ob die USB Geschichte selber gemacht werden muss von 
dir
oder ob es reicht den Chip definiert anzusprechen der dir USB abnimmt.

Gruß
John-Eric

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Hast Du schon eine fertige Hardware?

Zur Hand habe ich im Moment ein Spartan 3e Starter Kit und ggf. ein 
Nanoboard 2 von Altium. Für das Starterkit würde ich, je nach USB 
Controller, einen Adapter bauen. Das Nanoboard hat schon einen Cypress 
Controller mit Sourcecode/Treibern dabei, allerdings finde ich das 
Altium System mit Software Stacks usw. ein bisschen unübersichtlich.

>http://www.ftdichip.com/Products/ICs/VNC2.htm

Den habe ich mir schon mal angeguckt und sieht interessant aus. Hast du 
mit dem FTDI Chip schon mal gearbeitet?

Das ganze soll so einfach wie möglcih sein, je mehr fertig ist, desto 
besser. Den USB Stack selbst zu schreiben fällt auf jeden Fall aus... da 
bin ich einfach nicht Informatiker genug für ;)

Autor: Uwe Bonnes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einfacher machst Du die Sache, wenn das Board nur Device ist. Du 
spendierst dem Board ein ordentliches Flash, wie z.b. ein M25P64 
serielles Flash und einen FT2232H. Wenn das Board standalone lauft, 
speicherst Du die Messdaten im Flash, wenn der PC angeschlossen ist, 
schreibts Du die gespeicherten oder die aktuellen Daten je nach 
Geschwindigkeitsanforderungentweder im synchronen oder im asynchrochnen 
FT245 Style Fifo an den PC. Auslesen kannst Du am PC dann einfach die 
(usb) serielle Schnittstelle.


Aber falls die Berechnungen nicht zu kompliziert sind, und die 
Datenraten nicht zu hoch, hoert sich das eher als Aufgabe fuer einen 
Mikrokontroller an...

Autor: Günter (dl4mea) (dl4mea)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hier habe ich mal beschrieben wie ich von einem AD-Wandler über ein FPGA 
16MByte/sec auf den PC transferiere. Vielleicht ist das ja auch ein 
Ansatz für dich:

Beitrag "High Speed Capturing (10MByte/sec)"

ciao, Günter (dl4mea)

Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Spartan 3e Kit hat eine serielle Schnittstelle. An einfachsten wäre 
es sicherlich ein USB auf Seriell Kabel zu verwenden. Oder muss das 
wirklich ein Massenspeicher-Gerät sein?

Falls es unbedingt Massenspeicher sein muss - es gibt auch schon fertige 
Module mit den Vinculum Chips:

http://www.ftdichip.com/Products/Modules/Developme...

Das schliesst du über einen PMOD-Connector an das Board an.

Die 1-2 Monate für diese Aufgabenstellung finde ich allerdings sehr 
sportlich ;).

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.