Interfacing mixed signal peripherals by protocols of packet type Emil Gueorguiev Saramov Angel Nikolaev Popov Computer Systems Department, Technical University.

Slides:



Advertisements
Similar presentations
Computer Buses Ref: Burd, Chp – 220 Englander, Chp 7 p
Advertisements

Cortex-M3 Implementation Overview. Chapter 6 in the reference book.
High Speed Data Acquisition Architectures. Some Basic Architectures Non-Buffered (streaming) FIFO Buffered Multiplexed RAM Ping Pong Multiplexed RAM Dual.
FX to FX2: A Comparison. Agenda Block diagram Evolution Hardware Firmware Wrap-up.
StreamBlade SOE TM Initial StreamBlade TM Stream Offload Engine (SOE) Single Board Computer SOE-4-PCI Rev 1.2.
Sumitha Ajith Saicharan Bandarupalli Mahesh Borgaonkar.
Chapter 10 Input/Output Organization. Connections between a CPU and an I/O device Types of bus (Figure 10.1) –Address bus –Data bus –Control bus.
Microprocessor or Microcontroller Not just a case of “you say tomarto and I say tomayto” M. Smith, ECE University of Calgary, Canada.
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
Digital RF Stabilization System Based on MicroTCA Technology - Libera LLRF Robert Černe May 2010, RT10, Lisboa
TigerSHARC and Blackfin Different Applications. Introduction Quick overview of TigerSHARC Quick overview of Blackfin low power processor Case Study: Blackfin.
A.R. Hertneky J.W. O’Brien J.T. Shin C.S. Wessels Laser Controller One (LC1)
IO Controller Module Arbitrates IO from the CCP Physically separable from CCP –Can be used as independent data logger or used in future projects. Implemented.
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Project performed by: Naor Huri Idan Shmuel.
Interface of DSP to Peripherals of PC Spring 2002 Supervisor: Broodney, Hen | Presenting: Yair Tshop Michael Behar בס " ד.
ECE Department: University of Massachusetts, Amherst Lab 1: Introduction to NIOS II Hardware Development.
Aztec PC Oscilloscope Michael Mason Jed Brown Josh Price Andrew Youngs.
Implementation of DSP Algorithm on SoC. Mid-Semester Presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompaning engineer : Emilia Burlak.
CPU Chips The logical pinout of a generic CPU. The arrows indicate input signals and output signals. The short diagonal lines indicate that multiple pins.
May 8, Peripheral Design Options For USB 2.0 Solutions Dave Thompson Manager of High Speed I/O Development Agere Systems,
Computer Organization and Assembly language
Microcontroller: Introduction
BLDC MOTOR SPEED CONTROL USING EMBEDDED PROCESSOR
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
May 17, Design Option Trade-Offs w Transceiver Design - Dr. Zong Liang Wu, Philips.
PHY 201 (Blum) Buses Warning: some of the terminology is used inconsistently within the field.
- 1 - A Powerful Dual-mode IP core for a/b Wireless LANs.
Computerized Train Control System by: Shawn Lord Christian Thompson.
May 9, USB 2.0 High Bandwidth Peripheral Design Challenges Robert Shaw Cypress Semiconductor Robert Shaw Cypress Semiconductor
The 6713 DSP Starter Kit (DSK) is a low-cost platform which lets customers evaluate and develop applications for the Texas Instruments C67X DSP family.
ECE 447: Lecture 1 Microcontroller Concepts. ECE 447: Basic Computer System CPU Memory Program + Data I/O Interface Parallel I/O Device Serial I/O Device.
Introduction to USB Development. USB Development Introduction Technical Overview USB in Embedded Systems Recent Developments Extensions to USB USB as.
October 10, USB 2.0 Peripheral Design Options Dave Podsiadlo Product Marketing Manager Cypress Semiconductor Single-Chip, Internal.
Lecture 18 Lecture 18: Case Study of SoC Design ECE 412: Microcomputer Laboratory.
Revised: Aug 1, ECE 263 Embedded System Design Lesson 1 68HC12 Overview.
Buses Warning: some of the terminology is used inconsistently within the field.
1 SERIAL PORT INTERFACE FOR MICROCONTROLLER EMBEDDED INTO INTEGRATED POWER METER Mr. Borisav Jovanović, Prof.dr Predrag Petković, Prof.dr. Milunka Damnjanović,
DLS Digital Controller Tony Dobbing Head of Power Supplies Group.
Typical Microcontroller Purposes
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
Computer Architecture Lecture10: Input/output devices Piotr Bilski.
Microcontroller Presented by Hasnain Heickal (07), Sabbir Ahmed(08) and Zakia Afroze Abedin(19)
University of Calcutta CBM 1 ROC Design Issues Dr. Amlan Chakrabarti, Dr. Sanatan Chattopadhyay & Mr. Suman Sau.
Understanding Data Acquisition System for N- XYTER.
Microprocessor-based Systems
11/16/2006 WSN Mote- MCU & Sensor Hardware 1 ECET 581 Wireless Sensor Networks Mote – MCU & Sensor Hardware 2 of 3 Fall 2006
Owner: VBHUSales Training 03/15/2013 Cypress Confidential IDT 72T36135M vs. Cypress CYF072x Video Buffering Applications High density FIFOs with unmatched.
ATtiny23131 A SEMINAR ON AVR MICROCONTROLLER ATtiny2313.
1 Presented By: Eyal Enav and Tal Rath Eyal Enav and Tal Rath Supervisor: Mike Sumszyk Mike Sumszyk.
Alexei SemenovGeneric Digitizer Generic Digitizer 10MHZ 16 bit 6U VME Board.
Lecture 12: Reconfigurable Systems II October 20, 2004 ECE 697F Reconfigurable Computing Lecture 12 Reconfigurable Systems II: Exploring Programmable Systems.
Embedded Network Interface (ENI). What is ENI? Embedded Network Interface Originally called DPO (Digital Product Option) card Printer without network.
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Project performed by: Naor Huri Idan Shmuel.
Proposal for an Open Source Flash Failure Analysis Platform (FLAP) By Michael Tomer, Cory Shirts, SzeHsiang Harper, Jake Johns
DDRIII BASED GENERAL PURPOSE FIFO ON VIRTEX-6 FPGA ML605 BOARD PART B PRESENTATION STUDENTS: OLEG KORENEV EUGENE REZNIK SUPERVISOR: ROLF HILGENDORF 1 Semester:
بسم الله الرحمن الرحيم MEMORY AND I/O.
MADEIRA Valencia report V. Stankova, C. Lacasta, V. Linhart Ljubljana meeting February 2009.
Introduction to Microcontroller Technology
Microcontrollers, Basics Fundamentals of Designing with Microcontrollers 16 January 2012 Jonathan A. Titus.
USB The topics covered, in order, are USB background
Cypress CY3663 Development Kit
The Complete Solution for Cost-Effective PCI & CompactPCI Implementations 1.
Introduction to Microprocessors and Microcontrollers
CSCI 315 Operating Systems Design
Lecture 3 - Instruction Set - Al
AT91RM9200 Boot strategies This training module describes the boot strategies on the AT91RM9200 including the internal Boot ROM and the U-Boot program.
ChipScope Pro Software
ChipScope Pro Software
ADSP 21065L.
Presentation transcript:

