latencybins - comp utility for scripts/latency-histogram
Usage: 
Read availablebins pin for the number of bins available.
Set the maxbinnumber pin for the number of ± bins.
Ensure maxbinnumber <= availablebins 
For maxbinnumber = N, the bins are numbered: 
-N ... 0 ... + N bins 
(the -0 bin is not populated) 
(total effective bins = 2*maxbinnumber +1) 
Set nsbinsize pin for the binsize (ns) 
Iterate: 
Set index pin to a bin number: 0 <= index <=
maxbinnumber. 
Read check pin and verify that check pin == index pin. 
Read output pins: 
pbinvalue is count for bin = +index 
nbinvalue is count for bin = -index 
pextra is count for all bins > maxbinnumber 
nextra is count for all bins < maxbinnumber 
latency-min is max negative latency 
latency-max is max positive latency
If index is out
of range ( index < 0 or index > maxbinnumber) 
then pbinvalue = nbinvalue = -1. 
The reset pin may be used to restart. 
The latency pin outputs the instantaneous latency.
Maintainers note: hardcoded for MAXBINNUMBER==1000
latencybins.N
latencybins.N.maxbinnumber
s32 in (default: 1000) 
latencybins.N.index s32 in 
latencybins.N.reset bit in 
latencybins.N.nsbinsize s32 in 
latencybins.N.check s32 out 
latencybins.N.latency s32 out 
latencybins.N.latency-max s32 out 
latencybins.N.latency-min s32 out 
latencybins.N.pbinvalue s32 out 
latencybins.N.nbinvalue s32 out 
latencybins.N.pextra s32 out 
latencybins.N.nextra s32 out 
latencybins.N.variance s32 out 
latencybins.N.availablebins s32 out
(default: 1000)
GPL