Commit graph

94 commits

Author SHA1 Message Date
stephan
4239d2288a irena: add NTC bias to 2nd free HK channel
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@8697 bc5caf13-1734-44f8-af43-603852e9ee25
2023-11-01 14:09:34 +00:00
stephan
3bc20a90a9 irene48: fix random trigger bit
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@8358 bc5caf13-1734-44f8-af43-603852e9ee25
2021-11-30 10:52:29 +00:00
stephan
e2b04c7e08 irena: fix timing of DD48 buffer writes
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@8345 bc5caf13-1734-44f8-af43-603852e9ee25
2021-11-29 21:07:51 +00:00
stephan
11a338865d irenacore with DD48 wide oputput
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@8341 bc5caf13-1734-44f8-af43-603852e9ee25
2021-11-28 23:04:53 +00:00
stephan
c867d9a8d2 sfilter 48 bit output: wire up the packet fifo infra
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@8339 bc5caf13-1734-44f8-af43-603852e9ee25
2021-11-28 20:20:07 +00:00
stephan
968011a065 sfilter dranbuf: module parameter DD for 48 bit output
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@8338 bc5caf13-1734-44f8-af43-603852e9ee25
2021-11-28 18:11:57 +00:00
stephan
4377759d7b pulser: fix sample_offset
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@8049 bc5caf13-1734-44f8-af43-603852e9ee25
2020-04-16 13:35:51 +00:00
stephan
6b24f61781 darena: task sim_samples
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@8047 bc5caf13-1734-44f8-af43-603852e9ee25
2020-04-15 19:56:13 +00:00
stephan
4344a3458d pulser: avoid $readmemh warning
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@7985 bc5caf13-1734-44f8-af43-603852e9ee25
2020-03-13 11:33:32 +00:00
stephan
378dd03885 dorn L3
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@7974 bc5caf13-1734-44f8-af43-603852e9ee25
2020-03-11 04:29:32 +00:00
stephan
9f367354c5 meps_ana: test various descoping options
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@7799 bc5caf13-1734-44f8-af43-603852e9ee25
2019-10-26 22:47:31 +00:00
stephan
0c4e15c7d2 sfilter: yet another change to the L2 trigger.
Lately we got a 4th window parameter.  The logic was that only one channel
	contributing to a coincidence trigger on either level must be in a narrow 
	age window.  There were still races of all kinds.  This change is 
	conceptually simple and should eliminate all races.

	The four window parameters (a₁ a₂ a₃ a₄) define a wide and a narrow age 
	window, wide: a₁ ≤ T ≤ a₄, narrow: a₂ ≤ T ≤ a₃.
	All channels required to be hit by an L₂ trigger must have a pulse age T in
	the narrow window.  A hit on an anticoincidence channel within the wide 
	age window will inhibit the trigger.

	a₄ is the L₁ trigger parameter that defines when the peak detector will 
	be reset.  Hits with longer age will not show up in the data and not be 
	seen by the L₂ trigger.  The parameters should be monotonic, but need 
	not be distinct.  


git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@7795 bc5caf13-1734-44f8-af43-603852e9ee25
2019-10-26 16:17:20 +00:00
stephan
0b049a4d63 sfilter dranbufmux: simplify formula for next
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@7784 bc5caf13-1734-44f8-af43-603852e9ee25
2019-10-22 19:27:08 +00:00
stephan
84d75c8809 meps_ana: successfull simulation
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@7762 bc5caf13-1734-44f8-af43-603852e9ee25
2019-10-16 22:30:40 +00:00
stephan
1250289f23 meps_ana_test: syntax error free
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@7760 bc5caf13-1734-44f8-af43-603852e9ee25
2019-10-16 17:36:02 +00:00
stephan
f2133a45c3 flyrena: enhancements for meps_ana
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@7753 bc5caf13-1734-44f8-af43-603852e9ee25
2019-10-15 23:44:56 +00:00
stephan
7956890526 flyrena sfilter: sampleram with EDAC
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@7743 bc5caf13-1734-44f8-af43-603852e9ee25
2019-10-15 18:24:34 +00:00
stephan
a0c9864c1f sfilter:
There were three window parameters: minT, maxT, TmaxT.
	Any pulse required for a trigger must be aged at least minT.
	At least one pulse of any trigger must be at least maxT of age.
	A pulse aged TmaxT will be reset to 0.
	TmaxT is an L1 parameter.
	minT and maxT are L2 parameters.

	The problem:  An anticoincidence pusle may age out beyond TmaxT
	while the hit channel stays below TmaxT.  There will be a false 
	positive trigger.

	Now there are four trigger parameters: minT, nomT, maxT, TmaxT.
	maxT was renamed to nomT.  A required pulse must not be older 
	than the new maxT parameter.

	minT ≤ nomT ≤ maxT ≤ TmaxT.
	minT ≥ 2

	Users need to be updated.