Interfacing mixed signal peripherals by protocols of packet type Emil Gueorguiev Saramov Angel Nikolaev Popov Computer Systems Department, Technical University of Sofia Kliment Ohriski blvd. No Sofia, Bulgaria phone: phone:

1. Introduction Interfacing requirements of mixed signal peripheral devices: Data flow with high transfer rate Low latencies introduced by the interface Remote analog/mixed signal units Minimized interface hardware Application groups: Test and measurement instruments – DSO, MSO, logic analyzers, protocol analyzers, data generators, AFG Digital video Industrial process control and monitoring

High-speed Universal Serial Bus (USB 2.0) key features: Signaling (maximum) data transfer rate 480 Mb/s Low complexity/cost of the interface hardware Single host multiple device architecture Packet type protocol High reliability, hardware level of data integrity checks and retries Software supported in almost all platforms and operating systems USB 2.0 host is embedded in any new computer system Backward compatibility with low- and full-speed USB1.1 devices

Cypress EZ-USB FX2 Worlds first high speed USB2.0 integrated device controller Innovative design of the peripheral side interface: Slave FIFO peripheral interface General Programmable Interface (GPIF) Smart USB 1.1/2.0 engine (Serial Interface Engine, SIE) – handles most of the USB protocol in hardware Fast enhanced 8051 compatible CPU core CPU runs firmware that can be downloaded via USB, from onboard EEPROM or directly in FLASH/PROM The CPU can exclude itself from data path (in high data rate cases) or to be involved in data processing Convenient standard peripherals: 3 timers/counters, 2 UART, I2C master controller Expanded interrupt system with vectored USB interrupts Large number of general purpose I/O lines Low power version – FX2LP

2. Reconfigurable mixed signal system The system is developed as universal laboratory equipment of Computer Systems Dept., TU-Sofia Hardware structure (data path - Fig.1) Build around FPGA Xilinx Spartan 2 that is configured from PC via JTAG port or from on board FLASH 2 channel 8-bit high-speed input analog interface, 400MS/s High speed digital interface, 8-bit 200MHz Zero Bus Turnaround (ZBT)/No Bus Latency (NOBL) SRAM USB 2.0 EZ-USB FX2 device controller Address/Data/Control Bus for expanding with high precision low speed ADC, DAC and digital I/O interfaces

