Adding Min Max Mean Difference support to all position bus fields - PandABlocks/PandABlocks-FPGA GitHub Wiki

Background

At present, COUNTER positions can produce Triggered or Difference over frame value, ADC values can produce Triggered or Mean over frame values, and Encoders Triggered or Mean of start and end of frame values. We now need to be able to capture min, max and mean of Encoder or ADC values.

Proposal

Allow the following capture options for all fields:

  • No
  • Start (select outa in mode 0)
  • End (select outb in mode 0)
  • Difference (select outc in mode 0)
  • Sum (select outa, outb in mode 1)
  • Mean (select outa, outb + global frame_length in mode 1)
  • Min (select outc in mode 1)
  • Max (select outd in mode 1)
  • Min Max Mean (select outa, outb, outc, outd + global frame_length in mode 1)

This requires more resources, and may limit our ability to port this to anything smaller than a Zynq 7030 in future.

Progress

  • For discussion on 01/09/2017
  • Agreed and implemented in pcap_unify_average branch
  • Will require a 1-0 breaking release of server and webserver, so due September