Brevet FR3047585A1 (20170811)
REVENDICATIONS1. Procédé de surveillance de l'exécution d'un code programme par un code programme de surveillance, caractérisé en ce que on stocke le code programme dans une mémoire (MEM) comprenant des emplacements mémoires (2) capables chacun de stocker au moins un mot d'instruction (31) du code programme et ayant une capacité de stockage supérieure à la taille des mots d'instruction (31, 32,\n<CLM>\1\tdu code programme, pour chaque emplacement mémoire (21, 22,\n<CLM>\1\tcomprenant au moins une instruction du code programme à surveiller on stocke dans la partie libre (PL) de l'emplacement mémoire contenant ladite au moins une instruction (21) à surveiller, au moins une partie d'une instruction de surveillance (41) du code programme de surveillance, on extrait simultanément de la mémoire programme (MEM) ladite au moins une instruction (31) à surveiller et ladite au moins une partie de ladite instruction de surveillance (41), et on exécute ladite au moins une instruction à surveiller (31) et ladite instruction de surveillance (41).\n<CLM>\1\tProcédé selon la revendication 1, dans lequel l'instruction de surveillance (41) a une taille supérieure à la taille de la partie libre, et dans lequel on stocke une première partie (410) de l'instruction de surveillance dans la partie libre de l'emplacement mémoire (21) contenant ladite au moins une instruction (21) à surveiller, et on stocke une deuxième partie (411) de l'instruction de surveillance dans la partie libre d'au moins un emplacement mémoire (25) précédant l'emplacement mémoire (21) contenant ladite au moins une instruction (31) de code programme à surveiller. 3047585 13\n<CLM>\1\tProcédé selon la revendication 1, dans lequel l'emplacement mémoire (21) contenant ladite au moins une instruction à surveiller comporte plusieurs mots d'instruction (31,\n<CLM>\1\tet on stocke dans la partie libre d'au moins un emplacement mémoire (25) 5 précédant l'emplacement mémoire (21) contenant ladite au moins une instruction (31) de code programme à surveiller une information (441) désignant ladite au moins une instruction (31) à laquelle l'instruction de surveillance (44) se rapporte.\n<CLM>\1\tProcédé selon l'une des revendications précédentes, dans 10 lequel on stocke dans un emplacement mémoire (22) situé à une adresse ultérieure à celle de l'emplacement mémoire (21) comprenant ladite au moins une instruction (31) de code programme à surveiller, au moins une partie (420,\n<CLM>\1\td'une autre instruction de surveillance (42) du code de surveillance, l'instruction à surveiller (31) étant une 15 instruction de branchement pointant vers ledit emplacement mémoire suivant (22).\n<CLM>\1\tDispositif de surveillance d'un code programme par un code programme de surveillance, caractérisé en ce qu'il comprend une mémoire (MEM) comprenant des emplacements mémoires (2) capables 20 chacun de stocker au moins un mot d'instruction (31) du code programme et ayant une capacité de stockage supérieure à la taille des mots d'instruction du code programme, chaque emplacement mémoire (2) comportant une partie libre (PL) capable de stocker au moins une partie d'une instruction de surveillance (41) du code programme de 25 surveillance, le dispositif comportant des moyens configurés pour effectuer une extraction simultanée (1) de ladite au moins une instruction (31) à surveiller et de ladite au moins une partie de ladite instruction de surveillance (41), et des moyens (AM, CPU) d'exécution de ladite instruction à surveiller (31) et de ladite au moins une partie 30 de l'instruction de surveillance (41)\n<CLM>\1\tDispositif selon la revendication 5, dans lequel l'instruction de surveillance (41) a une taille supérieure à la taille de la partie libre (PL), et ladite partie libre (PL) de l'emplacement mémoire (21) contenant ladite au moins une instruction à surveiller 3047585 14 (31) est capable de recevoir une première partie (410) de l'instruction de surveillance (41), et la partie libre (PL) d'un emplacement Mémoire (23) précédant l'emplacement mémoire (21) contenant ladite au moins une instruction de code programme (31) à surveiller est capable de 5 contenir une deuxième partie (411) de l'instruction de surveillance (41).\n<CLM>\1\tDispositif selon la revendication 5, dans lequel l'emplacement mémoire (21) contenant ladite au moins une instruction à surveiller (31) comporte plusieurs mots d'instruction (31,\n<CLM>\1\tet la 10 partie libre d'au moins un emplacement mémoire (25) précédant l'emplacement mémoire (21) contenant ladite au moins une instruction (31) de code programme à surveiller comprend une information (441) désignant ladite au moins une instruction (31) à laquelle l'instruction de surveillance (44) se rapporte. 15\n<CLM>\1\tDispositif selon l'une des revendications 5 à 7, dans lequel un emplacement mémoire (22) situé à une adresse ultérieure à celle de l'emplacement mémoire (21) comprenant ladite au moins une instruction de code programme (31) à surveiller est capable de contenir au moins une partie (420,421) d'une autre instruction (42) du 20 code de surveillance, l'instruction à surveiller (31) étant une instruction de branchement pointant vers ledit emplacement mémoire suivant (22). 25