Aurora Labs Ltd.

Israël

Retour au propriétaire

1-100 de 112 pour Aurora Labs Ltd. Trier par
Recheche Texte
Affiner par
Juridiction
        États-Unis 109
        International 3
Date
Nouveautés (dernières 4 semaines) 4
2024 avril (MACJ) 3
2024 mars 1
2024 février 2
2024 janvier 1
Voir plus
Classe IPC
G06F 8/71 - Gestion de versions ; Gestion de configuration 102
G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel 97
G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité 96
G06F 8/65 - Mises à jour 95
G06N 20/00 - Apprentissage automatique 90
Voir plus
Statut
En Instance 18
Enregistré / En vigueur 94
Résultats pour  brevets
  1     2        Prochaine page

1.

SHRINKING FILES BASED ON FUNCTION ANALYSIS

      
Numéro d'application 18461558
Statut En instance
Date de dépôt 2023-09-05
Date de la première publication 2024-04-25
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Sahar, Carmit

Abrégé

Disclosed herein are techniques for reducing sizes of executable files. Techniques include identifying an executable file having a plurality of functions; determining, by parsing the executable file or a code structure representing the executable file, that a first and second function each comprise a common block; identifying a third function configured to perform the common block; changing the first and second functions by: removing the common block from at least one of the first or second functions; and inserting a call to the third function into at least one of the first or second functions; and updating the executable file by: replacing, in the executable file, at least one of the first or second functions with at least one of the updated first or second functions; and adding the third function to the executable file.

Classes IPC  ?

2.

SHRINKING DELTA FILES BASED ON FUNCTION ANALYSIS

      
Numéro d'application 18481641
Statut En instance
Date de dépôt 2023-10-04
Date de la première publication 2024-04-25
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Sahar, Carmit

Abrégé

Disclosed herein are techniques for reducing a size of a delta file. Techniques include receiving change code representing a change to device code installed on a device; receiving the device code; identifying, by parsing the change code or a code structure representing the change code, a first function represented by the change code; identifying, by parsing the device code or a code structure representing the device code, a second function represented by the device code; identifying a plurality of subfunctions based on the first and second functions; determining sub-changes to at least some of the plurality of subfunctions, the sub changes being associated with a change to the second function; and generating the delta file comprising object change elements, the object change elements being configured to effect the sub-changes to the device code.

Classes IPC  ?

  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 8/41 - Compilation
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes

3.

SYMBOL-MATCHING BETWEEN SOFTWARE VERSIONS

      
Numéro d'application 18465575
Statut En instance
Date de dépôt 2023-09-11
Date de la première publication 2024-04-25
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Sahar, Carmit

Abrégé

Disclosed herein are techniques for matching symbols between code sets. Techniques include accessing a first symbol associated with a first version of software; accessing a second symbol associated with a second version of the software; comparing the first symbol to the second symbol; determining, based on the comparing, whether the second symbol is a functional equivalent of the first symbol; and performing a designation action based on whether the second symbol is a functional equivalent of the first symbol.

Classes IPC  ?

  • G06F 8/71 - Gestion de versions ; Gestion de configuration

4.

Automatic code reconfiguration based on function and subfunction analysis

      
Numéro d'application 18318354
Numéro de brevet 11941380
Statut Délivré - en vigueur
Date de dépôt 2023-05-16
Date de la première publication 2024-03-26
Date d'octroi 2024-03-26
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Sahar, Carmit

Abrégé

Disclosed herein are techniques for automatically reconfiguring code based on function and subfunction analysis. Techniques include determining, by parsing a code structure representing a plurality of functions, that at least one first function has a threshold degree of complexity; identifying, in response to the determination, a plurality of subfunctions based on the at least one first function, the plurality of subfunctions having a commonality with the at least one first function; and forming a second function by reconfiguring the first function to call at least one of the identified plurality of subfunctions.

Classes IPC  ?

5.

IDENTIFYING SOFTWARE INTERDEPENDENCIES USING LINE-OF-CODE BEHAVIOR AND RELATION MODELS

      
Numéro d'application 18493100
Statut En instance
Date de dépôt 2023-10-24
Date de la première publication 2024-02-29
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying software interdependencies based on functional line-of-code behavior and relation models. Techniques include identifying a first portion of executable code associated with a first controller; accessing a functional line-of-code behavior and relation model representing functionality of the first portion of executable code and a second portion of executable code; determining, based on the functional line-of-code behavior and relation model, that the second portion of executable code is interdependent with the first portion of executable code; and generating, based on the determined interdependency, a report identifying the interdependent first portion of executable code and second portion of executable code.

Classes IPC  ?

  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 18/24 - Techniques de classification
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06N 20/00 - Apprentissage automatique

6.

ORCHESTRATOR REPORTING OF PROBABILITY OF DOWNTIME FROM MACHINE LEARNING PROCESS

      
Numéro d'application 18488485
Statut En instance
Date de dépôt 2023-10-17
Date de la première publication 2024-02-08
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to reporting Electronic Control Unit (ECU) errors or faults to a remote monitoring server. Operations may include receiving operational data from a plurality of ECUs in the vehicle, the operational data being indicative of a plurality of runtime attributes of the plurality of ECUs; generating, through a machine learning process, a statistical model of the operational data; receiving live, runtime updates from the plurality of ECUs in the communications network of the vehicle; identifying an ECU error associated with an ECU in the communications network of the vehicle, the ECU error being determined by a comparison of the live, runtime updates with the statistical model of the operational data to identify at least one deviation from the operational data; and wirelessly sending a report to the remote monitoring server based on the live, runtime updates, the report identifying the ECU and the identified ECU error.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel

7.

DETECTING ANOMALIES ONLINE USING CONTROLLER PROCESSING ACTIVITY

      
Numéro d'application 18484593
Statut En instance
Date de dépôt 2023-10-11
Date de la première publication 2024-02-01
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to identifying Electronic Control Unit (ECU) anomalies in a vehicle. Operations may include monitoring, in the vehicle, data representing real-time processing activity of the ECU; accessing, in the vehicle, historical data relating to processing activity of the ECU, the historical data representing expected processing activity of the ECU; comparing, in the vehicle, the real-time processing activity data with the historical data, to identify at least one anomaly in the real-time processing activity of the ECU; and implementing a control action for the ECU when the at least one anomaly is identified.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel

8.

OPPORTUNISTIC SOFTWARE UPDATES DURING SELECT OPERATIONAL MODES

      
Numéro d'application 18463638
Statut En instance
Date de dépôt 2023-09-08
Date de la première publication 2024-01-04
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to opportunistically updating Electronic Control Unit (ECU) software in a vehicle. Operations may include receiving, at a controller in a vehicle, a wireless transmission indicating a need to update software running on at least one ECU in the vehicle; monitoring an operational status of the vehicle to determine whether the vehicle is in a first mode of operation in which an ECU software update is prohibited; delaying the ECU software update when the operational status is prohibited; continuing to monitor the operational status of the vehicle to determine whether the vehicle is in a second mode of operation in which the ECU software update is permitted; and enabling updating of the at least one ECU with the delayed ECU software update when it is determined that the vehicle is in the second mode of operations.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel

9.

EFFICIENT CONTROLLER DATA GENERATION AND EXTRACTION

      
Numéro d'application 18330806
Statut En instance
Date de dépôt 2023-06-07
Date de la première publication 2023-11-30
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sokoler, Oren
  • Ben Shimon, Kfir

Abrégé

Disclosed herein are techniques for efficiently providing controller data as part of a maintenance or update process. Techniques include receiving, from a first remote computing device, a message associated with at least one controller extracting, based on the received message, an image of software associated with the at least one controller; accessing, based on the extracted image, a delta file; and transmitting the accessed delta file to a second remote computing device.

Classes IPC  ?

  • G05B 19/042 - Commande à programme autre que la commande numérique, c.à d. dans des automatismes à séquence ou dans des automates à logique utilisant des processeurs numériques
  • G06F 16/21 - Conception, administration ou maintenance des bases de données

10.

Shrinking delta files based on function analysis

      
Numéro d'application 18048714
Numéro de brevet 11816478
Statut Délivré - en vigueur
Date de dépôt 2022-10-21
Date de la première publication 2023-11-14
Date d'octroi 2023-11-14
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Sahar, Carmit

Abrégé

Disclosed herein are techniques for reducing a size of a delta file. Techniques include receiving change code representing a change to device code installed on a device; receiving the device code; identifying, by parsing the change code or a code structure representing the change code, a first function represented by the change code; identifying, by parsing the device code or a code structure representing the device code, a second function represented by the device code; identifying a plurality of subfunctions based on the first and second functions; determining sub-changes to at least some of the plurality of subfunctions, the sub changes being associated with a change to the second function; and generating the delta file comprising object change elements, the object change elements being configured to effect the sub-changes to the device code.

Classes IPC  ?

  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 8/41 - Compilation

11.

IDENTIFYING SOFTWARE DEPENDENCIES USING CONTROLLER CODE MODELS

      
Numéro d'application 18346949
Statut En instance
Date de dépôt 2023-07-05
Date de la première publication 2023-11-02
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying software dependencies based on functional line-of-code behavior and relation models. Techniques include accessing a first line-of-code behavior and relation model representing execution of functions of a first portion of executable code, the first portion of executable code being associated with a first symbol; detecting a change to the first portion of executable code; constructing, based on the changed first portion of executable code, a second line-of-code behavior and relation model representing execution of functions of the changed first portion of executable code; determining, based on the constructed second model, a dependency between (i) the changed first portion of executable code or the first symbol and (ii) a second symbol; and generating, based on the determined difference, a report identifying the dependency.

Classes IPC  ?

  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 18/24 - Techniques de classification
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus

12.

USING LINE-OF-CODE BEHAVIOR AND RELATION MODELS TO ANTICIPATE IMPACT OF HARDWARE CHANGES

      
Numéro d'application 18350908
Statut En instance
Date de dépôt 2023-07-12
Date de la première publication 2023-11-02
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for analyzing hardware change impacts based on at least one functional line-of-code behavior and relation model. Techniques include identifying a new hardware component associated with a system; accessing a first line-of-code behavior and relation model representing execution of functions using the new hardware component; accessing a second line-of-code behavior and relation model representing execution of functions on a previous hardware component of the system; performing a functional differential comparison of the first line-of-code behavior and relation model to the second line-of-code behavior and relation model; determining, based on the functional differential comparison, a status of functional equivalence between the new hardware component and the previous hardware component; and generating, based on the determined difference, a report identifying the status of functional equivalence.

Classes IPC  ?

  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 18/24 - Techniques de classification
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/65 - Mises à jour
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données

13.

Symbol-matching between software versions

      
Numéro d'application 18048756
Numéro de brevet 11803371
Statut Délivré - en vigueur
Date de dépôt 2022-10-21
Date de la première publication 2023-10-31
Date d'octroi 2023-10-31
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Sahar, Carmit

Abrégé

Disclosed herein are techniques for matching symbols between code sets. Techniques include accessing a first symbol associated with a first version of software; accessing a second symbol associated with a second version of the software; comparing the first symbol to the second symbol; determining, based on the comparing, whether the second symbol is a functional equivalent of the first symbol; and performing a designation action based on whether the second symbol is a functional equivalent of the first symbol.

