Firmware feature lists
Here are some utility-mode features that I think will still be useful:
- detect/report sync error if BC detected on input cable does not
match BC inferred from CDF backplane signals
- output correct EE word (e.g. even if input BC or L2B is wrong):
useful in case in which SVT is playing spy
buffer fake data with no knowledge of Trigger Supervisor's true BC,
L2B; we need to be able to send the right EE word to L2 and DAQ
- fix LEDs at U of C (make sure all LEDs work as they should on a
typical SVT board; there is at least one schematic bug on the
connection of one of the four LEDs per channel to the 74HCT123)
Here are some utility-mode features that I think are already
implemented (i.e. were checked off on an old to-do list):
- 512 words times 4 L2 buffers for VME readout of SVT cable data
(one known bug: about 0.1% of time the
last word of data does not read out correctly over VME, though it is
stored correctly in memory; work-around is to read one extra word)
- ability to write directly from VME to output connector
- ability to read from input FIFO to VME
- event-by-event timing info for each L2 buffer
- option to suppress Data Strobe to downstream board (e.g. so that
we send nothing to L2 during standalone tests)
- option to ignore hold signal
- internal state machine can wait for backplane L1A (e.g. for back
pressure) or not, according to VME-programmable register
- internal state machine can look for SVT input data or not (this
would provide XTRPemu functionality, which we may not need anymore)
- clear counters before seeing first SVT word
- increment Level 1 Accept counts properly
- 512-word RAM (instead of 1K)
- VME FIFO block-read option
- Test Mode (mode in which data processing is stopped)
- read channel ID via VME bits
- 2K words of spy buffer
- for Marco's monitoring program: use spare SRAM space (1.2KB) for
circular buffer of last 1K 10-bit processing times in microsecond
increments
- fix FRAM at U of C (the power was not connected on the artwork)
Here are some utility-mode features that are probably not necessary,
but I include them because I once thought they might be useful, or
they would emulate some functionality that we currently have in crate
b0svt07 (but may not need)
- option to pump OSPY data into output cable on each event, which
would replace the current "fake track data" option that we have
kludged together with Hit Finders and Mergers
- option to pump FRAM data out to output cable on each event?
Here are some processor-mode features that I think are needed (and are
now all done):
- do multiply/add in logic for beam spot instead of using big lookup
table
- use FRAM for sin/cos table
- subtract double-buffered beam spot (allows perfectly emulatable
beam subtraction)
- also use FRAM for phi linearization
- suppress duplicate tracks (done)
- expand duplicate filtering to include hit quality bits (in
addition to chisq bits) in its decision: this may be useful in 4/5 mode
Here are some processor-mode features that we can probably skip,
especially if utility mode has these features:
- L1A back pressure
- in/out hold programmable