Symmetric Multi-Processor Arrangement, Safety Critical System, And Method Therefor
A symmetric multi-core processor arrangement for a safety critical system, including: a symmetric multi-processor having at least two cores and a memory shared for the at least two cores; and a hypervisor connected to the symmetric multi-processor, and configured to organize access to the at least two cores for at least a diagnostic application checking the safety critical system; wherein, during use, the diagnostic application is configured to read from and write to the memory, and the hypervisor is configured to read only from the memory.
1 . A symmetric multi-core processor arrangement for a safety critical system, comprising:
a symmetric multi-processor having at least two cores and a memory shared for said at least two cores; and
a hypervisor connected to said symmetric multi-processor, and configured to organize access to said at least two cores for at least a diagnostic application checking said safety critical system;
wherein, during use, said diagnostic application is configured to read from and write to said memory, and said hypervisor is configured to read only from said memory.
2 . The symmetric multi-processor arrangement according to claim 1 , wherein said hypervisor is configured to provide said diagnostic application with prioritized access to said multi-processor.
3 . The symmetric multi-processor arrangement according to claim 1 , wherein said safety critical system comprises at least two diagnostic applications during use for diagnostic redundancy.
4 . A safety critical system, such as a robot, comprising the symmetric multi-processor arrangement according to claim 1 .
5 . A method for a diagnostic check of a safety critical system, such as a robot, comprising the following steps:
writing to and reading from a memory shared by at least two cores of a symmetric multi-processor through a diagnostic application of said safety critical system; and
organizing access to said at least two cores of the symmetric multi-processor for said safety critical system through a hypervisor, and said hypervisor being configured for reading only from said memory shared by said at least two cores;
wherein said diagnostic application is configured to check status of one or more resources of said safety critical system.
6 . The method according to claim 5 , comprising the step of:
updating a health status indicator in said memory for each resource said diagnostic application is monitoring through said diagnostic application.
7 . The method according to claim 6 , wherein said health status indicator comprises, for each resource being monitored: status of a diagnostic test being executed, a timed stamp when run, and time since last check.
8 . The method according to claim 5 , wherein said diagnostic application has prioritized access to said multi-processor, utilized when a monitored resource continuously is used by another application of said safety critical system.
9 . The method according to claim 5 , comprising the step of:
reconfiguring a voting scheme for said diagnostic application dynamically.
10 . The method according to claim 5 , comprising the step of:
writing to and reading from said memory through a second diagnostic application of said safety critical system.
11 . A computer program product comprising a computer program for performing a method for a diagnostic check of a safety critical system, such as a robot, comprising the following steps:
writing to and reading from a memory shared by at least two cores of a symmetric multi-processor through a diagnostic application of said safety critical system; and
organizing access to said at least two cores of the symmetric multi-processor for said safety critical system through a hypervisor, and said hypervisor being configured for reading only from said memory shared by said at least two cores;
wherein said diagnostic application is configured to check status of one or more resources of said safety critical system.