3DNow!(3D no waiting)
AMD公司开发的SIMD指令集,可以增强浮点和多媒体运算的速度。术
AMD-K6-2、AMD-K6-III和K7处理器都采用了3DNow!技术。所谓3DNow!技术实际上是一组新的指令。它突破了按照传统方式处理浮点运算和多媒体应用所形成的瓶颈,建立了功能更加强大的PC平台,为硬软件的应用提供更好的解决方案。例如,3DNow! 技术允许在高分辨率环境下采用更高的帧速率,更逼真的实物造型,更细致的3D图形,更光滑的视频回放和接近电影质量的音频输出。3DNow! 技术与现存的x86软件兼容,并且不需要操作系统支持。因此,采用3DNow!技术的应用可以在所有现存的操作系统支持下工作。
K6-2 CPU中采用的3DNow!指令集中包括了21条指令,支持SIMD浮点运算和SIMD整数运算、数据预取和快速MMX与浮点转换。为了改善MPEG解码功能,3DNow!指令集中还包含了一条特殊的SIMD整数指令,便于实现像素运动补偿。由于媒体软件的运行要求很大的数据量,因此处理器经常要等待主存储器传送数据。采用称为 PREFETCH 的3DNow!指令则可以避免这些等待时间。这条指令可以保证需要的数据总是处于一级CACHE内。3DNow!指令集的另一条指令 FEMMS(fast entry/exit multimedia state) 则大大降低了MMX和x87代码之间的转换时间。3DNow!技术还扩充了AMD-K6系列处理器的能力,使之能够适用于新一代的应用软件。
在K7中采用了新的3DNow!指令集,共包含45条指令。在新增的24条指令里,12条用于支持语音识别和视频信号的处理;7条用于改善Internet及其他形式数据流的数据传输速度;5条用于数字信号处理以提高音频和通讯方面的性能,如软Modem、软ADSL的使用、MP3、Dolby Digital声音的解码和回放等等。
ALU(Arithmetic Logic Unit,算术逻辑单元)
在处理器之中用于计算的那一部分,与其同级的有数据传输单元和分支单元。
BGA(Ball Grid Array,球状矩阵排列)
一种芯片封装形式,例:82443BX。
BHT(branch prediction table,分支预测表)
处理器用于决定分支行动方向的数值表。
BPU(Branch Processing Unit,分支处理单元)
CPU中用来做分支处理的那一个区域。
Brach Pediction(分支预测)
从P5时代开始的一种先进的数据处理方法,由CPU来判断程序分支的进行方向,能够更快运算速度。
CMOS(Complementary Metal Oxide Semiconductor,互补金属氧化物半导体)
它是一类特殊的芯片,最常见的用途是主板的BIOS(Basic
Input/Output System,基本输入/输出系统)。
CISC(Complex Instruction Set Computing,复杂指令集计算机)
相对于RISC而言,它的指令位数较长,所以称为复杂指令。如:x86指令长度为87位。
COB(Cache on board,板上集成缓存)
在处理器卡上集成的缓存,通常指的是二级缓存,例:奔腾II
COD(Cache on Die,芯片内集成缓存)
在处理器芯片内部集成的缓存,通常指的是二级缓存,例:PGA赛扬370
CPGA(Ceramic Pin Grid Array,陶瓷针型栅格阵列)
一种芯片封装形式。
CPU(Center Processing Unit,中央处理器)
计算机系统的大脑,用于控制和管理整个机器的运作,并执行计算任务。
Data Forwarding(数据前送)
CPU在一个时钟周期内,把一个单元的输出值内容拷贝到另一个单元的输入值中。
Decode(指令解码)
由于X86指令的长度不一致,必须用一个单元进行“翻译”,真正的内核按翻译后要求来工作。
EC(Embedded Controller,嵌入式控制器)
在一组特定系统中,新增到固定位置,完成一定任务的控制装置就称为嵌入式控制器。
Embedded Chips(嵌入式)
一种特殊用途的CPU,通常放在非计算机系统,如:家用电器。
EPIC(explicitly parallel instruction code,并行指令代码)
英特尔的64位芯片架构,本身不能执行x86指令,但能通过译码器来兼容旧有的x86指令,只是运算速度比真正的32位芯片有所下降。
FADD(Floationg Point Addition,浮点加)
FCPGA(Flip Chip Pin Grid Array,反转芯片针脚栅格阵列)
一种芯片封装形式,例:奔腾III 370。
FDIV(Floationg Point Divide,浮点除)
FEMMS(Fast Entry/Exit Multimedia State,快速进入/退出多媒体状态)
在多能奔腾之中,MMX和浮点单元是不能同时运行的。新的芯片加快了两者之间的切换,这就是FEMMS。
FFT(fast Fourier transform,快速热欧姆转换)
一种复杂的算法,可以测试CPU的浮点能力。
FID(FID:Frequency identify,频率鉴别号码)
奔腾III通过ID号来检查CPU频率的方法,能够有效防止Remark。
FIFO(First Input First Output,先入先出队列)
这是一种传统的按序执行方法,先进入的指令先完成并引退,跟着才执行第二条指令。
FLOP(Floating Point Operations Per Second,浮点操作/秒)
计算CPU浮点能力的一个单位。
FMUL(Floationg Point Multiplication,浮点乘)
FPU(Float Point Unit,浮点运算单元)浮点运算单元,处理器
(PROCESSOR) 内专门处理浮点 (FLOATING-POINT)
数字运算的单元。
以前的FPU是一种单独芯片,在486之后,英特尔把FPU与集成在CPU之内。
FSUB(Floationg Point Subtraction,浮点减)
HL-PBGA(表面黏著、高耐热、轻薄型塑胶球状矩阵封装)
一种芯片封装形式。
IA(Intel Architecture,英特尔架构)
英特尔公司开发的x86芯片结构。
ID(identify,鉴别号码)
用于判断不同芯片的识别代码。
IMM(Intel Mobile Module, 英特尔移动模块)
英特尔开发用于笔记本电脑的处理器模块,集成了CPU和其它控制设备。
Instructions Cache(指令缓存)
由于系统主内存的速度较慢,当CPU读取指令的时候,会导致CPU停下来等待内存传输的情况。指令缓存就是在主内存与CPU之间增加一个快速的存储区域,即使CPU未要求到指令,主内存也会自动把指令预先送到指令缓存,当CPU要求到指令时,可以直接从指令缓存中读出,无须再存取主内存,减少了CPU的等待时间。
Instruction Coloring(指令分类)
一种制造预测执行指令的技术,一旦预测判断被相应的指令决定以后,处理器就会相同的指令处理同类的判断。
Instruction Issue(指令发送)
它是第一个CPU管道,用于接收内存送到的指令,并把它发到执行单元。
IPC(Instructions Per Clock Cycle,指令/时钟周期)
表示在一个时钟周期用可以完成的指令数目。
KNI(Katmai New Instructions,Katmai新指令集,即SSE)
Latency(潜伏期)
从字面上了解其含义是比较困难的,实际上,它表示完全执行一个指令所需的时钟周期,潜伏期越少越好。严格来说,潜伏期包括一个指令从接收到发送的全过程。现今的大多数x86指令都需要约5个时钟周期,但这些周期之中有部分是与其它指令交迭在一起的(并行处理),因此CPU制造商宣传的潜伏期要比实际的时间长。
LDT(Lightning Data Transport,闪电数据传输总线)
K8采用的新型数据总线,外频在200MHz以上。
MMX(MultiMedia Extensions,多媒体扩展指令集)
英特尔开发的最早期SIMD指令集,可以增强浮点和多媒体运算的速度。
(INSTRUCTION),共有 57 个,能同时对数个资料作处理
(SINGLE INSTURCTION,MULTIPLE DATA,SIMD),使用 8 个 64 位 (BIT)
的 MMX 专用暂存器 (REGISTER),并加入 4 种新的资料型别
(DATA TYPE),由英特尔 (INTEL) 于 1997 开始加入 X86 处理器
(PROCESSOR)。
MMX 指令集主要的目的是加快处理多媒体 (MULTIMEDIA)
资料,所以 MMX 另有一种说法是 MULTIMEDIA EXTENSION
的缩写。
MFLOPS(Million Floationg Point/Second,每秒百万个浮点操作)
计算CPU浮点能力的一个单位,以百万条指令为基准。
NI(Non-Intel,非英特尔架构)
除了英特尔之外,还有许多其它生产兼容x86体系的厂商,由于专利权的问题,它们的产品和英特尔系不一样,但仍然能运行x86指令。
OLGA(Organic Land Grid Array,基板栅格阵列)
一种芯片封装形式。
OoO(Out of Order,乱序执行)
Post-RISC芯片的特性之一,能够不按照程序提供的顺序完成计算任务,是一种加快处理器运算速度的架构。
PGA(Pin-Grid Array,引脚网格阵列)
一种芯片封装形式,缺点是耗电量大。
Post-RISC
一种新型的处理器架构,它的内核是RISC,而外围是CISC,结合了两种架构的优点,拥有预测执行、处理器重命名等先进特性,如:Athlon。
PSN(Processor Serial numbers,处理器序列号)
标识处理器特性的一组号码,包括主频、生产日期、生产编号等。
PIB(Processor In a Box,盒装处理器)
CPU厂商正式在市面上发售的产品,通常要比OEM(Original
Equipment Manufacturer,原始设备制造商)厂商流通到市场的散装芯片贵,但只有PIB拥有厂商正式的保修权利。
PPGA(Plastic Pin Grid Array,塑胶针状矩阵封装)
一种芯片封装形式,缺点是耗电量大。
PQFP(Plastic Quad Flat Package,塑料方块平面封装)
一种芯片封装形式。
RAW(Read after Write,写后读)
这是CPU乱序执行造成的错误,即在必要条件未成立之前,已经先写下结论,导致最终结果出错。
Register Contention(抢占寄存器)
当寄存器的上一个写回任务未完成时,另一个指令征用此寄存器时出现的冲突。
Register Pressure(寄存器不足)
软件算法执行时所需的寄存器数目受到限制。对于X86处理器来说,寄存器不足已经成为了它的最大特点,因此AMD才想在下一代芯片K8之中,增加寄存器的数量。
Register Renaming(寄存器重命名)
把一个指令的输出值重新定位到一个任意的内部寄存器。在x86架构中,这类情况是常常出现的,如:一个fld或fxch或mov指令需要同一个目标寄存器时,就要动用到寄存器重命名。
Remark(芯片频率重标识)
芯片制造商为了方便自己的产品定级,把大部分CPU都设置为可以自由调节倍频和外频,它在同一批CPU中选出好的定为较高的一级,性能不足的定位较低的一级,这些都在工厂内部完成,是合法的频率定位方法。但出厂以后,经销商把低档的CPU超频后,贴上新的标签,当成高档CPU卖的非法频率定位则称为Remark。因为生产商有权力改变自己的产品,而经销商这样做就是侵犯版权,不要以为只有软件才有版权,硬件也有版权呢。
Resource contention(资源冲突)
当一个指令需要寄存器或管道时,它们被其它指令所用,处理器不能即时作出回应,这就是资源冲突。
Retirement(指令引退)
当处理器执行过一条指令后,自动把它从调度进程中去掉。如果仅是指令完成,但仍留在调度进程中,亦不算是指令引退。
RISC(Reduced Instruction Set Computing,精简指令集计算机)
一种指令长度较短的计算机,其运行速度比CISC要快。
SEC(Single Edge Contact/Connector)
英特尔 (INTEL)
为了提高处理器 (PROCESSOR) 执行效能及芯片 (CHIP)
生产良率所设计的处理器包装卡匣 (CATRIDGE),使核心处理器芯片与
L2 快取 (CACHE) 可分开生产,然后整合在一个卡匣上。
SEC 卡匣附有散热装置 (THERMAL PLATE),并有线路支持使用
DIB 架构让 L2 快取能够与一般汇流排 (BUS)
分离,而使用更快的时脉运作。
SEPP(Single Edge Processor Package)英特尔
(INTEL) 在 CELERON 处理器 (PROCESSOR)
上使用的包装方式,类似 SEC 包装,与 SLOT 1
兼容,没有散热片 (THERMAL PLATE) 与外壳。
SIMD(Single Instruction Multiple Data,单指令多数据流)
能够复制多个操作,并把它们打包在大型寄存器的一组指令集,例:3DNow!、SSE。
SiO2F(Fluorided Silicon Oxide,二氧氟化硅)
制造电子元件才需要用到的材料。
SOI(Silicon on insulator,绝缘体硅片)
SONC(System on a chip,系统集成芯片)
在一个处理器中集成多种功能,如:Cyrix MediaGX。
SPEC(System Performance Evaluation Corporation,系统性能评估测试)
测试系统总体性能的Benchmark。
Speculative execution(预测执行)
一个用于执行未明指令流的区域。当分支指令发出之后,传统处理器在未收到正确的反馈信息之前,是不能做任何工作的,而具有预测执行能力的新型处理器,可以估计即将执行的指令,采用预先计算的方法来加快整个处理过程。
SQRT(Square Root Calculations,平方根计算)
一种复杂的运算,可以考验CPU的浮点能力。
SSE(Streaming SIMD Extensions,单一指令多数据流扩展)
英特尔开发的第二代SIMD指令集,有70条指令,可以增强浮点和多媒体运算的速度。SSE即Streaming SIMD Extensions 的缩写,是指Pentium !!! 处理器中新增加的70条指令,即最初人们所说的MMX2指令。迄今为止,Pentium !!! 最大的特点也就是这70条称为KNI(Kaimat New Instruction)的新指令。SIMD(SINGLE INSTRUCTION MULTIPLE DATA)的意思是单指令多数据处理;因此,SSE可以理解为:在同一个处理器操作或同一串连续时钟周期内,处理多个浮数据流的内部汇编程序命令。
SSE允许在同一时间内并行执行4条指令,这在很大程度上提高了CPU的处理能力。例如:同时进行计算或预取指令,从而使处理器处于连续的工作状态。由于游戏和其他3D程序需要作大量的浮点运算,从而使得CPU必须耗费大量时间用于处理浮点操作,但若一个程序采用可以并行执行4条指令 的SSE指令集来实现,该程序运行可以比原先未用SSE指令时快30%-100%。SSE还另外增加了8 个128位的寄存器,从而可以与MMX/FPU寄存器分离开来,程序可以在 MMX/FPU与SSE之间平稳转换。当然,这些程序必须利用SSE代码编写才可以看出SSE的优势。新的SSE指令包括SIMD浮点指令,SIMD整数指令及内存管理指令。其中一些重要的新指令如:无符号数MMX乘法指令PMULHUW可提高3D 光栅处理效率, 均衡打包操作指令PAVG及PAVGW(WORD)有助于改善MPEG-2的象素运动补偿功能,在两个打包值中找到最小值指令MINPS/PMIN不仅有助于色彩箝位处理,而且对于语音识别驱动系统的性能也可以提高33%左右。这些指令与SSE指令集中的其他指令都有助于提高依赖于浮点运算的各种应用程序的执行效率。