Brevet FR3038752A1 (20170113)
REVENDICATIONS1. Circuit de protection de données d'adresse mémoire, le circuit étant adapté à : recevoir, sur un bus de données d'entrée (126), des données d'écriture à écrire dans un dispositif mémoire (104), et sur un bus d'adresse (122), une adresse d'écriture correspondante ; générer une valeur de protection d'adresse sur la base de l'adresse d'écriture ; et générer des données d'écriture modifiées (WRITE DATA') sur un bus de données de sortie (128), les données d'écriture modifiées comprenant les données d'écriture et la valeur de protection d'adresse, la largeur du bus de données de sortie (128) étant plus grande que la largeur du bus de données d'entrée.\n<CLM>\1\tCircuit selon la revendication 1, dans lequel le circuit est en outre adapté à générer une valeur de protection de données sur la base des données d'écriture, les données d'écriture modifiées comprenant en outre la valeur de protection de données.\n<CLM>\1\tCircuit selon la revendication 1 ou 2, comprenant en outre un circuit de génération d'adresse (404) adapté à générer une adresse d'écriture modifiée (WRITE ADDR') sur un bus d'adresse de sortie (124) vers le dispositif mémoire.\n<CLM>\1\tCircuit selon la revendication 3, dans lequel le 25 circuit de génération d'adresse (404) est adapté à générer l'adresse d'écriture modifiée (WRITE ADDR') en décalant l'adresse d'écriture d'un bit vers la gauche.\n<CLM>\1\tCircuit selon l'une quelconque des revendications 1 à 4, dans lequel le nombre N de bits des données d'écriture est 30 inférieur à la largeur M du bus de données d'entrée (126), et la valeur de protection d'adresse est générée sur la base d'une sous-adresse correspondant à la position des N bits de données d'écriture dans la largeur du bus d'adresse. 3038752 B14240.bR 20\n<CLM>\1\tCircuit selon l'une quelconque des revendications 1 à 5, dans lequel la largeur M du bus de données d'entrée (126) est égale à un multiple P du nombre N de bits des données d'écriture, le circuit comprenant P codeurs d'adresse dont 5 chacun est adapté à générer la valeur de protection d'adresse sur la base de l'une correspondante des sous-adresses.\n<CLM>\1\tCircuit selon l'une quelconque des revéndiCatIons 1 à 6, dans lequel un circuit de génération de données de protection (410) est adapté à générer la valeur de protection 10 d'adresse en codant l'adresse d'écriture pour générer une valeur de Y bits, Y étant inférieur au nombre de bits de l'adresse d'écriture.\n<CLM>\1\tCircuit selon l'une quelconque des revendication 1 à 7, comprenant en outre un circuit de filtrage de plage 15 d'adresses (402) adapté à déterminer si l'adresse d'écriture est dans une plage d'adresses à protéger, dans lequel la valeur de protection d'adresse est générée seulement si l'adresse est dans la plage d'adresses à protéger.\n<CLM>\1\tCircuit selon leur revendication 8, comprenant en 20 outre un chemin de contournement pour fournir les données d'écriture directement au bus de sortie de données d'écriture (128) si l'adresse d'écriture n'est pas dans une plage d'adresses à protéger, le chemin de contournement comprenant un circuit de pontage (418) adapté à convertir N bits de données 25 d'écriture en au moins N+Y bits de données d'écriture.\n<CLM>\1\tCircuit de vérification de données d'adresse mémoire, le circuit étant adapté à : recevoir, sur un bus d'adresse (130), une adresse de lecture ; 30 générer une valeur de protection d'adresse de référence (REF ADDR PROT) sur la base de l'adresse de lecture ; recevoir, sur un bus d'entrée de données de lecture (134) provenant d'un dispositif mémoire (104), des données lues et une valeur de protection d'adresse lue dans le dispositif 35 mémoire ; et 3038752 1314240.bR 21 vérifier les données d'adresse mémoire en comparant la valeur de protection d'adresse lue dans le dispositif mémoire à la valeur de protection d'adresse de référence.\n<CLM>\1\tCircuit selon la revendication 10, dans lequel le 5 nombre N de bits des données de lecture est inférieur à la largeur M d'une portion de données de lecture du bus d'entrée de données de lecture (134), et la valeur de protection d'adresse de référence est générée sur la base d'une sous-adresse correspondant à la position des N bits de données de lecture 10 dans la largeur de la portion de données de lecture du bus d'entrée de données de lecture (134).\n<CLM>\1\tCircuit selon la revendication 11, dans lequel la largeur M de la portion de données de lecture du bus d'entrée de données de lecture (134) est égale à un multiple P du nombre N 15 de bits de données de lecture, le circuit comprenant P codeurs d'adresse dont chacun est adapté à générer la valeur de protection d'adresse sur la base de l'une correspondante des sous-adresses.\n<CLM>\1\tCircuit de protection/vérification d'adresse (112) 20 comprenant le circuit de l'une quelconque des revendications 1 à 9 et le circuit de l'une quelconque des revendications 10 à\n<CLM>\1\t14. Procédé de protection de données d'adresse mémoire comprenant : recevoir, sur un bus de données d'entrée (126), des 25 données d'écriture à écrire dans un dispositif mémoire (104) et, sur un bus d'adresse (122), une adresse d'écriture correspondante ; générer une valeur de protection d'adresse sur la base de l'adresse d'écriture ; et 30 générer des données d'écriture modifiées (WRITE DATA') sur un bus de données de sortie (128), les données d'écriture modifiées comprenant les données d'écriture et la valeur de protection d'adresse, la largeur du bus de données de sortie (128) étant plus grande que la largeur du bus de données 35 d'entrée. 3038752. B14240.bR 22\n<CLM>\1\tProcédé de vérification de données d'adresse mémoire comprenant : recevoir, sur un bus d'adresse (130), une adresse de lecture ; 5 générer une valeur de protection d'adresse de référence (REF ADDR PROT) sur la base de l'adresse de lecture ; recevoir, sur un bus d'entrée de données de lecture (134) provenant d'un dispositif mémoire (104), des données lues et une valeur de protection d'adresse lue dans le dispositif 10 mémoire ; et vérifier les données d'adresse mémoire en comparant la valeur de protection d'adresse lue dans le dispositif mémoire à la valeur de protection d'adresse de référence.