Oberon-0 subset for use as a hardware-software description language