Classes IPC  ?

  • G06F 8/71 - Gestion de versions ; Gestion de configuration

14.

VERIFYING SOFTWARE MALFUNCTION SOURCES AMONG DISPARATE CODE SOURCES

      
Numéro d'application 18334422
Statut En instance
Date de dépôt 2023-06-14
Date de la première publication 2023-10-19
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying sources of software-based malfunctions. Techniques include identifying a potential software malfunction in a system, the system having multiple code sets associated with a plurality of different software sources; accessing a line-of-code behavior and relation model representing execution of functions of the code sets; identifying, based on the line-of-code behavior and relation model, a code set determined to have the potential to cause, a least in part, the potential software malfunction; and determining a source identifier of the identified code set.

Classes IPC  ?

  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 18/24 - Techniques de classification
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus

15.

Shrinking executable files based on function analysis

      
Numéro d'application 18048734
Numéro de brevet 11782687
Statut Délivré - en vigueur
Date de dépôt 2022-10-21
Date de la première publication 2023-10-10
Date d'octroi 2023-10-10
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Sahar, Carmit

Abrégé

Disclosed herein are techniques for reducing sizes of executable files. Techniques include identifying an executable file having a plurality of functions; determining, by parsing the executable file or a code structure representing the executable file, that a first and second function each comprise a common block; identifying a third function configured to perform the common block; changing the first and second functions by: removing the common block from at least one of the first or second functions; and inserting a call to the third function into at least one of the first or second functions; and updating the executable file by: replacing, in the executable file, at least one of the first or second functions with at least one of the updated first or second functions; and adding the third function to the executable file.

Classes IPC  ?

16.

VERIFYING INTEGRITY OF CONTROLLER SOFTWARE UPDATES

      
Numéro d'application 18327472
Statut En instance
Date de dépôt 2023-06-01
Date de la première publication 2023-09-28
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for analyzing control-flow integrity based on functional line-of-code behavior and relation models. Techniques include receiving data based on runtime operations of a controller; constructing a line-of-code behavior and relation model representing execution of functions on the controller based on the received data; constructing, based on the line-of-code behavioral and relation model, a dynamic control flow integrity model configured for the controller to enforce in real-time; and deploying the dynamic control flow integrity model to the controller.

Classes IPC  ?

  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 18/24 - Techniques de classification
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus

17.

USING DATA DELTAS IN CONTROLLERS AND MANAGING INTERDEPENDENCIES BETWEEN SOFTWARE VERSIONS IN CONTROLLERS USING TOOL CHAIN

      
Numéro d'application 18325256
Statut En instance
Date de dépôt 2023-05-30
Date de la première publication 2023-09-21
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to perform operations for receiving and integrating a delta file in a vehicle. Operations may include receiving, at an Electronic Control Unit (ECU) in the vehicle, a delta file, the delta file comprising a plurality of deltas corresponding to a software update for software on the ECU and startup code for executing the delta file in the ECU; executing the delta file, based on the startup code, in the ECU; and updating memory addresses in the ECU to correspond to the plurality of deltas from the delta file.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel

18.

VISUALIZATION OF CODE EXECUTION THROUGH LINE-OF-CODE BEHAVIOR AND RELATION MODELS

      
Numéro d'application 18321015
Statut En instance
Date de dépôt 2023-05-22
Date de la première publication 2023-09-14
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for visualizing and configuring controller function sequences. Techniques include identifying at least one executable code segment associated with a controller; analyzing the at least one executable code segment to determine at least one function and at least one functional relationship associated with the at least one code segment; constructing, a software functionality line-of-code behavior and relation model visually depicting the determined at least one function and at least one functional relationship; displaying the software functionality line-of-code behavior and relation model at a user interface; receiving a first input at the interface; in response to the received first input, animating the line-of-code behavior and relation model to visually depict execution of the at least one executable code segment on the controller; receiving a second input at the interface; and in response to the received second input, animating an update to the line-of-code behavior and relation model.

Classes IPC  ?

  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 18/24 - Techniques de classification
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus

19.

Self-healing learning system for one or more controllers

      
Numéro d'application 18295343
Numéro de brevet 11900103
Statut Délivré - en vigueur
Date de dépôt 2023-04-04
Date de la première publication 2023-08-10
Date d'octroi 2024-02-13
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to automatically providing updates to at least one vehicle. Operations may include receiving, at a server remote from the at least one vehicle, Electronic Control Unit (ECU) activity data from the at least one vehicle, the ECU activity data corresponding to actual operation of the ECU in the at least one vehicle; determining, at the server and based on the ECU activity data, a software vulnerability affecting the at least one vehicle, the software vulnerability being determined based on a deviation between the received ECU activity data and expected ECU activity data; identifying, at the server, an ECU software update based on the determined software vulnerability; and sending, from the server, a delta file configured to update software on the ECU with a software update corresponding to the identified ECU software update.

Classes IPC  ?

  • G06F 8/65 - Mises à jour
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

20.

VERIFYING INTEGRITY OF CONTROLLER SOFTWARE UPDATES

      
Numéro d'application 18297350
Statut En instance
Date de dépôt 2023-04-07
Date de la première publication 2023-08-10
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for analyzing software delta changes based on functional line-of-code behavior and relation models. Techniques include identifying a prompt to change a first version of code on a controller to a second version of code; constructing, based on the identified prompt, a line-of-code behavior and relation model representing execution of functions of the controller based on the second version of code; performing a signature operation on the generated line-of-code behavior and relation model to produce a signature value; and sending the signature value to the controller; wherein the controller is configured to compare the signature value to a computed signature value that the controller is configured to compute based on the second version of code and determine, based on the comparison, whether to validate the second version of code.

Classes IPC  ?

  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 18/24 - Techniques de classification
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus

21.

DETECTING ANOMALIES USING REAL-TIME CONTROLLER PROCESSING ACTIVITY

      
Numéro d'application 18297414
Statut En instance
Date de dépôt 2023-04-07
Date de la première publication 2023-08-03
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to performing updates to Electronic Control Unit (ECU) software while an ECU of a vehicle is operating. Operations may include receiving, at the vehicle while the ECU of the vehicle is operating, a software update file for the ECU software; writing, while the ECU is operating, the software update file into a first memory location in a memory of the ECU while simultaneously executing a code segment of existing code in a second memory location in the memory of the ECU; and updating a plurality of memory addresses associated with the memory of the ECU based on the software update file and without interrupting the execution of the code segment currently being executed in the second memory location in the memory of the ECU.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel

22.

ROLL BACK OF DATA DELTA UPDATES

      
Numéro d'application 18180443
Statut En instance
Date de dépôt 2023-03-08
Date de la première publication 2023-07-13
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to adjusting vehicle Electronic Control Unit (ECU) software versions. Operations may include receiving a prompt to adjust an ECU of a vehicle from executing a first version of ECU software to a second version of ECU software; configuring, in response to the prompt and based on a delta file corresponding to the second version of ECU software, the second version of ECU software on the ECU in the vehicle for execution; and configuring, in response to the prompt, the first version of ECU software on the ECU in the vehicle to become non-executable.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 9/4401 - Amorçage
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 8/60 - Déploiement de logiciel
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06N 20/00 - Apprentissage automatique

23.

Automatic code reconfiguration based on function and subfunction analysis

      
Numéro d'application 18048690
Numéro de brevet 11693635
Statut Délivré - en vigueur
Date de dépôt 2022-10-21
Date de la première publication 2023-07-04
Date d'octroi 2023-07-04
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Sahar, Carmit

Abrégé

Disclosed herein are techniques for automatically reconfiguring code based on function and subfunction analysis. Techniques include determining, by parsing a code structure representing a plurality of functions, that at least one first function has a threshold degree of complexity; identifying, in response to the determination, a plurality of subfunctions based on the at least one first function, the plurality of subfunctions having a commonality with the at least one first function; and forming a second function by reconfiguring the first function to call at least one of the identified plurality of subfunctions.

Classes IPC  ?

24.

Identifying software interdependencies using line-of-code behavior and relation models

      
Numéro d'application 18057416
Numéro de brevet 11836428
Statut Délivré - en vigueur
Date de dépôt 2022-11-21
Date de la première publication 2023-03-16
Date d'octroi 2023-12-05
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying software interdependencies based on functional line-of-code behavior and relation models. Techniques include identifying a first portion of executable code associated with a first controller; accessing a functional line-of-code behavior and relation model representing functionality of the first portion of executable code and a second portion of executable code; determining, based on the functional line-of-code behavior and relation model, that the second portion of executable code is interdependent with the first portion of executable code; and generating, based on the determined interdependency, a report identifying the interdependent first portion of executable code and second portion of executable code.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 18/24 - Techniques de classification
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques

25.

Detecting anomalies online using controller processing activity

      
Numéro d'application 18053406
Numéro de brevet 11822917
Statut Délivré - en vigueur
Date de dépôt 2022-11-08
Date de la première publication 2023-03-02
Date d'octroi 2023-11-21
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to identifying Electronic Control Unit (ECU) anomalies in a vehicle. Operations may include monitoring, in the vehicle, data representing real-time processing activity of the ECU; accessing, in the vehicle, historical data relating to processing activity of the ECU, the historical data representing expected processing activity of the ECU; comparing, in the vehicle, the real-time processing activity data with the historical data, to identify at least one anomaly in the real-time processing activity of the ECU; and implementing a control action for the ECU when the at least one anomaly is identified.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 9/455 - Dispositions pour exécuter des programmes spécifiques Émulation; Interprétation; Simulation de logiciel, p.ex. virtualisation ou émulation des moteurs d’exécution d’applications ou de systèmes d’exploitation
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel

26.

Using line-of-code behavior and relation models to anticipate impact of hardware changes

      
Numéro d'application 17932353
Numéro de brevet 11741281
Statut Délivré - en vigueur
Date de dépôt 2022-09-15
Date de la première publication 2023-01-12
Date d'octroi 2023-08-29
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for analyzing hardware change impacts based on at least one functional line-of-code behavior and relation model. Techniques include identifying a new hardware component associated with a system; accessing a first line-of-code behavior and relation model representing execution of functions using the new hardware component; accessing a second line-of-code behavior and relation model representing execution of functions on a previous hardware component of the system; performing a functional differential comparison of the first line-of-code behavior and relation model to the second line-of-code behavior and relation model; determining, based on the functional differential comparison, a status of functional equivalence between the new hardware component and the previous hardware component; and generating, based on the determined difference, a report identifying the status of functional equivalence.

Classes IPC  ?

  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 18/24 - Techniques de classification
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques

27.

