Upload
prescott-pollard
View
28
Download
0
Embed Size (px)
DESCRIPTION
Technion - Israel institute of technology department of Electrical Engineering. הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל. High speed digital systems laboratory. המעבדה למערכות ספרתיות מהירות. Final Presentation I Subject:. High-Speed Communication Channel(s) Switch. - PowerPoint PPT Presentation
Citation preview
Performed by: Yulia TurovskiLior Bar Lev
Instructor: Mony Orbach
High speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
הטכניון - מכון טכנולוגי לישראל
הפקולטה להנדסת חשמל
Technion - Israel institute of technologydepartment of Electrical Engineering
Final Presentation ISubject:
High-Speed Communication Channel(s)Switch
Winter semester 20101
OutlineHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
2
•Reminder – Motivation and Goal•Stratix II SI Development Kit•Project Basics•SerialLite II•Network & Data Link Packet Format•Architecture and Components•Simulations•Validation Method•Gantt diagram
Motivation and GoalHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
2
Motivation: •High-speed communication between devices.•Utilizing high frequency achievable with new hardware.•Demand for reliable communication
Goal: •Design & implementation of high speed communication switch.•Use of advanced communication protocols.•Connect between as many devices as possible.•Best transmission rate possible.
Stratix II SI Development KitHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
2
•The hardware for the project: Stratix II GX Transceiver Signal Integrity Development Board•Clocking: Numerous oscillators, we chose PCI-Express standard 156.25 MHz.•Communication channels:•4 identical stripline channels - USED•2 unique channels (microstrip and long trace simulator) – not used
•Stratix II GX EP2SGX90EF1152C3 FPGA – 90,960 LE’s, Max Transceiver data rate 6.375Gbps, 4,520K RAM, 192 18X18 Multipliers, 48 DSP blocks, 8 PLLs, 558 I/O pins
Stratix II SI Development KitHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
2
Project BasicsHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
2
•Communication using board’s transceivers.•Basic element: ALT2GXB MegaCore:•Receiver-transmitter from transfer size (32bit max for 1 lane) to serial interface.•Multiplies core clock to reach desired data rate•Tested thoroughly in previous project•Successfully burnt and tested
•Alternative: SerialLite II MegaCore:•Uses ALT2GXB as a component•Adds optional data link services i.e. reliability, CRC, flow control etc.
Altera SerialLite IIHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
2
•By documentation, core can act as physical and data link layers of this project.•Use was forsaken due to technical difficulties.•Instead:•using the physical layer from a previous project•created our own data link layer.•Simple but sufficient GBN protocol of fixed window (10^(-12) error probability).
Network Layer FormatHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
2
•Network Layer (routing):•Constant packet size of 128 bytes•Variable packet size: •Would be more efficient and versatile•Complicates the design significantly
•Constant packet size:•Simplifies design•Enables determining quality of service, i.e. number of packets in memory
•Reminder: Mid-semester presentation showed 32-byte packets, which were increased to minimize overhead.•but not so much, as needs to fit in FPGA!
Address 8bit Data 123Byte 32bit CRCPacket
Data Link Format & ProtocolHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
2
•Data Link Layer (reliability over single connection):•Simple GBN with constant generic window <=7•GBN: •Provides enough reliability•Simplifies the design (but is still not trivial)•Ack for every message – 1/33 additional overhead
•Alternative – Selective Repeat•Provides same reliability•Requires Nack and discards a packet, but only for bad messages – very low probability (10^-9)
•Project demand was GBN.
FF+msgnum (4 byte) Network layer packet (128 byte)Frame
F0+msgnum (4 byte)ACK
Architecture DiagramHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
3
ALTGX
TRNS
RECV
Trans Mem
32
32
SPLIT128
INBUF
INBUF
INBUF
INBUF
OUTBUF128
ALTGX
TRNS
RECV
Trans Mem
32
32
SPLIT128
INBUF
INBUF
INBUF
INBUF
OUTBUF128
ALTGX
TRNS
RECV
Trans Mem
32
32
SPLIT128
INBUF
INBUF
INBUF
INBUF
OUTBUF128
ALTGX
TRNS
RECV
Trans Mem
32
32
SPLIT128
INBUF
INBUF
INBUF
INBUF
OUTBUF128
ROUTER
Architecture DiagramHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
3
ALTGX
TRNS
RECV
Trans Mem
32
32SPLIT
128
INBUF
INBUF
INBUF
INBUF
OUTBUF128
ROUTER
Architecture NotesHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
2
•Serial interfaces send 32 bits on every channel every clock•The switch core (between receiver and transmitter) sends 128 bits every clock•Reason: To compensate for changing routes•Serial interfaces always send to same line•In-switch routing may be occupied due to routing options•i.e. all ports transmit to the same port
•X4 rate for 4 ports means no congestion in switching (avg)•Disadvantages:•Complicates design•Lots of logic for parallel data transfer (128-bit muxes)
Architecture NotesHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
2
•Many ways to implement queues, fairness, buffering\GBN.•Simple FIFO per input:•Seems memory efficient – single queue•Packets to full destinations block packets to others not full• - which fills buffers => more memory!
•Single non-FIFO per input:•Most memory efficient – single buffer with bypasses•Requires memory management – very complicated
•FIFO per input per destination:•Most memory-consuming – even when some directions idle•Most parallel – actually a switch to each destination•Each FIFO can be smaller to minimize consumption•But needed to deal with pre-switch congestion
ALTGX BlockHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
ALTGX
•The physical layer of the switch.•Parallel interface is 32-bit wide, chosen clock is the PCI-Express standard 156.25 (multiplied)•Serial interface is a multiple of said clock, up to 6.25GB•Used in previous projects•Successfully synthesized and burnt onto our FPGA•ALTGX is a sub-block of the forsaken SerialLite megacore
Receiver BlockHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
•The receiver side of the Data Link layer•Receives 32 bits of data every clock•Packs data to 128-bit words•CRC check•Informs transmitter of:•Good packets to ACK•Received ACKS to forward GBN window
•Outputs the virtual 8-bit address to translation memory•Result 2-bit port is forwarded to next block with some delay
RECV
SPLIT BlockHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
•Destination port arrives 3-clocks late from translation memory•Unit includes a shift-register to synchronize•Outputs the data to all 4 In Buffers•WREN is enabled for the destination port only
SPLIT
INBUF BlockHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
•16 such buffers – one per input-output pair•When receives signal from router, sends 8 128-bit words in 8 clocks•Uses dual-port ram•FIFO
INBUF
OUTBUF BlockHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
•4 such buffers – one per output•Mux in entrance to buffer•When receives signal from router, stores 8 128-bit words in 8 clocks•Mux transfers the data from the INBUF activated by router
•Uses dual-port ram•FIFO•Data is read by transmitter•When finished, entries are invalidated
OUTBUF
ROUTER BlockHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
•Algorithm:•Hold start index (Round Robin)•For each output port j
•For each in port i (start index to N and then 1 to start-1)•Each buffer offers first message for each output port (4)•If size(i)>Max
•Max=size(i), Pchoose(j)=i•Transfer Pchoose[j]
4
ROUTER
•Chooses an input entry for each available output buffer and starts transmission at both ends•Fairness using Round Robin for start index
Transmitter BlockHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
•The transmitter side of the Data Link layer•Reads 128-bit words directly from OUTBUF•Adds 32 bit header•Transmits 32 bits of data every clock•Handles GBN protocol window for the port•Actions:•Advance window when receives ACK•Sends ACK as asked by receiver
TRNS
Architecture DiagramHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
3
ALTGX
TRNS
RECV
Trans Mem
32
32SPLIT
128
INBUF
INBUF
INBUF
INBUF
OUTBUF128
ROUTER
Architecture DiagramHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
3
ALTGX
TRNS
RECV
Trans Mem
32
32
SPLIT128
INBUF
INBUF
INBUF
INBUF
OUTBUF128
ALTGX
TRNS
RECV
Trans Mem
32
32
SPLIT128
INBUF
INBUF
INBUF
INBUF
OUTBUF128
ALTGX
TRNS
RECV
Trans Mem
32
32
SPLIT128
INBUF
INBUF
INBUF
INBUF
OUTBUF128
ALTGX
TRNS
RECV
Trans Mem
32
32
SPLIT128
INBUF
INBUF
INBUF
INBUF
OUTBUF128
ROUTER
SimulationsHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
8
•…
Validation MethodHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
8
•4 transmitters with pre-initialized dual port rams•Simple data validation control (to keep track of number of packets sent)•Various scenarios can be implemented this way•Measure latency•Measure Throughput•Parallel transmission•Congestion – all ports transmit to same port•Deliberate errors
•Output the data through JTAG (as told by our instructor)
Validation Method (2)High speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
2
Port I
Port II
Port III
Port IV
Port I
Port II
Port III
Port IV
Test device Switch
TRNS
TRNS
TRNS
TRNS
Valid control
RECV
RECV
RECV
RECV
OUT
OUT
OUT
OUT
Project ScheduleHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
9
Tasks17-23/1024-30/1031/10 – 6/117-13/1114-20/1121-27/1127/11 – 3/12
Part A presentation
Handling Clocking
RT Test
System Connection Sim
Validation system
Burning + tests
Part B presentaion
Minimum goal: showing one or two tests on boardMaximum goal: showing all tests planned