深入浅出计算机组成原理

课程目录:
第00课、开篇词丨为什么你需要学习计算机组成原理?.rar
第01课、冯-诺依曼体系结构:计算机组成的金字塔.rar
第02课、给你一张知识地图,计算机组成原理应该这么学.rar
第03课、通过你的CPU主频,我们来谈谈“性能”究竟是什么?.rar
第04课、穿越功耗墙,我们该从哪些方面提升“性能”?.rar
第05课、计算机指令:让我们试试用纸带编程.rar
第06课、指令跳转:原来if.rar
第07课、函数调用:为什么会发生stackoverflow?.rar
第08课、ELF和静态链接:为什么程序无法同时在Linux和Windows下运行?.rar
第09课、程序装载:“640K内存”真的不够用么?.rar
第10课、动态链接:程序内部的“共享单车”.rar
第11课、二进制编码:“手持两把锟斤拷,口中疾呼烫烫烫”?.rar
第12课、理解电路:从电报机到门电路,我们如何做到“千里传信”?.rar
第13课、加法器:如何像搭乐高一样搭电路(上)?.rar
第14课、乘法器:如何像搭乐高一样搭电路(下)?.rar
第15课、浮点数和定点数(上):怎么用有限的Bit表示尽可能多的信息?.rar
第16课、浮点数和定点数(下):深入理解浮点数到底有什么用?.rar
第17课、建立数据通路(上):指令+运算=CPU.rar
第18课、建立数据通路(中):指令+运算=CPU.rar
第19课、建立数据通路(下):指令+运算=CPU.rar
第20课、面向流水线的指令设计(上):一心多用的现代CPU.rar
第21课、面向流水线的指令设计(下):奔腾4是怎么失败的?.rar
第22课、冒险和预测(一):hazard是“危”也是“机”.rar
第23课、冒险和预测(二):流水线里的接力赛.rar
第24课、冒险和预测(三):CPU里的“线程池”.rar
第25课、冒险和预测(四):今天下雨了,明天还会下雨么?.rar
第26课、Superscalar和VLIW:如何让CPU的吞吐率超过1?.rar
第27课、SIMD:如何加速矩阵乘法?.rar
第28课、异常和中断:程序出错了怎么办?.rar
第29课、CISC和RISC:为什么手机芯片都是ARM?.rar
第30课、GPU(上):为什么玩游戏需要使用GPU?.rar
第31课、GPU(下):为什么深度学习需要使用GPU?.rar
第32课、FPGA、ASIC和TPU(上):计算机体系结构的黄金时代.rar
第33课、解读TPU:设计和拆解一块ASIC芯片.rar
第34课、理解虚拟机:你在云上拿到的计算机是什么样的?.rar
第35课、存储器层次结构全景:数据存储的大金字塔长什么样?.rar
第36课、局部性原理:数据库性能跟不上,加个缓存就好了?.rar
第37课、理解CPUCache(上):“4毫秒”究竟值多少钱?.rar
第38课、高速缓存(下):你确定你的数据更新了么?.rar
第39课、MESI协议:如何让多核CPU的高速缓存保持一致?.rar
第40课、理解内存(上):虚拟内存和内存保护是什么?.rar
第41课、理解内存(下):解析TLB和内存保护.rar
第42课、总线:计算机内部的高速公路.rar
第43课、输入输出设备:我们并不是只能用灯泡显示“0”和“1”.rar
第44课、O性能到底是怎么回事儿?.rar
第45课、机械硬盘:Google早期用过的“黑科技”.rar
第46课、SSD硬盘(上):如何完成性能优化的KPI?.rar
第47课、SSD硬盘(下):如何完成性能优化的KPI?.rar
第48课、DMA:为什么Kafka这么快?.rar
第49课、数据完整性(上):硬件坏了怎么办?.rar
第50课、数据完整性(下):如何还原犯罪现场?.rar
第51课、分布式计算:如果所有人的大脑都联网会怎样?.rar
第52课、设计大型DMP系统(上):MongoDB并不是什么灵丹妙药.rar
第53课、设计大型DMP系统(下):SSD拯救了所有的DBA.rar
第54课、理解Disruptor(上):带你体会CPU高速缓存的风驰电掣.rar
第55课、理解Disruptor(下):不需要换挡和踩刹车的CPU,有多快?.rar
FAQ第一期丨学与不学,知识就在那里,不如就先学好了.rar
FAQ第二期丨世界上第一个编程语言是怎么来的?.rar
特别加餐丨我在2019年F8大会的两日见闻录.rar
特别加餐丨我的一天怎么过?.rar
用户故事丨赵文海:怕什么真理无穷,进一寸有一寸的欢喜.rar
结束语丨知也无涯,愿你也享受发现的乐趣.rar

下载地址:深入浅出计算机组成原理

原文地址:https://www.cnblogs.com/jsnboke/p/11823747.html

时间: 2024-08-26 05:08:56

深入浅出计算机组成原理的相关文章

深入浅出计算机组成原理:通过你的CPU主频,我们来谈谈“性能”究竟是什么?(第3讲)

一.性能到底指的是什么? 买新电脑的时候,我们会说:"原来的电脑性能跟不上了" 写程序的时候,我们会说:"这个程序西能需要优化一下" 1."性能"到底指的是什么? 在计算机组成原理乃至体系结构中"性能"都是最重要的一个主题.我在前面说过学习和研究计算机组成原理,就是在理解计算机是怎么运作的, 以及为什么要这么运作."为什么"?所要解决的事情,很多时候就是提升"性能" 2.性能有几个指标?

深入浅出计算机组成原理:异常和中断-程序出错了怎么办?(第28讲)

