Download presentation
Presentation is loading. Please wait.
Published byBeryl Walsh Modified over 8 years ago
1
Extensible Networking Platform 1 1 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Development of a System-On-Chip Extensible Network Processor and debugging using Identify John W. Lockwood and Chris Zuver Applied Research Laboratory : Reconfigurable Network Group http://www.arl.wustl.edu/projects/fpx/reconfig.htm lockwood@arl.wustl.edu cz2@arl.wustl.edu
2
Extensible Networking Platform 2 2 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking FPX Hardware Platform
3
Extensible Networking Platform 3 3 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking FPX Hardware in WUGS-20 Switch
4
Extensible Networking Platform 4 4 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking FPX Hardware in GVS-1000 Chassis
5
Extensible Networking Platform 5 5 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking System-On-Chip Firewall
6
Extensible Networking Platform 6 6 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Content Matching Module regex_app (given) 32 dataen_out_appl d_out_appl sof_out_appl eof_out_appl sod_out_appl tca_out_appl clk reset_l enable_l dataen_appl_in d_appl_in sof_appl_in eof_appl_in sod_appl_in tca_appl_in Matched ready_l 32 8 To extended Bits of CAM To existing MP1 circuit From Protocol Wrappers wrapper_module.vhd
7
Extensible Networking Platform 7 7 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Packet matching w/ Content Addressable Memory Sample Packet: Source Address = 128.252.5.5 (dotted.decimal) Destination Address = 141.142.2.2 (dotted.decimal) Source Port = 4096 (decimal) Destination Port = 80 (decimal) Protocol = TCP (6) Payload = “Consolidate your loans. CALL NOW” –Payload Lists = { General SPAM (0), Save Money SPAM (1) } –Content Vector = “00000011” (binary) = x”03” (hex) 71033971 Src IP (hex) = 80FC0505 Dest IP (hex) = 8D8E0202 Src Port = 1000 Dest Port = 0050 Proto = 06 0 840 72 All values shown In hex Con- tent = 03 111104
8
Extensible Networking Platform 8 8 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Sample Filter Source Address = 128.252.0.0 / 16 Destination Address = 141.142.0.0 / 16 Source Port = Don’t Care Destination Port = 80 Protocol = TCP (6) Payload includes general SPAM (List 0) 71033971 Src IP (hex) = 80FC0505 Dest IP (hex) = 8D8E0202 Src Port = 1000 Dest Port = 0050 Proto = 06 0 840 72 Src IP value = 80FC0000 Dest IP (hex) = 8D8E0000 Src Port = 0000 Dest Port = 50 Proto = 06 Src IP (hex) = FFFF0000 Dest IP (hex) = FFFF0000 Src Port = 0000 Dest Port = FFFF Proto = FF Value Mask: 1=care 0=don’t care IP Packet Con- ten t= 01 Con- ten t= 01 Con- tent= = 03 DROP the packet : It matches the filter
9
Extensible Networking Platform 9 9 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Packet Classifier with FlowID CAM MASK [1] CAM VALUE [1] CAM MASK [2] CAM VALUE [2] CAM MASK [3] CAM VALUE [3] CAM MASK [N] CAM VALUE [N] Flow ID [1] 112 bits Flow ID [2] Flow ID [3] Flow ID [N] Flow ID... 16 bits Value Comparators Mask Matchers Priority Encoder Resulting Flow Identifier Flow List Source Address Destination Address 16 bits Payload Match Bits Source Port Dest. Port Protocol - - CAM Table - - Bits in IP Header
10
Extensible Networking Platform 10 10 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Other Modules Implemented IPv4 CAM Filter –104 Bit header matching Fast IP Lookup (FIPL) –Longest Prefix Match –MAE-West at 10M pkts/second Packet Content Scanner –Reg. Expression Search Data Queueing –Per-flow queue in SDRAM IPv6 Tunneling Module –Tunnels IPv6 over IPv4 Statistics Module –Event counter Traffic Generator –Per-flow mixing Video Recoder –Motion JPEG Embedded Processor –KCPSM
11
Extensible Networking Platform 11 11 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Use of Identify in the FPX Design Flow Identify is natural additional to the current design flow Adds two new steps –Instrument –Debug
12
Extensible Networking Platform 12 12 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Two Part Solution Instrumenter –Assigns signals to monitor/trigger –Modifies existing VHDL Does not change original vhdl (create copies) –Streamlines synthesis Debugger –Communications to hardware via JTAG –Uses trigger setup –Includes waveform viewer –Creates VHDL simulation model
13
Extensible Networking Platform 13 13 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Instrumenter : Step 1 –Import Synplicity Project File –File >> Import Synplicty Project ….
14
Extensible Networking Platform 14 14 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking
15
Extensible Networking Platform 15 15 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Instrumenter : Step 2 –Choose Signals to Monitor –Right-click glasses symbol near signal to Sample and Trigger Sample Only Trigger Only
16
Extensible Networking Platform 16 16 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Instrumenter : Step 3 –Set Options –Click Edit IICE Options
17
Extensible Networking Platform 17 17 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Device Family JTAG port Builtin – Using RJ-45 Port on FPX Syn – Adds four JTAG I/O to toplevel (map rad_test) Name of Clock in VHDL Physical Resource Usage
18
Extensible Networking Platform 18 18 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking BufferType Deviceram – Block RAM Logic – Flip-Flops Number of Sample (Trade-Off: Resources)
19
Extensible Networking Platform 19 19 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Triggering Options Self-Explanatory
20
Extensible Networking Platform 20 20 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Instrumenter : Step 4 –INSTRUMENT DESIGN –Click “Save and Instrument Current Project”
21
Extensible Networking Platform 21 21 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Synthesis Open Synplicty RUN >> Run TCL Script… Locate Synplicity.tcl in syn_projectname folder
22
Extensible Networking Platform 22 22 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Synthesis VHDL Files Containing Instrumented Design Synplicity Synthesis Directory (.edf file here after running Synthesis) TCL Script for Importing to Synplicity Note: New Directory created by Instrumenter in Folder where imported Synplicity Project is located
23
Extensible Networking Platform 23 23 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking Continue Design Flow Add.edf file to build directory Generate Bitfile like usual Load Bitfile to FPX using NCHARGE –Make sure JTAG cable is unplugged Connect JTAG Cable to FPX and PC running IDENTIFY (Parrallel JTAG) Open IDENTIFY Debugger
24
Extensible Networking Platform 24 24 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking IDENTIFY DEBUGGER File >> Open Project –Locate the Instrumenter Project File –Should be in same directory as Synplicity Project file
25
Extensible Networking Platform 25 25 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking IDENTIFY DEBUGGER Trigger –Locate and set Trigger Event –Right Click Signal
26
Extensible Networking Platform 26 26 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking IDENTIFY DEBUGGER –Setup Project Options
27
Extensible Networking Platform 27 27 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking IDENTIFY DEBUGGER Xilinx JTAG Cable
28
Extensible Networking Platform 28 28 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking IDENTIFY DEBUGGER RUN STOP Relative Trigger Event (Trigger Beginning, Middle, End of Sample) Locate Trigger Signals Waveform
29
Extensible Networking Platform 29 29 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking IDENTIFY DEBUGGER Waveform
30
Extensible Networking Platform 30 30 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking IDENTIFY DEBUGGER RTL View
31
Extensible Networking Platform 31 31 - Lockwood / Zuver - Applied Research Laboratory -- Extensible Networking References Debugging of an Internet Packet Scheduler Using the Identify Software, by Christopher K. Zuver and John W. Lockwood, The Syndicated, Volume 4, Issue 4, 2004. An Extensible, System-On-Programmable-Chip, Content- Aware Internet Firewall, by John W. Lockwood, Christopher Neely, Christopher Zuver, James Moscola, Sarang Dharmapurikar, and David Lim; Field Programmable Logic and Applications (FPL), Lisbon, Portugal, pp. 859-868 (Paper 14B), Sep 1-3, 2003. Automated Tools to Implement and Test Internet Systems in Reconfigurable Hardware, by John W. Lockwood, Chris Neely, Chris Zuver, Dave Lim; SIGCOMM Computer Communications Review (CCR), vol 33, no 3, July 2003, pp 103-110.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.