qutools quTAU Manual Download Page 5

1

QUICKSTART GUIDE

1.3

Writing your own program

The device has to be initialized using

TDC init

and de-initialized with

TDC deInit

, ev-

erything else depends on the task at hand. A complete list of all functions the DLL
provides and information about how to call these functions is included as doxygen gen-
erated documentation in

userlib/doc/index.html

. You can also find descriptions and

examples for the most common tasks in this manual. Working LabView

TM

Examples (like

the one shown in Figure

2

are included in the

userlib/labviewXX/examples

folder in

the installation directoy, C examples can be found in the

userlib/src

Folder.

Figure 2:

Block diagram for a program to retrieve and display Single and Coincidence

Rates

, see example

countrate plot.vi

Please take note of the information about histogram binning and time tagging in Section

4

.

www.qutools.com

quTAU/quPSI Manual V4.0 Page 5

Summary of Contents for quTAU

Page 1: ...www qutools com info qutools com quTAU quPSI Manual V4 0 April 5 2016 ...

Page 2: ...tware Packages 8 4 4 Linux Support 9 5 Windows Installation 9 6 Firmware Update 9 7 Software 11 7 1 Concept 11 7 2 Daisy 12 7 3 quTAU GUI 13 7 4 Command Line Interface 13 7 5 Using the quTAU with your own software Library functions 14 8 Input Parameter Settings 17 8 1 Software Realizations 18 8 2 DLL Usage 18 9 Coincidence Counting 21 9 1 Integration Time 21 9 2 Coincidence Time Window 21 9 3 Real...

Page 3: ... Array 28 11 Histograms 30 11 1 Start Stop Histograms 30 11 2 Start Multistop Histograms Lifetime Measurements 34 11 3 Correlation Measurements HBT 38 12 Simulation and Testing Demo Mode 43 12 1 quTAU GUI Simulation 43 12 2 DLL Usage 43 13 Differences using a quPSI 44 13 1 quTAU GUI 44 13 2 DLL Usage 44 www qutools com quTAU quPSI Manual V4 0 Page 3 ...

Page 4: ...a file a settings dialog can be opened and additional information can be displayed The tabs 2 allow access to the different features of the device Please note the status bar 3 at the bottom showing additional information and the state of software and device 1 2 Setting up your device After connecting the quTAU device over USB2 0 please check your firmware version with the provided update utility i...

Page 5: ...ndex html You can also find descriptions and examples for the most common tasks in this manual Working LabViewTM Examples like the one shown in Figure 2 are included in the userlib labviewXX examples folder in the installation directoy C examples can be found in the userlib src Folder Figure 2 Block diagram for a program to retrieve and display Single and Coincidence Rates see example countrate pl...

Page 6: ...s are already integrated in the quTAU H model The key features of the quTAU device are 8 channels High timing resolution bin size 81 ps High event rates Coincidence counting integrated USB2 0 interface Easy to use The device can be used for a variety of Applications Time correlated single photon counting TCSPC Fluorescence lifetime imaging Quantum information experiments LIDAR High energy accelera...

Page 7: ...ion ns Min 5 5 Input Impedance Ω LV TTL 50 5000 Max event rates Mevents s 1ch counting 10 8ch counting 25 8ch time tags 3 Software Delay ns Min 50 Max 50 Figure 3 Hardware concept of the quTAU An ASIC converts the incoming signals into time tags which are then analyzed by an FPGA and transferred to a PC via USB2 0 www qutools com quTAU quPSI Manual V4 0 Page 7 ...

Page 8: ...ting width of time bins in a time difference histogram when using an odd number of bins for histogram binning Instead of a gaussian distribution the histogramm shows a comb structure due to the differently wide time bins This effect vanishes for even numbers of summed bins 4 2 Time tags bit width The internal size of time tags is 56 bit Therefore they will overflow after 256 1 81 ps 5836665 12 s 6...

Page 9: ...he device if done incorrectly Do so only when it s advised by the manufacturer In that case please read and follow these instructions carefully Figure 5 The Firmware Update Utility NHFlash is ready to start the update When a firmware update is required please use the program daisy nhflash exe Firmware Update Utility in the Start Menu to do so The current firmware is located in the daisy firmware d...

Page 10: ...atisfactory please press Flash The green LED should start flashing until it is finished At the end of the process the LED should be green again and the text close to it should read Update complete Make absolutely sure the device is not shut down or losing power during this step 6 Close the firmware update utility 7 Turn the quTAU device off and possibly on again If you don t do this the old firmwa...

Page 11: ...UI all applications are using the DLL tdcbase dll to communicate with the device driver 7 1 Concept The quTAU software concept is depicted in Figure 6 The device is connected via USB2 0 so the first piece of software handling it on the PC side is the USB device driver The device driver then talks to directly to one of the client programs so either to the daisy GUI client or to the user DLL The DLL...

Page 12: ...s shown in Figure 7 the different features are simply accessed by clicking on the different tabs Double clicking a tab decouples it from the main window making it possible to view multiple tabs at once Figure 7 The opening screen of the Daisy GUI Different tasks can be accessed by the different tabs at the top Please note that this window will display additional options for upgraded quTAU devices ...

Page 13: ...can be saved to a file a settings dialog can be opened and additional information can be displayed The tabs 2 allow access to the different features of the device A status bar 3 at the bottom shows additional information and the state of software and device 7 4 Command Line Interface The command line interface can be used for some simple tasks as a one time readout of the count rates writing time ...

Page 14: ...ib doc index html Additionally there will be examples of how to combine the functions to achieve a certain task To visualize this simplified LabVIEWTM block diagrams will be used Please remember that the shown names of the used VIs are equal to the DLL function names 7 5 2 LabVIEWTM Integration For integration of the quTAU in LabVIEWTM using the DLL wrapper VIs are provided at userlib labviewXX lo...

Page 15: ...ction was established and the DLL automatically switches to demo mode Necessary functions for the device initialization tdcbase h int TDC init int deviceId Additional functions related to the device initialization tdcbase h double TDC getVersion const char TDC perror int rc double TDC getTimebase TDC DevType TDC getDevType Bln32 TDC checkFeatureHbt Bln32 TDC checkFeatureLifeTime int TDC enableChan...

Page 16: ...elated to the device DE initialization tdchbt h void TDC releaseHbtFunction TDC HbtFunction fct tdclifetime h void TDC releaseLftFunction TDC LftFunction fct Table 3 Examples Device Deinitialization LabView Example userlib labviewXX examples demo mode vi C Example www qutools com quTAU quPSI Manual V4 0 Page 16 ...

Page 17: ... selection per channel channel delay per channel Trigger level necessary threshold voltage to trigger an event Termination switches the termination of the input channels between 50 Ω and 5 kΩ Edge selection determines whether the event is triggered at the rising or the falling edge of a signal exceeding the voltage threshold Channel delay Sets additional delays for the input channels Please note t...

Page 18: ...The channel input settings can be changed via the controls in the highlighted area Please note that appearance of this window may change depending on the used hardware here a quTAU H is used 8 1 2 quTAU GUI Simply click Settings Input Settings in the menu bar to display a dialog con taining control elements for all available input settings see Figure 11 Changes take immediate effect you don t have...

Page 19: ...nt TDC getSignalConditioning Int32 channel Bln32 on Bln32 edge Bln32 term double threshold int TDC configureSyncDivider Int32 divider Bln32 reconstruct int TDC getSyncDivider Int32 divider Bln32 reconstruct int TDC enableChannels Int32 channelMask int TDC setChannelDelays const Int32 delays int TDC getChannelDelays Int32 delays int TDC switchTermination Bln32 on int TDC enableTdcInput Bln32 enable...

Page 20: ...userlib labviewXX examples configure IO vi C Example userlib src example 1 3 5 c Figure 12 Digital Input configuration see example configure IO vi Please note that the logic level settings are set per channel and the channel delays as a set of eight www qutools com quTAU quPSI Manual V4 0 Page 20 ...

Page 21: ...me unit Bins Two or more detection events will be counted as a coincident event if the difference of their time stamps is less or equal than the specified time window 9 3 Realizations Count rates can be monitored by both Daisy and the quTAU GUI The command line interface can be used to output the last counter values 9 3 1 Daisy Count rate information can be accessed by switching to the Tab Coincid...

Page 22: ...NG Figure 13 Coincidence Counters Tab of the Daisy Parameters can be set at the top data are displayed as a bar plot and additionally as a trend graph for a selected channel www qutools com quTAU quPSI Manual V4 0 Page 22 ...

Page 23: ...of the quTAU GUI Data are displayed in the graph on the left hand side parameters can be set on the right hand side 1 Additionally all count rates are also displayed numerically besides the plot legend 2 www qutools com quTAU quPSI Manual V4 0 Page 23 ...

Page 24: ...as countrate plot vi When polled periodically the second argument update indicates the number of data updates since the last poll The timebase for all rates is set by TDC setExposureTime and the coincidence time window by TDC setCoincidenceWindow Figure 15 Block diagram for a program to retrieve and display Single and Coincidence Rates see example countrate plot vi Functions relevant to Single and...

Page 25: ...inary Since the 64 bits of timing information are more than are used internally they will never overflow The internal time will overflow after roughly 67 6 days see Section 4 2 10 1 3 Binary File 5 bytes per Event Similar to 10 1 2 but with only 37 bits for the time stamp and 3 bits for the channel information This overflows a lot sooner roughly after 11 seconds If there is no event for longer tha...

Page 26: ...th the Daisy GUI Select the Time Diffs tab 1 then use the Save Time Tags area 2 Click on the folder symbol to select a file location and name and start recording by clicking the red record button The LED will change color to green while writing Another click on the record button stops the recording 10 2 2 quTAU GUI From the main window of the quTAU GUI select File Write Timestamps to File from the...

Page 27: ...see Figure 18 Figure 18 The writing time stamps status window You can see the file name the current recording time and file size and the chosen maximum time and file size To stop recording time stamps press the button Using the menu you can also read time stamps from a file by clicking File Read Timestamps from File 10 2 3 Command Line Interface The output format can be set to ascii binary compres...

Page 28: ... const Int8 channels Int32 count int TDC readTimestamps const char filename TDC FileFormat format 10 4 Retrieving Timestamps as an Array Table 8 Examples Retrieving Timestamps as an array LabView Example userlib labviewXX examples timestamparray vi C Example userlib src example1 c Alternatively the timestamps can be retrieved as an array An additional array with the same size contains the correspo...

Page 29: ...10 TIME STAMPING Figure 19 Block diagram for retrieving timestamps as an array see example timestamparray vi www qutools com quTAU quPSI Manual V4 0 Page 29 ...

Page 30: ...erences for the different histogram types For the A A Start Stop histogram the time differences x2 x1 x6 x2 x8 x6 and x9 x8 would be recorded In the A B case it would be x3 x2 x7 x6 and x10 x9 For the channel independent case all xn 1 xn result Figure 20 Example of the determination of time differences for different start stop histograms Three possibilities are shown Start and stop event in the sa...

Page 31: ...d Additionally you can change the number of merged HW bins in order to circumvent the TDC chip problem mentioned in 4 1 choose an even number and the histogram width The total integration time 2 is also shown in the plot region An LED 3 monitors the status of the operation www qutools com quTAU quPSI Manual V4 0 Page 31 ...

Page 32: ... continuously generated The parameters of TDC getHistogram determine the channel combination to be retrieved Additionally an array with at least bincount entries has to be provided in the function call In case the histograms for multiple channel combinations are necessary they can be retrieved one after the other In order to get the histograms for the same integration time each use TDC freezeBuffe...

Page 33: ...11 HISTOGRAMS Figure 22 Block diagram for start stop histograms see example start stop vi www qutools com quTAU quPSI Manual V4 0 Page 33 ...

Page 34: ... t I0 α e t τ0 1 α e t τ1 2 Kohlrausch Decay Function Stretched Exponential f3 t I0 e t τ0 β 3 11 2 2 Realization in the quTAU GUI Lifetime Measurements can be obtained and analyzed in the quTAU GUI see Figure 23 Additionally the data can be fitted to one of the models explained above For testing purposes or if no device is connected data can also be simulated and analyzed normally Settings can be...

Page 35: ...istogram width In order to analyze the obtained data a fit to one of the three models described above can be chosen 2 The fit function will be displayed 3 Edit the start values 4 if the fit does not work properly The total integration time 5 is also shown in the plot region LEDs 6 monitors the status of the operation For testing purposes a simulation of one of the models can be started 7 www qutoo...

Page 36: ...Lifetime Measurements tdcbase h Bln32 TDC checkFeatureLifeTime tdclifetime h int TDC enableLft Bln32 enable int TDC setLftParams Int32 binWidth Int32 binCount int TDC getLftParams Int32 binWidth Int32 binCount int TDC setLftStartInput Int32 startChan int TDC getLftStartInput Int32 startChan int TDC resetLftHistograms void TDC LftFunction TDC createLftFunction void void TDC releaseLftFunction TDC L...

Page 37: ...4 Lifetime measurements see example lifetime vi The TDC analyzeLftFunction function is a convenient function to retrieve single values and the histogram array from the data set www qutools com quTAU quPSI Manual V4 0 Page 37 ...

Page 38: ...ury Brown and Twiss shown in Figure 25 It consists of two single photon detectors located at each output of a 50 50 beam splitter Time difference measurements of photon detections can then be used to analyze the light sent into the input of the beam splitter Figure 25 Hanbury Brown and Twiss setup 11 3 2 g 2 function and start stop histograms of coherent light Photons in coherent light e g that of...

Page 39: ...ibunching g 2 ab τ 1 e τ τ0 τa 7 Three Level System g 2 tl τ 1 p2 f c e τ τ0 τb 1 c e τ τ0 τa 8 Normalization Please note that the measured histogram data are normalized with a factor N R1R2TW 9 with countrates R1 and R2 total integration time T and histogram bin width W 11 3 4 Realization in the quTAU GUI HBT Measurements can be obtained and analyzed in the quTAU GUI see Figure 26 For testing pur...

Page 40: ...ned data a fit to one of the three models described above with the option to include detector jitter and an offset can be chosen 2 The fit function and the obtained parameters will be displayed 3 Edit the start values 4 if the fit does not work properly The total integration time 5 is also shown in the plot region LEDs 6 monitor the status of the operation For testing purposes a simulation of one ...

Page 41: ...C checkFeatureHbt tdchbt h int TDC enableHbt Bln32 enable int TDC setHbtParams Int32 binWidth Int32 binCount int TDC getHbtParams Int32 binWidth Int32 binCount int TDC setHbtDetectorParams double jitter int TDC getHbtDetectorParams double jitter int TDC setHbtInput Int32 channel1 Int32 channel2 int TDC getHbtInput Int32 channel1 Int32 channel2 int TDC switchHbtInternalApds Bln32 internal int TDC r...

Page 42: ... HBT measurements see example hbt measurement vi The TDC analyzeHbtFunction function is a convenient function to retrieve single values and the histogram array from the data set www qutools com quTAU quPSI Manual V4 0 Page 42 ...

Page 43: ... Usage For simulation and testing events can be generated by the software as if they were pro duced by real signals There are several options generate timestamps Using the function TDC generateTimestamps the buffers for all histograms start stop lifetime HBT are fed the requested number of timestamps once generate demo For the histogram types lifetime and HBT separate simulation func tions exist T...

Page 44: ...he external sources Table 12 Channel Mapping of the quPSI device Please note that this only applies for read out timestamps and count rates but not for the input settings Source External Sync External Internal APDs Channel 1 3 4 5 6 In the HBT tab of the GUI there is now the option to switch between internal and external APDs for the analysis instead of being able to freely choose channels 13 2 DL...

Reviews: