1using sysbus 2mach create 3machine LoadPlatformDescription @platforms/cpus/sifive-fe310.repl 4 5set cacheBenchamrkLogger 6""" 7from Antmicro.Renode.Peripherals.CPU import ICPU 8 9machine = self.Machine 10sysbus = machine.SystemBus 11cpu = machine.GetPeripheralsOfType(ICPU)[0] 12 13def end_hook(cpu, addr): 14 cpu.Pause() 15 cpu.Log(LogLevel.Info, "Reached simulation end hook at PC: %s" % cpu.PC) 16 monitor.Parse("q") 17 18for addr in sysbus.GetAllSymbolAddresses("k_cpu_idle"): 19 cpu.AddHook(addr, end_hook) 20""" 21 22sysbus LoadELF @https://dl.antmicro.com/projects/renode/zephyr-fe310-shell.elf-s_323068-cf87169150ecdb30ad5a14c87ae209c53dd3eca2 23cpu PC `sysbus GetSymbolAddress "vinit"` 24 25cpu MaximumBlockSize 1 26cpu CreateExecutionTracing "tracer" $ORIGIN/trace.log PCAndOpcode 27tracer TrackMemoryAccesses 28 29python $cacheBenchamrkLogger 30