git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@7417 bc5caf13-1734-44f8-af43-603852e9ee25
2019-04-15 15:37:27 +00:00
stephan
bc82102999 flyrena/sfilter: fix L2 trigger
From: boettcher@physik.uni-kiel.de (Stephan Böttcher)
To: solo_kiel@physik.uni-kiel.de,  change4@physik.uni-kiel.de
Subject: flyrena L2 trigger
Date: Sat, 27 May 2017 20:43:24 +0200
Message-ID: <s6ninkmp2cz.fsf@blaulicht.brux>

Moin,

I found a deficiency in the flyrena L2 trigger, that may affect HET/EPT
and/or LND.

If multiple L2 trigger are satisfied by a particle hit, the L2 trigger
bits are set as soon as one of those L2 trigger conditions is satisfied
and the event record is generated according to that triggers readout
mask.  A more elaborate trigger may come active one or more ADC clocks
later, but that will not be reflected in the L2 trigger bits, nor the
selected readout mask, nor the L3 trigger being activated.

HET/EPT is probably not affected.  But that needs to be verified.

The current LND configuration is affected.

Assume a charged particle hit. Detector B triggers an ADC clock earlier
than A and/or I, so that the total-dose-in-B trigger fires with a narrow
readout mask, calling for dosimetry L3.  One ADC clock later, the
condition for the charged particle trigger is fullfilled, but the event
readout is too narrow, and the wrong L3 trigger is called.

A workaround is to never do sparse readout, i.e., always read all
channels, and add code to L3 to refine the triggers.

Gruß,
Stephan

PS: I found this problem in the data of the RpiRENA mADAM detector for
the weather ballon flight this summer.  That is a direna filter
with 3MSPS and 12-bit coefficients, so the probablility for triggers to
come out of time is higher.



git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@6069 bc5caf13-1734-44f8-af43-603852e9ee25
2017-05-27 22:03:28 +00:00
stephan
ca4f711b0d irena sfilter: trigger samples only once per event
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@6065 bc5caf13-1734-44f8-af43-603852e9ee25
2017-05-26 08:45:34 +00:00
stephan
4f6f24826e sirena_ana: fix SCK polarity, harness test successful
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@5877 bc5caf13-1734-44f8-af43-603852e9ee25
2017-02-24 16:44:25 +00:00
stephan
0d5f76d554 C'E4 flyrena: fix mtick phase
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@5736 bc5caf13-1734-44f8-af43-603852e9ee25
2016-12-22 10:24:31 +00:00
stephan
3cc2d1264e heteptana: C'E4 interface
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@5478 bc5caf13-1734-44f8-af43-603852e9ee25
2016-10-04 06:29:14 +00:00
stephan
afc434a323 sfilter dout_pipe: gold
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@5477 bc5caf13-1734-44f8-af43-603852e9ee25
2016-10-03 10:20:23 +00:00
stephan
ce2cbb6561 sfilter dout_pipe: sample DCLK to find propper tick phase
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@5476 bc5caf13-1734-44f8-af43-603852e9ee25
2016-10-03 10:19:49 +00:00
stephan
a20f15a962 verilog: fix a few nonblocking assignment s
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@3969 bc5caf13-1734-44f8-af43-603852e9ee25
2015-03-17 23:58:36 +00:00
stephan
41d63828c2 heteptana: merge -c 3599,3602 from em/v04
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@3603 bc5caf13-1734-44f8-af43-603852e9ee25
2014-12-10 20:09:43 +00:00
stephan
6382c652ec sfilter: forward inverted adc control outputs
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@3300 bc5caf13-1734-44f8-af43-603852e9ee25
2014-10-17 17:30:40 +00:00
stephan
753923daef adc128 filter:
support new FO parameter of the adcschedule module


