[wb_trigger] Module not flexible enough
Closed this issue · 0 comments
Problem: Our BPM use case needs a more flexible wb_trigger interface so multiple acquisition modules (with multiple acquisition interfaces) can multiplex triggers from/to physical triggers.
With the previous implementation, a single wb_trigger module needed to be coupled to a single acquisition module.
Moreover, multiple acquisition modules could not send a trigger to the external interface, as we had a mux selecting only one of them .
Solution: Split wb_trigger functionality into 3:
-
wb_trigger_iface responsible for the low-level
interface to board and FPGA -
wb_trigger_mux responsible for multiplexing
multiple physical triggers (external trigger signals)
to multiple, independent, trigger interfaces (FPGA signals) -
wb_trigger responsible for wrapping 1) and 2) together
and providing a resolution method for assigning physical
triggers to trigger interfaces (e.g., fanout resolution)
and a resolution method for collapsing trigger interfaces
to physical triggers (e.g, ORing trigger interface pulses)