1 Presented By: Eyal Enav and Tal Rath Eyal Enav and Tal Rath Supervisor: Mike Sumszyk Mike Sumszyk.

Slides:



Advertisements
Similar presentations
Computer Networks TCP/IP Protocol Suite.
Advertisements

Categories of I/O Devices
Chapter 17 Networking Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William.
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
ECE Department: University of Massachusetts, Amherst ECE 354 Lab 3: Transmitting and Receiving Ethernet Packets.
CCNA – Network Fundamentals
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 OSI Transport Layer Network Fundamentals – Chapter 4.
IS333, Ch. 26: TCP Victor Norman Calvin College 1.
CS3505 The Internet and Info Hiway transport layer protocols : TCP/UDP.
Chapter 7 – Transport Layer Protocols
Copyright 1999, S.D. Personick. All Rights Reserved. Telecommunications Networking II Lecture 32 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
Networking Theory (Part 1). Introduction Overview of the basic concepts of networking Also discusses essential topics of networking theory.
ECE Department: University of Massachusetts, Amherst ECE 354 Spring 2009 Lab 3: Transmitting and Receiving Ethernet Packets.
Ethernet Bomber Stand-Alone / PCI-E controlled Ethernet Packet Generator Oren Novitzky & Rony Setter Advisor: Mony Orbach Spring 2008 – Winter 2009 Characterization.
EE 4272Spring, 2003 Protocols & Architecture A Protocol Architecture is the layered structure of hardware & software that supports the exchange of data.
Data Communications Architecture Models. What is a Protocol? For two entities to communicate successfully, they must “speak the same language”. What is.
Review on Networking Technologies Linda Wu (CMPT )
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Transport Protocols Slide 1 Transport Protocols.
USB 2.0 INTRODUCTION NTUT CSIE 學 生:許家豪 指導教授:柯開維教授.
Ethernet Bomber Ethernet Packet Generator for network analysis Oren Novitzky & Rony Setter Advisor: Mony Orbach Spring 2008 – Winter 2009 Midterm Presentation.
USB 2.0 to SD-Card File Transfer
Gursharan Singh Tatla Transport Layer 16-May
By: Nadav Haklai & Noam Rabinovici Supervisors: Mike Sumszyk & Roni Lavi Semester:Spring 2010.
Process-to-Process Delivery:
USB host for web camera connection
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
Lab 2: Capturing and Displaying Digital Image
Introduction to USB © 2010 Renesas Electronics America Inc. All rights reserved.
USB host for web camera connection
1.  Project Goals.  Project System Overview.  System Architecture.  Data Flow.  System Inputs.  System Outputs.  Rates.  Real Time Performance.
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
Project Goals 1.Get to know Quartus SoPC builder environment 2.Stream 2.Stream Video 3.Build 3.Build foundation for part B - Tracking system.
1 Chapter Overview TCP/IP DoD model. 2 Network Layer Protocols Responsible for end-to-end communications on an internetwork Contrast with data-link layer.
Design and Characterization of TMD-MPI Ethernet Bridge Kevin Lam Professor Paul Chow.
Microprocessor-based Systems
1 7-Oct-15 OSI transport layer CCNA Exploration Semester 1 Chapter 4.
1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
CSP Implementing a network 1 Implementing a network Lecturer: Smilen Dimitrov Cross-sensorial processing – MED7.
NIOS II Ethernet Communication Final Presentation
CSE 6590 Department of Computer Science & Engineering York University 111/9/ :26 AM.
Performed by: Nadav Haklai Noam Rabinovici Instructor: Mike Sumszyk Spring Semester 2010 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory.
NAND Flash Failure Behavior Sponsored By Micron Technology Inc.
Networking Basics CCNA 1 Chapter 11.
Lecture 4 Overview. Ethernet Data Link Layer protocol Ethernet (IEEE 802.3) is widely used Supported by a variety of physical layer implementations Multi-access.
1 OSI and TCP/IP Models. 2 TCP/IP Encapsulation (Packet) (Frame)
Slide #1 CIT 380: Securing Computer Systems TCP/IP.
Proposal for an Open Source Flash Failure Analysis Platform (FLAP) By Michael Tomer, Cory Shirts, SzeHsiang Harper, Jake Johns
Ethernet Bomber Ethernet Packet Generator for network analysis
USB host for web camera connection Characterization presentation Presenters: Alexander Shapiro Sergey Alexandrov Supervisor: Mike Sumszyk High Speed Digital.
Renesas Electronics America Inc. © 2010 Renesas Electronics America Inc. All rights reserved. Overview of Ethernet Networking A Rev /31/2011.
Voice Over Internet Protocol (VoIP) Copyright © 2006 Heathkit Company, Inc. All Rights Reserved Presentation 5 – VoIP and the OSI Model.
LonWorks Introduction Hwayoung Chae.
Cisco I Introduction to Networks Semester 1 Chapter 7 JEOPADY.
Data Stream Managing Unit Intermediate Presentation Advisor : Vitaly Spector Students : Neomi Makleff Hadas Azulay Lab : High Speed Digital Systems.
1 14-Jun-16 S Ward Abingdon and Witney College CCNA Exploration Semester 1 OSI transport layer CCNA Exploration Semester 1 Chapter 4.
IST 201 Chapter 11 Lecture 2. Ports Used by TCP & UDP Keep track of different types of transmissions crossing the network simultaneously. Combination.
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
OSI Protocol Stack Given the post man exemple.
TCP/IP Transmission Control Protocol / Internet Protocol
Network Architecture Introductory material
Review of Important Networking Concepts
Process-to-Process Delivery:
Greg Bell Business Development Mgr Industrial & Security Markets
Low cost FPGA implimentation of tracking system from USB to VGA
TCP/IP Protocol Suite: Review
CPEG514 Advanced Computer Networkst
Process-to-Process Delivery: UDP, TCP
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Transport Layer 9/22/2019.
Presentation transcript:

