大话处理器之第1-5章笔记

来源:互联网 发布:数据分析师考试报名 编辑:程序博客网 时间:2024/05/18 13:04

第1章漫游计算机世界

销售技巧是锦上添花,而优质的产品特性才是制胜的关键。乔布斯的秘密产品特性就是图形界面。1984年,Macintosh诞生了。

商家喜欢消耗品,不喜欢耐用品。

存储器:上世纪80年代的存储器市场是日本人的市场,不过到了90年代,PC市场异常火爆,而PC时长并不需要这么高质量的DRAM,日本公司没有反应过来,韩国和台湾公司乘势生产物美价廉的DRAM,韩国迅速成为最大的存储器生产国家。此后,韩、台在DRAM领域的相继崛起额,美国在处理器领域称霸,导致日本在半导体行业全面衰退。

在处理器行业,Intel是老大。在半导体存储器行业,三星半导体是老大。三星是最大的DRAM和闪存生产公司。

三星的成绩离不开它的执着,一个公司做存储器做了10年亏损还在做,这家公司就是三星。我们不能只见贼吃肉,不见贼挨打,三星屡战屡败,屡败屡战,终于成就了今天的巨无霸。

芯片组:上北下南,和处理器相邻的桥称为北桥,北桥下面的称为南桥。北桥负责处理器与那些需要较高通信带宽部件间的通信,主要是存储器和显卡,由于Intel Core i7处理器中集成了内存控制器,因为内存直接接在了处理器上,很多处理器没有内存控制器,那么北桥芯片则会提供内存控制器连接内存。

南桥负责处理器与较低速度部件间的接口,通常连接各种输入输出设备,比如USB、硬盘、网卡、鼠标等其它PCI设备。

近几年来,处理器中的晶体管密度有了很大的提升,以至于完全可以将芯片组的功能集成到处理器内部,这样主板的面积就减小了,计算机更小型化,封装成本也降低了。

键盘:现在用的QWERTY键盘最早来自于打字机,专家们发现,QWERTY减半的效率并不是最高,又提出了一套DVORAK的键盘。但是很多东西,人们一旦熟悉了,就不想在改变了,因此QWERTY键盘仍然占据绝对的主流。

2D显示器:在显示效果上,液晶的确实没法和等离子相比,等离子在色彩艳丽程度、亮度范围、运动时拖影效果上都好于液晶。不过等离子的更贵、更重、更耗电。

3D显示器:《阿凡达》的票房收入超过中国一年电影的票房总收入。

数字纸张:电子书市场,亚马逊、汉王、Sony等使用新的显示技术—数字纸张。数字纸张不同于LCD显示屏,它断电后可以保留信息,只是在换页时才需要耗电。因此电子书的功耗很低。电子书的显示效果和普通纸相似,光线较为自然,不像LCD显示屏这么刺眼,因此可以长时间观看。

第2章初识处理器—掀起你的盖头来

吃菜吃心,听话听音,听话要听是给谁说的。

性能和功耗是处理器最重要的两个硬指标,很难平衡。

软件兼容性:微软Vista操作系统兼容性差。

芯片成熟度:1994年,美国教授ThomasR. Nicely发现Intel Pentium处理器浮点运算单元的一个bug,让Intel损失了4.75亿美元。

第3章指令集体系结构(ISA)—处理器的外表

2009年6月15日,龙芯获得MIPS32和MIPS64Architecture的授权,使用MIPS指令集。指令集就像语言(汉语、英语等)一样,定义一套语言其实并不难,难的是你要让别人去接受你定义的语言。如果重新使用一套指令集,与之配套的编译器、操作系统、各种应用软件也都需要重新编写,这样的工作量和难度,是无法想象的。因此,使用现存的指令集及软件,也是无奈的选择。

处理器公司对外发布的指令集手册,就是使用汇编语言来描述的。

CISC:ComplexInstrucion Set Computer,复杂指令集计算机;

RISC:ReducedInstrucion Set Computer,精简指令集计算机;

由于简单指令大部分时间都能在一个cycle内完成,因此处理器的频率得以大幅提升。这个时期为了更好地实现流水线,指令集采用了定长编码,这样指令的译码过程就可以简化了。由于指令集更精简,这种思想的指令集就叫RISC指令集,以前的指令集就叫CISC指令集。RISC先驱之一StevenPrzybylski半开玩笑地把RISC定义为:“1985年之后发布的所有处理器”。ARM、MIPS、Power、DSP等都是RICS体系,其中MIPS最遵守RISC规则。