Proving whether software functionality has changed following a software change

      
Numéro d'application 17929792
Numéro de brevet 11960807
Statut Délivré - en vigueur
Date de dépôt 2022-09-06
Date de la première publication 2022-12-29
Date d'octroi 2024-04-16
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for using a line-of-code behavior and relation model to determine software functionality changes. Techniques include identifying a first portion of executable code and a second portion of executable code; accessing a first line-of-code behavior and relation model representing execution of functions of the first portion of executable code; constructing, based on the second portion of executable code, a second line-of-code behavior and relation model representing execution of functions of the second portion of executable code; performing a functional differential comparison of the first line-of-code behavior and relation model to the second line-of-code behavior and relation model; determining, based on the functional differential comparison, a status of functional equivalence between the first portion of executable code and the code portion of executable code; and generating, based on the determined difference, a report identifying the status of functional equivalence.

Classes IPC  ?

  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 18/24 - Techniques de classification
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06N 20/00 - Apprentissage automatique
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques

28.

CONSTRUCTING SOFTWARE DELTA UPDATES FOR CONTROLLER SOFTWARE AND ABNORMALITY DETECTION BASED ON TOOLCHAIN

      
Numéro d'application 17929193
Statut En instance
Date de dépôt 2022-09-01
Date de la première publication 2022-12-29
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to generating an update package for updating software on an Electronic Control Unit (ECU) in a vehicle. Operations may include accessing a plurality of attributes of a software update to be stored on the ECU in the vehicle; accessing a corresponding plurality of attributes of current software stored on the ECU in the vehicle; comparing the plurality of attributes with the corresponding plurality of attributes; generating a delta file representing differences between the plurality of attributes and the corresponding plurality of attributes determined in the comparison; and providing the delta file to the ECU, wherein the delta file is configured to be processed by startup code in the ECU that enables the delta file to execute in the ECU in the vehicle.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel

29.

Hot updates to controller software using tool chain

      
Numéro d'application 17820723
Numéro de brevet 11650808
Statut Délivré - en vigueur
Date de dépôt 2022-08-18
Date de la première publication 2022-12-08
Date d'octroi 2023-05-16
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to performing updates to Electronic Control Unit (ECU) software while an ECU of a vehicle is operating. Operations may include receiving, at the vehicle while the ECU of the vehicle is operating, a software update file for the ECU software; writing, while the ECU is operating, the software update file into a first memory location in a memory of the ECU while simultaneously executing a code segment of existing code in a second memory location in the memory of the ECU; and updating a plurality of memory addresses associated with the memory of the ECU based on the software update file and without interrupting the execution of the code segment currently being executed in the second memory location in the memory of the ECU.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06N 20/00 - Apprentissage automatique

30.

Orchestrator reporting of probability of downtime from machine learning process

      
Numéro d'application 17818197
Numéro de brevet 11829750
Statut Délivré - en vigueur
Date de dépôt 2022-08-08
Date de la première publication 2022-12-01
Date d'octroi 2023-11-28
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to reporting Electronic Control Unit (ECU) errors or faults to a remote monitoring server. Operations may include receiving operational data from a plurality of ECUs in the vehicle, the operational data being indicative of a plurality of runtime attributes of the plurality of ECUs; generating, through a machine learning process, a statistical model of the operational data; receiving live, runtime updates from the plurality of ECUs in the communications network of the vehicle; identifying an ECU error associated with an ECU in the communications network of the vehicle, the ECU error being determined by a comparison of the live, runtime updates with the statistical model of the operational data to identify at least one deviation from the operational data; and wirelessly sending a report to the remote monitoring server based on the live, runtime updates, the report identifying the ECU and the identified ECU error.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

31.

Opportunistic software updates during select operational modes

      
Numéro d'application 17817083
Numéro de brevet 11789720
Statut Délivré - en vigueur
Date de dépôt 2022-08-03
Date de la première publication 2022-11-24
Date d'octroi 2023-10-17
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to opportunistically updating Electronic Control Unit (ECU) software in a vehicle. Operations may include receiving, at a controller in a vehicle, a wireless transmission indicating a need to update software running on at least one ECU in the vehicle; monitoring an operational status of the vehicle to determine whether the vehicle is in a first mode of operation in which an ECU software update is prohibited; delaying the ECU software update when the operational status is prohibited; continuing to monitor the operational status of the vehicle to determine whether the vehicle is in a second mode of operation in which the ECU software update is permitted; and enabling updating of the at least one ECU with the delayed ECU software update when it is determined that the vehicle is in the second mode of operations.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

32.

Identifying software dependencies using controller code models

      
Numéro d'application 17816446
Numéro de brevet 11741280
Statut Délivré - en vigueur
Date de dépôt 2022-08-01
Date de la première publication 2022-11-17
Date d'octroi 2023-08-29
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying software dependencies based on functional line-of-code behavior and relation models. Techniques include accessing a first line-of-code behavior and relation model representing execution of functions of a first portion of executable code, the first portion of executable code being associated with a first symbol; detecting a change to the first portion of executable code; constructing, based on the changed first portion of executable code, a second line-of-code behavior and relation model representing execution of functions of the changed first portion of executable code; determining, based on the constructed second model, a dependency between (i) the changed first portion of executable code or the first symbol and (ii) a second symbol; and generating, based on the determined difference, a report identifying the dependency.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 18/24 - Techniques de classification
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques

33.

Using data deltas in controllers and managing interdependencies between software versions in controllers using tool chain

      
Numéro d'application 17810908
Numéro de brevet 11704111
Statut Délivré - en vigueur
Date de dépôt 2022-07-06
Date de la première publication 2022-10-27
Date d'octroi 2023-07-18
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to perform operations for receiving and integrating a delta file in a vehicle. Operations may include receiving, at an Electronic Control Unit (ECU) in the vehicle, a delta file, the delta file comprising a plurality of deltas corresponding to a software update for software on the ECU and startup code for executing the delta file in the ECU; executing the delta file, based on the startup code, in the ECU; and updating memory addresses in the ECU to correspond to the plurality of deltas from the delta file.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

34.

Roll back of data delta updates

      
Numéro d'application 17811200
Numéro de brevet 11635955
Statut Délivré - en vigueur
Date de dépôt 2022-07-07
Date de la première publication 2022-10-27
Date d'octroi 2023-04-25
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to adjusting vehicle Electronic Control Unit (ECU) software versions. Operations may include receiving a prompt to adjust an ECU of a vehicle from executing a first version of ECU software to a second version of ECU software; configuring, in response to the prompt and based on a delta file corresponding to the second version of ECU software, the second version of ECU software on the ECU in the vehicle for execution; and configuring, in response to the prompt, the first version of ECU software on the ECU in the vehicle to become non-executable.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

35.

Visualization of code execution through line-of-code behavior and relation models

      
Numéro d'application 17811324
Numéro de brevet 11694008
Statut Délivré - en vigueur
Date de dépôt 2022-07-08
Date de la première publication 2022-10-27
Date d'octroi 2023-07-04
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for visualizing and configuring controller function sequences. Techniques include identifying at least one executable code segment associated with a controller; analyzing the at least one executable code segment to determine at least one function and at least one functional relationship associated with the at least one code segment; constructing, a software functionality line-of-code behavior and relation model visually depicting the determined at least one function and at least one functional relationship; displaying the software functionality line-of-code behavior and relation model at a user interface; receiving a first input at the interface; in response to the received first input, animating the line-of-code behavior and relation model to visually depict execution of the at least one executable code segment on the controller; receiving a second input at the interface; and in response to the received second input, animating an update to the line-of-code behavior and relation model.

Classes IPC  ?

  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06N 20/00 - Apprentissage automatique
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 18/24 - Techniques de classification
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques

36.

Efficient controller data generation and extraction

      
Numéro d'application 17658678
Numéro de brevet 11726443
Statut Délivré - en vigueur
Date de dépôt 2022-04-11
Date de la première publication 2022-07-28
Date d'octroi 2023-08-15
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sokoler, Oren
  • Ben Shimon, Kfir

Abrégé

Disclosed herein are techniques for efficiently providing controller data as part of a maintenance or update process. Techniques include receiving, from a first remote computing device, a message associated with at least one controller; extracting, based on the received message, an image of software associated with the at least one controller; accessing, based on the extracted image, a delta file; and transmitting the accessed delta file to a second remote computing device.

Classes IPC  ?

  • G05B 19/042 - Commande à programme autre que la commande numérique, c.à d. dans des automatismes à séquence ou dans des automates à logique utilisant des processeurs numériques
  • G06F 16/21 - Conception, administration ou maintenance des bases de données

37.

Dynamic CFI using line-of-code behavior and relation models

      
Numéro d'application 17656127
Numéro de brevet 11709981
Statut Délivré - en vigueur
Date de dépôt 2022-03-23
Date de la première publication 2022-07-14
Date d'octroi 2023-07-25
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for analyzing control-flow integrity based on functional line-of-code behavior and relation models. Techniques include receiving data based on runtime operations of a controller; constructing a line-of-code behavior and relation model representing execution of functions on the controller based on the received data; constructing, based on the line-of-code behavioral and relation model, a dynamic control flow integrity model configured for the controller to enforce in real-time; and deploying the dynamic control flow integrity model to the controller.

Classes IPC  ?

  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 18/24 - Techniques de classification
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle

38.

Self-healing learning system for one or more controllers

      
Numéro d'application 17654622
Numéro de brevet 11650807
Statut Délivré - en vigueur
Date de dépôt 2022-03-14
Date de la première publication 2022-06-30
Date d'octroi 2023-05-16
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to automatically providing updates to at least one vehicle. Operations may include receiving, at a server remote from the at least one vehicle, Electronic Control Unit (ECU) activity data from the at least one vehicle, the ECU activity data corresponding to actual operation of the ECU in the at least one vehicle; determining, at the server and based on the ECU activity data, a software vulnerability affecting the at least one vehicle, the software vulnerability being determined based on a deviation between the received ECU activity data and expected ECU activity data; identifying, at the server, an ECU software update based on the determined software vulnerability; and sending, from the server, a delta file configured to update software on tree ECU with a software update corresponding to the identified ECU software update.

Classes IPC  ?

  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 8/65 - Mises à jour
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

39.

Detecting anomalies online using controller processing activity

      
Numéro d'application 17677000
Numéro de brevet 11526348
Statut Délivré - en vigueur
Date de dépôt 2022-02-22
Date de la première publication 2022-06-09
Date d'octroi 2022-12-13
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to identifying Electronic Control Unit (ECU) anomalies in a vehicle. Operations may include monitoring, in the vehicle, data representing real-time processing activity of the ECU; accessing, in the vehicle, historical data relating to processing activity of the ECU, the historical data representing expected processing activity of the ECU; comparing, in the vehicle, the real-time processing activity data with the historical data, to identify at least one anomaly in the real-time processing activity of the ECU; and implementing a control action for the ECU when the at least one anomaly is identified.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 9/455 - Dispositions pour exécuter des programmes spécifiques Émulation; Interprétation; Simulation de logiciel, p.ex. virtualisation ou émulation des moteurs d’exécution d’applications ou de systèmes d’exploitation
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

40.

