《计算机系统:系统架构与操作系统的高度集成》——3.6 小结

简介:

本节书摘来自华章计算机《计算机系统:系统架构与操作系统的高度集成》一书中的第3章,第3.6节,作者:(美)拉姆阿堪德兰(Ramachandran, U.)(美)莱希(Leahy, W. D.)著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.6 小结

在本章中,我们感受了如何为给定的指令集设计处理器。第一步的实现是选择数据通路并将各个元件组装到数据通路上。我们在3.3节回顾了基本数字逻辑元件,在3.4节回顾了数据通路设计。当数据通路确定后,我们将注意力转移到驱动数据通路完成指令集的控制单元的设计。基于微程序控制单元的假设,3.5节大致浏览了实现LC-2200 ISA中各指令所需的微状态。在3.6节,我们评价了硬连线控制与微程序控制的区别。
历史回顾
我们最好回头看看,历史上性能的取舍如何受到经济与技术条件的影响。
在20世纪40年代和20世纪50年代,构建硬件和存储器所需的逻辑单元极为昂贵。当时采用的技术是电子管,后来是单独的晶体管来实现硬件。指令集体系结构都非常简单,一般都有一个单独的寄存器,称为累加器。那个时代的计算机以EDSAC和IBM 701为代表。
在20世纪60年代,开始出现少许的“集成”。1965年,推出的IBM 1130采用固态逻辑技术(Solid Logic Technology,SLT),这是后来集成电路的先驱。那个年代硬件价格出现大幅下降,但存储器依然使用磁芯(称为芯存储器),在计算机系统的成本中占了一大部分。
这种趋势持续发展,到了20世纪70年代,出现了SSI(小规模集成),还有MSI(中规模集成),电路作为实现处理器的技术。半导体存储器在20世纪70年代开始取代芯存储器的地位。有趣的是,大约在1974年,芯存储器和半导体存储器每位存储的价格几乎是一样的(每位0.01美元)。从那时到现在,半导体存储器的价格一直迅速下降。
20世纪70年代经历了许多不同的体系结构,例如面向栈的、面向内存的、面向寄存器的等各种体系结构。那个时代机器的代表有IBM 360和DEC PDP-11,这些是面向内存和面向寄存器相结合的体系结构,还有面向栈的Burroughs B-5000。这些机器都属于存储程序计算机,即通常所说的以计算机先锋John von Neumann命名的冯·诺依曼体系结构。
在存储程序计算机发展的同时,计算机科学家还实验了非常新颖的体系结构,包括数据流和收缩系统。这些体系结构的目的在于让程序员控制多条指令并行执行,打破存储程序模型固有的指令串行执行方式。数据流系统和收缩系统都着眼于数据而非指令。数据流系统允许任何输入已经就绪的指令得到执行,并将执行结果传送给其他指令。收缩系统允许并行数据流通过功能元件的阵列(这个阵列经过预先的安排以完成某种特定功能)完成对数据流的计算(例如,矩阵乘法)。数据流体系结构是通用计算模型的一个实现,而收缩系统则是合成体系结构(synthesizing architectures)中的一种具体算法模型。虽然这些类型的体系结构并没有取代存储程序计算机,但它们对计算机整体,从算法设计到处理器实现,都产生了巨大的影响。
20世纪80年代,出现了一些有趣的发展。首先,使用双极晶体管的高速LSI(大规模集成)电路已很常见。这成了许多高端处理器采用的实现技术,如IBM 370和DEC VAX 780。另一个趋势是,使用CMOS晶体管(也称为场效应管或FET)的VLSI(超大规模集成)电路开始用于单芯片的微处理器。20世纪80年代末及90年代初,这些杀手级微处理器在性价比上对高端机器市场产生了威胁。20世纪80年代,编译器技术也迅速发展,形成了实质上的系统软件(如编译器)与指令集设计之间的合作关系。这种关系为RISC(精简指令集计算机)体系结构铺平了道路。IBM 801、Berkeley RISC和Stanford MIPS引领了这场RISC革命。有趣的是,CISC(复杂指令集计算机)体系结构的追随者依旧很多,例如Motorola 68000和Intel x86系列处理器。因为新的集成技术能够将更多的晶体管放到一块硅片上,所以直到20世纪80年代还只存在于高端处理器上的流水线处理器设计(见第5章)开始进军微处理器。关于RISC和CISC的争论逐渐减少,问题变成了如何在一个流水处理器中达到每个时钟周期一条指令的吞吐量。
在20世纪90年代,微芯片(使用CMOS技术的单芯片微处理器)最终确立了它作为计算机工业界处理器实现技术的地位。20世纪90年代末,Intel x86和Power PC指令集(这两种指令集都属于采用了部分RISC体系结构实现技术的CISC体系结构处理器系列)成为制造桌面计算机、服务器、超级计算机的工业标准。值得一提的是,那个年代最有希望的体系结构是DEC Alpha。不幸的是,由于DEC在20世纪90年代后期死去,Alpha体系结构也就安息了。
随着个人通信设备(手机、寻呼机、PDA)及游戏设备的出现,嵌入式计算平台从20世纪80年代开始越来越重要。大部分的嵌入式平台采用RISC体系结构的ARM(Acorn RISC Machine的缩写,最初由Acorn Computer设计)的各种型号。Intel制造了从最初ARM体系结构衍生出的XScale处理器。值得一提的是,ARM处理器一开始是打算为PC和工作站设计的。
超标量和超长指令字体系结构(VLIW)处理器体现了RISC革命中产生的技术。两者都是为了提高处理器的吞吐量。它们通常称为多发射处理器。超标量处理器依靠硬件来并行执行固定数量的不相互依赖的相邻指令。对于VLIW,顾名思义,一条指令实际上包含了多个捆绑在一起的操作。VLIW严重依赖于编译技术来降低硬件设计的复杂性并为其开发并行性。从20世纪80年代后期第一次提出以来,VLIW技术在这些年间已经重新改进了许多次。VLIW体系结构最近的一次改进是Intel的IA-64,针对的是超级计算市场。VLIW体系结构在高端嵌入式领域也很受欢迎,如DSP(数字信号处理)应用。
我们已经迎来了新千年的第一个10年的结束。如今关于指令集的争论很少。大部分工作都位于微体系结构的层面,即,如何通过各种硬件技术来提高处理器的性能。同时,集成度的提高也允许将多个处理器放在单块硅片上。多核芯片开始出现在大部分我们购买的计算机系统上。

