DRS4 Forum
  DRS4 Discussion Forum, Page 1 of 14  Not logged in ELOG logo
Entry  Sat Jan 15 09:13:42 2022, student_riku, I want to know about the readout 
Hello, everyone.
I'm a student in Japan.
Please forgive me if this is a very rudimentary question.
    Reply  Sat Jan 15 10:50:47 2022, Stefan Ritt, I want to know about the readout 


Am I right in thinking that inputting 1 to DMODE (Bit0) in the configuration
register will connect the 1024th cell to the 1st cell?
Entry  Thu Dec 23 03:42:26 2021, Lynsey, DRS4 request assistance 
Dear Sir or Madam,

      Good morning,I am using drs4 chip, and the measured fDTAP == 1/350ns, that is, fDOMINO == 1 / 350ns * 2048 == 5.8GHz.

     I have three questions:
    Reply  Mon Jan 3 17:13:41 2022, Stefan Ritt, DRS4 request assistance 
1. fDOMINO is defined as fREFCLK * 2048

2. Good values can be derived from the evaluation board schematics: C1=4.7nF, C2=1nF, R=130 Ohm

3. A "1" means a logical high level. See Wikipedia: https://en.wikipedia.org/wiki/Logic_level
Entry  Fri Feb 26 17:05:26 2021, Tom Schneider, Trouble getting PLL to lock 

I am working on a custom PCB design with the DRS4 chip, and I can't get the PLL to lock.  I'm feeding CLKIN with a 1MHz CMOS clock
(REFCLK- tied to VDD/2), and I'm using the same loop filter as the eval board.  I see from the datasheet that the PLL is enabled by default,
    Reply  Fri Feb 26 17:59:14 2021, Stefan Ritt, Trouble getting PLL to lock 
I guess you mean "1 MHz clock at REFCLK+", and not CLKIN, there is no CLKIN, just a SRCLK, but that is someting else!

There could be many reasons why this is not working. It's hard for me to debug your board without actually having it in hands. So just some
       Reply  Fri Feb 26 18:33:52 2021, Tom Schneider, Trouble getting PLL to lock 

Thanks for responding so quickly.  Yes I have my clock source going to REFCLK+ (CLKIN is the signal name on my schematic).  BIAS is
0.7V exactly, /RESET is high, A0-A3 are 0x0000, and the loop filter has a 4.7nF cap to GND with a 130ohm resistor + 1uF cap in parallel, just like the
          Reply  Fri Feb 26 20:32:25 2021, Stefan Ritt, Trouble getting PLL to lock 
Can you post a scope trace of your refclk together with DTAP, DSPEED and DENABLE?

Schneider wrote:

             Reply  Fri Feb 26 21:24:39 2021, Tom Schneider, Trouble getting PLL to lock 
Probe capacitance makes that tricky - if I put my probe on DSPEED, I see that it starts at approx. 2.5V then gradually decreases until it hits 0V. 
DTAP decreases from 3MHz to 0 during this time.

I'll try to get something together to show you.
                Reply  Fri Feb 26 22:12:58 2021, Stefan Ritt, Trouble getting PLL to lock 
Sounds to me like your REFCLK is not getting through or your PLL loop is open. Could be a bad solder connection. Try to measure signals not on the PCB
trace, but directly on the DRS4 pins. Drive REFCLK with a proper LVDS signal. Maybe it's wrong what I wrote in the data sheet and the trick with VDD/2
is not really working.
                   Reply  Fri Feb 26 22:52:13 2021, Tom Schneider, Trouble getting PLL to lock 
Thats not a simple modification to my PCB, but I'll give it a try.  Thanks for your help

Ritt wrote:

Sounds to me like your REFCLK is not getting through or your PLL loop
                      Reply  Thu Mar 4 21:36:14 2021, Tom Schneider, Trouble getting PLL to lock 
I found the problem, and it had nothing to do with the CMOS clock input.  As it turns out, even though I was using the default state of the config
register, I still had to write to it after powerup.  Once I did that, the PLL locked immediately.

                         Reply  Fri Mar 5 09:39:42 2021, Stefan Ritt, Trouble getting PLL to lock 
