Arm Research Enablement Kit
System-on-chip (SoC) computing systems are complex, and prototyping such systems is extremely expensive. Simulation is a cost-effective way to evaluate new ideas. Modern simulators, like gem5 are capable of modeling various system components, such as different CPU models, interconnection topologies, memory subsystems, etc. gem5 also models the interactions among system components.
This Research Enablement Kit will guide you through Arm-based system modeling using the gem5 simulator and a 64-bit processor model based on Armv8-A.
Why use this Research Enablement Kit?
gem5 is a well-known sophisticated simulator used for computer system research at both architecture and micro-architecture levels. It is capable of modeling several ISAs, and does so with enough details such that booting unmodified Linux distributions is possible.
This Research Enablement Kit introduces the first Armv8-A based CPU timing model in gem5 that has been released by Arm. It shows you how to simulate this model and run benchmarks on top of it.
Computer system researchers looking to:
- develop Arm-based system modeling experience using gem5
- use a modern Armv8-A based processor model in their research
You will need:
- Linux: Intermediate knowledge
- Computer architecture: Intermediate knowledge
- C++: Working knowledge
- Python: Working knowledge
From your Linux machine, click ‘Get clone script’. This will download a ‘clone.sh’ script. Running this script ‘bash clone.sh’ will create two directories:
- gem5: the latest gem5 source code, cloned from its main repository at:
- arm-gem5-rsk: the scripts, documents and files required to run the examples and benchmarks, cloned from the Arm gem5 RSK repository at: