1. A method for developing an integrated circuit which performs a function, the method comprising: storing a software program comprising program instructions which implement the function; executing the software program on a processing system capable of parallel processing, wherein said executing the software program is performed at a desired system speed; storing a first hardware description of at least a portion of the processing system, wherein the first hardware description specifies implementation of the at least a portion of the processing system; generating a second hardware description that corresponds to the first hardware description, wherein the second hardware description comprises a first portion and a second portion, wherein the first portion specifies a dedicated hardware implementation of a first portion of the software program executing on a first portion of the processing system, and wherein the second portion specifics implementation of a second portion of the processing system; wherein the second hardware description is configured for creating the integrated circuit which implements the function of the software program.