This sentence catches me wrong. Spatial Pooling does not require minicolumns or defining how many cells are in them. That is the Temporal Memory algorithm. And there is no temporal pooler today.
And if you want all the details about the spatial pooler, read this: The HTM Spatial Pooler: a neocortical algorithm for online sparse distributed coding.