introduction to mixed-signal hardware design