EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

Recommended Ethernet MAC/PHY?

Started by Randall Nortman September 8, 2005
Thanks to all who responded to the previous thread I started regarding
AVR+Nut/OS vs. ARM+Linux.  I have decided to go with an AVR (Mega128)
with external SRAM (32kB or 64kB, probably) and an external ethernet
MAC.  (I would still consider the AT91SAM7X, except that it doesn't
seem to be generally available yet.  If anybody knows where I can get
it, I'll give it a shot.)  For the OS and, more importantly, TCP/IP
stack, I'm still looking at Nut/OS, but have also expanded the options
to include Contiki and FreeRTOS (with uIP), or possibly just uIP with
no external OS.

But, there remains the question of which Ethernet chip to use.  I only
need 10Mbps, but I wouldn't mind running in 100Mbps mode.  (At 16
MIPS, I'm not going to be able to saturate even 10M, but it would be
nice to be able to put these things on a hub with 100Mbps nodes
without slowing everything to 10Mbps.  Some hubs can mix 10/100 right,
but not all.)  The RTL8019AS is apparently popular with hobbyists, but
it seems difficult to source (not carried by Digi-Key, for example).
Still, it seems like I can most easily find pre-written drivers for
this chip, so I wouldn't need to write my own.  (I've never written
Ethernet code, so I'm a little clueless about how it all works.)

Anybody have other recommendations?  My primary concerns are, in
priority order: (a) reliability, (b) getting the TCP/IP stack up and
running with a minimum of coding in one or all of the above-mentioned
OS environments, (c) minimizing the number of traces on the PCB, chip
footprint, and heat generation, and (d) being able to buy the chip
cheaply and reliably in small/moderate quantities (from half a dozen
for prototyping to a couple hundred for subsequent production).

Opinions on the three operating systems I mentioned (Nut/OS, Contiki,
FreeRTOS+uIP) would also be appreciated.  My primary concern here is
that it be as close to working out of the box (or rather, out of the
.tar.gz file) as possible.  It would also be nice to be able to
migrate easily to an ARM7 chip in the next generation.

And lastly, I don't suppose there are really a lot of differences, but
I'm also going to need to choose an external SRAM chip and one of
those shielded RJ45 jacks with integrated transformers.  If there are
any particular features I need to look for or gotchas in making these
selections, I'd appreciate a tip. ;)

TIA,

-- 
Randall
In article <fD0Ue.8951$_84.6027@newsread1.news.atl.earthlink.net>,
 Randall Nortman <usenet8189@wonderclown.com> wrote:

> But, there remains the question of which Ethernet chip to use. I only > need 10Mbps, but I wouldn't mind running in 100Mbps mode. (At 16 > MIPS, I'm not going to be able to saturate even 10M, but it would be > nice to be able to put these things on a hub with 100Mbps nodes > without slowing everything to 10Mbps. Some hubs can mix 10/100 right, > but not all.) The RTL8019AS is apparently popular with hobbyists, but > it seems difficult to source (not carried by Digi-Key, for example). > Still, it seems like I can most easily find pre-written drivers for > this chip, so I wouldn't need to write my own. (I've never written > Ethernet code, so I'm a little clueless about how it all works.)
If staying with AVR was a done deal then my top choice for grafting ethernet to the AVR was the Microchip ENC28J60. First I heard it was to ship in July, then August. http://www.edtp.com/ currently lists September 15. ENC28J60 has a lot of advantages, all on paper because the part isn't shipping. Small pin count. Easy SPI interface. Reasonable price. And will one day be available from every source currently selling PICs.
Randall Nortman wrote:
> But, there remains the question of which Ethernet chip to use. I only > need 10Mbps, but I wouldn't mind running in 100Mbps mode.
As you point out, running 10/100 let's you auto-negotiate the speed, making your product more compatible. You'll encounter some environments that require 100Mbps connections, even if the device doesn't call for it. It also avoids problems with duplex mis-match, which causes unreliable connections. (Negotiating to full-duplex yields a higher-performance connection too, though not a concern for you.) Look at the ASIX AX88796l 10/100 ISA chip. It uses a modified NE2000 driver (like the Realtek RTL8019AS). You can source proto boards from http://www.edtp.com (you'll find Mega128 drivers for the ASIX there too). You can buy in small quantities direct from the manufacturer ($175 for 25x, +$30 S&H and ~$45 T&T fee [wire transfer fee charged by your bank]). http://www.asix.com.tw However, it's QFP-128 footprint (slightly wider than the Mega128), it should run in 8-bit mode (but I haven't tried it); and it requires 5 address lines, 5 control lines, and 8/16 data lines. Pulls 95mA typical; runs cool to the touch. (Microchip's SPI controller is really the next step WRT fewer signal lines, but IIRC it also pulls 250mA at 10Mb.) For the jack, Bothhand NU1S041C-434 RJ-45 w/ magnetics & 3 LEDs is very popular. $3.50 each in tubes of 28 + $10 S&H from http://www.bothhandusa.com. (Some others are Delta, Pulse, Bel Fuse, HALO, MagJack, Tyco, Molex, etc.) HTH, Richard
David Kelly schrieb:

