An automated processor design tool uses a description of customized processor
instruction set extensions in a standardized language to develop a configurable
definition of a target instruction set, a Hardware Description Language description
of circuitry necessary to implement the instruction set, and development tools
such as a compiler, assembler, debugger and simulator which can be used to develop
applications for the processor and to verify it. Implementation of the processor
circuitry can be optimized for various criteria such as area, power consumption,
speed and the like. Once a processor configuration is developed, it can be tested
and inputs to the system modified to iteratively optimize the processor implementation.
By providing a constrained domain of extensions and optimizations, the process
can be automated to a high degree, thereby facilitating fast and reliable development.