50. A method of designing an essentially digital system, the method comprising: generating a description of the functionality and timing of the digital system, wherein the description includes a system-level description comprising a plurality of tasks; and optimizing the system-level description; and designing the essentially digital system based at least upon the optimized system-level description, wherein non-deterministic behavior of the digital system is modeled by interacting the tasks, while each of the tasks describe part of the deterministic behavior of the digital system and wherein the method is executed on a processor-based system.
54. The method of claim 50 , wherein the system-level description comprises a grey box system-level description.