There are three distinct levels of cache coherence: 
Every write operation appears to occur instantaneously. 
All processes see exactly the same sequence of changes of values for each separate operand. 
Different processes may see an operand assume different sequences of values. (This is considered noncoherent behavior.)