1
\$\begingroup\$

I am trying to design a ethernet network card that will plug into a PCIe slot and have 2 etherenet ports visible to the user that are connected by a unmanaged layer 2 switch.

My architecture thought is to get a PCIe ethernet controller and connect that to a switch, and connect 2 ports of the switch to the output of the card.

Is there a better way to do this that would not involve having both the controller and switch IC? I know I could have a 2 port controller and have a software ethernet bridge, but I don't want to put the load of that on the OS.

Additional Info: I need gigabit speeds, but I don't think that should not have an effect on the architecture.

\$\endgroup\$
  • \$\begingroup\$ There's one of the ICs in the KSZ88 line with one MII and two PHYs for 100 Mbit - might be useful for you \$\endgroup\$ – Jan Dorniak Oct 20 '18 at 21:24
  • \$\begingroup\$ Something like that looks like it could handle the switch side, but I would sill need to get PCIe to MII \$\endgroup\$ – Eric Johnson Oct 20 '18 at 21:51
  • \$\begingroup\$ Can't help you with that unfortunately. But it seems like a regular PCIe Ethernet chip. Most of them likely unavailable under 100k \$\endgroup\$ – Jan Dorniak Oct 20 '18 at 21:58
  • \$\begingroup\$ Ethernet controller chips with multiple ethernet ports are quite common. \$\endgroup\$ – mj6174 Oct 20 '18 at 22:51
  • \$\begingroup\$ My main question was if there was a better way to do it than having controller chip and the switch chip \$\endgroup\$ – Eric Johnson Oct 21 '18 at 0:34
1
\$\begingroup\$

Is there a better way to do this that would not involve having both the controller and switch IC? I know I could have a 2 port controller and have a software Ethernet bridge, but I don't want to put the load of that on the OS.

An FPGA would be one other way to implement a switch in firmware and meet your no software load requirement. There are some unman-aged switch IP cores available from Xilinx and others.

I've seen some neat things done with FPGAs and ethernet. One is a company that does an ethernet bridge when the computer is off with two phys and an FPGA for a high reliability application. When the computer turns on and the software is loaded the FPGA forwards the packets to the PC, that way the packets are always going through. When off the card functions like a physical Ethernet bridge.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.