Document 7882461

Download Report

Transcript Document 7882461

IP Processing Wrapper
Tutorial
Gigabitkits Workshop August 2001
http://www.arl.wustl.edu/arl/projects/fpx/wrapper/
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
1
IP Processing Wrapper Library




Collection of protocol components in VHDL
Module interface for higher protocol levels
Translation from/to cells to/from higher levels
Components handle protocol checksums and CRCs
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
2
Stacked Wrapper
Application
Wrapper
Wrapper
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
3
The Cell-Processor
•
•
•
•
Checks the HEC and drops erroneous cells
Dispatch cells to application or bypass
Handles control cells
Recomputes HEC for outgoing cells
HEC
Dispatch
Check
HEC
Set
Control
Cells
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
4
AAL5 Frame Processor
•
•
•
Frame Processor detects frame boundaries
FP handles CRC
FP segments data into cells
Cell
Frame
AAL5CRC
Gigabit Kits Workshop August 2001
Segment
ation
Detection
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
AAL5CRC
5
IP Processor
•
•
•
•
ATM Header
Ver HL ToS
IPID
TTL
Packet Length
Fragment
Proto
Checksum
Source IP address
IP Header
•
Verify IP version
Check Header Checksum for application (ev. Drop)
Decrease TTL field (ev. ICMP msg)
Signal start of payload (SOP)
Recompute Header Checksum
Destination IP address
IP Detect
+
Checksum
TTLDec
Checksum
Payload
IPProcessor
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
6
UDP Processor
•
•
•
Check for protocol ID (17)
Signal start of datagram (SOD)
Handle UDP checksum
ATM Header
Ver HL ToS
IPID
TTL
Proto
Packet Len
Fragment
IP Header
Checksum
Source IP address
UDP
Detect
Set
Checksum
Destination IP address
Src Port
Dest Port
Length
Checksum
UDP Header
Payload
UDPProcessor
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
7
Space & Speed
Space/LUTs
Cell Processor
Speed/MHz
781
125
Frame Processor
1251
116
IP Processor
1009
109
550
114
UDP Processor
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
8
Delays
Delay for short packages
Delay for long packages
Input
Input
output
output
Cell
Processor
4
6
4
6
Frame
Processor
21
22
10
31
IP Processor
36
39
24
197
UDP
Processor
39
44
27
202
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
9
Throughput
Throughput for short
packages
Throughput for long
packages
Input
Input
output
output
Cell
Processor
4
6
4
6
Frame
Processor
21
22
10
31
IP Processor
36
39
24
197
UDP
Processor
39
44
27
202
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
10
Downloading the library




Download at http://www.arl.wustl.edu/arl/fpx/wrapper/
VHDL simulation files
edif files for synthesis
VHDL wrapper files
» Combine several layers for convenience
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
11
Cell Wrapper files

Cellprocessor.edn
» Synthesized cell processor
» Use during place & route of your design

Cellprocessor.vhdl
» Structural simulation file
» Use during simulation of design
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
12
Frame Wrapper Files

Frameprocessor.edn
» Synthesized frame processor
» Use during place & route of your design

Frameprocessor.vhdl
» Structural simulation file
» Use during simulation of design

Framewrapper.vhdl
» Combine the frame processor with the cell processor
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
13
IP Wrapper Files

ipprocessor.edn
» Synthesized IP processor
» Use during place & route of your design

ipprocessor.vhdl
» Structural simulation file
» Use during simulation of design

ipwrapper.vhdl
» Combine the ip processor with the frame wrapper
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
14
UDP Wrapper Files

udpprocessor.edn
» Synthesized UDP processor
» Use during place & route of your design

udpprocessor.vhdl
» Structural simulation file
» Use during simulation of design

udpwrapper.vhdl
» Combine the UDP processor with the IP wrapper
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
15
UDP Application

General signals
 CLK (clock signal)
 Reset_l (synchronous reset, active low)

Input signals
»
»
»
»
»
»

