1. A computer-implemented system for designing a configurable processor, the system comprising: hardware generation means for, based on a user-defined specification, generating a description of a hardware implementation of the processor; software generation means for, based on the user-defined specification, generating software development tools specific to the hardware implementation; and document generation means for generating documentation of an instruction set of the processor whose hardware implementation description and software development tools are generated by the hardware generation means and software means, respectively, based on the user-defined specification.