嵌入式系统硬件:处理单元与内存的深度剖析
1. 处理单元概述
如今的多核芯片通常是异构的,包含高性能和高能效处理器的组合。例如,ARM® big.LITTLE架构由Cortex® -A7和Cortex® -A15核心组成,这种异构设计能够根据不同的工作负载灵活调配资源,在性能和能耗之间取得平衡。
2. 图形处理单元(GPUs)
- 发展历程 :上世纪,许多计算机使用专用图形处理单元(GPUs)来生成有吸引力的图形输出,但硬连线解决方案无法支持非标准计算机图形算法,因此被可编程解决方案所取代。
- 工作原理 :当前的GPU试图同时运行大量计算以实现所需性能,标准方法是同时运行许多细粒度线程,目标是让多个处理单元保持忙碌,并通过线程之间的快速切换来隐藏内存延迟。
- 示例分析 :
- 矩阵乘法 :以在GPU上进行两个大矩阵的乘法为例,矩阵被划分为所谓的线程块,每个线程块可分配给GPU中的一个核心。每个线程块包含多个线程,每个线程包含多个指令,整个计算集称为网格。每个核心通过执行线程来推进计算,如果某个线程因等待内存而阻塞,核心将执行其他线程。线程中的指令也可以并发执行,例如使用多个流水线。线程块可以在当代GPU上并发执行,快速切换线程执行以隐藏内存延迟是GPU的一个重要特性。
- ARM® Mali™ -T880 GPU :其架构被定义为知识产权(IP),包含一个可综合模型。在该模型中,SC核