Using line-of-code behavior and relation models to anticipate impact of hardware changes

      
Numéro d'application 17588578
Numéro de brevet 11481314
Statut Délivré - en vigueur
Date de dépôt 2022-01-31
Date de la première publication 2022-05-19
Date d'octroi 2022-10-25
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for analyzing hardware change impacts based on at least one functional line-of-code behavior and relation model. Techniques include identifying a new hardware component associated with a system; accessing a first line-of-code behavior and relation model representing execution of functions using the new hardware component; accessing a second line-of-code behavior and relation model representing execution of functions on a previous hardware component of the system; performing a functional differential comparison of the first line-of-code behavior and relation model to the second line-of-code behavior and relation model; determining, based on the functional differential comparison, a status of functional equivalence between the new hardware component and the previous hardware component; and generating, based on the determined difference, a report identifying the status of functional equivalence.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle

41.

Visualization of code execution through line-of-code behavior and relation models

      
Numéro d'application 17582619
Numéro de brevet 11416385
Statut Délivré - en vigueur
Date de dépôt 2022-01-24
Date de la première publication 2022-05-12
Date d'octroi 2022-08-16
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for visualizing and configuring controller function sequences. Techniques include identifying at least one executable code segment associated with a controller; analyzing the at least one executable code segment to determine at least one function and at least one functional relationship associated with the at least one code segment; constructing, a software functionality line-of-code behavior and relation model visually depicting the determined at least one function and at least one functional relationship; displaying the software functionality line-of-code behavior and relation model at a user interface; receiving a first input at the interface; in response to the received first input, animating the line-of-code behavior and relation model to visually depict execution of the at least one executable code segment on the controller; receiving a second input at the interface; and in response to the received second input, animating an update to the line-of-code behavior and relation model.

Classes IPC  ?

  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/65 - Mises à jour
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques

42.

Using data deltas in controllers and managing interdependencies between software versions in controllers using tool chain

      
Numéro d'application 17574620
Numéro de brevet 11422794
Statut Délivré - en vigueur
Date de dépôt 2022-01-13
Date de la première publication 2022-05-05
Date d'octroi 2022-08-23
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to perform operations for receiving and integrating a delta file in a vehicle. Operations may include receiving, at an Electronic Control Unit (ECU) in the vehicle, a delta file, the delta file comprising a plurality of deltas corresponding to a software update for software on the ECU and startup code for executing the delta file in the ECU; executing the delta file, based on the startup code, in the ECU; and updating memory addresses in the ECU to correspond to the plurality of deltas from the delta file.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

43.

Identifying software dependencies using controller code models

      
Numéro d'application 17536466
Numéro de brevet 11442850
Statut Délivré - en vigueur
Date de dépôt 2021-11-29
Date de la première publication 2022-03-17
Date d'octroi 2022-09-13
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying software dependencies based on functional line-of-code behavior and relation models. Techniques include accessing a first line-of-code behavior and relation model representing execution of functions of a first portion of executable code, the first portion of executable code being associated with a first symbol; detecting a change to the first portion of executable code; constructing, based on the changed first portion of executable code, a second line-of-code behavior and relation model representing execution of functions of the changed first portion of executable code; determining, based on the constructed second model, a dependency between (i) the changed first portion of executable code or the first symbol and (ii) a second symbol; and generating, based on the determined difference, a report identifying the dependency.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle

44.

Verifying software malfunction sources among disparate code sources

      
Numéro d'application 17537569
Numéro de brevet 11720731
Statut Délivré - en vigueur
Date de dépôt 2021-11-30
Date de la première publication 2022-03-17
Date d'octroi 2023-08-08
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying sources of software-based malfunctions. Techniques include identifying a potential software malfunction in a system, the system having multiple code sets associated with a plurality of different software sources; accessing a line-of-code behavior and relation model representing execution of functions of the code sets; identifying, based on the line-of-code behavior and relation model, a code set determined to have the potential to cause, a least in part, the potential software malfunction; and determining a source identifier of the identified code set.

Classes IPC  ?

  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 18/24 - Techniques de classification
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle

45.

Hot updates to controller software using tool chain

      
Numéro d'application 17517817
Numéro de brevet 11455165
Statut Délivré - en vigueur
Date de dépôt 2021-11-03
Date de la première publication 2022-02-24
Date d'octroi 2022-09-27
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to performing updates to Electronic Control Unit (ECU) software while an ECU of a vehicle is operating. Operations may include receiving, at the vehicle while the ECU of the vehicle is operating, a software update file for the ECU software; writing, while the ECU is operating, the software update file into a first memory location in a memory of the ECU while simultaneously executing a code segment of existing code in a second memory location in the memory of the ECU; and updating a plurality of memory addresses associated with the memory of the ECU based on the software update file and without interrupting the execution of the code segment currently being executed in the second memory location in the memory of the ECU.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06N 20/00 - Apprentissage automatique

46.

EFFICIENT CONTROLLER DATA GENERATION AND EXTRACTION

      
Numéro d'application IB2021000446
Numéro de publication 2022/003418
Statut Délivré - en vigueur
Date de dépôt 2021-06-28
Date de publication 2022-01-06
Propriétaire AURORA LABS LTD. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sokoler, Oren
  • Ben Shimon, Kfir

Abrégé

Disclosed herein are techniques for efficiently providing controller data as part of a maintenance or update process. Techniques include receiving, from a first remote computing device, a message associated with at least one controller; extracting, based on the received message, an image of software associated with the at least one controller; accessing, based on the extracted image, a delta file; and transmitting the accessed delta file to a second remote computing device.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 8/61 - Installation
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat

47.

Efficient controller data generation and extraction

      
Numéro d'application 17361081
Numéro de brevet 11327456
Statut Délivré - en vigueur
Date de dépôt 2021-06-28
Date de la première publication 2021-12-30
Date d'octroi 2022-05-10
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sokoler, Oren
  • Ben Shimon, Kfir

Abrégé

Disclosed herein are techniques for efficiently providing controller data as part of a maintenance or update process. Techniques include receiving, from a first remote computing device, a message associated with at least one controller; extracting, based on the received message, an image of software associated with the at least one controller; accessing, based on the extracted image, a delta file; and transmitting the accessed delta file to a second remote computing device.

Classes IPC  ?

  • G05B 19/042 - Commande à programme autre que la commande numérique, c.à d. dans des automatismes à séquence ou dans des automates à logique utilisant des processeurs numériques
  • G06F 16/21 - Conception, administration ou maintenance des bases de données

48.

Identifying software interdependencies using line-of-code behavior and relation models

      
Numéro d'application 17469964
Numéro de brevet 11537509
Statut Délivré - en vigueur
Date de dépôt 2021-09-09
Date de la première publication 2021-12-30
Date d'octroi 2022-12-27
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying software interdependencies based on functional line-of-code behavior and relation models. Techniques include identifying a first portion of executable code associated with a first controller; accessing a functional line-of-code behavior and relation model representing functionality of the first portion of executable code and a second portion of executable code; determining, based on the functional line-of-code behavior and relation model, that the second portion of executable code is interdependent with the first portion of executable code; and generating, based on the determined interdependency, a report identifying the interdependent first portion of executable code and second portion of executable code.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle

49.

Opportunistic software updates during select operational modes

      
Numéro d'application 17466560
Numéro de brevet 11442721
Statut Délivré - en vigueur
Date de dépôt 2021-09-03
Date de la première publication 2021-12-23
Date d'octroi 2022-09-13
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to opportunistically updating Electronic Control Unit (ECU) software in a vehicle. Operations may include receiving, at a controller in a vehicle, a wireless transmission indicating a need to update software running on at least one ECU in the vehicle; monitoring an operational status of the vehicle to determine whether the vehicle is in a first mode of operation in which an ECU software update is prohibited; delaying the ECU software update when the operational status is prohibited; continuing to monitor the operational status of the vehicle to determine whether the vehicle is in a second mode of operation in which the ECU software update is permitted; and enabling updating of the at least one ECU with the delayed ECU software update when it is determined that the vehicle is in the second mode of operations.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

50.

Roll back of data delta updates

      
Numéro d'application 17392890
Numéro de brevet 11416242
Statut Délivré - en vigueur
Date de dépôt 2021-08-03
Date de la première publication 2021-11-25
Date d'octroi 2022-08-16
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to adjusting vehicle Electronic Control Unit (ECU) software versions. Operations may include receiving a prompt to adjust an ECU of a vehicle from executing a first version of ECU software to a second version of ECU software; configuring, in response to the prompt and based on a delta file corresponding to the second version of ECU software, the second version of ECU software on the ECU in the vehicle for execution; and configuring, in response to the prompt, the first version of ECU software on the ECU in the vehicle to become non-executable.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

51.

Self-healing learning system for one or more controllers

      
Numéro d'application 17377466
Numéro de brevet 11314502
Statut Délivré - en vigueur
Date de dépôt 2021-07-16
Date de la première publication 2021-11-04
Date d'octroi 2022-04-26
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to automatically providing updates to at least one vehicle. Operations may include receiving, at a server remote from the at least one vehicle, Electronic Control Unit (ECU) activity data from the at least one vehicle, the ECU activity data corresponding to actual operation of the ECU in the at least one vehicle; determining, at the server and based on the ECU activity data, a software vulnerability affecting the at least one vehicle, the software vulnerability being determined based on a deviation between the received ECU activity data and expected ECU activity data; identifying, at the server, an ECU software update based on the determined software vulnerability; and sending, from the server, a delta file configured to update software on the ECU with a software update corresponding to the identified ECU software update.

Classes IPC  ?

  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

52.

Proving whether software functionality has changed following a software change

      
Numéro d'application 17366495
Numéro de brevet 11467953
Statut Délivré - en vigueur
Date de dépôt 2021-07-02
Date de la première publication 2021-10-28
Date d'octroi 2022-10-11
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for using a line-of-code behavior and relation model to determine software functionality changes. Techniques include identifying a first portion of executable code and a second portion of executable code; accessing a first line-of-code behavior and relation model representing execution of functions of the first portion of executable code; constructing, based on the second portion of executable code, a second line-of-code behavior and relation model representing execution of functions of the second portion of executable code; performing a functional differential comparison of the first line-of-code behavior and relation model to the second line-of-code behavior and relation model; determining, based on the functional differential comparison, a status of functional equivalence between the first portion of executable code and the code portion of executable code; and generating, based on the determined difference, a report identifying the status of functional equivalence.

Classes IPC  ?

  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle

53.

Generating and signing a line-of-code behavior and relation model

      
Numéro d'application 17369039
Numéro de brevet 11347632
Statut Délivré - en vigueur
Date de dépôt 2021-07-07
Date de la première publication 2021-10-28
Date d'octroi 2022-05-31
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for generating and signing line-of-code behavior and relation models. Techniques include identifying executable code for a controller; performing a functional analysis of the executable code to determine a plurality of functions associated with the executable code and a plurality of relationships between the plurality of functions; generating, based on the determined plurality of functions and plurality of relationships, a line-of-code behavior and relation model for the executable code; performing a signature operation on the generated line-of-code behavior and relation model to produce a unique signature value associated with at least one of: the line-of-code behavior and relation model or a functional block of the line-of-code behavior and relation model; and linking the unique signature value to the line-of-code behavior and relation model.

Classes IPC  ?

  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle

54.