That probably depends on the way your FPGA boots. If the SRCLK signal goes high after the SRIN - even a few ns - you might clock one or two zeros
into the config register, thus disabling the PLL. Shame that I haven't thought of this before.

       Reply  Fri Dec 24 03:13:32 2021, Lynsey, Trouble getting PLL to lock 
I also design the circuit myself. Our problem is the same. Can we communicate?

Ritt wrote:

I guess you mean "1 MHz clock at REFCLK+", and not CLKIN,
Entry  Tue Nov 16 01:27:51 2021, Jacquelynne Vaughan, V3 board, only one channel works, all components at each channel input working 
Hi everyone,

I'm still looking through the forum for an answer to this question, but thought I'd go ahead and post anyway just in case it hasn't
been answered yet. If it has I can take this post down.
    Reply  Tue Nov 16 08:51:14 2021, Stefan Ritt, V3 board, only one channel works, all components at each channel input working 
A V3 boards is already 10 years old and out of warranty. The software has no configuration to turn channels off except the channel buttons on the main
page on top of the sliders. I presume the channels are broked due to some overvoltage applied to them (the V5 board is better protected against over voltage).
You can send it the board for repair, but it will cost almost the same amount of money than buying a new boards.
Entry  Mon Sep 6 14:42:23 2021, Jiaolong, how to acquire the stop channel with 2x4096 cascading  
Hi Steffan,

    I have a question about how to acquire the stop channel: 

    Process:   Configure the Write Shift Register with 00010001b to achieve 4-channel cascading, then after a trigger,
    Reply  Sat Sep 18 15:47:50 2021, Stefan Ritt, how to acquire the stop channel with 2x4096 cascading  
The problem must be on your side, since the Write Shift Register readout works in other applications with the DRS4 chip. So I can only speculate what
could be wrong:

Do you really properly set the WSR? When you program it with 00010001b, add 8 more clock cycles and you should see the 00010001b pattern
       Reply  Fri Nov 5 01:12:10 2021, Jiaolong, how to acquire the stop channel with 2x4096 cascading  
Thanks for your advice. The problem has been solved by setting the srin again while reading out from srout.

Ritt wrote:

The problem must be on your side, since the Write Shift Register readout
Entry  Mon Oct 25 18:48:04 2021, Javier Caravaca, Trigger multiple boards independently 

I recently acquired 4 DRS4 boards and I wanted to ask if it was possible to trigger them independently from the same computer.

I know that you can daisy-chain boards and trigger them all at the same time, but in my case, each of my boards record independent events, so
    Reply  Tue Oct 26 12:02:56 2021, Stefan Ritt, Trigger multiple boards independently 
Unfortunately an independent operation from a single computer is not supported by the software. You can try to modify the drs_exam program and extend
it. You can poll all boards in sequence and just read out that one which got a trigger, then start the loop again. But I don't know how good you are
in programming. I needs a bit of experience to do that.
       Reply  Tue Oct 26 23:18:32 2021, Javier Caravaca, Trigger multiple boards independently 
Thank you Stefan. Actually I noticed that the source code of drs_exam was available after I started this thread, and that was the solution that
occurred to me too. I'll give that a try.

A related question is: if the 4 boards are triggering at max rate (500Hz), would the total data throughtput (of the four boards together) be
          Reply  Wed Oct 27 08:11:42 2021, Stefan Ritt, Trigger multiple boards independently 
I'm not sure if the rate would go up to 2 kHz (not 2 GHz!). Depends how the USB hub is designed. What you can do however is to buy 4 RaspberryPis
(total cost 150$) and run everythign in parallel. The evaluation boards works nicely with the Pi's.

Entry  Tue Oct 26 10:41:46 2021, Mehrpad Monajem, External trigger and drs_exam 
Hi Stefan,

I have two problems regarding using the drs_exam file with external trigger:
    Reply  Tue Oct 26 12:00:51 2021, Stefan Ritt, External trigger and drs_exam 
