Open ryao opened 7 months ago
Nice idea, it will be more useful if software MAC can work with other chips.
Nice idea, it will be more useful if software MAC can work with other chips.
The RP2040 is somewhat special, although I imagine if there was a way to use the following with others it could be possible:
https://github.com/lawrie/fpga_pio
Interestingly, the RP2040’s PIO is powerful enough to output a DVI signal needed for 720p HDMI:
https://github.com/Wren6991/picodvi
Note that I am writing from my superficial understanding. I only did preliminary research and then decided to use the ENC424J600 for my application as the volume is too low to justify developing this right now. I will send patches based on what I have done with the RP2040 + ENC424J600 in the near future after things are closer to a production ready state.
Adding support for software MACs such as the following would be a nice way of reducing component costs for less demanding applications:
https://github.com/essele/rp2040-rmii
For example, a ENC424J600 that combines both a PHY and a MAC costs $5 and change while the LAN8720A PHY costs $1.29:
https://www.microchip.com/en-us/product/ENC424J600 https://www.microchip.com/en-us/product/LAN8720A
Meanwhile a RP2040 only costs $0.70:
https://www.digikey.com/en/products/detail/raspberry-pi/SC0914-13/14306010?s=N4IgTCBcDaIEoAUwAYAsyQF0C%2BQ
Having support for a software MAC would bring down the costs of projects that need Ethernet nicely, without resorting to the
limitations of the TCP offload engine in thenot much cheaper W5500 (Edit: I learned after posting this that the W5500’s TCP Offload Engine is not used by Nuttx):https://www.digikey.com/en/products/detail/wiznet/W5500/4425702
The main downside of the software MAC in the linked GitHub project is that the controller needs to run at a multiple of 50MHz, and must run at 100MHz or higher, when the RP2040’s stock clock speed is documented as being 133MHz, but is 125MHz at boot. The downside of running it at either 100MHz or 150MHz (or higher) is probably more than worth the reduction in BOM costs.