WO2020162316A1 - System and method for heterogeneous asymmetric systems which manage mixed critical functionality - Google Patents

System and method for heterogeneous asymmetric systems which manage mixed critical functionality Download PDF

Info

Publication number
WO2020162316A1
WO2020162316A1 PCT/JP2020/003411 JP2020003411W WO2020162316A1 WO 2020162316 A1 WO2020162316 A1 WO 2020162316A1 JP 2020003411 W JP2020003411 W JP 2020003411W WO 2020162316 A1 WO2020162316 A1 WO 2020162316A1
Authority
WO
WIPO (PCT)
Prior art keywords
processors
processor
safety
ecu system
verification
Prior art date
Application number
PCT/JP2020/003411
Other languages
French (fr)
Japanese (ja)
Inventor
キラン パンチャンガム
祐 石郷岡
一 芹沢
Original Assignee
日立オートモティブシステムズ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日立オートモティブシステムズ株式会社 filed Critical 日立オートモティブシステムズ株式会社
Priority to JP2020571136A priority Critical patent/JP7096376B2/en
Publication of WO2020162316A1 publication Critical patent/WO2020162316A1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/04Monitoring the functioning of the control system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory

Definitions

  • the present invention relates generally to embedded systems, and more specifically, but not exclusively, to systems and methods for managing mixed critical functionality for heterogeneous asymmetric systems.
  • DMA Direct Memory Access
  • the present disclosure may relate to an embedded electronic control unit (ECU) system for managing mixed critical functionality for heterogeneous asymmetric systems.
  • the embedded ECU system may include a plurality of processors and a memory communicatively coupled to the processor, wherein the memory, when executed, causes the embedded ECU system to include the plurality of processors in a first processor set and a second set.
  • a processor-executable instruction that may cause the security setting of the first processor set to be extracted.
  • Security settings are generated during the split. Further, the security settings of the first set of processors are verified based on the trusted security settings. Then, the first set of processors access system resources based on the results of the verification.
  • the present disclosure may relate to a method for managing mixed critical functionality for heterogeneous asymmetric systems.
  • the method includes dividing the plurality of processors into a first set of processors and a second set of processors and extracting a safety setting for the first set of processors.
  • the security settings are generated during the split and the security settings for the first set of processors are verified based on the trusted security settings. Then, the first set of processors access system resources based on the results of the verification.
  • FIG. 6 illustrates an exemplary block diagram of an embedded electronic control unit system according to some embodiments of the present disclosure.
  • FIG. 6 illustrates an exemplary block diagram of an embedded electronic control unit system according to some embodiments of the present disclosure.
  • 6 illustrates an internal architecture of an embedded ECU system configured to manage mixed critical functionality for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
  • 6 illustrates an exemplary representation of mixed critical functionality management for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
  • 6 illustrates an exemplary representation of mixed critical functionality management for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
  • 6 illustrates an exemplary representation of mixed critical functionality management for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
  • 6 illustrates an exemplary representation of mixed critical functionality management for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
  • FIG. 6 illustrates an exemplary representation of mixed critical functionality management for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
  • 6 illustrates an exemplary representation of performing security settings, according to some embodiments of the present disclosure.
  • 6 illustrates an exemplary representation of performing security settings, according to some embodiments of the present disclosure.
  • 6 illustrates an exemplary representation of performing security settings, according to some embodiments of the present disclosure.
  • 6 illustrates a flowchart illustrating a method of managing mixed critical functionality for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
  • FIG. 6 shows a block diagram of an exemplary computer system 600 for implementing embodiments consistent with this disclosure.
  • any block diagrams in the present specification represent conceptual diagrams of exemplary systems embodying the principles of the present invention.
  • any flowchart, flow diagram, state diagram, pseudo code, etc. may be substantially represented by a computer-readable medium, whether or not explicitly indicated by such a computer or processor. It will be appreciated that it represents various processes that may be performed regardless of.
  • Embodiments of the present disclosure relate to embedded electronic control unit (ECU) systems for managing mixed and critical functions for heterogeneous asymmetric systems.
  • a heterogeneous asymmetric system may refer to a system with two or more processors that differ in architecture or microarchitecture.
  • the embedded ECU system controls one or more electrical systems or subsystems.
  • an embedded ECU system comprises multiple processors, each processor executing an instance of a safety module.
  • the plurality of processors is divided into a first set of processors and a second set of processors.
  • each processor of the first set of processors is a low reliability processor and each processor of the second set of processors is a high reliability processor.
  • the embedded ECU system extracts the safety setpoint for the first set of processors.
  • the extracted security settings for the first set of processors are hashed and sent to the second set of processors for verification against trusted security settings.
  • the embedded ECU system thereby provides the first set of processors with access to system resources based on the verification.
  • the present disclosure enhances reliability by suppressing interference with the safe operation of trusted components of the system due to the effects of non-compliant components.
  • FIG. 1a and 1b show an exemplary block diagram of an embedded electronic control unit system, according to some embodiments of the present disclosure.
  • the environment includes an embedded electronic control unit (ECU) system 101.
  • the embedded ECU system 101 stores input/output (I/O) interfaces 103, a plurality of processors 107 (“CPU” or “processor”, referred to as processor 107), and instructions executable by the processor 107.
  • Memory 105 The I/O interface 103 is coupled to the processor 107. Input signals and/or output signals are communicated via this coupling.
  • FIG. 1a is an exemplary embodiment and the embedded ECU system 101 may include any other unit not explicitly mentioned in this disclosure.
  • the embedded ECU system 101 may be used to manage mixed critical functionality for heterogeneous asymmetric systems.
  • the embedded ECU system 101 runs the instance of the safety module at the highest privilege level.
  • the privilege level may be a level of authority for access and execution within the embedded ECU system 101.
  • the embedded ECU system 101 partitions the processor 107 as shown in FIG. 1b.
  • Processor 107 may be divided into a first set of processors 107 1 and a second set of processors 107 2 .
  • a first set of processor 1071 may be a low-reliability processors
  • a set 107 of the second processor may be a reliable processor.
  • the low-reliability processor is a safety non-compliant processor and the high-reliability processor is a safety conforming processor.
  • a safety-compliant processor may refer to a processor that may be rated higher than a non-safety-compliant processor based on standard safety integrity levels.
  • the first set of processors 107 1 comprises a processor 107 11 , a processor 107 12 ,..., And a processor 107 1n (collectively the first set of processors 107 1 ).
  • the second set of processors 107 2 includes a processor 107 21 , a processor 107 22 ,... And a processor 107 2n (collectively referred to as a second set of processors 107 2 ).
  • Each of the first set of processors 107 1 includes a respective security module 115 1 .
  • each of the second set of processors 107 2 includes a respective security module 115 2 .
  • embedded ECU system 101 may extract a safety setpoint from safety module 115 1 of first processor set 107 1 .
  • the security settings are generated during the partitioning of processor 107.
  • the first set of processors 107 1 receives security settings from the second set of processors 107 2 based on the partitioning and the security of each memory management unit (MMU). Set the sex setting value.
  • the extracted security setting value of the first processor set 107 1 is hashed and transmitted to the second processor set 107 2 by an inter-processor communication (IPC) technique.
  • IPC inter-processor communication
  • the security settings of the first set of processors 107 1 are verified based on the trusted security settings of the second set of processors 107 2 .
  • the security settings include ranges that allow access to the first set of processors 1071 and the trusted security settings include ranges that allow access categorized by multiple levels. Including.
  • the range may be configurable based on the type of application. For example, the range may be “0x000203 to 0x020304”.
  • the verification of the safety settings of the first set of processors 107 1 is performed by an external verification module (not explicitly shown in FIG.
  • the safety settings for the first set of processors 107 1 may be performed by a verification module (not explicitly shown) that is external to the embedded ECU system 101.
  • the embedded ECU system 101 may verify the safety settings for the first processor set 1071.
  • the security settings of the first processor set 107 1 are verified by comparing the security settings to the trusted security settings of the second processor set 107 2 .
  • the embedded ECU system 101 may then provide access to the system resources 113 to the first set of processors 107 1 based on the results of the verification.
  • the access may be associated with, for example, a requested memory location in memory 105, a writable and non-rewritable status on the memory location, and the like.
  • the embedded ECU system 101 is associated with an access unit (not explicitly shown in the figure) for providing access to the first set of processors 107 1 based on the results of the verification. May be.
  • FIG. 2 illustrates the internal architecture of an embedded ECU system configured to manage mixed critical functionality for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
  • the embedded ECU system 101 may include data 200, and one or more modules 209 described in detail herein.
  • the data 200 may be stored in the memory 105.
  • the data 200 may include, for example, divided data 201, safety setting data 203, verification data 205, and other data 207.
  • the partition data 201 may include details regarding the partitioning of the processor 107 into a first set of processors 107 1 and a second set of processors 107 2 .
  • the details may include security settings associated with the processor 107.
  • the safety setting data 203 may include safety setting values extracted from the first processor set 107 1 .
  • the safety settings may be generated during the split.
  • the validation data 205 may include results of comparing the security settings of the first processor set 107 1 with the trusted security settings of the second processor set 107 2 .
  • the verification results may include access level details to the system resources 113 of the first set of processors 107 1 .
  • Other data 207 may store data, including temporary data and temporary files, generated by one or more modules 209 to perform various functions of embedded ECU system 101.
  • the data 200 in the memory 105 is processed by one or more modules 211 residing in the memory 105 of the embedded ECU system 101.
  • one or more modules 209 may be implemented as a dedicated unit.
  • the term module as used herein refers to an application specific integrated circuit (ASIC), electronic circuit, field programmable gate array (field-programmable gate array, FPGA), programmable system-on-chip (ProgrammableSmall). -On-Chip, PSoC), combinatorial logic, and/or other suitable components that provide the described functionality.
  • one or more modules 209 may be communicatively coupled to the processor 107 to perform one or more functions of the embedded ECU system 101.
  • One or more modules 209 are new hardware when configured with the functionality defined in this disclosure.
  • the one or more modules 209 may include, but are not limited to, the split module 211, the extraction module 213, and the transmission module 215.
  • One or more modules 209 may also include other modules 217 for performing miscellaneous functions of embedded ECU system 101.
  • the other modules 217 may include verification modules and access modules.
  • the partition module 211 may virtually partition the processor 107 into a first set of processors 107 1 and a second set of processors 107 2 .
  • the partitioning module 211 may partition the processor 107 based on the safety compliance of each processor of the processor 107. For example, each non-safety conforming processor of processor 107 is divided into a first set of processors 107 1 and each safety conforming processor of processor 107 is divided into a second set of processors 107 2 .
  • each processor of the first set of processors 107 1 is a low reliability processor and each processor of the second set of processors 107 2 is a high reliability processor.
  • the extraction module 213 may extract the safety settings for the first set of processors 107 1 . Further, the extracted security settings of the first set of processors 107 1 may be hashed and indexed.
  • the sending module 215 may send the hashed security settings of the first set of processors 107 1 to the second set of processors 107 2 by IPC technology.
  • the safety setpoints for the first set of processors 107 1 are stored in the second set of processors 107 2 by an external verification module associated with the embedded ECU system 101 or by a verification module external to the embedded ECU system 101. It is verified by comparing it with a trusted safety setting. Based on the results of the verification, the first set of processors 1071 may access system resources 113.
  • 3a-3e show example representations of managing mixed critical functionality for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
  • the exemplary representation 300 includes an embedded ECU system 101.
  • the embedded ECU system 101 includes a processor 301 that is a low reliability processor and a processor 302 that is a high reliability processor.
  • FIG. 3a is an exemplary embodiment, and the present disclosure may include more than one processor for both low and high reliability processors. ..
  • the processor 301 and the processor 302 are virtually divided as indicated by the dotted line in FIG. 3a.
  • the first partition includes a safety module 303, a partitioning module 305, an extraction module 307 that is separate from the operating system 308 of the embedded ECU system 101, as well as a non-updatable first.
  • the second application 311 in processor 301 may be updated.
  • Processor 302 is associated with application 312, which must not be in an updatable format.
  • the first processor 301 receives and sets the safety setting value in the corresponding memory management unit (MMU).
  • MMU memory management unit
  • the set security setting value of the processor 301 is extracted by the extraction module 307, hashed, and transmitted to the processor 302 by IPC technology.
  • the processor 302 includes a verification module 315 that validates the security settings of the processor 301 with the trusted security settings of the processor 302. Therefore, during any update of the second application 311, no access is granted by any DMA attack.
  • FIG. 3b illustrates an example of mixed critical function management for a heterogeneous asymmetric system having a processor 301 as an unreliable processor and a highly reliable SoftIp 317 on a field programmable gate array (FPGA). Shows a typical expression.
  • some implementations may include the FPGA as a trusted processor/SoftIp subsystem.
  • the verification of the safety setting value of the processor 301 may be executed by the safety verification engine 316 which is a dedicated SoftIp.
  • the security settings of processor 301 are verified, and access during such updates is not permitted by any DMA attack.
  • FIG. 3c illustrates a heterogeneous subsystem of three entities for managing mixed critical functionality having a processor 301 as a low reliability processor, a processor 302 as a high reliability processor, and a SoftIp 317 on the FPGA.
  • Both processor 301 and processor 302 may send their respective safety settings in SoftIp 317 on the FPGA. Verification of safety settings may be implemented by SoftIp 317 on the FPGA.
  • the FPGA may expose a secure memory region and a non-secure memory region implemented as part of the safety verification engine 316. Therefore, if it receives any updated for the second application 311 1, the safety set value of the processor 301 is verified, the access of such updating is in any DMA attacks, it will not be allowed ..
  • FIG. 3d shows a 3 for managing important mixed functions having on the FPGA a processor 301 as a low reliability processor, a processor 302 as a high reliability FPGA, and an intermediate processor with SoftIp 317.
  • 3 illustrates an exemplary representation of a heterogeneous subsystem of one entity.
  • Both processor 301 and processor 302 may send the safety settings in SoftIp on the FPGA.
  • intermediate processors with SoftIp 317 may assign different levels of safety split restrictions.
  • the FPGA may expose safe and non-safe memory areas implemented as part of the security verification engine 316.
  • FIG. 3e shows an exemplary implementation for managing mixed critical functionality with processor 301 as a low reliability processor and processor 302 as a high reliability processor with safety middleware 318.
  • security middleware 318 may be used to detect security violations between applications.
  • Security middleware 318 may be deployed to filter security violations and anomalies at the application level.
  • the security middleware 318 may be a component of the kernel.
  • 4a, 4b, and 4c show example representations of performing security settings, according to some embodiments of the present disclosure.
  • FIG. 4a and 4b show an exemplary representation of a report of an access violation to a safety setting in the embedded ECU system 101.
  • FIG. 4c shows an exemplary representation of a report of access authorization to safety settings in the embedded ECU system 101.
  • preset values for memory address, access type, safety unit ID, and safety level may be extracted based on memory or device requirements from the first set of processors 107 1 ( Referred to as the security setting of the first set of processors 107 1 .
  • the MMU settings are represented by the exemplary table 401 shown in Figure 4a.
  • the embedded ECU system 101 may compare the safety settings associated with the request with the configured MMU settings.
  • the memory address “0x80001020” corresponding to the request is within the memory address range of “0x80001000-0x8000012FF”.
  • the safety unit ID “0x30” of the safety level “2” is preset during the initialization.
  • the memory address range “0x80001000-0x800012FF” provides access to the application with safety unit ID “0x30” only by type “read”.
  • the embedded ECU system 101 may report an access request from the first processor set 107 1 as being in violation. This is because the request is for the "write" access type which is not permitted for the memory address range of "0x80001000-0x8000012FF".
  • a request by the application associated with the first set of processors 107 1 to access a memory location of access type “Read(R)” with safety unit ID “0x34” and memory address “0x80001020”. Is received.
  • the corresponding MMU settings are set.
  • the embedded ECU system 101 may compare the safety settings associated with the request with the configured MMU settings.
  • the memory address “0x80001020” corresponding to the request is within the memory address range of “0x80001000-0x8000012FF”.
  • the memory address range "0x80001000-0x800012FF” provides "read” type access to the application with safety unit ID "0x30". Therefore, by comparison, the embedded ECU system 101 may report an access request from the first processor set 107 1 as a violation. This is because the safety unit ID “0x34” is not permitted for the memory address range “0x80001000-0x8000012FF”.
  • access violation while issuing an emergency software reset to a set 107 of the first processor, is reported via the software interrupt to set 107 of the first processor, OEM You may perform the recovery operation etc. which were set.
  • the permitted safety unit ID is a function of a plurality of safety unit IDs (Safety Unit IDs, SUIs) set so as to be associated with a specific address range.
  • SUIs Safety Unit IDs
  • the security level is used to distinguish units of heterogeneous systems of multiple entities, and the SUI represents a unique ID assigned to a particular processing entity within the system.
  • the request is made by the application associated with the first processor set 107 1 with safety unit ID “0x30”, memory address “0x80001020”, and access type “Read(R)”. , For access to memory locations.
  • the corresponding MMU settings are set.
  • the embedded ECU system 101 may compare the safety settings associated with the request with the configured MMU settings. As shown in the table 401, the memory address “0x80001020” corresponding to the request is within the memory address range of “0x80001000-0x8000012FF”. In addition, the memory address range “0x80001000-0x800012FF” provides access to only the “read” type to applications with safety unit ID “0x30”. Therefore, by comparison, the embedded ECU system 101 may report an access request from the first set of processors 107 1 as approved. This is because the request is for the “R” access type that is permitted for the memory address range of “0x80001000-0x8000012FF”.
  • FIG. 5 shows a flow chart illustrating a method of managing mixed critical functionality for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
  • method 500 includes one or more blocks for managing mixed critical functionality for heterogeneous asymmetric systems.
  • Method 500 may be described in the general context of computer-executable instructions.
  • computer-executable instructions may include routines, programs, objects, components, data structures, procedures, modules, and functions that perform particular functions or implement particular abstract data types.
  • method 500 is described is not intended to be construed as limiting, and any number of the method blocks described may be combined in any order to implement the method. In addition, individual blocks may be deleted from the method without departing from the scope of the invention described herein. Furthermore, the method can be implemented in any suitable hardware, software, firmware, or combination thereof.
  • the plurality of processors 107 is divided by the division module 211 into a first set of processors 107 1 and a second set of processors 107 2 .
  • the safety settings for the first set of processors 107 1 are extracted by the extraction module 213. Security settings are generated during the split.
  • Set 107 1 safety setpoint of the first processor is verified based on the safety settings that are trusted based on the result of the verification, set 107 of the first processor, the system resources 113 to access.
  • the safety settings of the first set of processors 107 1 are transmitted by the transmission module 215 to the second set of processors 107 2 .
  • an external verification module associated with the embedded ECU system 101 may check the safety settings for the first set of processors 107 1 .
  • FIG. 6 shows a block diagram of an exemplary computer system 600 for implementing embodiments consistent with this disclosure.
  • computer system 600 may be used to implement embedded ECU system 101.
  • Computer system 600 may include a central processing unit (“CPU” or “processor”) 602.
  • Processor 602 may include at least one data processor for managing mixed critical functionality for heterogeneous asymmetric systems.
  • the processor 602 may include a specialized processing device such as an integrated system (bus) controller, a memory management control unit, a floating point unit, a graphics processing unit, a digital signal processing unit, and the like.
  • I/O interface 601 includes, but is not limited to, audio, analog, digital, monoaural, RCA, stereo, IEEE (registered trademark)-1394, serial bus, universal serial bus, USB (registered trademark). )), infrared, PS/2, BNC, coaxial, component, composite, digital visual interface (DVI), high-definition multimedia interface (high-definition multimedia interface, HDMI (registered trademark)), RF antenna , S-picture, VGA, IEEE (registered trademark) 802.
  • I/O interface 601 includes, but is not limited to, audio, analog, digital, monoaural, RCA, stereo, IEEE (registered trademark)-1394, serial bus, universal serial bus, USB (registered trademark). )), infrared, PS/2, BNC, coaxial, component, composite, digital visual interface (DVI), high-definition multimedia interface (high-definition multimedia interface, HDMI (registered trademark)), RF antenna , S-picture, VGA, IEEE (registered trademark)
  • n/b/g/n/x Bluetooth (registered trademark), cellular type (eg, code-division multiple access (code-division multiple access, CDMA), high-speed packet access (high-speed packet access, HSPA+), pan-Europe)
  • code-division multiple access code-division multiple access
  • CDMA code-division multiple access
  • HSPA+ high-speed packet access
  • pan-Europe A communication protocol/communication method such as a digital mobile communication system (global system for mobile communications, GSM (trademark)), long-term evolution (LTE (trademark), WiMax (trademark), etc.) or the like may be adopted. ..
  • I/O interface 601 computer system 600 may communicate with one or more I/O devices.
  • the input device is an antenna, keyboard, mouse, joystick, (infrared) remote controller, camera, card reader, fax machine, dongle, biometric reader, microphone, touch screen, touch pad, trackball, stylus, scanner, storage device. , Transceivers, video devices/video sources, etc.
  • the output device is a printer, a FAX machine, a video display (for example, a cathode ray tube (CRT), a liquid crystal display (liquid crystal display, LCD), a light-emitting diode (light-emitting diode, LED (trademark)), plasma, plasma. It may be a display panel (Plasma display panel, PDP), an organic light emitting diode display (Organic light-emittering diode display, OLED, etc.), an audio speaker, or the like.
  • computer system 600 comprises embedded ECU system 101.
  • Processor 602 may be arranged to communicate with communication network 609 via network interface 603.
  • the network interface 603 may communicate with the communication network 609.
  • the network interface 603 is a direct connection, Ethernet (for example, twisted pair 10/100/1000 Base T), transmission control protocol/Internet protocol (transmission control protocol/internet protocol, TCP/IP), token ring, IEEE (registered trademark) 802.
  • a connection protocol including, but not limited to, .11a/b/g/n/x may be adopted.
  • the communication network 609 is not limited to a direct interconnection, a local area network (local area network, LAN), a wide area network (wide area network, WAN), a wireless network (using a wireless application protocol), the Internet, etc. May be included in the
  • the network interface 603 is a direct connection, Ethernet (for example, twisted pair 10/100/1000BaseT), transmission control protocol/Internet protocol (TCP/IP), token ring, IEEE (registered trademark) 802.11a/b/g/n. Connection protocols may be employed including, but not limited to, /x.
  • the communication network 609 includes direct interconnection, e-commerce network, peer-to-peer (P2P) network, local area network (LAN), wide area network (WAN), wireless network (for example, using a wireless application protocol). , Internet, Wi-Fi, etc., but are not limited to these.
  • the first network and the second network may be dedicated networks or shared networks, and for communicating with each other, for example, a hypertext transfer protocol (Hypertext Transfer Protocol, HTTP), a transmission control protocol/Internet protocol ( Represents association of various types of networks using various protocols such as TCP/IP) and wireless application protocols (Wireless Application Protocol, WAP).
  • the first network and the second network may include various network devices including routers, bridges, servers, computing devices, storage devices, and the like.
  • the processor 602 may be arranged to communicate with a memory 605 (eg, RAM, ROM, etc., not shown in FIG. 6) via a storage interface 604.
  • the storage interface 604 is a serial advanced technology attachment (serial advanced technology attachment, SATA (registered trademark)), integrated drive electronics (Integrated Drive Electronics, IDE), IEEE (registered trademark)-1394, universal serial bus (USB). (Trademark), fiber channel, small computer system interface (Small Computer Systems Interface, SCSI) and other connection protocols are adopted to connect to the memory 605, including but not limited to memory drives, removable disk drives, etc. You may.
  • the memory drive may further include a drum, a magnetic disk drive, a magneto-optical drive, an optical drive, a RAID (Redundant Array of Independent Discs, RAID), a solid state memory device, a solid state drive, and the like.
  • a drum a magnetic disk drive, a magneto-optical drive, an optical drive, a RAID (Redundant Array of Independent Discs, RAID), a solid state memory device, a solid state drive, and the like.
  • the memory 605 may store a set of programs or database components including, without limitation, a user interface 606, an operating system 607, and the like.
  • computer system 600 may store user/application data 606, such as data, variables, records, etc., as described in this disclosure.
  • databases may be implemented as fault-tolerant, scalable, secure relational databases, such as Oracle or Sybase.
  • the operating system 607 can facilitate resource management and operation of the computer system 600.
  • Examples of operating systems include APPLE MACINTOSH (registered trademark) OS X, UNIX (registered trademark), UNIX-like system distributions (for example, BERKELEY SOFTWARE DISTRIBUTION (BSD), FREEBSD (trademark), NETBSD (trademark)).
  • OPENBSD (trademark), LINUX DISTRIBUTIONS (trademark) (for example, RED HAT (trademark), UBUNTU (trademark), KUBUNUTU (trademark), etc.), IBM (trademark) OS/2, MICROSOFT (trademark) WINDOWS (trademark) (XP (trademark), VISTA (trademark)/7/8, 10, etc.), APPLE (trademark) IOS (trademark), GOOGLE (trademark) ANDROID (trademark), BLACKBERRY (trademark) OS, etc. are not limited. include.
  • computer system 600 may implement the stored program components of web browser 608.
  • the web browser 608 is a hypertext browsing application, for example, MICROSOFT (registered trademark) INTERNET EXPLORER (registered trademark), GOOGLE (registered trademark) CHROME (registered trademark), MOZILLA (registered trademark) FIREFOX (registered trademark), and APPLE (registered trademark) SAFARI (registered trademark). Trademark) or the like.
  • Secure Hypertext Transfer Protocol Secure Hypertext Transfer Protocol
  • HTTPS Secure Socket Layer
  • SSL Transport Layer Security
  • Transport Layer Security Transport Layer Security
  • the web browser 608 has functions such as AJAX (trademark), DHTML (trademark), ADOBE (trademark) FLASH (trademark), JAVASCRIPT (trademark), JAVA (trademark), an application programming interface (Application Programming Interface, API) and the like. You may use it.
  • computer system 600 may implement the stored program components of a mail server.
  • the mail server may be an Internet mail server such as Microsoft Exchange or others.
  • Mail servers include ASPTM, ACTIVEXTM, ANSITM C++/C#, MICROSOFTTM,.
  • the mail server is an Internet message access protocol (Internet Message Access Protocol, IMAP), a messaging application programming interface (Messaging Application Programming Interface, MAPI), MICROSOFT (registered trademark) exchange, post office protocol (POP), and simple mail transfer protocol (POP).
  • IMAP Internet Message Access Protocol
  • MAPI messaging application programming interface
  • MAPI messaging application programming interface
  • MICROSOFT registered trademark
  • POP post office protocol
  • POP simple mail transfer protocol
  • a communication protocol such as Mail Transfer Protocol, SMTP) or the like may be used.
  • computer system 600 may implement the stored program components of a mail client.
  • the mail client is a mail browsing application such as APPLE (registered trademark) MAIL (registered trademark), MICROSOFT (registered trademark) ENTOURAGE (registered trademark), MICROSOFT (registered trademark) OUTLOOK (registered trademark), MOZILLA (registered trademark) THUNDERBIRD (registered trademark), and the like. May be
  • APPLE registered trademark
  • MAIL registered trademark
  • MICROSOFT registered trademark
  • ENTOURAGE registered trademark
  • MICROSOFT registered trademark
  • OUTLOOK registered trademark
  • MOZILLA registered trademark
  • THUNDERBIRD registered trademark
  • Computer-readable storage media refers to any type of physical memory that can store information or data readable by a processor. Accordingly, a computer-readable storage medium includes instructions for one or more processors to perform, including the instructions to cause the processor to perform steps or stages consistent with the embodiments described herein. Can be stored.
  • the term "computer-readable medium" is to be understood as including tangible material and excluding carrier waves and transitory signals, ie non-transitory. Examples include random access memory (Random Access Memory, RAM), read-only memory (Read-Only Memory, ROM), volatile memory, non-volatile memory, hard drive, CD ROM, DVD, flash drive, disk, and others. , Any known physical storage medium.
  • One embodiment of the present disclosure may be used in fields such as automobiles and industrial control, which need to meet functional safety standards as well as improving processing capacity.
  • the embodiment of the present disclosure enhances reliability by suppressing interference with safe operation of a highly reliable entity due to adverse effects caused by non-safety conforming system components.
  • Embodiments of the present disclosure reduce the cost of designing and developing available components.
  • One embodiment of the present disclosure includes safety firmware and verification techniques to enhance refinement of disparate software and hardware components.
  • Non-transitory computer-readable medium There, a processor may read and execute the code from the computer-readable medium.
  • the processor is at least one of a microprocessor and a processor capable of processing and executing queries.
  • Non-transitory computer readable media include magnetic storage media (eg, hard disk drives, floppy disks, tapes, etc.), optical storage (CD-ROM, DVD, optical disks, etc.), volatile memory devices and non-volatile memory devices.
  • non-transitory computer-readable media includes all computer-readable media except transitory media. Code implementing the described operations may also be implemented in hardware logic (eg, integrated circuit chips, programmable gate arrays (Programmable Gate Array, PGA), application specific integrated circuits (ASIC), etc.).
  • hardware logic eg, integrated circuit chips, programmable gate arrays (Programmable Gate Array, PGA), application specific integrated circuits (ASIC), etc.
  • code implementing the described operations may be implemented in a "transmission signal," which is propagated through space or over a transmission medium such as optical fiber, copper wire, or the like.
  • the transmission signal encoded with the code or logic may further include a wireless signal, satellite transmission, radio wave, infrared signal, Bluetooth, and the like.
  • the code or logic encoded transmission signal can be transmitted by a transmitting station and received by a receiving station.
  • the code or logic encoded in the transmitted signal may be decoded at the receiving and transmitting stations or the receiving and transmitting devices and stored in hardware or non-transitory computer readable media.
  • An "article of manufacture” includes non-transitory computer readable media, hardware logic, and/or transmitted signals, in which code may be implemented.
  • the device on which the code implementing the described embodiments of the operations is encoded may include computer-readable media or hardware logic.
  • the article of manufacture will include any suitable information transmission media known in the art. You will recognize that it is good.
  • FIG. 5 indicates a specific event that occurs in a specific order.
  • the particular operations may be performed, modified, or deleted in a different order.
  • steps may be added to the above logic and still be compatible with the described embodiments.
  • the acts described herein may occur sequentially, or particular acts may be processed in parallel. Still further, the operations may be performed by a single processing unit or a distributed processing unit.
  • Module for division 307... Extraction module, 309... First application, 311... Second application, 312... Application, 313... Safety module, 315... Verification module, 316... Safety verification engine, 317... SoftIp, 318 ... safety middleware, 600... computer system, 601... I/O interface, 602... processor, 603... network interface, 604... storage interface, 605... memory, 606... user interface, 607... operating system, 608... web browser

