Visible to Intel only — GUID: klb1679236443276
Ixiasoft
Visible to Intel only — GUID: klb1679236443276
Ixiasoft
5.5.1. CPU Frequency
In real hardware, the processor clock is used to synchronize the internal processes that occur in the CPU such as the fetching of instructions, decoding and executing them. Because of this, the clock frequency is one of the parameters that defines how fast the CPU can execute certain pieces of software.
In an Intel® Simics® simulation having a higher or lower CPU frequency does not affect the actual speed of simulation, but it affects the number of instructions that need to be executed for a certain amount of simulated time to pass. If your execution only depends on executing a certain number of instructions, increasing the clock frequency takes the same amount of host time, but a shorter amount of target time. However, if there are time-based delays of some kind in the simulation, they take longer time to execute. For example, at a simulated 1 MHz, one million target instructions correspond to a simulated second (assuming the simple default timing of one cycle per instruction). At 100 MHz, it takes 100 million target instructions to complete a simulated second. So, with a higher clock frequency, less simulated target time is going to pass for a certain period of host execution time.
The frequency of a CPU in a simulation can be identified using any of the following commands:
- list-processors
- <core>.info (for a specific core, example: agilex.hps.core[0].info)
- <core>.status (for a specific core, example: agilex.hps.core[0].status)
# Intel Simics simulator CLI simics> list-processors --------------------------------------------------- CPU Name CPU Class Freq --------------------------------------------------- agilex.hps.core[0] * arm-cortex-a53 200.00 MHz agilex.hps.core[1] arm-cortex-a53 200.00 MHz agilex.hps.core[2] arm-cortex-a53 200.00 MHz agilex.hps.core[3] arm-cortex-a53 200.00 MHz --------------------------------------------------- * = selected CPU