Field-programmable Port Extender (FPX) August 2001 Workshop. John Lockwood, Assistant Professor
|
|
- Arabella Blankenship
- 6 years ago
- Views:
Transcription
1 Field-programmable Port Extender (FPX) August 2001 Workshop John Lockwood, Assistant Professor Washington University Department of Computer Science Applied Research Lab 1 Brookings Drive Saint Louis, MO Supported by: NSF ANI and Xilinx Corp. FPX Network Platform 1 Workshop Objectives Learn to accelerate network processing with reprogrammable hardware Understand System-On-Chip design Perform Hardware/Software Co-design Obtain hands-on experience with the Field Programmable Port Extender (FPX) FPX Network Platform 2
2 Outline Motivation Hardware enables packet processing at link speed FPGAs provide flexibility for dynamically reconfiguration Networks can be extended with FPGAs to provide enhanced functionality and performance. Research Results Field programmable Port Extender (FPX) allows modules to be dynamically installed in a network. FPX serves as an open platform for rapid prototype of firewall and router plug-in modules Courses and Workshops held at Washington University to develop new System-On-Chip networking modules FPX Network Platform 3 Workshop Activities Integrate FPX Infrastructure Components SDRAM Memory Controller Internet Protocol Wrappers Operate FPX Software Tools NCHARGE Control Software PARBIT FPGA Tools Implement Networking s on the FPX Cell processing module in VHDL Packet Processing KCPSM Active Networking FPX Network Platform 4
3 FPX Workshop Agenda: Times and Location Wednesday, Aug 15, am: Breakfast 5th floor Jolley Atrium 9am-Noon: Session I Sever 201 Lab Lunch WashU Campus 1pm-5pm: Session II Sever 201 Lab Thursday, Aug 16, am: Breakfast 5 th floor Jolley Atrium 9am-Noon: Session III Sever 201 Lab Lunch 5th floor Jolley Atrium 1pm-5pm: Session IV Sever 201 Lab On-line Agenda: FPX Network Platform 5 Building Networks with Reprogrammable hardware FPX Network Platform 6
4 S R S R Technology Options for Evolvable Internet Hardware Reprogrammable Hardware Fully Reprogrammable Flexibility Microprocessor Network Processors High Performance ASIC Performance FPX Network Platform 7 Reprogrammable Device Configuration G1 G2 G3 G4 H1 F1 F2 F3 F4 CLB 4 LUT G 4 LUT F 3 LUT H Din M M M M Clk D D Q Q YQ Y XQ X CLB : Primitive element of FPGA GRM Local Routing Routing : Interconnection of Blocks CLB PIP 3rd Generation LUT-based FPGA FPGA : Matrix of CLBs and Routing s Pad Routing CLB Matrix I/O... Macro Block (up, Mem) FPX Network Platform 8
5 The FPX Network Platform FPX Network Platform 9 Configuration of Network Packet Processor Network Packets Line Card OC3/ OC12/ OC48 FPX Fieldprogrammable Port Extender Line Card OC3/ OC12/ OC48 Network Packets Packet processing hardware performs: Packet classification Packet forwarding Address Translation modification Packet buffering Active Networking (Application-level data processing) FPX Network Platform 10
6 Field Programmable Port Extender FPX Network Platform 11 Configuration of Internet Router Network Packets Network Packets Line Card OC3/ OC12/ OC48 Line Card OC3/ OC12/ OC48 FPX FPX Fieldprogrammable Port Extender Fieldprogrammable Port Extender Additionally, Router interface performs: Internet route lookup Traffic policing and shaping IPP IPP IPP IPP Gigabit Switch Fabric OPP OPP OPP OPP FPX Network Platform 12
7 Port Processing at edge of Gigabit Switch Original Network Switch Line card connects to Gigabit switch backplane Line Card Optics Fiber Gigabit switch backplane VRM SDRAMs FPX-Enhanced Router Line card connects to Gigabit switch backplane Line Card FPX Fiber Optics NID SRAMs Gigabit switch backplane VRM SDRAMs FPX Network Platform 13 Complete Router Platform FPX Network Platform 14
8 Combination Router Hardware and Software Line Card OC3/ OC12/ OC48 SPC Smart Port Card FPX Fieldprogrammable Port Extender IPP IPP WUGS OPP OPP Line Card OC3/ OC12/ OC48 SPC Smart Port Card FPX Fieldprogrammable Port Extender IPP IPP Gigabit Switch Fabric OPP OPP Implement link speed opertions on hardware Implement higher-level functions in software Migrate functionality on the critical path FPX Network Platform 15 Port Configuration WUGS FPX SPC Intel Embedded To/From other network ports SDRAM SRAM SelectMap Programming Interface Control Cell Processor Program SRAM Error Check Circuit temp ccp Four Port Switch NID SDRAM SRAM Synch, Buffered Interface Virtual Circuit Lookup Table Asynchronous Interface Pentium North Bridge PCI Bus PCI Interface Three Port Switch APIC SRAM South Bridge Line Card Switching Hardware-based Packet Processing Software-based Packet Processing FPX Network Platform 16
9 The FPX Architecture FPX Network Platform 17 Architecture of the FPX Large Xilinx FPGA Attaches to SRAM and SDRAM Reprogrammable over network Provides two user-defined Interfaces SDRAM SRAM SDRAM SRAM NID Provides Utopia Interfaces between switch & line card Forwards cells to Programs Program SRAM Switch LineCard NID FPX Network Platform 18
10 Field Programmable Port Extender NID : Network Interface Device : Reprogrammable Application Device FPX Network Platform 19 FPX SRAM Provide low latency for fast table-lookups Zero Bus Turnaround (ZBT) allows back-to-back read / write operations every 10ns Dual, Independent Memories 36-bit wide bus FPX Network Platform 20
11 FPX SDRAM Dual, independent SDRAM memories 64-bit wide, 100 MHz 64MByte / : 128 Mbyte total [expandable] Burst-based transactions [1-8 word transfers] Latency of 14 cycles to Read/Write 8-word burst FPX Network Platform 21 Hardware Device FPX Network Platform 22
12 FPX Interface FPX Network Platform 23 FPX Interfaces Provides Well defined Interface Utopia-like 32-bit fast data interface Flow control allows back-pressure Flow Routing Arbitrary permutations of packet flows through ports Dynamically Reprogrammable Other modules continue to operate even while new module is being reprogrammed Memory Access Shared access to SRAM and SDRAM Request/Grant protocol FPX Network Platform 24
13 Reprogrammable Application Device () SDRAM SRAM SDRAM SRAM Network Interfaces to NID Spatial Re-use of FPGA Resources s implemented using FPGA logic logic can be individually reprogrammed Shared Access to off-chip resources Memory Interfaces to SRAM and SDRAM Common path to send and receive data FPX Network Platform 25 Network Hardware Interface D_MOD_IN[31:0] SOC_MOD_IN TCA_MOD_OUT fpx_module.vhd SRAM_GR SRAM_D_IN[35:0] SDRAM_GR SDRAM_DATA[63:0] CLK RESET_L ENABLE_L Interface FPX Network SRAM Interface SDRAM Interface Interface D_MOD_OUT[31:0] SOC_MOD_OUT TCA_MOD_IN READY_L SRAM_REQ SRAM_D_OUT[35:0] SRAM_ADDR[17:0] SRAM_WR_RD SDRAM_RQ SDRAM_EN SDRAM_BL[4:0] SDRAM_ADDR[26:0] SDRAM_WR_RD SDRAM_OP_FIN FPX Network Platform 26
14 Interface Cell I/O and Flow Control 32-bit wide UTOPIA-style interface w/ unique timing Off-chip Memory Access Arbitrated access to SRAM and SDRAM via standard interface Control (clock, reset, and reconfiguration control) FPX Network Platform 27 Infrastructure Services FPX Network Platform 28
15 Routing Traffic Flows Between s Traffic flows routed among Switch Line Card.Switch.Linecard NID Functions Check packets for errors ccp Process commands Control, status, & reprogramming Implement per-flow forwarding ccp Switch LineCard FPX Network Platform 29 Example NID Routing Configurations Hardware Bypass (Default) No s Installed One Installed One Installed Egress Processing Ingress Processing ccp NID Switch LineCard Default Flow Action (Bypass) ccp NID Switch LineCard Egress (SW) Processing (Per-flow Output Queueing) ccp NID Switch LineCard Ingress (LC) Processing (IP Routing) Ingress+Egress Loopback Chained Egress Processing ccp 0 NID Switch LineCard Full Processing (Packet Routing and Reassembly) ccp NID Switch LineCard Full Loopback Testing (System Test) ccp NID Switch LineCard Dual Egress Processing (Chained s) FPX Network Platform 30
16 NID Flow Entry Example I 45 d1 d2 d3 d4 One Installed 2 3 NID 0 1 ccp Switch LineCard Ingress (LC) Processing (IP Routing) Problem: Route flow on I 45 from Switch to Mod_sw Route Flow on I 45 from Mod_sw to LC Route Flow on I 45 from Linecard to Switch Solution I [45] = 1,3,X,0 FPX Network Platform 31 FPX Control : NCHARGE FPX Network Platform 32
17 HDR H OpCode PL1 PL2 PL3 PL4 PL5 PL6 PL7 PL8 PL9 PL10 PL11 Control Cell Format for 32/36 bit SRAM Memory Operations V V V GFC / VPI D D D H OpCode R R R F F F Sequence # I PAD ID V - Valid Command: 1 = Valid command, 0 = Invalid, EOC D - Device: 1 = Device 1, 0 = Device 0 R - Read or Write: 1 = Read, 0 = Write F - 32 or 36 bit: 1 = 36 bit, 0 = 32 bit ADDR(18:0) WORD 0 (31:0) WORD 1 (31:0) ADDR(18:0) WORD 0 (31:0) ADDR(18:0) WORD 0 WORD 1 WORD N CM DATA N/A 1 0 W0(35:32) W0(35:32) X C(7:5) PTI W1(35:32) N/A N/A CRC VPI = 0x000, I = 0x0023 (35) Control Cell OpCode = 0x14 SRAM Memory Operation OpCode = 0x15 SRAM Memory Operation Response ID = 0x00 Control Cell Processor 36 Bit format 2 Address 36 Bit format 1 Address 32 Bit format N Address Pictorial view of fpx_control interfaced with hardware Switch Controller Fpx_control {0-7}.{0/1} FPX Network Platform 33 Controlling the FPX Fip Memory Remote Manager Applications Basic Read Telnet WEB Send Fip Access CGI Basic Send Software Controller NCHARGE NCHARGE I 76 (NID), I 100 () I 115 (NID), I 123 () OC-3 Link (up to 32 Is) Washington University Gigabit Switch NID NID Methods of Communication - NCHARGE -Telnet - Web Interface / CGI - Basic_send - User Applications Software Plug-ins - Concepts - Functionality Emulation Nid_listener Rad_listener FPX Network Platform 34
18 Web Access to NCHARGE Web Access Provides: - Radio Button Interface - Allows user to submit commands using CGI scripts - Provides for Switch Reset - FPX Network Platform 35 FPX Control and Reconfiguration FPX Network Platform 36
19 SDRAM (backside) PCB Trace Density (backside) SDRAM 100MHz 62.5 MHz ccp Example: Write Configuration Memory Switch Controller generates command to write 32-byte data element to Configuration Memory Control Cell sent containing Memory Address and Switch Element routes control cell to FPX NID Element on FPX writes from Payload into Rad Configuration Memory Configuration Memory Switch Controller Control Cell VPI I = 0x34 H OPCODE Reserved CM PTI = 0 0 WUGS Switch Element WUGS Switch Backplane Connector OPPLC OPPLC OPP LC OPPLC OPPLC OPP LC OPPLC OPPLC SRAM 8Mbit ZBT SRAM 8Mbit ZBT Reprogrammable Application Device Virtex1000E fg680 Program FIFO OSC OSC VRM 2.5V (backside) NID EPROM NID Network Interface Device VRM 1.8V (backside) FPX OC3 / OC12 / OC48 Linecard Connector Sequence # CRC FPX Network Platform 37 Reprogramming Logic NID programs at boot from EPROM Switch Controller writes configuration memory to NID Bitfile for arrives transmitted over network via control cells Switch Controller issues {Full/Partial} reconfigure command NID reads config memory to program Performs complete or partial reprogramming of Switch Element OPP LC OPP LC OPP LC OPP LC OPP LC OPP LC OPP LC OPP LC WUGS Switch Backplane Connector SRAM 8Mbit ZBT SRAM 8Mbit ZBT SDRAM (backside) Reprogrammable Application Device Virtex1000E fg680 (backside) SDRAM PCB Trace Density VRM 2.5V (backside) NID Program FIFO EPROM OSC 100MHz OSC 62.5 MHz NID Network Interface Device VRM 1.8V (backside) OC3 / OC12 / OC48 Linecard Connector FPX Network Platform 38
20 SRAM SDRAM SRAM SDRAM System-On-Chip Design using Dynamic Hardware Plugins (DHP) FPX Network Platform 39 Combining s within the Chip s fit together at static I/O interfaces Intrachip Switching Partial reprogramming of FPGA used to install/remove modules s added and removed while other modules process packts SDRAM SRAM FPX FPX FPX... Statically-configured Long Lines provide chip-wide routing FPGA s Long Lines Loading / Unloading FPX Network Platform 40
21 Implementing modules in Virtex1000E Virtex 1000E logic resources Ingress Path Globally accessible IOBs 64 x 96 CLB array 4 flops/luts per CLB 96 Block SelectRAMs 4096 bits per block 6 columns of 16 blocks 6 columns of dedicated interconnect DHP s 64 x 12 CLB array (768 CLBs, 3072 flops) Double DHP s 64 x 24 CLB array (1536 CLBs, 6144 flops) 16 BRAMs (8KB) per 3 DHP s per path 1 SRAM interface per path 1 SDRAM interface per path IOB Ring CLB columns VersaRing DHP Egress Path FPX Network Platform 41 DHP Double DHP Double DHP DHP DHP BRAMs BRAM Interconnect Dynamic Hardware Plugins [On FPGA] TARGET 1 TARGET 2 TARGET 3 TARGET 4 T1 (7,8) T2 (7,20) T3 (7,68) T4 (7,80) Left IOBs Top IOBs I N F R A S T R U C U T U R E Bottom IOBs Right IOBs Synthesis Constraints Infrastructure with target regions reserved for DHP modules insertions PARBIT parameters Target Locations (Row, Col) RAM RAM RAM RAM RAM RAM FPX Network Platform 42
22 Example Application : String Processing FPX Network Platform 43 Hello, World Function Compare Header [5 bytes in 2 words] Payload [48 bytes in 12 words] JWL:ARL 07/00 VPI I=5 VPI=X I=5 PAD PAD H E L L H E L L Match O P5 P6 P7 P8 P9 P10 P11.. Payload.... Payload.. P44 P45 P46 P47 P44 P45 P46 P47 32 bits Match O W O Match+Write R L D. Write... Copy... Copy FPX Network Platform 44
23 Evolvable Internet Hardware Compile Design (Vcom) Tweak Design Synthesize To Logic (Synplicity) Observe Network Behaviour Place and Route FPGA Gates (Xilinx) Route Traffic Through (Ncharge) Download to (Ncharge) FPX Network Platform 45 Modular Interface to SDRAM FPX Network Platform 46
24 SDRAM Controller Overview SDRAM Controller 0 1 SDRAM 2 FPX Network Platform 47 Example : Leaky Bucket bursty data leaking data - Buffers the incoming cells in a FIFO - Generates tokens at a regular interval - Gives out a cell from the FIFO when the number of tokens > 0 - Destroys a token when a cell is given out FPX Network Platform 48
25 Internet Protocol Wrappers FPX Network Platform 49 Payload Processing Environment Higher-Level data processing on the FPX Wrapper Framework Net App Wrapper Wrapper FPX Network Platform 50
26 Frame / IP Packet / UDP / Application Layers Interfaces to Off-Chip Memories Application-level Hardware Input Output UDP Processor IP Processor Frame Processor Cell Processor FPX Network Platform 51 Soft-core Active Network Processor : The KCPSM Network FPX Network Platform 52
27 The FPX KCPSM KCPSM ATM CELLS UDP PACKETS PORT_ID I/O BUS DATA MEMORY ADDR INST PROGRAM MEMORY UDP PACKETS ATM CELLS D_MOD_IN SOC_MOD_IN TCA_MOD_IN ADDR D_MOD_IN CONTROL SIGNALS DATA BUS ADDR INTERFACE INST D_OUT_MOD CONTROL SIGNALS PROTOCOL WRAPPERS D_OUT_MOD SOC_OUT_MOD TCA_OUT_MOD CLK RESET_L ENABLE_L READY_L FPX Network Platform 53 Simulating a KCPSM Program The input data cell The The st rd th st rd th word word nd th nd th th th specifies word specifies word is is is is the the it it Internet data Internet data ATM is ATM string is string UDP a UDP Protocol data Cell Protocol data Cell Header Hello Header Hello packet packet Header World Header World The output data cell The The st rd th st rd th word word nd th nd th th th specifies word specifies word is is is is the the it it data Internet data Internet ATM is string ATM is string UDP a UDP Protocol data Cell Protocol data Cell Uryyb Header Uryyb Header packet packet Header Jbeyq Header Jbeyq FPX Network Platform 54
28 Applications for the FPX: Fast IP Lookup (FIPL) FPX Network Platform 55 Fast IP Lookup Algorithm Function: Search for best matching prefix using Trie algorithm Prefix Next Hop * 01* * 2 110* * * * * Contributors Will Eatherton, Zubin Dittia, Jon Turner, David Taylor, David Wilke, FPX Network Platform 56
29 Hardware Implementation in the FPX SRAM 1 SRAM 2 Extract IP Headers Packet Reassembler SRAM 1 Interface 0 Remap Is 1 Request Grant for IP packets IP Lookup 0 Engine counter On-Chip Cell Store 1 FPGA Control Cell Processor LC NID FPGA SW FPX Network Platform 57 Fast IP Lookup (FIPL) Application Lookup (X.Y.Z.W) Route add /24 8 Route delete /16 Commands FIPL Memory Manager RAM FIPL Control cells Fast IP Lookup External SRAM Hardware Lookup Software FPGA Nexthop FPX Network Platform 58
30 Conclusion Field programmable Port Extender (FPX) Platform Open Platform for hardware development Modular Interfaces Allows integration components to build System-on-Chip (SoC) Library of Internet packet processing functions Simplifies design of new functionality Interoperable w/existing software systems Unifies Active Networking Hardware with Software FPX Homepage FPX Network Platform 59 Acknowledgements Several Individuals have contributed to this work: Washington University Jon Turner Sarang Dharmapurikar Todd Sproull David Taylor Florian Braun Henry Fu Dave Lim Edson Horta Xilinx Dave Parlour FPX Network Platform 60
Hardware Laboratory Configuration
Field-programmable Port Extender () January 2002 Workshop Hardware Laboratory Configuration John Lockwood, Lockwood@arl.wustl.edu Assistant Professor Washington University Department of Computer Science
More informationProtocol Processing on the FPX
Field-programmable Port Extender (FPX) January 2002 Workshop Protocol Processing on the FPX John Lockwood, Lockwood@arl.wustl.edu Assistant Professor Washington University Department of Computer Science
More informationUsers Guide: Fast IP Lookup (FIPL) in the FPX
Users Guide: Fast IP Lookup (FIPL) in the FPX Gigabit Kits Workshop /22 FIPL System Design Each FIPL Engine performs a longest matching prefix lookup on a single 32-bit IPv4 destination address FIPL Engine
More informationInternet Worm and Virus Protection for Very High-Speed Networks
Internet Worm and Virus Protection for Very High-Speed Networks John W. Lockwood Professor of Computer Science and Engineering lockwood@arl.wustl.edu http://www.arl.wustl.edu/~lockwood Research Sponsor:
More informationFPX Architecture for a Dynamically Extensible Router
FPX Architecture for a Dynamically Extensible Router Alex Chandra, Yuhua Chen, John Lockwood, Sarang Dharmapurikar, Wenjing Tang, David Taylor, Jon Turner http://www.arl.wustl.edu/arl Dynamically Extensible
More informationSimulation of the Hello World Application for the Field-programmable Port Extender (FPX)
Simulation of the Hello World Application for the Field-programmable Port Extender (FPX) John W. Lockwood, Washington University, Applied Research Lab http://www.arl.wustl.edu/arl/projects/fpx/ Spring
More informationDynamic Hardware Plugins in an FPGA with Partial Run-time Reconfiguration
24.2 Dynamic Hardware Plugins in an FPGA with Partial Run-time Reconfiguration Edson L. Horta, Universidade de San Pãulo Escola Politécnica - LSI San Pãulo, SP, Brazil edson-horta@ieee.org John W. Lockwood,
More informationProtocol Wrappers for Layered Network Packet Processing in Reconfigurable Hardware
Protocol Wrappers for Layered Network Packet Processing in Reconfigurable Hardware Florian Braun John Lockwood Marcel Waldvogel University of Stuttgart Washington University in St. Louis IBM Zurich Research
More informationHello, World: A Simple Application for the Field Programmable Port Extender (FPX)
Hello, World: A Simple Application for the Field Programmable Port Extender (FPX) John Lockwood, David Lim WUCS-TM-00-12 July 11, 2000 Department of Computer Science Applied Research Lab Washington University
More informationTCP-Splitter: Design, Implementation and Operation
Washington University in St. Louis Washington University Open Scholarship All Computer Science and Engineering Research Computer Science and Engineering Report Number: WUCSE-2003-14 2003-03-18 TCP-Splitter:
More informationControl and Configuration Software for a Reconfigurable Networking Hardware Platform
1 Control and Configuration Software for a Reconfigurable Networking Hardware Platform Todd S. Sproull, John W. Lockwood, David E. Taylor Applied Research Laboratory Washington University Saint Louis,
More informationThe FPX KCPSM Module: An Embedded, Reconfigurable Processing Module for the Field Programmable Port Extender (FPX)
The FPX KCPSM Module: An Embedded, Reconfigurable Processing Module for the Field Programmable Port Extender (FPX) Henry Fu John W. Lockwood WUCS-TM-xx-xx June 19, 2001 Department of Computer Science Applied
More informationTCP-Splitter: A Reconfigurable Hardware Based TCP/IP Flow Monitor
CP-Splitter: A Reconfigurable Hardware Based CP/IP Flow Monitor David V. Schuehler dvs1@arl.wustl.edu John W. Lockwood lockwood@arl.wustl.edu Applied Research Laboratory (ARL) Department of Computer Science
More informationCprE 583 Reconfigurable Computing
CprE / ComS 583 Reconfigurable Computing Prof. Joseph Zambreno Department of Electrical and Computer Engineering Iowa State University Lecture #9 Logic Emulation Technology Recap FPGA-Based Router (FPX)
More informationCPE/EE 422/522. Introduction to Xilinx Virtex Field-Programmable Gate Arrays Devices. Dr. Rhonda Kay Gaede UAH. Outline
CPE/EE 422/522 Introduction to Xilinx Virtex Field-Programmable Gate Arrays Devices Dr. Rhonda Kay Gaede UAH Outline Introduction Field-Programmable Gate Arrays Virtex Virtex-E, Virtex-II, and Virtex-II
More informationLiquid Architecture Λ
Liquid Architecture Λ Phillip Jones, Shobana Padmanabhan, Daniel Rymarz, John Maschmeyer David V. Schuehler, John W. Lockwood, and Ron K. Cytron Department of Computer Science and Engineering Washington
More informationFirst Gigabit Kits Workshop
First Gigabit Kits Workshop July 12-13, 1999 Jonathan Turner Washington University Computer Science Department http://www.arl.wustl.edu/gigabitkits/kits.html Jonathan Turner 11/8/99 1 Agenda Monday, July
More informationWUCS-TM-02-?? September 13, 2002
Field-programmable Port extender (FPX) Support for the Multi-Service Router (MSR) Version 1.0 David E. Taylor, Sarang Dharmapurikar, John W. Lockwood, Jonathan S. Turner, Yuhua Chen, Alex Chandra, Wen-Jing
More informationTCP Programmer for FPXs
TCP Programmer for s Harvey Ku John W. Lockwood David V. Schuehler Department of Computer Science Applied Research Lab Washington University 1 Brookings Drive, Box 1045 Saint Louis, MO 63130 WUCS-2002-29
More informationKeywords -- Programmable router, reconfigurable hardware, active networking, port processor. I. INTRODUCTION
Dynamic Hardware s (DHP): Exploiting Reconfigurable Hardware for High-Performance Programmable Routers David E. Taylor, Jonathan S. Turner, John W. Lockwood det3@arl.wustl.edu, jst@cs.wustl.edu, lockwood@arl.wustl.edu
More informationFPgrep and FPsed: Packet Payload Processors for Managing the Flow of Digital Content on Local Area Networks and the Internet
Washington University in St. Louis Washington University Open Scholarship All Computer Science and Engineering Research Computer Science and Engineering Report Number: WUCSE-2003-56 2003-07-29 FPgrep and
More informationThe Washington University Smart Port Card
The Washington University Smart Port Card John DeHart Washington University jdd@arl.wustl.edu http://www.arl.wustl.edu/~jdd 1 SPC Personnel Dave Richard - Overall Hardware Design Dave Taylor - System FPGA
More informationDesign and Evaluation of a High-Performance Dynamically Extensible Router
Design and Evaluation of a High-Performance Dynamically Extensible Router Fred Kuhns, John DeHart, Anshul Kantawala, Ralph Keller, John Lockwood, Prashanth Pappu, David Richard, David Taylor, Jyoti Parwatikar,
More informationBasic FPGA Architectures. Actel FPGAs. PLD Technologies: Antifuse. 3 Digital Systems Implementation Programmable Logic Devices
3 Digital Systems Implementation Programmable Logic Devices Basic FPGA Architectures Why Programmable Logic Devices (PLDs)? Low cost, low risk way of implementing digital circuits as application specific
More informationSEVER INSTITUTE OF TECHNOLOGY MASTER OF SCIENCE DEGREE THESIS ACCEPTANCE. (To be the first page of each copy of the thesis)
SEVER INSTITUTE OF TECHNOLOGY MASTER OF SCIENCE DEGREE THESIS ACCEPTANCE (To be the first page of each copy of the thesis) DATE: July 29, 2003 STUDENT S NAME: James Moscola This student s thesis, entitled
More informationExperience with the NetFPGA Program
Experience with the NetFPGA Program John W. Lockwood Algo-Logic Systems Algo-Logic.com With input from the Stanford University NetFPGA Group & Xilinx XUP Program Sunday, February 21, 2010 FPGA-2010 Pre-Conference
More informationDemonstration of a High Performance Active Router DARPA Demo - 9/24/99
Demonstration of a High Performance Active Router DARPA Demo - 9/24/99 Dan Decasper, John DeHart, Ralph Keller, Jonathan Turner, Sumi Choi and Tilman Wolf University, Applied Research Lab http://www.arl.wustl.edu/arl/
More informationNetFPGA Hardware Architecture
NetFPGA Hardware Architecture Jeffrey Shafer Some slides adapted from Stanford NetFPGA tutorials NetFPGA http://netfpga.org 2 NetFPGA Components Virtex-II Pro 5 FPGA 53,136 logic cells 4,176 Kbit block
More informationDesign of a High Performance Dynamically Extensible Router
Design of a High Performance Dynamically Extensible Router Fred Kuhns, John DeHart, Anshul Kantawala, Ralph Keller, John Lockwood, Prashanth Pappu, David Richards, David Taylor, Jyoti Parwatikar, Ed Spitznagel,
More informationWUCS-TM-02-?? September 23, 2005
Field-programmable Port extender (FPX) Support for the Network Services Platform (NSP) Version 1.0 Alex Chandra, Yuhua Chen, John DeHart, Sarang Dharmapurikar, Fred Kuhns, John W. Lockwood, Wen-Jing Tang,
More informationWhat is Xilinx Design Language?
Bill Jason P. Tomas University of Nevada Las Vegas Dept. of Electrical and Computer Engineering What is Xilinx Design Language? XDL is a human readable ASCII format compatible with the more widely used
More informationMultiflow TCP, UDP, IP, and ATM Traffic Generation Module
Washington University in St. Louis Washington University Open Scholarship All Computer Science and Engineering Research Computer Science and Engineering Report Number: WUCSE-2003-24 2003-04-24 Multiflow
More informationEECS150 - Digital Design Lecture 17 Memory 2
EECS150 - Digital Design Lecture 17 Memory 2 October 22, 2002 John Wawrzynek Fall 2002 EECS150 Lec17-mem2 Page 1 SDRAM Recap General Characteristics Optimized for high density and therefore low cost/bit
More informationHAIL: A HARDWARE-ACCELERATED ALGORITHM FOR LANGUAGE IDENTIFICATION. Charles M. Kastner, G. Adam Covington, Andrew A. Levine, John W.
HAIL: A HARDWARE-ACCELERATED ALGORITHM FOR LANGUAGE IDENTIFICATION Charles M. Kastner, G. Adam Covington, Andrew A. Levine, John W. Lockwood Applied Research Laboratory Washington University in St. Louis
More informationFPGA: What? Why? Marco D. Santambrogio
FPGA: What? Why? Marco D. Santambrogio marco.santambrogio@polimi.it 2 Reconfigurable Hardware Reconfigurable computing is intended to fill the gap between hardware and software, achieving potentially much
More informationLatticeSCM SPI4.2 Interoperability with PMC-Sierra PM3388
August 2006 Technical Note TN1121 Introduction The System Packet Interface, Level 4, Phase 2 (SPI4.2) is a system level interface, published in 2001 by the Optical Internetworking Forum (OIF), for packet
More informationINTRODUCTION TO FPGA ARCHITECTURE
3/3/25 INTRODUCTION TO FPGA ARCHITECTURE DIGITAL LOGIC DESIGN (BASIC TECHNIQUES) a b a y 2input Black Box y b Functional Schematic a b y a b y a b y 2 Truth Table (AND) Truth Table (OR) Truth Table (XOR)
More informationScheduling Data Flows using DRR
CS/CoE 535 Acceleration of Networking Algorithms in Reconfigurable Hardware Prof. Lockwood : Fall 2001 http://www.arl.wustl.edu/~lockwood/class/cs535/ Scheduling Data Flows using DRR http://www.ccrc.wustl.edu/~praveen
More informationA Modular System for FPGA-Based TCP Flow Processing in High-Speed Networks
A Modular System for FPGA-Based Flow Processing in High-Speed Networks David V. Schuehler and John W. Lockwood Applied Research Laboratory, Washington University One Brookings Drive, Campus Box 1045 St.
More informationEECS 151/251A Spring 2019 Digital Design and Integrated Circuits. Instructor: John Wawrzynek. Lecture 18 EE141
EECS 151/251A Spring 2019 Digital Design and Integrated Circuits Instructor: John Wawrzynek Lecture 18 Memory Blocks Multi-ported RAM Combining Memory blocks FIFOs FPGA memory blocks Memory block synthesis
More informationA Framework for Rule Processing in Reconfigurable Network Systems
A Framework for Rule Processing in Reconfigurable Network Systems Michael Attig and John Lockwood Washington University in Saint Louis Applied Research Laboratory Department of Computer Science and Engineering
More informationReconfigurable Hardware Implementation of Mesh Routing in the Number Field Sieve Factorization
Reconfigurable Hardware Implementation of Mesh Routing in the Number Field Sieve Factorization Sashisu Bajracharya, Deapesh Misra, Kris Gaj George Mason University Tarek El-Ghazawi The George Washington
More informationL2: FPGA HARDWARE : ADVANCED DIGITAL DESIGN PROJECT FALL 2015 BRANDON LUCIA
L2: FPGA HARDWARE 18-545: ADVANCED DIGITAL DESIGN PROJECT FALL 2015 BRANDON LUCIA 18-545: FALL 2014 2 Admin stuff Project Proposals happen on Monday Be prepared to give an in-class presentation Lab 1 is
More informationThe Xilinx XC6200 chip, the software tools and the board development tools
The Xilinx XC6200 chip, the software tools and the board development tools What is an FPGA? Field Programmable Gate Array Fully programmable alternative to a customized chip Used to implement functions
More informationA software platform to support dynamically reconfigurable Systems-on-Chip under the GNU/Linux operating system
A software platform to support dynamically reconfigurable Systems-on-Chip under the GNU/Linux operating system 26th July 2005 Alberto Donato donato@elet.polimi.it Relatore: Prof. Fabrizio Ferrandi Correlatore:
More informationToday. Comments about assignment Max 1/T (skew = 0) Max clock skew? Comments about assignment 3 ASICs and Programmable logic Others courses
Today Comments about assignment 3-43 Comments about assignment 3 ASICs and Programmable logic Others courses octor Per should show up in the end of the lecture Mealy machines can not be coded in a single
More informationThe router architecture consists of two major components: Routing Engine. 100-Mbps link. Packet Forwarding Engine
Chapter 4 The router architecture consists of two major components: Packet Forwarding Engine Performs Layer 2 and Layer 3 packet switching, route lookups, and packet forwarding. Routing Engine Provides
More informationPrototyping NGC. First Light. PICNIC Array Image of ESO Messenger Front Page
Prototyping NGC First Light PICNIC Array Image of ESO Messenger Front Page Introduction and Key Points Constructed is a modular system with : A Back-End as 64 Bit PCI Master/Slave Interface A basic Front-end
More informationExtensible Network Configuration and Communication Framework
Extensible Network Configuration and Communication Framework Todd Sproull and John Lockwood Applied Research Laboratory Department of Computer Science and Engineering: Washington University in Saint Louis
More informationEE219A Spring 2008 Special Topics in Circuits and Signal Processing. Lecture 9. FPGA Architecture. Ranier Yap, Mohamed Ali.
EE219A Spring 2008 Special Topics in Circuits and Signal Processing Lecture 9 FPGA Architecture Ranier Yap, Mohamed Ali Annoucements Homework 2 posted Due Wed, May 7 Now is the time to turn-in your Hw
More informationEITF35: Introduction to Structured VLSI Design
EITF35: Introduction to Structured VLSI Design Introduction to FPGA design Rakesh Gangarajaiah Rakesh.gangarajaiah@eit.lth.se Slides from Chenxin Zhang and Steffan Malkowsky WWW.FPGA What is FPGA? Field
More informationRiceNIC. Prototyping Network Interfaces. Jeffrey Shafer Scott Rixner
RiceNIC Prototyping Network Interfaces Jeffrey Shafer Scott Rixner RiceNIC Overview Gigabit Ethernet Network Interface Card RiceNIC - Prototyping Network Interfaces 2 RiceNIC Overview Reconfigurable and
More information! Program logic functions, interconnect using SRAM. ! Advantages: ! Re-programmable; ! dynamically reconfigurable; ! uses standard processes.
Topics! SRAM-based FPGA fabrics:! Xilinx.! Altera. SRAM-based FPGAs! Program logic functions, using SRAM.! Advantages:! Re-programmable;! dynamically reconfigurable;! uses standard processes.! isadvantages:!
More informationVirtex-II Architecture. Virtex II technical, Design Solutions. Active Interconnect Technology (continued)
Virtex-II Architecture SONET / SDH Virtex II technical, Design Solutions PCI-X PCI DCM Distri RAM 18Kb BRAM Multiplier LVDS FIFO Shift Registers BLVDS SDRAM QDR SRAM Backplane Rev 4 March 4th. 2002 J-L
More informationFPGA. Logic Block. Plessey FPGA: basic building block here is 2-input NAND gate which is connected to each other to implement desired function.
FPGA Logic block of an FPGA can be configured in such a way that it can provide functionality as simple as that of transistor or as complex as that of a microprocessor. It can used to implement different
More informationEECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs)
EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs) September 12, 2002 John Wawrzynek Fall 2002 EECS150 - Lec06-FPGA Page 1 Outline What are FPGAs? Why use FPGAs (a short history
More informationFCUDA-NoC: A Scalable and Efficient Network-on-Chip Implementation for the CUDA-to-FPGA Flow
FCUDA-NoC: A Scalable and Efficient Network-on-Chip Implementation for the CUDA-to-FPGA Flow Abstract: High-level synthesis (HLS) of data-parallel input languages, such as the Compute Unified Device Architecture
More informationVHDL-MODELING OF A GAS LASER S GAS DISCHARGE CIRCUIT Nataliya Golian, Vera Golian, Olga Kalynychenko
136 VHDL-MODELING OF A GAS LASER S GAS DISCHARGE CIRCUIT Nataliya Golian, Vera Golian, Olga Kalynychenko Abstract: Usage of modeling for construction of laser installations today is actual in connection
More informationOutline. EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs) FPGA Overview. Why FPGAs?
EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs) September 12, 2002 John Wawrzynek Outline What are FPGAs? Why use FPGAs (a short history lesson). FPGA variations Internal logic
More informationTopics for Today. Network Layer. Readings. Introduction Addressing Address Resolution. Sections 5.1,
Topics for Today Network Layer Introduction Addressing Address Resolution Readings Sections 5.1, 5.6.1-5.6.2 1 Network Layer: Introduction A network-wide concern! Transport layer Between two end hosts
More informationThe Network Processor Revolution
The Network Processor Revolution Fast Pattern Matching and Routing at OC-48 David Kramer Senior Design/Architect Market Segments Optical Mux Optical Core DWDM Ring OC 192 to OC 768 Optical Mux Carrier
More informationProgrammable Logic. Simple Programmable Logic Devices
Programmable Logic SM098 Computation Structures - Programmable Logic Simple Programmable Logic evices Programmable Array Logic (PAL) AN-OR arrays are common blocks in SPL and CPL architectures Implements
More informationField Programmable Gate Array (FPGA)
Field Programmable Gate Array (FPGA) Lecturer: Krébesz, Tamas 1 FPGA in general Reprogrammable Si chip Invented in 1985 by Ross Freeman (Xilinx inc.) Combines the advantages of ASIC and uc-based systems
More informationDesign Space Exploration for Memory Subsystems of VLIW Architectures
E University of Paderborn Dr.-Ing. Mario Porrmann Design Space Exploration for Memory Subsystems of VLIW Architectures Thorsten Jungeblut 1, Gregor Sievers, Mario Porrmann 1, Ulrich Rückert 2 1 System
More informationOutline of Presentation
Built-In Self-Test for Programmable I/O Buffers in FPGAs and SoCs Sudheer Vemula and Charles Stroud Electrical and Computer Engineering Auburn University presented at 2006 IEEE Southeastern Symp. On System
More informationField Program mable Gate Arrays
Field Program mable Gate Arrays M andakini Patil E H E P g r o u p D H E P T I F R SERC school NISER, Bhubaneshwar Nov 7-27 2017 Outline Digital electronics Short history of programmable logic devices
More informationCisco Series Internet Router Architecture: Packet Switching
Cisco 12000 Series Internet Router Architecture: Packet Switching Document ID: 47320 Contents Introduction Prerequisites Requirements Components Used Conventions Background Information Packet Switching:
More informationFPGA. Agenda 11/05/2016. Scheduling tasks on Reconfigurable FPGA architectures. Definition. Overview. Characteristics of the CLB.
Agenda The topics that will be addressed are: Scheduling tasks on Reconfigurable FPGA architectures Mauro Marinoni ReTiS Lab, TeCIP Institute Scuola superiore Sant Anna - Pisa Overview on basic characteristics
More informationFPGA for Complex System Implementation. National Chiao Tung University Chun-Jen Tsai 04/14/2011
FPGA for Complex System Implementation National Chiao Tung University Chun-Jen Tsai 04/14/2011 About FPGA FPGA was invented by Ross Freeman in 1989 SRAM-based FPGA properties Standard parts Allowing multi-level
More informationNetFPGA Update at GEC4
NetFPGA Update at GEC4 http://netfpga.org/ NSF GENI Engineering Conference 4 (GEC4) March 31, 2009 John W. Lockwood http://stanford.edu/~jwlockwd/ jwlockwd@stanford.edu NSF GEC4 1 March 2009 What is the
More informationPipelining & Verilog. Sequential Divider. Verilog divider.v. Math Functions in Coregen. Lab #3 due tonight, LPSet 8 Thurs 10/11
Lab #3 due tonight, LPSet 8 Thurs 0/ Pipelining & Verilog Latency & Throughput Pipelining to increase throughput Retiming Verilog Math Functions Debugging Hints Sequential Divider Assume the Divid (A)
More informationMotivation for this class
CSE 535 : Lecture 1 Itroductio to Acceleratio of Networkig Algorithms i Hardware Washigto Uiversity Fall 2003 http://www.arl.wustl.edu/arl/projects/fpx/cse535/ Copyright 2003, Joh W Lockwood Lockwood@arl.wustl.edu
More informationHIGH SPEED DOCUMENT CLUSTERING IN RECONFIGURABLE HARDWARE. G. Adam Covington, Charles L.G. Comstock, Andrew A. Levine, John W. Lockwood, Young H.
HIGH SPEED DOCUMENT CLUSTERING IN RECONFIGURABLE HARDWARE G. Adam Covington, Charles L.G. Comstock, Andrew A. Levine, John W. Lockwood, Young H. Cho Applied Research Laboratory, Washington University One
More informationTerabit Burst Switching Progress Report (7/99 12/99)
Terabit Burst Switching Progress Report (7/99 12/99) Jonathan S. Turner jst@cs.wustl.edu WUCS-99-32 December 30, 1999 Department of Computer Science Campus Box 1045 Washington University One Brookings
More informationEfficient Packet Classification for Network Intrusion Detection using FPGA
Efficient Packet Classification for Network Intrusion Detection using FPGA ABSTRACT Haoyu Song Department of CSE Washington University St. Louis, USA hs@arl.wustl.edu FPGA technology has become widely
More informationLab 3 Sequential Logic for Synthesis. FPGA Design Flow.
Lab 3 Sequential Logic for Synthesis. FPGA Design Flow. Task 1 Part 1 Develop a VHDL description of a Debouncer specified below. The following diagram shows the interface of the Debouncer. The following
More informationEECS150 - Digital Design Lecture 16 Memory 1
EECS150 - Digital Design Lecture 16 Memory 1 March 13, 2003 John Wawrzynek Spring 2003 EECS150 - Lec16-mem1 Page 1 Memory Basics Uses: Whenever a large collection of state elements is required. data &
More informationBasic FPGA Architecture Xilinx, Inc. All Rights Reserved
Basic FPGA Architecture 2005 Xilinx, Inc. All Rights Reserved Objectives After completing this module, you will be able to: Identify the basic architectural resources of the Virtex -II FPGA List the differences
More informationA Hardware / Software Co-Design System using Configurable Computing Technology
A Hardware / Software Co-Design System using Configurable Computing Technology John Schewel Virtual Computer Corporation 6925 Canby Ave #103 Reseda, California, USA 91335 Abstract Virtual Computer Corporation
More informationPowerPC on NetFPGA CSE 237B. Erik Rubow
PowerPC on NetFPGA CSE 237B Erik Rubow NetFPGA PCI card + FPGA + 4 GbE ports FPGA (Virtex II Pro) has 2 PowerPC hard cores Untapped resource within NetFPGA community Goals Evaluate performance of on chip
More informationHigh-Performance Linear Algebra Processor using FPGA
High-Performance Linear Algebra Processor using FPGA J. R. Johnson P. Nagvajara C. Nwankpa 1 Extended Abstract With recent advances in FPGA (Field Programmable Gate Array) technology it is now feasible
More informationThe Virtex FPGA and Introduction to design techniques
The Virtex FPGA and Introduction to design techniques SM098 Computation Structures Lecture 6 Simple Programmable Logic evices Programmable Array Logic (PAL) AN-OR arrays are common blocks in SPL and CPL
More informationSpiral 2-8. Cell Layout
2-8.1 Spiral 2-8 Cell Layout 2-8.2 Learning Outcomes I understand how a digital circuit is composed of layers of materials forming transistors and wires I understand how each layer is expressed as geometric
More informationEECS150 - Digital Design Lecture 13 - Project Description, Part 2: Memory Blocks. Project Overview
EECS150 - igital esign Lecture 13 - Project escription, Part 2: Memory Blocks Mar 2, 2010 John Wawrzynek Spring 2010 EECS150 - Lec13-proj2 Page 1 Project Overview A. MIPS150 pipeline structure B. Serial
More informationEECS150 - Digital Design Lecture 16 - Memory
EECS150 - Digital Design Lecture 16 - Memory October 17, 2002 John Wawrzynek Fall 2002 EECS150 - Lec16-mem1 Page 1 Memory Basics Uses: data & program storage general purpose registers buffering table lookups
More informationLUC4AU01 ATM Layer UNI Manager (ALM)
Preliminary Product Brief Introduction The ALM IC is part of the ATLANTA chip set consisting of four devices that provide a highly integrated, innovative, and complete VLSI solution for implementing the
More informationVirtex-II Architecture
Virtex-II Architecture Block SelectRAM resource I/O Blocks (IOBs) edicated multipliers Programmable interconnect Configurable Logic Blocks (CLBs) Virtex -II architecture s core voltage operates at 1.5V
More informationA THERMAL MANAGEMENT AND PROFILING METHOD FOR RECONFIGURABLE HARDWARE APPLICATIONS. Phillip H. Jones, John W. Lockwood, Young H.
A THERMAL MANAGEMENT AND PROFILING METHOD FOR RECONFIGURABLE HARDWARE APPLICATIONS Phillip H. Jones, John W. Lockwood, Young H. Cho Applied Research Laboratory Washington University St. Louis, MO email:
More informationCS310 Embedded Computer Systems. Maeng
1 INTRODUCTION (PART II) Maeng Three key embedded system technologies 2 Technology A manner of accomplishing a task, especially using technical processes, methods, or knowledge Three key technologies for
More informationAdvanced Digital Design Using FPGA. Dr. Shahrokh Abadi
Advanced Digital Design Using FPGA Dr. Shahrokh Abadi 1 Venue Computer Lab: Tuesdays 10 12 am (Fixed) Computer Lab: Wednesday 10-12 am (Every other odd weeks) Note: Due to some unpredicted problems with
More informationSECURE PARTIAL RECONFIGURATION OF FPGAs. Amir S. Zeineddini Kris Gaj
SECURE PARTIAL RECONFIGURATION OF FPGAs Amir S. Zeineddini Kris Gaj Outline FPGAs Security Our scheme Implementation approach Experimental results Conclusions FPGAs SECURITY SRAM FPGA Security Designer/Vendor
More informationNPE-300 and NPE-400 Overview
CHAPTER 3 This chapter describes the network processing engine (NPE) models NPE-300 and NPE-400 and contains the following sections: Supported Platforms, page 3-1 Software Requirements, page 3-1 NPE-300
More informationSpiral 3-1. Hardware/Software Interfacing
3-1.1 Spiral 3-1 Hardware/Software Interfacing 3-1.2 Learning Outcomes I understand the PicoBlaze bus interface signals: PORT_ID, IN_PORT, OUT_PORT, WRITE_STROBE I understand how a memory map provides
More informationUsing the Open Network Lab
Using the Open Network Lab Jon Turner Applied Research Laboratory Computer Science and Engineering Department http://www.arl.wustl.edu/arl 2 - Jonathan Turner 1/31/2006 Motivation What is ONL?» remotely
More informationAtmel AT94K FPSLIC Architecture Field Programmable Gate Array
Embedded Processor Based Built-In Self-Test and Diagnosis of FPGA Core in FPSLIC John Sunwoo (Logic BIST) Srinivas Garimella (RAM BIST) Sudheer Vemula (I/O Cell BIST) Chuck Stroud (Routing BIST) Jonathan
More informationEvolution of Implementation Technologies. ECE 4211/5211 Rapid Prototyping with FPGAs. Gate Array Technology (IBM s) Programmable Logic
ECE 42/52 Rapid Prototyping with FPGAs Dr. Charlie Wang Department of Electrical and Computer Engineering University of Colorado at Colorado Springs Evolution of Implementation Technologies Discrete devices:
More informationNetwork Processors. Nevin Heintze Agere Systems
Network Processors Nevin Heintze Agere Systems Network Processors What are the packaging challenges for NPs? Caveat: I know very little about packaging. Network Processors What are the packaging challenges
More informationDRAF: A Low-Power DRAM-based Reconfigurable Acceleration Fabric
DRAF: A Low-Power DRAM-based Reconfigurable Acceleration Fabric Mingyu Gao, Christina Delimitrou, Dimin Niu, Krishna Malladi, Hongzhong Zheng, Bob Brennan, Christos Kozyrakis ISCA June 22, 2016 FPGA-Based
More informationRouters Technologies & Evolution for High-Speed Networks
Routers Technologies & Evolution for High-Speed Networks C. Pham Université de Pau et des Pays de l Adour http://www.univ-pau.fr/~cpham Congduc.Pham@univ-pau.fr Router Evolution slides from Nick McKeown,
More informationPCI to SH-3 AN Hitachi SH3 to PCI bus
PCI to SH-3 AN Hitachi SH3 to PCI bus Version 1.0 Application Note FEATURES GENERAL DESCRIPTION Complete Application Note for designing a PCI adapter or embedded system based on the Hitachi SH-3 including:
More information