A two-level control store can reduce storage requirements of microprograms without affecting microprogrammability, which is important for a processor programmed directly in microcode. This paper presents a case study investigating how to use a two-level control store effectively. The study is based on Warp cell, a high-performance, microprogrammable processor used in a systolic array computer called Warp. Warp cell is programmed directly in microcode by an optimizing compiler and uses wide horizontal microinstructions with over 200 bits.
Two methods which can increase the effectiveness of using a two-level control store have been considered. First, control store configuration can be adjusted so that the storage of an instruction can be partitioned among microstore and one or more nanostores to maximize storage efficiency. Second, it is possible to increase storage reduction of microprograms by exploiting insignificant and symmetric fields in instructions in mapping microprograms to the control store. It has been found that the average storage reduction for Warp cell programs can be increased from 41% in a straightforward two-level control store implementation to 72% by using these methods.
[1]
H. T. Kung,et al.
Warp architecture: From prototype to production
,
1899
.
[2]
Jorge Martínez-Carballido,et al.
General microprogram width reduction using generator sets
,
1981,
MICRO 14.
[3]
Marek Tudruj.
A customized control store design in microprogrammed control units
,
1985,
MICRO 18.
[4]
Jean-Loup Baer,et al.
On the Minimization of the Width of the Control Memory of Microprogrammed Processors
,
1979,
IEEE Transactions on Computers.
[5]
Antonio Grasselli.
The Design of Program-Modifiable Micro-Programmed Control Units
,
1962,
IRE Trans. Electron. Comput..
[6]
Monica Sin-Ling Lam,et al.
A Systolic Array Optimizing Compiler
,
1989
.
[7]
Marco Annaratone,et al.
Applications experience on Warp
,
1899
.
[8]
Tilak Agerwala.
Microprogram Optimization: A Survey
,
1976,
IEEE Transactions on Computers.
[9]
Thomas R. Gross,et al.
Compilation for a high-performance systolic array
,
1986,
SIGPLAN '86.