相关文章
|
5月前
|
存储 缓存 Shell
【深入理解操作系统】第一章:计算机系统漫游 | A tour of Computer Systems | 阅读笔记
【深入理解操作系统】第一章:计算机系统漫游 | A tour of Computer Systems | 阅读笔记
63 0
|
存储 缓存 安全
[笔记]深入解析Windows操作系统《二》系统架构
深入解析Windows操作系统《二》系统架构
811 0
[笔记]深入解析Windows操作系统《二》系统架构
|
23天前
|
存储 安全 数据处理
【计算机系统组成原理】操作系统处理器深入介绍
【计算机系统组成原理】操作系统处理器深入介绍
|
1月前
|
程序员 Linux 调度
《操作系统》——计算机系统概述
《操作系统》——计算机系统概述
|
6月前
|
缓存 Unix 调度
[笔记]深入解析Windows操作系统《二》系统架构(一)
[笔记]深入解析Windows操作系统《二》系统架构
163 0
|
6月前
|
安全 Unix Linux
《计算机系统与网络安全》 第八章 操作系统安全基础
《计算机系统与网络安全》 第八章 操作系统安全基础
78 0
|
6月前
|
存储 安全 Unix
[笔记]深入解析Windows操作系统《二》系统架构(五)
[笔记]深入解析Windows操作系统《二》系统架构(五)
|
6月前
|
存储 安全 API
[笔记]深入解析Windows操作系统《二》系统架构(四)
[笔记]深入解析Windows操作系统《二》系统架构(四)
|
6月前
|
存储 缓存 安全
[笔记]深入解析Windows操作系统《二》系统架构(三)
[笔记]深入解析Windows操作系统《二》系统架构(三)
|
6月前
|
缓存 安全 Unix
[笔记]深入解析Windows操作系统《二》系统架构(二)
[笔记]深入解析Windows操作系统《二》系统架构(二)