High level architectural synthesis: precedence analysis ad automatic cycle detection