On Fri, Oct 19, 2018 at 9:24 AM Thawra Kadeed <[email protected]> wrote:
>
> On 2018-10-18 19:02, Ciro Santilli wrote:
> > On Thu, Oct 18, 2018 at 5:45 PM Thawra Kadeed <[email protected]>
> > wrote:
> >>
> >> Hello,
> >>
> >> I have, please, a small question about how GEM5 deals with the
> >> ARM-specific bootloader.
> >>
> >> In GEM5 there are two bootloaders belong to ARM
> >> (http://www.gem5.org/ARM_Implementation). Let's talk about the simple
> >> bootloader which starts Cpu0 from the start address of the kernel, and
> >> puts other cores in a spin-loop until they are started by the kernel.
> >>
> >> My main question is:
> >> How GEM5 uses the ARM-specific bootloader? e.g. GEM5 loads it to the
> >> simulated memory and then who executes it at the start-up of the
> >> system?
> >>
> >
> > Well, gem5 sets the PC to the start of the bootloader that was loaded
> > in memory, and then it just runs like any other code, there is nothing
> > more than that to
> > it.
> >
> > Use gem5.opt --debug-flags=Exec and see the trace.
>
> Thanks a lot Ciro for your answer.
>
> So gem5 sets the PC to the start of the bootloader. Then in case of a
> multi-core system, the PC of all cores are set by GEM5 to the start
> address of the bootloader,  and then the bootloader tells the cores what
> to do. Right?
>

I haven't studied arm multicore startup yet, so I'm not sure.

In x86, the secondary cores start in sleep mode and the first core
setups the their code in memory and wakes them up.

My guess is that arm is similar.

>
>
>
> >
> >>
> >> Thanks in advance.
> >> Thawra
> >> _______________________________________________
> >> gem5-users mailing list
> >> [email protected]
> >> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to