Context save and restore with a stack-based memory structure
AssigneeTexas Instruments Incorporated
InventorsJean-Philippe Lesot, Gilbert Cabillic
Life of this patent
Estimating the term…
Abstract
A multi-threaded processor adapted to couple to external memory comprises a controller and data storage operated by the controller. The data storage comprises a first portion and a second portion, and wherein only one of the first or second portions is active at a time, the non-active portion being unusable. When the active portion does not have sufficient capacity for additional data to be stored therein, the other portion becomes the active portion. Upon a thread switch from a first thread to a second thread, only one of the first or second portions is cleaned to the external memory if one of the first or second portions does not contain valid data.
Claims20
A multi-threaded processor adapted to couple to external memory, comprising:
- a controller;
- data storage operated by said controller, said data storage comprises a first portion and a second portion, and wherein only one of said first or second portions is active at a time, the non-active portion being unusable;
- wherein, when the active portion does not have sufficient capacity for additional data to be stored therein, the other portion becomes the active portion;
- and
- wherein, upon a thread switch from a first thread to a second thread, only one of said first or second portions is cleaned, to the external memory if one of said first or second portions does not contain valid data.
A system, comprising:
- a communications transceiver;
- a controller;
- data storage operated by said controller, said data storage comprises a first portion and a second portion, and wherein only one of said first or second portions is active at a time, the non-active portion being unusable;
- wherein, when the active portion does not have sufficient capacity for additional data to be stored therein, the other portion becomes the active portion;
- and
- wherein, upon a thread switch from a first thread to a second thread, only one of said first or second portions is cleaned to the external memory if one of said first or second portions does not contain valid data.
A method, comprising:
- using only a first portion of a cache memory data array to store local variables until said first portion has insufficient capacity for storing additional local variables, said cache memory data array comprising the first portion and a second portion;
- once the first portion has insufficient capacity for storing additional local variables, using only the second portion of the cache memory data to store said additional local variables and not using the first portion;
- when the second portion has insufficient capacity for storing additional local variables, copying the local variables from only the first portion to external memory;
- switching from a first thread to a second thread;
- and
- upon switching to the second thread, cleaning only one of said first or second portions to the external memory if one of said first or second portions does not contain valid data.
Dependencies are inferred from the claim text.