block diagram architecture