成为系统分析师需要哪些知识(备考高级系统分析师-计算机系统知识-计算机体系结构-指令-流水线)
继续肝吧,本次主要是讲三个知识点:
- 计算机体系结构
- 指令系统
- 流水线
各种分类方式,按照处理机分类的,这个看下概念就可以,主要还是考点Flynn分类法。
按处理机的数量进行分类:单处理系统(一个处理单元和其他设备集成)、并行处理系统(两个以上的处理机互联)、分布式处理系统(物理上远距离且松耦合的多计算机系统)。
Flynn分类法:分类有两个因素,即指令流和数据流,指令流由控制部分处理,每一个控制部分处理一条指令流,多指令流就有多个控制部分;数据流由处理器来处理,每一个处理器处理一条数据流,多数据流就有多个处理器;至于主存模块,是用来存储的,存储指令流或者数据流,因此,无论是多指令流还是多数据流,都需要多个主存模块来存储,对于主存模块,指令和数据都一样。
依据计算机特性,是由指令来控制数据的传输,因此,一条指令可以控制一条或多条数据流,但一条数据流不能被多条指令控制,否则会出错,就如同上级命令太多还互相冲突,不知道该执行哪个,因此多指令单数据MISD不可能。
flynn分类法,两个要素就是指令流跟数据流,指令流是控制部分处理,数据流是处理器处理。
SISD(单指令流单数据流)
SIMD(单指令流多数据流)
MISD(多指令流单数据流),其中MISD是不可能实现的,原因就是多个指令,怎么去操作一条数据呢?
MIMD(多指令流多数据流)
S代表单个,M代表多个,I达标指令,D代表数据data,都英文首字母缩写,方便记忆
2.指令系统指令的组成:操作码和操作数(或者也叫存放地址码,也可以存放操作数的地址信息),大家有基础的看下概念就能明白。
指令执行的三个步骤:取指令-----分析指令-----执行指令(也是个流水线作业,下边会讲流水线的概念)!跟前边CPU的有哪些控制器又联系起来了!程序计数器取指令地址,CPU根据指令地址去内存取指令内容放到指令寄存器!然后交给指令译码器进行分析,最后执行指令,需要背么?我觉得多读两边,理解意思就可以了!
寻址方式也是考点。
两种寻址方式:指令寻址方式和指令操作数寻址方式
指令寻址方式
顺序寻址方式:当执行一段程序时,是一条指令接着一条指令地顺序执行。
跳跃寻址方式:指下一条指令的地址码不是由程序计数器给出,而是由本条指令直接给出。程序跳跃后,按新的指令地址开始顺序执行。因此,程序计数器的内容也必须相应改变,以便及时跟踪新的指令地址。
指令操作数的寻址方式
立即寻址方式:指令的地址码字段指出的不是地址,而是操作数本身。
直接寻址方式:在指令的地址字段中直接指出操作数在主存中的地址。
间接寻址方式:指令地址码字段所指向的存储单元中存储的是操作数的地址。
寄存器寻址方式:指令中的地址码是寄存器的编号。
基址寻址方式:将基址寄存器的内容加上指令中的形式地址而形成操作数的有效地址,其优点是可以扩大寻址能力。
变址寻址方式:变址寻址方式计算有效地址的方法与基址寻址方式很相似,它是将变址寄存器的内容加上指令中的形式地址而形成操作数的有效地址。
基址寻址跟变址寻址了解即可,主要还是考点还是前三个,立即寻址方式,直接寻址方式,间接寻址方式!
CISC是复杂指令系统,兼容性强,指令繁多、长度可变,由微程序实现;
RISC是精简指令系统,指令少,使用频率接近,主要依靠硬件实现(通用寄存器硬布线逻辑控制)。
具体区别如下:
这两个也是考点,C是复杂,R是精简,按照英文首字母记忆吧,主要考察方式看下下边的考题即可!
考题来喽:
1.Flynn分类法根据计算机在执行程序的过程中()的不同组合,将计算机分为4类。当前主流的多核计算机属于()计算机。
A.指令流和数据流 B.数据流和控制流 C.指令流和控制流 D.数据流和总线带宽
A.SISD B.SIMD C.MISD D.MIMD
2.以下关于复杂指令集计算机(Complex Instruction Set Computer,CISC)的叙述中,正确的是()。
A.只设置使用频度高的一些简单指令,不同指令执行时间差别很小
B.CPU中设置大量寄存器,利用率低
C.常采用执行速度更快的组合逻辑实现控制器
D.指令长度不固定,指令格式和寻址方式多
3.流水线流水线的原理:指令分为不同的段,每段有不同的部分去执行,不同的段会产生叠加,可以理解成多线程并行执行。
这个图怎么看呢?1,2,3可以理解为三个指令,取值,分析,执行就是上边原理里介绍的3个不同的段
RISC精简指令系统才使用流水线系统,复杂指令系统不使用!
RISC中的流水线技术:
(1)超流水线(Super Pipe Line)技术。它通过细化流水、增加级数和提高主频,使得在每个机器周期内能完成一个甚至两个浮点操作。其实质是以时间换取空间。
(2)超标量(Super Scalar)技术。它通过内装多条流水线来同时执行多个处理,其时钟频率虽然与一般流水接近,却有更小的CPI.其实质是以空间换取时间。
(3) 超长指令字(Very Long Instruction Word,VLIW)技术。VLIW和超标量都是20世纪80年代出现的概念,其共同点是要同时执行多条指令,其不同在于超标量依靠硬件来实现并行处理的调度,VLIW 则充分发挥软件的作用而使硬件简化,性能提高。
感兴趣的同学可以去搜搜这几个流水线技术,我也搜搜,等有了解了再给大伙科普吧,一切以通过考试为主,时间宝贵,通过考试后再去研究吧!
流水线的时间计算是考试的重点。
流水线时间计算
流水线周期:指令分成不同执行段,其中执行时间最长的段为流水线周期。
流水线执行时间:1条指令总执行时间+(总指令条数-1)*流水线周期。
流水线吞吐率计算:吞吐率即单位时间内执行的指令条数。
公式:指令条数/流水线执行时间。
流水线的加速比计算:加速比即使用流水线后的效率提升度,即比不使用流水线快了多少倍,越高表明流水线效率越高,
公式:不使用流水线执行时间/使用流水线执行时间。
考题来喽:
1.流水线的吞吐率是指流水线在单位时间里所完成的任务数或输出的结果数。设某流水线有5段,有1段的时间为2ns另外4段的每段时间为1ns,利用此流水线完成100个任务的吞吐率约为()个/s.
A.500x10~6 B.490x10^6 C.250x10^6 D.167x10^6
2.假设磁盘块与缓冲区大小相同,每个盘块读入缓冲区的时间为15us,由缓冲区送至用户区的时间是Sus,在用户区内系统对每块数据的处理时间为1us,若用户需要将大小为10个磁盘块的Docl文件逐块从磁盘读入缓冲区,并送至用户区进行处理,那么采用单缓冲区需要花费的时间为()us;采用双缓冲区需要花费的时间为()us。
A.150 B.151 C.156 D.201
A.150 B.151 C.156 D.201
第二个题,你能第一时间想到是流水线的问题么?这就是考题的变种,下次出题老师还不知道又玩出什么新花来!总之这种题,是流水线问题,套公式做题,只是有点不一样的是,单缓冲区跟双缓冲区,这个地方是个小坑,等灵魂画师上线吧,先睡觉了,明天继续肝!加油打工人!
3.流水线技术是通过并行硬件来提高系统性能的常用方法。对于一个k段流水线,假设其各段的执行时间均相等(设为t),输入到流水线中的任务是连续的理想情况下,完成n个连续任务需要的总时间为()。若某流水线浮点加法运算器分为5段,所需要的时间分别是6ns、7ns、8ns、9ns和6ns,则其最大加速比为()。
A.nkt B.(k n-1)t C.(n-k)kt D.(k n 1)t
A.4 B.5 C.6 D.7
流水线四大公式,熟能生巧,多做几遍就记住了!
睡了睡了,明天再肝!觉得内容对大伙有帮助的,希望各位多多点赞 关注,你们的支持,是我持续更新的动力,加油吧老铁,祝福各位大佬们都能一次性通过系统分析师考试!
答案来了:
第一题:
第一题纯粹就是带公式了,最后算数没有计算器,各位算个差不多就可以,选择嘛
秒的单位科普下:
1ms (毫秒) 1毫秒=0.001秒=10-3秒(millisecond)
1μs (微秒) 1微秒=0.000001=10-6秒(microsecond)
1ns (纳秒) 1纳秒=0.000000001秒=10-9秒(nanosecond)
1ps (皮秒) 1皮秒=0.000000000001秒=10-12秒
1fs (飞秒) 1飞秒=0.00000000000001秒=10-15秒
10后面的数字是指数(-3、-6、-9、-12、-15)
第二题:
第二题只字未提流水线,但是你还是要按照流水线计算公式,这就是迷惑性
第二题注意事项是,单双缓冲区,如果是单缓冲区,其实流水线只分2段,磁盘读到缓充区 缓冲区读到用户区,这两个是一个段,所有周期是15 5=20微秒
第三题:
此题没有说明任务数量,假设为n,有个极限的问题,当n趋于无穷大的情况!
灵魂画师已肝完,感谢大伙点赞 关注的支持,是我持续学习更新的动力,关注公众号:Coding-9527,跟大伙一起学习,成长,进步!
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com