A quantitative and systematic design procedure for multiple function-unit (MFU) processors and microprocessors is presented in this paper. The MFU organization employs a set of function units such as adders, multipliers, etc. to concurrently execute instructions from a single instruction stream. A set of parameters describing this processor organization and the programs it executes are presented. The instruction execution rate is used as the measure of performance. This can be defined as the number of instructions executed per unit time. An analytic model is presented which relates the performance of a processor to the parameters describing it. A general problem is formulated: ``Construct a processor that is optimal with respect to a certain design criterion.'' Two design criteria, which specify two design problems, are presented. The minimum cost (MC) problem specifies an optimal processor as one with a minimum cost while maintaining a minimal acceptable performance level. The maximum performance-to-cost ratio (MPCR) problem requires that the performance-to-cost ratio be maximized for the optimal processor. The design problem is formulated as an integer nonlinear programming problem. The branch and bound technique and other considerations are introduced to reduce the extent and amount of enumerations required. Illustrative examples are provided.
[1]
William Daniel Strecker.
An analysis of the instruction execution rate in certain computer structures
,
1970
.
[2]
Donald E. Knuth,et al.
fundamental algorithms
,
1969
.
[3]
Michael J. Flynn,et al.
Some Computer Organizations and Their Effectiveness
,
1972,
IEEE Transactions on Computers.
[4]
David W. Anderson,et al.
The IBM System/360 model 91: machine philosophy and instruction-handling
,
1967
.
[5]
G. Nemhauser,et al.
Integer Programming
,
2020
.
[6]
Mansford E. Drummond.
Evaluation and measurement techniques for digital computer systems
,
1973
.
[7]
Jack E. Shemer,et al.
A Simplified Analysis of Processor "Look-Ahead" and Simultaneous Operation of a Multi-Module Main Memory
,
1969,
IEEE Transactions on Computers.