zoukankan      html  css  js  c++  java
  • CPU学习笔记(1)

    CPU学习笔记(1)


    作者: Badcoffee

    Email: blog.oliver@gmail.com
    Blog: http://blog.csdn.net/yayong
    2005年4月

    这是作者学习硬件基本知识过程中的笔记,由于以前很少接触这方面的知识,又缺乏系统的
    学习,若有错误之处,请多多指正。

    一、Intel CPU的主要部件:

    1. CPU内核:

    是真正意义上的处理器,用于执行指令和处理数据,其计算能力与CPU的速度密切相关。

    2. L1 Cache

    CPU内部集成的L1 Cache(一级高速缓存),又被称为主缓存,用于暂存部分指令和数据。它和
    CPU同频运行,是所有Cache中速度最快的。它一般由SRAM组成,造价昂贵而且结构复杂,由于
    CPU体积有限,所以L1 Cache的容量一般不会太大。CPU的L1 Cache又分为D-Cache(Data Cache,
    数据高速缓存)和ICache(Instruction Cache,指令高速缓存)。这种双路高速缓存架构减少
    了争用高速缓存所造成的冲突,有效提高处理器性能。不过Pentium 4处理器放弃了ICache而采
    用了更高效的T-Cache(Trace Cache)。

    3. L2 Cache

    即二级高速缓存。高速缓存器,提供CPU计算所需的指令和数据。通常由三个部件组成:L2 Cache
    Controller、Cache SRAM和Cache tag RAM。分别用作控制器、存储器和缓存检索表。
    由于L1 Cache 的成本昂贵,所以CPU内部集成了L2 Cache 以弥补L1Cache 较小的容量。L2 Cache
    一般选用SDRAM。目前CPU内部集成的L2 Cache,英文叫On-die,一般都是L1 Cache的两倍或者是四
    倍,甚至更多。在早期,二级缓存芯片多是放置在主板上,英文叫On-board,而不是集成在CPU内部的。

    4. BSB (Backside Bus):

    通常称之为后端总线。互连CPU内核和二级缓存的总线。主要负责向CPU提供L2 Cache所存储的指令
    和数据。BSB提供了66MHz、半速、全速三种速度。BSB速度决定了CPU访问Cache的速度。由于CPU所
    需的指令和数据主要来自于L2 Cache,所以BSB速度对系统性能有非常重要的影响。

    5. FSB (Frontside Bus):
    即通常所说的前端总线。互连CPU和主板芯片组的总线,一般用于互连CPU和内存控制器。
    FSB的速度即是通常所说的外频。FSB速度的高低影响CPU对主内存的存取。

    二、相关名词:

    外频:

    CPU访问内存的带宽。

    Cache Line:

    The smallest unit of memory than can be transferred between the main memory and the cache.
    Rather than reading a single word or byte from main memory at a time, each cache entry is
    usually holds a certain number of words, known as a "cache line" or "cache block" and a
    whole line is read and cached at once. This takes advantage of the principle of locality
    of reference: if one location is read then nearby locations (particularly following locations)
    are likely to be read soon afterwards. It can also take advantage of page-mode DRAM which
    allows faster access to consecutive locations.

    主存和cache之间数据传输的最小单位。每次CPU访问内存时,以Cache Line为单位,请求一个或多
    个Cache Line。Intel的P5和P6类CPU来说,一个Cache Line由32字节的数据或指令组成,也就是一
    个Cache Line共256位,当CPU向L2 Cache请求1个Cache Line时,那么将从BSB上向CPU传输256位数
    据或指令,如果BSB为64位宽,那么至少要分4次传输,如果每次传输能在1个Clock内完成,则传完
    一个Cache Line至少需要4个Clock;若BSB数据宽度为256位,则只需在1个Clock内完成。

    write through:

    A cache architecture in which data is written to main memory at the same time as it is cached.

    write back:

    A cache architecture in which data is only written to main memory when it is forced out of the cache.

    ATC:

    Intel的一种BSB总线技术,称为Advanced Transfer Cache简称ATC。

    MIPS:

    MIPS(Million Instructions per Second)是处理器每秒中能执行几百万条指令的表示单位。这是
    一种过时的而且不科学的衡量处理器速度与性能的度量单位。


    SSE

    SSE 指令集是Intel 为其Pentium Ⅲ系列处理器所开发指令集,它包括8条连续数据块传输内存优
    化指令、12条MMX整数运算增强指令和50条SIMD浮点运算指令。这些指令能够强化系统对图形、视
    频和音频的处理。SSE2 比起上一代增加了144条指令。


    ALU

    ALU(Arithmetic Logic Unit,算术逻辑单元)是CPU内部处理所有数据的部分,用来进行数学逻辑运算。

    FPU

    FPU(Floating-Point Unit,浮点运算单元)是目前专门进行浮点运算的单元。在Intel 80486 之前,
    FPU作为一块特殊设计的独立芯片插装在主板上。它曾被称作数字协同处理器或浮点运算处理器。
    在Intel 80486 之后,CPU一般都内置了FPU。

    MMU

    MMU(Memory Management Unit,存储器管理单元)是用来管理虚拟内存的系统组件。MMU 通常是CPU
    的一部分,本身有少量的存储空间用来存放从虚拟地址到物理地址的匹配表TLB(Translation Look-aside
    Buffer,或叫交叉转换表)。所有数据请求都送往MMU,由它来确定数据是在RAM内还是大容量存储设备内。

  • 相关阅读:
    P4297 [NOI2006]网络收费
    P4207 [NOI2005]月下柠檬树
    bzoj2517 矩形覆盖
    bzoj2506 calc
    ......
    SP1811 LCS
    CF585E Present for Vitalik the Philatelist
    好康的
    CF605E Intergalaxy Trips
    字符串
  • 原文地址:https://www.cnblogs.com/ainima/p/6330851.html
Copyright © 2011-2022 走看看