1 Presented By: Eyal Enav and Tal Rath Eyal Enav and Tal Rath Supervisor: Mike Sumszyk Mike Sumszyk

◦ Implementing real-time streaming of webcam video over LAN using System on Programmable Chip. ◦ Learning SoPC environment. ◦ Designing a system for real-time demands. ◦ Establishing a USB and Ethernet connections. ◦ Investigating and implementing suitable internet protocols. 2

 DE2 Altera board  Ethernet 10/100M port.  DM9000 Ethernet controller.  USB at full speed ISP-1362 (Philips).  Cyclone II FPGA  Nios II soft-core.  Avalon switch fabric.  Environment: SOPC builder, Quartus II and NIOS IDE II. 3

4 Cyclone II Nios II Soft Processor Avalon Switch Fabric On Chip Memory Philips ISP1362 (USB) DM9000A (Ethernet Controller) Ethernet Port 10/100M LAN Remote PC Local PC USB Port USB Cable USB Cable RJ-45

5 Camera Local PC USB - device USB - host USB Service Program DE2 USB - device Frames Nios II Ethernet Port Wait for Client request Create UDP Packets Get data From USB Send over Ethernet Remote IP & MAC Remote PC LAN UDP Receive & Video Display Program Ethernet Ether. Packets Frames Screen Network Subsystem NIOS Network Module

 DE2 is connected to LAN. ◦ DM9000A PHY/MAC Controller supplies an Ethernet interface for NIOS II.  Remote computer is connected to LAN. 6 LAN

 Real time uncompressed video stream demands.  Layers 1,2:Ethernet - DM9000A Ethernet controller.  Layer 3: IP.  Optional Transport layer protocols: ◦ TCP (Connection oriented)  Reliable and provides an ordered delivery of a stream.  Slow. ◦ UDP (Connectionless)  Fast.  Not reliable. 7

 UDP protocol was chosen due to strict speed demands.  DE2 network module was implemented. 8

1. Creates an IP,UDP and Ethernet headers that wraps the stream data. ◦ Priority fields were set to maximum priority. ◦ Destination PC’s IP and MAC address are hardcoded. 9

