The term “logic synthesis” is used to refer to the automatic generation of a logic implementation from a logic specification. The complexity and significance of this task, Figure 1, depends on the level of input specification, the type of logic implementation, and the criteria for an acceptable result. The level of specification can range from behavior& where only the relationship of outputs to inputs is given, to what I will call the register-transfer level where the state is explicitly defined, to the structure1 level where the specification is given as an interconnection of hardware primitives. There are also different levels of logic implementation ranging from a set of boolean equations, to a list of interconnected technologyspecific hardware primitives, to detailed mask data for manufacturing a chip. Finally, there is a significant difference between a logic synthesis procedure that simply generates functionally correct implementations and one that produces implementations that satisfy the many constraints of a product environment. This paper explains the criteria for logic to be considered production-quality in the large system design environment and describes progress that has been made on the automatic generation of production-quality masterslice, or gate-array, chip implementations from functional specifications at the register-transfer level [Il.
[1]
R. N. Gustafson,et al.
IBM 3081 Processor Unit: Design Considerations and Design Process
,
1982,
IBM J. Res. Dev..
[2]
Daniel Brand.
Redundancy and Don't Cares in Logic Synthesis
,
1983,
IEEE Transactions on Computers.
[3]
John A. Darringer,et al.
A New Look at Logic Synthesis
,
1980,
17th Design Automation Conference.
[4]
Louise Trevillyan,et al.
LSS: A system for production logic synthesis
,
1984,
IBM Journal of Research and Development.
[5]
Gordon L. Smith,et al.
Boolean Comparison of Hardware and Flowcharts
,
1982,
IBM J. Res. Dev..
[6]
Louise Trevillyan,et al.
Logic Synthesis Through Local Transformations
,
1981,
IBM J. Res. Dev..