Zedboard Multiport Ethernet

The Zedboard uses Xilinx’s Zynq, which is a combination ARM CPU and FPGA. [Jeff Johnson] recently posted an excellent two-part tutorial covering using a Zedboard with multiple Ethernet ports. The lwIP (light-weight Internet Protocol) stack takes care of the software end.

Vivado is Xilinx’s software for configuring the Zynq (among other chips), and the tutorial shows you how to use it. The Ethernet PHY is an FPGA Mezzanine Card (FMC) with four ports that is commercially available. The project uses VHDL, but there is no VHDL coding involved, just the use of canned components.

The real issue when using an FPGA and a CPU is the interface between the processor and the FPGA circuitry. In this case, the ARM standard AXI bus does this task, and the Ethernet component properly interfaces to that bus. The IP application in the second part of the post is an echo server.

We’ve seen the Zynq used in flying machines and also in a music synthesizer. Although this project doesn’t use any Verilog or VHDL that you create, it is still a great example of configuring using Vivado and using common components in a design.

9 thoughts on “Zedboard Multiport Ethernet

    1. Without looking at the design files (over my head) i guess you can make a hardware accelerated firewall/security router. Imagine you can jugde if a packet needs to be forwarded or dropped at wirespeed.

      Anothr use would be vpn accellerator or just the next IoT bomb ;)

  1. Well, this is exactly what I was looking for a couple of days ago! Albeit a bit on the pricy side.
    The application I needed a full performance multi-ethernet with a connection to an ARM controller, was so that we could test the routing protocols of our picotcp tcp/ip stack at full speeds. In a way, I see this platform mainly for performance testing or as the basis for a very performant device.

    “The project uses VHDL, but there is no VHDL coding involved, just the use of canned components.”

    seems a bit of an understatement if you have a look at the wiring scheme between all the components. That’s a whole lot of point and clicking there!

  2. We use the zynq platform at work and it’s very nice to work with, considering that it has 2 ARM cores, powerful FPGA and a nice selection of peripherals (i2c,spi,mac,etc). I started doing serious stuff with it just a few months ago (e.g. robotics control) and it’s really fun to go from the fpga, run linux on it and control different peripherals ( motors, i2c sensors, etc). It’s a bit of a learning curve but it’s well worth it. Curiously I’m also at the moment working on extending ethernet stuff on the zynq, so this article is very educational.

  3. It’s not just slightly expensive. The Zedboard is $475 and the Ethernet breakout is another $495. The best part of $1000 for 5 Ethernet ports?
    As an alternative, the Terasic DE1-SOC board is less than 1/2 the price of the Zedboad and is more capable (more than double the RAM, more FPGA resources etc). Add DP83848 based breakout boards ($12 each from eBay) for 10/100 phys and you should be able to do the same thing for 1/4 of the cost.

    1. His setup will do gigabit. A good use case would be a gigabit network tap with two ports pass through and another two mirroring traffic in each direction. While that’s easily done with high speed analog circuits for 10/100, gigabit duplexes each pair so a digital solution would be required.

Leave a Reply to Mike Lu Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.