
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
CPU可以说是计算机的核心组件之一了,而本文我们就通过案例分析来简单了解一下,CPU设计都需要掌握哪些知识点。希望通过对本文的阅读,大家对计算机硬件能够有更多的了解。
整数范围
CPU数字表示方法是一个设计上的选择,这个选择影响了设备的工作方式。一些早期的数字计算机内部使用电气模型来表示通用的十进制(基于10进位)记数系统数字。还有一些罕见的计算机使用三进制表示数字。几乎所有的现代的CPU使用二进制系统来表示数字,这样数字可以用具有两个值的物理量来表示,例如高低电平等等。
时钟频率
主频=外频×倍频。大部分的CPU,甚至大部分的时序逻辑设备,本质上都是同步的,即它们被设计和使用的前题是假设都在同一个同步信号中工作。
指令周期(Instructioncycle)
指令周期是指CPU要执行一条机器指令经过的步骤,由若干机器周期组成。一般会经历“取指”,“译码”,“发射/执行”和“写回”这些操作。处理器执行程序的过程就是不断重复这几个操作。
指令流水线(Instructionpipeline)
在1978年的Intel8086处理器都只能一次执行单指令。Intel次在486芯片中开始使用,原理是:当指令之间不存在相关时,它们在流水线中是可以重叠起来并行执行。
当一条指令,完成了“取指”操作,开始进行“译码”的时候,取指模块就可以取程序的下一条指令了,这样可以让这些模块不至于闲着没用,即指令流水线可以两个以上的指令同时执行(类似车间流水线)。一般的四层流水线架构如下图所示,不同的颜色格表示不同的指令。
指令并行(Instruction-levelparallelism)
同时执行多条指令。比如,一边从memory读数据,一边进行fft处理。我们经常听到的超标量(Superscalar),超长指令字(VLIW),乱序执行(Out-of-orderexecution)等等技术都是发掘指令级并行的技术。
数据并行(Dataparallelism):
一个人指令同时处理多个数据。我们常听到的向量处理器(vectorprocesor),张量处理器(Tensorprocessor)多数都是利用了SIMD(一条指令可以处理多个数据,比如一个向量乘法)技术。
并发与并行
并发与并行的通俗理解参考知乎问答-指令级并行,线程级并行,数据级并行区别?线程的概念是什么?如下:
线程级并行(Thread-LeverParallelism)
线程级并行主要由下面两种技术的支撑:
超线程技术:2004年,奔腾4实现了Hyper-Threading.(单核心双线程)
多核技术-物理核心:2005年,英特尔宣布他的一个双核心EM64T处理器,和PentiumD840
超线程技术实现了单个物理核心同时两个线程,也就是别人常说的虚拟内核数。比如单物理核心实现的双线程,它同时可以处理两个线程,它的物理核心数其实是是1个,通过Hyperthreading技术实现的线程级并行(ThreadLeverParallelism)。至于技术细节的实现,这涉及到高速缓存的知识。
线程级并行的好处:
当运行多任务时,它减少了之前的操作系统模拟出来的并发,那么用户进行多任务处理时可以运行更多的程序进行并发了。
它可以使单个程序运行更快。(仅当该程序有大量线程可以并行处理时)
虽然在1960年代已经通过操作系统已经实现了线程级并发,但这种频繁的上下文切换意味损失了CPU的处理效率。
性能
CPU的性能和速度取决于时钟频率(一般以赫兹或十亿赫兹计算,即hz与Ghz)和每周期可处理的指令(IPC),两者合并起来就是每秒可处理的指令(IPS)。IPS值代表了CPU在几种人工指令序列下“高峰期”的执行率,指示和应用。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei456学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。