On 3/13/25 11:47, ltaylorsimp...@gmail.com wrote:
What we are trying to model is an instance of a Hexagon that has a number of 
threads and some resources that are shared.  The shared resources include the 
TLB and global S registers.  The initial thought was to tie the shared 
resources to the thread with cpu_index == 0.  If we were to model a Qualcomm 
SoC, there would be multiple ARM cores and multiple Hexagon instances.  Each 
Hexagon instance would have distinct shared resources.  So, you are correct 
that using cpu_index is not going to scale.

What is the recommended way to model this?  I see a "nr_threads" field in CPUCore but no 
clear way to find the threads.  PPC has some cores that add a "threads" field.  Should we 
follow this approach?

I recommend that the shared resources be modeled as a separate Object,
which is linked via object_property_add_link to all of the cpus that use it.

The linking would be under the control of the board model and/or the SoC model.


r~

Reply via email to