Some content of this application is unavailable at the moment.
If this situation persist, please contact us atFeedback&Contact
1. (WO2017032969) AN APPARATUS AND METHOD FOR CONTROLLING INSTRUCTION EXECUTION BEHAVIOUR
Latest bibliographic data on file with the International Bureau   

Pub. No.: WO/2017/032969 International Application No.: PCT/GB2016/052205
Publication Date: 02.03.2017 International Filing Date: 21.07.2016
IPC:
G06F 12/14 (2006.01)
G PHYSICS
06
COMPUTING; CALCULATING; COUNTING
F
ELECTRIC DIGITAL DATA PROCESSING
12
Accessing, addressing or allocating within memory systems or architectures
14
Protection against unauthorised use of memory
Applicants:
ARM LIMITED [GB/GB]; 110 Fulbourn Road Cherry Hinton Cambridge Cambridgeshire CB1 9NJ, GB
Inventors:
BARNES, Graeme Peter; GB
Agent:
HORNER, David Richard; GB
Priority Data:
1515256.427.08.2015GB
Title (EN) AN APPARATUS AND METHOD FOR CONTROLLING INSTRUCTION EXECUTION BEHAVIOUR
(FR) APPAREIL ET PROCÉDÉ DE COMMANDE DE COMPORTEMENT D'EXÉCUTION D'INSTRUCTIONS
Abstract:
(EN) An apparatus and method are provided for controlling instruction execution behaviour. The apparatus includes a set of data registers for storing data values, and a set of bounded pointer storage elements, where each bounded pointer storage element stores a pointer having associated range information indicative of an allowable range of addresses when using that pointer. A control storage element stores a current instruction context, and that current instruction context is used to influence the behaviour of at least one instruction executed by processing circuitry, that at least one instruction specifying a pointer reference for a required pointer, where the pointer reference is within at least a first subset of values (in one embodiment the behaviour is influenced irrespective of the value of the required pointer). In particular, when the current instruction context identifies a default state, the processing circuitry uses the pointer reference to identify one of the data registers whose stored data value forms the required pointer. However, when the current instruction context identifies a bounded pointer state, the processing circuitry instead uses the pointer reference to identify one of the bounded pointer storage elements whose stored pointer forms the required pointer. This allows an instruction set to be provided that can be used for both bounded pointer aware code and bounded pointer unaware code, without significantly increasing the pressure on instruction set encoding space.
(FR) L'invention concerne un appareil et un procédé permettant de commander un comportement d'exécution d'instructions. L'appareil comprend un ensemble de registres de données permettant de stocker des valeurs de données, ainsi qu'un ensemble d'éléments de stockage de pointeurs délimités, chaque élément de stockage de pointeur délimité stockant un pointeur dont les informations de plage associées indiquent une plage d'adresses autorisée lors de l'utilisation de ce pointeur. Un élément de stockage de commande stocke un contexte d'instruction actuel et ce contexte d'instruction actuel permet d’influencer le comportement d'au moins une instruction exécutée par un circuit de traitement, ladite ou lesdites instructions spécifiant une référence de pointeur pour un pointeur requis, la référence de pointeur se trouvant dans au moins un premier sous-ensemble de valeurs (dans un mode de réalisation, le comportement est influencé indépendamment de la valeur du pointeur requis). En particulier, lorsque le contexte d'instruction actuel identifie un état par défaut, le circuit de traitement utilise la référence du pointeur pour identifier l'un des registres de données dont la valeur de données stockée forme le pointeur requis. Cependant, lorsque le contexte d'instruction actuel identifie un état de pointeur délimité, le circuit de traitement utilise plutôt la référence du pointeur pour identifier l'un des éléments de stockage de pointeurs délimités dont le pointeur stocké forme le pointeur requis. Cela permet de fournir un ensemble d'instructions qui peut être utilisé à la fois pour le code sensible au pointeur délimité et le code insensible au pointeur délimité sans augmenter de manière significative la pression sur l’espace de codage de l'ensemble d'instructions.
front page image
Designated States: AE, AG, AL, AM, AO, AT, AU, AZ, BA, BB, BG, BH, BN, BR, BW, BY, BZ, CA, CH, CL, CN, CO, CR, CU, CZ, DE, DK, DM, DO, DZ, EC, EE, EG, ES, FI, GB, GD, GE, GH, GM, GT, HN, HR, HU, ID, IL, IN, IR, IS, JP, KE, KG, KN, KP, KR, KZ, LA, LC, LK, LR, LS, LU, LY, MA, MD, ME, MG, MK, MN, MW, MX, MY, MZ, NA, NG, NI, NO, NZ, OM, PA, PE, PG, PH, PL, PT, QA, RO, RS, RU, RW, SA, SC, SD, SE, SG, SK, SL, SM, ST, SV, SY, TH, TJ, TM, TN, TR, TT, TZ, UA, UG, US, UZ, VC, VN, ZA, ZM, ZW
African Regional Intellectual Property Organization (ARIPO) (BW, GH, GM, KE, LR, LS, MW, MZ, NA, RW, SD, SL, ST, SZ, TZ, UG, ZM, ZW)
Eurasian Patent Office (AM, AZ, BY, KG, KZ, RU, TJ, TM)
European Patent Office (EPO) (AL, AT, BE, BG, CH, CY, CZ, DE, DK, EE, ES, FI, FR, GB, GR, HR, HU, IE, IS, IT, LT, LU, LV, MC, MK, MT, NL, NO, PL, PT, RO, RS, SE, SI, SK, SM, TR)
African Intellectual Property Organization (BF, BJ, CF, CG, CI, CM, GA, GN, GQ, GW, KM, ML, MR, NE, SN, TD, TG)
Publication Language: English (EN)
Filing Language: English (EN)