A design methodology for the correct specification of VLSI systems