1 / 11

Software Tools for the Field Programmable Port Extender (FPX)

Software Tools for the Field Programmable Port Extender (FPX). Todd Sproull Washington University, Applied Research Lab January 11, 2001 Supported by: NSF ANI-0096052 and Xilinx Inc. http://www.arl.wustl.edu/arl/projects/fpx. Controlling the FPX. Methods of Communication - Fpx_control

sidone
Download Presentation

Software Tools for the Field Programmable Port Extender (FPX)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Tools for the Field Programmable Port Extender (FPX) Todd Sproull Washington University, Applied Research Lab January 11, 2001 Supported by: NSF ANI-0096052 and Xilinx Inc. http://www.arl.wustl.edu/arl/projects/fpx

  2. Controlling the FPX • Methods of Communication - Fpx_control - Telnet - Web Interface / CGI - Basic_send - User Applications • Emulation • Nid_listener • Rad_listener • Software Plug-ins - Concepts - Functionality Fip Memory Manager Remote Applications Read Basic WEB Telnet Fip Send Access CGI Basic Send Software Controller fpx_control fpx_control 0.0 7.1 VCI 76 (NID), VCI 100 (RAD) VCI 115 (NID), VCI 123 (RAD) OC-3 Link (up to 32 VCIs) Washington University NID NID Gigabit Switch RAD RAD

  3. Pictorial view of fpx_control interfaced with hardware Fpx_control {0-7}.{0/1}

  4. FPX Software Applications • API allows applications to communicate with fpx_control • Read_FIP - Interface between FIPL software and fpx_control - Reads in memory updates from FIPL - Sends updates to fpx_control - Replies to FIPL with successful transmission

  5. FIPL Interface to FPX Flow of information from FIPL to FPX -FIPL issues an add route command -Read_FIP takes stdin and packages the strings into 1 large string -Read_FIP opens a TCP socket and sends data to fpx_control -Fpx_control reads in string and packets commands into multiple control cells for FPX -FPX updates memory and sends acknowledgement back to fpx_control -Acknowledgements travel all the way back to FIPL and user is able to enter another command

  6. FIPL Example • Quit fpx_control:q • Delete log: rm rad_log_##.txt • Restart fpx_control: fpx_control #.# • Enable RAD logging on fpx_control: g rad • On different Xterm: • Lauch FIPL interface: rf • Add the following routes: • A 0.0.0.0/0 0 • A 10.186.192.0/19 63 • A 218.128.0.0/11 34 • A 10.186.160.0/3 4 • A 128.0.0.0/3 6 • A 10.186.160.0/19 77 (new route) • Quit FIPL interface: q

  7. Read_fip Software • Read_fip is a modified version of basic_send • Many different possibilities customizing basic_send • Accepts multiple strings and bundles into a large string • Sends the string after an end of command sequence “****” • - Communication from Web using CGI or Perl allows more options for issuing commands

  8. Software Plug-ins for Hardware Modules • Software that allows RAD applications the ability to format unique control cells • Enables developers to easily change the format of a control cell independent of fpx_control

  9. Contents of a Software Plug-in Module <module> # Module title and version number Fast IP Lookup Example Module 1.0 </module> <input_opcodes> # Input Opcode, Menu_command, Command_argument 0x14, R, Root_Node_Pointer, 0x16, I, IP_Flow_1, </input_opcodes> <output_opcodes> # Output opcode, Text, Command_argument 0x15, Root node pointer Updated to ,Root_Node_Pointer, 0x17, Name changed to ,IP_Flow_1, </output_opcodes> <fields> # Command_argument, argument_type, # start_word,start_bit,stop_word,stop_bit Root_Node_Pointer,x,1,31,1,13, IP_Flow_1,x,2,31,2,16, </fields> <help> # Help Menu R root pointer address update: R address (hex) I Update IP Flow 1: I address (hex) </help> • Tags identify relevant fields • Developer specifies data types and lengths • Provides total control over information sent to RAD application • Example is “Fast IP Lookup” module

  10. Cell Format of FIPL Module

  11. Using Software Plug-ins • Issue Probe command to see what modules have been loaded • “p” • Load required module • “n fipl.fpx” • Issue commands for that module • “m1.r 1234” • “m1.I 4321” • Commands follow the format: • m#.command argument (if necessary)

More Related