Claims Analysis
Total Claims: 9
Claim 1
Independent Claim
523 words
A microcoded central processing unit (CPU) for emulating the macroinstructions of a target computer by splitting each macroinstruction into operand address derivation and instruction execution phases, the CPU including a main memory for storing the macroinstructions of the target computer, and an address/data bus for coupling the CPU to the main memory, some of the macroinstructions capable of referencing operand address locations, the CPU comprising: (a) a micromemory having an address space, comprising a plurality of micromemory units including at least a right, a middle, and a left micromemory unit with each memory unit separately addressed and each controlling separate CPU resources, for storing the microcoded instructions; (b) a first microcontroller associated with said right micromemory unit and responsive to the microcode stored therein, for generating the micromemory address of the next microcoded instruction to be output from said right micromemory unit, said first microcontroller associated with the operand address derivation phase of the macroinstruction; (c) a second microcontroller associated with said left micromemory unit and responsive to the microcode unit and responsive to the microcode stored therein, for generating the micromemory address of the next microcoded instruction to be output from said left micromemory unit, (i) said second microcontroller being associated with the execution phase of the macroinctruction, the micromemory address generated by either said first or second microcontroller capable of being used to address each said micromemory unit, including the middle micromemory unit whereby each said microcontroller may obtain control of the CPU resources associated with said middle micromemory unit when those resources are needed to perform the operations for its respective phase, and (ii) said right and left controllers capable of operating concurrently and in parallel during the operand address derivation and execution phases of each macroinstruction; (d) a plurality of address selection units each responsive to the microcode and to the addresses from said microcontrollers, and each addressing an associated one of said plurality of micromemory units, (i) for temporarily storing and outputting to its associated micromemory unit, a micromemory address from a selected one of said microcontroller, and (ii) for generating clocking signals to the CPU resources controlled by the microcode stored in its associated micromemory unit, and (iii) where selected ones of said address selection units are inhibited for a period of time from generating their clocking signals when the microcode from a micromemory unit requests CPU resources controlled by another micromemory unit and those resources are not available for use by the requesting microcode; (e) an op-code mapping means responsive to the macroinstructions, for mapping each macroinstruction into the micromemory address space at the starting addresses of microcoded routines which will control the operand address derivation and instruction execution phases for each macroinstruction; (f) a bus interface means responsive to the microcode, for coupling main memory and the peripherals to the CPU; and (g) first and second processing means respectively associated with said first and second microcontrollers and responsive to said bus interface means and to the microcode, each said processing unit including an arithmetic logic unit for performing logical operations on the digital signals of the CPU, whereby the emulation of the macroinstructions is obtained.
Claim 2
Dependent Claim
523 words
A microcoded central processing unit (CPU) for emulating the macroinstructions of a target computer by splitting each macroinstruction into operand address derivation and instruction execution phases, the CPU including a main memory for storing the macroinstructions of the target computer, and an address/data bus for coupling the CPU to the main memory, some of the macroinstructions capable of referencing operand address locations, the CPU comprising: (a) a micromemory having an address space, comprising a plurality of micromemory units including at least a right, a middle, and a left micromemory unit with each memory unit separately addressed and each controlling separate CPU resources, for storing the microcoded instructions; (b) a first microcontroller associated with said right micromemory unit and responsive to the microcode stored therein, for generating the micromemory address of the next microcoded instruction to be output from said right micromemory unit, said first microcontroller associated with the operand address derivation phase of the macroinstruction; (c) a second microcontroller associated with said left micromemory unit and responsive to the microcode unit and responsive to the microcode stored therein, for generating the micromemory address of the next microcoded instruction to be output from said left micromemory unit, (i) said second microcontroller being associated with the execution phase of the macroinctruction, the micromemory address generated by either said first or second microcontroller capable of being used to address each said micromemory unit, including the middle micromemory unit whereby each said microcontroller may obtain control of the CPU resources associated with said middle micromemory unit when those resources are needed to perform the operations for its respective phase, and (ii) said right and left controllers capable of operating concurrently and in parallel during the operand address derivation and execution phases of each macroinstruction; (d) a plurality of address selection units each responsive to the microcode and to the addresses from said microcontrollers, and each addressing an associated one of said plurality of micromemory units, (i) for temporarily storing and outputting to its associated micromemory unit, a micromemory address from a selected one of said microcontroller, and (ii) for generating clocking signals to the CPU resources controlled by the microcode stored in its associated micromemory unit, and (iii) where selected ones of said address selection units are inhibited for a period of time from generating their clocking signals when the microcode from a micromemory unit requests CPU resources controlled by another micromemory unit and those resources are not available for use by the requesting microcode; (e) an op-code mapping means responsive to the macroinstructions, for mapping each macroinstruction into the micromemory address space at the starting addresses of microcoded routines which will control the operand address derivation and instruction execution phases for each macroinstruction; (f) a bus interface means responsive to the microcode, for coupling main memory and the peripherals to the CPU; and (g) first and second processing means respectively associated with said first and second microcontrollers and responsive to said bus interface means and to the microcode, each said processing unit including an arithmetic logic unit for performing logical operations on the digital signals of the CPU, whereby the emulation of the macroinstructions is obtained.
Claim 3
Dependent Claim
308 words
A microcoded computer emulator for executing instructions of a target computer where the instructions are stored in a memory and each instruction is capable of referencing an operand address location, comprising: (a) a micromemory including a right, a middle and a left micromemory unit for storing microcode which controls the resource circuits of the emulator, (i) each said micromemory unit controlling separate emulator resources and each responsive to a separate micromemory address, (ii) the emulator executing each instruction by dividing each instruction into an operand address derivation phase and an instruction execution phase, and (iii) where said left micromemory unit is associated with the execution phase and said right micromemory unit is associated with the operand address derivation phase, with said middle micromemory unit providing shared microcode therebetween; (b) a pair of microcontrollers, one associated with the operand address derivation phase and one associated with the instruction execution phase, and each responsive to said microcode for generating the next micromemory address for each micromemory unit; (c) a plurality of address selection units each responsive to the microcode and to the micromemory address from said microcontrollers, and each addressing an associated one of said micromemory units, for temporarily storing and outputting to its associated micromemory unit, a micromemory address from either one of said microcontrollers whereby each said microcontroller may obtain control of the emulator resource circuits associated with said middle micromemory unit when those resources are needed to perform the operations for its respective phase; (d) an op-code mapping means responsive to the instructions, for mapping each instruction into said micromemory at the starting addresses of microcoded routines which will control the operand address derivation and instruction execution phases for each instruction; and (e) a processing means responsive to the microcode for performing the logical operations required in each phase to emulate the instructions of the target computer.
Claim 4
Dependent Claim
308 words
A microcoded computer emulator for executing instructions of a target computer where the instructions are stored in a memory and each instruction is capable of referencing an operand address location, comprising: (a) a micromemory including a right, a middle and a left micromemory unit for storing microcode which controls the resource circuits of the emulator, (i) each said micromemory unit controlling separate emulator resources and each responsive to a separate micromemory address, (ii) the emulator executing each instruction by dividing each instruction into an operand address derivation phase and an instruction execution phase, and (iii) where said left micromemory unit is associated with the execution phase and said right micromemory unit is associated with the operand address derivation phase, with said middle micromemory unit providing shared microcode therebetween; (b) a pair of microcontrollers, one associated with the operand address derivation phase and one associated with the instruction execution phase, and each responsive to said microcode for generating the next micromemory address for each micromemory unit; (c) a plurality of address selection units each responsive to the microcode and to the micromemory address from said microcontrollers, and each addressing an associated one of said micromemory units, for temporarily storing and outputting to its associated micromemory unit, a micromemory address from either one of said microcontrollers whereby each said microcontroller may obtain control of the emulator resource circuits associated with said middle micromemory unit when those resources are needed to perform the operations for its respective phase; (d) an op-code mapping means responsive to the instructions, for mapping each instruction into said micromemory at the starting addresses of microcoded routines which will control the operand address derivation and instruction execution phases for each instruction; and (e) a processing means responsive to the microcode for performing the logical operations required in each phase to emulate the instructions of the target computer.
Claim 5
Dependent Claim
41 words
The computer emulator of claim 2 wherein each said microcontroller may obtain control of the entire resources of the emulator to the exclusion of the other microcontroller when those resources are required to carry out the operations of its respective phase.
Claim 6
Dependent Claim
84 words
The computer emulator of claim 3 wherein each said address selection unit includes means for generating clocking signals to the emulator resource circuits controlled by the associated said micromemory unit, and where each of said address selection units is inhibited from generating its clocking signals when the microcode from its associated micromemory unit requests emulator resources being controlled by another micromemory unit and those resources are not available for use by the requesting microcode, the requesting microcontroller obtaining control when the resources are available.
Claim 7
Dependent Claim
28 words
The computer emulator of claims 2 or 4 wherein said microcontrollers operate independently and in parallel during the operand address derivation and instruction execution phases of each macroinstruction.
Claim 8
Dependent Claim
50 words
The computer emulator of claim 2 wherein said processing means includes a pair of general processing units, one associated with each said microcontroller and each including an arithmetic logic unit for performing the logical operations upon the digital data signals of the instructions and the digital signals of the emulator.
Claim 9
Dependent Claim
28 words
The computer emulator of claim 5 further including a data bus interface means responsive to the microcode for coupling the memory to the resource circuits of the emulator.