1、新一代 Centeral Process Unit 的多媒体处理回顾通用 X86 中央处理器的多媒体处理功能发展历史,介绍现在发展情况并展望发展未来新 一 代 Centeral Process Unit 的 多 媒 体 处 理要点:在日常的多媒体应用中,我们最主要的工具就是计算机,通过计算机的硬件和软件的支持,我们可以实现各种各样的多媒体应用。现在已经有很多厂商开始研发和生产专门的媒体处理芯片,比如 Phlips 公司开发的 Trimedia,这种专用芯片具有成本低、实时性好、处理能力强、升级容易等特点,但它们的应用范围还是远不及 PC 的。PC 将在比较长的一段时间里作为多媒体处理的主要角色
2、,而 CPU 作为计算机的核心,它的发展也直接关系到多媒体技术进一步发展。在今后的几个月,Intel和 AMD 作为两家最大的通用 CPU 生产厂商陆续推出了他们的下一代产品,CPU 的多媒体处理能力将作为本文探讨的重点。CPU 多媒体处理的历史追根溯源的话最早的 CPU 产生于 1971 年,当时还处在发展阶段的 INTEL 公司推出了世界上第一台微处理器 4004。这不但是第一个用于计算器的 4 位微处理器,也是第一款个人有能力买得起的电脑处理器!4004 含有 2300 个晶体管,功能相当有限,我们可以认为它并不具有多媒体处理的能力。又过了十几年,随着个人电脑 在世界范围内的流行,功能更
3、强大的 CPU 也被生产出来,它们的多媒体处理能力也越来越强,但其本身并没有进行专门的对多媒体处理的优化改进。直到 Pentium MMX 的出现。也许是 INTEL 认为 Pentium 系列还是有很大的潜力可挖,1996 年底推出了 Pentium 系列的改进版本,厂家代号 P55C,也就是我们平常所说的 Pentium MMX(多能奔腾)。MMX 技术是 INTEL 新发明的一项多媒体增强指令集技术,它的英文全称可以翻译“多媒体扩展指令集“ ,它是 Intel 公司在 1996 年为增强 Pentium CPU 在音像、图形和通信应用方面而采取的新技术,为CPU 增加了 57 条专门指令
4、。除了指令集中增加 MMX 指令外,还将 CPU 芯片内的 L1 缓存由原来的16KB 增加到 32KB(16K 指命+16K 数据)MMX CPU 比普通 CPU 在运行含有 MMX 指令的程序时,处理多媒体的能力上提高了 60左右。MMX 技术不但是一个创新,而且还开创了 CPU 开发的新纪元,目前的 KNI,3D NOW!也是从 MMX 发展演变过来的。我们可以说 MMX 是第一个专门为多媒体处理而对 CPU 增加的改进。Pentium III(Katmai) 作为 20 世纪 X86 产品的最后一 作,它在多媒体处理方面做了重大的改进:为 MMX 添加了 70 条新指令,以增强三维和浮
5、点应用,并让原来支持 MMX 的软件和 WEB 开发程序运行得更快,这个技术被命名为 MMX2,它可兼容以前的所有 MMX 程序,此规格是英特尔公司在1998 年 1 月宣布的。新指令包括浮点数据类型的 SIMD,CPU 会并行处理指令,因而在软件重复做某项工作时可以发挥很大的优势。与 MMX 相比较的,MMX 新增 57 条指令所提供的 SIMD 仅对整数类型有效。我们知道三维应用与浮点的关系很密切,强化了浮点运算即是加快了三维处理。以下几种多媒体处理都能从中受益。 首先是三维几何学,进行变换 3D 坐标(特别是同时变换几个)工作时,SIMD 会在一秒中做出更多的操作,所以利用 SIMD 浮
6、点指令将得到更高的性能,它能进一步对场景做渲染、实时影子效果、倒映之类的工作。对于最终用户来说,这意味着物体更生动,表面更光滑。在图中可以看出各种新增的变换指令,其中光线的控制是 3D 环境的关键,一种类似于浮点矩阵操作决定从物体表面反射光线的颜色和数量。游戏开发商们为了减低 CPU 的计算量常常去掉那些额外或复杂的光线,但一个场景的复杂光线能比普通着色起到更好的视觉效果。MMX2 中的 SIMD 浮点指令就能对之进行平行编码,可以大大减轻处理器的负担,以获取更高水准的“现实“。其次是三维物体,MMX2 不仅对 3D 场景有作用,而且能对游戏中活动的物体和人物加以改善。Katmai 提供的额外
7、计算能力能够支持现有技术,如:在复杂目标和移动物体上的碰撞侦察和对象物理化。它也可以使用未来的技术,如:前置运动和后置运动(它们能改善应用程序中的刚性和固态物体,让之接近真实)。最终用户将感受到交互性和真实性都有巨大的变化。再次是图像处理(特别是一些不常用的操作)亦受益于 Katmai 的平行编码和数据结构,图像变形的操作使用浮点计算比整数运算减少了一些 CPU 时钟周期。它可增加图像尺寸和图像混合操作,这对商业和个人绘图软件,高分辨率数字相机,高端图形工作站都有极大的帮助。 第四,视频加速。视频编辑软件比成像计算的要求更苛刻,高配置的机器是必不可少的。因为它需要大量的实时运算,不论是个人视频
8、创造软件,还是专业视频生产软件,都要保证视频流数据运行于 2430 帧/秒。除了图像操作之外,作为视频计算核心的压缩/解压运算法则也很重要,加入 MMX2 可以使应用程序得到更高分辨率的图像和更快的帧数,它们是:MPEG, DVD/MPEG2、。 第五,语音识别,Katmai 可对前置语音处理作加速,把新的代码增加到软件中能增强它搜索所需匹配单词的能力,它能减少出错的比率和缩短响应时间。 第六,音频输出。大多数音频输入和输出采样率是 16 位,许多中介音频处理都需要强大的浮点处理,包括FFT,FIR,IIR ,平行信号处理滤波技术。SIMD 浮点处理能让开发者容易利用杜比数字音频之类软件技术,
9、作用包括:以多音源产生 3D 音效,修改声音样品取得不同效果,实时生成相应音乐,用物理建模造出高品质的乐曲和音轨,动态和交互式语音。 随后 CPU 的多媒体指令集进一步发展,Intel 又在 SSE 的基础上推出了更先进的 SSE2 指令集。SSE2 包含了 144 条指令,由两个部分组:SSE 部分和 MMX 部分。SSE 部分主要负责处理浮点数,而MMX 部分则专门计算整数。SSE2 的寄存器容量是 MMX 寄存器的两倍,寄存器存储数据也增加了两倍。在指令处理速度保持不变的情况下,通过 SSE2 优化后的程序和软件运行速度也能够提高两倍。由于 SSE2 指令集与 MMX 指令集相兼容,因此
10、被 MMX 优化过的程序很容易被 SSE2 再进行更深层次的优化,达到更好的运行效果。SSE2 对于处理器的性能的提升是十分明显的。现在最新的多媒体指令集是 SSE3 指令,它是目前规模最小的指令集,它只有 13 条指令。它 共划分为五个应运层,分别为数据传输命令、数据处理命令、特殊处理命令、优化命令、超线程性能增强五个部分,其中超线程性能增强是一种全新的指令集,它可以提升处理器的超线程的处理能力,大大简化了超线程的数据处理过程,使处理器能够更加快速的进行并行数据处理。这些指令对 3D 图形处理非常有帮助,因为它们有效地简化了标量向量乘积的计算,对波形过程和声音处理的计算很有帮助,也就是对所有
11、使用快速离散傅立叶变换的任务有益。另一方面,AMD 也推出了自己的多媒体指令集 3DNow!,该指令集应该是在 SSE 指令之前推出的,被广泛运用于 AMD 的 K6、K6-2 和 K7 系列处理器上,拥有 21 条扩展指令集。在整体上 3DNow!的 SSE 非常相相似,它们都拥有 8 个新的寄存器,但是 3DNow!是 64 位的,而 SSE 是 128 位。所以3DNow!它只能存储两个浮点数据,而不是四个。但是它和 SSE 的侧重点有所不同,3DNow!指令集主要针对三维建模、坐标变换和效果渲染等 3D 数据的处理,在相应的软件配合下,可以大幅度提高处理器的 3D 处理性能。AMD 公
12、司后来又在 Athlon 系列处理器上开发了新的 Enhanced 3DNow!指令集,新的增强指令数达了 52 个,目前最为流行的 Athlon 64 系列处理器还是支持 3DNow!指令的。 新一代 CPU 的多媒体处理及发展前景现在处理器市场上,64 位技术已经开始普及起来,随着制造工艺的发展另一方面双核心甚至多核心的产品也已经展现在我们面前。随着 CPU 处理性能的提高,它们自身在多媒体处理方面无疑也得到了极大的提高,Intel 和 AMD 各自的新一代产品上也开始了各自不同的技术路线。就在 2006 年度春季 IDF 大会(Intel Developer Forum,英特尔开发者论坛
13、)上,Intel 宣布了下一代处理器将统一采用全新的微架构,并将其正式命名为 Core(酷睿)。Core 微架构拥有双核心、64bit指令集、4 发射的超标量体系结构和乱序执行机制等技术,使用 65nm 制造工艺生产,支持 36bit 的物理寻址和 48bit 的虚拟内存寻址,支持包括 SSE4 在内的 Intel 所有扩展指令集。Core 微架构的每个内核拥有 32KB 的一级指令缓存、32KB 的双端口一级数据缓存,2 个内核共同拥有 4MB 或 2MB 的共享式二级缓存。从历史上来看,每一次新的多媒体扩展指令集的出现都将极大的提高 CPU 的多媒体处理能力,由于资料有限,在网上只能查到:
14、英特尔公司公布了向其 x86 芯片中增添约 50 条新指令的计划。英特尔此举是为了加速包括搜索、数学运算、多媒体处理在内的任务的执行速度。新的扩展指令集可以分为二大类。第一类是 SSE4第四代流式 SIMD(单指令流多数据流)扩展。英特尔表示,SIMD 使得芯片能够对 1 个以上的数据单元执行相同的操作,而无需每个数据单元都带有 1 条指令,在处理图像、视频、音频时能够节约许多操作。SSE4 还能够提高高性能计算的性能。第二类指令能够加速二种特定的应用。一种是搜索和模式匹配,这对手写体识别和基因研究特别有用;另一种是 CRC 技术,能够监视计算机系统中数据传输的完整性。另一方面根据 AMD 最
15、近公布的路线图来看,AMD 在明年中旬将推出代号为 K8L 的处理器,而届时Intel 的 Core 2 处理器已经推出一年多时间。K8L 原计划将采用四核心设计,在单一晶元上整合 4 个独立的执行处理核心,并同时采用共享 L3 缓存设计,四核心共享一个控制闩门及一个内存控制器,指令从 16bit 增加到 32bit、引入更为完善的分支预测算法、类似于 Conroe 的乱序指令读取机制等等,这些改进都将可以消除处理器在整数运算方面的瓶颈,提升整体运算的性能。除此之外 AMD 还有另一个野心勃勃的计划,在完成并购 ATI 之后,它同时宣布将于明(2007) 年推出的整合式平台,以及预定于 200
16、8 年问世的整合了 CPU 和 GPU 功能的全新 x86 处理器。AMD 预计开发新类型的 x86 处理器,内部嵌入有中央处理器 (CPU, Central Processing Unit)与绘图处理器(GPU,Graphics Processing Unit),并在硅组件层级中结合许多创新的设计;而此计划代号为Fusion。 AMD 计划研发具备功耗微调 (step-function)功能的 Fusion 处理器,带来胜过现今单纯 CPU 架构的每瓦性能,并针对 3D 绘图、数字媒体、以及高性能运算等领域,提供最佳的客户经验。结论从上面的发展我们可预见到,随着通用 CPU 的不断发展,除了
17、物理运算速度的提高,功耗的控制外,它们最主要的性能发展将集中在多媒体处理上。从各种多媒体处理指令集的应用以满足各种媒体处理需求,又从硬件实现 CPU 和 GPU 的一体化融合,这一发展无论结果如何,无疑是会令人们为技术的革新而兴奋。甚至可以大胆的猜测,以后的主板上将只剩下一颗处理器,它包括了 CPU、GPU、音频处理、网络等全面的处理能力,而它的多媒体处理能力也将较之于现在产生质的飞跃。引用资料来源:1、 http:/ 关于 CPU 等相关词条2、 http:/ 关于 Intel 和 AMD 的最新产品消息3、 http:/ AMD 下一代 CPU 架构预览4、 http:/ 核心指令集发展回顾5、 http:/ 最新 Intel 和 AMD 的最新消息6、 http:/ GPU, CPU: A new chip war 7、 , 官方最新的的产品文档8、 http:/ 搜索相关词条9、 10、 其他相关网站网页,本想登陆 WiKi 可是无论是国外和国内站点都上不去