← Back to Patent Explorer
US5274829A Expired / Lapsed US ⏱️ 0.0 years remaining

Information processing apparatus having micro instructions stored both in on-chip ROM and off-chip memory

Assignee: Hitachi Ltd
•
Filing: 1987-10-28
•
Granted: 1993-12-28
•
Expires: 2007-10-28
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A data processing apparatus which allows a large number of micro instructions to be read at high speeds by storing frequently used micro instructions in the on-chip ROM and those less frequently used in the off-chip memory. From the address of the micro instruction to be accessed, it is determined whether the micro instruction is stored in the on-chip ROM or the off-chip memory, and the micro instruction is accessed on the basis of this determination. A cache memory may also be provided on the chip for providing high speed repeat access to micro instructions stored in the off-chip memory.

Inventors

  • 👤 Takashi Hotta
  • 👤 Yasuhiro Nakatsuka
  • 👤 Tadaaki Bandoh
  • 👤 Hideo Maejima

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 00:01
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/22; G06F9/26; G06F9/262; G06F9/268; G06F9/30; G06F9/32; G06F9/322; G06F9/328

Claims Analysis

Total Claims: 11
Claim 1
Independent Claim 415 words
An information processing apparatus comprising: a memory; an address bus coupled to said memory for carrying an address to the memory; a data bus coupled to said memory for carrying data to and from the memory; a fetch pointer connected to the address bus for holding an address of a macro instruction to be read out from the memory; a memory address register (MAR) connected to the access bus for holding an address of an operand to be written into or read from the memory; an instruction buffer connected to the data bus for storing a macro instruction read from the memory; a memory data register (MDR) connected to the data bus for holding an operand to be written into or read from the memory; a micro instruction pointer connected to said address bus for holding a memory address converted from a micro instruction address; a computation unit controlled by a micro instruction for performing a calculation; a micro instruction control unit including a sub micro instruction register (SMIR) connected to the data bus for holding a micro instruction; a micro instruction address register (MIAR) for holding a micro instruction address; a ROM storing a part of a plurality of micro instructions with the remaining part of said plurality of micro instructions being stored in the memory, the ROM being connected to said micro instruction address register and to said sub micro instruction register; next address determining means coupled to said sub micro instruction register for decoding the field of a micro instruction which specifies a next micro instruction of a sequence of micro instructions, and for generating and sending a next micro instruction address to said micro instruction address register; means for detecting from the address of a desired micro instruction stored in said MIAR that the desired micro instruction is not present in the ROM; means for converting the address of a desired micro instruction into a memory address for accessing a storage location in the memory and transferring the memory address to the micro instruction pointer; means for inhibiting micro instruction reading from the ROM, for reading a desired microinstruction from the memory and for storing the read micro instruction in said sub micro instruction register in response to said detecting means; and a memory control unit connected to said fetch pointer, said memory address register, said micro instruction pointer and said micro instruction control unit for controlling the transfer of macro instruction, micro instruction and operand addresses on said address bus.
Claim 2
Dependent Claim 415 words
An information processing apparatus comprising: a memory; an address bus coupled to said memory for carrying an address to the memory; a data bus coupled to said memory for carrying data to and from the memory; a fetch pointer connected to the address bus for holding an address of a macro instruction to be read out from the memory; a memory address register (MAR) connected to the access bus for holding an address of an operand to be written into or read from the memory; an instruction buffer connected to the data bus for storing a macro instruction read from the memory; a memory data register (MDR) connected to the data bus for holding an operand to be written into or read from the memory; a micro instruction pointer connected to said address bus for holding a memory address converted from a micro instruction address; a computation unit controlled by a micro instruction for performing a calculation; a micro instruction control unit including a sub micro instruction register (SMIR) connected to the data bus for holding a micro instruction; a micro instruction address register (MIAR) for holding a micro instruction address; a ROM storing a part of a plurality of micro instructions with the remaining part of said plurality of micro instructions being stored in the memory, the ROM being connected to said micro instruction address register and to said sub micro instruction register; next address determining means coupled to said sub micro instruction register for decoding the field of a micro instruction which specifies a next micro instruction of a sequence of micro instructions, and for generating and sending a next micro instruction address to said micro instruction address register; means for detecting from the address of a desired micro instruction stored in said MIAR that the desired micro instruction is not present in the ROM; means for converting the address of a desired micro instruction into a memory address for accessing a storage location in the memory and transferring the memory address to the micro instruction pointer; means for inhibiting micro instruction reading from the ROM, for reading a desired microinstruction from the memory and for storing the read micro instruction in said sub micro instruction register in response to said detecting means; and a memory control unit connected to said fetch pointer, said memory address register, said micro instruction pointer and said micro instruction control unit for controlling the transfer of macro instruction, micro instruction and operand addresses on said address bus.
Claim 3
Dependent Claim 38 words
An information processing apparatus, as set forth in claim 1, wherein the detecting means comprises means for checking several high order bits of a micro instruction address to determine whether the desired micro instruction is in said ROM.
Claim 4
Dependent Claim 91 words
An information processing apparatus, as set forth in claim 1, wherein the detecting means is comprised of one or more registers holding addresses of micro instructions that are stored invalidly in the ROM and validly in said memory; means for comparing an address of a desired micro instruction with the contents of these registers and for detecting whether there is at least one register having contents that agree with the address of the desired micro instruction and means for actuating said inhibiting means when agreement is detected by said comparing means.
Claim 5
Dependent Claim 49 words
An information processing apparatus, as set forth in claim 1, wherein the converting means includes means for combining high-order bits held in a base register and representing a micro instruction memory area and lower-order bits in a micro instruction to obtain the memory address of the desired micro instruction.
Claim 6
Dependent Claim 328 words
An information processing apparatus, comprising: a microprocessor formed on a single semiconductor chip and including a ROM storing a plurality of micro instructions; and a semiconductor memory in the form of an external memory connected to said microprocessor and storing data in the form of operands, macro instructions and micro instructions which are accessed at a lower rate that micro instructions stored in said ROM of said microprocessor; said microprocessor further comprising: (a) first access means for applying to said ROM an address of a desired micro instruction specified by a macro instruction to access said ROM to read out said desired micro instruction; (b) second access means for applying to said semiconductor memory said address of said desired micro instruction to access said semiconductor memory to read out said desired micro instruction; (c) detecting means, including a plurality of registers which each store a ROM address of a respective micro instruction which is stored both in said ROM and said semiconductor memory, and comparison means for comparing a micro instruction address stored by each of said registers with said address of said desired micro instruction and for producing a coincidence signal when two addresses agree, for detecting whether said desired micro instruction is stored only in said ROM, only in said semiconductor memory or both in said ROM and said semiconductor memory; (d) calculation processing means for performing a calculation according to a micro instruction read out by said first or second access means; and (e) means responsive to said detecting means for supplying a micro instruction read out by said first access means to said calculation processing means when said detecting means detects that said micro instruction is stored only in said ROM, and for supplying a micro instruction read out by said second access means to said calculation processing means when said detecting means detects that said micro instruction is stored only in said semiconductor memory or both in said semiconductor memory and said ROM.
Claim 7
Dependent Claim 328 words
An information processing apparatus, comprising: a microprocessor formed on a single semiconductor chip and including a ROM storing a plurality of micro instructions; and a semiconductor memory in the form of an external memory connected to said microprocessor and storing data in the form of operands, macro instructions and micro instructions which are accessed at a lower rate that micro instructions stored in said ROM of said microprocessor; said microprocessor further comprising: (a) first access means for applying to said ROM an address of a desired micro instruction specified by a macro instruction to access said ROM to read out said desired micro instruction; (b) second access means for applying to said semiconductor memory said address of said desired micro instruction to access said semiconductor memory to read out said desired micro instruction; (c) detecting means, including a plurality of registers which each store a ROM address of a respective micro instruction which is stored both in said ROM and said semiconductor memory, and comparison means for comparing a micro instruction address stored by each of said registers with said address of said desired micro instruction and for producing a coincidence signal when two addresses agree, for detecting whether said desired micro instruction is stored only in said ROM, only in said semiconductor memory or both in said ROM and said semiconductor memory; (d) calculation processing means for performing a calculation according to a micro instruction read out by said first or second access means; and (e) means responsive to said detecting means for supplying a micro instruction read out by said first access means to said calculation processing means when said detecting means detects that said micro instruction is stored only in said ROM, and for supplying a micro instruction read out by said second access means to said calculation processing means when said detecting means detects that said micro instruction is stored only in said semiconductor memory or both in said semiconductor memory and said ROM.
Claim 8
Dependent Claim 47 words
An information processing apparatus according to claim 5, wherein said detecting means further includes means for checking several high-order bits of said address of said desired micro instruction to determine whether said desired micro instruction is stored only in said ROM or only in said semiconductor memory.
Claim 9
Dependent Claim 35 words
An information processing apparatus according to claim 5, wherein said semiconductor memory stores micro instructions which are accessed at a low frequency and said ROM stores micro instructions which are accessed at a high frequency.
Claim 10
Dependent Claim 50 words
An information processing apparatus according to claim 5, wherein said microprocessor further comprises an instruction cache memory for storing a portion of the micro instructions and macro instructions stored in said semiconductor memory, and further access means for accessing said instruction cache memory to read out micro instructions stored therein.
Claim 11
Dependent Claim 51 words
An information processing apparatus according to claim 8, wherein, in the case of a conflict by a micro instruction read out operation and a macro instruction read out operation by said further access means, priority is given to the micro instruction read out operation over the macro instruction read out operation.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1996-12-27 1997-06-28 1997-12-28 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2000-12-27 2001-06-28 2001-12-28 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2004-12-27 2005-06-28 2005-12-28 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag