Method and apparatus for providing self-implementing hardware-software
libraries is described. One aspect of the invention relates to designing
an embedded system for an integrated circuit. A hardware platform is
defined. A software platform is defined having a plurality of software
components, including a library. Hardware component dependency data
associated with the library is identified. At least one hardware
component is added to the hardware platform in response to the hardware
component dependency data.