1. A method of allocating interface resources in a behavioral synthesis tool used to design an integrated circuit, comprising: reading a programming language source code description associated with the integrated circuit into the behavioral synthesis tool; storing the source code description as a data structure within the behavioral synthesis tool; receiving user input to select interface resources associated with the source code description; and modifying the data structure within the behavioral synthesis tool to include the selected interface resources.