1、1,1.模拟 a.用软件方法在一台现有的计算机上实现另一台计算机的指令系统 b.指在一个厂家内生产的具有相同的系统结构,但具有不同组成和实现的一系列不同型号的机器 2.仿真 a.用微程序直接解释另一种机器指令系统的方法 b.每条指令的平均时钟周期数 3.MIPS a.它表示每秒百万指令条数 b.每秒百万次浮点操作次数 4.MFLOPS a.每秒百万次浮点操作次数 b.计算机组成是计算机系统结构的逻辑实现,课 堂 作 业(一)单选题,2,1.想在系列机中发展一种新型号机器,你认为将CPU与主存之间的数据通路宽度由16位扩到32位,以加快主机内部信息的传送。可以考虑的,还是不行的?为什么?可以。只
2、是提高了数据传输的速度。,课 堂 作 业(二),3,1.假定我们将某一执行部件改进后速度提高10倍。改进后被改进部件执行时间占系统总运行时间的50%。则改进后,获得的加速比Sp是多少?解:Se=10,Fe=0.5Sp =1/(1-0.5)+0.5/10=1.82答:获得的加速比Sp是1.82。,课 堂 作 业(三),4,1.假定我们将某一执行部件改进后速度提高10倍。改进后被改进部件执行时间占系统总运行时间的50%。则改进后,获得的加速比Sp是多少?解:改进后被改进部件执行时间为t1,则改进后不能被改进部件执行时间为t2=t1/(50%)-t1=t1.T0=t1+10t1=11t1 Tn=t1
3、+t1=2t1Sp =T0/Tn=11t1/2t1=5.5答:获得的加速比Sp是5.5。,课 堂 作 业(三),5,在尾数采用补码、小数表示且p=6,阶码采用移码、整数表示且q=6,尾数基rm为16,阶码基re为2的情况下: (1) 最大尾数为:1rm-p116-6,0.FFFFFF (2) 最小正尾数为:1/rm1/16,0.100000 (3) 最小尾数为: -1, 1.000000 (4) 最大负尾数为:-(rm-1 + rm-p)(16-1 + 16-6),1.EFFFFF (5) 最大阶码为:req126163,7F,包括符号位共7个1 (6) 最小阶码为:-req-26-64,00
4、,包括符号位共7个0 (7) 最大正数为:(116-6)1663,7FFFFFFF (8) 最小正数为:16-65,00100000 (9) 最大负数为:-(16-1 + 16-6) 16-64,80EFFFFF (10) 最小负数为:-1663,FF000000 (11) 浮点零为:00000000 (12) 表数精度为:16-5/22-21 (13) 表数效率为:15/1693.75 (14) 能表示的规格化浮点数个数为:21516527+1,课 堂 作 业(四、五、六),6,证明:在浮点数的字长和表数范围一定时,尾数基值rm 取2或4具有最高的表精度。(见教案) 假设有两种表示方式F1和
5、F2,它们二进制字长相同,尾数都用原码或补码、小数表示,阶码都移码、整数表示,阶码的基值均为2,尾数基值不同。浮点数表示方式F1:rm1=2,p1,q1,二进制字长:L1= p1+q1+2浮点数表示方式F2: rm1=2k ,p2,q2,二进制字长:L2= kp2+q2+2 由于F1和F2二进制字长相同,即L1= L2,得p1+q1 =kp2+q2 (1) F1的表数范围是:F2的表数范围是:,课 堂 作 业(六*),7,课 堂 作 业(六*),两边取以2为底的对数得: q1 =q2 +log2k (2) (2.2)代入(2.1)得: p1+ q2 +log2k =kp2+q2 化简得到:p1
6、=kp2 -log2k (2.3) F1的表示数精度是: (2.4)把(2.3)代入(2.4)得到: F2的表示数精度是: 取F2与F1表示数精度的比值: (2.5)只有k=1(rm=2)或k=2(rm=4)时,比值T=1 结论1:在字长和表数范围一定时,尾数基值rm取2或4,浮点数具有最高的表精度。,8,操作码:00,01,10,110,1110,11110,11111 平均长度:H = 2.35,0.35,0.25,0.20,0.10,0.05,0.02,0.03,0.05,0.10,0.20,0.40,1.00,0,0,0,0,0,0,1,1,1,1,1,1,0.60,课 堂 作 业(七
7、),9,寄存器-寄存器:每个R为3位,共8位00 R R; 01 R R 10 R R 寄存器-存储器: R为3位,X为1位,A变址量为8(127),共16位。1100 R X A(变址寄存器两个只要1位)1101 R X A(变址量127需要8位)1110 R X A 1111 R X A,课 堂 作 业(八),10,课 堂 作 业(十),1 、2-4-6扩展编码方法的最短码长是( 2 )位,最长码长是( 6 )位。最多可编码的码点数为( 46 )个。 同学们的答案有:276 、10、84、82 (5人) 、32、21、62、66、40、41、44、63 (6人) 、60、16、81、36、
8、22、64(8人)、61、46(3人),2008年10月4日,11,Pentium5 CPU主频为3G,假设满负荷情况下,输出输入设备需要输入输出 1GW/s,一条指令平均需要两个数据,内存频率为1333MHz,请你计算CPU与存储器提供数据和指令速度平衡吗?相差多少倍?解:CPU主频为3G,即每秒需要3*5=15GW指令,那么数据需要15G*2=30GW,输入输出数据1GW,三项和为46GW。相差倍数=46*1000/1333=34倍。 CPU与存储器提供数据和指令速度是不平衡的。,课 堂 作 业(十),12,1、请回答下列问题:在许多早期处理机中,为什么采用微程序设计方法?为什么现代处理机
9、较少采用该方法? 答:早期主要是微程序设计方法允许少量硬件实现较复杂指令。现代可用硬件增多,CISC指令减少,这样在硬件中直接实现指令。 2、按Cache地址映像的块冲突概率从高到低的顺序是( ). A、全相联映像 、直接映像、组相联映像 B、组相联映像、直接映像、全相联映像 C、直接映像、组相联映像、全相联映像(OK) D、全相联映像、组相联映像、直接映像,课 堂 作 业(十),13,一、对于一个采用组相联映象方式和FIFO替换算法的Cache,发现它的等效访问时间太长;为此,提出如下改进建议: (1)增大主存的容量。基本无关 (2)提高主存的速度。能够减小等效访问时间,T = TC H+T
10、M (1-H),通过减小TM能够减小T。(3)增大Cache的容量。当Cache比较小时,增大Cache对减小等效访问时间效果明显;当Cache容量达到一定程度时,效果逐渐不明显。(4) Cache的总容量和块大小不变,增大组的大小。 有一个极大值,在这个极大值点,等效访问时间最小。,课 堂 作 业(十一),14,1、不属于堆栈算法的是( ) A、FIFO算法 B、LFU 算法 C、OPT算法 D、LRU算法 2、与虚拟存储器的等效访问速度无关的是( ) A、访存页地址流 B、页面替换算法 C、主存的容量 D、辅存的容量答案:1、A;2、D (请计算机四班的同学,将本题答案写在纸条上,下课后交
11、到讲台上,并写好班级、学号、姓名,)2005.4.15,课 堂 作 业(十二),15,一、对于一个采用组相联映象方式和FIFO替换算法的Cache,发现它的等效访问时间太长;为此,提出如下改进建议: (1)Cache的总容量和组大小不变,增大块的大小。 有一个极大值,在这个极大值点,等效访问时间最小。(2)提高Cache的速度。能够减小等效访问时间,T = TC H+TM (1-H),效果明(3)Cache的总容量和块大小不变,增加组数。当组数不是很多时,等效访问时间的变化不大,当组数超过某一值时,等效访问时间将明显增加。(4)替换算法由FIFO改为LFU。 能够提高命中率,因此,能够减小等效
12、访问时间。,课 堂 作 业(十三),16,课 堂 作 业(十六),解:禁止表F=3、 冲突向量C=(100)状态图如右图所示: 简单循环:(4), (2), (2,4), (1,4), (1,1,4); 迫切循环:(1,1,4), (2); 最佳恒定等待时间循环: (2); 最小平均等待延迟 MAL=2; 因为MAL=2,所以该流水线的吞吐率,17,课 堂 作 业(十七),乘法操作用到的流水段有:S1、S4、S5、S6;加法操作用到的流水段有:S1、S2、S3、S6。以最快的方式处理的流水线时空图如图所示:(2) A部分所处理的是 B部分所处理的是 C部分所处理的是,18,整个处理过程共需22
13、个时钟周期。而进行了14次不同的运算,所以其实际吞吐率为: 这些运算串行处理所需要的时钟周期为56个时钟周期,所以其加速比和效率分别为:,课 堂 作 业(十七续),19,试以实例说明计算机系统结构、计算机组成与计算机实现之间的相互关系。 计算机系统结构作为一门学科,主要是研究软件,硬件功能分配和对软件、硬件界面的确定,即哪些功能由软件完成,哪些功能由硬件完成。计算机系统结构,计算机组成和计算机实现是三个不同的概念。计算机系统结构是计算机系统的软硬件的界面;计算机组成是计算机系统结构的逻辑实现;计算机实现是计算机组成的物理实现。,20,课 堂 作 业(四),一台模型机共有7条指令,有8个通用数据
14、寄存器,2个变址寄存器。设计8位字长的寄存器-寄存器型指令3条,16位字长的寄存器-存储器型变址寻址方式指令4条,变址范围不小于正、负127。请设计指令格式,并给出各字段的长度和操作码的编码。 (请计算机1班的同学,将本题答案写在纸条上,下课后交到讲台上,并写好班级、学号、姓名) 2007.4.4,用几bit来表示?,用几bit来表示?,用几bit来表示?,要符合扩展编码规则,21,(1)D1D2D3D4D5 D5D4D3D2D1 (2)D1D2D3D4D5 D1D2D3D5D4,课堂作业21第1问答案,D1、 D2 、D3 、D4 、D5同时申请,响应最高D1,正常屏蔽码全部开放,过第1次开
15、门时间,响应没有响应中断最高级D2,以后类推。,D5执行完,返回原来中断程序D4并执行完,以后类推。,22,用户程序 1 2 3 4 5,12345,(2)D1D2D3D4D5 D1D2D3D5D4,课堂作业21第1问答案,D1、 D2 、D3 、D4 、D5同时申请,响应最高D1,改变后屏蔽码D1开放,其余屏蔽,没有新的D1,将D1执行完。D2、 D3以后类推。,只有D4、 D5没有响应,响应最高中断D4,屏蔽码5开放,过第一次开门时间,响应D5,23,12,345,用户程序 1 2 3 4 5,错!,24,响应最高中断D3,D3过3个单位时间, D1、 D2同时申请,屏蔽码1、3开放,响应
16、D1中断,D1执行, 屏蔽码1开放,没有新D1中断,将D1执行完,D3执行完,返回执行主程序,还有D2、 D4、 D5没有执行,选择最高D2响应,屏蔽码4、5是禁止,将D2执行完,D1执行完,返回执行D3,屏蔽码1、3开放,没有新D1 、D3中断将D3执行完。,只有D4、 D5没有响应,响应最高中断D4,屏蔽码5开放,过第一次开门时间,响应D5,课堂作业21第2问答案,25,解:t=10ns=10-8秒 (1)F=1,2,5,C=(10011) (2)状态转移图如下图所示。100113,4,*6 (3)最小启动循环=(3),最小平均启动距离=3t。 (4)插入2个延迟,最小启动循环=(2),最
17、小平均启动距离=2t。,26,计算峰值,1、10台NF190D服务器理论值:10(节点个数)*2(2个CPU/服务器)*2(双核/CPU)*2(一个时钟周期2个浮点运算)*1.6(主频)=128Gflops 2、2台SP2200服务器理论值:2(节点个数)*2(2个CPU/服务器)*2(双核/CPU)*4(一个时钟周期4个浮点运算)*1.4(主频)=44.8Gflops,27,(5)新预约表如下表所示。,28,(6)F=2,6,C=(100010),状态转移图如下图所示。(7)插入前TPmax = 1/3t = 1/30ns,插入后TPmax = 1/2t = 1/20ns。 (8)插入前TP = 10/33t = 1/33ns,插入后TP = 10/25t = 1/25ns。,