hardware logic