1. Why should your waveform start from 0 to 5ns? I don't get your point. Whenever you trigger a readout, you get a 200ns wide time window, and by
definition it starts at zero.

2. In the software distribution you have a drs_exam_2048.cpp program. Note that your board needs to be physically modified before delivery to
       Reply  Tue Oct 26 15:05:18 2021, Mehrpad Monajem, External trigger and drs_exam 
Thanks for your reply.

1- I want to have a window size of 25.6ns instead of 200ns at 5GSPS. I have a 200khz high voltage pulser, which applies a pulse to my sample.
I want to digitize the detector signal for each pulse (each pulse has a 25.6ns period). The pulser and digitizer use same 200khz trigger signal from each
Entry  Thu Oct 14 15:19:00 2021, Keita Mizukoshi, livetime (or deadtime) of DRS4 evaluation board 
Dear experts,


I would like to use the DRS4 evaluation board for actual physics experiment.
    Reply  Thu Oct 14 15:25:07 2021, Stefan Ritt, livetime (or deadtime) of DRS4 evaluation board 
The one thing you can do easily is to look at the scaler values. If one channel counts all physical events, and you have all read out events, then the
ratio give you the live/deadtime. The hardware scalers also keep running during the DRS readout.

       Reply  Thu Oct 14 18:03:52 2021, Keita Mizukoshi, livetime (or deadtime) of DRS4 evaluation board 
Thank you very much for your response.
Excuse me for my very stupid confirmation.
If I take N events finally and the hardware scaler value is M, the livetime is realtime*(N/M). Is this correct?
          Reply  Thu Oct 14 18:42:31 2021, Stefan Ritt, livetime (or deadtime) of DRS4 evaluation board 
I would say not exactly, but it's a good approximation.

Mizukoshi wrote:

Thank you very much for your response.
             Reply  Fri Oct 15 06:15:53 2021, Keita Mizukoshi, livetime (or deadtime) of DRS4 evaluation board 
Thank you very much.

Ritt wrote:

I would say not exactly, but it's a good approximation.
Entry  Thu Sep 16 19:04:06 2021, Patrick Moriishi Freeman, drs_exam_multi with non-v4 boards, default configuration 

I made a modified version drs_exam_multi.cpp, but ran into an issue when running.  When I ran it, it only found the two boards with
lower serial numbers (2781 and 2879) and complained that the others (2880 and 2881) were not v4. Would there be a simple workaround for this type of thing?
    Reply  Sat Sep 18 15:48:30 2021, Stefan Ritt, drs_exam_multi with non-v4 boards, default configuration 

please note the the evaluation board is what it says, a board to evaluate the chip, and is not meant for a full-blown shiny multi-board DAQ channel,
so support for that is kind of limited.
Entry  Wed Jul 14 14:55:09 2021, Mehrpad Monajem, C code to read the 4 channel with external trigger 
Hi there,

Recently I bought a 5GSPS evaluation board with 2048 sampling points.
I want to read 4 inputs of the evaluation bord ar 5 GSPS or 2.5GSP and use an external trigger.
    Reply  Mon Aug 9 12:50:31 2021, Stefan Ritt, C code to read the 4 channel with external trigger 
Sorry the late reply, I was on vacation. 

Here are some answers:

1. I'm sorry I can't help much here, since I currently don't have a Windows 10 computer here to compile any code. I moved now completely
       Reply  Tue Aug 10 13:57:09 2021, Mehrpad Monajem, C code to read the 4 channel with external trigger 
Thank you for the reply.

In the version that I have, I cannot find drs_exam_2048.cpp file. Could you please send me the link to download the software folder, which contain
this file.
Entry  Tue May 4 21:18:28 2021, Abaz Kryemadhi, recording only timestamp and amplitude and/or filesize maximum 

I have been collecting some date using the DRS4 board at a trigger rate of 10-20 Hz,    I only need the timestamp and the amplitude,
is there anyway to select only these two live as the data comes in to be stored. 
    Reply  Wed May 5 10:12:44 2021, Stefan Ritt, recording only timestamp and amplitude and/or filesize maximum 
