Here are some simulators I wrote for the course Computer Architecture at USTC.
Written in Java
Written in Javascript(ES6), you can see a live demo here
Written in JS(ES6), simulate a system with 4 CPUs, including directory-based protocol and bus-snooping protocol.
Here is demo for bus-snooping protocol
Here is demo for directory-based protocol