a)      IBMRISC:Power、PowerPC;

b)      BerkeleyRISC:ARM、SPARC;

c)      StanfordRISC:MIPS、Alpha;

“婚姻怎么选都是错,长久的婚姻就是将错就错。”秉承这一理念,Intel决定一条路走到黑,将兼容性进行到底,但是CISC架构很难提升性能的压力仍然摆在Intel面前。Intel在PentiumPro处理器中,使用P6微架构,将x86指令集先解码为类似于RISC指令的微操作(micro-operations,简称uops),以后的执行过程采用RISC内核,这种架构一直延续至今,成为一代经典。

CISC与RISC的优缺点与现状。

处理器/指令集呈现螺旋式的发展:逐渐做大,然后优化,然后又做大……从量变到质变,然后进入下一轮的量变和质变,只是此“质”已非彼“质”了。

处理器的两大核心技术:芯片制造工艺(32nm、22nm等),微处理器架构。

指令集:

a)      x86:硕大的大象;臃肿但高性能;Intel和AMD;

b)      ARM:稳打稳扎的蚁群;低功耗、低成本;手机市场90+%份额;高通、TI、东芝、三星;

c)      MIPS:优雅的孔雀;Broadcom、Cavium等;

d)      Power和PowerPC:昔日的贵族;性能卓越;IBM、Freescale;

e)      C6000:偏安一隅的独立王国;DSP;TI公司;

MIPS,Microprocessorwithout Interlocked Piped Stages,无内部互锁流水级微处理器;

POWER:PerformanceOptimized With Enhanced RISC

PowerPC:Power- Performance Computing;

Intel的x86处理器是使用小端字节序。存储格式:0x78563412;

指令类型:算术逻辑指令、控制指令、数据传送指令(load、store);有了这3类指令,处理器就能完成各种复杂的计算。

寻址方式:立即数、寄存器、存储器;

汇编语言格式:机器字长、操作数个数、操作数顺序、大小端、指令类型、寻址方式;

指令集总结:兼容性、易实现、易编程、高性能;

第4章微架构—处理器的内心世界

流水线的效率问题解决方法:拆分长节拍;增加长节拍的处理单元;

执行步骤划分的越细,则每个执行步骤的时间越少,处理器的执行频率可以越高。通用CPU的流水线深度要比嵌入式处理器长,因此频率也高。流水线深度越深,处理器内部结构也越复杂。

第5章Cache—处理器的“肚量”

时间局部性(TemporalLocality):如果某个数据被访问,那么在不久的将来它很可能再次被访问,例如循环;

空间局部性(SpatialLocality):如果某项数据被访问,那么与它相邻的数据很可能很快就被访问,例如数组。

多核处理器的Cache结构:

Core 0

Core 1

L1P

L1D

L1P

L1D

L2

L2

L3

    

L1中,程序(Program)和数据(Data)使用各自的缓存(L1P和L1D)。而在L2中,程序和数据共用一套缓存。通常L1空间为几十K,L2空间为几百K。多核处理器中,一般每个核独享自己的L1和L2,所有的内核会共用一个大容量的L3(单核中没有L3)。

整个Cache空间被分成了N个line(Cacheline),通常是32 byte、64byte等,Cache line是Cache和内存交换数据的最小单位,每个Cache line最少会包含如下3部分:

Block中存储的是内存在Cache中缓存的数据,tag中存储的是该Cacheline对应的内存块的地址,valid表示该Cacheline中的数据块是否有效。

在x86处理器中,处理器内部的存储器全部作为Cache使用,不纳入存储空间的编址,Cache对程序员是透明的,Cache完全由处理器硬件管理。

而在DSP等性能要求很高的嵌入式处理器中,处理器内部的存储器一部分作为Cache,另一部分作为可寻址存储器,程序员可直接访问这部分空间。


缩写:

EDA,Electronic Design Automation,电子设计自动化

HDL,Hardware Description Language,硬件描述语言

IP,Intellectural Property,知识产权

PowerPC,PPC,PerformanceOptimization With Enhanced RISC – Performance Computing

SOC,System On Chip,片上系统

原创粉丝点击