1、计算机系统由中间开始设计,其中间指的是什么地方?这样设计有什么好处?
答:"中间"是指多级层次结构中的软、硬件交界面,目前是处于传统机器级与操作系统机器级之间。这样设计,能合理地进行软、硬件的功能分配,优化软、硬件设计,可为软件和应用提供更多更好的硬件支持,可使软、硬件同时设计,缩短系统的设计周期。
“由中间开始”设计思路:“中间”指的是层次结构中的软硬交界面。既考虑能拿到的硬器件,又要考虑硬件对操作系统、编译系统的实现提供什么支持,然后由中间点分别往上、往下进行软件和硬件的设计。优点在于:针对上述两种方法的缺陷,软、硬件并行设计,缩短系统设计时间,软硬件功能在设计过程可根据实际情况进行修改,交互性好。
2、考虑某一两级Cache :第一级Cache 为L1,第二级Cache 为L2。
(1)假设在1000次访存中,L1的不命中是40次,L2的不命中是20次。求各种局部不命中率和全局不命中率。
(2)假设L2的命中时间是10个时钟周期,L2的不命中开销是100时钟周期,L1的命中时间是1个时钟周期,平均每条指令访存1.5次,不考虑写操作的影响。问:平均访存时间是多少?每条指令的平均停顿时间是多少个时钟周期?
解 (1)第一级Cache 的不命中率(全局和局部)是40/1000,即4%; 第二级Cache 的局部不命中率是20/40,即50%; 第二级Cache 的全局不命中率是20/1000,即2%。
(2)平均访存时间=命中时间L1+不命中率L1×(命中时间L2+ 不命中率L2×不命中开销L2) =1+4%×(10+50%×100)=1+4%×60=3.4个时钟周期
由于平均每条指令访存1.5次,且每次访存的平均停顿时间为: 3.4-1.0=2.4
所以,条指令的平均停顿时间=2.4×1.5=3.6个时钟周期。