Emu: Rapid FPGA Prototyping of Network Services in C#

Slides:



Advertisements
Similar presentations
Nios Multi Processor Ethernet Embedded Platform Final Presentation
Advertisements

© 2003 Xilinx, Inc. All Rights Reserved Course Wrap Up DSP Design Flow.
Presenter MaxAcademy Lecture Series – V1.0, September 2011 Dataflow Programming with MaxCompiler.
Berlin – November 10th, 2011 NetFPGA Programmable Networking for High-Speed Network Prototypes, Research and Teaching Presented by: Andrew W. Moore (University.
StreamBlade SOE TM Initial StreamBlade TM Stream Offload Engine (SOE) Single Board Computer SOE-4-PCI Rev 1.2.
NAT Implementation for the NetFPGA Platform Omar Choudary and David Miller University of Cambridge Computer Laboratory.
MotoHawk Training Model-Based Design of Embedded Systems.
Graduate Computer Architecture I Lecture 15: Intro to Reconfigurable Devices.
Traffic Management - OpenFlow Switch on the NetFPGA platform Chun-Jen Chung( ) SriramGopinath( )
Application of NetFPGA in Network Security Hao Chen 2/25/2011.
1-1 Embedded Software Development Tools and Processes Hardware & Software Hardware – Host development system Software – Compilers, simulators etc. Target.
Trend towards Embedded Multiprocessors Popular Examples –Network processors (Intel, Motorola, etc.) –Graphics (NVIDIA) –Gaming (IBM, Sony, and Toshiba)
XUP Virtex-5 Development System January XUP Virtex52 Introducing XUPV5-LX110T A powerful and versatile platform packaged and priced for Academia!
Performed by: Yevgeny Kliteynik Ofir Cohen Instructor: Yevgeny Fixman המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
System Architecture A Reconfigurable and Programmable Gigabit Network Interface Card Jeff Shafer, Hyong-Youb Kim, Paul Willmann, Dr. Scott Rixner Rice.
CCNA 1 Module1. Objectives Internet Connections Physical – NIC card to connect to local net Logical – Use a standard set of protocols (TCP/IP) Applications.
A Flexible Architecture for Simulation and Testing (FAST) Multiprocessor Systems John D. Davis, Lance Hammond, Kunle Olukotun Computer Systems Lab Stanford.
© 2011 Xilinx, Inc. All Rights Reserved Intro to System Generator This material exempt per Department of Commerce license exception TSU.
Out-of-Order OpenRISC 2 semesters project Semester A: Implementation of OpenRISC on XUPV5 board Final A Presentation By: Vova Menis-Lurie Sonia Gershkovich.
Aug 20 th, 2002 Sigcomm Education Workshop 1 Teaching tools for a network infrastructure teaching lab The Virtual Router and NetFPGA Sigcomm Education.
Out-of-Order OpenRISC 2 semesters project Semester A: Implementation of OpenRISC on XUPV5 board Midterm Presentation By: Vova Menis-Lurie Sonia Gershkovich.
Silicon Building Blocks for Blade Server Designs accelerate your Innovation.
Traffic Management - OpenFlow Switch on the NetFPGA platform Chun-Jen Chung( ) Sriram Gopinath( )
RiceNIC: A Reconfigurable and Programmable Gigabit Network Interface Card Jeff Shafer, Dr. Scott Rixner Rice Computer Architecture:
GBT Interface Card for a Linux Computer Carson Teale 1.
Automated Design of Custom Architecture Tulika Mitra
Research on Reconfigurable Computing Using Impulse C Carmen Li Shen Mentor: Dr. Russell Duren February 1, 2008.
Linux development on embedded PowerPC 405 Jarosław Szewiński.
GRECO - CIn - UFPE1 A Reconfigurable Architecture for Multi-context Application Remy Eskinazi Sant´Anna Federal University of Pernambuco – UFPE GRECO.
Array Synthesis in SystemC Hardware Compilation Authors: J. Ditmar and S. McKeever Oxford University Computing Laboratory, UK Conference: Field Programmable.
1 Abstract & Main Goal המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory The focus of this project was the creation of an analyzing device.
Mahapatra-Texas A&M-Fall'001 How to plan on project work? An attempt to consolidate your thought to gear up project activities.
By V. Koutsoumpos, C. Kachris, K. Manolopoulos, A. Belias NESTOR Institute – ICS FORTH Presented by: Kostas Manolopoulos.
An Architecture and Prototype Implementation for TCP/IP Hardware Support Mirko Benz Dresden University of Technology, Germany TERENA 2001.
BridgePoint Integration John Wolfe / Robert Day Accelerated Technology.
4/19/20021 TCPSplitter: A Reconfigurable Hardware Based TCP Flow Monitor David V. Schuehler.
Hot Interconnects TCP-Splitter: A Reconfigurable Hardware Based TCP/IP Flow Monitor David V. Schuehler
Design Criteria and Proposal for a CBM Trigger/DAQ Hardware Prototype Joachim Gläß Computer Engineering, University of Mannheim Contents –Requirements.
Lecture 12: Reconfigurable Systems II October 20, 2004 ECE 697F Reconfigurable Computing Lecture 12 Reconfigurable Systems II: Exploring Programmable Systems.
Project Description. NetFGPA-based Virtual Router Implement a Virtual Router with using NetFPGA Box. an open source hardware and software platform for.
OpenFlow MPLS and the Open Source Label Switched Router Department of Computer Science and Information Engineering, National Cheng Kung University, Tainan,
Somervill RSC 1 125/MAPLD'05 Reconfigurable Processing Module (RPM) Kevin Somervill 1 Dr. Robert Hodson 1
Multi-objective Topology Synthesis and FPGA Prototyping Framework of Application Specific Network-on-Chip m Akram Ben Ahmed Xinyu LI, Omar Hammami.
3/12/07CS Visit Days1 A Sea Change in Processor Design Uniprocessor SpecInt Performance: From Hennessy and Patterson, Computer Architecture: A Quantitative.
CoDeveloper Overview Updated February 19, Introducing CoDeveloper™  Targeting hardware/software programmable platforms  Target platforms feature.
Cisco Routers Routers collectively provide the main feature of the network layer—the capability to forward packets end-to-end through a network. routers.
Implementing RISC Multi Core Processor Using HLS Language - BLUESPEC Liam Wigdor Instructor Mony Orbach Shirel Josef Semesterial Winter 2013.
October S T A N F O R D U N I V E R S I T Y A Quick Update for GENI Engineering Conference (GEC3) - Oct 30, 2008 John W. Lockwood and the NetFPGA.
M. Bellato INFN Padova and U. Marconi INFN Bologna
NFV Compute Acceleration APIs and Evaluation
Lab 1: Using NIOS II processor for code execution on FPGA
Dynamo: A Runtime Codesign Environment
CA Final Project – Multithreaded Processor with IPC Interface
A Streaming FFT on 3GSPS ADC Data using Core Libraries and DIME-C
SCSI over PCI Express (SOP) use cases
GPM Spacecraft Ethernet Study
Informational Tutorial
Figure 1 PC Emulation System Display Memory [Embedded SOC Software]
RECONFIGURABLE PROCESSING AND AVIONICS SYSTEMS
Objective Understand the concepts of modern operating systems by investigating the most popular operating system in the current and future market Provide.
A Quick Update for GENI Engineering Conference (GEC3) - Oct 30, 2008
Embedded systems, Lab 1: notes
Shenghsun Cho, Mrunal Patel, Han Chen, Michael Ferdman, Peter Milder
HIGH LEVEL SYNTHESIS.
P4FPGA : A Rapid Prototyping Framework for P4
Star Bridge Systems, Inc.
Objective Understand the concepts of modern operating systems by investigating the most popular operating system in the current and future market Provide.
NetFPGA - an open network development platform
Reconfigurable Computing (EN2911X)
Reconfigurable Computing (EN2911X)
Presentation transcript:

Emu: Rapid FPGA Prototyping of Network Services in C# Salvator Galea*, Nik Sultana*, Pietro Bressana†, David Greaves*, Robert Soulé†, Andrew W. Moore*, Noa Zilberman* *University of Cambridge, †Università della Svizzera italiana DATE17 : Design and Automation in Europe

Emu : Accelerating Network Services Goals Accelerate network services C# coding Compile to multiple targets Accelerate development Improve performance Rapid prototyping Implemented examples Memcached server NAT DNS server L2 learning switch Ping (ICMP, TCP)

Kiwi Compiler Kiwi is a High-Level Synthesis (HLS) system that: Generates FPGA designs from C# source code Targets scientific computing applications Kiwi supports: Multi-dimensional arrays Threading File-server I/O Object management Limited recursion Kiwi is developing a methodology for algorithm acceleration using parallel programming and the C# language. Specifically, Kiwi consists of a run-time library for hardware FPGA execution of algorithms expressed within C# and a compiler, KiwiC, that converts .NET bytecode into Verilog RTL for further compilation for FPGA execution. David Greaves, and Satnam Singh. "Distributing C# methods and threads over Ethernet-connected FPGAs using Kiwi." Formal Methods and Models for Codesign (MEMOCODE), 2011 9th IEEE/ACM International Conference on. IEEE, 2011.

for teaching and research. NetFPGA-SUME A line-rate, flexible, open-networking platform for teaching and research. Xilinx Virtex-7 690T 4 x 10Gbps Ethernet Ports 8 GB DDR3 SoDIMM 1800MT/s 27 MB QDRII+ SRAM, 500MHz x8 PCI Express Gen.3 18 x 13.1Gb/s additional serial links SATA connectors Micro-SD slot

Emu Framework C# Emu Framework provides L2 switch TCP ping ICMP echo NAT DNS Memcached Emu Framework provides A library to support network related high level programming A reference design which compiles into the NetFPGA-SUME main logical core Programming and networking abstractions to bus protocols, memory interfaces, and basic frame-handling functionalities x86 Simulation PAX .NET CIL Verilog code HW Tests SIM Tests

Emu: Evaluation Performance Comparison Between Services Running on a Host and Emu Based Services (written in C#) Comparison Between Emu Switch (written in C#), NetFPGA Reference Switch (written in Verilog) and P4FPGA Switch (written in P4), using 64B packets

Emu extends Debug capabilities Use Directed Packets to inspect the state of a device in the field Support extension points in the code Observe the program from that point Influence program state Example supported commands: Print, trace, count, (un)break,(un)watch, backtrace Implemented using an embedded controller and a program director

Acknowledgments

Comparison Between Different Representing Solutions Enabling Networking Services in Hardware