计算机体系结构分类
继昨天计算机组成之后,今天进一步学习了计算机系统结构分类。
分类方式一、根据是否满足冯·诺依曼的存储概念划分
1、冯·诺依曼型计算机:
该概念满足以下几点内容:(回顾一下昨天的知识)
①计算机满足五大组成:运算器、存储器、控制器、输入设备、输出设备。
②计算机内部采用二进制表示指令和数据。
③将编好的程序和原数据先存入存储器,再启动计算机工作。
目前大部分计算机,都采用了冯诺依曼的存储概念设计。
[if !supportLists]2、[endif]非冯·诺依曼型计算机:
突破了存储程序控制的计算机设计,存在大致以下三类:
①由数据流驱动的数据流计算机
②由需求驱动的规约计算机
③由模式匹配驱动的智能计算机
之所以存在该演进,因为冯·诺依曼型计算机强依赖于存储器,即存储器是主要瓶颈。
分类方式二、根据指令流、数据流特性对计算机系统分类(又称flynn分类)
名词定义:
·指令流:指机器执行的指令序列
·数据流:指指令流调用的数据序列
(重点:数据流包括输入数据和中间计算数据,不包括输出数据)
[if !supportLists]1、[endif]SISD:单指令流单数据流,是顺序执行的单处理机,指令部件只译码一次,只分配数据给一个操作部件。
[if !supportLists]2、[endif]SIMD:单指令流多数据流,是一种病性处理机(如:矩阵计算机),由单一指令部件,采用同一条命令,分配多数据的计算机。(组成通常是多个重复的处理单元)
[if !supportLists]3、[endif]MISD:多指令流单数据流,概念上成为流水线计算机,市场上基本没有,特点是有多个处理单元执行不同指令。
[if !supportLists]4、[endif]MIMD:多指令流多数据流,代表是:多核处理器,能在作业、任务、指令等方面并行执行的多机系统。
既然flynn分类提及了指令流,让我们在看看指令集系统。
不由得想起了大学在学习单片机编程的时候,用过部分汇编语言的指令,他们是由若干精简的指令与地址组成。而指令在计算机系统结构发展的过程中存在两个方向的发展:
[if !supportLists]1、[endif]CISC:复杂指令集计算机:主要作用是增强指令的功能,将复杂的功能编为指令让其实现,即用硬件指令来替代部分软件实现的功能。
[if !supportLists]2、[endif]RISC:精简指令集计算机:主要宗旨是尽量简化指令功能,只保留一个节拍内可完成的指令,较复杂的功能用一段SIS子程序实现。
[if !supportLists]3、[endif]下面做一下特点对比:
指令数量:多少
指令使用平率:CISC部分高,部分低,RISC都较高
寻址方式:CISC支持,并且多钟,RISC很少
指令长度:CISC变长,RISC定长
执行周期:CISC多周期,RISC单周期
能否对主存数据处理:CISC能,RISC否
程序控制方式:CISC微程序控制,RISC布线逻辑控制
编译时间:CISC长,RISC短
CPU寄存器数量:CISC少,RISC多