2019-11-13 10:52:30
第三章-系统总线
•总线带宽:D x f(频率),单位是MBps-兆字节每秒 (其中 D为宽度,单位是字节B)
•按传输信息不同 系统总线可以划分为数据总线+地址总线+控制总线
•当地址总线为x根,对应的存储单元是220个
例题:
微机A和B是采用不同主频的CPU芯片,片内逻辑电路完全相同
(1)若A机的CPU主频为8Mhz,B的为12Mhz,则A机的CPU时钟周期为?
时钟周期=1/主频 故答案为1/(8x10^6)s=0.125us
(2)若A机的平均指令执行速度为0.4MIPS,那么A机的平均指令周期为?
平均指令周期x平均指令执行速度=1 故答案为2.5us
(3)B机的平均指令执行速度为?
先求A机的一个指令周期数 :=A机平均指令周期 / 时钟周期 =20个时钟周期
ps:指令周期>机器周期>时钟周期
因为A,B的电路逻辑相同,所以B机一个指令周期也是20个时钟周期,所以B的平均指令周期为 1/(12x10^6)s 乘以20=(5/3) 10^-6s
再根据(2)的公式即可计算出B的平均指令执行速度 1 /((5/3) 10^-6s) = 0.6MIPS
•区分波特率和比特率:
波特率:bps ,单位时间内传输的二进制位数
比特率:bps , 单位时间内传输的二进制有效数据的位数(只计入数据位)
第四章 存储器
•存储器分类 :
存储器--主存(内存) - -- - -- - -- - -- - -- - -- - -- - -- RAM(断电清除)+ROM:只读存储器
---闪存
---辅存(磁盘,磁带,光盘)
---缓存
•一般来说:容量越大的存储器,速度越慢
• 芯片容量(位)=2地址线 x 数据线(个数)
• 16Kx1位的芯片对应着2^14 :14根地址线 1 根数据线 ,其中K为2^10
•关于存储器与cpu的连接
例题:
已知CPU有16根地址线,8根数据线 现有1K x 4位RAM,4K x 8位 RAM ,8K x 8位RAM ,2K x 8位ROM ,4K x 8 位ROM, 8K x 8位ROM
若主存地址空间分配如下:
6000H~67FFH 为系统程序区
6800H~6BFFH 为用户程序区
首先:系统程序区应由ROM组成,而用户程序区用RAM;
再转化为十六进制:
系统程序区:
0110 0000 0000 0000
0110 0111 1111 1111
相减为 (0111 1111 1111)2
11个1,应用11根,2K表示,由题意可知存储字长为 8位 ,选择1 片 2K x 8位的RAM
用户区:
0110 1000 0000 0000
0110 1011 1111 1111
相减为 0011 1111 1111
应选择1K x 8位;
由于没有1Kx8位的,选择2片1K x 4位RAM
CPU的地址线分配:A10~A0 11根连接(2Kx8 位ROM)的地址线
A9~A0 10根连接 2 片 1Kx4 位的 RAM
ROM 上数据线对应D7-D0,RAM 2片数据线 分别对应 D7-D4,D3-D0;
• 关于动态RAM刷新
刷新与行地址有关
①集中刷新:刷新时会停止读写,会形成死区,影响计算机系统的使用效率;
②分散刷新:无死区,但存取周期变长了;
③异步刷新: 死区很短,且利用了刷新间隔为2ms的特点;
• 缓存:
cache的命中率与cache的容量和块长有关(容量越长,cpu命中率越高)
例题:
假设CPU执行某段程序时,共访问cache命中 2000次,访问主存 50 次。已知cache的存取周期为50ns,主存的存取周期为200ns。求Cache-主存系统的命中率,
效率和平均访问时间。
(1)Cache 的命中率为
命中率h = 访问Cache的总命中次数 / (cache命中次数+主存访问次数)
故 命中率为2000/(2000+50)= 0.97
(2)效率公式:访问cache 命中的时间 为 tc ,访问cache的命中率为 h, 未命中的主存访问时间为 tm
tc / (h tc +(1-h) tm )
已知访问主存的时间是访问cache的4倍
故 cache-主存的访问效率 e= tc/(0.97t+(1-0.97) 2tc) = 91.7%
(3)平均访问时间 公式为 :htc+(1-h)tm
50ns x 0.97+(1-0.97)200ns = 54.5ns
• Cache-主存地址映射
首先 区分 按字节寻址和按字寻址:
若块长为4字,每字32位 求字块内地址是多少位 :
按字节寻址::4 x 4B=16B =2^4B ,共4位
按字寻址:(4 x 32) /32 = 4= 2^2 ,共2位
• 然后题目中多半根据主存容量就可以确定位数总长
若主存容量是512Kx16位 ,Cache容量为4096x16位,块长为 4 x16 位的字,访存地址为字地址。
解:直接映射下:cache块地址 与块数有关 (4096x 16)/(4x16) = 2^10 , 10位
总长的话512Kx16位/16位=2^19,共19位
若是题目为:已知主存容量为512KB,cache容量为4KB,每个字块为16个字。每个字32位
解:总长为19位 (512K =2^19)
直接映射:cache块地址为 cache块容量/块容量 4KB/(4Bx16)=64=2 ^6 共6位 ,字块内地址:16x4B =64B,2^6 , 共6位 位数分配为: 19-6-6 ;6;6
ps:未说明建议以字节寻址处理
若是组相联映射,cache块地址在 直接映射求解的基础上还要除以 “路数”
全相联 用总长减去字块内地址长度就是主存字块标记长度;
• 下面说一下三种映射方式的构成:
直接映射 :主存字块标记+cache块地址+字块内地址
全相联映射:主存字块标记+字块内地址
组相连映射; 主存字块标记+组标记+字块内地址
• 磁盘组有6片 磁盘,最外两侧盘面可以记录,存储区域内径22cm;外径33cm,道密度为40道/cm, 内层密度为400位/cm,转速为3600转/分。
(1)共有多少存储面可用?
2x6=12面
(2)共有多少柱面?
存储面=磁道数,用外半径 - 内半径 =有效存储区域 ,道密度x有效存储区域 =柱面数
故40道/cm x(33/2-22/2)=220面
(3)盘组总存储容量为?
内层磁道周长 =3.14x22=69.08cm
每道信息量 为 400 x 69.08 =27632位 = 3454B
每面信息量 = 每道信息量 x 道数 = 3454B x 220道
盘组总容量 =存储面数x 每面信息量 = 2x 6 x 3454 x 220 = 7.24MB
(4)数据传输率为?
Dr=nN=转速 x 单磁道容量 = 60转/s x 3454B