一.引子 过去这么多讲,我们的程序都是自动运行且正常运行的.自动运行的意思是说,我们的程序和指令都是一条条顺序执行,你不需要通过键盘或者网络给这个程序任何输入.正常运行是说,我们的程序都是能够正常执行下去的,没有遇到计算溢出之类的程序错误. 不过,现实的软件世界可没有这么简单.一方面,程序不仅是简单的执行指令,更多的还需要和外部的输入输出打交道.另一方面,程序在执行过程中,还会遇到各种异常情况,比如除以0.溢出,甚至我们自己也可以让程序抛出异常. 那这一讲,我就带你来看看,如果遇到这些情况,计算

深入浅出计算机组成原理:GPU(下)-为什么深度学习需要使用GPU?(第31讲)

一.引子 上一讲,我带你一起看了三维图形在计算机里的渲染过程.这个渲染过程,分成了顶点处理.图元处理.栅格化.片段处理,以及最后的像素操作.这一连串的过程, 也被称之为图形流水线或者渲染管线. 因为要实时计算渲染的像素特别地多,图形加速卡登上了历史的舞台.通过3dFx的Voodoo或者NVidia的TNT这样的图形加速卡,CPU就不需要再去处理一个个像素点的图元处理.栅格化和片段处理这些操作.而3D游戏也是从这个时代发展起来的. 你可以看这张图,这是“古墓丽影”游戏的多边形建模的变化.这个变化,

深入浅出计算机组成原理:32-FPGA、ASIC和TPU(上)-计算机体系结构的黄金时代(第32讲)

一.引子 过去很长一段时间里,大家在讲到高科技.互联网.信息技术的时候,谈的其实都是“软件”.从1995年微软发布Windows 95开始,高科技似乎就等同于软件业和互联网.著名的风险投资基金Andreessen Horowitz的合伙人Marc Andreessen,在2011年发表了一篇博客,声称“Software is Eating the World”.Marc Andreessen,不仅是投资人,更是Netscape的创始人之一.他当时的搭档就是我们在前两讲提过的SGI创始人Jim C

深入浅出计算机组成原理:解读TP-设计和拆解一块ASIC芯片(第33讲)

一.引子 过去几年,最知名.最具有实用价值的ASIC就是TPU了.各种解读TPU论文内容的文章网上也很多.不过,这些文章更多地是从机器学习或者AI的角度,来讲解TPU. 上一讲,我为你讲解了FPGA和ASIC,讲解了FPGA如何实现通过“软件”来控制“硬件”,以及我们可以进一步把FPGA设计出来的电路变成一块ASIC芯片. 不过呢,这些似乎距离我们真实的应用场景有点儿远.我们怎么能够设计出来一块有真实应用场景的ASIC呢?如果要去设计一块ASIC,我们应该如何思考和拆解问题呢?今天,我就带着你一

深入浅出计算机组成原理:Superscalar和VLIW-如何让CPU的吞吐率超过1?(第26讲)

一.引子 到今天为止,专栏已经过半了.过去的20多讲里,我给你讲的内容,很多都是围绕着怎么提升CPU的性能这个问题展开的.我们先回顾一下第4讲,不知道你是否还记得这个公式: 程序的CPU执行时间 = 指令数 × CPI × Clock Cycle Time 这个公式里,有一个叫CPI的指标.我们知道,CPI的倒数,又叫作IPC(Instruction Per Clock),也就是一个时钟周期里面能够执行的指令数,代表了CPU的吞吐率.那么,这个指标,放在我们前面几节反复优化流水线架构的CPU里,

深入浅出计算机组成原理:SIMD:如何加速矩阵乘法?(第27讲)

一.引子 上一讲里呢,我进一步为你讲解了CPU里的“黑科技”,分别是超标量(Superscalar)技术和超长指令字(VLIW)技术. 超标量(Superscalar)技术能够让取指令以及指令译码也并行进行:在编译的过程,超长指令字(VLIW)技术可以搞定指令先后的依赖关系,使得一次可以取一个指令包. 不过,CPU里的各种神奇的优化我们还远远没有说完.这一讲里,我就带你一起来看看,专栏里最后两个提升CPU性能的架构设计.它们分别是,你应该常常听说过的 超线程(Hyper-Threading)技术

深入浅出计算机组成原理:数据完整性(下)-如何还原犯罪现场(第50讲)

一.引子 讲完校验码之后,你现在应该知道,无论是奇偶校验码,还是CRC这样的循环校验码,都只能告诉我们一个事情,就是你的数据出错了.所以,校验码也被称为检错码(Error Detecting Code). 不管是校验码,还是检错码,在硬件出错的时候,只能告诉你“我错了”.但是,下一个问题,“错哪儿了”,它是回答不了的.这就导致,我们的处理?式只有一种,那就是当成“哪儿都错了”.如果是下载一个文件,发现校验码不匹配,我们只能重新去下载:如果是程序计算后放到内存里面的数据,我们只能再重新算一遍. 这

深入浅出计算机组成原理:设计?型DMP系统(下)-SSD拯救了所有的DBA(第53讲)

一.上节总结回顾 上一讲里,根据DMP系统的各个应用场景,我们从抽象的原理层面,选择了AeroSpike作为KV数据库,Kafka作为数据管道,Hadoop/Hive来作为数据仓库. 不过呢,肯定有不信邪的工程师会问,为什么MongoDB,甚至是MySQL这样的文档数据库或者传统的关系型数据库不适应呢?为什么不能通过优化SQL.添加缓存这样的调优手段,解决这个问题呢? 今天DMP的下半场,我们就从数据库实现的原理,一起来看一看,这背后的原因.如果你能弄明表今天的这些更深入.更细节的原理,对于什么