Claims Analysis
Total Claims: 4
Claim 1
Independent Claim
429 words
A microcomputer that is operable in either an internal program mode, wherein the microcomputer functions in accordance with an internally stored program, or in an external program mode, wherein the microcomputer functions in accordance with a program stored in a memory external to the microcomputer, said microcomputer comprising an internal program memory for internally storing programs; a bus for connection to an external program memory for carrying programs from said external program memory; a nonsecure RAM for storing nonsecure data; a secure RAM for storing secure data; a central processing unit for processing data stored in said nonsecure RAM, data stored in said secure RAM and/or externally provided data either in accordance with said internally stored programs or in accordance with programs stored in said external program memory; and means coupled to the internal program memory, the bus, the RAMs and the central processing unit for controlling interconnections between the internal program memory, the bus, the RAMs and the central processing unit in accordance with the mode of operation of the microcomputer; wherein the controlling means includes means for inhibiting access to the secure RAM during said external program mode; means for inhibiting the central processing unit from responding to instructions within a program carried on the bus from the external program memory during said internal program mode; and means for branching the microcomputer to the external program mode in response to only instructions in a program stored in the internal program memory; wherein the internal program memory stores a program for causing the central processing unit to perform cryptographic operations upon data; wherein the secure RAM stores secure cryptographic key data required for performing said cryptographic operations; and wherein the external program memory stores a program for causing the microcomputer to perform the following sequence of routines: (a) placing in the nonsecure RAM the data upon which the cryptographic operations are to be performed; (b) branching the microcomputer to the internal program mode; (c) performance by the central processing unit in accordance with said stored internal program of said cryptographic operations on the data placed in the nonsecure RAM during routine (a) with said secure cryptographic key data stored in the secure RAM; and wherein said program for performing cryptographic operations stored in the internal program memory is adapted for causing the microcomputer to perform the following sequence of routines: (d) storing the results of said cryptographic operation in the nonsecure RAM; and (e) branching the microcomputer back to the external program mode to allow the results of said cryptographic operation to be accessed from the nonsecure RAM.
Claim 2
Dependent Claim
429 words
A microcomputer that is operable in either an internal program mode, wherein the microcomputer functions in accordance with an internally stored program, or in an external program mode, wherein the microcomputer functions in accordance with a program stored in a memory external to the microcomputer, said microcomputer comprising an internal program memory for internally storing programs; a bus for connection to an external program memory for carrying programs from said external program memory; a nonsecure RAM for storing nonsecure data; a secure RAM for storing secure data; a central processing unit for processing data stored in said nonsecure RAM, data stored in said secure RAM and/or externally provided data either in accordance with said internally stored programs or in accordance with programs stored in said external program memory; and means coupled to the internal program memory, the bus, the RAMs and the central processing unit for controlling interconnections between the internal program memory, the bus, the RAMs and the central processing unit in accordance with the mode of operation of the microcomputer; wherein the controlling means includes means for inhibiting access to the secure RAM during said external program mode; means for inhibiting the central processing unit from responding to instructions within a program carried on the bus from the external program memory during said internal program mode; and means for branching the microcomputer to the external program mode in response to only instructions in a program stored in the internal program memory; wherein the internal program memory stores a program for causing the central processing unit to perform cryptographic operations upon data; wherein the secure RAM stores secure cryptographic key data required for performing said cryptographic operations; and wherein the external program memory stores a program for causing the microcomputer to perform the following sequence of routines: (a) placing in the nonsecure RAM the data upon which the cryptographic operations are to be performed; (b) branching the microcomputer to the internal program mode; (c) performance by the central processing unit in accordance with said stored internal program of said cryptographic operations on the data placed in the nonsecure RAM during routine (a) with said secure cryptographic key data stored in the secure RAM; and wherein said program for performing cryptographic operations stored in the internal program memory is adapted for causing the microcomputer to perform the following sequence of routines: (d) storing the results of said cryptographic operation in the nonsecure RAM; and (e) branching the microcomputer back to the external program mode to allow the results of said cryptographic operation to be accessed from the nonsecure RAM.
Claim 3
Dependent Claim
362 words
A microcomputer that is operable in either an internal program mode, wherein the microcomputer functions in accordance with an internally stored program, or in an external program mode, wherein the microcomputer functions in accordance with a program stored in a memory external to the microcomputer, said microcomputer comprising an internal program memory internally storing a program for causing the central processing unit to perform cryptographic operations upon data; a bus for connection to an external program memory for carrying programs from said external program memory; a nonsecure RAM for storing nonsecure data; a secure RAM storing secure data, including secure cryptographic key data required for performing said cryptographic operations; a central processing unit for processing data stored in said nonsecure RAM, data stored in said secure RAM and/or externally provided data either in accordance with said internally stored programs or in accordance with programs stored in said external program memory; and means coupled to the internal program memory, the bus, the RAMs and the central processing unit for controlling interconnections between the internal program memory, the bus, the RAMs and the central processing unit in accordance with the mode of operation of the microcomputer; wherein the controlling means includes means for inhibiting access to the secure RAM during said external program mode; wherein the external program memory stores a program for causing the microcomputer to perform the following sequence of routines: (a) placing in the nonsecure RAM the data upon which the cryptographic operations are to be performed; (b) branching the microcomputer to the internal program mode; (c) performance by the central processing unit in accordance with said stored internal program of said cryptographic operations on the data placed in the nonsecure RAM during routine (a) with said secure cryptographic key data stored in the secure RAM; and wherein said program for performing cryptographic operations stored in the internal program memory is adapted for causing the microcomputer to perform the following sequence of routines: (d) storing the results of said cryptographic operation in the nonsecure RAM; and (e) branching the microcomputer back to the external program mode to allow the results of said cryptographic operation to be accessed from the nonsecure RAM.
Claim 4
Dependent Claim
362 words
A microcomputer that is operable in either an internal program mode, wherein the microcomputer functions in accordance with an internally stored program, or in an external program mode, wherein the microcomputer functions in accordance with a program stored in a memory external to the microcomputer, said microcomputer comprising an internal program memory internally storing a program for causing the central processing unit to perform cryptographic operations upon data; a bus for connection to an external program memory for carrying programs from said external program memory; a nonsecure RAM for storing nonsecure data; a secure RAM storing secure data, including secure cryptographic key data required for performing said cryptographic operations; a central processing unit for processing data stored in said nonsecure RAM, data stored in said secure RAM and/or externally provided data either in accordance with said internally stored programs or in accordance with programs stored in said external program memory; and means coupled to the internal program memory, the bus, the RAMs and the central processing unit for controlling interconnections between the internal program memory, the bus, the RAMs and the central processing unit in accordance with the mode of operation of the microcomputer; wherein the controlling means includes means for inhibiting access to the secure RAM during said external program mode; wherein the external program memory stores a program for causing the microcomputer to perform the following sequence of routines: (a) placing in the nonsecure RAM the data upon which the cryptographic operations are to be performed; (b) branching the microcomputer to the internal program mode; (c) performance by the central processing unit in accordance with said stored internal program of said cryptographic operations on the data placed in the nonsecure RAM during routine (a) with said secure cryptographic key data stored in the secure RAM; and wherein said program for performing cryptographic operations stored in the internal program memory is adapted for causing the microcomputer to perform the following sequence of routines: (d) storing the results of said cryptographic operation in the nonsecure RAM; and (e) branching the microcomputer back to the external program mode to allow the results of said cryptographic operation to be accessed from the nonsecure RAM.