Digital Logic: Applications and Design