Software security method using partial fabrication of proprietary control word decoders and microinstruction memories
First Claim
1. For microcomputer systems which include a program memory and a microprocessor having executing means for executing sets of microinstructions, said executing means including a microinstruction memory for storing sets of microinstructions and an instruction decoder means for converting a control word to a microinstruction memory address, each set of microinstructions being assigned a publicly known OP code, and each set being activated in response to a related control word, the method of securing from unauthorized copying of a program stored in the program memory as a sequence of instructions wherein each instruction includes a control word, said method comprising the steps ofdefining a set of proprietary control words wherein each control is assigned a distinct publicly known OP code and its set of microinstructions,initially partially fabricating the microprocessors including their microinstruction memories such that each microinstruction set starts at a known address, said partially initially fabricating step, including an incomplete fabrication of the instruction decoder means,finishing the fabricating by completely fabricating the instruction decoder means such that each proprietary control word received by an instruction decoder means is converted to the address of the microinstruction memory which stores the first microinstruction of the set of microinstructions assigned to such received proprietary control word, andrecording the program to be protected in the program memories wherein each instruction includes the proprietary control word assigned to a desired set of microinstructions.
4 Assignments
0 Petitions
Accused Products
Abstract
For a microcomputer system including a program memory and a microprocessor having means for executing sets of microinstructions which includes an instruction decoder and a microinstruction memory for storing the sets of microinstructions wherein each set of microinstructions is associated with a publicly known OP code, and wherein each set being activated in response to a related control word there is disclosed a method for securing from unauthorized copying a program stored in the program memory consisting of instruction words, with each instruction word including a control word wherein each of the instruction words is stored in a program memory external to the microprocessor. The method includes the steps of defining a set of proprietary control words wherein each proprietary control word is associated with a distinct publicly known OP code and its set of microinstructions of recording the program to be protected in the program memory with each instruction word including the proprietary control word associated with a desired set of microinstructions, and of fabricating the instruction decoder means and the microinstruction memory of the microprocessor so that each received proprietary control word is converted to the address of the microinstruction memory which stores the first microinstruction of the set of microinstructions associated with such received proprietary control word.
-
Citations
4 Claims
-
1. For microcomputer systems which include a program memory and a microprocessor having executing means for executing sets of microinstructions, said executing means including a microinstruction memory for storing sets of microinstructions and an instruction decoder means for converting a control word to a microinstruction memory address, each set of microinstructions being assigned a publicly known OP code, and each set being activated in response to a related control word, the method of securing from unauthorized copying of a program stored in the program memory as a sequence of instructions wherein each instruction includes a control word, said method comprising the steps of
defining a set of proprietary control words wherein each control is assigned a distinct publicly known OP code and its set of microinstructions, initially partially fabricating the microprocessors including their microinstruction memories such that each microinstruction set starts at a known address, said partially initially fabricating step, including an incomplete fabrication of the instruction decoder means, finishing the fabricating by completely fabricating the instruction decoder means such that each proprietary control word received by an instruction decoder means is converted to the address of the microinstruction memory which stores the first microinstruction of the set of microinstructions assigned to such received proprietary control word, and recording the program to be protected in the program memories wherein each instruction includes the proprietary control word assigned to a desired set of microinstructions.
-
2. For microcomputer systems which include a program memory and a microprocessor having executing means for executing sets of microinstructions, said executing means including a microinstruction memory for storing sets of microinstructions and an instruction decoder means for converting a control word to a microinstruction memory address assigned to a publicly known OP code, and each set being activated in response to a related control word, the method of securing from unauthorized copying a program stored in the program memory as a sequence of instructions, each instruction including a control word, said method comprising the steps of
defining a set of proprietary control words wherein each proprietary control word is assigned to a distinct publicly known OP code and its set of microinstructions, initially fabricating the microprocessors except for their microinstruction memories but including their instruction decoder means, said instruction decoder means being fabricated to generate a unique microinstruction address for each received control word, finishing fabrication including the fabrication of the microinstruction memories in such a way that the first microinstruction of a set of microinstructions related to a proprietary control word is stored in the address generated by an instruction decoder means in response to the receipt of said proprietary control word, and recording the program to be protected in the program memories wherein each instruction includes the proprietary control word associated with a desired set of microinstructions.
Specification