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

Microcoded microprocessor with shared ram

Assignee: Hewlett Packard Development Co LP
•
Filing: 1987-03-27
•
Granted: 1989-04-25
•
Expires: 2007-03-27
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A processor system utilizing a single shared RAM array, for storing microcode and other function data, with the shared array coupled to the processor by a single shared ADR/DATA bus. In one embodiment, an onboard ROM stores selected lines of microcode and a ROM accessing system supplies microcode from the ROM when the shared RAM array is busy performing some other RAM function.

Inventors

  • 👤 Daniel E. Lenoski

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 07:33
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/22; G06F9/26; G06F9/262; G06F9/264; G06F9/226

Claims Analysis

Total Claims: 3
Claim 1
Independent Claim 329 words
In a digital system of the type that includes a processor for executing a program of macrocode instructions (macroinstructions), and a clock system for defining sequential clock cycles, where a given macroinstruction may require several clock cycles to execute and where the given macroinstruction is interpreted by an ordered sequence of microcode instructions (microinstructions) forming a microprogram, with the system also including a shared RAM array utilized to store the given macroinstruction, to store a given sequence of microinstructions for interpreting the given macroinstruction, and to perform other RAM functions such as accessing or updating a data cache, page table cache, or other types of tables of caches, a subsystem for accessing and executing the given sequence of microinstructions to interpret the given macroinstruction comprising: a read-only-memory (ROM), having an ADDRESS port, a DATA port, and a plurality of ROM storage locations and included in said processor, for storing selected ones of the microinstructions from the given sequence of microinstructions in a plurality of said ROM storage locations; means of accessing microinstructions in the given sequence of microinstructions from the shared RAM array to interpret the given macroinstruction during successive clock cycles when the shared RAM is not busy providing a macroinstruction or performing some other RAM function; means, responsive to a microinstruction accessed from said shared RAM array during a first given clock cycle, for generating an indication of whether said shared RAM array will be busy performing some other RAM function during a second given clock cycle subsequent to said first given clock cycle; and means, responsive to said indication, for accessing a given selected microinstruction from said ROM, during said second given clock cycle, if, during said second given clock cycle, the shared RAM is busy providing a macroinstruction or performing some other RAM function, with the given selected microinstruction being the microinstruction in the given sequence of microinstructions that otherwise would have been accessed from the shared RAM array during the second given clock cycle.
Claim 2
Dependent Claim 329 words
In a digital system of the type that includes a processor for executing a program of macrocode instructions (macroinstructions), and a clock system for defining sequential clock cycles, where a given macroinstruction may require several clock cycles to execute and where the given macroinstruction is interpreted by an ordered sequence of microcode instructions (microinstructions) forming a microprogram, with the system also including a shared RAM array utilized to store the given macroinstruction, to store a given sequence of microinstructions for interpreting the given macroinstruction, and to perform other RAM functions such as accessing or updating a data cache, page table cache, or other types of tables of caches, a subsystem for accessing and executing the given sequence of microinstructions to interpret the given macroinstruction comprising: a read-only-memory (ROM), having an ADDRESS port, a DATA port, and a plurality of ROM storage locations and included in said processor, for storing selected ones of the microinstructions from the given sequence of microinstructions in a plurality of said ROM storage locations; means of accessing microinstructions in the given sequence of microinstructions from the shared RAM array to interpret the given macroinstruction during successive clock cycles when the shared RAM is not busy providing a macroinstruction or performing some other RAM function; means, responsive to a microinstruction accessed from said shared RAM array during a first given clock cycle, for generating an indication of whether said shared RAM array will be busy performing some other RAM function during a second given clock cycle subsequent to said first given clock cycle; and means, responsive to said indication, for accessing a given selected microinstruction from said ROM, during said second given clock cycle, if, during said second given clock cycle, the shared RAM is busy providing a macroinstruction or performing some other RAM function, with the given selected microinstruction being the microinstruction in the given sequence of microinstructions that otherwise would have been accessed from the shared RAM array during the second given clock cycle.
Claim 3
Dependent Claim 150 words
The invention of claim 1 wherein said means for accessing further comprises: a RAM microinstruction bus for transmitting a preceding microinstruction provided by said shared RAM; a ROM microinstruction bus for transmitting a preceding microinstruction accessed from said ROM; a multiplexer (MUX) having first and second input ports coupled to said ROM and RAM microinstruction buses, respectively, having a control port, and having an output port; an output microinstruction bus, including a plurality of lines, coupled to the output port of said MUX; a link bus, coupled to a first selected plurality of lines of said output microinstruction bus and to the ADR port of said ROM, for transferring the link field to the ROM ADR port; and a control bus, coupled to a second plurality of lines of said microinstruction bus and to the control port of said MUX, for transferring the control field to the MUX control port.

References Cited (Backward Citations)

US3859636A Cited
US3886523A Cited
US4390946A Cited
US4586127A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1992-04-24 1992-10-24 1993-04-25 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1996-04-24 1996-10-24 1997-04-25 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2000-04-24 2000-10-24 2001-04-25 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag