Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
The interface description language: definition and use
The interface description language: definition and use
Horizon: A Retargetable Compiler for Horizontal Microarchitectures
IEEE Transactions on Software Engineering
A Development Environment for Horizontal Microcode
IEEE Transactions on Software Engineering
Advances in Computer Graphics Hardware II (Eurographics'87 Workshop)
Local code generation and compaction in optimizing microcode compilers
Local code generation and compaction in optimizing microcode compilers
Hi-index | 0.00 |
We describe a software tool to aid the development of microcode for horizontal, pipelined architectures. The tool is a preprocessor for microcode source that allows the programmer full flexibility to optimize code, but removes many of the tedious and error-prone aspects of microprogramming. It automatically allocates floating-point registers, expands complex instructions, and analyzes code for pipeline-related errors.We have written a working version of the tool for the Weitek XL-8032 floating-point chip set, a horizontal architecture with pipelined sequencer and floating-point datapaths. Although the tool was designed for the XL architecture, the algorithms used are applicable to other parallel/pipelined architectures.This paper argues for the existence of such tools, summarizes the algorithms needed to analyze control and data flow in the presence of pipelining, and characterizes the tool's performance based on nine microcoded routines written for a real-time 3-D graphics system.