2. Sends packet to Ethernet controller. 3. Initializes sending process.  Packet size: Max Ethernet packet size Bytes without overheads. ◦ Reduced header overheads. 10

 Timing optimizations were made in order to gain speedup. ◦ Using DM9000A UDP and IP fast checksum functionality. ◦ Minimum delays between packets.  System test configurations: 1.PC to DE2 over Diglab network. 2.Direct cable from PC to DE2. 11

 Direct cable from PC to DE2.  Maximum transfer rate: 23.3 Mbps. ◦ Packet Error rate:  Mean: 6.12%.  Stdev:1.29%. ◦ Allows us to attain a RGB video rate of 15 FPS with a pixel resolution of 230X230 (Uncompressed). (Or 400X400 BW ) 12

13 Camera Local PC USB - device USB - host USB Service Program DE2 USB - device Frames Nios II Ethernet Port Wait for Client request Create UDP Packets Get data From USB Send over Ethernet Remote IP & MAC Remote PC LAN UDP Receive & Video Display Program Ethernet Ether. Packets Frames Screen Usb Subsystem NIOS USB Device Module

 DE2 board ◦ Connected to PC through USB port. ◦ Using DE2 Philips controller. ◦ DE2 functions as a USB device. ◦ PC functions as a USB host.  USB webcam ◦ Simpler than the DE2 connection. ◦ Generic USB webcam. ◦ Connected to PC through a USB port. 14

 Optional endpoint transfer modes: ◦ Bulk. ◦ Isochronous. ◦ Interrupt.  Isochronous mode supports real-time video streams: ◦ Guaranteed access to USB bandwidth. ◦ Bounded latency. ◦ Error detection via CRC, but no retry or guarantee of delivery. ◦ No data toggling.  Therefore, Isochronous mode was chosen and will operate in full speed mode (Maximum of 12Mbps). 15

 Complex.  Sends a series of requests to the device.  Device replies by returning filled enumerations.  Host then chooses the preferred transfer mode (In our case: Isochronous).  A continuous data transfer begins. 16

 USB Host module was implemented as a C# program. ◦ Implements data transactions between webcam and DE2 board through PC USB ports. ◦ Works under real-time demands. ◦ Uses a USB driver generated by Jungo Windriver software. ◦ Based on an open source. 17

 On power up device is being reset.  Device acquires an appropriate host-side driver by communicating with the host.  Returns answers to host requests according to USB specification.  Being set to a specific configuration by host and starts send/receive data. 18

 USB device specification document provides detailed information about device implementation.  A Bulk mode demonstration was supplied with DE2 board.  Isochronous mode was required for video streaming. 19

 The USB protocol requires correspondence between several layers: ◦ NIOS – USB Philips controller (DE2 Board). ◦ USB DE2 controller – Windows driver (DE2 Board – PC). ◦ Windows driver – Windows USB host application (PC).  The demo code that was supplied with DE2 is for Bulk transfer, which is completely different from Isochronous.  Supplied code was very messy, and could hardly be used.  USB code was written for Isochronous transfer from scratch. 20

 USB controller methodology : ◦ Consists of several Hardware Abstraction and protocol Layers (HAL). ◦ HAL code is CPU specific and may not be fully compatible with the NIOS CPU. (no documentation) ◦ An Interrupt Service Routine (ISR) should be handled by the NIOS for USB controller events. 21

22 Camera Local PC USB - device USB - host USB Service Program DE2 USB - device Frames Nios II Ethernet Port Wait for Client request Create UDP Packets Get data From USB Send over Ethernet Remote IP & MAC Remote PC LAN UDP Receive & Video Display Program Ethernet Ether. Packets Screen System Endpoints Camera USB program Movie Player Program

 Two endpoints programs written by us (C#):  “Webcam Streamer” ◦ Accepts raw frames from webcam. ◦ Disassemble frames to USB packets. ◦ Sends USB packets to device (DE2).  “Movie Streamer” ◦ Accepts UDP packets from the SoPC. ◦ Uses buffering and reassembles to video frames. ◦ Error packets are considered as black frame regions. Possible Enhancement: Using compression to improve bandwidth. Both programs work under real time demands 23

 UDP and USB Isochronous features were proved as useful when transferring uncompressed video over Ethernet.  USB implementation involves a fundamental understanding of protocol components.  A complete system was developed, and can be used for further USB and network SoPC based systems. 24

 USB Module should work in isochronous mode.  USB implementation involves a fundamental understanding of protocol components.  UDP features proved as useful when transferring uncompressed video over Ethernet. 25