Dynamic CFI using line-of-code behavior and relation models

      
Numéro d'application 17350011
Numéro de brevet 11314633
Statut Délivré - en vigueur
Date de dépôt 2021-06-17
Date de la première publication 2021-10-07
Date d'octroi 2022-04-26
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for analyzing control-flow integrity based on functional line-of-code behavior and relation models. Techniques include receiving data based on runtime operations of a controller; constructing a line-of-code behavior and relation model representing execution of functions on the controller based on the received data; constructing, based on the line-of-code behavioral and relation model, a dynamic control flow integrity model configured for the controller to enforce in real-time; and deploying the dynamic control flow integrity model to the controller.

Classes IPC  ?

  • G06F 21/00 - Dispositions de sécurité pour protéger les calculateurs, leurs composants, les programmes ou les données contre une activité non autorisée
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle

55.

Visualization of code execution through line-of-code behavior and relation models

      
Numéro d'application 17353946
Numéro de brevet 11263121
Statut Délivré - en vigueur
Date de dépôt 2021-06-22
Date de la première publication 2021-10-07
Date d'octroi 2022-03-01
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for visualizing and configuring controller function sequences. Techniques include identifying at least one executable code segment associated with a controller; analyzing the at least one executable code segment to determine at least one function and at least one functional relationship associated with the at least one code segment; constructing, a software functionality line-of-code behavior and relation model visually depicting the determined at least one function and at least one functional relationship; displaying the software functionality line-of-code behavior and relation model at a user interface; receiving a first input at the interface; in response to the received first input, animating the line-of-code behavior and relation model to visually depict execution of the at least one executable code segment on the controller; receiving a second input at the interface; and in response to the received second input, animating an update to the line-of-code behavior and relation model.

Classes IPC  ?

  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques

56.

Assembling data deltas in controllers and managing interdependencies between software versions in controllers using tool chain

      
Numéro d'application 17348919
Numéro de brevet 11256500
Statut Délivré - en vigueur
Date de dépôt 2021-06-16
Date de la première publication 2021-10-07
Date d'octroi 2022-02-22
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to perform operations for receiving and integrating a delta file in a vehicle. Operations may include receiving, at an Electronic Control Unit (ECU) in the vehicle, a delta file, the delta file comprising a plurality of deltas corresponding to a software update for software on the ECU and startup code for executing the delta file in the ECU; executing the delta file, based on the startup code, in the ECU; and updating memory addresses in the ECU to correspond to the plurality of deltas from the delta file.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

57.

Orchestrator reporting of probability of downtime from machine learning process

      
Numéro d'application 17333230
Numéro de brevet 11422793
Statut Délivré - en vigueur
Date de dépôt 2021-05-28
Date de la première publication 2021-09-16
Date d'octroi 2022-08-23
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to reporting Electronic Control Unit (ECU) errors or faults to a remote monitoring server. Operations may include receiving operational data from a plurality of ECUs in the vehicle, the operational data being indicative of a plurality of runtime attributes of the plurality of ECUs; generating, through a machine learning process, a statistical model of the operational data; receiving live, runtime updates from the plurality of ECUs in the communications network of the vehicle; identifying an ECU error associated with an ECU in the communications network of the vehicle, the ECU error being determined by a comparison of the live, runtime updates with the statistical model of the operational data to identify at least one deviation from the operational data; and wirelessly sending a report to the remote monitoring server based on the live, runtime updates, the report identifying the ECU and the identified ECU error.

Classes IPC  ?

  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

58.

Detecting anomalies online using historical controller processing activity

      
Numéro d'application 17318583
Numéro de brevet 11288060
Statut Délivré - en vigueur
Date de dépôt 2021-05-12
Date de la première publication 2021-08-26
Date d'octroi 2022-03-29
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to identifying Electronic Control Unit (ECU) anomalies in a vehicle. Operations may include monitoring, in the vehicle, data representing real-time processing activity of the ECU; accessing, in the vehicle, historical data relating to processing activity of the ECU, the historical data representing expected processing activity of the ECU; comparing, in the vehicle, the real-time processing activity data with the historical data, to identify at least one anomaly in the real-time processing activity of the ECU; and implementing a control action for the ECU when the at least one anomaly is identified.

Classes IPC  ?

  • H04L 29/06 - Commande de la communication; Traitement de la communication caractérisés par un protocole
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

59.

Hot updates to controller software using tool chain

      
Numéro d'application 17307166
Numéro de brevet 11194570
Statut Délivré - en vigueur
Date de dépôt 2021-05-04
Date de la première publication 2021-08-19
Date d'octroi 2021-12-07
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to performing updates to Electronic Control Unit (ECU) software while an ECU of a vehicle is operating. Operations may include receiving, at the vehicle while the ECU of the vehicle is operating, a software update file for the ECU software; writing, while the ECU is operating, the software update file into a first memory location in a memory of the ECU while simultaneously executing a code segment of existing code in a second memory location in the memory of the ECU; and updating a plurality of memory addresses associated with the memory of the ECU based on the software update file and without interrupting the execution of the code segment currently being executed in the second memory location in the memory of the ECU.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06N 20/00 - Apprentissage automatique

60.

Opportunistic software updates during select operational modes

      
Numéro d'application 17205626
Numéro de brevet 11137997
Statut Délivré - en vigueur
Date de dépôt 2021-03-18
Date de la première publication 2021-07-08
Date d'octroi 2021-10-05
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to opportunistically updating Electronic Control Unit (ECU) software in a vehicle. Operations may include receiving, at a controller in a vehicle, a wireless transmission indicating a need to update software running on at least one ECU in the vehicle; monitoring an operational status of the vehicle to determine whether the vehicle is in a first mode of operation in which an ECU software update is prohibited; delaying the ECU software update when the operational status is prohibited; continuing to monitor the operational status of the vehicle to determine whether the vehicle is in a second mode of operation in which the ECU software update is permitted; and enabling updating of the at least one ECU with the delayed ECU software update when it is determined that the vehicle is in the second mode of operations.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

61.

Constructing software delta updates for controller software and abnormality detection based on toolchain

      
Numéro d'application 17209523
Numéro de brevet 11467823
Statut Délivré - en vigueur
Date de dépôt 2021-03-23
Date de la première publication 2021-07-08
Date d'octroi 2022-10-11
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to generating an update package for updating software on an Electronic Control Unit (ECU) in a vehicle. Operations may include accessing a plurality of attributes of a software update to be stored on the ECU in the vehicle; accessing a corresponding plurality of attributes of current software stored on the ECU in the vehicle; comparing the plurality of attributes with the corresponding plurality of attributes; generating a delta file representing differences between the plurality of attributes and the corresponding plurality of attributes determined in the comparison; and providing the delta file to the ECU, wherein the delta file is configured to be processed by startup code in the ECU that enables the delta file to execute in the ECU in the vehicle.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

62.

Roll back of data delta updates

      
Numéro d'application 17155553
Numéro de brevet 11119758
Statut Délivré - en vigueur
Date de dépôt 2021-01-22
Date de la première publication 2021-06-17
Date d'octroi 2021-09-14
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to adjusting vehicle Electronic Control Unit (ECU) software versions. Operations may include receiving a prompt to adjust an ECU of a vehicle from executing a first version of ECU software to a second version of ECU software; configuring, in response to the prompt and based on a delta file corresponding to the second version of ECU software, the second version of ECU software on the ECU in the vehicle for execution; and configuring, in response to the prompt, the first version of ECU software on the ECU in the vehicle to become non-executable.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

63.

Identifying software dependencies using controller code models

      
Numéro d'application 17183430
Numéro de brevet 11216360
Statut Délivré - en vigueur
Date de dépôt 2021-02-24
Date de la première publication 2021-06-17
Date d'octroi 2022-01-04
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying software dependencies based on functional line-of-code behavior and relation models. Techniques include accessing a first line-of-code behavior and relation model representing execution of functions of a first portion of executable code, the first portion of executable code being associated with a first symbol; detecting a change to the first portion of executable code; constructing, based on the changed first portion of executable code, a second line-of-code behavior and relation model representing execution of functions of the changed first portion of executable code; determining, based on the constructed second model, a dependency between (i) the changed first portion of executable code or the first symbol and (ii) a second symbol; and generating, based on the determined difference, a report identifying the dependency.

Classes IPC  ?

  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès

64.

Assembling data deltas in controllers and managing interdependencies between software versions in controllers using tool chain

      
Numéro d'application 17152281
Numéro de brevet 11068258
Statut Délivré - en vigueur
Date de dépôt 2021-01-19
Date de la première publication 2021-05-13
Date d'octroi 2021-07-20
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to perform operations for receiving and integrating a delta file in a vehicle. Operations may include receiving, at an Electronic Control Unit (ECU) in the vehicle, a delta file, the delta file comprising a plurality of deltas corresponding to a software update for software on the ECU and startup code for executing the delta file in the ECU; executing the delta file, based on the startup code, in the ECU; and updating memory addresses in the ECU to correspond to the plurality of deltas from the delta file.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

65.

Identifying software interdependencies using line-of-code behavior and relation models

      
Numéro d'application 17143640
Numéro de brevet 11144444
Statut Délivré - en vigueur
Date de dépôt 2021-01-07
Date de la première publication 2021-04-29
Date d'octroi 2021-10-12
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying software interdependencies based on functional line-of-code behavior and relation models. Techniques include identifying a first portion of executable code associated with a first controller; accessing a functional line-of-code behavior and relation model representing functionality of the first portion of executable code and a second portion of executable code; determining, based on the functional line-of-code behavior and relation model, that the second portion of executable code is interdependent with the first portion of executable code; and generating, based on the determined interdependency, a report identifying the interdependent first portion of executable code and second portion of executable code.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès

66.

Verifying software malfunction sources among disparate code sources

      
Numéro d'application 17109509
Numéro de brevet 11216359
Statut Délivré - en vigueur
Date de dépôt 2020-12-02
Date de la première publication 2021-03-25
Date d'octroi 2022-01-04
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying sources of software-based malfunctions. Techniques include identifying a potential software malfunction in a system, the system having multiple code sets associated with a plurality of different software sources; accessing a line-of-code behavior and relation model representing execution of functions of the code sets; identifying, based on the line-of-code behavior and relation model, a code set determined to have the potential to cause, a least in part, the potential software malfunction; and determining a source identifier of the identified code set.

Classes IPC  ?

  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès

67.

Generating and signing a line-of-code behavior and relation model

      
Numéro d'application 17115918
Numéro de brevet 11086770
Statut Délivré - en vigueur
Date de dépôt 2020-12-09
Date de la première publication 2021-03-25
Date d'octroi 2021-08-10
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for generating and signing line-of-code behavior and relation models. Techniques include identifying executable code for a controller; performing a functional analysis of the executable code to determine a plurality of functions associated with the executable code and a plurality of relationships between the plurality of functions; generating, based on the determined plurality of functions and plurality of relationships, a line-of-code behavior and relation model for the executable code; performing a signature operation on the generated line-of-code behavior and relation model to produce a unique signature value associated with at least one of: the line-of-code behavior and relation model or a functional block of the line-of-code behavior and relation model; and linking the unique signature value to the line-of-code behavior and relation model.