The maximum file size depends on the underlying linux file system. Common values are 4-16 GBytes.


Entry  Wed Apr 7 03:29:39 2021, Sean Quinn, Unexpected noise in muxout: t_samp related? transp_example.PNGtransp_readout_example_noise.PNGdrs_datasheet_fig11.PNGr0_r1_delay.png
Dear DRS4 team,

I'm experiencing some issues that seem to be isolated to the ASIC, and would like to understand if we are doing something wrong. There are
several items to address in the post.
    Reply  Wed Apr 7 08:26:12 2021, Stefan Ritt, Unexpected noise in muxout: t_samp related? 
Dear Sean,

noise in transparent mode comes from some coupling to your system clock. But 3.5 mV RMS seems rather hight to me. You should get it to below
1 mV if the DRS4 input is clean (try to short it).
       Reply  Fri Apr 9 20:22:13 2021, Sean Quinn, Unexpected noise in muxout: t_samp related? ex_cal_wave.png
Hi Stefan,


Thanks much for the quick reply. Ok, yes, things do seem ok after the offset calibration. I am running into some other issues I could use your
          Reply  Fri Apr 9 20:55:28 2021, Stefan Ritt, Unexpected noise in muxout: t_samp related? 
If you do the cell calibration correctly, your noise should be ~0.4 mV. You seem to be 2-3x larger. The periodic negative spikes come if you dont'
sample at the right time. Adjust t_samp until they are gone.

             Reply  Fri Apr 9 21:56:54 2021, Sean Quinn, Unexpected noise in muxout: t_samp related? 
Yes, there is some systematic board noise on this prototype, unfortunately 

Ok, then it seems the other post I made might still belong in this thread after all.
Entry  Fri Apr 9 20:29:45 2021, Sean Quinn, Spikes/noise sensitive to clock settings? spikes_16MHz.pngspike_period.pngbetter_spikes_15MHz.pngspike_period_15MHz.png
Dear DRS4 team,

I'm trying to troubleshoot some odd spike behavior. If I run the ADC and SR CLK at 16 MHz (behavior also seen at 33 MHz) we get very noisy
data (post-calibration) with periodic spikes.
    Reply  Fri Apr 9 21:38:59 2021, Stefan Ritt, Spikes/noise sensitive to clock settings? 

Quinn wrote:

Dear DRS4 team,
Entry  Thu Feb 25 17:56:39 2021, Matthias Plum, DRS spike removal for multiple waveforms 

Is there a way that someone can help me and my student to enable RemoveSymmetricSpikes function in the drs_exam.cpp? We are not 100% sure
how to call the function if you want to read out four waveforms.
    Reply  Fri Feb 26 08:52:50 2021, Stefan Ritt, DRS spike removal for multiple waveforms 
Just look at the definition of the function below, all parameters are explained there. In meantime we have a firmware fix to avoid the spikes inside
the chip, but I have not yet found time to update the evaluation board.

Entry  Wed Jan 20 12:14:49 2021, Taegyu Lee, drs4 persistence 
Dear all,

I have a question about the function that drs4 can perform.

Is there any function in drs4 that is analogous to that of "persistence display" in oscilloscope?? (accumulating pulses)
    Reply  Wed Jan 20 17:37:51 2021, Stefan Ritt, drs4 persistence 
The chip itself can only sample a single waveform, that must be done in the attached software. The current DRSOscilloscope software coming with the evaluation
board has not yet implemented that, but if you write your own software you can do so.

