扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
之前我们对AMD推土机(Bulldozer)、山猫(Bobcat)两种新架构做了进一步报道,今天我们又获得了AMD在此次Hot Chips大会上的两份演示文稿,其中还有更多有趣的技术细节。如果你是一位实力派的技术爱好者,这就是你的饕餮盛宴。
首先来看推土机,“多线程计算性能的新理念”,演讲人是AMD院士、推土机架构总设计师Mike Butler。
推土机架构主打性能、扩展性,应用领域包括主流客户端(桌面/笔记本/一体机等)和服务器市场。
推土机还是x86架构,采用模块化设计方式,每个模块内包括两个四管线核心、两个整数调度器、一个浮点调度器、两个128位FMAC单元、共享二级缓存以及预取、解码单元,然后多个模块共享三级缓存。每个模块的两个核心彼此紧密关联,可以高效共享资源,同时还有大量新的能效和电源管理,IPC特性更丰富,栅极/时钟更低。
在多线程计算方面,主要有两种传统技术:同步多线程(SMT)、芯片多处理(CMP)。AMD认为它们都存在不少缺点。
于是AMD就提出了推土机模块化概念,从两个全功能核心开始,必要的时候共享硬件,提供更高的带宽/容量和有利于两个线程的特性。
推土机模块的两个核心支持执行两个线程,会共享对延迟要求较高的功能、平缓突发和低效应用、线程间动态分配资源,好处是比两个线程共享一个核心更高的伸缩性和可预测性、多线程负载的吞吐优势、单线程时所有共享资源均可访问、以少得多的面积和功耗提供CMP 80%的性能。
推土机微架构之共享前端
推土机微架构之专用核心
推土机微架构之共享浮点单元
推土机微架构之共享二级缓存
定向预测指令预取
多重数据预取器
线程控制与选择机制
指令集架构(ISA)和功能扩展:推土机支持SSE4.1、SSE4.2、AVX、XSAVE、XOP等最新指令集,还有Light Weight Profiling (LWP)——3DNow!指令集将被删除。
推土机还在能效、电源管理方面做了大量努力,微架构方面支持资源动态共享、数据转移最小化、大量时钟和电源栅极,并增加了主动电源管理(APM),支持芯片级的核心功耗栅极。根据不同的工作负载,芯片功耗也会实时相应调整,同时给超频留下了空间。
总结:推土机重点改进的地方包括功耗/核心面积效率、新的ISA支持、核心扩展性、模块化设计理念,有望显著改善单位功耗和面积的性能。
再来看山猫,“AMD新的低功耗x86核心架构”,演讲人是AMD院士、山猫架构总设计师Brad Burgess。
山猫架构主打弹性、低功耗和小尺寸,主要面向对功耗、体积要求较高的便携领域和云计算。
山猫的设计目标:小尺寸、高效能、低功耗的x86核心,出色的性能,可在不同设计、制造工艺上轻松移植。
主要特性:64位AMD64 x86 ISA指令集架构、SSE1/SSE2/SSE3/SSSE3/SSE4A SIMD扩展、虚拟化、错位128位数据类型支持、基于指令的采样(动态优化)、C6电源状态(集成电源栅极)。
山猫微架构总览
山猫微架构示意图
山猫微架构之前端Icache
山猫微架构之前端分枝预测器
山猫微架构之双x86解码器
山猫微架构之整数执行
山猫微架构之浮点单元
山猫微架构之数据缓存
山猫微架构之乱序载入与存储单元
山猫微架构之二级缓存
山猫微架构之总线单元
山猫架构管线
山猫核心各单元布局规划
降低功耗:山猫架构是面向小尺寸、低功耗领域的,为了降低功耗自然做了大量深入努力。
山猫:先进微架构、低功耗设计、小核心。
总结:当今主流移动处理器一半的面积和大约90%的性能、单核心功耗可降至1W以下、不同设计和制造技术的高度可移植性。