Coverage of a large sparse matrix reprensentig a pattern of inputs

In reply to dave_59:

Hello Dave,

I actually have 150k+ inputs, not address encoded, they are actual bumps on the chip connected to sensors. This is a pixel detector chip used in a large HEP experiment. Each input represents a single pixel, organized in a NxM matrix.

The reason why I’m using a sparse array is that I’m not switching all the inputs at once at all times and since this is being sent around in the environment in the form of a sequence item, I’m using a sparse matrix to reduce memory footprint: I only have entries for the inputs I’m actually going to switch in any transaction, instead of allocating an array with 150k+ integers.

As for the neighborhood: the definition is an 8x3 rectangle around any pixel. And yes, for different pixels neighborhoods can overlap.

In particular I’m interested in covering these input patterns:

  • at least one pixel
  • at least two neighbor pixels (i.e. each one in the 8x3 rectangle around the other one)
  • all pixels in a column at the same time
  • all pixels in a row at the same time
  • all pixels in a cross at the same time (i.e. a full column and a full row)
  • all pixels at the same time

What do you mean by helper logic?