Classes IPC  ?

  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès

68.

Equivalency determinations using symbol-based line-of-code behavior and relation models

      
Numéro d'application 17094993
Numéro de brevet 11074168
Statut Délivré - en vigueur
Date de dépôt 2020-11-11
Date de la première publication 2021-03-18
Date d'octroi 2021-07-27
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for analyzing control-flow integrity based on functional line-of-code behavior and relation models. Techniques include receiving data based on runtime operations of a controller; constructing a line-of-code behavior and relation model representing execution of functions on the controller based on the received data; constructing, based on the line-of-code behavioral and relation model, a dynamic control flow integrity model configured for the controller to enforce in real-time; and deploying the dynamic control flow integrity model to the controller.

Classes IPC  ?

  • G06F 21/00 - Dispositions de sécurité pour protéger les calculateurs, leurs composants, les programmes ou les données contre une activité non autorisée
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès

69.

Self-healing learning system for one or more controllers

      
Numéro d'application 17096413
Numéro de brevet 11099836
Statut Délivré - en vigueur
Date de dépôt 2020-11-12
Date de la première publication 2021-03-04
Date d'octroi 2021-08-24
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to automatically providing updates to at least one vehicle. Operations may include receiving, at a server remote from the at least one vehicle, Electronic Control Unit (ECU) activity data from the at least one vehicle, the ECU activity data corresponding to actual operation of the ECU in the at least one vehicle; determining, at the server and based on the ECU activity data, a software vulnerability affecting the at least one vehicle, the software vulnerability being determined based on a deviation between the received ECU activity data and expected ECU activity data; identifying, at the server, an ECU software update based on the determined software vulnerability; and sending, from the server, a delta file configured to update software on the ECU with a software update corresponding to the identified ECU software update.

Classes IPC  ?

  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

70.

Detecting anomalies using real-time controller processing activity

      
Numéro d'application 17092505
Numéro de brevet 11334346
Statut Délivré - en vigueur
Date de dépôt 2020-11-09
Date de la première publication 2021-02-25
Date d'octroi 2022-05-17
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to identifying Electronic Control Unit (ECU) anomalies in a vehicle. Operations may include monitoring data representing real-time processing activity of the ECU; receiving comparable data relating to processing activity of at least one other ECU deemed comparable in functionality to the ECU; comparing the real-time processing activity data with the comparable data, to identify at least one anomaly in the real-time processing activity of the ECU; and implementing a control action for the ECU when the at least one anomaly is identified.

Classes IPC  ?

  • G06F 11/00 - Détection d'erreurs; Correction d'erreurs; Contrôle de fonctionnement
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

71.

Constructing software delta updates for controller software and abnormality detection based on toolchain

      
Numéro d'application 17070042
Numéro de brevet 10990383
Statut Délivré - en vigueur
Date de dépôt 2020-10-14
Date de la première publication 2021-01-28
Date d'octroi 2021-04-27
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to generating an update package for updating software on an Electronic Control Unit (ECU) in a vehicle. Operations may include accessing a plurality of attributes of a software update to be stored on the ECU in the vehicle; accessing a corresponding plurality of attributes of current software stored on the ECU in the vehicle; comparing the plurality of attributes with the corresponding plurality of attributes; generating a delta file representing differences between the plurality of attributes and the corresponding plurality of attributes determined in the comparison; and providing the delta file to the ECU, wherein the delta file is configured to be processed by startup code in the ECU that enables the delta file to execute in the ECU in the vehicle.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

72.

Assembling data deltas in controllers and managing interdependencies between software versions in controllers using tool chain

      
Numéro d'application 16999855
Numéro de brevet 10929123
Statut Délivré - en vigueur
Date de dépôt 2020-08-21
Date de la première publication 2020-12-03
Date d'octroi 2021-02-23
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to perform operations for receiving and integrating a delta file in a vehicle. Operations may include receiving, at an Electronic Control Unit (ECU) in the vehicle, a delta file, the delta file comprising a plurality of deltas corresponding to a software update for software on the ECU and startup code for executing the delta file in the ECU; executing the delta file, based on the startup code, in the ECU; and updating memory addresses in the ECU to correspond to the plurality of deltas from the delta file.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06N 20/00 - Apprentissage automatique

73.

Roll back of data delta updates

      
Numéro d'application 16939171
Numéro de brevet 10936304
Statut Délivré - en vigueur
Date de dépôt 2020-07-27
Date de la première publication 2020-11-12
Date d'octroi 2021-03-02
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to adjusting vehicle Electronic Control Unit (ECU) software versions. Operations may include receiving a prompt to adjust an ECU of a vehicle from executing a first version of ECU software to a second version of ECU software; configuring, in response to the prompt and based on a delta file corresponding to the second version of ECU software, the second version of ECU software on the ECU in the vehicle for execution; and configuring, in response to the prompt, the first version of ECU software on the ECU in the vehicle to become non-executable.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

74.

Self-healing learning system for one or more controllers

      
Numéro d'application 16921999
Numéro de brevet 10866853
Statut Délivré - en vigueur
Date de dépôt 2020-07-07
Date de la première publication 2020-10-22
Date d'octroi 2020-12-15
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to automatically providing updates to at least one vehicle. Operations may include receiving, at a server remote from the at least one vehicle, Electronic Control Unit (ECU) activity data from the at least one vehicle, the ECU activity data corresponding to actual operation of the ECU in the at least one vehicle; determining, at the server and based on the ECU activity data, a software vulnerability affecting the at least one vehicle, the software vulnerability being determined based on a deviation between the received ECU activity data and expected ECU activity data; identifying, at the server, an ECU software update based on the determined software vulnerability; and sending, from the server, a delta file configured to update software on the ECU with a software update corresponding to the identified ECU software update.

Classes IPC  ?

  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 9/4401 - Amorçage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 8/65 - Mises à jour
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06N 20/00 - Apprentissage automatique

75.

Proving whether software functionality has changed following a software change

      
Numéro d'application 16828679
Numéro de brevet 11086769
Statut Délivré - en vigueur
Date de dépôt 2020-03-24
Date de la première publication 2020-10-01
Date d'octroi 2021-08-10
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for using a line-of-code behavior and relation model to determine software functionality changes. Techniques include identifying a first portion of executable code and a second portion of executable code; accessing a first line-of-code behavior and relation model representing execution of functions of the first portion of executable code; constructing, based on the second portion of executable code, a second line-of-code behavior and relation model representing execution of functions of the second portion of executable code; performing a functional differential comparison of the first line-of-code behavior and relation model to the second line-of-code behavior and relation model; determining, based on the functional differential comparison, a status of functional equivalence between the first portion of executable code and the code portion of executable code; and generating, based on the determined difference, a report identifying the status of functional equivalence.

Classes IPC  ?

  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès

76.

Identifying software interdependencies using line-of-code behavior and relation models

      
Numéro d'application 16828707
Numéro de brevet 10922218
Statut Délivré - en vigueur
Date de dépôt 2020-03-24
Date de la première publication 2020-10-01
Date d'octroi 2021-02-16
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying software interdependencies based on functional line-of-code behavior and relation models. Techniques include identifying a first portion of executable code associated with a first controller; accessing a functional line-of-code behavior and relation model representing functionality of the first portion of executable code and a second portion of executable code; determining, based on the functional line-of-code behavior and relation model, that the second portion of executable code is interdependent with the first portion of executable code; and generating, based on the determined interdependency, a report identifying the interdependent first portion of executable code and second portion of executable code.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès

77.

Using line-of-code behavior and relation models to anticipate impact of hardware changes

      
Numéro d'application 16828750
Numéro de brevet 11269762
Statut Délivré - en vigueur
Date de dépôt 2020-03-24
Date de la première publication 2020-10-01
Date d'octroi 2022-03-08
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for analyzing hardware change impacts based on at least one functional line-of-code behavior and relation model. Techniques include identifying a new hardware component associated with a system; accessing a first line-of-code behavior and relation model representing execution of functions using the new hardware component; accessing a second line-of-code behavior and relation model representing execution of functions on a previous hardware component of the system; performing a functional differential comparison of the first line-of-code behavior and relation model to the second line-of-code behavior and relation model; determining, based on the functional differential comparison, a status of functional equivalence between the new hardware component and the previous hardware component; and generating, based on the determined difference, a report identifying the status of functional equivalence.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques
  • G06F 30/33 - Vérification de la conception, p.ex. simulation fonctionnelle ou vérification du modèle

78.

Verifying integrity of controller software updates

      
Numéro d'application 16828792
Numéro de brevet 11651128
Statut Délivré - en vigueur
Date de dépôt 2020-03-24
Date de la première publication 2020-10-01
Date d'octroi 2023-05-16
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for analyzing software delta changes based on functional line-of-code behavior and relation models. Techniques include identifying a prompt to change a first version of code on a controller to a second version of code; constructing, based on the identified prompt, a line-of-code behavior and relation model representing execution of functions of the controller based on the second version of code; performing a signature operation on the generated line-of-code behavior and relation model to produce a signature value; and sending the signature value to the controller; wherein the controller is configured to compare the signature value to a computed signature value that the controller is configured to compute based on the second version of code and determine, based on the comparison, whether to validate the second version of code.

Classes IPC  ?

  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès
  • G06F 18/24 - Techniques de classification
  • G06F 30/15 - Conception de véhicules, d’aéronefs ou d’embarcations
  • G10H 1/00 - INSTRUMENTS DE MUSIQUE ÉLECTROPHONIQUES; INSTRUMENTS DANS LESQUELS LES SONS SONT PRODUITS PAR DES MOYENS ÉLECTROMÉCANIQUES OU DES GÉNÉRATEURS ÉLECTRONIQUES, OU DANS LESQUELS LES SONS SONT SYNTHÉTISÉS À PARTIR D'UNE MÉMOIRE DE DONNÉES Éléments d'instruments de musique électrophoniques

79.

Generating and signing a line-of-code behavior and relation model

      
Numéro d'application 16828621
Numéro de brevet 10896038
Statut Délivré - en vigueur
Date de dépôt 2020-03-24
Date de la première publication 2020-10-01
Date d'octroi 2021-01-19
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for generating and signing line-of-code behavior and relation models. Techniques include identifying executable code for a controller; performing a functional analysis of the executable code to determine a plurality of functions associated with the executable code and a plurality of relationships between the plurality of functions; generating, based on the determined plurality of functions and plurality of relationships, a line-of-code behavior and relation model for the executable code; performing a signature operation on the generated line-of-code behavior and relation model to produce a unique signature value associated with at least one of: the line-of-code behavior and relation model or a functional block of the line-of-code behavior and relation model; and linking the unique signature value to the line-of-code behavior and relation model.

Classes IPC  ?

  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06N 20/00 - Apprentissage automatique
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques

80.

