计算机组成原理论文
CPU运行原理
basket ca
学生姓名:***
学生学号:************
班级院系:计算机学院软件工程 计093-2
指导老师:***
travel是什么意思中央处理器(英语:Central Processing Unit,CPU),是电子计算机的主要设备之一。其功能主要是解释计算机指令以及处理计算机软件中的数据。所谓计算机的可编程性主要是指对CPU的编程。CPU、内部存储器和输入/输出设备是现代电脑的三大核心部件。由集成电路制造的CPU,20世纪70年代以前,本来是由多个独立单元构成,后来发展出微处理器CPU复杂的电路可以做成单一微小功能强大的单元。
“中央处理器”这个名称,笼统地说,是对一系列可以执行复杂的计算机程序的逻辑机器的描reign
述。这个空泛的定义很容易地将在“CPU”这个名称被普遍使用,之前的早期计算机也包括在内。无论如何,至少从20世纪60年代早期开始(Weik 1961),这个名称及其缩写已开始在电子计算机产业中得到广泛应用。尽管与早期相比,“中央处理器”在物理形态、设计制造和具体任务的执行上有了戏剧性的发展,但是其基本的操作原理一直没有改变。
早期的中央处理器通常是为大型及特定应用的计算机而定制。但是,这种昂贵的为特定应用定制CPU的方法很大程度上已经让位于开发便宜、标准化、适用于一个或多个目的的处理器类。这个标准化趋势始于由单个晶体管组成的大型机和微机年代,随着集成电路的出现而加速。IC使得更为复杂的CPU可以在很小的空间中设计和制造(在微米的量级)。CPU的标准化和小型化都使得这一类数字设备(港译-电子零件)在现代生活中的出现频率远远超过有限应用专用的计算机。现代微处理器出现在包括从汽车到手机到儿童玩具在内的各种物品中。
CPU的主要运作原理,不论其外观,都是执行储存于被称为程序里的一系列指令。在此讨论的是遵循普遍的冯·诺伊曼结构(von Neumann architecture)设计的装置。程序以一系列数字储存在计算机存储器中。差不多所有的冯·诺伊曼CPU的运作原理可分为四个阶段:提取、解码、执行和写回。
enterpris
第一阶段,提取,从程序存储器中检索指令(为数值或一系列数值)。由程序计数器指定程序存储器的位置,程序计数器保存供识别目前程序位置的数值。换言之,程序计数器记录了CPU在目前程序里的踪迹。提取指令之后,PC根据指令式长度增加存储器单元[iwordlength]。指令的提取常常必须从相对较慢的存储器查找,导致CPU等候指令的送入。这个问题主要被论及在现代处理器的高速缓存和管线化架构。
CPU根据从存储器提取到的指令来决定其执行行为。在解码阶段,指令被拆解为有意义的片断。根据CPU的指令集架构(ISA)定义将数值解译为指令[isa]。一部分的指令数值为运算码,其指示要进行哪些运算。其它的数值通常供给指令必要的信息,诸如一个加法运算的运算目标。这样的运算目标也许提供一个常数值(即立即值),或是一个空间的寻址值:暂存器或存储器地址,以寻址模式决定。在旧的设计中,CPU里的指令解码部分是无法改变的硬体装置。不过在众多抽象且复杂的CPU和ISA中,一个微程序时常用来帮助转换指令为各种形态的讯号。这些微程序在已成品的CPU中往往可以重写,方便变更解码指令。
在提取和解码阶段之后,接着进入执行阶段。该阶段中,连接到各种能够进行所需运算的
CPU部件。例如,要求一个加法运算,算术逻辑单元将会连接到一组输入和一组输出。输入提供了要相加的数值,而且在输出将含有总和结果。ALU内含电路系统,以于输出端完成简单的普通运算和逻辑运算(比如加法和位运算)。如果加法运算产生一个对该CPU处理而言过大的结果,在标志暂存器里,溢出标志可能会被设置。
moves like jagger歌词最终阶段,写回,以一定格式将执行阶段的结果简单的写回。运算结果极常被写进CPU内部的暂存器,以供随后指令快速访问。在其它案例中,运算结果可能写进速度较慢,但容量较大且较便宜的主存。某些类型的指令会操作程序计数器,而不直接产生结果数据。这些一般称作“跳转”并在程序中带来循环行为、条件性执行(透过条件跳转)和函数[jumps]。许多指令也会改变标志暂存器的状态位。这些标志可用来影响程序行为,缘由于它们时常显出各种运算结果。例如,以一个“比较”指令判断两个值的大小,根据比较结果在标志暂存器上设置一个数值。这个标志可借由随后的跳转指令来决定程序动向。
在执行指令并写回结果数据之后,程序计数器的值会递增,反复整个过程,下一个指令周期正常的提取下一个顺序指令。如果完成的是跳转指令,程序计数器将会修改成跳转到的指令地址,且程序继续正常执行。许多复杂的CPU可以一次提取多个指令、解码,并且同
时执行。这个部分一般涉及“经典RISC管线”,那些实际上是在众多使用简单CPU的电子装置中快速普及(常称为单片机)。
CPU数字表示方法是一个设计上的选择,这个选择影响了设备的工作方式。一些早期的数字计算机内部使用电气模型来表示通用的十进制(基于10进位)数位系统数字。还有一些罕见的计算机使用三进制表示数字。几乎所有的现代的CPU使用二进制系统来表示数字,这样数字可以用具有两个值的物理量来表示,例如高低电平[binaryvoltage]等等。
MOS 6502 微处理器,双列直插式封装格式,一种非常流行的8位芯片。
与数表示相关的是一个CPU可以表示的数的大小和精度,在二进制CPU情形下,一个位(bit)指的是CPU处理的数中的一个有意义的位,CPU用来表示数的位数量常常被称作"字长", "位宽", "数据通路宽度",或者当严格地涉及到整数(与此相对的是浮点数)时,称作"整数精度",该数量因体系结构而异,且常常在完全相同的CPU的不同部件中也有所不同。例如:一个8位的CPU可处理在八个二进制数码(每个数码具有两个可能的取值,0或1)表示范围内的数,也就是说,28或256个离散的数值。 实际上,整数精度在CPU可执行的软件所能利用的整数取值范围上设置了硬件限制。整数精度也可影响到CPU可寻址
oaa(寻址)的内存数量。譬如,如果二进制的CPU使用32位来表示内存地址,而每一个内存地址代表一个八位组,CPU可定位的容量便是232个位组或4GB。以上是简单描述的CPU地址空间,通常实际的CPU设计使用更为复杂的寻址方法,例如为了以同样的整数精度寻址更多的内存而使用分页技术。
更高的整数精度需要更多线路以支持更多的数字位,也因此结构更复杂、更巨大、更花费能源,也通常更昂贵。因此尽管市面上有许多更高精准度的CPU(如 16,32,64甚至128位),但依然可见应用软件执行在4或8位的单片机上。越简单的单片机通常较便宜,花费较少能源,也因此产生较少热量。这些都是设计电子设备的主要考量。然而,在专业级的应用上,额外的精度给予的效益(大多是给予额外的地址空间)通常显著影响它们的设计。为了同时得到高与低位宽度的优点,许多CPU依照不同功用将各部分设计成不一样的位宽度。例如IBM System/370使用一个原为32位的CPU,但它在其浮点单元使用了128位精度,以得到更佳的精确度与浮点数的表示范围 (Amdahl et al. 1964)。许多后来的CPU设计使用类似的混合位宽,尤其当处理器设计为通用用途,因而需要合理的整数与浮点数运算算能力时。
tongue
大部分的CPU,甚至大部分的时序逻辑设备,本质上都是同步的。[qlogic] 也就是说,它们被设计和使用的前题是假设都在同一个同步信号中工作。这个信号,就是众所周知的时脉讯号,通常是由一个周期性的方波(构成)。通过计算电信号在CPU众多不同电路中的分支中循环所需要的最大时间,设计者们可为时脉讯号选择一个适合的周期。
该周期必须比信号在延迟最大的情况下移动或者传播所需的时间更长。设计整个CPU在时钟信号的上升沿和下降沿附近移动数据是可能的。无论是在设计还是组件的维度看来,均对简化CPU有显著的优点。同时,它也存在CPU必须等候回应较慢组件的缺点。此限制已透过多种增加CPU并行运算的方法下被大幅的补偿了。
天津环球雅思
无论如何,结构上的改良无法解决所有同步CPU的弊病。比方说,时脉讯号易受其它的电子信号影响。在逐渐复杂的CPU中,越来越高的时钟频率使其更难与整个单元的时脉讯号同步。是故近代的CPU倾向发展多个相同的时脉讯号,以避免单一信号的延迟使得整个CPU失灵。另一个主要的问题是,时脉讯号的增加亦使得CPU产生的热能增加。持续变动的时钟频率使得许多组件切换(Switch)而不论它们是否处于运作状态。一般来说,一个处于切换状态的组件比处于静止状态还要耗费更多的能源。因此,时钟频率的增加使得CPU需要更有效率的冷却方案。
其中一个处理切换不必要组件的方法称为时脉闸控,即关闭对不必要组件的时钟频率(有效的禁止组件)。但此法被认为太难实行而不见其低耗能通用性。 另一个对全程时钟信号的方法是同时移除时钟信号。当移除全程时钟信号;使得设计的程序更加复杂时,异步(或无时钟频率)设计使其在能源消耗与产生热能的维度上更有优势。罕见的是,所有的CPU建造在没有利用全程时钟信号的状况。两个值得注意的示例是ARM("Advanced RISC Machine")顺从AMULET以及MIPS R3000兼容MiniMIPS。与其完全移除时脉讯号,部份CPU的设计允许一定比例的装置不同步,比方说使用不同步自变数逻辑单位连接上标管线以达成一部份的自变量效能增进。在不将时脉讯号完全移除的情况下,不同步的设计可使其表现出比同步计数器更少的数学运算。因此,结合了不同步设计极佳的能源耗损量及热能产生率,使它更适合在嵌入式计算机上运作。
前面描述的CPU结构只能在同一时间点执行一个指令,这种类型的CPU被称为低标量。
bxp
这一类型的CPU有一很大的缺点:效率低。由于只能执行一个指令,此类的进程给与低标量CPU固有的低效能。由于每次仅有一个指令能够被执行,CPU必须等到上个指令完成才能继续执行。如此便造成下标量CPU延宕在需要两个以上的时钟循环才能完成的指令。即便
增加第二个执行单元(见下文)也不会大幅提升效能;除了单一通道的延宕以外,双通道的延宕及未使用的晶体管数量亦增加了。如此的设计使得不论CPU可使用的资源有多少,都仅能一次运行一个指令并可能达到标量的效能(一个指令需一个时脉循环)。无论如何,大部份的效能均为下标量(一个指令需超过一个时脉循环)。
中式英语
为了达成标量目标以及更佳的效能,导致使得CPU倾向平行运算的各种设计越来越多。提到CPU的平行,有两个字汇常用来区分这些设计的技术。指令平行处理(Instruction Level Parallelism, ILP)以增加CPU执行指令的速率(换句话说,增加on-die执行资源的利用),以及执行绪平行处理(Thread Level Parallelism, TLP)目的在增加执行绪(有效的个别程序)使得CPU可以同时执行。每种方法均可由其如何嵌入或相对有效(对CPU的效能)来区分。