Simplest NIC on the market

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
User avatar
IanSeyler
Member
Member
Posts: 326
Joined: Mon Jul 28, 2008 9:46 am
Location: Ontario, Canada
Contact:

Simplest NIC on the market

Post by IanSeyler »

What is the simplest PCI NIC chipset on the market today (from a driver development standpoint)?

We would like to get network support in our OS as soon as possible. The OS is written in x86-64 assembly so the driver would need to be written in Assembly as well. We are trying to build a cluster of PC's running our OS to test parallel number crunching.

We want to work with Ethernet frames only (No TCP/IP) and only need a driver that can send a packet and receive a packet. Ethernet seems like the best bet to connect PC's together as it is more common (and cheaper) than Infiniband. Are there any other simple PC to PC interconnects out there?

Thanks,
-Ian
BareMetal OS - http://www.returninfinity.com/
Mono-tasking 64-bit OS for x86-64 based computers, written entirely in Assembly
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: Simplest NIC on the market

Post by Combuster »

ReturnInfinity wrote:Are there any other simple PC to PC interconnects out there?
Serial port. Can't get much simpler than that :D
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
StephanvanSchaik
Member
Member
Posts: 127
Joined: Sat Sep 29, 2007 5:43 pm
Location: Amsterdam, The Netherlands

Re: Simplest NIC on the market

Post by StephanvanSchaik »

Hi,

As far as I know two solutions would be either RTL8139 (and/or perhaps the RTL8169) or the NE2000. Since those have some great articles in the Wiki and even public driver specifications/manuals. Other than that I can actually say that it is easy to write drivers for most NICs such as the RT2570, since NICs themselves are pretty straightforward (especially when comparing them to other hardware).


Regards,
Stephan J.R. van Schaik.
User avatar
IanSeyler
Member
Member
Posts: 326
Joined: Mon Jul 28, 2008 9:46 am
Location: Ontario, Canada
Contact:

Re: Simplest NIC on the market

Post by IanSeyler »

Combuster wrote:Serial port. Can't get much simpler than that :D
Looking for something that can link more than 2 PC's together. I think Ethernet is only real and cheap option. So what hardware is the simplest to code for?

Image

The "Master Controller" would be probably be running Linux. The controller will dispatch jobs to the nodes and collect the results.

-Ian
BareMetal OS - http://www.returninfinity.com/
Mono-tasking 64-bit OS for x86-64 based computers, written entirely in Assembly
User avatar
IanSeyler
Member
Member
Posts: 326
Joined: Mon Jul 28, 2008 9:46 am
Location: Ontario, Canada
Contact:

Re: Simplest NIC on the market

Post by IanSeyler »

Thanks for the info Stephan. I'll look into those.

-Ian
BareMetal OS - http://www.returninfinity.com/
Mono-tasking 64-bit OS for x86-64 based computers, written entirely in Assembly
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: Simplest NIC on the market

Post by Combuster »

ReturnInfinity wrote:
Combuster wrote:Serial port. Can't get much simpler than that :D
Looking for something that can link more than 2 PC's together.
Two serial ports? :mrgreen:
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
StephanvanSchaik
Member
Member
Posts: 127
Joined: Sat Sep 29, 2007 5:43 pm
Location: Amsterdam, The Netherlands

Re: Simplest NIC on the market

Post by StephanvanSchaik »

Combuster wrote:
ReturnInfinity wrote:
Combuster wrote:Serial port. Can't get much simpler than that :D
Looking for something that can link more than 2 PC's together.
Two serial ports? :mrgreen:
Now you make me laugh.


Regards,
Stephan J.R. van Schaik.
User avatar
Firestryke31
Member
Member
Posts: 550
Joined: Sat Nov 29, 2008 1:07 pm
Location: Throw a dart at central Texas
Contact:

Re: Simplest NIC on the market

Post by Firestryke31 »

StephanVanSchaik wrote:
Combuster wrote:
ReturnInfinity wrote:Looking for something that can link more than 2 PC's together.
Two serial ports? :mrgreen:
Now you make me laugh.


Regards,
Stephan J.R. van Schaik.
Speakers and Microphones? Then even you can participate in communications! You'd have to develop some kind of auditory communications protocol, perhaps linking different sounds to form a symbol of some kind, maybe called a "word." Then string multiple "words" together to communicate data in a structure called a "sentence" or something like that. Good luck finding something existing that's similar to that a human could understand, though.
Owner of Fawkes Software.
Wierd Al wrote: You think your Commodore 64 is really neato,
What kind of chip you got in there, a Dorito?
User avatar
JackScott
Member
Member
Posts: 1032
Joined: Thu Dec 21, 2006 3:03 am
Location: Hobart, Australia
Mastodon: https://aus.social/@jackscottau
GitHub: https://github.com/JackScottAU
Contact:

Re: Simplest NIC on the market

Post by JackScott »

Why not two serial ports? It's a plausible suggestion. With two serial ports on each machine, it would be trivial to implement a ring-topology network. You have yet to specify a parameter that would rule this suggestion out.

My vote is on the RTL8139. They are absolutely everywhere, cheap as chips, and well documented.
User avatar
Owen
Member
Member
Posts: 1700
Joined: Fri Jun 13, 2008 3:21 pm
Location: Cambridge, United Kingdom
Contact:

Re: Simplest NIC on the market

Post by Owen »

Probably one of the simplest NICs to use is the ENC28J60.

I don't think that's the answer you were after, though...
User avatar
IanSeyler
Member
Member
Posts: 326
Joined: Mon Jul 28, 2008 9:46 am
Location: Ontario, Canada
Contact:

Re: Simplest NIC on the market

Post by IanSeyler »

RTC8139 it is then! Thanks everyone.

Owen, would you need a PIC (like the arduino) to interface between a PC and this network adapter? Or could you plug it directly into a serial port?

I wouldn't mind doing a "roll-your-own" network interface.

-Ian
BareMetal OS - http://www.returninfinity.com/
Mono-tasking 64-bit OS for x86-64 based computers, written entirely in Assembly
User avatar
Owen
Member
Member
Posts: 1700
Joined: Fri Jun 13, 2008 3:21 pm
Location: Cambridge, United Kingdom
Contact:

Re: Simplest NIC on the market

Post by Owen »

ReturnInfinity wrote:RTC8139 it is then! Thanks everyone.

Owen, would you need a PIC (like the arduino) to interface between a PC and this network adapter? Or could you plug it directly into a serial port?

I wouldn't mind doing a "roll-your-own" network interface.

-Ian
You could hack it up to a parallel port pretty easily and bit bang it, but it wouldn't be fast! It wouldn't connect to a serial port - SPI is a synchronous protocol, while the UART is asynchronous (as "Universal Asynchronous Receiver Transmitter") should tell you.

Now, it would be fun to get one of the PIC32s with built in USB and 10/100 Ethernet MAC and build ones own USB to Ethernet adaptor, or even serial to Ethernet adaptor... Could do it in two chips (Need to add an Ethernet PHY - the ENC28J60 has one integrated) [or three for the serial case - voltage translation]

There are prebuilt Serial to Ethernet devices, with built in IP stacks - look up the Lantronix X-Port. I believe they do Wi-Fi ones too.
Post Reply