Verifying software malfunction sources among disparate code sources

      
Numéro d'application 16828732
Numéro de brevet 10884898
Statut Délivré - en vigueur
Date de dépôt 2020-03-24
Date de la première publication 2020-10-01
Date d'octroi 2021-01-05
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying sources of software-based malfunctions. Techniques include identifying a potential software malfunction in a system, the system having multiple code sets associated with a plurality of different software sources; accessing a line-of-code behavior and relation model representing execution of functions of the code sets; identifying, based on the line-of-code behavior and relation model, a code set determined to have the potential to cause, a least in part, the potential software malfunction; and determining a source identifier of the identified code set.

Classes IPC  ?

  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel

81.

Identifying software dependencies using line-of-code behavior and relation models

      
Numéro d'application 16828770
Numéro de brevet 10963373
Statut Délivré - en vigueur
Date de dépôt 2020-03-24
Date de la première publication 2020-10-01
Date d'octroi 2021-03-30
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for identifying software dependencies based on functional line-of-code behavior and relation models. Techniques include accessing a first line-of-code behavior and relation model representing execution of functions of a first portion of executable code, the first portion of executable code being associated with a first symbol; detecting a change to the first portion of executable code; constructing, based on the changed first portion of executable code, a second line-of-code behavior and relation model representing execution of functions of the changed first portion of executable code; determining, based on the constructed second model, a dependency between (i) the changed first portion of executable code or the first symbol and (ii) a second symbol; and generating, based on the determined difference, a report identifying the dependency.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès

82.

Dynamic CFI using line-of-code behavior and relation models

      
Numéro d'application 16828800
Numéro de brevet 10878082
Statut Délivré - en vigueur
Date de dépôt 2020-03-24
Date de la première publication 2020-10-01
Date d'octroi 2020-12-29
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for analyzing control-flow integrity based on functional line-of-code behavior and relation models. Techniques include receiving data based on runtime operations of a controller; constructing a line-of-code behavior and relation model representing execution of functions on the controller based on the received data; constructing, based on the line-of-code behavioral and relation model, a dynamic control flow integrity model configured for the controller to enforce in real-time; and deploying the dynamic control flow integrity model to the controller.

Classes IPC  ?

  • G06F 21/00 - Dispositions de sécurité pour protéger les calculateurs, leurs composants, les programmes ou les données contre une activité non autorisée
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06N 20/00 - Apprentissage automatique
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité

83.

Visualization of code execution through line-of-code behavior and relation models

      
Numéro d'application 16828814
Numéro de brevet 11074167
Statut Délivré - en vigueur
Date de dépôt 2020-03-24
Date de la première publication 2020-10-01
Date d'octroi 2021-07-27
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for visualizing and configuring controller function sequences. Techniques include identifying at least one executable code segment associated with a controller; analyzing the at least one executable code segment to determine at least one function and at least one functional relationship associated with the at least one code segment; constructing, a software functionality line-of-code behavior and relation model visually depicting the determined at least one function and at least one functional relationship; displaying the software functionality line-of-code behavior and relation model at a user interface; receiving a first input at the interface; in response to the received first input, animating the line-of-code behavior and relation model to visually depict execution of the at least one executable code segment on the controller; receiving a second input at the interface; and in response to the received second input, animating an update to the line-of-code behavior and relation model.

Classes IPC  ?

  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/34 - Programmation graphique ou visuelle
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 16/901 - Indexation; Structures de données à cet effet; Structures de stockage
  • G06N 20/00 - Apprentissage automatique
  • G06F 8/75 - Analyse structurelle pour la compréhension des programmes
  • G06F 17/18 - Opérations mathématiques complexes pour l'évaluation de données statistiques
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06F 21/52 - Contrôle des usagers, programmes ou dispositifs de préservation de l’intégrité des plates-formes, p.ex. des processeurs, des micrologiciels ou des systèmes d’exploitation au stade de l’exécution du programme, p.ex. intégrité de la pile, débordement de tampon ou prévention d'effacement involontaire de données
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p.ex. par clés ou règles de contrôle de l’accès

84.

GENERATING AND SIGNING A LINE-OF-CODE BEHAVIOR AND RELATION MODEL

      
Numéro d'application IB2020052756
Numéro de publication 2020/194186
Statut Délivré - en vigueur
Date de dépôt 2020-03-24
Date de publication 2020-10-01
Propriétaire AURORA LABS LTD. (Israël)
Inventeur(s)
  • Fox, Zohar
  • Sahar, Carmit

Abrégé

Disclosed herein are techniques for generating and signing line-of-code behavior and relation models. Techniques include identifying executable code for a controller; performing a functional analysis of the executable code to determine a plurality of functions associated with the executable code and a plurality of relationships between the plurality of functions; generating, based on the determined plurality of functions and plurality of relationships, a line-of-code behavior and relation model for the executable code; performing a signature operation on the generated line-of-code behavior and relation model to produce a unique signature value associated with at least one of: the line-of-code behavior and relation model or a functional block of the line-of-code behavior and relation model; and linking the unique signature value to the line-of-code behavior and relation model.

Classes IPC  ?

  • G06F 21/56 - Détection ou gestion de programmes malveillants, p.ex. dispositions anti-virus
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • H04L 9/32 - Dispositions pour les communications secrètes ou protégées; Protocoles réseaux de sécurité comprenant des moyens pour vérifier l'identité ou l'autorisation d'un utilisateur du système

85.

Opportunistic software updates during select operational modes

      
Numéro d'application 16874887
Numéro de brevet 10983784
Statut Délivré - en vigueur
Date de dépôt 2020-05-15
Date de la première publication 2020-09-03
Date d'octroi 2021-04-20
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to opportunistically updating Electronic Control Unit (ECU) software in a vehicle. Operations may include receiving, at a controller in a vehicle, a wireless transmission indicating a need to update software running on at least one ECU in the vehicle; monitoring an operational status of the vehicle to determine whether the vehicle is in a first mode of operation in which an ECU software update is prohibited; delaying the ECU software update when the operational status is prohibited; continuing to monitor the operational status of the vehicle to determine whether the vehicle is in a second mode of operation in which the ECU software update is permitted; and enabling updating of the at least one ECU with the delayed ECU software update when it is determined that the vehicle is in the second mode of operations.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

86.

Self-healing learning system for one or more controllers

      
Numéro d'application 16857547
Numéro de brevet 10747604
Statut Délivré - en vigueur
Date de dépôt 2020-04-24
Date de la première publication 2020-08-06
Date d'octroi 2020-08-18
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to automatically providing updates to at least one vehicle. Operations may include receiving, at a server remote from the at least one vehicle, Electronic Control Unit (ECU) activity data from the at least one vehicle, the ECU activity data corresponding to actual operation of the ECU in the at least one vehicle; determining, at the server and based on the ECU activity data, a software vulnerability affecting the at least one vehicle, the software vulnerability being determined based on a deviation between the received ECU activity data and expected ECU activity data; identifying, at the server, an ECU software update based on the determined software vulnerability; and sending, from the server, a delta file configured to update software on the ECU with a software update corresponding to the identified ECU software update.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 9/4401 - Amorçage
  • G06F 8/65 - Mises à jour
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/60 - Déploiement de logiciel
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06N 20/00 - Apprentissage automatique

87.

Hot updates to controller software using tool chain

      
Numéro d'application 16833805
Numéro de brevet 11029946
Statut Délivré - en vigueur
Date de dépôt 2020-03-30
Date de la première publication 2020-07-16
Date d'octroi 2021-06-08
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to performing updates to Electronic Control Unit (ECU) software while an ECU of a vehicle is operating. Operations may include receiving, at the vehicle while the ECU of the vehicle is operating, a software update file for the ECU software; writing, while the ECU is operating, the software update file into a first memory location in a memory of the ECU while simultaneously executing a code segment of existing code in a second memory location in the memory of the ECU; and updating a plurality of memory addresses associated with the memory of the ECU based on the software update file and without interrupting the execution of the code segment currently being executed in the second memory location in the memory of the ECU.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06N 20/00 - Apprentissage automatique

88.

Detecting anomalies using real-time controller processing activity

      
Numéro d'application 16834113
Numéro de brevet 10866802
Statut Délivré - en vigueur
Date de dépôt 2020-03-30
Date de la première publication 2020-07-16
Date d'octroi 2020-12-15
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to identifying Electronic Control Unit (ECU) anomalies in a vehicle. Operations may include monitoring data representing real-time processing activity of the ECU; receiving comparable data relating to processing activity of at least one other ECU deemed comparable in functionality to the ECU; comparing the real-time processing activity data with the comparable data, to identify at least one anomaly in the real-time processing activity of the ECU; and implementing a control action for the ECU when the at least one anomaly is identified.

Classes IPC  ?

  • G06F 11/00 - Détection d'erreurs; Correction d'erreurs; Contrôle de fonctionnement
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

89.

Self-healing learning system for one or more controllers

      
Numéro d'application 16751872
Numéro de brevet 10678627
Statut Délivré - en vigueur
Date de dépôt 2020-01-24
Date de la première publication 2020-05-21
Date d'octroi 2020-06-09
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to automatically providing updates to at least one vehicle. Operations may include receiving, at a server remote from the at least one vehicle, Electronic Control Unit (ECU) activity data from the at least one vehicle, the ECU activity data corresponding to actual operation of the ECU in the at least one vehicle; determining, at the server and based on the ECU activity data, a software vulnerability affecting the at least one vehicle, the software vulnerability being determined based on a deviation between the received ECU activity data and expected ECU activity data; identifying, at the server, an ECU software update based on the determined software vulnerability; and sending, from the server, a delta file configured to update software on the ECU with a software update corresponding to the identified ECU software update.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 8/65 - Mises à jour
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 9/4401 - Amorçage
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

90.

Detecting anomalies online using histograms of controller processing activity

      
Numéro d'application 16710185
Numéro de brevet 11036495
Statut Délivré - en vigueur
Date de dépôt 2019-12-11
Date de la première publication 2020-04-09
Date d'octroi 2021-06-15
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to identifying Electronic Control Unit (ECU) anomalies in a vehicle. Operations may include monitoring, in the vehicle, data representing real-time processing activity of the ECU; accessing, in the vehicle, historical data relating to processing activity of the ECU, the historical data representing expected processing activity of the ECU; comparing, in the vehicle, the real-time processing activity data with the historical data, to identify at least one anomaly in the real-time processing activity of the ECU; and implementing a control action for the ECU when the at least one anomaly is identified.

Classes IPC  ?

  • G06F 17/00 - TRAITEMENT ÉLECTRIQUE DE DONNÉES NUMÉRIQUES Équipement ou méthodes de traitement de données ou de calcul numérique, spécialement adaptés à des fonctions spécifiques
  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

91.

Constructing software delta updates for controller software and abnormality detection based on toolchain

      
Numéro d'application 16682571
Numéro de brevet 10838713
Statut Délivré - en vigueur
Date de dépôt 2019-11-13
Date de la première publication 2020-03-12
Date d'octroi 2020-11-17
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to generating an update package for updating software on an Electronic Control Unit (ECU) in a vehicle. Operations may include accessing a plurality of attributes of a software update to be stored on the ECU in the vehicle; accessing a corresponding plurality of attributes of current software stored on the ECU in the vehicle; comparing the plurality of attributes with the corresponding plurality of attributes; generating a delta file representing differences between the plurality of attributes and the corresponding plurality of attributes determined in the comparison; and providing the delta file to the ECU, wherein the delta file is configured to be processed by startup code in the ECU that enables the delta file to execute in the ECU in the vehicle.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

