LLC2_API
|
./xml_lookup xml/example1-krypton.xml system/exports CB=2 S1=3 MB=4 export $(./xml_lookup xml/example1-krypton.xml system/exports)
acqcmd -s MB hostname set.ao32 $S1 AO_MODE M_AWGI get.ao32 $S1 AO_MODE # ... returns M_AWGI
cd LOWLATENCY2; make
# create a job control file, example: # top-level-launcher cd PROJECTS/LOWLATENCY2/ export LL2_SYSFILE=xml/example1-krypton.xml export LL_OUTPUTS=data/ai-ramps.dat export $(./xml_lookup $LL2_SYSFILE system/exports) cd scripts ./setup.ao32 $MB $S1 ./deploy-script set.llc.wd $MB acqcmd -s $MB set.llc.wd source ./setup.clocks2 $MB 0 96 $CB init_clocks
source ./top-level-launcher # options ./web-trigger # run the shot -n ITERATIONS ECM (sample interval in 1usec ticks) ./example-dynamic -v 2 -n 10000 100
[dt100@krypton LOWLATENCY2]$ LL_OUTPUTS=data/ai-ramps.dat ./example-dynamic -v 2 -n 100 1000 slot:2 class:acq196 slot:3 class:ao32 ECM 1000 mmap 0xb7f4b000 offset 16 data: 00000004 37400000 ffffffff 00000ec6 mmapDmaBuffer() 01: open /dev/acq32/acq32.2.host mmapDmaBuffer() ask for full bigbuf portion 400000 mmapDmaBuffer() fd_in:4 physaddr 0x37400000 vaddr 0xb7b42000 len 4194304 mmapDmaBuffer() written host0.dat, zeroed speed=1197 ticks per microsecond ACQ196::init(0x9d49e1c) mbox 0x9d48ee8 M_SYNC_2V sample size 256 appEnterLLC_SYNC_2V() va:0xb7b42000 pa:0x37400000 MASTER slaves 1 enterLLC() llSetAddr [2] 0x37400000 leave LLC ~LL_ControlSystemI()
[dt100@krypton LOWLATENCY2]$ ./scripts/dump.ai.decimal ai.dat 33-64 | ./scripts/do-analyse | head 1:00000000000000000000000000000000 2:00000000000000000000000000000000 3:11111111111111111111111111111111 4:00000000000000000000000000000000 5:11111111111111111111111111111111 6:00000000000000000000000000000000 7:11111111111111111111111111111111 8:00000000000000000000000000000000
# NB: does not work on ACQ196-96-500, only ACQ196-96-250 ./scripts/dump.status.decimal | cut -d\ -f 12 | tail 9999920 9999940 9999960 9999980 10000000
cat llplot.m 1; nchan=96 tb=1:100; fp=fopen("ai.dat"); raw=fread(fp,Inf,"short"); len=length(raw) chx=reshape(raw,nchan,len/nchan); plot(tb,chx(1:32,tb)) octave octave:1> llplot