Setup XRDC domains and assign by PID for S32K344

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Setup XRDC domains and assign by PID for S32K344

Jump to solution
389 Views
oskarjohansson
Contributor I

Hi, I'm trying to setup a safe context in the S32K344 and control the memory and peripheral access based on the PID. Simplified I want to create two "process", one safe/secure that has access to some part of the memory/peripheral and one non-safe that doesn't have access to some part of the memory/peripherals. I'm looking at the XRDC module and try to configure, but you are restricted to assign one domain per master instance? 

So is it not possible to have different access levels for one core based on the PID?

Best regards,

Oskar

0 Kudos
Reply
1 Solution
115 Views
davidtosenovjan
NXP TechSupport
NXP TechSupport

Yes, I would agree with that.

View solution in original post

7 Replies
337 Views
davidtosenovjan
NXP TechSupport
NXP TechSupport

It can be done, one core master can be assigned to multiple domains.

davidtosenovjan_0-1728385657321.png

 

0 Kudos
Reply
318 Views
oskarjohansson
Contributor I

Thank you for your reply, but when I look at the MDA_Wn_m_DFMT0, for the core master, there is only one MDA_W0_0_DFMT0? Or is it something I miss here?

Not as in the example where a master 4 here has 4 domains (?)

oskarjohansson_1-1728390840670.png

If I try to setup the XRDC in the S32DS and try to add another configuration in the Domain Assignment I only get:

oskarjohansson_0-1728390630990.png

Best regards,

Oskar

 

0 Kudos
Reply
306 Views
davidtosenovjan
NXP TechSupport
NXP TechSupport

This is one domain (0) and by '+' you can add another domain (1-3). All can use multiple core masters.

davidtosenovjan_0-1728471524562.png

 

 

0 Kudos
Reply
277 Views
oskarjohansson
Contributor I

Yes, but when I do that and add the same core master (Xrdc_0_CM7_0) twice I get the error message above.

So it is possible to add multiple core master to a defined domain, but not one core master to multiple domains that will changed based on the PID register? 

oskarjohansson_0-1728537459042.png

Best regards,

Oskar

0 Kudos
Reply
256 Views
davidtosenovjan
NXP TechSupport
NXP TechSupport

Yes, you are right.

You may have multiple masters in one domain every master must be in different one.

For instance for S32K388, you may have CM7_0,CM7_1 and CM7_2 in Domain 0 and CM7_3 in Domain 1.

0 Kudos
Reply
208 Views
oskarjohansson
Contributor I

Okay, so just to clarify, in order to achieve "Isolation of safety-critical and non-safety-critical code" it is necessary to have a processor that has two cores that can run in their own domain, as it is not possible to assign one core to different domains. 

So for the S32K344, a 2-core lockstep, it is not possible to use the XRDC to create different domains for the core to create an isolation between the safety and non-safety code? It would be necessary to use something like the S32K358, which has a 2-core lockstep and an additional single core?

oskarjohansson_0-1728883090240.png

Best regards,

Oskar

0 Kudos
Reply
116 Views
davidtosenovjan
NXP TechSupport
NXP TechSupport

Yes, I would agree with that.