Fig. 1

Software Firmware for FX2 CPU, download from PC during the FX2 initialization, or from I2C EEPROM - functionality in the current tests – initialization of USB and peripheral interface of FX2; CPU excluded from data path (AutoIn modes) PC drivers: - USB drivers of the operating system – EHCI driver, usbd.sys - general purpose FX2 device driver. In the current tests it downloads the firmware into FX2 RAM Test program - MFC based application that measures the transfer times, then calculates the data rates and write them to a file.

3. Quantum FIFO and double, triple, quad buffering The packet type of USB protocol makes possible use of quantum FIFO The dual port endpoint RAM is partitioned into blocks (256x16 in the cases of the tests). Each block is a FIFO, connected to the peripheral bus or to the SIE. The connections change when one of the buffers is full and the other – empty (Fig. 2) The transition between the states does not insert latency Double buffering is shown on Fig. 2. Triple and quad buffering use the same algorithm, but one/two FIFO blocks are added for triple/quad buffering Drawback of the quantum FIFO is the overhead when sending data that does not fill entirely the FIFO – by activation of PKTEND input or other methods

Fig. 2

4.Data transfer rate measurement methodology The data transfer rates are obtained by measuring the time, necessary to receive 10 MB for each point of the curves Time measurement is implemented by the instruction that reads the inside counter of the Pentium processor - RDTSC The received data is not processed The data verification is made outside the measured time intervals No other USB devices except the universal mixed signal system are connected to the USB

5. Peripheral interface synchronization Two data/clock domains In a system that contains peripheral device and USB controller, usually the data/clock domains are different for the controller and the peripheral device. The hardware of the peripheral interface must provide data transition from the peripheral data/clock domain to the USB data/clock domain. Peripheral interface clock source USB controller generates the interface clock The peripheral interface is synchronized with USB related clocks. If the whole peripheral device is synchronized with the interface clock, only one clock/data domain exists. This situation is difficult to implement without loss of optimality. The tests are run with interface clock from USB controller, but analog interface has a different clock. As the timing requirements of peripheral interface are relative to the USB controller clock, this option provides maximum interface data transfer rates.

The peripheral device generates the interface clock In this case the data transition from peripheral device clock domain to USB controller clock domain is implemented by level2 FIFO. Asynchronous peripheral interface In this mode the interface clock is not used externally, pseudo asynchronous mode (synchronized internally) The maximum value of data rates from the tests is near the theoretical maximum – 16.6 MB/s The write strobe SLWR_N, generated for the tests exactly meets the minimum requirements: process (CLK2X) MHz begin if CLK2X='1' and CLK2X'event then if COUNT1<24 then COUNT1 <= COUNT1 + 1; else COUNT1 <= "00000"; end if; if COUNT1<10 then SLWR_N <= '0'; -- low 50ns else SLWR_N <= '1'; -- high 70ns end if; end process;

Fig. 3

Fig. 4

Synchronous peripheral interface The read/write strobes are clock enables for FX2 FIFO Theoretical maximal value of data rate of the peripheral interface is 96MB/s at 48MHz internal clock, therefore the peripheral interface is not a bottleneck (as asynchronous interface) The test results are 35% and 74% of the USB 2.0 data transfer rate maximum (53 MB/s) The bottleneck is in the PC, it limits at 19MB/s (Windows 2000/PentiumIII-733MHz, NEC EHCI) and at 39MB/s (Windows XP SP1/Pentium4-1.5GHz, Intel EHCI) Using isochronous transfers produces similar results, but isochronous transfers are not guaranteed by USB protocol to be error free, therefore streaming is not suitable for compression methods without error correction

Fig. 5

Fig. 6

Analysis of the dependences Low data transfer rates when a small number of packets (1 - 5) in one DeviceIOControl indicate that calls from User Mode to Kernel Mode slows down the communication The deviation in the data transfer rates is significant an steady Small differences between data transfer rates for 2x, 3x and 4x buffering shows that 2x buffering does not lead to NAK of the IN tokens

Theoretical maximumSync, WXPAsync, WXPSync, W2KAsync, W2K Fig. 7

6. Conclusions The results for sustained data transfer rates about 75% of the maximum for bulk transfers over USB 2.0 shows that it can be used in most of the medium to high speed mixed signal systems Appropriate methods for data buffering and synchronization should be used to remove bottlenecks from data path Software data processing in high transfer rate systems should be limited or avoided The limited data transfer rates makes important high speed data compression methods