92.

Detecting anomalies using real-time controller processing activity

      
Numéro d'application 16678003
Numéro de brevet 10649839
Statut Délivré - en vigueur
Date de dépôt 2019-11-08
Date de la première publication 2020-03-05
Date d'octroi 2020-05-12
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to identifying Electronic Control Unit (ECU) anomalies in a vehicle. Operations may include monitoring data representing real-time processing activity of the ECU; receiving comparable data relating to processing activity of at least one other ECU deemed comparable in functionality to the ECU; comparing the real-time processing activity data with the comparable data, to identify at least one anomaly in the real-time processing activity of the ECU; and implementing a control action for the ECU when the at least one anomaly is identified.

Classes IPC  ?

  • G06F 11/00 - Détection d'erreurs; Correction d'erreurs; Contrôle de fonctionnement
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 8/65 - Mises à jour
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 9/4401 - Amorçage
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

93.

Orchestrator reporting of probability of downtime from machine learning process

      
Numéro d'application 16655526
Numéro de brevet 11055088
Statut Délivré - en vigueur
Date de dépôt 2019-10-17
Date de la première publication 2020-02-13
Date d'octroi 2021-07-06
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to reporting Electronic Control Unit (ECU) errors or faults to a remote monitoring server. Operations may include receiving operational data from a plurality of ECUs in the vehicle, the operational data being indicative of a plurality of runtime attributes of the plurality of ECUs; generating, through a machine learning process, a statistical model of the operational data; receiving live, runtime updates from the plurality of ECUs in the communications network of the vehicle; identifying an ECU error associated with an ECU in the communications network of the vehicle, the ECU error being determined by a comparison of the live, runtime updates with the statistical model of the operational data to identify at least one deviation from the operational data; and wirelessly sending a report to the remote monitoring server based on the live, runtime updates, the report identifying the ECU and the identified ECU error.

Classes IPC  ?

  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

94.

Hot updates to controller software using tool chain

      
Numéro d'application 16654545
Numéro de brevet 10642679
Statut Délivré - en vigueur
Date de dépôt 2019-10-16
Date de la première publication 2020-02-13
Date d'octroi 2020-05-05
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to performing updates to Electronic Control Unit (ECU) software while an ECU of a vehicle is operating. Operations may include receiving, at the vehicle while the ECU of the vehicle is operating, a software update file for the ECU software; writing, while the ECU is operating, the software update file into a first memory location in a memory of the ECU while simultaneously executing a code segment of existing code in a second memory location in the memory of the ECU; and updating a plurality of memory addresses associated with the memory of the ECU based on the software update file and without interrupting the execution of the code segment currently being executed in the second memory location in the memory of the ECU.

Classes IPC  ?

  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 8/60 - Déploiement de logiciel
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06N 20/00 - Apprentissage automatique

95.

Self-healing learning system for one or more controllers

      
Numéro d'application 16594206
Numéro de brevet 10585661
Statut Délivré - en vigueur
Date de dépôt 2019-10-07
Date de la première publication 2020-01-30
Date d'octroi 2020-03-10
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to automatically providing updates to at least one vehicle. Operations may include receiving, at a server remote from the at least one vehicle, Electronic Control Unit (ECU) activity data from the at least one vehicle, the ECU activity data corresponding to actual operation of the ECU in the at least one vehicle; determining, at the server and based on the ECU activity data, a software vulnerability affecting the at least one vehicle, the software vulnerability being determined based on a deviation between the received ECU activity data and expected ECU activity data; identifying, at the server, an ECU software update based on the determined software vulnerability; and sending, from the server, a delta file configured to update software on the ECU with a software update corresponding to the identified ECU software update.

Classes IPC  ?

  • G06F 9/455 - Dispositions pour exécuter des programmes spécifiques Émulation; Interprétation; Simulation de logiciel, p.ex. virtualisation ou émulation des moteurs d’exécution d’applications ou de systèmes d’exploitation
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 8/60 - Déploiement de logiciel
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06N 20/00 - Apprentissage automatique

96.

Self-healing learing system for one or more controllers

      
Numéro d'application 16458360
Numéro de brevet 10481899
Statut Délivré - en vigueur
Date de dépôt 2019-07-01
Date de la première publication 2019-10-24
Date d'octroi 2019-11-19
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to automatically providing updates to at least one vehicle. Operations may include receiving, at a server remote from the at least one vehicle, Electronic Control Unit (ECU) activity data from the at least one vehicle, the ECU activity data corresponding to actual operation of the ECU in the at least one vehicle; determining, at the server and based on the ECU activity data, a software vulnerability affecting the at least one vehicle, the software vulnerability being determined based on a deviation between the received ECU activity data and expected ECU activity data; identifying, at the server, an ECU software update based on the determined software vulnerability; and sending, from the server, a delta file configured to update software on the ECU with a software update corresponding to the identified ECU software update.

Classes IPC  ?

  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 8/60 - Déploiement de logiciel
  • G06N 20/00 - Apprentissage automatique

97.

Constructing software delta updates for controller software and abnormality detection based on toolchain

      
Numéro d'application 16502953
Numéro de brevet 10514906
Statut Délivré - en vigueur
Date de dépôt 2019-07-03
Date de la première publication 2019-10-24
Date d'octroi 2019-12-24
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to generating an update package for updating software on an Electronic Control Unit (ECU) in a vehicle. Operations may include accessing a plurality of attributes of a software update to be stored on the ECU in the vehicle; accessing a corresponding plurality of attributes of current software stored on the ECU in the vehicle; comparing the plurality of attributes with the corresponding plurality of attributes; generating a delta file representing differences between the plurality of attributes and the corresponding plurality of attributes determined in the comparison; and providing the delta file to the ECU, wherein the delta file is configured to be processed by startup code in the ECU that enables the delta file to execute in the ECU in the vehicle.

Classes IPC  ?

  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 9/4401 - Amorçage
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06N 20/00 - Apprentissage automatique

98.

Opportunistic software updates during select operational modes

      
Numéro d'application 16450022
Numéro de brevet 10691525
Statut Délivré - en vigueur
Date de dépôt 2019-06-24
Date de la première publication 2019-10-10
Date d'octroi 2020-06-23
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to opportunistically updating Electronic Control Unit (ECU) software in a vehicle. Operations may include receiving, at a controller in a vehicle, a wireless transmission indicating a need to update software running on at least one ECU in the vehicle; monitoring an operational status of the vehicle to determine whether the vehicle is in a first mode of operation in which an ECU software update is prohibited; delaying the ECU software update when the operational status is prohibited; continuing to monitor the operational status of the vehicle to determine whether the vehicle is in a second mode of operation in which the ECU software update is permitted; and enabling updating of the at least one ECU with the delayed ECU software update when it is determined that the vehicle is in the second mode of operations.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 9/4401 - Amorçage
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 8/60 - Déploiement de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

99.

Assembling data deltas in controllers and managing interdependencies between software versions in controllers using tool chain

      
Numéro d'application 16444110
Numéro de brevet 10789121
Statut Délivré - en vigueur
Date de dépôt 2019-06-18
Date de la première publication 2019-10-03
Date d'octroi 2020-09-29
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to perform operations for receiving and integrating a delta file in a vehicle. Operations may include receiving, at an Electronic Control Unit (ECU) in the vehicle, a delta file, the delta file comprising a plurality of deltas corresponding to a software update for software on the ECU and startup code for executing the delta file in the ECU; executing the delta file, based on the startup code, in the ECU; and updating memory addresses in the ECU to correspond to the plurality of deltas from the delta file.

Classes IPC  ?

  • G06F 8/65 - Mises à jour
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 9/4401 - Amorçage
  • G06F 8/60 - Déploiement de logiciel
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/14 - Détection ou correction d'erreur dans les données par redondance dans les opérations, p.ex. en utilisant différentes séquences d'opérations aboutissant au même résultat
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 12/02 - Adressage ou affectation; Réadressage
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06N 20/00 - Apprentissage automatique

100.

Self-healing learning system for one or more controllers

      
Numéro d'application 16360653
Numéro de brevet 10416989
Statut Délivré - en vigueur
Date de dépôt 2019-03-21
Date de la première publication 2019-07-18
Date d'octroi 2019-09-17
Propriétaire Aurora Labs Ltd. (Israël)
Inventeur(s) Fox, Zohar

Abrégé

Disclosed embodiments relate to automatically providing updates to at least one vehicle. Operations may include receiving, at a server remote from the at least one vehicle, Electronic Control Unit (ECU) activity data from the at least one vehicle, the ECU activity data corresponding to actual operation of the ECU in the at least one vehicle; determining, at the server and based on the ECU activity data, a software vulnerability affecting the at least one vehicle, the software vulnerability being determined based on a deviation between the received ECU activity data and expected ECU activity data; identifying, at the server, an ECU software update based on the determined software vulnerability; and sending, from the server, a delta file configured to update software on the ECU with a software update corresponding to the identified ECU software update.

Classes IPC  ?

  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 8/654 - Mises à jour utilisant des techniques spécialement adaptées aux mémoires de masse réinscriptibles, p.ex. aux mémoires EEPROM ou flash
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p.ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p.ex. tolérance de certains défauts
  • B60W 50/04 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour surveiller le fonctionnement du système d'aide à la conduite
  • G06F 8/658 - Mises à jour par incrément; Mises à jour différentielles
  • G06F 11/36 - Prévention d'erreurs en effectuant des tests ou par débogage de logiciel
  • B60W 50/02 - COMMANDE CONJUGUÉE DE PLUSIEURS SOUS-ENSEMBLES D'UN VÉHICULE, DE FONCTION OU DE TYPE DIFFÉRENTS; SYSTÈMES DE COMMANDE SPÉCIALEMENT ADAPTÉS AUX VÉHICULES HYBRIDES; SYSTÈMES D'AIDE À LA CONDUITE DE VÉHICULES ROUTIERS, NON LIÉS À LA COMMANDE D'UN SOUS-ENSEMBLE PARTICULIER - Détails des systèmes d'aide à la conduite des véhicules routiers qui ne sont pas liés à la commande d'un sous-ensemble particulier pour préserver la sécurité en cas de défaillance du système d'aide à la conduite, p.ex. en diagnostiquant ou en palliant à un dysfonctionnement
  • G06F 8/71 - Gestion de versions ; Gestion de configuration
  • G06F 8/65 - Mises à jour
  • G06F 12/06 - Adressage d'un bloc physique de transfert, p.ex. par adresse de base, adressage de modules, extension de l'espace d'adresse, spécialisation de mémoire
  • G06F 9/4401 - Amorçage
  • G06F 16/188 - Systèmes de fichiers virtuels
  • G06F 8/656 - Mises à jour pendant le fonctionnement
  • G06F 11/16 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel
  • G06F 8/60 - Déploiement de logiciel
  • G06N 20/00 - Apprentissage automatique
  1     2        Prochaine page