git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@3287 bc5caf13-1734-44f8-af43-603852e9ee25
2014-10-16 16:43:33 +00:00
stephan
63e4ec9c56 sfilter.v:
This patch adds a register at the DOUT/SDATA input, before it is
	distributed to four SRAM blocks.

	This is necessary to meet worst case timing requirements of the ADCs.
	The ADCs require 27ns propagation delay from SCLK to SDATA.  The FPGA 
	must ensure the roundtrip clk -> SCLK -> SDATA -> clk takes no more
	than 62.5ns.  The aim is to constrain synthesis such that the sum of the
	delay clk->SCLK plus setup time DOUT->clk is shorter than 25ns.

	Obviously, there should be a register in the input pads of DOUT/SDATA.

	All inwards bound timing output of the aschedule module needs to be
	delayed by one clk cycle to cover for the extra register, that's all.


git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@3264 bc5caf13-1734-44f8-af43-603852e9ee25
2014-10-14 18:40:42 +00:00
stephan
382b469990 sfilter samples: merge -c 2973
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@2981 bc5caf13-1734-44f8-af43-603852e9ee25
2014-06-02 21:09:24 +00:00
stephan
2a1e31ffeb sfilter samples: fix timestamp for (unused) case NC%4==3
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@2962 bc5caf13-1734-44f8-af43-603852e9ee25
2014-05-31 18:59:20 +00:00
stephan
666bfd5a44 irena_core: use MSB of A,B in peek
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@2289 bc5caf13-1734-44f8-af43-603852e9ee25
2013-11-08 17:50:34 +00:00
stephan
57ecaaab3c flyrena sfilter:
add NT parameter for number of L2 triggers
   allow alternative implementations of ABTto32
   fix bug in samples timestamp emission


git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@2257 bc5caf13-1734-44f8-af43-603852e9ee25
2013-10-28 00:23:34 +00:00
stephan
f7cd854e94 pulser sim: fix start value
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@2256 bc5caf13-1734-44f8-af43-603852e9ee25
2013-10-28 00:20:46 +00:00
stephan
c8f4097db0 fix index typo
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@2093 bc5caf13-1734-44f8-af43-603852e9ee25
2013-09-02 16:51:43 +00:00
stephan
4ac3aa3173 packed sample packets
opheater parameter readout
SPIPE serial master states tranfer cadence parameter


git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@2085 bc5caf13-1734-44f8-af43-603852e9ee25
2013-09-01 21:37:58 +00:00
stephan
14f8d969d1 single channel counters as ufloat16
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@2053 bc5caf13-1734-44f8-af43-603852e9ee25
2013-08-26 18:47:11 +00:00
stephan
9437f92995 single channel trigger counters
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@2051 bc5caf13-1734-44f8-af43-603852e9ee25
2013-08-25 23:36:23 +00:00
stephan
1f1f799c80 limit peek data to the available channel data
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@2008 bc5caf13-1734-44f8-af43-603852e9ee25
2013-08-18 20:34:36 +00:00
stephan
d1426a18cb readout all channels for random triggers
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@1999 bc5caf13-1734-44f8-af43-603852e9ee25
2013-08-16 11:55:37 +00:00
stephan
4e3bb009e7 test with sparse mask, gold file
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@1992 bc5caf13-1734-44f8-af43-603852e9ee25
2013-08-15 16:43:50 +00:00
stephan
f93b14355c test L2 masked readout with sparse L2 masks
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@1991 bc5caf13-1734-44f8-af43-603852e9ee25
2013-08-15 16:20:31 +00:00
stephan
9896058681 dranbuf uses L2 mask
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@1989 bc5caf13-1734-44f8-af43-603852e9ee25
2013-08-15 14:07:24 +00:00
stephan
4420ff06cb L2 trigger with mask
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@1987 bc5caf13-1734-44f8-af43-603852e9ee25
2013-08-15 11:22:38 +00:00
stephan
acab3e8a08 fix dranbuf timing for L2 with mask
fix filter_test and flyrena tests for new L2 config
save flyrena.gold as baseline for future changes


git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@1982 bc5caf13-1734-44f8-af43-603852e9ee25
2013-08-14 22:49:16 +00:00
stephan
e01685ce29 add mask to hetept L2 trigger
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@1981 bc5caf13-1734-44f8-af43-603852e9ee25
2013-08-14 16:15:51 +00:00
stephan
58af81ccae move module aschedule from irena to library
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@1969 bc5caf13-1734-44f8-af43-603852e9ee25
2013-08-12 19:23:52 +00:00
stephan
b5dc83ce32 move ADC128S102 model into the general library
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@1966 bc5caf13-1734-44f8-af43-603852e9ee25
2013-08-12 15:16:02 +00:00
stephan
3d8c1638d4 flyrena sim with EPT event generator
git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@1926 bc5caf13-1734-44f8-af43-603852e9ee25
2013-07-12 13:23:39 +00:00