免费智能真题库 > 历年试卷 > 嵌入式系统设计师 > 2009年下半年 嵌入式系统设计师 上午试卷 综合知识
  第25题      
  知识点:   高速缓存(Cache)
  关键词:   计算机系统        章/节:   嵌入式系统的存储体系       

 
在计算机系统中,(25)对程序员是透明的
 
 
  A.  磁盘存储器
 
  B.  高速缓存
 
  C.  RAM存储器
 
  D.  flash存储器
 
 
 

 
  第3题    2011年下半年  
   58%
在程序的执行过程中,Cache与主存的地址映像由(3)。
  第1题    2013年下半年  
   42%
在程序执行过程中,Cache与主存的地址映象由(1)。
  第6题    2014年下半年  
   39%
在CPU和主存之间设置“Cache”的作用是为了解决(6)的问题。
   知识点讲解    
   · 高速缓存(Cache)
 
       高速缓存(Cache)
        Cache是一种比常见内存(RAM)更快的存储器,在存储位置上位于处理器和外部内存之间,一般称之为高速缓冲存储器。众所周知,程序由代码和数据组成,在一般情况下由于容量限制代码和数据需要存放在内存中,当处理器要执行程序时就需要不断地访问内存,出于技术和成本问题,内存的读取速度通常比CPU的速度慢很多,因此这会严重制约系统的实际性能。
        在实际程序运行过程中,处理器对内存的访问并不是完全随机的,在某个时间段内,CPU总是访问当前内存地址的相邻地址,也就是说程序对内存的访问符合局部性原理。基于程序局部性原理,通过在CPU和外部存储设备之间设计高速缓冲器(Cache),让其进行外部存储设备的局部存储,从而可以提升CPU对外部存储设备的访问效率。Cache的主要功能是对外部存储设备(一般指内存)的缓冲,在一般的Cache设计中,Cache把整个内存分成大小相同的块,块的大小因不同Cache芯片的实现而不同。因此,Cache内部的地址是由块号和块内偏移组成。下图给出了Cache的逻辑工作示意图,其实现过程如下。
        
        Cache工作机制示意图
        (1)Cache收到CPU访问内存的地址。
        (2)Cache将CPU访问内存的地址分解为块号和块内偏移。
        (3)利用(2)中分解的块号查找Cache内部的Cache块。
        (4)如果用(2)中的块号找到一个Cache块,即表示命中,然后用(2)中分解的块内偏移去索引该块中的数据:如果当前是读内存,即可立即将Cache中缓存的数据返回给CPU;如果是写操作,根据Cache的类型不同,动作会不同。
        (5)如果(3)中没有找到对应的Cache块,即表示未命中。
        (6)如果Cache未命中,Cache首先查找Cache内部有没有空闲块。
        (7)如果(6)中Cache找到一个空闲块,就在该块中装入CPU访问内存地址对应的内存块,同时,如果是读内存操作就把这个地址对应的数据返回给CPU。如果是写内存操作,根据Cache的类型不同,动作也会不同。
        (8)如果在(6)过程中没有找到一个空闲块,需要使用Cache管理中的块替换策略,找出Cache中可替换出去的块。如果CPU是读内存操作,那么根据替换块的块号和状态,Cache会决定是否把这个块回写到内存中(或者直接废除),最后在该替换出去的块中装入CPU访问内存地址对应的内存块,同时把这个地址对应的数据返回给CPU。如果CPU是写内存操作,根据Cache的类型不同,Cache的动作也会不同。
        根据程序访问的局部性原理可知,CPU在某一特定的时间段内会对Cache保持很高的命中率。因此,在该时间段内,CPU就可以直接从Cache中获取指令或数据,从而提升系统的性能。根据Cache的工作机制,可以把Cache分为多种类型,典型的包括回写式Cache和写通式Cache。
   题号导航      2009年下半年 嵌入式系统设计师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第25题    在手机中做本题