I found this interesting on the whole subject of associative/sparsely distributed memory implementation. It also seems to be optimized for SDRs without using this acronym
How does the brain store and compute with cognitive information? In this research report, I revisit Kanerva’s Sparse Distributed Memory
theory and present a neurobiologically plausible implementation, founded on combinatorial connectivity patterns of large neural
assemblies. This type of neural network gives rise to a new efficient algorithm for content-addressable memory. Extending this new kind of
memory to store crossassociations (i.e. triples of items) leads to the discovery of the triadic memory algorithm, which turns out to be a
powerful building block for cognitive computing and possibly the long sought-for universal algorithm of human intelligence. As proof of
concept, I develop a semantic triplestore, analogy-finding operators, autoencoders for sparse hypervectors, and a basic temporal memory.
Software implementations are included in this report for reference