>> But, there remains the question of which Ethernet chip to use. I only >> need 10Mbps, but I wouldn't mind running in 100Mbps mode. (At 16 >> MIPS, I'm not going to be able to saturate even 10M, but it would be >> nice to be able to put these things on a hub with 100Mbps nodes >> without slowing everything to 10Mbps. Some hubs can mix 10/100 right, >> but not all.) The RTL8019AS is apparently popular with hobbyists, but >> it seems difficult to source (not carried by Digi-Key, for example). >> Still, it seems like I can most easily find pre-written drivers for >> this chip, so I wouldn't need to write my own. (I've never written >> Ethernet code, so I'm a little clueless about how it all works.) > > If staying with AVR was a done deal then my top choice for grafting > ethernet to the AVR was the Microchip ENC28J60. First I heard it was to > ship in July, then August. http://www.edtp.com/ currently lists > September 15. > > ENC28J60 has a lot of advantages, all on paper because the part isn't > shipping. Small pin count. Easy SPI interface. Reasonable price. And > will one day be available from every source currently selling PICs.
I would also think in that direction. Using "PC board mainstream" parts always have the risk that these probably become obsolete half a year after design-in. Chips that are targeted to industrial electronics normally have much longer lives. -- Dipl.-Ing. Tilmann Reh http://www.autometer.de - Elektronik nach Ma&#4294967295;.
Why the Mega128???

Let's look at silicon costs...

Mega 128 $8.00
SRAM	   $1.50
Mac Phy  $4.00
Ethernet Jack $1.95

Total Silicon 15.45


Freescale/Coldfire 5270 7.95 (We currently use the 150Mhz version $9.54)
512K Flash	            1.25
10/100 Enet Phy            1.50  
10/100  Etyhenet Jack   1.95
Total Silicon 	           12.65

I'd personally ad 2Mbytes of SDRAM to make things easier
Total Silicon with SDRAM $14.15

over $1.00  cheaper than the MEGA 128 solution.

This gives you a far more capable unit.
100Mhz 32 bit CPU,  512K flash ,2M bytes of SRAM, 3 uarts, CAN, I2C, SPI, 16 timers, 
10/100 Ethernet.

If you need A/D from the Mega then substitute a freescale 5282 for the CPU and Flash.

We offer turnkey ready to use modules based on this part
You can start your software development today.

We will sell you the design, hardware, software tcp, tools,. compiler linker debugger,
with full source etc..etc... . so you can produce your own modules for $24,500
This is a site license for an unlimited number of designs, with no royalties.
This price includes a design review of your first hardware design based on our 
design.
If you just wanted to produce a clone of our modules, the PCB designs are even included.

If you have realistic costing for your engineering time you would
be hard pressed to do a hardware design and port a tool set, RTOS and tcpip stack to
any design for 24K.

As a general comment, some people are scared by the word RTOS, it's there and it keeps all
the TCP/IP services running in the background, but for your own programming you don't need to
use it at all, just write your code in the way you are accustomed, a single threadof execution
with interrupts providing any necessary scheduleing.

See
http://www.netburner.com/products/processors/Mod5270.htm

and

http://www.netburner.com/products/licensing.htm

RTOS example:

http://www.netburner.com/projects/RtosVsInfiniteLoop.pdf


Paul




