Method, apparatus, and system for protecting memory
First Claim
1. An apparatus for protecting a memory, comprising:
- a parity generator that generates a parity of first data to be written to the memory;
a parity adder that obtains a second data by adding the parity to the first data;
an access-key register that holds an access key unique to a source of request for writing data to the memory or for reading data from the memory, the access key being set by the source of request and being used for accessing the memory;
a first operating unit that obtains a third data by calculating an XOR between the second data and the access key, the access key being set in the access-key register by the source of request for writing data to the memory;
a writing unit that writes the third data to the memory;
a second operating unit that obtains a fourth data by calculating an XOR between the access key and the third data, the access key being set in the access-key register by the source of request for reading data from the memory;
a syndrome calculator that calculates a syndrome from the third data; and
a determining unit that determines whether to output the third data as the first data, based on calculated syndrome.
1 Assignment
0 Petitions
Accused Products
Abstract
A parity adder obtains a second data by adding a parity for first data to be written to a memory to the first data. An access-key register holds an access key unique to a source of request. A first operating unit obtains a third data by calculating an XOR between the second data and the access key, the access key being set by the source of request for writing data to the memory. A second operating unit obtains a fourth data by calculating an XOR between the access key and the third data. A syndrome calculator calculates a syndrome from the third data, the access key being set by the source of request for reading data from the memory. A determining unit determines whether to output the third data as the first data, based on calculated syndrome.
19 Citations
20 Claims
-
1. An apparatus for protecting a memory, comprising:
-
a parity generator that generates a parity of first data to be written to the memory; a parity adder that obtains a second data by adding the parity to the first data; an access-key register that holds an access key unique to a source of request for writing data to the memory or for reading data from the memory, the access key being set by the source of request and being used for accessing the memory;
a first operating unit that obtains a third data by calculating an XOR between the second data and the access key, the access key being set in the access-key register by the source of request for writing data to the memory;a writing unit that writes the third data to the memory; a second operating unit that obtains a fourth data by calculating an XOR between the access key and the third data, the access key being set in the access-key register by the source of request for reading data from the memory; a syndrome calculator that calculates a syndrome from the third data; and a determining unit that determines whether to output the third data as the first data, based on calculated syndrome. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system for protecting a memory, the system comprising:
-
a processor; a memory controller; and a memory protecting apparatus that protects an external memory, wherein the memory protecting apparatus includes a parity generator that generates a parity of first data to be written to the memory; a parity adder that obtains a second data by adding the parity to the first data; an access-key register that holds an access key unique to a source of request for writing data to the memory, the access key being set by the source of request and being used for accessing the memory or for reading data from the memory; a first operating unit that obtains a third data by calculating an XOR between the second data and the access key, the access key being set in the access-key register by the source of request for writing data to the memory; a writing unit that writes the third data to the memory; a second operating unit that obtains a fourth data by calculating an XOR between the access key and the third data, the access key being set in the access-key register by a source of request for reading data from the memory; a syndrome calculator that calculates a syndrome from the third data; and a determining unit that determines whether to output the third data as the first data, based on calculated syndrome.
-
-
12. A system for protecting a memory, the system comprising:
-
a memory controller; and a memory protecting apparatus that protects an external memory, wherein the memory protecting apparatus includes a parity generator that generates a parity of first data to be written to the memory; a parity adder that obtains a second data by adding the parity to the first data; an access-key register that holds an access key unique to a source of request for writing data to the memory or for reading data from the memory, the access key being set by the source of request and being used for accessing the memory; a first operating unit that obtains a third data by calculating an XOR between the second data and the access key, the access key being set in the access-key register by the source of request for writing data to the memory; a writing unit that writes the third data to the memory; a second operating unit that obtains a fourth data by calculating an XOR between the access key and the third data, the access key being set in the access-key register by a source of request for reading data from the memory; a syndrome calculator that calculates a syndrome from the third data; and a determining unit that determines whether to output the third data as the first data, based on calculated syndrome.
-
-
13. A system for protecting a memory, the system comprising:
-
a memory; and a memory protecting apparatus that protects the memory, wherein the memory protecting apparatus includes a parity generator that generates a parity of first data to be written to the memory; a parity adder that obtains a second data by adding the parity to the first data; an access-key register that holds an access key unique to a source of request for writing data to the memory or for reading data from the memory, the access key being set by the source of request and being used for accessing the memory; a first operating unit that obtains a third data by calculating an XOR between the second data and the access key, the access key being set in the access-key register by the source of request for writing data to the memory; a writing unit that writes the third data to the memory; a second operating unit that obtains a fourth data by calculating an XOR between the access key and the third data, the access key being set in the access-key register by a source of request for reading data from the memory; a syndrome calculator that calculates a syndrome from the third data; and a determining unit that determines whether to output the third data as the first data, based on calculated syndrome.
-
-
14. A method of protecting a memory, the method comprising:
-
generating a parity of first data to be written to the memory; obtaining a second data by adding the parity to the first data; setting an access key unique to a source of request for writing data to the memory or for reading data from the memory in an access-key register, the access key being set by the source of request and being used for accessing the memory; obtaining a third data by calculating an XOR between the second data and the access key, the access key being set in the access-key register by the source of request for writing data to the memory; writing the third data to the memory; obtaining a fourth data by calculating an XOR between the access key and the third data, the access key being set in the access-key register by the source of request for reading data from the memory; calculating a syndrome from the third data; and determining whether to output the third data as the first data, based on calculated syndrome. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification