The Mont-Blanc project follows a co-design approach to ensure the final hardware design meets real-world High-Performance Computing (HPC) application requirements. Simulation is widely used in system design for evaluating different design options, as well as to characterize how an application will run in that configuration. The main idea is to test the applications and evaluate future performance prior to silicon availability. One of the most widely used simulation tools in research and in the Mont-Blanc series project is the gem5 simulator. gem5 is an open source, modular platform for computer-system architecture that is flexible and highly configurable. It can model a whole system architecture as it includes different models for the cores and the memory hierarchy. The objective of this tutorial, is to present in a our simulation framework, and how it has help on the design of highly complex systems.