USB Project (15 th August) Ian Coulter. Last Week Needed to work error flags and error counting into labview. This seems to work successfully but doesn’t.

Slides:



Advertisements
Similar presentations
1 Data Link Protocols By Erik Reeber. 2 Goals Use SPIN to model-check successively more complex protocols Using the protocols in Tannenbaums 3 rd Edition.
Advertisements

Lab 12 : Liquid Crystal Displays: Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 DMD Basics : Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Data Write the.
Pune Institute of Computer Technology Vijay Gabale Santosh Patil Ashish Deshpande -students of Computer department presents:
IS333, Ch. 26: TCP Victor Norman Calvin College 1.
Chapter Chapter 4. Think back to any very difficult quantitative problem that you had to solve in some science class How long did it take? How many times.
A-Level Computing#BristolMet Session Objectives#11 MUST identify the hardware required to connect to the Internet SHOULD describe how data is transmitted.
CY2003 Computer Systems Lecture 05 Semaphores - Theory.
© 2006 Pearson Education, Upper Saddle River, NJ All Rights Reserved.Brey: The Intel Microprocessors, 7e Chapter 13 Direct Memory Access (DMA)
EEC-484/584 Computer Networks Lecture 12 Wenbing Zhao Cleveland State University
4.1 Chapter 4 Digital Transmission Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Transmission Characteristics 1. Introduction (Information Interchange codes) 2. Asynchronous and Synchronous Transmissions 3. Error detection (bit errors)
CS320n –Visual Programming LabVIEW Control Structures.
Software Performance Tuning Project Monkey’s Audio Prepared by: Meni Orenbach Roman Kaplan Advisors: Liat Atsmon Kobi Gottlieb.
Decimals
Data Acquisition Software Integration and ADC Characterisation Jack Hobbs 4 th August
Computer Some basic concepts. Binary number Why binary? Look at a decimal number: 3511 Look at a binary number: 1011 counting decimal binary
Chapter-4/5-1CS331- Fakhry Khellah Term 081 Chapter 4 (Only 4.2 – 4.3) Digital Transmission.
Tim De Borger Principal Solution Consultant May 18 th, 2007 Tuning the ESB How to make the Bus drive faster.
Chapter 4 TIMER OPERATION
Some More Beans, Please Math Lab 9. Purpose of Lab Use physical data from an experiment using two different types of beans to write two equations in two.
Some notes on ezTree and EMC data in MuDst Marco van Leeuwen, LBNL.
1 CS 177 Week 16 Recitation Recursion. 2 Objective To understand and be able to program recursively by breaking down a problem into sub problems and joining.
Introduction to CacheWorx Lucian Plesea - Esri Robert Jensen - Esri.
Array Processing.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Data Link Layer Part I – Designing Issues and Elementary.
1 Programming of FPGA in LiCAS ADC for Continuous Data Readout Week 3 Report Jack Hickish.
Introduction Advantages/ disadvantages Code examples Speed Summary Running on the AOD Analysis Platforms 1/11/2007 Andrew Mehta.
B-Trees. CSM B-Trees 2 Motivation for B-Trees So far we have assumed that we can store an entire data structure in main memory What if we have so.
With Python.  One of the most useful abilities of programming is the ability to manipulate files.  Python’s operations for file management are relatively.
Status report 2010/10/22 Atsushi Nukariya. Progress ・ Progress is as follows. 1. Confirm to transfer data from SiTCP to PC. 2. Create software which read.
Georgia Institute of Technology Speed part 6 Barb Ericson Georgia Institute of Technology May 2006.
USB Project Ian Coulter. USB Interface USB Menu -Download HEX File -Send Trigger -Start DAQ.
DEPARTEMENT DE PHYSIQUE NUCLEAIRE ET CORPUSCULAIRE JRA1 Parallel - DAQ Status, Emlyn Corrin, 8 Oct 2007 EUDET Annual Meeting, Palaiseau, Paris DAQ Status.
A simple Desktop DAQ for U2F readout Ulf jörnmark Physics Dept. Lund Status and plans.
Unit 1 Lecture 4.
Direct Memory Access (DMA). DMA Features  7 independently configurable channels  Software programmable priorities: Very high, High, Medium or Low. 
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
EOVSA EST DPP Testing J. McTiernan EOVSA Prototype Review 24-Sep-2012.
UDP File Transfer Nathan Kiel CSE434. Goal Explore difficulties of UDP transport in a file transfer application Direct experience by writing an FTP style.
1 Programming of FPGA in LiCAS ADC for Continuous Data Readout Week 7 Report Friday 15 th August 2008 Jack Hickish.
FORCE AND MOTION IDEAS WHAT DO YOU KNOW OR THINK YOU KNOW?!?!
1 Programming of FPGA in LiCAS ADC for Continuous Data Readout Week 6 Report Wednesday 6 th August 2008 Jack Hickish.
COMPUTER NETWORKS. Unit -2 Continue... Physical Layer Connection –Oriented Networks : X.25 Relay Frames Types of cables Co-axial Fiber optics Twisted.
Data Link Layer. Data link layer The communication between two machines that can directly communicate with each other. Basic property – If bit A is sent.
Motion Graphs. Interpret The Graph Below: The graph shows an object which is not moving (at rest). The distance stays the same as time goes by because.
1 Programming of FPGA in LiCAS ADC for Continuous Data Readout Week 4 Report Tuesday 22 nd July 2008 Jack Hickish.
File I/O. I/O Flags Flags are passed to give some information about how the file is to be used. – Read only file – flag=0x0 – Write only file – flag=0x1.
High-Speed Control and Disk Streaming Monday Aug 24, 2:30 - 4:00 p.m. Thursday Aug 27, 12:45 - 2:15 p.m. and 2:30 - 4:00 p.m. Red River (4B) Aljosa (Al)
The Data Link Layer.
Unit 18: Computational Thinking
Congestion Control.
Implementation of Convolution using C++
USB Project (15th July) Ian Coulter.
USB Project (6th August)
CS703 - Advanced Operating Systems
Precept 2: TCP Congestion Control Review
Data Link Layer: Data Link Control
Clock Domain Crossing Keon Amini.
Lecture 19 – TCP Performance
USB Project (22nd July) Ian Coulter.
Data Acquisition Software Integration and ADC Characterisation
CS412 Introduction to Computer Networking & Telecommunication
Manipulating lists of data
Other time considerations
Chapter 6 Synchronization Principles
New DCM, FEMDCM DCM jobs DCM upgrade path
Window Management in TCP
B-Trees.
Introduction to Computer Science
USB Project (22nd August)
Presentation transcript:

