Difference between revisions of "CAEN V775 TDC"

From New IAC Wiki
Jump to navigation Jump to search
Line 103: Line 103:
 
B = T+ 60 ns
 
B = T+ 60 ns
  
C = T+ 100 ns
+
C = T+ 70 ns
 +
 
 +
D = T + 130 ns
  
D = T + 140 ns
 
  
For Channel 0 I injected the pulses
+
10000100001 b = 1057 d
  
[[Image:V795_TDCtestPulses_11-28-08.png | 200 px]]
 
10111110110 b = 1526 d
 
  
  
 
The distance between the falling part of each pulse is about 200 ns
 
The distance between the falling part of each pulse is about 200 ns
 +
 +
A = T+0
 +
 +
B = T+ 60 ns
 +
 +
C = T+ 100 ns
 +
 +
D = T + 150 ns
 +
 +
 +
then
  
  
Line 120: Line 130:
 
B = T+ 60 ns
 
B = T+ 60 ns
  
C = T+ 100 ns
+
C = T+ 200 ns
  
 
D = T + 240 ns
 
D = T + 240 ns
Line 126: Line 136:
  
 
10010001111 b = 1167 b
 
10010001111 b = 1167 b
 +
 +
 +
 +
For Channel 0 I injected the pulses
 +
 +
[[Image:V795_TDCtestPulses_11-28-08.png | 200 px]]
 +
10111110110 b = 1526 d
 +
  
  

Revision as of 00:47, 29 November 2008

Media:Manual_CAEN_775_TDC.pdf

The 12 bit ADC conversion time is 5.7 \mu s. A sliding scale technique is used to reduce differential nonlinearity by injecting an offset. This reduces the dynamic range to 0->3840. The ADC values between 3841 and 4095 indicate an error.

CAEN V775 TDCAddress.jpg

Address
Pin Setting
SW 1 1
SW 2 6
SW 3 0
SW 4 8

initialize TDC

-> c775Init(0x610000)
Initialized TDC ID 0 at address 0x90610000 


Common Start/Stop =

BitSet 2 is used to set the TDC in common start or stop mode.

0 => common start
1 => common start

Use the Status function to see what the bit is set at

-> c775Status(0)
STATUS for TDC id 0 at base address 0x90610000 
---------------------------------------------- 
Interrupts Disabled
Last Interrupt Count    : 0 
            --1--  --2--
 Status  = 0x0050 0x0002
 BitSet  = 0x0000 0x0898
 Control = 0x0000
 FSR     = 140 nsec
 Event Count     = (No Events Taken)
 Last Event Read = (No Events Read)
value = 37 = 0x25 = '%'

BitSet 2 is set to 0x0898 = 100010011000 d

The above has bit 10 ( starting from 0 at the very left) set to 0 => common start

Read Data

Use PrintEvent to print out the data in the TDC to the ROC console


-> c775PrintEvent
 TDC DATA for Module 0
 Header: 0xfa000100   nWords = 1 
     0xf80048b8
 Trailer: 0xfc00005a   Event Count = 90 
value = 3 = 0x3


Decoding the data

Header

Header = 0xfa000100 = 11111010000000000000000100000000 b

bits 27-31 contain the GEO address = 11111 d = 0xF bits 26-24 contain the type of word 010 => header bits 16-23 contain the crate number = 00000000 => crate 0 bits 8-13 contain the number of channels contained in the data word = 000001 = 1 TDC channel

Data Words

data = 0xf80048b8 = 11111000000000000100100010111000 b

bits 27-31 contain the GEO address = 11111 d = 0xF bits 26-24 contain the type of word 000 => dataum bits 16-20 contain the channel number = 00000 => channel 0 bit 14 = data valid bit = 1 => valid data bit 13 = underthreshold bit bit 12 = overflow bit 0 => ADC not in overflow bits 0-11 contain the TDC value = 100010111000 b = 0x8b8 = 2232 d


The TDC value for channel 0 is 2232 channels.

The manuals says the TDC has a rang from 140 ns to 1.2 \mu s with 8 bit resolution

I used the Stanfor pulse generator to generate 2 NIM pulses and then sent those to a NIM to ECL converter in order to create 2 ECL pulses which the TDC accepts as input.


I set the delays to

A = T+0

B = T+ 60 ns

C = T+ 70 ns

D = T + 130 ns


10000100001 b = 1057 d


The distance between the falling part of each pulse is about 200 ns

A = T+0

B = T+ 60 ns

C = T+ 100 ns

D = T + 150 ns


then


A = T+0

B = T+ 60 ns

C = T+ 200 ns

D = T + 240 ns


10010001111 b = 1167 b


For Channel 0 I injected the pulses

V795 TDCtestPulses 11-28-08.png 10111110110 b = 1526 d


Data = 0xf80048b1 = 11111000000000000100100010110001 b

bits 0-11 = 100010110001 b = 2225 d = 0x 8b1

200 px

EOB / Trailer

back to VME modules