D_MOD_IN (data input)
DataEn_MOD_IN (data enable)
SOF_MOD_IN (start of frame)
SOD_MOD_IN (start of datagram)
EOF_MOD_IN (end of frame)
TCA_MOD_IN (congestion control)
Gigabit Kits Workshop August 2001
Output signals
»
»
»
»
»
»
D_OUT_MOD (data output)
DataEn_OUT_MOD (data enable)
SOF_OUT_MOD (start of frame)
SOD_OUT_MOD (start of datagram)
EOF_OUT_MOD (end of frame)
TCA_OUT_MOD (congestion control)
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
16
Clock & Reset

CLK
» Clock signal for module
» 100 MHz

Reset_l
» Synchronous reset
» Low for 1 clock cycle to reset state machines
» Set by reconfiguration logic
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
17
Data

D_MOD_IN + D_OUT_MOD
» Data bus
» 32 bit wide

DataEn_MOD_IN + DataEn_OUT_MOD
» Hi during valid payload data
» Hi during trailer words (after EOF)
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
18
Boundary signals

SOF_MOD_IN + SOF_OUT_MOD
» Hi for 1 clock cycle during first ATM header word
» Signals start of a new AAL5 frame
» Note: HEC is not sent after this signal

SOD_MOD_IN + SOD_OUT_MOD
» Hi for 1 clock cycle during first word of UDP header
» UDP payload starts after two valid payload words (check Data
Enable)
» Not enabled if not a UDP packet

EOF_MOD_IN + EOF_OUT_MOD
» Hi during 1 clock cycle of last payload word of datagram
» Followed by the two trailer words of the AAL5 frame
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
19
Congestion Control

TCA_MOD_IN + TCA_OUT_MOD
» TCA signal is hi when data can be accepted, lo if no data should be
sent
» Wrappers back-propagate TCA to the NID
» Data in pipeline will still be forwarded (~cell time)
» IP wrapper has big packet buffer for outgoing data
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
20
Signals
CLK
A A
I
I
I
I
I
U U D D D D D -
-
A A D D D D D D D P
P
P
F
F
-
-
A -
I
I
I
I
I
U U D D D D D -
-
-
F
-
-
-
-
-
SOC
Data
-
D D D D D D D F
Cell Level
Data
SOF
IP Level
Frame Level
DataEn
EOF
SOP/
SOD
A
ATM Header
I
IP Header
D
Payload Data
-
Don't care
U
UDP Header
P
Padding
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
F
Frame Trailer
21
Integrate Application
UDP Wrapper
Input
Application
Output
UDP Processor
IP Processor
Frame Processor
Cell Processor
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
22
Configuration
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
23
Simulation
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
24
RAD




Application (with wrappers)
Reconfiguration logic (reset and
repramming)
Control Cell Processor (if
needed for SRAM/SDRAM
access)
SRAM/SDRAM controller (if
needed)
Gigabit Kits Workshop August 2001
RAD
Ingress
Ingress
Application
Port
Port
Reconfig
Control
SRAM
Interface
Egress
Control
Port
Cell
Processor
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
SRAM
Egress
Port
25
Synthesis




Add VHDL files for application
Set part to “Xilinx Virtex 1000E fg680”
Synthesize
E.g. Synplicity/Synplify
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
26
Place & Route





Copy wrapper-edif files (*.edn) to target directory
“ngdbuild –p xcv1000e-7-fg680 design –uc design.ucf”
“map –p xcv1000e-7-fg680 –o top.ncd design.ncd design.pcf”
“par –w –ol 2 top.ncd design.ncd design.pcf”
“bitgen design.ncd –b –l –w –f bitgen.ut”
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
27
Downloading bitfile to FPX




Connect JTAG cable to FPX
Select bitmap file in JTAG programmer
Program chip
Reset switch (NCHARGE on http://fpx.arl.wustl.edu)
Gigabit Kits Workshop August 2001
Washington
WASHINGTON UNIVERSITY IN ST LOUIS
28