USB Project (15 th August) Ian Coulter

Last Week Needed to work error flags and error counting into labview. This seems to work successfully but doesn’t work for continuous DAQ mode as we still can’t stop it Created several different DLL projects as it was annoying having to change between the various different types

Problem The FIFO fills up quickly for anything faster than one channel averaging over two samples on continuous mode as it reads data out faster than we can read it When the FIFO is full, we lose large chunks of data

Problem This is due to the code –taking in all the data –manipulating the data to a readible form –writing it to file then looping round again The manipulation and writing to file takes a long time during which the FIFO overflows

Solution There are two possible ways to solve this: –Introduce multi-threading so the program reads the data from the USB at the same time as it writes it to file –Strip down the manipulation of the data before it is written to file

Multi-threading Split the code so it goes to two threads: –The sender thread takes in the data and sends it to a circular buffer –The receiver thread reads the data from this buffer and sends it to a file Can’t seem to find a way to do this without using the buffer which slows it down

Multi-Threading Even with the binary file writing this process is still slow due to the writing to a buffer necessary to transfer data between the threads The fastest I could get this to work was one channel averaging over four samples. This is half as good as before.

Binary Removed all data manipulation so that the data is written straight to file We can use another C code or Labview to read the raw data from this data file and combine the bytes to give out meaningful data into another text file

Binary This works really well! Can now read much much faster. Can read up to four channels at full speed without data loss or the FIFO filling up The maximum possible speed is seven channels at full speed so this is good!