Cell 体系结构总揽摘要:本文分析了 Cell 结构提出的背景和所解决的问题;详细介绍了 Cell 内部各单元,并对 Cell 编程实现作简单介绍同时对 Cell 结构的优缺点进行了比较,总体介绍了 Cell 的应用情况和前景目录一、引 言 ..........................................................................................................................................3二、Cell 体系结构提出的背景 ........................................................................................................32.1 RISC 指令集结构的优点 ....................................................................................................32.2 运算单元与存储单元的“距离” .........................................................................................4三、Cell 内部结构介绍 ....................................................................................................................63.1 Cell 结构总揽 ......................................................................................................................63.2 IBM 公布的性能数据: .....................................................................................................83.3 Power 处理单元( PPE) ...................................................................................................83.4 协同处理单元(SPE) ......................................................................................................93.5 SPE Local Stores................................................................................................................103.6 The EIB and SMF ..............................................................................................................10四、对 Cell 进行编程 .....................................................................................................................114.1 Cell 程序简介 ....................................................................................................................114.2 将应用程序移植到 Cell...................................................................................................12五、Cell 体系结构的优缺点分析 ..................................................................................................135.1 采用 Local Store 而非 Cache...........................................................................................135.2 I/O 设备的外移 .................................................................................................................135.3 动态功能单元组及资源保护机制 ...................................................................................145.4 采用不带缓存的有序执行 ...............................................................................................15六、Cell 的应用目标 ......................................................................................................................156.1 多个 Cell 协同处理 ..........................................................................................................156.2 多媒体、电子游戏 ...........................................................................................................166.3 军事、医疗 .......................................................................................................................176.4 从高端到低端的一系列计算系统体系结构 ...................................................................17七、结束语 ......................................................................................................................................17八、参考文献 ..................................................................................................................................18一、引 言由 Sony, Toshiba 和 IBM(简称 STI 联盟)最初为 PlayStation 3 设计的“Cell 处理器”是一个高性能分布式体系结构处理器。
Cell 包括硬件 Cell 和软件 Cell硬件 Cell 采用多核技术,主要由一个 PPE 和 8 个 SPE 通过 EIB 总线联结构成,各个单元协作且并行地处理计算机任务;软件 Cell 包括数据和程序,它们被送往硬件 Cell 进行计算并返回结果Cell的每一个核都采用 RISC 指令集结构,而指令的动态调度,寄存器换名等都由软件实现,从而大大提高了硬件速度Cell 处理器的影响不仅仅局限于游戏市场,而将遍布整个计算机工业界Cell 在图形领域的优势是明显的:3D 图形所具有的巨大并行性以及可向量化和流水化处理的特征,而Cell 中的多个 SPE 能对其进行大幅度加速;而数字信号处理中主要使用的 FFT(快速傅立叶变换)算法也是一个高度可向量化的算法,Cell 的向量化与高并行性将使 Cell 处理器成功地运用于 DSP 领域;除此之外, Cell 处理器可有效运用于超级计算,服务器,流处理应用等多个领域然而,Cell 处理器在发展过程中面临许多问题Cell 处理器与有限主存的速度及性能之间的差距越来越大,主存成为 Cell 体系结构计算机整体性能提高的瓶颈;Cell 采用RISC 指令集结构,虽然提高硬件执行效率,但增加了编译器的负担; Cell 处理机中多核的功耗和散热量也是 Cell 体系结构发展的一个制约因素;目前基于 Cell 体系结构的程序开发工具很少,Cell 体系结构计算机对程序并发性和可向量化要求很高,程序难于编写,程序的可移值性和兼容性也存在问题。
本文第二部分分析了 Cell 体系结构从技术上产生的背景;接着第三部分介绍了 Cell处理器内部各个部件的结构,在此基础上第四部分介绍了对 Cell 进行编程的概念;第五部分比较了 Cell 体系结构与其他体系结构的优缺点;第六部分简要介绍了 Cell 应用情况本文的目的在于对于 Cell 结构有一个总体的介绍,希望能对打算在 Cell 上进行开发的人员,和对 Cell 体系结构有兴趣、愿意研究的人们有所帮助二、Cell 体系结构提出的背景2.1 RISC 指令集结构的优点Cell 处理器中 PPE 和 SPE 都采用 RISC 指令集结构,下面从 CISC 的不足,针对 CISC不足进行改进的 RISC 的优点以及 RISC 面临的问题三方面进行分析1. CISC 的不足复杂指令集计算机强化指令功能,实现软件功能向硬件功能转移,减少指令条数来提高计算机性能然而这一设计将使得指令的使用频率相差悬殊,指令没有得到充分利用,80%的指令只能在 20%的运行时间里用到;指令集本身的复杂性也带来了计算机体系结构的复杂性,这不仅增加了研制时间和成本,也容易造成设计失误指令集中各条指令功能不均衡,执行时间不同,不利于采用计算机体系结构的相关技术来提高性能,许多指令需要复杂的操作,因而运行速度慢。
随着指令集系统复杂度的不断提高,指令集系统的实现越来越困难,甚至降低系统的效率2. RISC 的优点针对 CISC 指令集结构的不足,在 20 年代 80 年代 RISC 指令集结构发展了起来RISC 指令集结构采用定量化设计计算机体系结构的方法,选取使用频率最高和最有用的指令,使每条指令的功能尽可能简单,并在一个机器周期内完成,指令长度均相同,只有 Load 指令和 Store 指令访问存储器,其他指令均在寄存器之间进行,以简单有效的方式支持高级语言,大大提高系统性能图 2.1 在过去近 20 年 RISC 性能统计图3. RISC 面临的问题上图的发展趋势符合摩尔定律,即在价格不变的情况下,计算机芯片的运算能力每 18 个月提高 1 倍然而当指令集精简和。