Processor having compression and encryption circuitry
First Claim
1. A data processor comprising:
- processor bus;
bus interface unit, connected on a first side to the processor bus and on a second side to a system bus, that retrieves executable code that has been encrypted and compressed from storage over the system bus;
decompression circuitry coupled to the processor bus that receives and decompresses the executable code that has been encrypted and compressed to produce executable code that has been encrypted;
decryption circuitry coupled to the processor bus that receives and decrypts the executable code that has been encrypted to produce executable code that has been decompressed and decrypted; and
at least one execution unit coupled to the processor bus that retrieves and executes the executable code that has been decompressed and decrypted.
3 Assignments
0 Petitions
Accused Products
Abstract
A data processing system (100) includes a data processor or CPU (102) having decompression circuitry (208, 212) and decryption circuitry (210, 214) that operates on compressed/encrypted data to produce decompressed and decrypted data. The data processing system includes memory (104) in which instructions and data are stored in a compressed (110) and/or encrypted (114) format. The CPU (102) retrieves the compressed/encrypted data over a system bus (106). A bus interface unit (200) within the CPU (102) receives the compressed/encrypted data, decompresses and decrypts the data and stores the data in cache memory (202). An execution unit (204) and other components within the CPU (102) retrieve the decompressed and decrypted data and operate upon it. Alternatively, upon retrieval of compressed/encrypted data from memory (104) the data is stored in cache memory (202) in its compressed/encrypted format. Upon retrieval by the execution unit (204), the data is decompressed and decrypted in preparation for execution by the execution unit (204). A data processing system (400) of the present invention requires that the CPU (402) decrypt encrypted data. Thus, any devices accessing data in the system (400) over a network (426) without decryption by the CPU (402) retrieve encrypted data that cannot otherwise be decrypted.
275 Citations
18 Claims
-
1. A data processor comprising:
-
processor bus; bus interface unit, connected on a first side to the processor bus and on a second side to a system bus, that retrieves executable code that has been encrypted and compressed from storage over the system bus; decompression circuitry coupled to the processor bus that receives and decompresses the executable code that has been encrypted and compressed to produce executable code that has been encrypted; decryption circuitry coupled to the processor bus that receives and decrypts the executable code that has been encrypted to produce executable code that has been decompressed and decrypted; and at least one execution unit coupled to the processor bus that retrieves and executes the executable code that has been decompressed and decrypted. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A data processor comprising:
-
processor bus; bus interface unit, connected on a first side to the processor bus and on a second side to a system bus, that retrieves executable code that has been compressed and encrypted from storage over the system bus;
decryption circuitry coupled to the processor bus that receives and decrypts the executable code that has been compressed and encrypted to produce executable code that has been compressed;decompression circuitry coupled to the processor bus that receives and decompresses the executable code that has been compressed to produce executable code that has been decrypted and decompressed; and at least one execution unit coupled to the processor bus that retrieves and executes the executable code that has been decrypted and decompressed. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method of receiving and processing executable code in a processor including internal decompression circuitry, internal decryption circuitry and internal execution circuitry, comprising:
-
receiving executable code that has been encrypted and compressed into the processor; decompressing within the processor, by the decompression circuitry, the executable code that has been encrypted and compressed to obtain executable code that has been encrypted; decrypting within the processor, by the decryption circuitry, the executable code that has been encrypted to obtain decompressed and decrypted executable code; and executing, by the execution circuitry, the decompressed and decrypted executable code within the processor. - View Dependent Claims (14, 15)
-
-
16. A method of receiving and processing executable code in a processor including internal decryption circuitry, internal decompression circuitry and internal execution circuitry, comprising:
-
receiving executable code that has been compressed and encrypted into the processor; decrypting, by the decryption circuitry, the executable code that has been compressed and encrypted within the processor to obtain executable code that has been compressed; decompressing, by the decompression circuitry, the executable code that has been compressed to obtain executable code; and executing, by the execution circuitry, the executable code within the processor. - View Dependent Claims (17, 18)
-
Specification