目 录
一、 CPU诞生、发展 ................................................................................................. 3
1.1 CPU诞生................................................................................................. 3 1.2 CPU发展................................................................................................. 4
二、 分类及提升.......................................................................................................... 5
2.1 MMX指令集............................................................................................. 5 2.2 3DNow!指令集........................................................................................ 6 2.3 SSE指令集............................................................................................. 6 2.4 SSE2指令集........................................................................................... 7 2.5 SSE3指令集........................................................................................... 7 2.6 SSSE3(SSE3S)指令集............................................................................ 8 2.7 SSE4.1指令集....................................................................................... 8 2.8 SSE4.2指令集....................................................................................... 9
三、 最新CPU指令集.................................................................................................. 9
3.1 AVX指令集............................................................................................. 9 3.2 FMA4指令集......................................................................................... 10
四、CPU指令集发展趋势........................................................................................... 10
CPU指令集论文
学生姓名:岳皓 学号:2013XXXXX 计算机学院 计算机科学专业 指导教师:XXX 职称:XXX
摘 要:
CPU扩展指令集指的是CPU增加的多媒体或者是3D处理指令,这些扩展指令可以提高CPU处理多媒体和3D图形的能力。著名的有MMX(多媒体扩展指令)、SSE(因特网数据流单指令扩展)和3DNow!指令集。
CPU依靠指令来计算和控制系统,每款CPU在设计时就规定了一系列与其硬件电路相配合的指令系统。指令的强弱也是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。从主流体系结构讲,指令集可分为复杂指令集和精简指令集两部分。通常会把CPU的扩展指令集称为\的指令集\。SSE3指令集也是规模最小的指令集,此前MMX包含有57条命令,SSE包含有50条命令,SSE2包含有144条命令,SSE3包含有13条命令。
关键词:
CPU; Inter; AMD; SSE3; SSE2; Abstract:
CPU instruction set extension refers to the increase of multimedia CPU or 3D processing instruction, ability of these extended instruction can improve the CPU processing of multimedia and graphics 3D. The famous MMX (multimedia extension instruction), SSE (Internet streaming single instruction and 3DNow instruction set extension).
CPU relies on the instruction to calculate and control the system, each CPU
defines a series of instruction system matched with hardware circuit in the design. An important indicator of the strength of the instruction is CPU, instruction set is one of the most effective tools to improve the efficiency of microprocessor. From the mainstream architecture, instruction set can be divided into a set of complex instructions and reduced instruction set of two parts. Usually the CPU instruction set extensions called " the CPU instruction set ". Directive SSE3 instruction set is the smallest set, before this MMX contains 57 orders, SSE contains 50 orders, SSE2 contains 144 orders, SSE3 contains 13 orders.
Key Words:
CPU; Inter; AMD; SSE3; SSE2;
引言
中央处理器(英文Central Processing Unit,CPU)是一台计算机的运算核心和控制核心。CPU、内部存储器和输入/输出设备是电子计算机三大核心部件。其功能主要是解释计算机指令以及处理计算机软件中的数据。CPU由运算器、控制器和寄存器及实现它们之间联系的数据、控制及状态的总线构成。差不多所有的CPU的运作原理可分为四个阶段:提取(Fetch)、解码(Decode)、执行(Execute)和写回(Writeback)。 CPU从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码,并执行指令。所谓的计算机的可编程性主要是指对CPU的编程。
一、CPU诞生、发展
1.1 CPU诞生
CPU最基本的运算就是“加减乘除”,但实际上计算机只能用加法器来完成整数以及固定小数点位置(整点)的算术运算,而不能处理小数点可以浮动的数值(浮点)。对于小数多采用的是二进制的科学计数法、也就是浮点数表示法:
尾数、阶数符号位各占一位,然后再对其余数位尾数、阶数的有效数位合理分配。
在CPU运算时,浮点数的运算量远比整数复杂,因为不仅尾数要参与运算,阶数也要参与,并且需要对尾数和阶数的符号位都进行处理,所以,最早的CPU并没有能力进行浮点运算(8088/8086,80286,80386SX),需要浮点运算时,由CPU通过软件模拟来实现,所以,进行浮点运算时就会慢很多。
8086是当今CPU的鼻祖,所谓X86架构也就是指8086处理器所开创的指令集体系。为了弥补8086在进行浮点运算时的不足,Intel与1980年设计了8087数学协处理器,并且为X86体系推出了第一个浮点格式IEE754。8087提供两个基本的32/64bit浮点资料形态和额外的扩展80bit内部支援来改进复杂运算之精度。除此之外,8087还提供一个80/17bit封装BCD (二进制编码之十进制)格式以及16/32/64bit整数资料形态。
X87协处理器新增约60个指令给程序员,所有的指令都是以“F”开头跟其他的标准8086整数运算指令有所区别,举例来说,相对于ADD/MUL,8087提供FADD/FMUL。
8087是于1980年发布,然后被80287、80387DX/SX和487SX所取代。 1.2 CPU发展
以往,协处理器都是可选配件,在主板上X86处理器旁边一般都会为X87设计一个空的插槽,只有当用户确实有需要时才会专门购买相应的X87协处理器插进去,来加速浮点运算。
随着时代的发展,越来越多的程序要求使用更高精度的浮点运算,X87协处理器几乎成为必备品。于是在制造工艺日趋成熟之后,Intel在486一代将X86和X87整合在了一起,浮点运算成为了CPU的一项基本功能,而且重要性越来越大。
Intel 486DX、Pentium之后的CPU都内含了协处理器,AMD K5、K6之后的CPU都内建了协处理器,所以此后就很少有人会提及协处理器的概念了。
所谓X86架构的处理器就是采用了Intel X86指令集的处理器,X86指令集是Intel公司为其第一块16位处理器i8086所专门开发的。而IBM在1981年所推出的第一台PC机上所使用的处理器i8088(i8086的简化版)也是使用的X86
指令集,但是为了增强计算机的浮点运算能力,增加了X87数学协助处理器并引入了X87指令集,于是就将采用了X86指令集和X87指令集的处理器统称为X86架构的处理器。
X86基本指令集包括了:数据传输、算术运算、逻辑运算、串指令、程序转移、伪指令、寄存器、位操作、控制指令和浮点运算指令等十大类无数条。而Intel和AMD桌面级处理器在X86指令集的基础上,为了提升处理器各方面的性能,所以又各自开发新的指令集,它们被称为处理器扩展指令集。
扩展指令集能够大幅提高CPU在某些特定应用下的性能,如多媒体、3D、浮点运算等,其设计初衷与协处理器是异曲同工的,但协处理器需要增加额外的运算单元,而扩展指令集只需要加入新的指令和算法即可,无需设计新的运算单元,但必须要软件支持才能发挥功效。
二、分类及提升
2.1 MMX指令集
MMX(Multi Media eXtension 多媒体扩展指令)指令集是Intel公司在1996年为旗下的Pentium系列处理器所开发的一项多媒体指令增强技术。MMX指令集中包括了57条多媒体指令,通过这些指令可以一次性处理多个数据,在处理结果超过实际处理能力的时候仍能够进行正常处理,如果在软件的配合下,可以得到更强的处理性能。
MMX指令集非常成功,在之后生产的各型CPU都包括这些指令集。据当年Tom's Hardware测试,即使最慢的Pentium MMX 166MHz也比Pentium 200MHz普通版要快。
但是,MMX指令集的问题也是比较明显的,MMX指令集不能与X86的浮点运算指令同时执行,必须做密集式的交错切换才可以正常执行,但是这样一来,就会造成整个系统运行速度的下降
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库CPU论文在线全文阅读。
相关推荐: