common types of hardware architecture