Earlier quoted context omitted.
Latency kills...and Ethernet uses exponential backoff.
More specifically TCP uses exponential backoff. Ethernet will happily keep drowning you in packages at line rate, if I'm not mistaken.
Raspberry Pi Pico does line rate 100M Ethernet
21–30 of 67 posts
Re: Raspberry Pi Pico does line rate 100M Ethernet
#22Earlier quoted context omitted.
More specifically TCP uses exponential backoff. Ethernet will happily keep drowning you in packages at line rate, if I'm not mistaken.
CSMA/CD does use exponential back off, though I'm not sure if anyone is still using it.
Re: Raspberry Pi Pico does line rate 100M Ethernet
#23Earlier quoted context omitted.
For added clarity, the Pico includes an RP2040 which is where the PIO runs.
Thanks, and you're correct; not sure why you got downvoted for this. For anyone curious here are the data sheets for RP2040 [for original Pico] and RP2350 [for Pico 2], which describe the systems in detail. RP2040: https://datasheets.raspberrypi.com/rp2040/rp2040-datasheet.p... RP2350: https://datasheets.raspberrypi.com/rp2350/rp2350-datasheet.p...
- The original Pico was not built around the RP2040 as its central part ("includes" sounds to me like it was an addition)
- The Pico 2 includes a RP2040 (in addition to the RP2350) which runs PIO
Neither of which are true. I'm guessing some other people had a similar reaction.
Re: Raspberry Pi Pico does line rate 100M Ethernet
#24I see some examples that show this can be used as a lite http daemon. Is there enough room to have it control the ethernet port for another weaker or perhaps more powerful microcontroller? Can you combine multiple picos with one being the ethernet stack and another that modifies certain packets? Are there any other interesting things that can be done?
Well there is a whole unused core and plenty of built in SRAM. Seems like a good way to have an open-source version of Wiznet chips [1]. It could support full protocol offloading like Wiznet's or a lower-level raw packet sender/receiver like the ENC424J600.
Re: Raspberry Pi Pico does line rate 100M Ethernet
#25I see some examples that show this can be used as a lite http daemon. Is there enough room to have it control the ethernet port for another weaker or perhaps more powerful microcontroller? Can you combine multiple picos with one being the ethernet stack and another that modifies certain packets? Are there any other interesting things that can be done?
Back when I was doing a dumb-server/smart-client desktop environment. Something like this would have been pretty cool. It needed a tiny API to save files, but the bulk of the environment worked as a static server.
Re: Raspberry Pi Pico does line rate 100M Ethernet
#26Re: Raspberry Pi Pico does line rate 100M Ethernet
#27Very impressive! It would be interesting to see a short writeup of what kind of magic was required to achieve this, as there have been multiple failed attempts before this. I'm also curious about the performance boost from 2.81Mbit/link failure at 150MHz to 65.4Mbit/31.4Mbit at 200MHz. That doesn't sound like basic processor bottlenecks, but rather some kind of catastrophic breakdown at a lower level? Does it just oc…
Re: Raspberry Pi Pico does line rate 100M Ethernet
#28Re: Raspberry Pi Pico does line rate 100M Ethernet
#29Re: Raspberry Pi Pico does line rate 100M Ethernet
#30I see some examples that show this can be used as a lite http daemon. Is there enough room to have it control the ethernet port for another weaker or perhaps more powerful microcontroller? Can you combine multiple picos with one being the ethernet stack and another that modifies certain packets? Are there any other interesting things that can be done?