mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ethernet controller extern / intern?


Autor: Olaf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Morgen,

ich hätte mal eine Frage zu Ethernet Controllern:

was sind genau die Vor- u. Nachteile wenn man einen µC mit integriertem 
100MBit Ethernet MAC und PHY verwendet im Vergleich zu einem µC mit 
Daten- u. Addresbus an dem ein Ethernet Controller angebunden ist (z.B. 
auch mit DMA)?

- welche Lsg ist performanter - wo muss der µC weniger arbeiten...
- welche anderen Vor- u. Nachteile ergeben sich noch, die man bedenken 
sollte?

Olaf

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab mir gestern mal die AVR32UC3 angeschaut. Die haben eine 
MAC-Einheit eingebaut, die über DMA Daten in den Controller laden und 
andersherum.

Als vergleich dazu habe ich mal einen Webserver mit einem AVR und einer 
RTL8019 ISA Karte zusammengeschraubselt.

Und ich muss sagen: So wie das beim AVR32 gelöst ist, ist das schon 
ziemlich genial meiner Meinung nach. Die Daten können ohne Belastung des 
Prozessor. Ja sogar ohne Belastung des internen RAMs (und somit zB des 
Call-Stacks, sofern man den hier angelegt hat) hin und her geschaufelt 
werden. Das geht dank mehrerer Busse, die zwischen den Komponenten 
intern aufgespannt sind. (Ja, um das DMA hier zu benutzen braucht man 
internen RAM, wenn ich das richtig verstehe, da nur dieser über den 
Highspeed-Bus (HSB) angebunden ist. Der interne nicht. Hab mich 
dahingehend aber nicht weiter informiert, da bei mir sowieso ein 
externer RAM dran ist).

Im Vergleich dazu: Beim AVR muss nach einem Interrupt erst das ganze 
Ethernetpaket in den RAM geschaufelt werden. Gerade wenn sowas oft 
hintereinander passiert, dann ist der AVR ja echt nur am rumkopieren.

Insofern würde ich eine interne Lösung schon bevorzugen - DMA ist echt 
ne feine Sache.

Autor: Olaf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
vielen dank für deine antwort

wie funktioniert das ganze aber mit einem TCP-Stack (den du ja auch 
haben musst) - dafür müssen die Daten doch in den internen RAM wieder 
geholt werden? Oder wie funktioniert das, dann?

Olaf

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit externem Speicher meinte ich jetzt Speicher, der an den Controller 
angeschlossen wird, und so den internen Speicher "aufrüstet". Der 
externe Speicher ist (sofern angeschlossen ;)) genauso zugreifbar, wie 
der interne Speicher.

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]
  • [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.