Implementation of processors' memory coherency protocols for L1 caches and its simulator