Abstract

The present disclosure discloses a method and embedded electronic control unit (ECU) system for heterogeneous asymmetric systems, which manage mixed critical functionality. The embedded ECU system comprises: a split module which splits a plurality of processors into a first set of processors and a second set of processors; and an extraction module which extracts a safety setting value for the first set of processors. The safety setting value is generated during the split. The safety setting value of the first set of processors is verified on the basis of a trusted safety setting value, and the first set of processors access system resources on the basis of the result of the verification.

Description

異種非対称システムのための混在する重要な機能を管理するためのシステムおよび方法System and method for managing mixed critical functionality for heterogeneous asymmetric systems
 本発明は、一般に、組み込みシステムに関し、より具体的には、限定されるものではないが、異種非対称システムのための、混在する重要な機能を管理するためのシステムおよび方法に関する。 The present invention relates generally to embedded systems, and more specifically, but not exclusively, to systems and methods for managing mixed critical functionality for heterogeneous asymmetric systems.
 近年、自動車システムにおける電子部品の使用が驚異的に増加しており、その結果、様々な機能の純機械的な実装が置き換えられている。一般に、深く組み込まれた電子制御ユニット(Electronic Control Unit、ECU)は、複雑な演算をサポートできず、複雑な演算を実行するためには、新たなECUが必要とされる場合がある。しかし、複雑な演算のための新たなECUを導入すれば、整備および製造のコストが増加する。今日、様々なECU機能を、単一のECUハードウェアに統合することができる。しかし、このような合併した単一のECUを組み合わせて実行している間に、重要度の異なるいくつかの機能が相互に干渉し、致命的なシステム障害とメモリ破壊につながる場合がある。したがって、機能安全の問題は、組み込みシステムの設計および開発においてより重要になりつつある。 In recent years, the use of electronic components in automotive systems has increased tremendously, resulting in the replacement of purely mechanical implementations of various functions. In general, a deeply embedded electronic control unit (ECU) cannot support a complicated operation, and a new ECU may be required to execute the complicated operation. However, the introduction of new ECUs for complex calculations increases maintenance and manufacturing costs. Today, various ECU functions can be integrated into a single ECU hardware. However, while the combined single ECUs are being executed in combination, some functions of different importance may interfere with each other, leading to a fatal system failure and memory corruption. Therefore, functional safety issues are becoming more important in the design and development of embedded systems.
 既存の組み込みシステムは、実行特権を制御するための方法を提供し、したがって、同一ハードウェア上で重要度が混在する機能の分離を提供する。特に、特権は、タスクが実行されているプロセッサに局所化されている。一般に、オペレーティングシステムは、任意の機能の特権を割り当てて管理し得る。しかし、オペレーティングシステムは、ユーザーによる変更に対して脆弱であり、それゆえ、ついには悪意のあるプログラムを実行して、システム間の妨害を引き起こす場合がある。加えて、局所化された特権は、異種ハードウェア内の他のプロセッサからは認識できず、安全性違反につながる。さらに、ローカルに格納された重要なデータは、プロセッサを迂回し、ダイレクトメモリアクセス(Direct Memory Access、DMA)を介してアクセスされ得る。 Existing embedded systems provide a way to control execution privileges, and thus provide isolation of mixed importance functions on the same hardware. In particular, privileges are local to the processor in which the task is executing. In general, the operating system can assign and manage privileges for any function. However, the operating system is vulnerable to modification by the user and thus may eventually execute a malicious program, causing an interruption between the systems. In addition, localized privileges are not visible to other processors in dissimilar hardware, leading to a security violation. In addition, locally stored important data may be bypassed by the processor and accessed via direct memory access (Direct Memory Access, DMA).
 本開示のこの背景技術の節において開示される情報は、本発明の一般的な背景への理解を向上するためのものに過ぎず、この情報が、当業者に既に知られている先行技術を形成するということの、自認または何らかの形の示唆と考えるべきではない。 The information disclosed in this Background section of the present disclosure is only for improving the understanding of the general background of the present invention, and the information is not limited to the prior art already known to those skilled in the art. It should not be considered as an admission or any form of suggestion of forming.
 一実施形態では、本開示は、異種非対称システムのための、混在する重要な機能を管理するための組み込み電子制御ユニット(ECU)システムに関する場合がある。組み込みECUシステムは、複数のプロセッサと、プロセッサに通信可能に結合されたメモリとを備えてもよく、メモリは、実行時に、組み込みECUシステムに、複数のプロセッサを第1のプロセッサのセットと第2のプロセッサのセットとに分割させて、第1のプロセッサのセットの安全性設定値を抽出させ得る、プロセッサ実行可能命令を格納する。安全性設定値は、分割中に生成される。さらに、第1のプロセッサのセットの安全性設定値は、信頼されている安全性設定値に基づいて検証される。その後、第1のプロセッサのセットは、検証の結果に基づいて、システム資源にアクセスする。 In one embodiment, the present disclosure may relate to an embedded electronic control unit (ECU) system for managing mixed critical functionality for heterogeneous asymmetric systems. The embedded ECU system may include a plurality of processors and a memory communicatively coupled to the processor, wherein the memory, when executed, causes the embedded ECU system to include the plurality of processors in a first processor set and a second set. A processor-executable instruction that may cause the security setting of the first processor set to be extracted. Security settings are generated during the split. Further, the security settings of the first set of processors are verified based on the trusted security settings. Then, the first set of processors access system resources based on the results of the verification.
 一実施形態では、本開示は、異種非対称システムのための、混在する重要な機能を管理するための方法に関する場合がある。本方法は、複数のプロセッサを第1のプロセッサのセットと第2のプロセッサのセットとに分割して、第1のプロセッサのセットの安全性設定値を抽出することを含む。安全性設定値は、分割中に生成され、第1のプロセッサのセットの安全性設定値は、信頼されている安全性設定値に基づいて検証される。その後、第1のプロセッサのセットは、検証の結果に基づいて、システム資源にアクセスする。 In one embodiment, the present disclosure may relate to a method for managing mixed critical functionality for heterogeneous asymmetric systems. The method includes dividing the plurality of processors into a first set of processors and a second set of processors and extracting a safety setting for the first set of processors. The security settings are generated during the split and the security settings for the first set of processors are verified based on the trusted security settings. Then, the first set of processors access system resources based on the results of the verification.
 上記の概要は、例示的なものに過ぎず、決して限定的であることが意図されているものではない。上記の例示的な態様、実施形態、および特徴に加えて、さらなる態様、実施形態、および特徴が、図面および以下の詳細な説明を参照することにより明らかになるであろう。 The above outline is merely exemplary and is not intended to be limiting in any way. In addition to the exemplary aspects, embodiments and features described above, further aspects, embodiments and features will become apparent by reference to the drawings and the following detailed description.
 本開示に組み込まれ、かつ本開示の一部を構成する添付の図面は、例示的な実施形態を示し、図面の簡単な説明とともに、開示される原理を説明するのに役立つ。図中、参照番号の左端の数字は、その参照番号が最初に現れる図を特定する。類似の機能および構成要素を参照するために、全ての図を通して、同一の番号が使用されている。ここで、本発明の実施形態と一致する、システムおよび/または方法のいくつかの実施形態を、単なる例として、添付の図を参照して説明する。
