netFPGA on USB2

Robert Edwards

Big picture of the clustering project

  • Low power / low cost clustering
  • Clustering with commodity hardware
  • Cluster SoC

USB and networking

  • usbnet kernel module
  • mostly 1001000
  • USB 2.0 can get 480Mbps raw speed
  • with USB2, USB2 is the bottle neck, not 1000base-t
  • usb 2 has 125usec latency
  • Bulk usb transfer type used for most network adapters, uses the spare usb capacity
  • 93 to 4 Ethernet frames into each usb 2 microframe
    • USB NCM (Network Communications Model) to pack Ethernet into USB microframes

USB 2 GigE Switch 1

  • 1 x Gigabit Ethernet up port (with PoE)
  • 4-8 USB 2.0 devise
  • standard Ethernet learning switch fabric
  • 4x USB 2.0 ports will saturate a gigabit port
  • 4x Tegra 2s
  • Requires level convertors from 3.3 to 2.5v logic
  • Test with two USB clocked at 41.66MHz, 83.33MB/s
  • Boards fab’d by SeeedStudios
  • Eagle for design CAD for version 0.1
  • gEDA for version 0.2 and will be for 0.3
  • Simulate AX88178 driver to save on building another driver


-Firmware and designs in BSD style license -The Xilinx PCI fpga requires Xilinx IP - Multiplex 4 MAC queues and 4 PCI hosts queues through single 64 bit datapath - trivial to replace with USB - Realigns ethernet frames