[Lab 3] Set different CPU IDs for each subsystem

[Lab 3] Set different CPU IDs for each subsystem

by Loïc Karl Droz -
Number of replies: 0

Hi,

In our Qsys, we have 2 subsystems instantiated from one Qsys file, which are connected to a top-level Qsys file that contains a mutex. Each subsystem contains a NIOS II CPU.

However, since both subsystems are instantiated from the same Qsys file, they share exactly the same configuration. As a result, both CPUs have the same CPU ID, which causes problems when they access the top-level mutex, because it uses the CPUs' IDs to tell them apart and tell which one is currently holding the mutex.

A simple and dirty fix to this problem is to use one subsystem Qsys file for each CPU, and modify the ID of each CPU so they are different. However, this looks like an overkill to us because we're duplicating an entire Qsys system just so we can have two different CPU IDs.

Does anyone know of a better way to do this? For example some way to customize each subsystem instantiation in the top-level system.

Thanks,

Loïc