pulp-platform / pulp

This is the top-level project for the PULP Platform. It instantiates a PULP open-source system with a PULP SoC (microcontroller) domain accelerated by a PULP cluster with 8 cores.
Other
446 stars 115 forks source link

Instruction Fetch in case of cluster #30

Open mohit3112 opened 4 years ago

mohit3112 commented 4 years ago

After going through HW reference manual , it's not clear how the Cluster core other than Core 0 would fetch the instruction. In Cluster control subsystem there is boot address configuration for core 0 only there is no mention how the other cores(1-7) will fetch instruction ?

MAX9596 commented 4 years ago

How to add the cluster_domain into the project? thanks.

anga93 commented 4 years ago

@mohit3112 , it is not clear to me what is the point of your question. Pulp is made of a MIMD cluster of RISCV cores. Basically each core fetches instruction in the same manner. The instructions reside in the L2 memory and in the pulp cluster you have different cache systems you can explore (private caches, shared cache, hierarchical cache). Please feel free to go more in depth in the conversation, in case I did not answer to your question.

anga93 commented 4 years ago

@MAX9596 the cluster domain is under the rtl folder in the pulp project. It instantiates the pulp cluster, which is treated as an IP and fetched from another github project through IPApprox tool