The new PAWB simulator has been broken into a small kernel and separate objects for each of the components to be simulated. The small kernel consists of the code to read the architecture description file, and the code used to schedule and process messages sent between the objects representing the various architectural components.
Each component consists of the code to simulate its behavior and the ports used to interface with other components. The interface between components is simulated using a message passing system. Address messages represent messages flowing from a processor to the main memory system. This type of message is acknowledged by Data messages which go from the main memory system to the processors.