 Oversampling can be done "blind" using multiple phases of a free-running clock to create multiple samples of the input and then selecting the best sample.Or, a counter can be used that is driven by a sampling clock running at some multiple of the data stream frequency, with the counter reset on every transition of the data stream and the data stream sampled at some predetermined count.These two types of oversampling are sometimes called "spatial" and "time" respectively.