A Development Environment for Horizontal Microcode
This paper describes a development environment for horizontal microcode. The environment used Percolation Scheduling - a transformational system for parallelism extraction - and an interactive profiling system that gives the user control over the microcode compaction process while reducing the burdensome details of architecture, correctness-preservation, and synchronization. Through a graphical interface the user suggests what can be executed in parallel, while the sytem performs the actual changes using semantics-preserving transformations. If a request cannot be satisfied, the system reports the problem causing the failure. The user may then help eliminate the problem by supplying guidance or information not explicit in the code. Index terms - microcode, compaction, Percolation Scheduling, environment, transformation, parallelization, compiler.