www.mikrocontroller.net

Forum: FPGA, VHDL & Co. USB-Stick, PLL oder Quarz?


Autor: Bert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Gemeinde,

ich möchte auf einen USB-Stick mitttels FPGA zugreifen. Meine Frage 
wäre, ob dies auch konsquent mit 12 Mbit (Full Speed) möglich wäre. Im 
Datasheet steht, dass ein Hi-Speed-Device seine gesamte Funktionalität 
nicht notwendigerweise auch in Full Speed zur Verfügung stellen muss. 
Wenn der Stick nun aber über keinen eigenen fixen Clock-Generator 
verfügt, könnte ich die Daten ja in Hi-Speed langsamer senden und 
empfangen.

Besitzt der Stick einen eignen Quarz oder erzeugt er den Ausgangsclock 
durch Vorgabe der Frequenz von der Hostseite?

Autor: Sven P. (haku) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In meinem Stick isn 12MHz-Quarz verbaut.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Bert (Gast)

>wäre, ob dies auch konsquent mit 12 Mbit (Full Speed) möglich wäre. Im

Sicher.

>verfügt, könnte ich die Daten ja in Hi-Speed langsamer senden und
>empfangen.

Kaum.

>Besitzt der Stick einen eignen Quarz

ja.

>oder erzeugt er den Ausgangsclock durch Vorgabe der Frequenz von der Hostseite?

Nö.

MfG
Falk

Autor: Bert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ah, ja - danke für eure Antworten.

Mal noch 'ne andere Frage. Wenn ich lediglich auf einen einzigen 
(physisch vorhanden) USB-Stick zugreifen möchte, muss ich da 
zwangsläufig auch SOF (Startof Frame) permanent senden? Oder reicht da 
auch bloss eins zu Beginn? So wie ich das aus dem Datasheet 
herausgelesen habe, dient das Signal lediglich zur Synchronisation der 
Hub's. Dann könnte ich es quasi ganz weglassen oder unregelmässig mit 
einem µController generieren und ne Menge Platz im Fpga sparen. Geht 
das?


@Karl der Kleine
Mit Standard IO's geht das auch.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Bert (Gast)

>zwangsläufig auch SOF (Startof Frame) permanent senden?

Logisch, du musst ja einen nahe zu kompletten USB-Master emulieren.

> Oder reicht da
>auch bloss eins zu Beginn? So wie ich das aus dem Datasheet
>herausgelesen habe, dient das Signal lediglich zur Synchronisation der
>Hub's.

Glaub ich nicht so recht.

MfG
Falk

Autor: Thomas B. (yahp) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Mal noch 'ne andere Frage. Wenn ich lediglich auf einen einzigen
> (physisch vorhanden) USB-Stick zugreifen möchte, muss ich da
> zwangsläufig auch SOF (Startof Frame) permanent senden? Oder reicht da
> auch bloss eins zu Beginn? So wie ich das aus dem Datasheet
> herausgelesen habe, dient das Signal lediglich zur Synchronisation der
> Hub's. Dann könnte ich es quasi ganz weglassen oder unregelmässig mit
> einem µController generieren und ne Menge Platz im Fpga sparen. Geht
> das?

SOF gibt für alle Geräte am Bus - nicht nur Hubs - die Frameeinteilung 
an, daher wahrscheinlich auch der Name. Das kannst du nicht weglassen, 
das ist das wichtigste Paket aufm Bus.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hatt denn dein FPGA einen integrierten Prozessor? Oder wo willst du das 
komplette Protokoll eines USB Masters incl. universellem 
Mass-Storage-Devive Treiber abfackeln?

Autor: Bert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber natürlich hat der einen Prozessor. Ich schrieb es auch weiter oben 
schon.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na dann. Und ja, du kannst einen USB Stick natürlich an einem FullSpeed 
Host anschließen, geht ja an einem PC genauso. Was das allerdings mit 
dem Quarz auf dem Stick zu tun hat erschließt sich mir nicht. Du 
scheinst dich bei USB (noch) nicht auszukennen....

Autor: Erik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

USB-Sticks sollten ihre "Funktionalität" auch bei 12MBit komplett zur 
Verfügung stellen. Außer die geringe Performance bestehen da IMHO keine 
Einschränkungen.

Das SOF-Paket wird man schon ab und an mal senden müssen, für ein 
Mass-Storage-Devive ist das Timing sicher nicht besonders kritisch. Man 
kann es eventuell auch mal länger weglassen aber dann kommt der 
Stand-By-Mode.

Zum Verständnis sollte man aber mal die USB-Spec möglichst komplett 
gelesen haben. Wenn man auf den Hi-Speed-Kram verzichten kann ist es 
besser sich auf die 1.1-Spec zu beschränken (hat nur halb so viele 
Seiten).


Grüße
Erik

Autor: Bert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Erik,

ja wie schon geschrieben, im 2.0 Datasheet steht, dass ein Device das 
nicht notwendigweise mit der gesamten Funktionsvielfalt tun muss. Ich 
vermute aber, dass es trotzdem auch mit Full-Speed funktionieren wird.

Das mit dem SOF sehe ich eigentlich genauso wie du. Es ist eigentlich 
nur für das Scheduling notwendig. Da ich nur ein Device habe sollte es 
keine oder nur eine untergeodnete Rolle spielen. Aus der Sicht des 
Stick's gibt es keine Notwendigkeit das Signal auszuwerten und Standby 
kommt nur, wenn absolut keine Busativität mehr eingetreten ist.

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.