US4455604A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Digital data processing system having addressing means for translating operands into descriptors identifying data, plural multilevel microcode control means, and ability to execute a plurality of internal language dialects
Assignee: EMC Corp
•
Filing: 1981-05-22
•
Granted: 1984-06-19
•
Expires: 2001-05-22
Abstract
Abstract The processor of the present invention executes procedures, which comprise S-language instructions and names. S-languages are of higher order than typical machine languages and can be tailored to user high-order languages. Each procedure includes a dialect code which the processor interprets, enabling it to execute any of a plurality of dialects of S-languages. The processor includes means for resolving names into operand logical addresses. The processor possosses multiple levels of microcode control means, each with its own set of stacks.
Inventors
- 👤 John K. Ahlstrom
- 👤 Brett Bachman
- 👤 Richard A. Belgard
- 👤 David H. Bernstein
- 👤 Richard G. Bratt
- 👤 Ronald H. Gruner
- 👤 Thomas M. Jones
- 👤 Lawrence H. Katz
- 👤 Craig J. Mundie
- 👤 Michael S. Richmond
- 👤 Stephen I. Schleimer
- 👤 Steven J. Wallach
- 👤 Walter A. Wallach, Jr
- 👤 Douglas M. Well
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-24 17:08
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/44; G06F9/448; G06F9/4488
Claims Analysis
Total Claims: 36
Claim 1
Independent Claim
362 words
In a digital computer system including processor means for performing operations on operands, memory means for storing said operands and procedures, said procedures including instructions for controlling said operations and names referring to said operands, bus means for conducting at least said instructions between said memory means and said processor means, and I/O means for conducting at least said operands between devices external to said digital computer system and said processor means, said processor means comprising: first microcode means responsive to said instructions and connected from said bus means comprising means for storing first sequences of microinstructions and means employing said first sequences of microinstructions for controlling at least said operations of said processor means as directed by said instructions, at least one sequence of microinstructions of said first sequences of microinstructions corresponding to each one of said instructions and said instructions being S-language instructions having a uniform, fixed format, and second microcode means responsive to the operation of said processor means and connected from said bus means comprising means for storing second sequences of microinstructions and means employing said second sequences of microinstructions for controlling internal operations of at least said processor means, and means responsive to said procedures for addressing said operands, including: name table means for storing name table entries, each one of said name table entries corresponding to one of said names associated with one of said instructions included in one of said procedures and said each one of said name table entries comprising (1) first data resolvable to provide a location in said memory means of one of said operands referred to by said corresponding one of said names, and, (2) second data identifying the format of said operand referred to by said corresponding one of said names, means connected from said bus means and responsive to said names for reading said name table entries corresponding to said names from said name table means, and means connected from said reading means for resolving each one of said name table entries for providing outputs to said memory means representing said locations in said memory means of said operands referred to by said names read from said memory means.
Claim 2
Dependent Claim
362 words
In a digital computer system including processor means for performing operations on operands, memory means for storing said operands and procedures, said procedures including instructions for controlling said operations and names referring to said operands, bus means for conducting at least said instructions between said memory means and said processor means, and I/O means for conducting at least said operands between devices external to said digital computer system and said processor means, said processor means comprising: first microcode means responsive to said instructions and connected from said bus means comprising means for storing first sequences of microinstructions and means employing said first sequences of microinstructions for controlling at least said operations of said processor means as directed by said instructions, at least one sequence of microinstructions of said first sequences of microinstructions corresponding to each one of said instructions and said instructions being S-language instructions having a uniform, fixed format, and second microcode means responsive to the operation of said processor means and connected from said bus means comprising means for storing second sequences of microinstructions and means employing said second sequences of microinstructions for controlling internal operations of at least said processor means, and means responsive to said procedures for addressing said operands, including: name table means for storing name table entries, each one of said name table entries corresponding to one of said names associated with one of said instructions included in one of said procedures and said each one of said name table entries comprising (1) first data resolvable to provide a location in said memory means of one of said operands referred to by said corresponding one of said names, and, (2) second data identifying the format of said operand referred to by said corresponding one of said names, means connected from said bus means and responsive to said names for reading said name table entries corresponding to said names from said name table means, and means connected from said reading means for resolving each one of said name table entries for providing outputs to said memory means representing said locations in said memory means of said operands referred to by said names read from said memory means.
Claim 3
Dependent Claim
47 words
The digital computer system of claim 1, wherein said processor means further comprises: monitor microcode means responsive to said processor means comprising means for storing sequences of monitor microinstructions and means employing said sequences of monitor microinstructions for controlling monitor operations of at least said processor means.
Claim 4
Dependent Claim
53 words
The digital computer system of claim 1, wherein: said instructions are S-Language instructions written in an S-Language dialect of a plurality of S-Language dialects, and said first sequences of microinstructions include at least one sequence of microinstructions corresponding to each of said instructions for each S-Language dialect of said plurality of S-Language dialects.
Claim 5
Dependent Claim
57 words
The digital computer system of claim 1, wherein said processor means further comprises: processor microinstructions stack means connected to said processor means and responsive to at least operation of said processor means for storing at least one microinstruction stack frame for storing a state of execution of a microinstruction of said first or second sequences of microinstructions.
Claim 6
Dependent Claim
110 words
The digital computer of claim 4, wherein said memory means further comprises: memory microinstruction stack means for storing a plurality of microinstruction stack frames, each one of said plurality of said microinstruction stack frames for storing a state of execution of a microinstruction of said first or second sequences of microinstructions, and said processor microinstruction stack means further comprises microinstruction stack control means responsive at least said operation of said processor means for providing stack control signals to said processor microinstructions stack means and to said memory microinstruction stack means for controlling transfer of said microinstruction stack frames between said processor microinstruction stack means and said memory microinstruction stack means.
Claim 7
Dependent Claim
16 words
The digital computer system of claim 1, wherein each of said names is of uniform format.
Claim 8
Dependent Claim
117 words
The digital computer system of claim 1, wherein: each said procedure further includes a name table pointer representing a base location in said memory means, and said first data of said each one of said name table entries of said procedure is resolvable to provide a said location in said memory means relative to said name table pointer of one of said operands referred to by one of said corresponding one of said names of procedure, and said resolving means further comprises base register means connected from said bus means and having outputs to said resolving means for storing said name table pointer of one of said procedure presently controlling said operations performed by said processor means.
Claim 9
Dependent Claim
92 words
The digital computer system of claim 8, wherein said processor means further comprises: name cache means connected from outputs of said resolving means and having outputs to said memory means for storing said resolving means outputs representing said locations in said memory means of said operands, said name cache means connected from said reading means and responsive to said names to provide name cache outputs to said memory means representing said locations in said memory means of certain said operands for which said name cache means has stored said resolving means outputs.
Claim 10
Dependent Claim
68 words
The digital computer system of claims 1 or 2 or 3, wherein said processor means further comprises: arithmetic means connected from said bus means for performing arithmetic operations on said operands, and arithmetic microcode means responsive to the operation of said processor means comprising means for storing sequences of arithmetic microinstructions and means employing said sequences of arithmetic instructions for controlling at least operation of said arithmetic means.
Claim 11
Dependent Claim
49 words
The digital computer system of claim 9, wherein said processor means further comprises: processor arithmetic stack means connected from said arithmetic means and responsive to operation of at least said arithmetic means for storing at least one arithmetic stack frame for storing state of execution of an arithmetic microinstruction.
Claim 12
Dependent Claim
104 words
The digital computer system of claim 10, wherein said memory means further comprises: memory arithmetic stack means for storing a plurality of arithmetic stack frames, each one of said plurality of microinstruction stack frames for storing a state of execution of a said arithmetic microinstruction, and said processor arithmetic stack means further comprises arithmetic stack control means responsive to at least said operation of said arithmetic means for providing control signals to said processor arithmetic stack means and to said memory arithmetic stack means for controlling transfer of said arithmetic stack frames between said processor arithmetic stack means and said memory arithmetic stack means.
Claim 13
Dependent Claim
42 words
The digital computer system of claim 9, wherein said memory means further comprises: instruction stack means responsive to operation of at least said processor means for storing at least one instruction stack frame for storing a state of execution of an instruction.
Claim 14
Dependent Claim
201 words
The digital computer system of claim 1, wherein each one of said S-Language instructions is written in an S-Language dialect of a plurality of S-Language dialects, and wherein said processor means includes receiving means for receiving a current one of said s-language instructions, said receiving means further comprises dialect code means for storing a dialect code of a plurality of dialect codes, each said dialect code of said plurality of dialect codes corresponding to an S-Language dialect of said plurality of S-Language dialects, and a present said dialect code of said plurality of dialect codes representing which S-Language dialect of said plurality of S-Language dialects a present S-Language instruction is written in, said sequences of microinstructions include a set of sequences of microinstructions corresponding to each said S-Language dialect of said plurality of S-Language dialects, each set of sequences of microinstructions including at least one sequence of microinstructions corresponding to each said S-Language instruction in a said corresponding S-Language dialect, and said microcode control means is responsive to each said present dialect code and to each said present S-Language instruction to provide to said processor means said at least one sequence of microinstructions corresponding to said each said present S-Language instruction.
Claim 15
Dependent Claim
131 words
The digital computer system of claim 13, wherein said microcode control means further comprises: control store means for storing said sequences of microinstructions for controlling said ALU means, and dispatch table means for storing addresses corresponding to locations in said control store means of each sequence of microinstructions of each said set of microinstruction sequences, said dispatch table means responsive to said each said present dialect code and to said each said present instruction to provide to said control store means each said address corresponding to said at least one microinstruction sequence corresponding to said each said present S-Language instructions, and said control store means responsive to said each said address to provide to said processor means said at least one microinstruction sequence corresponding to said each said present S-Language instruction.
Claim 16
Dependent Claim
66 words
The digital computer system of claim 14, wherein said control store means further comprises: writable control store means connected from said bus means for storing said sequences of microinstructions, and said dispatch table means further comprising write address means responsive to operation of said processor means for generating write addresses, said writable control store means responsive to said write addresses for storing said sequences of microinstructions.
Claim 17
Dependent Claim
64 words
The digital computer system of claims 1 or 13 or 14, wherein said receiving means further comprises: instruction register means connected from said bus means for storing at least one said S-Language instruction, and parsing means connected from said instruction register means for detecting said S-Language instructions stored in said instruction register means and for providing said S-Language instructions to said microcode control means.
Claim 18
Dependent Claim
99 words
The digital computer system of claims 1 or 13, wherein said microcode control means further comprises: writable control store means connected from said bus means for storing said sequences of microinstructions, and control store addressing means responsive to said each of said S-Language instructions and to operation of said processor means for generating corresponding control store read and write addresses, said writable control store means responsive to each of said corresponding read addresses to provide said corresponding at least one sequence of microinstructions to said processor means, and responsive to said write addresses to store said sequences of microinstructions.
Claim 19
Dependent Claim
352 words
In a digital computer system including processor means for performing operations on operands, memory means for storing said operands and procedures, said procedures including instructions for controlling said operations and names referring to said operands, bus means for conducting at least said instructions between said memory means and said processor means, and I/O means for conducting at least said operands between devices external to said digital computer system and said processor means, said processor means comprising: first microcode means responsive to said instructions and connected from said bus means comprising means for storing first sequences of microinstructions and means employing said first sequences of microinstructions for controlling at least said operations of said processor means as directed by said instructions, at least one sequence of microinstructions of said first sequences of microinstructions corresponding to each one of said instructions and said instructions being S-language instructions having a uniform, fixed format, and monitor microcode means responsive to operation of said processor and including means for storing sequences of monitor microinstructions and means employing said sequences of monitor microinstructions for controlling monitor system operations of at least said processor means, and means for addressing said operands, including: name table means for storing name table entries, each one of said name table entries corresponding to one of said names associated with one of said instructions included in one of said procedures and said each one of said name table entries comprising (1) first data resolvable to provide a location in said memory means of one of said operands referred to by said corresponding one of said names, and, (2) second data identifying the format of said operand referred to by said corresponding one of said names, means connected from said bus means and responsive to said names for reading said name table entries corresponding to said names from said name table means, and means connected from said reading means for resolving each one of said name table entries for providing outputs to said memory means representing said locations in said memory means of said operands referred to by said names read from said memory means.
Claim 20
Dependent Claim
352 words
In a digital computer system including processor means for performing operations on operands, memory means for storing said operands and procedures, said procedures including instructions for controlling said operations and names referring to said operands, bus means for conducting at least said instructions between said memory means and said processor means, and I/O means for conducting at least said operands between devices external to said digital computer system and said processor means, said processor means comprising: first microcode means responsive to said instructions and connected from said bus means comprising means for storing first sequences of microinstructions and means employing said first sequences of microinstructions for controlling at least said operations of said processor means as directed by said instructions, at least one sequence of microinstructions of said first sequences of microinstructions corresponding to each one of said instructions and said instructions being S-language instructions having a uniform, fixed format, and monitor microcode means responsive to operation of said processor and including means for storing sequences of monitor microinstructions and means employing said sequences of monitor microinstructions for controlling monitor system operations of at least said processor means, and means for addressing said operands, including: name table means for storing name table entries, each one of said name table entries corresponding to one of said names associated with one of said instructions included in one of said procedures and said each one of said name table entries comprising (1) first data resolvable to provide a location in said memory means of one of said operands referred to by said corresponding one of said names, and, (2) second data identifying the format of said operand referred to by said corresponding one of said names, means connected from said bus means and responsive to said names for reading said name table entries corresponding to said names from said name table means, and means connected from said reading means for resolving each one of said name table entries for providing outputs to said memory means representing said locations in said memory means of said operands referred to by said names read from said memory means.
Claim 21
Dependent Claim
51 words
The digital computer system of claims 2 or 18, wherein said processor means further comprises: monitor stack means connected to an ALU means and responsive to said operation of at least said ALU means for storing at least one monitor stack frame for storing state of execution of a monitor microinstruction.
Claim 22
Dependent Claim
48 words
The digital computer system of claims 1 or 2 or 18 or 3, wherein said memory means further comprises: instruction stack means responsive to operation of at least said processor means for storing at least one instruction stack frame for storing a state of execution of an instruction.
Claim 23
Dependent Claim
258 words
In a digital computer system including processor means for performing operations on operands and memory means for storing said operands and procedures, said procedures including instructions for controlling said operations and names referring to said operands, said processor means comprising: ALU means connected from said bus means for performing at least said operations directed by said instructions, first microcode means responsive to said instructions and comprising means for storing first sequences of microinstructions and means employing said first sequences of microinstructions for controlling at least said operations of said processor means as directed by said instructions, said instructions being S-language instructions having a uniform, fixed format, and second microcode means responsive to the operation of said processor means and comprising means for storing second sequences of microinstructions and means employing said second sequences of microinstructions for controlling internal operations of at least said processor means, and means responsive to said procedures for addressing said operands, comprising: name table means for storing name table entries, each one of said name table entries corresponding to one of said names associated with one of said instructions included in one of said procedures and said each one of said name table entries comprising data resolvable to provide a location in said memory means of one of said operands referred to by said corresponding one of said names, and means responsive to said names for resolving said each one of said name table entries so as to provide outputs to said memory means representing said locations in said memory means of said operands.
Claim 24
Dependent Claim
258 words
In a digital computer system including processor means for performing operations on operands and memory means for storing said operands and procedures, said procedures including instructions for controlling said operations and names referring to said operands, said processor means comprising: ALU means connected from said bus means for performing at least said operations directed by said instructions, first microcode means responsive to said instructions and comprising means for storing first sequences of microinstructions and means employing said first sequences of microinstructions for controlling at least said operations of said processor means as directed by said instructions, said instructions being S-language instructions having a uniform, fixed format, and second microcode means responsive to the operation of said processor means and comprising means for storing second sequences of microinstructions and means employing said second sequences of microinstructions for controlling internal operations of at least said processor means, and means responsive to said procedures for addressing said operands, comprising: name table means for storing name table entries, each one of said name table entries corresponding to one of said names associated with one of said instructions included in one of said procedures and said each one of said name table entries comprising data resolvable to provide a location in said memory means of one of said operands referred to by said corresponding one of said names, and means responsive to said names for resolving said each one of said name table entries so as to provide outputs to said memory means representing said locations in said memory means of said operands.
Claim 25
Dependent Claim
47 words
The digital computer system of claim 21, wherein said processor means further comprises: monitor microcode means responsive to said processor means comprising means for storing sequences of monitor microinstructions and means employing said sequences of monitor microinstructions for controlling monitor operations of at least said processor means,
Claim 26
Dependent Claim
53 words
The digital computer system of claim 22, wherein: said instructions are S-Language instructions written in an S-Language dialect of a plurality of S-Language dialects, and said first sequences of microinstructions include at least one sequence of microinstructions corresponding to each of said instructions for each S-Language dialect of said plurality of S-Language dialects.
Claim 27
Dependent Claim
51 words
The digital computer system of claim 21, wherein said processor means further comprises: processor microinstructions stack means responsive to at least operation of said processor means for storing at least one microinstruction stack frame for storing a state of execution of a microinstruction of said first or second sequences of microinstructions.
Claim 28
Dependent Claim
110 words
The digital computer of claim 24, wherein said memory means further comprises: memory microinstruction stack means for storing a plurality of microinstruction stack frames, each one of said plurality of said microinstruction stack frames for storing state of execution of a microinstruction of said first or second sequences of microinstructions, and said processor microinstruction stack means further comprises microinstruction stack control means responsive to at least said operation of said processor means for providing stack control signals to said processor microinstructions stack means and to said memory microinstruction stack means for controlling transfer of said microinstruction stack frames between said processor microinstruction stack means and said memory microinstruction stack means.
Claim 29
Dependent Claim
43 words
The digital computer system of claim 21, wherein said processor means further comprises: processor arithmetic stack means responsive to operation of at least said ALU means for storing at least one arithmetic stack frame for storing state of execution of an arithmetic microinstruction.
Claim 30
Dependent Claim
104 words
The digital computer system of claim 26, wherein said memory means further comprises: memory arithmetic stack means for storing a plurality of arithmetic stack frames, each one of said plurality of microinstruction stack frames for storing a state of execution of a said arithmetic microinstruction, and said processor arithmetic stack means further comprises arithmetic stack control means responsive to at least said operation of said ALU means for providing control signals to said processor arithmetic stack means and to said memory arithmetic stack means for controlling transfer of said arithmetic stack frames between said processor arithmetic stack means and said memory arithmetic stack means.
Claim 31
Dependent Claim
59 words
The digital computer system of claims 21 or 22 or 23, wherein said processor means further comprises: arithmetic means for performing arithmetic operations on operands, and arithmetic microcode means responsive to operation of said processor means comprising means for storing sequences of arithmetic microinstructions and means employing said sequences of arithmetic microinstructions for controlling operation of said arithmetic means,
Claim 32
Dependent Claim
41 words
The digital computer system of claim 28, wherein said memory means further comprises: instruction stack means responsive to operation of at least said processor means for storing at least one instruction stack frame for storing state of execution of an instruction.
Claim 33
Dependent Claim
241 words
In a digital computer system including processor means for performing operations on operands and memory means for storing said operands and procedures, said procedures including instructions for controlling said operations and names referring to said operands, said processor means comprising: first microcode means responsive to said instructions and connected from said bus means comprising means for storing first sequences of microinstructions and means employing said first sequences of microinstructions for controlling at least said operations of said processor means as directed by said instructions, said instructions being S-language instructions having a uniform, fixed format, and monitor microcode means responsive to operation of said processor and including means for storing sequences of monitor microinstructions and means employing said sequences of monitor microinstructions for controlling monitor system operations of at least said processor means, and means for addressing said operands, including: name table means for storing name table entries, each one of said name table entries corresponding to one of said names associated with one of said instructions included in one of said procedures and said each one of said name table entries comprising data resolvable to provide a location in said memory means of one of said operands referred to by said corresponding one of said names, and means responsive to said names for resolving said each one of said name table entries so as to provide outputs to said memory means representing said locations in said memory means of said operands.
Claim 34
Dependent Claim
241 words
In a digital computer system including processor means for performing operations on operands and memory means for storing said operands and procedures, said procedures including instructions for controlling said operations and names referring to said operands, said processor means comprising: first microcode means responsive to said instructions and connected from said bus means comprising means for storing first sequences of microinstructions and means employing said first sequences of microinstructions for controlling at least said operations of said processor means as directed by said instructions, said instructions being S-language instructions having a uniform, fixed format, and monitor microcode means responsive to operation of said processor and including means for storing sequences of monitor microinstructions and means employing said sequences of monitor microinstructions for controlling monitor system operations of at least said processor means, and means for addressing said operands, including: name table means for storing name table entries, each one of said name table entries corresponding to one of said names associated with one of said instructions included in one of said procedures and said each one of said name table entries comprising data resolvable to provide a location in said memory means of one of said operands referred to by said corresponding one of said names, and means responsive to said names for resolving said each one of said name table entries so as to provide outputs to said memory means representing said locations in said memory means of said operands.
Claim 35
Dependent Claim
45 words
The digital computer system of claims 22 or 30, wherein said processor means further comprises: monitor stack means responsive to said operation of at least said processor means for storing at least one monitor stack frame for storing state of execution of a monitor microinstruction.
Claim 36
Dependent Claim
47 words
The digital computer system of claim 21 or 22 or 30 or 23, wherein said memory means further comprises: instruction stack means responsive to operation of at least said processor means for storing at least one instruction stack frame for storing state of execution of an instruction.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1987-06-19 | 1987-12-19 | 1988-06-19 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1991-06-19 | 1991-12-19 | 1992-06-19 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 1995-06-19 | 1995-12-19 | 1996-06-19 | $7700.00 | Window Closed / Lapsed |