本開示のいくつかの実施形態による、組み込み電子制御ユニットシステムの例示的なブロック図を示す。 本開示のいくつかの実施形態による、組み込み電子制御ユニットシステムの例示的なブロック図を示す。 本開示のいくつかの実施形態による、異種非対称システムのための、混在する重要な機能を管理するために構成された組み込みECUシステムの内部アーキテクチャを示す。 本開示のいくつかの実施形態による、異種非対称システムのための、混在する重要な機能の管理の例示的な表現を示す。 本開示のいくつかの実施形態による、異種非対称システムのための、混在する重要な機能の管理の例示的な表現を示す。 本開示のいくつかの実施形態による、異種非対称システムのための、混在する重要な機能の管理の例示的な表現を示す。 本開示のいくつかの実施形態による、異種非対称システムのための、混在する重要な機能の管理の例示的な表現を示す。 本開示のいくつかの実施形態による、異種非対称システムのための、混在する重要な機能の管理の例示的な表現を示す。 本開示のいくつかの実施形態による、安全性設定の実行の例示的な表現を示す。 本開示のいくつかの実施形態による、安全性設定の実行の例示的な表現を示す。 本開示のいくつかの実施形態による、安全性設定の実行の例示的な表現を示す。 本開示のいくつかの実施形態による、異種非対称システムのための、混在する重要な機能を管理する方法を示す、フローチャートを示す。 本開示と一致する実施形態を実装するための、例示的なコンピュータシステム600のブロック図を示す。
The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate example embodiments and, together with a brief description of the drawings, serve to explain the disclosed principles. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the figures to reference like features and components. Some embodiments of systems and/or methods consistent with embodiments of the present invention will now be described, by way of example only, with reference to the accompanying figures.
FIG. 6 illustrates an exemplary block diagram of an embedded electronic control unit system according to some embodiments of the present disclosure. FIG. 6 illustrates an exemplary block diagram of an embedded electronic control unit system according to some embodiments of the present disclosure. 6 illustrates an internal architecture of an embedded ECU system configured to manage mixed critical functionality for heterogeneous asymmetric systems, according to some embodiments of the present disclosure. 6 illustrates an exemplary representation of mixed critical functionality management for heterogeneous asymmetric systems, according to some embodiments of the present disclosure. 6 illustrates an exemplary representation of mixed critical functionality management for heterogeneous asymmetric systems, according to some embodiments of the present disclosure. 6 illustrates an exemplary representation of mixed critical functionality management for heterogeneous asymmetric systems, according to some embodiments of the present disclosure. 6 illustrates an exemplary representation of mixed critical functionality management for heterogeneous asymmetric systems, according to some embodiments of the present disclosure. 6 illustrates an exemplary representation of mixed critical functionality management for heterogeneous asymmetric systems, according to some embodiments of the present disclosure. 6 illustrates an exemplary representation of performing security settings, according to some embodiments of the present disclosure. 6 illustrates an exemplary representation of performing security settings, according to some embodiments of the present disclosure. 6 illustrates an exemplary representation of performing security settings, according to some embodiments of the present disclosure. 6 illustrates a flowchart illustrating a method of managing mixed critical functionality for heterogeneous asymmetric systems, according to some embodiments of the present disclosure. FIG. 6 shows a block diagram of an exemplary computer system 600 for implementing embodiments consistent with this disclosure.
 本明細書のいずれのブロック図も、本発明の原理を具現する例示的なシステムの概念図を表すことを、当業者は理解すべきである。同様に、あらゆるフローチャート、フロー図、状態遷移図、擬似コードなどは、コンピュータ読み取り可能媒体で実質的に表され得、コンピュータまたはプロセッサによって、そのようなコンピュータまたはプロセッサが明示的に示されているかどうかにかかわらず実行され得る、様々な処理を表すことが理解されよう。 Those skilled in the art should understand that any block diagrams in the present specification represent conceptual diagrams of exemplary systems embodying the principles of the present invention. Similarly, any flowchart, flow diagram, state diagram, pseudo code, etc., may be substantially represented by a computer-readable medium, whether or not explicitly indicated by such a computer or processor. It will be appreciated that it represents various processes that may be performed regardless of.
 本文書では、「例示的」という言葉は、「例、具体例、または実例として役立つ」ことを意味するものとして本明細書で使用される。本明細書で「例示的」であるとして説明される、本発明のあらゆる実施形態または実装は、必ずしも他の実施形態よりも好適または有利であると解釈されるべきではない。 In this document, the word "exemplary" is used herein to mean "serving as an example, instance, or illustration." Any embodiment or implementation of the invention described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments.
 本開示には、様々な変更および代替の形態の余地があるが、その特定の実施形態は、例として図面に示されており、以下で詳細に説明されるであろう。しかし、本開示を、開示される特定の形態に限定することは意図されておらず、反対に、本開示は、本開示の範囲内にある変更、等価、および代替のすべてに及ぶものであることが理解されるべきである。 While the disclosure is open to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will be described in detail below. However, this disclosure is not intended to be limited to the particular forms disclosed, and conversely, this disclosure extends to all modifications, equivalents, and alternatives falling within the scope of this disclosure. It should be understood.
 用語「含む(備える)(comprises)」、「含んでいる(備えている)(comprising)」、またはその他のそのあらゆる変形は、構成要素またはステップの列挙を含む構成、デバイスまたは方法が、それらの構成要素またはステップのみを含むのではなく、明示的に列挙されていないか、またはそのような構成もしくはデバイス、もしくは方法に固有の、他の構成要素もしくはステップを含み得るように、非排他的な包含に及ぶことが意図されている。言い換えると、「~を含む(備える)(comprises... a)」によって進行する、システムまたは装置内の1つまたは複数の要素は、システムまたは方法内の、他の要素または追加の要素の存在を、さらなる制約なしに除外するものではない。 The terms “comprises”, “comprising”, or any other variation thereof refer to a configuration, device or method including a recitation of components or steps It is not exclusive to the components or steps only, as it is not explicitly recited or may include other components or steps specific to such configurations or devices or methods. It is intended to extend to inclusion. In other words, the presence of one or more elements in a system or apparatus that are advanced by “comprises... a” by other elements or additional elements in the system or method. Is not excluded without further restrictions.
 本開示の実施形態の以下の詳細な説明では、本明細書の一部を形成する、添付の図面を参照する。特定の実施形態がその添付の図面内で例示として示され、その特定の実施形態の中で、本開示が実施され得る。これらの実施形態は、当業者が本開示を実施できるように十分詳細に説明されており、他の実施形態が利用されてもよく、かつ本開示の範囲から逸脱することなく変更がなされてもよいことが理解されるべきである。それ故、以下の説明は、限定的な意味で考えるべきではない。 The following detailed description of embodiments of the present disclosure refers to the accompanying drawings, which form a part of this specification. Specific embodiments are shown by way of illustration in the accompanying drawings, in which the disclosure can be practiced. These embodiments have been described in sufficient detail to enable those skilled in the art to practice the present disclosure, other embodiments may be utilized, and changes may be made without departing from the scope of the present disclosure. It should be understood that it is good. Therefore, the following description should not be considered in a limiting sense.
 本開示の実施形態は、異種非対称システムのための、混在する重要な機能を管理するための組み込み電子制御ユニット(ECU)システムに関する。一実施形態では、異種非対称システムは、アーキテクチャまたはマイクロアーキテクチャが相異なる、2つまたはそれより多くのプロセッサを備えるシステムを指す場合がある。一実施形態では、組み込みECUシステムは、1つまたは複数の電気システムまたはサブシステムを制御する。本開示では、組み込みECUシステムは、複数のプロセッサを備え、各プロセッサは、安全性モジュールのインスタンスを実行する。複数のプロセッサは、第1のプロセッサのセットと第2のプロセッサのセットとに分割される。一実施形態では、第1のプロセッサのセットの各プロセッサは、低信頼性プロセッサであり、第2のプロセッサのセットの各プロセッサは、高信頼性プロセッサである。システム資源にアクセスするためのあらゆる要求中に、組み込みECUシステムは、第1のプロセッサのセットの安全性設定値を抽出する。抽出された第1のプロセッサのセットの安全性設定値は、ハッシュ化されて第2のプロセッサのセットに送信され、信頼されている安全性設定値に対して検証される。これにより、組み込みECUシステムは、検証に基づいて、第1のプロセッサのセットにシステム資源へのアクセスを提供する。本開示は、安全性非適合構成要素がもたらす影響による、システムの高信頼性構成要素の安全動作の妨害を抑えることにより、信頼性を高める。 Embodiments of the present disclosure relate to embedded electronic control unit (ECU) systems for managing mixed and critical functions for heterogeneous asymmetric systems. In one embodiment, a heterogeneous asymmetric system may refer to a system with two or more processors that differ in architecture or microarchitecture. In one embodiment, the embedded ECU system controls one or more electrical systems or subsystems. In the present disclosure, an embedded ECU system comprises multiple processors, each processor executing an instance of a safety module. The plurality of processors is divided into a first set of processors and a second set of processors. In one embodiment, each processor of the first set of processors is a low reliability processor and each processor of the second set of processors is a high reliability processor. During every request to access system resources, the embedded ECU system extracts the safety setpoint for the first set of processors. The extracted security settings for the first set of processors are hashed and sent to the second set of processors for verification against trusted security settings. The embedded ECU system thereby provides the first set of processors with access to system resources based on the verification. The present disclosure enhances reliability by suppressing interference with the safe operation of trusted components of the system due to the effects of non-compliant components.
 図1aおよび図1bは、本開示のいくつかの実施形態による、組み込み電子制御ユニットシステムの例示的なブロック図を示す。 1a and 1b show an exemplary block diagram of an embedded electronic control unit system, according to some embodiments of the present disclosure.
 図1aに示されるように、環境は、組み込み電子制御ユニット(ECU)システム101を含む。組み込みECUシステム101は、入出力(Input/Output、I/O)インターフェース103、複数のプロセッサ107(「CPU」または「プロセッサ」、プロセッサ107という)、およびプロセッサ107によって実行可能な命令を格納するためのメモリ105、を含む。I/Oインターフェース103は、プロセッサ107と結合される。入力信号または/および出力信号は、この結合を介して通信される。当業者は、図1aが、例示的な実施形態であり、組み込みECUシステム101が、本開示で明示的に言及されていない任意の他のユニットを含み得ることを、理解するであろう。組み込みECUシステム101は、異種非対称システムのための、混在する重要な機能を管理するために使用されてもよい。一実施形態では、組み込みECUシステム101は、最高の特権レベルで、安全性モジュールのインスタンスを実行する。一実施形態では、特権レベルは、組み込みECUシステム101内でのアクセスおよび実行のための権限のレベルという場合がある。組み込みECUシステム101は、図1bに示されるようにプロセッサ107を分割する。プロセッサ107は、第1のプロセッサのセット107および第2のプロセッサのセット107として分割されてもよい。一実施形態では、第1のプロセッサのセット1071は、低信頼性プロセッサであってよく、第2のプロセッサのセット107は、高信頼性プロセッサであってよい。特に、低信頼性プロセッサは、安全性非適合プロセッサであり、高信頼性プロセッサは、安全性適合プロセッサである。一実施形態では、安全性適合プロセッサは、標準の安全度水準に基づいて、安全性非適合プロセッサよりも高く格付けされ得るプロセッサを指す場合がある。図1bに示すように、第1のプロセッサのセット107は、プロセッサ10711、プロセッサ10712、…………………およびプロセッサ1071n(併せて第1のプロセッサのセット107という)を含む。同様に、第2のプロセッサのセット107は、プロセッサ10721、プロセッサ10722、………………およびプロセッサ1072n(併せて第2のプロセッサのセット107という)を含む。第1のプロセッサのセット107の各々は、それぞれ安全性モジュール115を含む。同様に、第2のプロセッサのセット107の各々は、それぞれ安全性モジュール115を含む。 As shown in FIG. 1a, the environment includes an embedded electronic control unit (ECU) system 101. The embedded ECU system 101 stores input/output (I/O) interfaces 103, a plurality of processors 107 (“CPU” or “processor”, referred to as processor 107), and instructions executable by the processor 107. Memory 105. The I/O interface 103 is coupled to the processor 107. Input signals and/or output signals are communicated via this coupling. Those skilled in the art will understand that FIG. 1a is an exemplary embodiment and the embedded ECU system 101 may include any other unit not explicitly mentioned in this disclosure. The embedded ECU system 101 may be used to manage mixed critical functionality for heterogeneous asymmetric systems. In one embodiment, the embedded ECU system 101 runs the instance of the safety module at the highest privilege level. In one embodiment, the privilege level may be a level of authority for access and execution within the embedded ECU system 101. The embedded ECU system 101 partitions the processor 107 as shown in FIG. 1b. Processor 107 may be divided into a first set of processors 107 1 and a second set of processors 107 2 . In one embodiment, a first set of processor 1071 may be a low-reliability processors, a set 107 of the second processor may be a reliable processor. In particular, the low-reliability processor is a safety non-compliant processor and the high-reliability processor is a safety conforming processor. In one embodiment, a safety-compliant processor may refer to a processor that may be rated higher than a non-safety-compliant processor based on standard safety integrity levels. As shown in FIG. 1b, the first set of processors 107 1 comprises a processor 107 11 , a processor 107 12 ,..., And a processor 107 1n (collectively the first set of processors 107 1 ). Including. Similarly, the second set of processors 107 2 includes a processor 107 21 , a processor 107 22 ,... And a processor 107 2n (collectively referred to as a second set of processors 107 2 ). Each of the first set of processors 107 1 includes a respective security module 115 1 . Similarly, each of the second set of processors 107 2 includes a respective security module 115 2 .
 あらゆる瞬間において、システム資源113にアクセスするための要求を受信すると、組み込みECUシステム101は、第1のプロセッサのセット107の安全性モジュール115から、安全性設定値を抽出し得る。一実施形態では、安全性設定値は、プロセッサ107の分割中に生成される。一実施形態では、第1のプロセッサのセット107は、分割に基づいて、第2のプロセッサのセット107から安全性設定値を受信し、各メモリ管理ユニット(Memory Management Unit、MMU)の安全性設定値を設定する。さらに、抽出された第1のプロセッサのセット107の安全性設定値は、ハッシュ化されて、プロセッサ間通信(Inter Processor Communication、IPC)技術によって第2のプロセッサのセット107に送信される。当業者は、本開示の範囲が、本明細書で明示的に言及されていない、安全性設定値を送信するためのあらゆる他の技術を包含し得ることを理解するであろう。さらに、第1のプロセッサのセット107の安全性設定値は、第2のプロセッサのセット107の信頼されている安全性設定値に基づいて検証される。一実施形態では、安全性設定値は、第1のプロセッサのセット1071のアクセスを許可する範囲を含み、信頼されている安全性設定値は、複数のレベルによって分類されたアクセスを許可する範囲を含む。一実施形態では、範囲は、アプリケーションの種類に基づいて設定可能であってもよい。例えば、範囲は「0x000203~0x020304」であってもよい。一実施形態では、第1のプロセッサのセット107の安全性設定の検証は、組み込みECUシステム101に関連付けられた、外部検証モジュール(図1bにおいて明示的には示されていない)によって実行されてよい。一実施形態では、第1のプロセッサのセット107の安全性設定値は、組み込みECUシステム101の外部に存在する、検証モジュール(明示的には図示せず)によって実行されてもよい。別の実施形態では、組み込みECUシステム101は、第1のプロセッサのセット1071の安全性設定値を検証してもよい。第1のプロセッサのセット107の安全性設定値は、その安全性設定値を、第2のプロセッサのセット107の信頼されている安全性設定値と比較することにより検証される。その後、組み込みECUシステム101は、検証の結果に基づいて、システム資源113へのアクセスを、第1のプロセッサのセット107に提供し得る。アクセスは、例えば、メモリ105の要求されたメモリ位置、メモリ位置上の書き込み可能および書き換え不能のステータスなどに関連付けられてもよい。一実施形態では、組み込みECUシステム101は、検証の結果に基づいて第1のプロセッサのセット107にアクセスを提供するための、アクセスユニット(図において明示的には示されていない)に関連付けられてもよい。 At any moment, upon receiving a request to access system resources 113, embedded ECU system 101 may extract a safety setpoint from safety module 115 1 of first processor set 107 1 . In one embodiment, the security settings are generated during the partitioning of processor 107. In one embodiment, the first set of processors 107 1 receives security settings from the second set of processors 107 2 based on the partitioning and the security of each memory management unit (MMU). Set the sex setting value. Furthermore, the extracted security setting value of the first processor set 107 1 is hashed and transmitted to the second processor set 107 2 by an inter-processor communication (IPC) technique. A person of ordinary skill in the art will understand that the scope of the present disclosure may include any other technique for transmitting the safety setting, which is not explicitly mentioned herein. Further, the security settings of the first set of processors 107 1 are verified based on the trusted security settings of the second set of processors 107 2 . In one embodiment, the security settings include ranges that allow access to the first set of processors 1071 and the trusted security settings include ranges that allow access categorized by multiple levels. Including. In one embodiment, the range may be configurable based on the type of application. For example, the range may be “0x000203 to 0x020304”. In one embodiment, the verification of the safety settings of the first set of processors 107 1 is performed by an external verification module (not explicitly shown in FIG. 1b) associated with the embedded ECU system 101. Good. In one embodiment, the safety settings for the first set of processors 107 1 may be performed by a verification module (not explicitly shown) that is external to the embedded ECU system 101. In another embodiment, the embedded ECU system 101 may verify the safety settings for the first processor set 1071. The security settings of the first processor set 107 1 are verified by comparing the security settings to the trusted security settings of the second processor set 107 2 . The embedded ECU system 101 may then provide access to the system resources 113 to the first set of processors 107 1 based on the results of the verification. The access may be associated with, for example, a requested memory location in memory 105, a writable and non-rewritable status on the memory location, and the like. In one embodiment, the embedded ECU system 101 is associated with an access unit (not explicitly shown in the figure) for providing access to the first set of processors 107 1 based on the results of the verification. May be.
 図2は、本開示のいくつかの実施形態による、異種非対称システムのための、混在する重要な機能を管理するために構成された組み込みECUシステムの内部アーキテクチャを示す。 FIG. 2 illustrates the internal architecture of an embedded ECU system configured to manage mixed critical functionality for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
 図2に示されるように、組み込みECUシステム101は、データ200、および本明細書で詳細に説明される1つまたは複数のモジュール209を含んでもよい。一実施形態では、データ200は、メモリ105内に格納されてもよい。データ200は、例えば、分割データ201、安全性設定データ203、検証データ205およびその他のデータ207を含んでもよい。 As shown in FIG. 2, the embedded ECU system 101 may include data 200, and one or more modules 209 described in detail herein. In one embodiment, the data 200 may be stored in the memory 105. The data 200 may include, for example, divided data 201, safety setting data 203, verification data 205, and other data 207.
 分割データ201は、プロセッサ107の、第1のプロセッサのセット107および第2のプロセッサのセット107への分割に関する詳細を含んでもよい。その詳細には、プロセッサ107に関連付けられた安全性設定値が含まれてもよい。 The partition data 201 may include details regarding the partitioning of the processor 107 into a first set of processors 107 1 and a second set of processors 107 2 . The details may include security settings associated with the processor 107.
 安全性設定データ203は、第1のプロセッサのセット107から抽出された安全性設定値を含んでもよい。一実施形態では、安全性設定値は、分割中に生成されてもよい。 The safety setting data 203 may include safety setting values extracted from the first processor set 107 1 . In one embodiment, the safety settings may be generated during the split.
 検証データ205は、第1のプロセッサのセット107の安全性設定値を、第2のプロセッサのセット107の信頼されている安全性設定と比較した結果を含んでもよい。一実施形態では、検証の結果は、第1のプロセッサのセット107のシステム資源113へのアクセスレベルの詳細を含んでもよい。 The validation data 205 may include results of comparing the security settings of the first processor set 107 1 with the trusted security settings of the second processor set 107 2 . In one embodiment, the verification results may include access level details to the system resources 113 of the first set of processors 107 1 .
 その他のデータ207は、組み込みECUシステム101の様々な機能を実行するために1つまたは複数のモジュール209によって生成された、一時データおよび一時ファイルを含むデータを格納してもよい。 Other data 207 may store data, including temporary data and temporary files, generated by one or more modules 209 to perform various functions of embedded ECU system 101.
 一実施形態では、メモリ105内のデータ200は、組み込みECUシステム101のメモリ105内に存在する、1つまたは複数のモジュール211によって処理される。一実施形態では、1つまたは複数のモジュール209は、専用ユニットとして実装されてもよい。本明細書で使用されるモジュールという用語は、特定用途向け集積回路(application specific integrated circuit、ASIC)、電子回路、フィールドプログラマブルゲートアレイ(field-programmable gate array、FPGA)、プログラマブルシステムオンチップ(Programmable System-on-Chip、PSoC)、組み合わせ論理回路、および/または説明されている機能を提供するその他の適切な構成要素を指す。いくつかの実装形態では、1つまたは複数のモジュール209は、組み込みECUシステム101の1つまたは複数の機能を実行するために、プロセッサ107に通信可能に結合されてもよい。1つまたは複数のモジュール209は、本開示で定義される機能で構成される場合、新規のハードウェアとなる。 In one embodiment, the data 200 in the memory 105 is processed by one or more modules 211 residing in the memory 105 of the embedded ECU system 101. In one embodiment, one or more modules 209 may be implemented as a dedicated unit. The term module as used herein refers to an application specific integrated circuit (ASIC), electronic circuit, field programmable gate array (field-programmable gate array, FPGA), programmable system-on-chip (ProgrammableSmall). -On-Chip, PSoC), combinatorial logic, and/or other suitable components that provide the described functionality. In some implementations, one or more modules 209 may be communicatively coupled to the processor 107 to perform one or more functions of the embedded ECU system 101. One or more modules 209 are new hardware when configured with the functionality defined in this disclosure.
 一実装形態では、1つまたは複数のモジュール209は、分割モジュール211、抽出モジュール213、および送信モジュール215を含んでもよいが、これらに限定されない。1つまたは複数のモジュール209は、組み込みECUシステム101の種々雑多な機能を実行するための、その他のモジュール217も含んでもよい。一実施形態では、その他のモジュール217は、検証モジュールおよびアクセスモジュールを含んでもよい。 In one implementation, the one or more modules 209 may include, but are not limited to, the split module 211, the extraction module 213, and the transmission module 215. One or more modules 209 may also include other modules 217 for performing miscellaneous functions of embedded ECU system 101. In one embodiment, the other modules 217 may include verification modules and access modules.
 分割モジュール211は、プロセッサ107を、第1のプロセッサのセット107と第2のプロセッサのセット107とに仮想的に分割してもよい。一実施形態では、分割モジュール211は、プロセッサ107の各プロセッサの安全性適合に基づいて、プロセッサ107を分割してもよい。例えば、プロセッサ107の安全性非適合の各プロセッサは、第1のプロセッサのセット107に分割され、プロセッサ107の安全性適合の各プロセッサは、第2のプロセッサのセット107に分割される。一実施形態では、第1のプロセッサのセット107の各プロセッサは、低信頼性プロセッサであり、第2のプロセッサのセット107の各プロセッサは、高信頼性プロセッサである。 The partition module 211 may virtually partition the processor 107 into a first set of processors 107 1 and a second set of processors 107 2 . In one embodiment, the partitioning module 211 may partition the processor 107 based on the safety compliance of each processor of the processor 107. For example, each non-safety conforming processor of processor 107 is divided into a first set of processors 107 1 and each safety conforming processor of processor 107 is divided into a second set of processors 107 2 . In one embodiment, each processor of the first set of processors 107 1 is a low reliability processor and each processor of the second set of processors 107 2 is a high reliability processor.
 第1のプロセッサのセット107からの、システム資源113にアクセスするための何らかの要求を受信すると、抽出モジュール213は、第1のプロセッサのセット107の安全性設定値を抽出し得る。さらに、第1のプロセッサのセット107の抽出された安全性設定値は、ハッシュ化され、インデックス付けされてもよい。 Upon receiving any request from the first set of processors 107 1 to access system resources 113, the extraction module 213 may extract the safety settings for the first set of processors 107 1 . Further, the extracted security settings of the first set of processors 107 1 may be hashed and indexed.
 送信モジュール215は、IPC技術によって、第1のプロセッサのセット107のハッシュ化された安全性設定値を、第2のプロセッサのセット107に送信してもよい。 The sending module 215 may send the hashed security settings of the first set of processors 107 1 to the second set of processors 107 2 by IPC technology.
 第1のプロセッサのセット107の安全性設定値は、組み込みECUシステム101に関連付けられた外部検証モジュールか、組み込みECUシステム101の外部に存在する検証モジュールによって、第2のプロセッサのセット107の信頼されている安全性設定値と比較することにより検証される。検証の結果に基づいて、第1のプロセッサのセット1071は、システム資源113にアクセスし得る。 The safety setpoints for the first set of processors 107 1 are stored in the second set of processors 107 2 by an external verification module associated with the embedded ECU system 101 or by a verification module external to the embedded ECU system 101. It is verified by comparing it with a trusted safety setting. Based on the results of the verification, the first set of processors 1071 may access system resources 113.
 図3a~図3eは、本開示のいくつかの実施形態による、異種非対称システムのための、混在する重要な機能の管理の例示的な表現を示す。 3a-3e show example representations of managing mixed critical functionality for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
 ここで図3aを参照すると、異種非対称システムのための、混在する重要な機能の管理の例示的な表現300が示されている。図3aでは、例示的な表現300は、組み込みECUシステム101を含む。組み込みECUシステム101は、低信頼性プロセッサであるプロセッサ301、および高信頼性プロセッサであるプロセッサ302を含む。当業者は、図3aが、例示的な実施形態であり、本開示が、低信頼性プロセッサと高信頼性プロセッサとの両方について、1つより多くのプロセッサも含み得ることを理解するであろう。プロセッサ301とプロセッサ302は、図3a中の点線で表されるように仮想的に分割されている。さらに、第1のプロセッサ301という第1の分割は、組み込みECUシステム101のオペレーティングシステム308から分離されている安全性モジュール303、分割用モジュール305、抽出モジュール307、ならびに更新不可能な形式の第1のアプリケーション309および更新可能な形式の第2のアプリケーション311を含む。一実施形態では、プロセッサ301内の第2のアプリケーション311は、更新されてもよい。プロセッサ302は、更新可能な形式であってはならないアプリケーション312に関連付けられている。第1のプロセッサ301は、対応するメモリ管理ユニット(MMU)内の安全性設定値を受信して設定する。プロセッサ301の設定された安全性設定値は、抽出モジュール307によって抽出され、ハッシュ化されて、IPC技術によってプロセッサ302に送信される。プロセッサ302は、プロセッサ301の安全性設定値を、プロセッサ302の信頼されている安全性設定値で確認する、検証モジュール315を含む。したがって、第2のアプリケーション311の何らかの更新の間、如何なるDMA攻撃によっても、アクセスが許可されることはない。同様に、図3bは、フィールドプログラマブルゲートアレイ(FPGA)上に、低信頼性プロセッサとしてのプロセッサ301、および高信頼性SoftIp317を有する、異種非対称システムのための、混在する重要な機能の管理の例示的な表現を示す。一実施形態では、いくつかの実装は、高信頼性プロセッサ/SoftIpサブシステムとしてのFPGAを含み得る。プロセッサ301の安全性設定値の検証は、専用のSoftIpである安全性検証エンジン316によって実行されてもよい。したがって、第2のアプリケーションのための何らかの更新を受信する場合、プロセッサ301の安全性設定値が検証され、そのような更新中のアクセスは、如何なるDMA攻撃によっても、許可されることはない。 Referring now to FIG. 3a, an exemplary representation 300 of managing mixed critical functionality for a heterogeneous asymmetric system is shown. In FIG. 3 a, the exemplary representation 300 includes an embedded ECU system 101. The embedded ECU system 101 includes a processor 301 that is a low reliability processor and a processor 302 that is a high reliability processor. Those skilled in the art will appreciate that FIG. 3a is an exemplary embodiment, and the present disclosure may include more than one processor for both low and high reliability processors. .. The processor 301 and the processor 302 are virtually divided as indicated by the dotted line in FIG. 3a. Furthermore, the first partition, the first processor 301, includes a safety module 303, a partitioning module 305, an extraction module 307 that is separate from the operating system 308 of the embedded ECU system 101, as well as a non-updatable first. Application 309 and a second application 311 in an updatable format. In one embodiment, the second application 311 in processor 301 may be updated. Processor 302 is associated with application 312, which must not be in an updatable format. The first processor 301 receives and sets the safety setting value in the corresponding memory management unit (MMU). The set security setting value of the processor 301 is extracted by the extraction module 307, hashed, and transmitted to the processor 302 by IPC technology. The processor 302 includes a verification module 315 that validates the security settings of the processor 301 with the trusted security settings of the processor 302. Therefore, during any update of the second application 311, no access is granted by any DMA attack. Similarly, FIG. 3b illustrates an example of mixed critical function management for a heterogeneous asymmetric system having a processor 301 as an unreliable processor and a highly reliable SoftIp 317 on a field programmable gate array (FPGA). Shows a typical expression. In one embodiment, some implementations may include the FPGA as a trusted processor/SoftIp subsystem. The verification of the safety setting value of the processor 301 may be executed by the safety verification engine 316 which is a dedicated SoftIp. Thus, when receiving any updates for the second application, the security settings of processor 301 are verified, and access during such updates is not permitted by any DMA attack.
 図3cは、FPGA上に、低信頼性プロセッサとしてのプロセッサ301、高信頼性プロセッサとしてのプロセッサ302、およびSoftIp317を有する、混在する重要な機能を管理するための、3つのエンティティの異種サブシステムの例示的な表現を示す。プロセッサ301およびプロセッサ302は、両方とも、それぞれの安全性設定値をFPGA上のSoftIp317で送信してもよい。安全性設定の検証は、FPGA上のSoftIp317によって実装されてもよい。一実施形態では、FPGAは、安全性検証エンジン316の一部として実装された、安全なメモリ領域および非安全なメモリ領域を露呈してもよい。したがって、第2のアプリケーション311のための何らかの更新を受信する場合、プロセッサ301の安全性設定値が検証され、そのような更新中のアクセスは、如何なるDMA攻撃によっても、許可されることはない。 FIG. 3c illustrates a heterogeneous subsystem of three entities for managing mixed critical functionality having a processor 301 as a low reliability processor, a processor 302 as a high reliability processor, and a SoftIp 317 on the FPGA. An exemplary representation is shown. Both processor 301 and processor 302 may send their respective safety settings in SoftIp 317 on the FPGA. Verification of safety settings may be implemented by SoftIp 317 on the FPGA. In one embodiment, the FPGA may expose a secure memory region and a non-secure memory region implemented as part of the safety verification engine 316. Therefore, if it receives any updated for the second application 311 1, the safety set value of the processor 301 is verified, the access of such updating is in any DMA attacks, it will not be allowed ..
 同様に、図3dは、FPGA上に、低信頼性プロセッサとしてのプロセッサ301、高信頼性FPGAとしてのプロセッサ302、およびSoftIp317をともなう中間プロセッサを有する、混在する重要な機能を管理するための、3つのエンティティの異種サブシステムの例示的な表現を示す。プロセッサ301およびプロセッサ302は、両方とも、安全性設定値をFPGA上のSoftIpで送信してもよい。一実施形態では、SoftIp317をともなう中間プロセッサは、それぞれ異なるレベルの安全性分割制限を割り当て得る。FPGAは、安全性検証エンジン316の一部として実装された、安全なメモリ領域および非安全なメモリ領域を露呈してもよい。したがって、第2のアプリケーション311のための何らかの更新を受信する場合、プロセッサ301の安全性設定値が、安全性検証エンジン316によって検証され、そのような更新中のアクセスは、如何なるDMA攻撃によっても、許可されることはない。図3eは、安全性ミドルウェア318をともなう低信頼性プロセッサとしてのプロセッサ301、および高信頼性プロセッサとしてのプロセッサ302を有する、混在する重要な機能を管理するための、例示的な実装を示す。一実施形態では、安全性ミドルウェア318を使用して、アプリケーション間の安全性違反を検出してもよい。安全性ミドルウェア318は、安全性違反および異常をアプリケーションレベルでフィルタリングするために配置されてもよい。一実施形態では、安全性ミドルウェア318は、カーネルの構成要素であってもよい。 Similarly, FIG. 3d shows a 3 for managing important mixed functions having on the FPGA a processor 301 as a low reliability processor, a processor 302 as a high reliability FPGA, and an intermediate processor with SoftIp 317. 3 illustrates an exemplary representation of a heterogeneous subsystem of one entity. Both processor 301 and processor 302 may send the safety settings in SoftIp on the FPGA. In one embodiment, intermediate processors with SoftIp 317 may assign different levels of safety split restrictions. The FPGA may expose safe and non-safe memory areas implemented as part of the security verification engine 316. Therefore, if it receives any updated for the second application 311 1, the safety set value of the processor 301, is verified by safety validation engine 316, access of such updating is in any DMA attack , Never allowed. FIG. 3e shows an exemplary implementation for managing mixed critical functionality with processor 301 as a low reliability processor and processor 302 as a high reliability processor with safety middleware 318. In one embodiment, security middleware 318 may be used to detect security violations between applications. Security middleware 318 may be deployed to filter security violations and anomalies at the application level. In one embodiment, the security middleware 318 may be a component of the kernel.
 図4a、図4b、および図4cは、本開示のいくつかの実施形態による、安全性設定の実行の例示的な表現を示す。 4a, 4b, and 4c show example representations of performing security settings, according to some embodiments of the present disclosure.
 図4aおよび図4bは、組み込みECUシステム101における、安全性設定へのアクセス違反の報告の例示的な表現を示す。図4cは、組み込みECUシステム101における、安全性設定へのアクセス承認の報告の例示的な表現を示す。一実施形態では、第1のプロセッサのセット107からのメモリまたはデバイスの要求に基づいて、メモリアドレス、アクセス種別、安全ユニットID、および安全性レベルの、事前設定値が抽出されてもよい(第1のプロセッサのセット107の安全性設定値という)。図4aに示す最初のシナリオを検討せよ。この場合、第1のプロセッサのセット107に関連付けられたアプリケーションによる、安全ユニットID「0x30」、メモリアドレス「0x80001020」で、アクセス種別「Write(W)」の、メモリ位置にアクセスするための要求が受信される。要求を受信すると、対応するMMU設定が、設定される。MMU設定は、図4aに示す例示的な表401によって表される。組み込みECUシステム101は、要求に関連付けられた安全性設定値を、設定されたMMU設定と比較してよい。表401に示すように、要求に対応するメモリアドレス「0x80001020」は、「0x80001000-0x800012FF」のメモリアドレス範囲内にある。加えて、表402に示すように、安全性レベル「2」の安全ユニットID「0x30」が、初期化中に事前設定される。メモリアドレス範囲「0x80001000-0x800012FF」は、安全ユニットID「0x30」のアプリケーションへの、「read」種別のみのアクセスを提供する。したがって、比較すると、組み込みECUシステム101は、第1のプロセッサのセット107からのアクセス要求を、違反しているとして報告し得る。要求は、「0x80001000-0x800012FF」のメモリアドレス範囲について許可されていない、「write」アクセス種別へのものだからである。図4bに示す2番目のシナリオを検討せよ。この場合、第1のプロセッサのセット107に関連付けられたアプリケーションによる、安全ユニットID「0x34」、メモリアドレス「0x80001020」で、アクセス種別「Read(R)」の、メモリ位置にアクセスするための要求が受信される。要求を受信すると、対応するMMU設定が、設定される。組み込みECUシステム101は、要求に関連付けられた安全性設定値を、設定されたMMU設定と比較してよい。表401に示すように、要求に対応するメモリアドレス「0x80001020」は、「0x80001000-0x800012FF」のメモリアドレス範囲内にある。しかし、メモリアドレス範囲「0x80001000-0x800012FF」は、安全ユニットID「0x30」のアプリケーションへの、「read」種別のアクセスを提供する。したがって、比較すると、組み込みECUシステム101は、第1のプロセッサのセット107からのアクセス要求を、違反しているとして報告し得る。安全ユニットID「0x34」は、「0x80001000-0x800012FF」のメモリアドレス範囲について許可されていないからである。一実施形態において、アクセス違反は、第1のプロセッサのセット107に緊急のソフトウェアリセットを発行している間に、第1のプロセッサのセット107へのソフトウェア割り込みを介して報告されて、OEMの設定された回復動作などを実行してもよい。表401に示すように、違反動作は、対応する動作IDにマッピングされる。許可される安全ユニットIDは、特定のアドレス範囲に関連付けられるように設定される、複数の安全ユニットID(Safety Unit ID、SUI)の機能である。システムの初期化中、安全性レベルは、複数エンティティの異種システムのユニットを区別するために使用され、SUIは、システム内の特定の処理エンティティに割り当てられた一意のIDを表す。 4a and 4b show an exemplary representation of a report of an access violation to a safety setting in the embedded ECU system 101. FIG. 4c shows an exemplary representation of a report of access authorization to safety settings in the embedded ECU system 101. In one embodiment, preset values for memory address, access type, safety unit ID, and safety level may be extracted based on memory or device requirements from the first set of processors 107 1 ( Referred to as the security setting of the first set of processors 107 1 . Consider the first scenario shown in Figure 4a. In this case, a request by the application associated with the first set of processors 107 1 to access a memory location of access type “Write(W)” with safety unit ID “0x30” and memory address “0x80001020”. Is received. Upon receiving the request, the corresponding MMU settings are set. The MMU settings are represented by the exemplary table 401 shown in Figure 4a. The embedded ECU system 101 may compare the safety settings associated with the request with the configured MMU settings. As shown in the table 401, the memory address “0x80001020” corresponding to the request is within the memory address range of “0x80001000-0x8000012FF”. In addition, as shown in Table 402, the safety unit ID “0x30” of the safety level “2” is preset during the initialization. The memory address range “0x80001000-0x800012FF” provides access to the application with safety unit ID “0x30” only by type “read”. Therefore, by comparison, the embedded ECU system 101 may report an access request from the first processor set 107 1 as being in violation. This is because the request is for the "write" access type which is not permitted for the memory address range of "0x80001000-0x8000012FF". Consider the second scenario shown in Figure 4b. In this case, a request by the application associated with the first set of processors 107 1 to access a memory location of access type “Read(R)” with safety unit ID “0x34” and memory address “0x80001020”. Is received. Upon receiving the request, the corresponding MMU settings are set. The embedded ECU system 101 may compare the safety settings associated with the request with the configured MMU settings. As shown in the table 401, the memory address “0x80001020” corresponding to the request is within the memory address range of “0x80001000-0x8000012FF”. However, the memory address range "0x80001000-0x800012FF" provides "read" type access to the application with safety unit ID "0x30". Therefore, by comparison, the embedded ECU system 101 may report an access request from the first processor set 107 1 as a violation. This is because the safety unit ID “0x34” is not permitted for the memory address range “0x80001000-0x8000012FF”. In one embodiment, access violation, while issuing an emergency software reset to a set 107 of the first processor, is reported via the software interrupt to set 107 of the first processor, OEM You may perform the recovery operation etc. which were set. As shown in the table 401, the violation operation is mapped to the corresponding operation ID. The permitted safety unit ID is a function of a plurality of safety unit IDs (Safety Unit IDs, SUIs) set so as to be associated with a specific address range. During system initialization, the security level is used to distinguish units of heterogeneous systems of multiple entities, and the SUI represents a unique ID assigned to a particular processing entity within the system.
 同様に、図4cに示すように、要求が、第1のプロセッサのセット107に関連付けられたアプリケーションによって、安全ユニットID「0x30」、メモリアドレス「0x80001020」で、アクセス種別「Read(R)」の、メモリ位置にアクセスするためのものであることを検討せよ。要求を受信すると、対応するMMU設定が、設定される。組み込みECUシステム101は、要求に関連付けられた安全性設定値を、設定されたMMU設定と比較してよい。表401に示すように、要求に対応するメモリアドレス「0x80001020」は、「0x80001000-0x800012FF」のメモリアドレス範囲内にある。加えて、メモリアドレス範囲「0x80001000-0x800012FF」は、安全ユニットID「0x30」のアプリケーションへの、「read」種別のみのアクセスを提供する。したがって、比較すると、組み込みECUシステム101は、第1のプロセッサのセット107からのアクセス要求を、承認されるとして報告し得る。要求は、「0x80001000-0x800012FF」のメモリアドレス範囲について許可されている、「R」アクセス種別へのものだからである。 Similarly, as shown in FIG. 4c, the request is made by the application associated with the first processor set 107 1 with safety unit ID “0x30”, memory address “0x80001020”, and access type “Read(R)”. , For access to memory locations. Upon receiving the request, the corresponding MMU settings are set. The embedded ECU system 101 may compare the safety settings associated with the request with the configured MMU settings. As shown in the table 401, the memory address “0x80001020” corresponding to the request is within the memory address range of “0x80001000-0x8000012FF”. In addition, the memory address range “0x80001000-0x800012FF” provides access to only the “read” type to applications with safety unit ID “0x30”. Therefore, by comparison, the embedded ECU system 101 may report an access request from the first set of processors 107 1 as approved. This is because the request is for the “R” access type that is permitted for the memory address range of “0x80001000-0x8000012FF”.
 図5は、本開示のいくつかの実施形態による、異種非対称システムのための、混在する重要な機能を管理する方法を示す、フローチャートを示す。 FIG. 5 shows a flow chart illustrating a method of managing mixed critical functionality for heterogeneous asymmetric systems, according to some embodiments of the present disclosure.
 図5に示すように、方法500は、異種非対称システムのための、混在する重要な機能の管理に関する1つまたは複数のブロックを含む。方法500は、コンピュータ実行可能命令の一般的な文脈で説明されてもよい。一般に、コンピュータ実行可能命令は、特定の機能を実行し、または特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、構成要素、データ構造、手順、モジュール、および機能を含むことができる。 As shown in FIG. 5, method 500 includes one or more blocks for managing mixed critical functionality for heterogeneous asymmetric systems. Method 500 may be described in the general context of computer-executable instructions. Generally, computer-executable instructions may include routines, programs, objects, components, data structures, procedures, modules, and functions that perform particular functions or implement particular abstract data types.
 方法500が記載される順序は、限定として解釈されることが意図されておらず、任意の数の記載される方法ブロックを、任意の順序で組み合わせて、本方法を実装することができる。加えて、個々のブロックは、本明細書で説明される発明の範囲から逸脱することなく、本方法から削除されてもよい。さらにまた、本方法は、任意の適切なハードウェア、ソフトウェア、ファームウェア、またはそれらの組み合わせで実装されることができる。 The order in which method 500 is described is not intended to be construed as limiting, and any number of the method blocks described may be combined in any order to implement the method. In addition, individual blocks may be deleted from the method without departing from the scope of the invention described herein. Furthermore, the method can be implemented in any suitable hardware, software, firmware, or combination thereof.
 ブロック501で、複数のプロセッサ107は、分割モジュール211によって、第1のプロセッサのセット107および第2のプロセッサのセット107に分割される。 At block 501, the plurality of processors 107 is divided by the division module 211 into a first set of processors 107 1 and a second set of processors 107 2 .
 ブロック503で、第1のプロセッサのセット107の安全性設定値が、抽出モジュール213によって抽出される。安全性設定値は、分割中に生成される。第1のプロセッサのセット107の安全性設定値は、信頼されている安全性設定値に基づいて検証され、検証の結果に基づいて、第1のプロセッサのセット107は、システム資源113にアクセスする。第1のプロセッサのセット107の安全性設定値は、送信モジュール215によって、第2のプロセッサのセット107に送信される。一実施形態では、組み込みECUシステム101に関連付けられた外部検証モジュールは、第1のプロセッサのセット107の安全性設定値を確認してもよい。 At block 503, the safety settings for the first set of processors 107 1 are extracted by the extraction module 213. Security settings are generated during the split. Set 107 1 safety setpoint of the first processor is verified based on the safety settings that are trusted based on the result of the verification, set 107 of the first processor, the system resources 113 to access. The safety settings of the first set of processors 107 1 are transmitted by the transmission module 215 to the second set of processors 107 2 . In one embodiment, an external verification module associated with the embedded ECU system 101 may check the safety settings for the first set of processors 107 1 .
 [コンピューティングシステム]
 図6は、本開示と一致する実施形態を実装するための、例示的なコンピュータシステム600のブロック図を示す。一実施形態では、コンピュータシステム600は、組み込みECUシステム101を実装するために使用されてもよい。コンピュータシステム600は、中央処理装置(「CPU」または「プロセッサ」)602を含んでもよい。プロセッサ602は、異種非対称システムのための、混在する重要な機能を管理するための少なくとも1つのデータプロセッサを含んでもよい。プロセッサ602は、統合システム(バス)コントローラ、メモリ管理制御ユニット、浮動小数点ユニット、グラフィックス処理ユニット、デジタル信号処理ユニットなどの、特化した処理装置を含んでもよい。
[Computing system]
FIG. 6 shows a block diagram of an exemplary computer system 600 for implementing embodiments consistent with this disclosure. In one embodiment, computer system 600 may be used to implement embedded ECU system 101. Computer system 600 may include a central processing unit (“CPU” or “processor”) 602. Processor 602 may include at least one data processor for managing mixed critical functionality for heterogeneous asymmetric systems. The processor 602 may include a specialized processing device such as an integrated system (bus) controller, a memory management control unit, a floating point unit, a graphics processing unit, a digital signal processing unit, and the like.
 プロセッサ602は、I/Oインターフェース601を介して、1つまたは複数の入出力(I/O)デバイス(図示せず)と通信するように配置されてもよい。I/Oインターフェース601には、限定するものではないが、オーディオ、アナログ、デジタル、monoaural、RCA、ステレオ、IEEE(登録商標)-1394、シリアルバス、ユニバーサルシリアルバス(universal serial bus、USB(登録商標))、赤外線、PS/2、BNC、同軸、コンポーネント、コンポジット、デジタルビジュアルインターフェイス(digital visual interface、DVI)、高精細度マルチメディアインターフェイス(high-definition multimedia interface、HDMI(登録商標))、RFアンテナ、S映像、VGA、IEEE(登録商標)802.n/b/g/n/x、Bluetooth(登録商標)、セルラー式(例えば、符号分割多重アクセス(code-division multiple access、CDMA)、高速パケットアクセス(high-speed packet access、HSPA+)、汎欧州デジタル移動体通信システム(global system for mobile communications、GSM(商標))、long-term evolution(LTE(商標))、WiMax(商標)など)その他などの、通信プロトコル/通信方法を採用してもよい。 Processor 602 may be arranged to communicate with one or more input/output (I/O) devices (not shown) via I/O interface 601. The I/O interface 601 includes, but is not limited to, audio, analog, digital, monoaural, RCA, stereo, IEEE (registered trademark)-1394, serial bus, universal serial bus, USB (registered trademark). )), infrared, PS/2, BNC, coaxial, component, composite, digital visual interface (DVI), high-definition multimedia interface (high-definition multimedia interface, HDMI (registered trademark)), RF antenna , S-picture, VGA, IEEE (registered trademark) 802. n/b/g/n/x, Bluetooth (registered trademark), cellular type (eg, code-division multiple access (code-division multiple access, CDMA), high-speed packet access (high-speed packet access, HSPA+), pan-Europe) A communication protocol/communication method such as a digital mobile communication system (global system for mobile communications, GSM (trademark)), long-term evolution (LTE (trademark), WiMax (trademark), etc.) or the like may be adopted. ..
 I/Oインターフェース601を使用して、コンピュータシステム600は、1つまたは複数のI/Oデバイスと通信し得る。例えば、入力デバイスは、アンテナ、キーボード、マウス、ジョイスティック、(赤外線)リモコン、カメラ、カードリーダー、FAX機、ドングル、バイオメトリックリーダー、マイク、タッチスクリーン、タッチパッド、トラックボール、スタイラス、スキャナー、記憶装置、トランシーバ、ビデオデバイス/ビデオソースなどであってよい。出力デバイスは、プリンタ、FAX機、ビデオディスプレイ(例えば、ブラウン管(cathode ray tube、CRT)、液晶ディスプレイ(liquid crystal display、LCD)、発光ダイオード(light-emitting diode、LED(商標))、プラズマ、プラズマディスプレイパネル(Plasma display panel、PDP)、有機発光ダイオードディスプレイ(Organic light-emitting diode display、OLED)など)、オーディオスピーカーなどであってよい。 Using I/O interface 601, computer system 600 may communicate with one or more I/O devices. For example, the input device is an antenna, keyboard, mouse, joystick, (infrared) remote controller, camera, card reader, fax machine, dongle, biometric reader, microphone, touch screen, touch pad, trackball, stylus, scanner, storage device. , Transceivers, video devices/video sources, etc. The output device is a printer, a FAX machine, a video display (for example, a cathode ray tube (CRT), a liquid crystal display (liquid crystal display, LCD), a light-emitting diode (light-emitting diode, LED (trademark)), plasma, plasma. It may be a display panel (Plasma display panel, PDP), an organic light emitting diode display (Organic light-emittering diode display, OLED, etc.), an audio speaker, or the like.
 いくつかの実施形態では、コンピュータシステム600は、組み込みECUシステム101からなる。プロセッサ602は、ネットワークインターフェース603を介して、通信ネットワーク609と通信するように配置されてもよい。ネットワークインターフェース603は、通信ネットワーク609と通信してもよい。ネットワークインターフェース603は、直接接続、イーサネット(例えば、ツイストペア10/100/1000 Base T)、伝送制御プロトコル/インターネットプロトコル(transmission control protocol/internet protocol、TCP/IP)、トークンリング、IEEE(登録商標)802.11a/b/g/n/xなどを非限定的に含む、接続プロトコルを採用してもよい。通信ネットワーク609には、直接相互接続、ローカルエリアネットワーク(local area network、LAN)、ワイドエリアネットワーク(wide area network、WAN)、無線ネットワーク(例えば、無線アプリケーションプロトコルを使用する)、インターネットなどが非限定的に含まれてよい。ネットワークインターフェース603は、直接接続、イーサネット(例えば、ツイストペア10/100/1000Base T)、伝送制御プロトコル/インターネットプロトコル(TCP/IP)、トークンリング、IEEE(登録商標)802.11a/b/g/n/xなどを含むがこれらに限定されない、接続プロトコルを採用してもよい。 In some embodiments, computer system 600 comprises embedded ECU system 101. Processor 602 may be arranged to communicate with communication network 609 via network interface 603. The network interface 603 may communicate with the communication network 609. The network interface 603 is a direct connection, Ethernet (for example, twisted pair 10/100/1000 Base T), transmission control protocol/Internet protocol (transmission control protocol/internet protocol, TCP/IP), token ring, IEEE (registered trademark) 802. A connection protocol including, but not limited to, .11a/b/g/n/x may be adopted. The communication network 609 is not limited to a direct interconnection, a local area network (local area network, LAN), a wide area network (wide area network, WAN), a wireless network (using a wireless application protocol), the Internet, etc. May be included in the The network interface 603 is a direct connection, Ethernet (for example, twisted pair 10/100/1000BaseT), transmission control protocol/Internet protocol (TCP/IP), token ring, IEEE (registered trademark) 802.11a/b/g/n. Connection protocols may be employed including, but not limited to, /x.
 通信ネットワーク609には、直接相互接続、電子商取引ネットワーク、ピアツーピア(peer to peer、P2P)ネットワーク、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、無線ネットワーク(例えば、無線アプリケーションプロトコルを使用する)、インターネット、Wi-Fiなどが含まれるが、これらに限定されない。第1のネットワークおよび第2のネットワークは、専用ネットワークか、または共有ネットワークであり得、相互に通信するために、例えば、ハイパーテキスト転送プロトコル(Hypertext Transfer Protocol、HTTP)、伝送制御プロトコル/インターネットプロトコル(TCP/IP)、無線アプリケーションプロトコル(Wireless Application Protocol、WAP)などの種々のプロトコルを使用する、様々な種類のネットワークの関連付けを表す。さらに、第1のネットワークおよび第2のネットワークには、ルータ、ブリッジ、サーバ、コンピューティングデバイス、記憶装置などを含む、種々のネットワークデバイスが含まれてもよい。 The communication network 609 includes direct interconnection, e-commerce network, peer-to-peer (P2P) network, local area network (LAN), wide area network (WAN), wireless network (for example, using a wireless application protocol). , Internet, Wi-Fi, etc., but are not limited to these. The first network and the second network may be dedicated networks or shared networks, and for communicating with each other, for example, a hypertext transfer protocol (Hypertext Transfer Protocol, HTTP), a transmission control protocol/Internet protocol ( Represents association of various types of networks using various protocols such as TCP/IP) and wireless application protocols (Wireless Application Protocol, WAP). Further, the first network and the second network may include various network devices including routers, bridges, servers, computing devices, storage devices, and the like.
 いくつかの実施形態では、プロセッサ602は、記憶インターフェース604を介して、メモリ605(例えば、図6に示されていない、RAM、ROMなど)と通信するように配置されてもよい。記憶インターフェース604は、シリアルアドバンストテクノロジーアタッチメント(serial advanced technology attachment、SATA(登録商標))、インテグレーティドドライブエレクトロニクス(Integrated Drive Electronics、IDE)、IEEE(登録商標)-1394、ユニバーサルシリアルバス(USB(登録商標))、ファイバーチャネル、小型計算機システムインターフェース(Small Computer Systems Interface、SCSI)その他などの接続プロトコルを採用して、メモリドライブ、リムーバブルディスクドライブなどを、これらに限定することなく含む、メモリ605に接続してもよい。メモリドライブは、ドラム、磁気ディスクドライブ、光磁気ドライブ、光学ドライブ、レイド(Redundant Array of Independent Discs、RAID)、ソリッドステートメモリデバイス、ソリッドステートドライブなどをさらに含んでもよい。 In some embodiments, the processor 602 may be arranged to communicate with a memory 605 (eg, RAM, ROM, etc., not shown in FIG. 6) via a storage interface 604. The storage interface 604 is a serial advanced technology attachment (serial advanced technology attachment, SATA (registered trademark)), integrated drive electronics (Integrated Drive Electronics, IDE), IEEE (registered trademark)-1394, universal serial bus (USB). (Trademark), fiber channel, small computer system interface (Small Computer Systems Interface, SCSI) and other connection protocols are adopted to connect to the memory 605, including but not limited to memory drives, removable disk drives, etc. You may. The memory drive may further include a drum, a magnetic disk drive, a magneto-optical drive, an optical drive, a RAID (Redundant Array of Independent Discs, RAID), a solid state memory device, a solid state drive, and the like.
 メモリ605は、ユーザーインターフェース606、オペレーティングシステム607などを非限定的に含む、プログラムまたはデータベースコンポーネントの集合を格納してもよい。いくつかの実施形態では、コンピュータシステム600は、本開示で説明されるように、データ、変数、レコードその他などの、ユーザー/アプリケーションデータ606を格納してもよい。そのようなデータベースは、オラクルまたはサイベースなどの、フォールトトレラントであり、スケーラブルで安全なリレーショナルデータベースとして実装されてよい。 The memory 605 may store a set of programs or database components including, without limitation, a user interface 606, an operating system 607, and the like. In some embodiments, computer system 600 may store user/application data 606, such as data, variables, records, etc., as described in this disclosure. Such databases may be implemented as fault-tolerant, scalable, secure relational databases, such as Oracle or Sybase.
 オペレーティングシステム607は、コンピュータシステム600の資源管理および運用を容易にし得る。オペレーティングシステムの例には、APPLE MACINTOSH(登録商標)OS X、UNIX(登録商標)、UNIXライクなシステムディストリビューション(例えば、BERKELEY SOFTWARE DISTRIBUTION(商標)(BSD)、FREEBSD(商標)、NETBSD(商標)、OPENBSD(商標)など)、LINUX DISTRIBUTIONS(商標)(例えば、RED HAT(商標)、UBUNTU(商標)、KUBUNTU(商標)など)、IBM(商標)OS/2、MICROSOFT(商標) WINDOWS(商標)(XP(商標)、VISTA(商標)/7/8、10など)、APPLE(登録商標)IOS(商標)、GOOGLE(登録商標)ANDROID(商標)、BLACKBERRY(登録商標)OSなどが非限定的に含まれる。 The operating system 607 can facilitate resource management and operation of the computer system 600. Examples of operating systems include APPLE MACINTOSH (registered trademark) OS X, UNIX (registered trademark), UNIX-like system distributions (for example, BERKELEY SOFTWARE DISTRIBUTION (BSD), FREEBSD (trademark), NETBSD (trademark)). , OPENBSD (trademark), LINUX DISTRIBUTIONS (trademark) (for example, RED HAT (trademark), UBUNTU (trademark), KUBUNUTU (trademark), etc.), IBM (trademark) OS/2, MICROSOFT (trademark) WINDOWS (trademark) (XP (trademark), VISTA (trademark)/7/8, 10, etc.), APPLE (trademark) IOS (trademark), GOOGLE (trademark) ANDROID (trademark), BLACKBERRY (trademark) OS, etc. are not limited. include.
 いくつかの実施形態では、コンピュータシステム600は、ウェブブラウザ608の格納されたプログラムコンポーネントを実装してもよい。ウェブブラウザ608は、ハイパーテキスト閲覧アプリケーション、例えば、MICROSOFT(登録商標)INTERNET EXPLORER(商標)、GOOGLE(登録商標)CHROME(商標)、MOZILLA(登録商標)FIREFOX(商標)、APPLE(登録商標)SAFARI(商標)などであってよい。安全なウェブブラウジングは、セキュアハイパーテキスト転送プロトコル(Secure Hypertext Transport Protocol、HTTPS)、セキュアソケットレイヤー(Secure Sockets Layer、SSL)、トランスポートレイヤーセキュリティ(Transport Layer Security、TLS)などを使用して提供され得る。ウェブブラウザ608は、AJAX(商標)、DHTML(商標)、ADOBE(登録商標) FLASH(商標)、JAVASCRIPT(商標)、JAVA(商標)、アプリケーションプログラミングインターフェース(Application Programming Interface、API)その他などの機能を利用してもよい。いくつかの実施形態では、コンピュータシステム600は、メールサーバーの格納されたプログラムコンポーネントを実装してもよい。メールサーバーは、Microsoft Exchangeその他などの、インターネットメールサーバーであってもよい。メールサーバーは、ASP(商標)、ACTIVEX(商標)、ANSI(商標)C++/C#、MICROSOFT(登録商標)、.NET(商標)、CGI SCRIPTS(商標)、JAVA(商標)、JAVASCRIPT(商標)、PERL(商標)、PHP(商標)、PYTHON(商標)、WEBOBJECTS(商標)その他などの、機能を利用してもよい。メールサーバーは、インターネットメッセージアクセスプロトコル(Internet Message Access Protocol、IMAP)、メッセージングアプリケーションプログラミングインターフェース(Messaging Application Programming Interface、MAPI)、MICROSOFT(登録商標)exchange、ポストオフィスプロトコル(POP)、簡易メール転送プロトコル(Simple Mail Transfer Protocol、SMTP)その他などの、通信プロトコルを利用してよい。いくつかの実施形態では、コンピュータシステム600はメールクライアントの格納されたプログラムコンポーネントを実装してもよい。メールクライアントは、APPLE(登録商標)MAIL(商標)、MICROSOFT(登録商標)ENTOURAGE(商標)、MICROSOFT(登録商標)OUTLOOK(商標)、MOZILLA(登録商標)THUNDERBIRD(商標)その他などの、メール閲覧アプリケーションであってよい。 In some embodiments, computer system 600 may implement the stored program components of web browser 608. The web browser 608 is a hypertext browsing application, for example, MICROSOFT (registered trademark) INTERNET EXPLORER (registered trademark), GOOGLE (registered trademark) CHROME (registered trademark), MOZILLA (registered trademark) FIREFOX (registered trademark), and APPLE (registered trademark) SAFARI (registered trademark). Trademark) or the like. For secure web browsing, Secure Hypertext Transfer Protocol (Secure Hypertext Transport Protocol, HTTPS), Secure Socket Layer (Secure Sockets Layer, SSL), Transport Layer Security (Transport Layer Security), etc. can be used to provide TLS. .. The web browser 608 has functions such as AJAX (trademark), DHTML (trademark), ADOBE (trademark) FLASH (trademark), JAVASCRIPT (trademark), JAVA (trademark), an application programming interface (Application Programming Interface, API) and the like. You may use it. In some embodiments, computer system 600 may implement the stored program components of a mail server. The mail server may be an Internet mail server such as Microsoft Exchange or others. Mail servers include ASP™, ACTIVEX™, ANSI™ C++/C#, MICROSOFT™,. Even using functions such as NET™, CGI SCRIPTS™, JAVA™, JAVASCRIPT™, PERL™, PHP™, PYTHON™, WEBOBJECTS™ and others. Good. The mail server is an Internet message access protocol (Internet Message Access Protocol, IMAP), a messaging application programming interface (Messaging Application Programming Interface, MAPI), MICROSOFT (registered trademark) exchange, post office protocol (POP), and simple mail transfer protocol (POP). A communication protocol such as Mail Transfer Protocol, SMTP) or the like may be used. In some embodiments, computer system 600 may implement the stored program components of a mail client. The mail client is a mail browsing application such as APPLE (registered trademark) MAIL (registered trademark), MICROSOFT (registered trademark) ENTOURAGE (registered trademark), MICROSOFT (registered trademark) OUTLOOK (registered trademark), MOZILLA (registered trademark) THUNDERBIRD (registered trademark), and the like. May be
 さらにまた、本開示と一致する実施形態を実装することにおいて、1つまたは複数のコンピュータ読み取り可能記憶媒体が、利用されてもよい。コンピュータ読み取り可能記憶媒体は、プロセッサによって読み取り可能な情報またはデータが格納され得る、任意の種類の物理メモリを指す。したがって、コンピュータ読み取り可能記憶媒体は、本明細書で説明される実施形態と一致するステップまたは段階を、プロセッサに実行させるための命令を含む、1つまたは複数のプロセッサが、実行するための命令を格納し得る。「コンピュータ読み取り可能媒体」という用語は、有形のものを含み、搬送波および一時的な信号を除外する、つまり非一時的であると理解されるべきである。例としては、ランダムアクセスメモリ(Random Access Memory、RAM)、読み出し専用メモリ(Read-Only Memory、ROM)、揮発性メモリ、不揮発性メモリ、ハードドライブ、CD ROM、DVD、フラッシュドライブ、ディスク、およびその他の知られている任意の物理記憶媒体が挙げられる。 Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with this disclosure. Computer-readable storage media refers to any type of physical memory that can store information or data readable by a processor. Accordingly, a computer-readable storage medium includes instructions for one or more processors to perform, including the instructions to cause the processor to perform steps or stages consistent with the embodiments described herein. Can be stored. The term "computer-readable medium" is to be understood as including tangible material and excluding carrier waves and transitory signals, ie non-transitory. Examples include random access memory (Random Access Memory, RAM), read-only memory (Read-Only Memory, ROM), volatile memory, non-volatile memory, hard drive, CD ROM, DVD, flash drive, disk, and others. , Any known physical storage medium.
 本開示の一実施形態は、処理能力の向上とともに機能安全基準を満たす必要がある、自動車、工業用制御などの分野で使用されてもよい。 One embodiment of the present disclosure may be used in fields such as automobiles and industrial control, which need to meet functional safety standards as well as improving processing capacity.
 本開示の実施形態は、安全性非適合システム構成要素がもたらす悪影響による、高信頼性エンティティの安全動作の妨害を抑えることにより、信頼性を高める。 The embodiment of the present disclosure enhances reliability by suppressing interference with safe operation of a highly reliable entity due to adverse effects caused by non-safety conforming system components.
 本開示の実施形態は、利用可能な構成要素の設計および開発のコストを削減する。 Embodiments of the present disclosure reduce the cost of designing and developing available components.
 本開示の一実施形態には、異種のソフトウェアおよびハードウェア構成要素の改良を強化するための、安全性ファームウェアおよび検証技術が含まれる。 One embodiment of the present disclosure includes safety firmware and verification techniques to enhance refinement of disparate software and hardware components.
 説明される動作は、ソフトウェア、ファームウェア、ハードウェア、またはそれらの任意の組み合わせを作り出すための標準的なプログラミングおよび/またはエンジニアリングの技術を用いて、方法、システムまたは製造物品として実装されてもよい。説明される動作は、「非一時的なコンピュータ読み取り可能媒体」に保持されるコードとして実装されてもよい。そこでは、プロセッサが、そのコンピュータ読み取り可能媒体からそのコードを読み取って実行し得る。プロセッサは、クエリを処理および実行できるマイクロプロセッサおよびプロセッサのうち少なくとも1つである。非一時的なコンピュータ読み取り可能媒体には、磁気記憶媒体(例えば、ハードディスクドライブ、フロッピーディスク、テープなど)、光学記憶(CD-ROM、DVD、光ディスクなど)、揮発性メモリデバイスおよび非揮発性メモリデバイス(例えば、EEPROM、ROM、PROM、RAM、DRAM、SRAM、フラッシュメモリ、ファームウェア、プログラマブルロジックなど)その他などの、媒体が含まれてもよい。さらに、非一時的なコンピュータ読み取り可能媒体には、一時的なものを除くすべてのコンピュータ読み取り可能媒体が含まれる。説明される動作を実装するコードは、さらに、ハードウェアロジック(例えば、集積回路チップ、プログラマブルゲートアレイ(Programmable Gate Array、PGA)、特定用途向け集積回路(ASIC)など)で実装されてもよい。 The described acts may be implemented as a method, system or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof. The operations described may be implemented as code carried on a "non-transitory computer-readable medium." There, a processor may read and execute the code from the computer-readable medium. The processor is at least one of a microprocessor and a processor capable of processing and executing queries. Non-transitory computer readable media include magnetic storage media (eg, hard disk drives, floppy disks, tapes, etc.), optical storage (CD-ROM, DVD, optical disks, etc.), volatile memory devices and non-volatile memory devices. Other media (eg, EEPROM, ROM, PROM, RAM, DRAM, SRAM, flash memory, firmware, programmable logic, etc.) may be included. In addition, non-transitory computer-readable media includes all computer-readable media except transitory media. Code implementing the described operations may also be implemented in hardware logic (eg, integrated circuit chips, programmable gate arrays (Programmable Gate Array, PGA), application specific integrated circuits (ASIC), etc.).
 またさらに、説明される動作を実装するコードは、「伝送信号」で実装されてもよく、伝送信号は、空間を介して、または光ファイバ、銅線その他などの伝送媒体を介して伝播してもよい。コードまたはロジックがエンコードされた伝送信号には、無線信号、衛星伝送、電波、赤外線信号、Bluetoothなどが、さらに含まれてもよい。コードまたはロジックがエンコードされた伝送信号は、送信局によって送信され、受信局によって受信されることができる。伝送信号内にエンコードされたコードまたはロジックは、受信局および送信局または受信デバイスおよび送信デバイスで、デコードされて、ハードウェアまたは非一時的なコンピュータ読み取り可能媒体に格納されてもよい。「製造物品」には、コードが実装され得る、非一時的なコンピュータ読み取り可能媒体、ハードウェアロジック、および/または伝送信号が含まれる。説明される動作の実施形態を実装するコードが、エンコードされる、デバイスには、コンピュータ読み取り可能媒体またはハードウェアロジックが含まれてもよい。もちろん、当業者は、本発明の範囲から逸脱することなく、この構成に多くの変更がされ得ること、および製造物品には、当技術分野で知られている適切な情報伝達媒体が含まれてもよいことを認識するであろう。 Still further, code implementing the described operations may be implemented in a "transmission signal," which is propagated through space or over a transmission medium such as optical fiber, copper wire, or the like. Good. The transmission signal encoded with the code or logic may further include a wireless signal, satellite transmission, radio wave, infrared signal, Bluetooth, and the like. The code or logic encoded transmission signal can be transmitted by a transmitting station and received by a receiving station. The code or logic encoded in the transmitted signal may be decoded at the receiving and transmitting stations or the receiving and transmitting devices and stored in hardware or non-transitory computer readable media. An "article of manufacture" includes non-transitory computer readable media, hardware logic, and/or transmitted signals, in which code may be implemented. The device on which the code implementing the described embodiments of the operations is encoded may include computer-readable media or hardware logic. Of course, one of ordinary skill in the art can make many changes to this configuration without departing from the scope of the present invention, and the article of manufacture will include any suitable information transmission media known in the art. You will recognize that it is good.
 用語「実施形態(an embodiment)」、「実施形態(embodiment)」、「実施形態(embodiments)」、「実施形態(the embodiment)」、「実施形態(the embodiments)」、「1つ又は複数の実施形態」、「いくつかの実施形態」、および「一実施形態」は、別途明示的に規定しない限り、「1つ又は複数の(ただし、すべてではない)本発明の実施形態」を意味する。 The terms "an embodiment", "embodiment", "embodiments", "embodiments", "embodiments", "one or more" "Embodiment", "some embodiments", and "one embodiment" mean "one or more, but not all embodiments of the invention," unless expressly specified otherwise. ..
 用語「含む(including)」、「含む(comprising)」、「有する(備える)(having)」およびそれらの変形は、別途明示的に規定しない限り、「含むがこれらに限定されない」を意味する。 The terms “including”, “comprising”, “having” and variations thereof mean “including but not limited to”, unless expressly specified otherwise.
 列挙される事項のそれら列記は、別途明示的に規定しない限り、それらの事項のいずれかまたはすべてが、相互に排他的であることを含意しない。 The listing of the listed items does not imply that any or all of the listed items are mutually exclusive, unless expressly specified otherwise.
 用語「a」、「an」、および「the」は、別途明示的に規定しない限り、「1つ又は複数の」を意味する。 The terms “a”, “an”, and “the” mean “one or more”, unless expressly specified otherwise.
 互いに通信するいくつかの構成要素をともなう実施形態の記載は、すべてのそのような構成要素が必要であることを含意しない。逆に、本発明の幅広い種々の可能な実施形態を例示するために、種々の任意の構成要素が記載されている。 A description of an embodiment with several components in communication with each other does not imply that all such components are required. On the contrary a variety of optional components are described to illustrate the wide variety of possible embodiments of the present invention.
 本明細書で単一のデバイスまたは物品が説明される場合、単一のデバイス/物品の代わりに、1つより多くのデバイス/物品が、(それらが協働するかどうかにかかわらず)使用され得ることが、容易に分かるであろう。同様に、本明細書で1つより多くのデバイスまたは物品が説明される場合(それらが協働するかどうかにかかわらず)、1つより多くのデバイスもしくは物品の代わりに、単一のデバイス/物品が使用され得、または、示されている数のデバイスもしくはプログラムの代わりに、異なる数のデバイス/物品が使用され得ることが、容易に分かるであろう。デバイスの機能および/または特徴は、そのような機能/特徴を有するものとして明示的に説明されていない、1つまたは複数の他のデバイスによって代わりに具現されてもよい。したがって、本発明の他の実施形態は、デバイスそれ自体を含む必要はない。 Where a single device or article is described herein, more than one device/article (whether or not they work together) is used instead of a single device/article. It will be easy to see what you get. Similarly, if more than one device or article is described herein (whether or not they work together), a single device/item instead of more than one device/item is described. It will be readily appreciated that articles may be used, or different numbers of devices/articles may be used instead of the number of devices or programs shown. The functions and/or features of the device may alternatively be embodied by one or more other devices not explicitly described as having such features/features. Therefore, other embodiments of the invention need not include the device itself.
 図5に示される動作は、特定の順序で起きる、特定のイベントを示す。別の実施形態では、特定の動作が、異なる順序で実行され、変更され、または削除されてもよい。その上さらに、上記のロジックにステップが追加されてもよく、それでもなお、説明される実施形態に適合する。さらに、本明細書で説明される動作は、連続して起きる場合があり、または特定の動作が、並行して処理される場合がある。またさらに、動作は、単一の処理ユニットまたは分散処理ユニットによって実行されてもよい。 The operation shown in FIG. 5 indicates a specific event that occurs in a specific order. In another embodiment, the particular operations may be performed, modified, or deleted in a different order. Furthermore, steps may be added to the above logic and still be compatible with the described embodiments. Further, the acts described herein may occur sequentially, or particular acts may be processed in parallel. Still further, the operations may be performed by a single processing unit or a distributed processing unit.
 最後に、本明細書で使用される言葉は、主として読みやすさと教示的な目的のために選択されているものであり、発明を明確に記述し、または発明の範囲を定めるために選択されているものではない場合がある。それ故、本発明の範囲は、この詳細な説明によってではなく、本明細書に基づいた出願で発行される、任意の請求項によって限定されることが、意図されている。したがって、本発明の実施形態の開示は、以下の請求項に記載される本発明の範囲を、限定することなく例示することが意図されている。 Finally, the words used in the specification have been selected primarily for readability and instructional purposes and have been selected to clearly describe the invention or to delineate the scope of the invention. It may not exist. Therefore, it is intended that the scope of the invention be limited not by this detailed description, but by any claims issued in the application herein. Accordingly, the disclosure of embodiments of the invention is intended to exemplify, without limitation, the scope of the invention as set forth in the claims below.
 本明細書では様々な態様および実施形態が開示されているが、他の態様および実施形態は、当業者に明らかであろう。本明細書で開示される様々な態様および実施形態は、例示を目的とするものであり、限定的であることは意図されておらず、真の範囲および精神は、以下の請求項によって示される。 Although various aspects and embodiments are disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, the true scope and spirit of which is set forth by the following claims. ..
 100…環境、101…組み込みECUシステム、103…I/Oインターフェース、105…メモリ、107…プロセッサ、1071N…第1のプロセッサのセットのプロセッサ、1072N…第2のプロセッサのセットのプロセッサ、113…システム資源、1151N…第1のプロセッサのセットの安全性モジュール、1152N…第2のプロセッサのセットの安全性モジュール、200…データ、201…分割データ、203…安全性設定データ、205…検証データ、207…その他のデータ、209…モジュール、211…分割モジュール、213…抽出モジュール、215…送信モジュール、217…その他のモジュール、301…プロセッサ、302…プロセッサ、303…安全性モジュール、305…分割用モジュール、307…抽出モジュール、309…第1のアプリケーション、311…第2のアプリケーション、312…アプリケーション、313…安全性モジュール、315…検証モジュール、316…安全性検証エンジン、317…SoftIp、318…安全性ミドルウェア、600…コンピュータシステム、601…I/Oインターフェース、602…プロセッサ、603…ネットワークインターフェース、604…記憶インターフェース、605…メモリ、606…ユーザーインターフェース、607…オペレーティングシステム、608…ウェブブラウザ 100...Environment, 101...Embedded ECU system, 103...I/O interface, 105...Memory, 107...Processor, 107 1N ...Processor of first set of processors, 107 2N ...Processor of second set of processors, 113 ... system resource, 115 1N ... first processor set security module, 115 2N ... second processor set security module, 200 ... data, 201 ... divided data, 203 ... security setting data, 205 ... Verification data, 207... Other data, 209... Module, 211... Division module, 213... Extraction module, 215... Transmission module, 217... Other module, 301... Processor, 302... Processor, 303... Safety module, 305... Module for division, 307... Extraction module, 309... First application, 311... Second application, 312... Application, 313... Safety module, 315... Verification module, 316... Safety verification engine, 317... SoftIp, 318 ... safety middleware, 600... computer system, 601... I/O interface, 602... processor, 603... network interface, 604... storage interface, 605... memory, 606... user interface, 607... operating system, 608... web browser

Claims (24)

  1.  複数のプロセッサを備える組み込みECUシステムであって、
     前記複数のプロセッサを、第1のプロセッサのセットと第2のプロセッサのセットとに分割するための分割モジュールと、
     前記第1のプロセッサのセットの安全性設定値を抽出するための抽出モジュールと、を含み、
     前記安全性設定値は、前記分割中に生成され、
     前記第1のプロセッサのセットの前記安全性設定値は、信頼されている安全性設定値に基づいて検証され、
     前記第1のプロセッサのセットは、前記検証の結果に基づいてシステム資源にアクセスする、
     複数のプロセッサを備える組み込みECUシステム。
    An embedded ECU system comprising multiple processors,
    A partition module for partitioning the plurality of processors into a first set of processors and a second set of processors;
    An extraction module for extracting a safety setting for the first set of processors;
    The safety settings are generated during the split,
    The security settings of the first set of processors are verified based on trusted security settings;
    The first set of processors access system resources based on a result of the verification,
    Embedded ECU system with multiple processors.
  2.  前記第1のプロセッサのセットは、前記分割に基づいて、前記第2のプロセッサのセットから前記安全性設定値を受信し、各メモリ管理ユニット(MMU)の前記安全性設定値を設定する、
     請求項1に記載の組み込みECUシステム。
    The first set of processors receives the security settings from the second set of processors and sets the security settings for each memory management unit (MMU) based on the partitioning;
    The built-in ECU system according to claim 1.
  3.  前記安全性設定値を前記第2のプロセッサのセットに送信するための送信モジュールを備える、
     請求項1に記載の組み込みECUシステム。
    A transmitter module for transmitting the security settings to the second set of processors;
    The built-in ECU system according to claim 1.
  4.  前記第2のプロセッサのセットの前記信頼されている安全性設定値に基づいて、前記第1のプロセッサのセットの前記安全性設定値を確認するための、前記組み込みECUシステムの外部に存在する検証モジュールを備える、
     請求項1に記載の組み込みECUシステム。
    A verification external to the embedded ECU system for verifying the safety setting of the first set of processors based on the trusted safety setting of the second set of processors. With modules,
    The built-in ECU system according to claim 1.
  5.  前記第2のプロセッサのセットの前記信頼されている安全性設定値に基づいて、前記第1のプロセッサのセットの前記安全性設定値を確認するための、前記組み込みECUシステムに関連付けられた外部検証モジュールを備える、
     請求項1に記載の組み込みECUシステム。
    An external verification associated with the embedded ECU system for verifying the safety setting of the first set of processors based on the trusted safety setting of the second set of processors. With modules,
    The built-in ECU system according to claim 1.
  6.  前記第1のプロセッサのセットは、前記安全性設定値を、前記第2のプロセッサのセットの前記信頼されている安全性設定値と比較することにより検証される、
     請求項1に記載の組み込みECUシステム。
    The first set of processors is verified by comparing the security settings to the trusted security settings of the second set of processors,
    The built-in ECU system according to claim 1.
  7.  前記安全性設定値は、前記第1のプロセッサのセットのアクセスを許可する範囲を含み、前記信頼されている安全性設定値は、複数のレベルによって分類されたアクセスを許可する範囲を含む、
     請求項1に記載の組み込みECUシステム。
    The security setting value includes a range that allows access to the first set of processors, and the trusted security setting value includes a range that allows access classified by a plurality of levels.
    The built-in ECU system according to claim 1.
  8.  前記第1のプロセッサのセットの各プロセッサは、低信頼性プロセッサであり、前記第2のプロセッサのセットの各プロセッサは、高信頼性プロセッサである、
     請求項1に記載の組み込みECUシステム。
    Each processor of the first set of processors is a low reliability processor and each processor of the second set of processors is a high reliability processor,
    The built-in ECU system according to claim 1.
  9.  請求項1に記載の組み込みECUシステムは、最高の特権レベルで、安全性モジュールのインスタンスを実行する。 The embedded ECU system according to claim 1 executes the instance of the safety module at the highest privilege level.
  10.  前記検証の結果に基づいて前記第1のプロセッサのセットにアクセスを提供するための、前記組み込みECUシステムに関連付けられたアクセスユニットを備える、
     請求項1に記載の組み込みECUシステム。
    An access unit associated with the embedded ECU system for providing access to the first set of processors based on a result of the verification;
    The built-in ECU system according to claim 1.
  11.  請求項1に記載の組み込みECUシステムは、前記検証の前記結果に基づいて、要求されたメモリ位置へのアクセスを前記第1のプロセッサのセットに提供することを含む。 The embedded ECU system of claim 1 includes providing access to a requested memory location to the first set of processors based on the results of the verification.
  12.  請求項1に記載の組み込みECUシステムは、前記検証の前記結果に基づいて、メモリ位置上の書き込み可能および書き換え不能のステータスについて前記第1のプロセッサのセットに通知することを含む。 The embedded ECU system according to claim 1 includes notifying the first set of processors of a writable and unrewritable status on a memory location based on the result of the verification.
  13.  異種非対称システムのための、混在する重要な機能を管理するための方法であって、
     組み込みECUシステムにより、複数のプロセッサを、第1のプロセッサのセットと第2のプロセッサのセットとに分割することと、
     前記組み込みECUシステムにより、前記第1のプロセッサのセットの安全性設定値を抽出することと、を含み、
     前記安全性設定値は、前記分割中に生成され、
     前記第1のプロセッサのセットの前記安全性設定値は、信頼されている安全性設定値に基づいて検証され、
     前記第1のプロセッサのセットは、前記検証の結果に基づいてシステム資源にアクセスする、
     異種非対称システムのための、混在する重要な機能を管理するための方法。
    A method for managing critical mixed functionality for heterogeneous asymmetric systems, comprising:
    Dividing the plurality of processors into a first set of processors and a second set of processors by means of an embedded ECU system;
    Extracting, by the embedded ECU system, a safety setpoint for the first set of processors;
    The safety settings are generated during the split,
    The security settings of the first set of processors are verified based on trusted security settings;
    The first set of processors access system resources based on a result of the verification,
    A method for managing mixed critical functionality for heterogeneous asymmetric systems.
  14.  前記第1のプロセッサのセットは、前記分割に基づいて、前記第2のプロセッサのセットから前記安全性設定値を受信し、各メモリ管理ユニット(MMU)の前記安全性設定値を設定する、
     請求項13に記載の方法。
    The first set of processors receives the security settings from the second set of processors and sets the security settings for each memory management unit (MMU) based on the partitioning;
    The method of claim 13.
  15.  前記安全性設定値を前記第2のプロセッサのセットに送信することをさらに含む、
     請求項13に記載の方法。
    Further comprising sending the security settings to the second set of processors,
    The method of claim 13.
  16.  前記第2のプロセッサのセットの前記信頼されている安全性設定値に基づいて、前記第1のプロセッサのセットの前記安全性設定値を確認するための、前記組み込みECUシステムの外部に存在する検証モジュールを備える、
     請求項13に記載の方法。
    A verification external to the embedded ECU system for verifying the safety setting of the first set of processors based on the trusted safety setting of the second set of processors. With modules,
    The method of claim 13.
  17.  前記第2のプロセッサのセットの前記信頼されている安全性設定値に基づいて、前記第1のプロセッサのセットの前記安全性設定値を確認するための、前記組み込みECUシステムに関連付けられた外部検証モジュールを備える、
     請求項13に記載の方法。
    An external verification associated with the embedded ECU system for verifying the safety setting of the first set of processors based on the trusted safety setting of the second set of processors. With modules,
    The method of claim 13.
  18.  前記第1のプロセッサのセットの前記安全性設定値を検証することは、前記安全性設定値を、前記第2のプロセッサのセットの前記信頼されている安全性設定値と比較することを含む、
     請求項13に記載の方法。
    Validating the security settings of the first set of processors comprises comparing the security settings to the trusted security settings of the second set of processors.
    The method of claim 13.
  19.  前記安全性設定値は、前記第1のプロセッサのセットのアクセスを許可する範囲を含み、前記信頼されている安全性設定値は、複数のレベルによって分類されたアクセスを許可する範囲を含む、
     請求項13に記載の方法。
    The security setting value includes a range that allows access to the first set of processors, and the trusted security setting value includes a range that allows access classified by a plurality of levels.
    The method of claim 13.
  20.  前記第1のプロセッサのセットの各プロセッサは、低信頼性プロセッサであり、前記第2のプロセッサのセットの各プロセッサは、高信頼性プロセッサである、
     請求項13に記載の方法。
    Each processor of the first set of processors is a low reliability processor and each processor of the second set of processors is a high reliability processor,
    The method of claim 13.
  21.  前記組み込みECUにより、最高の特権レベルで、安全性モジュールのインスタンスを実行することをさらに含む、
     請求項13に記載の方法。
    Further comprising executing an instance of a safety module at the highest privilege level by the embedded ECU,
    The method of claim 13.
  22.  前記検証の前記結果に基づいて、要求されたメモリ位置への前記アクセスを前記第1のプロセッサのセットに提供することをさらに含む
     請求項13に記載の方法。
    14. The method of claim 13, further comprising providing the access to a requested memory location to the first set of processors based on the result of the verification.
  23.  前記検証の前記結果に基づいて、メモリ位置上の書き込み可能および書き換え不能のステータスについて前記第1のプロセッサのセットに通知することをさらに含む、
     請求項13に記載の方法。
    Further comprising notifying the first set of processors of writable and unwritable status on a memory location based on the result of the verification,
    The method of claim 13.
  24.  前記検証の結果に基づいて前記第1のプロセッサのセットにアクセスを提供するための、前記組み込みECUシステムに関連付けられたアクセスユニットを含む、
     請求項13に記載の方法。
    An access unit associated with the embedded ECU system for providing access to the first set of processors based on a result of the verification;
    The method of claim 13.
PCT/JP2020/003411 2019-02-04 2020-01-30 System and method for heterogeneous asymmetric systems which manage mixed critical functionality WO2020162316A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020571136A JP7096376B2 (en) 2019-02-04 2020-01-30 Systems and methods for managing mixed critical functions for heterogeneous asymmetric systems

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN201941004257 2019-02-04
IN201941004257 2019-02-04

Publications (1)

Publication Number Publication Date
WO2020162316A1 true WO2020162316A1 (en) 2020-08-13

Family

ID=71947464

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/003411 WO2020162316A1 (en) 2019-02-04 2020-01-30 System and method for heterogeneous asymmetric systems which manage mixed critical functionality

Country Status (2)

Country Link
JP (1) JP7096376B2 (en)
WO (1) WO2020162316A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011070528A (en) * 2009-09-28 2011-04-07 Nec Corp Multiprocessor system and memory access control method
US20160259756A1 (en) * 2015-03-04 2016-09-08 Xilinx, Inc. Circuits and methods for inter-processor communication
WO2017056725A1 (en) * 2015-09-30 2017-04-06 日立オートモティブシステムズ株式会社 In-vehicle control device
DE102018210418A1 (en) * 2017-07-13 2019-01-17 Denso Corporation PROCESSOR

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011070528A (en) * 2009-09-28 2011-04-07 Nec Corp Multiprocessor system and memory access control method
US20160259756A1 (en) * 2015-03-04 2016-09-08 Xilinx, Inc. Circuits and methods for inter-processor communication
WO2017056725A1 (en) * 2015-09-30 2017-04-06 日立オートモティブシステムズ株式会社 In-vehicle control device
DE102018210418A1 (en) * 2017-07-13 2019-01-17 Denso Corporation PROCESSOR

Also Published As

Publication number Publication date
JPWO2020162316A1 (en) 2021-11-18
JP7096376B2 (en) 2022-07-05

Similar Documents

Publication Publication Date Title
US20190253434A1 (en) System and method for managing and securing a distributed ledger for a decentralized peer-to-peer network
US11438361B2 (en) Method and system for predicting an attack path in a computer network
US20160188710A1 (en) METHOD AND SYSTEM FOR MIGRATING DATA TO NOT ONLY STRUCTURED QUERY LANGUAGE (NoSOL) DATABASE
US20180183775A1 (en) Method and system for providing a pre-launched virtual desktop session
US10678630B2 (en) Method and system for resolving error in open stack operating system
WO2020162316A1 (en) System and method for heterogeneous asymmetric systems which manage mixed critical functionality
US10848462B2 (en) Method and system for managing policies in a network security system
US10963413B2 (en) Method and system for transmitting data using small computer system interface (SCSI)
CN117795512A (en) Software vulnerability analysis
US10817315B1 (en) Method for integrating applications with infotainment system of vehicle, and system thereof
US20230316256A1 (en) Method and system for enabling communication between electronic devices using a printer application
US11216488B2 (en) Method and system for managing applications in an electronic device
US10303572B2 (en) Methods and systems for improving fault tolerance in storage area network
EP3486023B1 (en) Method and system for performing laser marking
US10534645B2 (en) Method and system for executing processes in a virtual storage area network
US11954517B2 (en) Computer-implemented method and system for providing dynamic endpoints for performing data transactions
US20240143205A1 (en) Method, distributed controller, and system for managing sequential storage devices in distributed storage environment
US20180013482A1 (en) Method and unit for mapping information bits to polarization angles of a wave
WO2022263204A1 (en) Method and system to retrieve public keys in a memory constrained system
WO2024041897A1 (en) Secure communication for unmanned aerial vehicle in integrated ecosystem
WO2024056293A1 (en) Method and system to authenticate camera device and camera data from common attacks
JAPA SYSTEM AND METHOD FOR SECURE AUTHENTICATION BASED ON AN ATTRIBUTE VALUE
WO2023046593A1 (en) Method and system to reduce boundary co-ordinates of a region map for detecting an object
CN107004034B (en) Method for associating columns with functions to optimize query execution and query optimization server
US20190251185A1 (en) Method and system for integrating business logic database with hmi application

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20752704

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020571136

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20752704

Country of ref document: EP

Kind code of ref document: A1