The invention relates to the electric system digital control domain, in particular it is targeting (but not limited to) control of power train of pure electric or hybrid vehicle electric systems (like motors but also DC/DC converters) that require hard real time and safe control. The invention is about providing highest level of security features targeting present and future security challenges that apply to the above fields of application with highest level of functional safety standards. The invention combines the state-of-art cryptographic and anti-hacking functions with on-chip programmable hardware and accelerators.
The invention is suited for electric arrangements (also denoted FPCU), comprising: a plurality of functional modules, and interconnect fabric connecting the functional modules and providing communication between those functional modules, especially, wherein one or more of said functional modules being a hardware programmable unit, being a programmable logic matrix.
The invention is about providing security by enabling (long-term) use of (as functional module) a specific secure sub-system featuring state-of-art cryptographic and anti-hacking functions within such FPCU kind of components that basically features (as other functional modules):
In the emerging context of connected vehicle, those kinds of application are more and more subject to security concerns related to:
Until recently, the security management have been managed through central “bridges” being the only system in direct contact with external world (e.g.: connected to cloud). This bridge was responsible for all the secure scenario. Thus all other electronic systems were hidden behind it.
Now, the vehicle network architecture is moving to a much more de-centralized scheme. This means that, potentially, any computing resource of the vehicle can be in more-or-less direct contact with external networks, hence also more critical ones like power-train controllers.
Thus, the requirement for security scenario handling in any computing component became mandatory.
As mentioned before, security matters are more and more critical in automotive applications. So, next generation electronic components and arrangements must provide the necessary functions that permit to handle the secure scenarios and the secure attack counter-measures as well.
Those elements are well covered by many commercial offers that properly handle the security functions as they are known at present time.
However, the security domain is evolving very fast. The hackers technics are more and more complex and the cryptographic standard are also evolving. As an example, some widely used cryptography algorithms, which theoretically require the equivalent of thousands years of computing to be hacked with a modern computer may be hacked only in a few minutes with future quantum computers. This is a critical problem in the domain of automotive where components life-time is significantly longer than other domains (like consumer). This means that a secure sub-system must be able to handle new security challenges over time for 10 years or more.
The invention is especially focusing on FPCU's, primarily targeting hard real-time applications with the strongest functional safety requirements levels (ASIC-D), designed to offer the best-in-class level in both real-time and safety domains.
In relation to security features flexibility, the typical answer to previous challenges is to integrate a CPU core to the secure sub-system. Therefore, the secure functions can be upgraded with software updates.
However, this strategy suffers from following limitations that makes it hardly acceptable for the automotive applications that we are targeting:
In relation to balancing safety and real-time aspects versus security, the conventional approach would consist in adding some software stack able to synchronize the activity of both real-time and security system and implement arbitration policy that would guarantee the functional safety behavior while allowing secure counter-measures.
Again, the reaction time is an issue here.
Indeed, the necessary software should be aware of the current real-time state of the system to be able to take the appropriate decision at the appropriate time.
However, in the best-in-class FPCU systems targeted, the hard real-time algorithms are executed inside the real-time processing sub-system (featuring some hardware programmable flexible logic units) without any fine-grain synchronization to the CPU core. Anyway, the CPU would not be fast enough to synchronize with the hardware activity also.
The invention aims at adding a future proof security sub-system to the above described architectures while avoiding situations where this secure function could be in conflict with (best-in-class) real-time and/or safety requirement in case the secure sub-system may interpret some safety related fault as security attacks (example: artefact on clocks or power supply). So, the secure sub-system could apply some counter measures to prevent the hacking (example: cutting the communications through CAN ports). This can obviously be a very dangerous decision . . . .
The invention is about providing highest level of security features targeting present and future security challenges with highest level of functional safety standards by defining a specially adapted architecture within such FPCU kind of components.
The invention is therefore providing security by enabling (long-term) use of (as functional module) a specific secure sub-system featuring state-of-art cryptographic and anti-hacking functions within such FPCU kind of components in particular means to efficiently extend the secure sub-system capabilities so that the FPCU component is ready for long term security challenges.
In a first aspect the invention provides an electric arrangement, comprising: (a) functional modules, which can serve both as transaction initiators or transaction targets, whereby a transaction initiating functional module may need a transaction target functional module to execute a function for and on its behalf; (b) a first interconnect fabric connecting the functional modules and providing communication between those functional modules; wherein the (electric) arrangement being arranged in that a selected transaction initiation functional module has temporally exclusive access to transaction target functional module(s), executing a function for and on its behalf, to ensure that transaction initiating functional modules other than the selected transaction initiation functional module, have no uncontrolled access thereto, wherein said selected transaction initiation functional module being a hardware secure module.
In a second aspect the invention provides a secure transaction mechanism wherein transaction initiating functional modules other than the selected transaction initiation functional module, have only access via the first interconnect fabric after initiating by said other transaction initiating functional modules a service request to said selected transaction initiation functional module to configure protection units connected to such other transaction initiating functional modules accordingly subject to the selected transaction initiation functional module its approval.
In a third aspect the invention provides various interconnect arrangements and the considerations related to the above to be taken into account.
The invention relates to an (electric) arrangement, comprising: (a) functional modules, which can serve both as transaction initiators or transaction targets, whereby a transaction initiating functional module may need a transaction target functional module to execute a function for and on its behalf; (b) a first interconnect fabric connecting the functional modules and providing communication between those functional modules; wherein the (electric) arrangement being arranged in that a selected transaction initiation functional module has (temporally) exclusive access to transaction target functional module(s), executing a function for and on its behalf, to ensure that transaction initiating functional modules other than the selected transaction have no uncontrolled access thereto (via the interconnect fabric).
Typically said selected transaction initiation functional module is a hardware secure module (for instance with cryptographic capabilities).
The invention in particular relates to an (electric) arrangement, comprising: (a) functional modules, which can serve both as transaction initiators or transaction targets, whereby a transaction initiating functional module may need a transaction target functional module to execute a function for and on its behalf; (b) a first interconnect fabric connecting the functional modules and providing communication between those functional modules; characterized in that, for ensuring that a selected transaction initiation functional module has (temporally) exclusive access to transaction target functional module(s) executing a function for and on its behalf, protection means are provided, to ensure that transaction initiating functional modules other than the selected transaction initiation functional module, have no uncontrolled access thereto (via the interconnect fabric).
In an embodiment of the invention said protection means comprises: one or more protection units provided (between said modules and part of said first interconnect fabric) for each of said transaction target functional modules; whereby the configuring of said protection units is (directly or indirectly) controlled by said selected transaction initiation functional module (wherein said protection units provide transaction filtering).
In an embodiment of the invention transaction initiating functional modules other than the selected transaction initiation functional module, have only access via the first interconnect fabric after initiating by said other transaction initiating functional modules a service request to said selected transaction initiation functional module to configure related protection units accordingly subject to its approval (hence controlled access).
In an embodiment of the invention in the (electric) arrangement, the one or more protection units are further connected by a second interconnect fabric for configuring those protection units, whereby a further protection unit, between said first and second interconnect fabric is provided; and the configuring of said further protection unit is (directly or indirectly) controlled by said selected transaction initiation functional module.
In alternative embodiment of the invention in the (electric) arrangement, wherein one or more protection units are further connected by one or more second interconnect fabrics for configuring those protection units, whereby further one or more protection units, between said first and second interconnect fabrics are provided; and the configuring of said further protection unit is (directly or indirectly) controlled by said selected transaction initiation functional module.
In an embodiment of the invention an (electric) arrangement is provided, wherein said first interconnect fabric connecting the functional modules and providing communication between those functional modules, comprising a third interconnect fabric, for exchanging task specific trigger signals between functional modules, said third interconnect fabric comprising a trigger router module, able to route any input triggers to any output trigger, said trigger router module, being adapted to ensure that transaction initiating functional modules other than the selected transaction initiation functional module, have no uncontrolled access thereto via the third interconnect fabric, preferably said trigger router module, being configurable via said second interconnect fabric (while for the other remaining part of said first interconnect fabric protection units are provide in between said other remaining part and the functional modules).
In an embodiment of the invention an (electric) arrangement is provided, wherein said first interconnect fabric connecting the functional modules and providing communication between those functional modules, comprising a fourth interconnect fabric, comprising direct connections between (part of) the functional modules, whereby said protection means ensures that transaction initiating functional modules, other than the selected transaction initiation functional module, have no uncontrolled access to module(s) executing a function for and on its behalf, via the fourth interconnect fabric (by configuring those transaction initiating functional modules related protection unit accordingly).
The invention is now illustrated on the basis of a conventional FPCU architecture (without Flexible hardware secure module) as shown in
As explained above, the state-of-art solution based on software does not properly solve the problems.
So, the invented concept is about taking benefit of the existence of the flexible logic unit and/or mathematical accelerators present in the (so-called AxEC) sub-system to extend the “boundary” of the HSM module. This resource allocation is intended to be done dynamically at runtime so that the AxEC resource usage can be adapted to any in-field situations.
The
In this example:
More generally speaking the electric arrangement is provided, which, comprises: (a) functional modules (such as HSM, CPU, FLU), whereby such functional module may need another functional module (FLU, Peripheral) to execute a (security) function for and on its (exclusive) behalf.
As introduced above, the FHSM concept consists in virtually extending the secure sub-system boundary towards AxEC computing resources (FLU, Peripheral).
The hardware mechanisms that are further defined strictly guarantee that any resource allocated to the HSM cannot be influenced by other parts of the SOC. This means that any communication channel for which the resource is a “slave” (not the initiator of the communication) should be restricted so that only the components being part of the FHSM boundary are able to initiate communication on this channel. This means that specific “isolation” hardware is needed to reach this goal.
Note: The communication channels for which the resource is a “master” do not need special care.
Depending on the type of communication channel, the isolation mechanism may differ as explained further.
The different types of communication channels are:
As said the invention is about providing security by enabling (long-term) use of (as functional module) a specific secure sub-system featuring state-of-art cryptographic and anti-hacking functions and able to handle new security challenges by defining a specially adapted architecture within such FPCU kind of components, more in particular making it future proof by allowing a secure sub-system to rely (exclusively) on other resources in the arrangement, wherein especially the communication architecture requires attention.
In essence since the invention relates to an (electric) arrangement, comprising: (a) functional modules; and(b) a interconnect fabric connecting the functional modules and providing communication between those functional modules; for the purpose set forth above the (electric) arrangement has to be being arranged in that a selected functional module has (temporally) exclusive access to another functional module(s), executing a function for and on its behalf, but avoiding uncontrolled access thereto (via the interconnect fabric) via protection means (attached to the communication architecture defined by the interconnect fabric).
The possible different available communication mechanisms (defining the communication architecture) are now described in more detail.
Trigger Mechanism
Now, let's consider the following case as shown in
As mentioned in
With this new virtual boundary, the HSM module is able to decide for proper trigger routing and then insure that the conditions above are met.
The edge effect consequence is that the HSM sub-system become also responsible for the configuration of all triggers of the SOC., including those that are not part of the security activities. This is not a problem. It is always possible for the Application CPU to configure the necessary non-secure trigger. The only constraint is that the application CPU is not able to do it directly by writing trigger router registers. Instead it must transmit a specific request toward the HSM. Then this one can check the secure aspect of this demand and accept or refuse the trigger routing request accordingly.
Generally speaking an (electric) arrangement, wherein said first interconnect fabric connecting the functional modules and providing communication between those functional modules, comprises a (further) third interconnect fabric, for exchanging task specific trigger signals between functional modules, said third interconnect fabric comprising a trigger router module, able to route any input triggers to any output trigger, should ensure that said trigger router module is adapted to ensure that functional modules other than the selected functional module, have no uncontrolled access thereto via the third interconnect fabric.
Clock and Reset Management
As said a FPCU may have different available communication mechanisms, which can be combined. Another FPCU (internal) communication mechanism is the clock and reset mechanism. As said before each communication mechanism requires adaptation to ensure that the expanding security functions to other modules does not result in safety- and timing issues.
Fortunately the clock&reset management for FHSM is pretty similar to the triggers management.
So, the module(s) that is(are) responsible for generating clock and reset must be under exclusive control of the HSM module (like trigger router in previous section).
Therefore, the configuration interfaces of the clock&reset manager(s)shall be managed likewise described further. And, if the main CPU needs some clock&reset operation, tt would post a request towards the HSM module that shall check for security validity of the request and eventually execute the requested configuration.
As before an (electric) arrangement is hence provided, wherein said first interconnect fabric connecting the functional modules and providing communication between those functional modules, comprises a (further) third interconnect fabric, related to clock and reset, said third interconnect fabric comprising a clock&reset management module, adapted to ensure that functional modules other than the selected functional module, have no uncontrolled access thereto via the third interconnect fabric.
Slave Interfaces
In a typical SOC architecture like the one used in FPCU, all functional modules are connected to an arbitrary complex interconnect fabric that allows bidirectional data transmission between transaction initiators and targets.
In the most general case, all the initiators have the possibility to access any of the targets thanks to memory mapping of target resources. However, for software execution robustness and functional safety reasons, a preferred architecture in accordance with the invention features a multi-layer MPU (Memory Protection Unit) structure that allows to fine-grain filter the interconnect memory map access right based on transaction characteristic :
So, a typical interconnect structure in FPCU as shown in
Now, let's imagine that, at runtime, the HSM module needs to use some computing resource within AxEC, as this is the concept introduced by the invention, as illustrated in
In the example above, the security requirement is that FLU-#1 and Periph-#2 cannot be accessed through interconnect by any initiator but the HSM sub-system.
So, this means that the all the MPUs being on the interconnect socket of those modules must be configured by the HSM module.
So this means that the access to the configuration interface of those MPUs must be protected the same way as the modules interfaces.
So, this means that the MPU controlling the access to the secure configuration interconnect must also be controlled by the HSM.
Consequently, in this architecture, all the MPUs of the SOC must be configured only by the HSM sub-system, expanding the virtual boundary as illustrated in
If the main CPU needs some MPU configuration for non-secure reasons, then it would address a service request to the HSM module. And then this one will configure the MPU accordingly after checking of the security validity of the request.
In essence for the above architecture the previously mentioned (communication) protection means comprises: one or more protection units provided (between said modules and part of said first interconnect fabric); whereby the configuring of said protection units is (directly or indirectly) controlled by said selected transaction initiation functional module.
Use of Flexible Logic Unit in the Flexible Hardware Secure Mechanism
So far, the communication mechanism in a SOC and the required adaptations for the flexible hardware approach (FSHM) in accordance with the invention are discussed. Preferably the FHSM concept takes benefit of the hardware computing resource of the AxEC for security purpose.
The required FLU characteristics to enable this concept are now addressed.
First the basic cases wherein no segregation nor task switching capability is foreseen or used in the FLU is addressed.
In the case where an FPCU component is equipped with a single FLU matrix that does not provide tasks witching capabilities, then we can imagine two cases :
In conclusion, while technically feasible in case of full dedication, an FPCU featuring a single mono-task FLU matrix is not a good candidate for implementing the FHSM concept.
There exist concepts wherein the FPCU component contains at least 2 FLU matrices that can optionally be used jointly as a big single one. In this case the FHSM concept is highly relevant:
There exist also concepts (combinable with the above one) wherein the FPCU component contains at least one FLU matrix that is able to execute task switching.
In this case the FHSM concept is also relevant, but a little bit more complex to use:
The difficulty here is to handle properly the FHSM boundaries as described because the matrix must switch between secure boundaries and non-secure boundaries. This makes the switching sequence more complex than switching between two applicative tasks. The mechanism to do this is shown in
In essence the above described electric arrangements, wherein one or more of said functional modules being a hardware programmable unit, being a programmable logic matrix, is adapted for sequentially execution of at least two tasks and/or preferably comprise a plurality of flexible logic unit arrangements arranged side-by-side and adapted for being (run-time) pair-wise either physically connected or isolated, and describes the relation switching mechanisms must be adapted for handle properly the FHSM requirements.
FHSM Use Cases
Hardware Accelator
Using FHSM concept, it is possible to dedicate to the secure sub-system some eFPGA resource and mathematical accelerators so that new cryptographic algorithm can be implemented.
The benefits of such an approach compared to a simple software implementation of the algorithm are the following:
Safe Security
The first FLU content is not able to access any information from second one (FHSM boundary explained above)
However, there is no security problem for the second FLU section to have access to any information within the first FLU part. So, the secure FLU content can have real-time information of the activity of the running application.
This capability allows having secure activity and application activity strictly synchronized.
It is also possible to implement in a FLU matrix a cryptography algorithm to duplicate a reference algorithm implemented either in the hard part of FHSM or in software. This results in a lockstep implementation of a security algorithms which allows to check the correctness of the execution of the duplicated algorithm.
Several implementations are possible here:
Secure Attacks Detection (Digital Sensor)
An eFPGA matrix like FLU can be configured in such a way that it can detect invasive and semi-invasive attacks based on physical effects on internal propagation delays.
Counter Measures
FLU matrix are well intended to implement new cryptography algorithms, but in the same way some hardware countermeasures can also be implemented in FLU matrix of FHSM in order to increase the security level of the component addressing new attack technics.
As an example some random noise could be generated by the FLU to shuffle the power profile of the component and thus increase resistance of the component to Side Channel Attacks.
Number | Date | Country | Kind |
---|---|---|---|
19205977.2 | Oct 2019 | EP | regional |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2020/080325 | 10/28/2020 | WO |