Other Parts Discussed in Thread: TPS65381-Q1, , TMS570LS1224, HALCOGEN
Hi,
I've just realized the meaning of LC as I started to read tps65381-q1.pdf.
Could you guys recommend some more reading on LC (loosely-coupled) architecture?
Regards, Szilárd
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi,
I've just realized the meaning of LC as I started to read tps65381-q1.pdf.
Could you guys recommend some more reading on LC (loosely-coupled) architecture?
Regards, Szilárd
Hi QJ,
Thank you for the prompt answer.
Regarding to tps65381-q1.pdf section 1.3:
"The TPS65381-Q1 device is a multi-rail power supply designed to supply microcontrollers (MCUs) in functional safety applications,
such as those found in automotive and industrial applications. The device supports Texas Instruments ’ TMS570LS series flash MCU and
other MCUs with dual-core lockstep (LS) or loosely-coupled architectures (LC)"
So its a bit specious. Could you give me an example for loosely-coupled architecture Texas MCU?
Is it kind an SMP (symmetric multi processing - two independent core with common memory) ?
Regards, Szilárd
Hi Szilard,
I support the TPS65381(A)-Q1. The comment about loosely coupled is after the phrase "and other MCUs with...". The TPS65381(A)-Q1 is a companion chip with tight support for the TMS570/Hercules which have dual core lock step to meet a chip set approach to the safety architecture. However not all functional safety applications use lock step. The TPS65381(A)-Q1 also supports many other MCUs, some from TI such as the C2000, TMS470, and other MCU vendors. Some of those have a loosely-coupled dual core approach, which may require additional software and hardware for example to reach certain safety goals. A generic definition of loosely-coupled can be found on Wikipedia: https://en.wikipedia.org/wiki/Loose_coupling
So yes, it is generically it could independent cores either with common memory or separate memories.
Best Regards,
Scott
Hi Scott,
Thank you very much for the details. I just can't get it out of my mind that TMS570LC4357 meant to be a real
dual core (split lock) MCU.
Regards, Szilárd
I have made a simple led blinking demo for trying to decouple the cores with the self-test mode in the CCM-R5 module.
I don't know if it was successful or not, because the blinking speed was the same. I think it could be same because the two
cores has only 2 clock difference and the first two stages of the 8 stage pipeline are prefetch stages.
So (I think) an additional single core reset should be needed.
I started to digging into TRM and found this:
Its nothing interesting, but the HALCoGen generated code was a bit more talkative..
Maybe somebody has an idea, how to reset a single core for testing..
Regards, Szilárd
The Split/lock section of the Cortex-R5 Technical Reference Manual says:Szilard Lovas said:I just can't get it out of my mind that TMS570LC4357 meant to be a real dual core (split lock) MCU.
I am not sure if the ability to select "twin-CPU performance mode" is an option available in all devices, or if it a feature the device manufacturer has to enable as an option in the macrocell.The Cortex-R5 processor can be configured so that it can be switched, under reset, between a twin-CPU performance mode and a dual-redundant safety mode. This feature imposes extra constraints on the software usage model. Contact ARM for information on how it can be used.
Hi Chester,
Thank you for your comment!
I have read the mentioned TRM. It is visible that the split lock signals are not connected to any pins outside.
The real question that is it possible to decouple the CPU cores and get CPU2 to drive the BUS.
Yesterday I could reset CPU2 independently by STC module. Unfortunately I couldn't experience any
signs of CPU2 BUS interaction in spite of switching CCM module to self-test mode which actually should separate the cores.
Regards, Szilárd
Hello 1138,
There is only one Cache memory not lock stepped memory. The Cache is also protected by ECC, but it is not automatically enabled and must be enabled by the application SW. As far as the device architecture is considered, there were/are additional mechanisms that had to be accounted for and which have been added to the device's safety manual and FMEDA tool. Certainly, you cannot simply port some code from an LS device to the LC without some major overhaul since there is an updated CPU as well as an updated architecture to support the cache architecture and different Master/slave interactions. In the LC device the memory is not tightly coupled since RAM and Flash reside on the L2 bus instead of the TCMs.
There may be other safety points that should be considered at the system level.
Hi Chuck,
Thank you for the explanation. I think we are more close to the original meaning of "LC".
I always loved the etymology :)
Regards, Szilárd