处理器
文章平均质量分 50
木兮清扬
《大话处理器》作者
展开
-
连载:编写高效代码(9) 减少处理器不擅长的操作——不要逼我做我不喜欢的事情
尺有所短,寸有所长,每种处理器都有自己擅长与不擅长的操作。 在与处理器配套发布的指令集手册中,都会描述每个指令的执行周期,单周期指令是处理器最喜欢的,不仅执行时间短,而且利于流水线执行。加、减、逻辑运算等,常常是单周期指令,乘、除、分支指令、浮点指令、内存存取操作等,常常需要较多的时钟周期。我们在编程时,就应该少使用执行时间长的指令。 Q:这些复杂指令都有它的用原创 2011-12-07 21:54:32 · 3497 阅读 · 1 评论 -
《大话处理器》连载——微架构(20) 处理器并行设计——Flynn分类
处理器就是处理一系列指令和数据的设备,因此,从指令和数据这2个维度,可以对处理器的系统结构分类。1966年,Flynn将处理器系统结构分成了如下4类:Flynn分类 SISD(single instruction single data),一次处理一原创 2011-08-26 21:54:37 · 4425 阅读 · 0 评论 -
《大话处理器》连载——微架构(19) 乱序执行总结
简单来说,指令在乱序执行内核中的处理过程可分为3个步骤: 指令乱序执行步骤 乱序执行步骤 In-order issue顺序发射,负责安排任务Out-of-order execut原创 2011-08-25 22:06:10 · 6673 阅读 · 4 评论 -
《大话处理器》连载——微架构(18) 指令的顺序提交
在指令的执行过程中,通常会有中断和异常产生,例如在下面这个例子中, 中断例子 XOR指令执行完后,来了一个中断,中断处理一般都是将处理器的ISA寄存器压栈,执行中断服务程序,然后再退回来执行中断后面的指令。精确中断(Precise Interrupt)原创 2011-08-24 23:01:30 · 2728 阅读 · 0 评论 -
《大话处理器》连载——微架构(17) 指令调度
在前面乱序设置陷阱的利子中,如果没有那个聪明的士兵,乱序也就无从谈起。同样,处理器的乱序执行内核也需要一个调度器,分析指令间中的相关性,分析指令什么时候能开始执行。 指令什么时候能开始执行呢? 对于一条指令来说,它有操作码和操作数,操作码描述指令要原创 2011-08-23 21:00:02 · 2178 阅读 · 0 评论 -
《大话处理器》连载——微架构(16) Buffer的作用——去耦合
在顺序执行内核中,指令依次流经各个流水线单元,不需要进行缓存,而为了要能乱序执行,首先需要一个Buffer来缓存还没有执行的指令,然后在这个Buffer中去调度指令的执行顺序。乱序执行内核的基本模型如下: 乱序执行基本结构 现代处理器中有大量的原创 2011-08-22 22:37:22 · 2242 阅读 · 0 评论 -
《大话处理器》连载——微架构(22) Superscalar处理器实例——Intel P4 CPU
奔4处理器是Intel的经典之作,它是采用乱序执行内核的超标量处理器。P4采用的微架构称为NetBurst,基本结构如下: 奔4处理器微架构的基本结构 奔4处理器微架构被分成了4大部分: • 存储子系统(Memory subs原创 2011-09-19 19:02:42 · 4626 阅读 · 1 评论 -
《大话处理器》连载——微架构(15) 寄存器重命名
寄存器不能随便改名字,否则原来的数据依赖关系被打乱,会导致错误的执行结果,那么怎样才能既保留原先的数据依赖关系,又能将没有数据依赖性的指令的寄存器改名字呢?这里介绍一种在处理器中经常实现的策略:1. 将每条指令的目的寄存器映射到新的物理寄存器;2.原创 2011-08-21 21:56:50 · 5680 阅读 · 0 评论 -
《大话处理器》连载——微架构(13) 去数据相关和控制相关
这些指令的相关性限制了指令的乱序调度与并行调度,需要去除这些相关以达到较好的指令调度。(1) 去数据相关 数据相关在代码中肯定是有的,如果每条语句都没有数据相关,那么它们就不能组合起来完成一项任务。不过,数据相关虽然不能完全消除,但是可以适当减少。例如这段代原创 2011-08-17 20:43:52 · 2362 阅读 · 0 评论 -
《大话处理器》序一与当当网预售地址
当当网预售链接序一 寻宝处理器的引人入胜之旅 当出版社的编辑介绍万木杨的这本书给我时,我对书名《大话处理器》是有一定担心的,其一:处理器和计算机的发展几十年来风起云涌,其间有天才的创新、看似偶然的分叉和囿于商业市场考量的成功与失败,一部技术发展史绝不比波谲原创 2011-08-29 21:24:57 · 3484 阅读 · 1 评论 -
处理器——半导体巅峰,纵横四十年
《大话处理器》序三 处理器——半导体巅峰,纵横四十年 处理器,这个半导体科技的最前沿,在过去40年的信息化浪潮中充当了发动机的核心角色。它是如此高贵、而又如此普及,各国政府争相投资,普通家庭却人人拥有;它是如此流行、而又如此神秘,不只工程师原创 2011-09-21 21:33:20 · 3741 阅读 · 1 评论 -
《大话处理器》连载——微架构(21) 指令并行的“绿营”和“蓝营”
程序是由一系列指令组成的,如果要节省执行的时间,最直接的方法就是将指令并行起来执行。在处理器内部通常有很多的执行单元,如加法单元、乘法单元、内存访问单元、浮点运算单元等等,每种执行单元负责一类具体的指令。在前面介绍的乱序执行内核中,每个cycle最多只发射一条指令,即使有时很多指原创 2011-08-29 21:16:54 · 3918 阅读 · 0 评论 -
连载:编写高效代码(8) 空间换时间——我们总是在走,却忘了停留
时间和空间的关系,是霍金这种智商的人要研究的东西,我们只需要知道,在编程时,空间是可以换时间的,时间也是可以换空间的。 李开复在他的自传《世界因你不同》中描述了他小时候在美国学校里的一个故事,老师出了道题:“谁知道1/7等于多少?”小开复马上大声回答:“0.142857”,老师和同学们都惊呼开复是个天才,其实事实情况是,开复以前在台湾时就记下了这个答案。这就是一个典型的以空间(原创 2011-12-06 19:06:48 · 4481 阅读 · 1 评论 -
连载:编写高效代码(7) 减少函数调用——不要老打断我
函数是结构化程序设计的产物,它使代码更加模块化,耦合性更低,重用性更高。不过,函数调用会带来额外的开销,除了引起跳转外,还会产生额外的指令。 人都有这样的经验,做一件事情时,如果被人打断,重新再回来做这件事情,就需要一段恢复时间,如果老是被打断,那事情就没法做了。函数调用也是这样,要进行参数压栈出栈、寄存器保存、指令跳转等。多个步骤如果程序的性能要求较高,就可以将一些小的函数直接原创 2011-12-05 19:43:44 · 5216 阅读 · 1 评论 -
《大话处理器》相关主题汇总
《大话处理器》网上主要购买渠道:(持续更新ing)京东商城 http://book.360buy.com/10839552.html当当网 http://product.dangdang.com/product.aspx?product_id=22489224&ref=search-1-pub#extract卓越亚马逊 http://www.amazon.cn/%E5%A原创 2011-09-03 11:44:22 · 11759 阅读 · 4 评论 -
《大话处理器》销售成绩(当当新书热卖榜 计算机/网络类 第一名)
9.23到货------从新书榜下架,当当新书热卖榜 计算机/网络类 第一名 当当 图书畅销榜>计算机/网络>计算机体系结构 近7日畅销榜 第一名 china-pub 计算机 计算机组织与体系结构类 近7日排行 第一名 京东商城 计算机与互联网 > 计算机理论、基础知识 第2名 卓越亚马逊 计算机与互联原创 2011-09-24 19:06:08 · 3654 阅读 · 0 评论 -
《大话处理器》书友评价
China-Pub VIP 一级评论员 54yuri 不错,看了作者介绍,发现作者涉猎很广,能融汇贯通、深入浅出的讲清楚这么底层的东西确实不是一般牛人能够做到的,我最大的收获来自两个方面1)书中不仅讲解知识,还穿插了大量的历史,这点对技术的理解来说非常重要。很多时候我们只知道某某标准,却不知道这个标准背后的故事 -- 都是利益之争、用户之争。当我们明白了这些之后再去看一些技术标准,就不原创 2011-10-17 20:42:08 · 3067 阅读 · 1 评论 -
《大话处理器》ppt
http://ishare.iask.sina.com.cn/f/19800840.html原创 2011-09-24 19:55:57 · 4699 阅读 · 0 评论 -
《大话处理器》勘误
虽然已经很仔细的检查了很多遍,不过错误还是没法避免,有的是本书内容的问题,有的是出版社后期排版,美编修改图片,以及印刷时,导致的问题,这些错误可能会影响读者的阅读,在此对读者朋友说一声对不起,后续印刷会改正过来,读者朋友如果发现了新的问题,以及写的不好的地方,或者想要增加什么内容原创 2011-09-29 23:18:12 · 3249 阅读 · 1 评论 -
《大话处理器》输出到台湾了
台湾是中国半导体最成功的省份,《大话处理器》上市不过10余日,已被台湾佳魁出版社购买繁体版权,输出到台湾了。原创 2011-10-08 19:27:49 · 3300 阅读 · 1 评论 -
《大话处理器》连载——微架构(14) 去伪相关——让伪军投诚
什么名字前面加个伪总不太好,就像日伪军,虽然不是日本军,但是也是敌军,也需要被消灭。好在伪军很容易投诚,不像日军那样顽固,誓死效忠天皇。在指令相关中,数据相关就是日军,伪相关就是伪军,可以想办法让伪相关投诚,变成不相关。数据相关和伪相关 处理器的IS原创 2011-08-18 22:39:29 · 2140 阅读 · 1 评论 -
《大话处理器》连载——微架构(12) 指令的相关
相关是影响乱序调度的罪魁祸首,如果指令2的执行需要依赖指令1的结果,我们就说这2条指令是相关的,指令2必须在指令1后面执行,无法乱序。 下图描述了指令间的相关性:指令的相关性 (1) 寄存器相关 当2条语句没有共用寄存器时,它们之间是原创 2011-08-16 20:01:06 · 3172 阅读 · 0 评论 -
《大话处理器》连载——微架构(11) 从顺序执行到乱序执行——因时制宜
话说有一日,项羽率兵来打刘邦,刘邦命士兵在城外3个路段分别设3个陷阱,刘邦给出如下的指令: 攻城战 偏巧那一日路段1下雨没干,没法设置陷阱,众士兵就准备在那里等待,这时一个聪明的士兵就说:“敌军不日即来攻城,与其众人在此等待,何不先将陷阱设于原创 2011-08-15 20:12:59 · 5177 阅读 · 2 评论 -
《大话处理器》连载——微架构(7) 流水线上的冒险——数据冒险
(2) 数据冒险 流水线使原先有先后顺序的指令同时处理,当出现某些指令的组合时,可能会导致指令使用了错误的数据。看下面这个例子:寄存器访问的数据冒险 add R1,R2,R3将寄存器R2和R3的和赋给R1,add R4,R1,原创 2011-08-09 21:01:13 · 7128 阅读 · 1 评论 -
《大话处理器》连载——微架构(6) 流水线上的冒险——免不了磕磕绊绊
人生路上总是磕磕绊绊,流水线也一样。流水线中每个节拍硬件被充分利用,这只存在于理想的乌托邦中,现实总会出现这样或那样的问题,让原本顺畅的流水线出现停顿,断断续续。这些导致流水线出现停顿的因素称为流水线冒险(Hazard)。下面我们就来看看哪些情况会导致流水线停顿,以及怎样解决这些原创 2011-08-08 19:16:07 · 3415 阅读 · 1 评论 -
《大话处理器》连载——微架构(5) DSP更深的流水线
不同的处理器会有不同的流水线划分。在TI C6000 DSP中,所有指令的执行都可分为Fetch(取指)、Decode(译码)、Execute (执行)3个大的步骤,每个大的步骤又可以细分为一些小的步骤: C6000流水线节拍 DSP流水线描述原创 2011-08-07 22:35:48 · 4134 阅读 · 0 评论 -
《大话处理器》连载——微架构(3) 从子弹射击到指令执行
子弹的射击过程,可以被分成3个步骤:上膛、瞄准、射击。指令的执行过程,其实也可以划分为类似的3个步骤:取指、译码、执行。指令的执行过程和射击过程的类比 指令存储在内存中,要被加载到内核中,这个过程就是取指。 指令是经过一定格式编码的,原创 2011-08-04 22:49:45 · 2966 阅读 · 0 评论 -
《大话处理器》连载——微架构(4) 史上最经典的5级流水线
处理器内部有很多通用寄存器,这些寄存器用来存储指令的操作数,它对程序员可见,如x86有8个通用寄存器,RISC处理器则更多,常有32个或64个等等。这一堆寄存器也被叫做Register file(寄存器堆)。 在流水线设计中,为了确保不同流水线节拍不会相互影响,原创 2011-08-04 23:02:53 · 11947 阅读 · 1 评论 -
《大话处理器》连载——微架构(2) 顺溜流水线的深入分析
在上一节中,顺溜已经告诉了我们流水线的基本概念,顺溜将整个射击过程分成了2个步骤(术语称之为节拍),两个步骤可以并行起来执行,只是时间上进行了些许的错位,这就是流水线的本质。 这条流水线被划分成了2个节拍,也就是2级流水线,于是我们引出了流水线的第一个问题:流水原创 2011-08-04 22:41:13 · 2884 阅读 · 0 评论 -
《大话处理器》目录
《大话处理器》已由清华大学出版社出版,9月下旬即可上市,欢迎大家关注。 文字版目录第1章 漫游计算机世界... 11.1 计算机的前世、今生、来世... 31.1.1 计算机的诞生... 31.1.2 从军用到民用——飞入寻常百姓家... 12原创 2011-07-22 23:28:55 · 10821 阅读 · 12 评论 -
《大话处理器》连载——微架构(9) 分支预测——以古为镜,可以知兴替
高级语言中的for、if、else、switch等等,都是通过跳转来实现的。正是由于计算机指令中具有能够改变程序流向的指令,才使得程序结构灵活多样,程序功能丰富多彩。例如下面这个for循环:for循环在x86上的汇编实现 在这个for循环例子中,jmp是原创 2011-08-11 22:21:12 · 4750 阅读 · 1 评论 -
《大话处理器》连载——微架构(10) 分支预测实现与条件执行
(2) 分支预测实现 算法是基础,有了算法后,就可以在处理器中实现分支预测功能。Intel的分支预测模块包含了3个单元: 1. Branch Target Buffer(BTB) 2. The Sta原创 2011-08-14 21:19:52 · 5383 阅读 · 0 评论 -
《大话处理器连载》 PC机结构探秘(5) 输入设备——五觉
输入设备——五觉 人靠五觉(听觉、视觉、味觉、触觉、嗅觉)来接受外界的信息,计算机也要靠输入设备来接受信息。(1) 键盘 现在用的QWERTY键盘最早来自于打字机,专家们发现,QWERTY键盘的效率并不是最高,又提出了一套DVORAK的键盘。但是很原创 2011-07-28 22:36:26 · 2560 阅读 · 0 评论 -
《大话处理器》Cache一致性协议之MESI
Cache一致性协议之MESI 处理器上有一套完整的协议,来保证Cache一致性。比较经典的Cache一致性协议当属MESI协议,奔腾处理器有使用它,很多其他的处理器都是使用它的变种。单核Cache中每个Cache line有2个标志:dirty和val原创 2011-07-18 21:05:36 · 59314 阅读 · 33 评论 -
《大话处理器》连载—PC机结构探秘(1)
§1.3 PC机结构探秘 当我们把计算机和人做类比时,硬件就相当于人的身体,软件就相当于人的三魂七魄(中国古代的说法),或者灵魂(西方宗教的说法),或者思维(现代的说法)。 同人一样,计算机也是由很多部分组成,我们先来解剖一部PC机,看看它的内原创 2011-07-22 23:08:12 · 5786 阅读 · 0 评论 -
《大话处理器》连载—PC机结构探秘(2)
§1.3.2 存储器——大肚能容,容天下难容之事(1) 存储器技术 人脑可以即做运算,又存储数据,而在计算机中,计算由处理器完成,数据存储,则由存储器完成。下图是计算机的存储结构: 存储单元的层次结构 CPU在做计算时,是原创 2011-07-23 21:49:03 · 2758 阅读 · 0 评论 -
《大话处理器》连载—PC机结构探秘(3) 存储器公司
(2)存储器公司 计算机发明之后,市场上对存储器需求很大,华人王安发明了磁芯存储器,王安电脑公司一度办得有声有色。 现在大家都知道Intel是做处理器的,而且第一个处理器也是它发明的,不过Intel是以存储器起家的,1969年,Intel首创了原创 2011-07-24 22:04:37 · 2604 阅读 · 1 评论 -
《大话处理器》处理器的分层模型——从MIPS、龙芯、ST的关系谈起
处理器的分层模型——从MIPS、龙芯、ST的关系谈起 2009年6月15日,MIPS公司网站发布新闻,中国科学院计算所取得MIPS32®和MIPS64® Architecture的授权,用于龙芯的开发和商用。新闻见下面的链接:(http://www.原创 2011-07-26 20:54:41 · 4811 阅读 · 0 评论 -
《大话处理器连载》—PC机结构探秘(4) 主板与芯片组——架起沟通的桥梁
计算机内部这么多部件,总要有个板子来承载,这个板子就是主板。主板提供了各种各样的接口,CPU、显卡、声卡、硬盘、光驱、PCI-E插槽、USB插槽等等部件都接在上面。除了起物理连接作用外,主板上还有2颗重要的芯片,俗称北桥和南桥芯片,统称为芯片组,它们的主要工作,就是负责处理器和其原创 2011-07-27 22:54:32 · 2295 阅读 · 0 评论 -
《大话处理器》连载—PC机结构探秘(6)显示设备——脸面(1)
女生们常说男人是视觉动物,并对此表示不满,不过大家看《非诚勿扰》时就会发现,当男嘉宾容貌一般时,女生们的问题通常比较犀利,说话的语气也不那么注意,而要是有一个很帅的男嘉宾出现时,女生们则都改作温柔状,说话的语气、提出的问题都要柔弱很多,以免引起不好的印象。 从上原创 2011-08-01 20:10:48 · 2037 阅读 · 0 评论