1 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
CPRE 583Reconfigurable ComputingLecture 11: Wed 9/28/2011(Detailed MP2 overview)
Instructor: Dr. Phillip Jones([email protected])
Reconfigurable Computing LaboratoryIowa State University
Ames, Iowa, USA
http://class.ee.iastate.edu/cpre583/
2 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
• First exam 10/7 in class
• MP2 due Friday 10/7
• Mini literary survey assigned– Final 5-10 page write up on your tree due: Fri 9/30
midnight.
Announcements/Reminders
3 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
• Start with searching for papers from 2008-2011 on IEEE Xplorer: http://ieeexplore.ieee.org/– Advanced Search (Full Text & Meta data)
• Find popular cross references for each area
• For each area try to identify 1 good survey papers
• For each area– Identify 2-3 core Problems/issues– For each problem identify 2-3 Approaches for addressing – For each approach identify 1-2 papers that Implement the
approach.
Literary Survey
4 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Literary Survey: Example Structure
Network Intrusion Detection
P1 P2 P3
A1 A2 A3 A1 A2 A1 A2
I1 I1 I2 I1 I1 I1 I1 I2 I1
• 5-10 page write up on your survey tree
5 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Fall 2010 Student Example
6 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Initial Project Proposal Slides (5-10 slides)
• Project team list: Name, Responsibility (who is project leader)– Team size: 3-4 (5 case-by-case)
• Project idea• Motivation (why is this interesting, useful)• What will be the end result• High-level picture of final product
• High-level Plan– Break project into mile stones
• Provide initial schedule: I would initially schedule aggressively to have project complete by Thanksgiving. Issues will pop up to cause the schedule to slip.
– System block diagrams– High-level algorithms (if any)– Concerns
• Implementation• Conceptual
• Research papers related to you project idea
7 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
• FPL• FPT• FCCM• FPGA• DAC• ICCAD• Reconfig• RTSS• RTAS• ISCA
Projects Ideas: Relevant conferences
• Micro• Super Computing• HPCA• IPDPS
8 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Weekly Project Updates
• The current state of your project write up– Even in the early stages of the project you
should be able to write a rough draft of the Introduction and Motivation section
• The current state of your Final Presentation– Your Initial Project proposal presentation
(Due Fri 10/22). Should make for a starting point for you Final presentation
• What things are work & not working• What roadblocks are you running into
9 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
• Teams Formed and Topic: Mon 10/10– Project idea in Power Point 3-5 slides
• Motivation (why is this interesting, useful)• What will be the end result• High-level picture of final product
– Project team list: Name, Responsibility• High-level Plan/Proposal: Fri 10/14
– Power Point 5-10 slides• System block diagrams• High-level algorithms (if any)• Concerns
– Implementation– Conceptual
• Related research papers (if any)
Projects: Target Timeline
10 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
• Work on projects: 10/19 - 12/9– Weekly update reports
• More information on updates will be given• Presentations: Finals week
– Present / Demo what is done at this point– 15-20 minutes (depends on number of projects)
• Final write up and Software/Hardware turned in: Day of final (TBD)
Projects: Target Timeline
11 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Project Grading Breakdown
• 50% Final Project Demo• 30% Final Project Report
– 20% of your project report grade will come from your 5-6 project updates. Friday’s midnight
• 20% Final Project Presentation
12 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Common Questions
13 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
• MP2 detailed overview
Overview
14 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
• UDP / IP / Ethernet protocol layout
• Basic understanding of how and why tcpdump is useful
• Quick look at a simple network socket program used in MP2 to send/receive data
• MP2 testbench organization
• How to tell the FPGA to connect to I/O pins
What you should learn
15 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
MP2 Overview
16 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
• Raise an alert signal when the pattern (e.g. “corn!”) is detected
• Return the number of times “corn!” is detected– Place count value as the last byte of the payload
Example: Network Processing Tasks
17 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Streaming Network application (MP2)• Detect patterns in payload (e.g. “Corn!”)• Place the number of detections in last byte
of payload
FSM Send Alert
Modify Packet
! n r o C length dest port
18 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Network Processing Example: UDP
• UDP – User Datagram Protocol– Popular protocol for sending data over the internet
(TCP is popular another protocol)– Typical encapsulated within IP (Internet Protocol)
• UDP/IP– Gives no guarantee of delivery
• Relies on application layer to implement reliability• Unlike TCP which has reliably delivery build in.
• Reference for more info on IP and UDP details– http://www.freesoft.org/CIE/
• RCFs• Course
19 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
UDP/IP Packet Format
Ver IHL TOS Total Length
Identification flagsfragment offset
TTL Protocol Header Checksum
Source IP Address
Destination IP Address
PaddingOptions
Note: flags 3 bits
32-bits
IP Header
Source Port Destination Port
Length Checksum
UDP Header
Byte1
UDP length (bytes) =UDP header+payload
0 31
Byte2 Byte3 Byte4
UDP Protocol = 17
Payload
20 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Useful Network Protocol Links
•Ethernet– http://wiki.wireshark.org/Ethernet#head-477fea80232d5062bbea553c84d4691d42fc9f80
•IP– http://www.networksorcery.com/enp/protocol/ip.htm
•UDP– http://www.tcpipguide.com/free/t_UDPMessageFormat.htm
21 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Viewing Low-level network traffic
•Why?– Because you may corrupt packets, causing the OS to
drop the packet before your application can see it•Tcpdump
– Useful program for viewing low level network traffic– Typical need greater than regular user access
•Example usage– sudo /usr/sbin/tcpdump -i eth0 -v -s 0 -XX
22 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
MP2 structure
•Testbench– Sends ethernet packets to your design– Only knows ehternet: treats IP and UDP as part of its
data payload•Ucf (user constriant file)
– This is how the FPGA knows how to connect to I/O pins– Lets take a look
23 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
MP2 demo (details)
•Running MP2
•A quick look at a simple network socket C program
24 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Next Lecture
• Convey: HC1 overview/case study– Reading 5 and 6
25 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Questions/Comments/Concerns
• Write down– Main point of lecture
– One thing that’s still not quite clear
– If everything is clear, then give an example of how to apply something from lecture
OR
26 - CPRE 583 (Reconfigurable Computing): Reconfiguration Management Iowa State University (Ames)
Lecture Notes