pbreed@netburner.com wrote:
> Why the Mega128??? > ...
It doesn't make sense with AVR, if you need ethernet.
> Freescale/Coldfire 5270 7.95 (We currently use the 150Mhz version $9.54) > ... > This gives you a far more capable unit. > 100Mhz 32 bit CPU, 512K flash ,2M bytes of SRAM, 3 uarts, CAN, I2C, SPI, 16 timers, > 10/100 Ethernet. > > If you need A/D from the Mega then substitute a freescale 5282 for the CPU and Flash.
AT91SAM7A,7S or 7X are just as good. AT91SAM7X seems to be your best choice. If you are concerned about 7X availabilty, goes with 7A or 7S first. If you are starting your project soon, perhaps you can get the 7X when you are ready for it. Switching from 7A or 7S to 7X is a lot easier than from AVR to ARM.
On 2005-09-09, linnix <me@linnix.info-for.us> wrote:
> > pbreed@netburner.com wrote: >> Why the Mega128??? >> ...
Because it's what I'm familiar with. Bad reason.
> It doesn't make sense with AVR, if you need ethernet.
Upon further investigation, I have come to agree.
>> Freescale/Coldfire 5270 7.95 (We currently use the 150Mhz version $9.54) >> ... >> This gives you a far more capable unit. >> 100Mhz 32 bit CPU, 512K flash ,2M bytes of SRAM, 3 uarts, CAN, I2C, SPI, 16 timers, >> 10/100 Ethernet. >> >> If you need A/D from the Mega then substitute a freescale 5282 for the CPU and Flash. > > AT91SAM7A,7S or 7X are just as good. > > AT91SAM7X seems to be your best choice. If you are concerned about 7X > availabilty, goes with 7A or 7S first. If you are starting your > project soon, perhaps you can get the 7X when you are ready for it. > Switching from 7A or 7S to 7X is a lot easier than from AVR to ARM.
I am convinced. I've been looking into the availability of the AT91SAM7X, and Atmel claims the distributors will have them Oct 1. I've got calls into the distributors to see if that's for real. Only Digi-Key has responded so far, and the responses was something along the lines of "Huh? Ain't never heard of it." We'll see if anybody else comes through. I can probably wait until mid-October to get the part. But then I have another problem -- I need a cheap Ethernet PHY (no MAC, since the 7X has on-chip MAC). And the problem is that the low-volume suppliers I usually use (Digi-Key and Mouser) have pretty poor selections of PHYs. (Digi-Key is charging ~$8+ for a simple 10/100 PHY... seems outrageous.) In fact, most of the parts I've been looking for during this project (which is a bit more complex than things I've undertaken before) are expensive or non-existant in Digi-Key's catalog, so perhaps it's time I branch out to other suppliers -- any suggestions (of suppliers and/or parts)? Thanks, -- Randall
>I can probably wait until mid-October to get the part. But then I >have another problem -- I need a cheap Ethernet PHY (no MAC, since the >7X has on-chip MAC). And the problem is that the low-volume suppliers >I usually use (Digi-Key and Mouser) have pretty poor selections of >PHYs. (Digi-Key is charging ~$8+ for a simple 10/100 PHY... seems >outrageous.) In fact, most of the parts I've been looking for during >this project (which is a bit more complex than things I've undertaken >before) are expensive or non-existant in Digi-Key's catalog, so >perhaps it's time I branch out to other suppliers -- any suggestions >(of suppliers and/or parts)? >
How many are you trying to build? (Do you just need samples or 100.1000.10000?) We have had good luck with the Davicom DM9161 Probably at least a 100pc minimum buy. Micrel has some new very low cost PHY chips as well... you could probably get dsitributor samples.... (We are just starting to use some of these) Lastly try the DP83847ALQA56A-ND $5.70 Q1 from digikey. It is a fine PHY, but be aware that placing the LLP56 package on a PCB is a bitch. Paul
On 2005-09-09, pbreed@netburner.com <pbreed@netburner.com> wrote:
>>I can probably wait until mid-October to get the part. But then I >>have another problem -- I need a cheap Ethernet PHY (no MAC, since the >>7X has on-chip MAC). And the problem is that the low-volume suppliers >>I usually use (Digi-Key and Mouser) have pretty poor selections of >>PHYs. (Digi-Key is charging ~$8+ for a simple 10/100 PHY... seems >>outrageous.) In fact, most of the parts I've been looking for during >>this project (which is a bit more complex than things I've undertaken >>before) are expensive or non-existant in Digi-Key's catalog, so >>perhaps it's time I branch out to other suppliers -- any suggestions >>(of suppliers and/or parts)? >> > > How many are you trying to build? > (Do you just need samples or 100.1000.10000?)
Initial prototype run of 5 units, then a first production run of about 50, and then (if all goes well), subsequent runs of 100-300. The larger runs are easy, but how do I get small quantities for prototyping?
> We have had good luck with the Davicom DM9161 > Probably at least a 100pc minimum buy.
I've seen Davicom mentioned, so I've been looking for anybody who carries Davicom, with no luck... where can I get them in the US?
> Micrel has some new very low cost PHY chips as well... > you could probably get dsitributor samples.... > (We are just starting to use some of these) > > Lastly try the DP83847ALQA56A-ND $5.70 Q1 from digikey. > It is a fine PHY, but be aware that placing the LLP56 package on a > PCB is a bitch.
Yeah, the prototypes will be hand-soldered by yours truly, so leadless packages are probably not such a good idea. How do the pros handle prototype assembly of things that can't be hand-soldered? I'm not a pro, just an amateur hack who got talked into doing this project. I guess that makes me a pro now, but I don't feel like one. In particular, trying to navigate the sea of manufacturers, parts, and distributors is getting a little overwhelming. -- Randall
Randall Nortman wrote:
> ... > Yeah, the prototypes will be hand-soldered by yours truly, so leadless > packages are probably not such a good idea. How do the pros handle > prototype assembly of things that can't be hand-soldered?
We simply order the prototype board with the part mounted. Dm9161AE (TQFP 48) is not a problem for the prototype shop. For productions, they are $2 to $4 each, depends on qty.

The 2024 Embedded Online Conference