Entry  Thu Dec 17 09:29:43 2020, Alex Myczko, drs sources on github? 
Are there plans to add the drs software to github? (asking because I have users @ethz.ch that want to use it on debian,
thus I'm creating official debian packages of it, if license allows so, but talking to upstream (the developers) would be
much easier on github (or irc) than on this "DRS4 Discussion Forum".
    Reply  Thu Dec 17 11:31:34 2020, Stefan Ritt, drs sources on github? 
Not github, but bitbucket: https://bitbucket.org/ritt/drs4eb/src/master/

But development kind of stalled, so there will be updates only in case of severe bugs, which are kind of gone after 10 years now.
Entry  Wed Oct 21 15:03:13 2020, Seiya Nozaki, Timing diagram of SROUT/SRIN signal to write/read a write shift register drs4_srin_srout_srclk.pdf
Dear Stefan,

I have questions about the timing diagram of SROUT/SRIN signal to write/read a write shift register.
    Reply  Tue Oct 27 13:37:23 2020, Stefan Ritt, Timing diagram of SROUT/SRIN signal to write/read a write shift register Screenshot_2020-10-27_at_13.45.39_.png
Dear Seiya,

1) That's correct. SRIN is ampled at the falling edge. Pleae make sure to obey the hold-time as written in the datasheet. P.12, Fig. 11:
SRIN must be stable before the falling edge of SRCLK and tH after the falling clock. tH is 5ns according to table 1. 
       Reply  Tue Oct 27 15:02:09 2020, Seiya Nozaki, Timing diagram of SROUT/SRIN signal to write/read a write shift register 
Dear Stefan,

Thank you for your reply.
          Reply  Tue Oct 27 15:24:38 2020, Stefan Ritt, Timing diagram of SROUT/SRIN signal to write/read a write shift register 
This is a static shift register, so you can make the clock as slow as you want. Actually I don't use a "clock", I just use a data pin I
control via a state machine in the VHDL code. This way I have more control over the edges. I need several (internal) clock cycles to produce one SRCLK
clock cycle, but that does not matter for the DRS.
             Reply  Wed Oct 28 04:32:19 2020, Seiya Nozaki, Timing diagram of SROUT/SRIN signal to write/read a write shift register 
Dear Stefan,

OK, it's good to hear! Thank you!
Entry  Tue Sep 22 17:45:26 2020, Elmer Grundeman, External triggering 
Dear all,

I had a question about timing jitter and external triggering.

I trigger the board externally with a 3V pulse from a DG645 delay generator and as a test I use the gated charge function to integrate another
    Reply  Wed Oct 7 10:56:03 2020, Stefan Ritt, External triggering 
The trigger is there only to trigger the chip, but cannot be used as a precise time reference. If you want to measure precise timing, do this always
BETWEEN two inputs, never between an input and the trigger. You might want to split and delay your trigger signal and feed one copy to another input of
the evaluation board as your reference.
       Reply  Wed Oct 7 11:17:52 2020, Elmer Grundeman, External triggering 
I will try that, thanks!

Ritt wrote:

The trigger is there only to trigger the chip, but cannot be used as
Entry  Mon Aug 31 16:44:12 2020, Hans Steiger, Channel Cascading 
Dear All,

I have a board with Channel Cascading Option. I have the problem, that it seems to be impossible to run all 4 Channels simultaneously for digitizing
pulses. I can just run even or odd channels but not even and odd ones? If I run in combined option, My question: If a board comes with this combined option,
    Reply  Mon Aug 31 17:17:30 2020, Stefan Ritt, Channel Cascading Screenshot_2020-08-31_at_16.52.28_.png
If you have a board with cascading option, it should show the "combined" option in the 2048-bin option enabled (not grayed), as in the
attached screen shot. If the 2048-bin option is all greyed out, the system does not recognize the cascading option. If your board has a sticker "2048
bin" and you still see the 2048-bin option greyed out, it might mean that a resistor on that board has been forgotten. If you do not see the "2048
Entry  Sat Aug 29 22:00:30 2020, Hans Steiger, Dynamic Range Evaluation Board and Software 
Dear Evaluation Board Team,


currently I am facing the problem of digitizing pulses with an amplitude of -0.6V to -0.8V. As the dynamic range of the board is 1Vpp, this should
    Reply  Mon Aug 31 10:52:42 2020, Stefan Ritt, Dynamic Range Evaluation Board and Software 
You cannot go below -0.5V for the inputs, since the board does not have an internal negative power supply, which would be necessary for that. If you
have -0.8V pulses, the easiest is to use a passive inverter at the input to convert it to a 0.8V pulse.

ELOG V3.1.4-80633ba