CPC G06F 21/72 (2013.01) [G06F 12/0246 (2013.01); G06F 12/1027 (2013.01); G06F 12/1408 (2013.01); G06F 21/78 (2013.01); H04L 9/0861 (2013.01); H04L 9/0894 (2013.01); G06F 2212/7206 (2013.01); G06F 2212/7208 (2013.01); G06F 2221/2143 (2013.01); H04L 2209/12 (2013.01)] | 20 Claims |
1. A system comprising:
a non-volatile memory, wherein at least a portion of the non-volatile memory is addressable as main memory, and wherein data in the main memory is non-persistent with a power down of the system to simulate a volatile nature of the data;
an integrated circuit coupled to the non-volatile memory, the integrated circuit including:
one or more agents configured to generate memory requests addressing the main memory;
a link control circuit coupled to the one or more agents and the non-volatile memory, wherein the link control circuit is configured to translate a physical address from a given agent of the one or more agents to a second physical address for the non-volatile memory;
a cryptographic circuit configured to employ one or more keys to encrypt data written to the main memory and decrypt data read from the main memory, and wherein the integrated circuit is configured to store the one or more keys within the integrated circuit and to discard the one or more keys at the power down of system to implement the non-persistent, volatile nature of the main memory; and
a control circuit configured to manage a cache formed from volatile memory, wherein the cache is configured to store main memory data to reduce latency in accessing the main memory.
|