带Cache的内核简要介绍

上传人:大米 文档编号:592252654 上传时间:2024-09-20 格式:PPT 页数:53 大小:638KB
返回 下载 相关 举报
带Cache的内核简要介绍_第1页
第1页 / 共53页
带Cache的内核简要介绍_第2页
第2页 / 共53页
带Cache的内核简要介绍_第3页
第3页 / 共53页
带Cache的内核简要介绍_第4页
第4页 / 共53页
带Cache的内核简要介绍_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《带Cache的内核简要介绍》由会员分享,可在线阅读,更多相关《带Cache的内核简要介绍(53页珍藏版)》请在金锄头文库上搜索。

1、1TMT H E A R C H I T E C T U R E F O R T H E D I G I T A L W O R L D听雄旱兜扩新端尿内俩缅邪创需扛蚜俱挠胰浮扶哩赦极斗奸厚厅哆摩榔询带Cache的内核简要介绍Powerpoint presentation master带带Cache的内核简要介绍的内核简要介绍啪乡尿忽谷嫌姑舌继痒弹琳甫痕钢俗汐识庇岔晚韵辟侨件荆裕迸臃奶禽锑带Cache的内核简要介绍Powerpoint presentation master2TM2带Cache处理器初步(91v07 )带带Cache的的 ARM 宏单元举例宏单元举例CacheARM内核内核地址

2、地址写缓冲写缓冲MMU或或MPU数据读数据写数据控制逻辑控制逻辑CP15AMBA总线接口JTAG 及非AMBA信号AMBA接口接口准霄撇饺饵呀奔掠狗蜜车美象吮醇朵趾澎综峙牢球守耀薄悉亿乳惺脆寞简带Cache的内核简要介绍Powerpoint presentation master3TM3带Cache处理器初步(91v07 )议程议程nCache、同步、同步 和写缓冲介绍和写缓冲介绍n存储器保护单元n内存管理单元n紧耦合存储器n带Cache的ARM处理器损顿灿闹校鼠值汰渡寇量湾抿佑尼硒阜惶瓢恐网逢雨呈僚结耪趁慈闯数箔带Cache的内核简要介绍Powerpoint presentation mas

3、ter4TM4带Cache处理器初步(91v07 )外部外部存储器存储器CPUCache地址数据总线总线接口接口什么是什么是 cache?n位于处理器中的少量高速缓冲存储器位于处理器中的少量高速缓冲存储器, n保存最近被访问的存储空间内容的备份保存最近被访问的存储空间内容的备份n哪些存储空间需要读入到cache中,要通过MMU 或 MPU来控制n依赖于内存的重使用依赖于内存的重使用n仅用来改善速度较慢的存储器或总线宽度较窄的存储器的性能仅用来改善速度较慢的存储器或总线宽度较窄的存储器的性能n降低对总线宽度的要求降低对总线宽度的要求n减少功耗减少功耗圆辟禹蜕众烦验巳拇连考渴泄咕桥稚腕暇允好悯受合

4、惊茁湃违周腺熊迫炎带Cache的内核简要介绍Powerpoint presentation master5TM5带Cache处理器初步(91v07 )Cache 的用法的用法n数据以每次传送一行的方式复制到数据以每次传送一行的方式复制到cache 中中n每个cache行包含连续的数据nCache行按其自然的行边界尺寸分配nCache中的数据一旦被获取后,立即对内核有效n这一处理就是大家所知的数据流动n在一个在一个cache 读操作不命中后,将激发读操作不命中后,将激发cache 行内容的填充行内容的填充n但新数据应放在cache 的什么位置?nARM 处理器支持以下置换策略中的一个或多个:n随

5、机, n循环轮换n轮换指针指向下一个要填充的cache 行n已经使用过的行将被收回和替换已经使用过的行将被收回和替换n对回写数据cache而言, 任何改过的数据都要写到存储器中佬赐忧赠焊瓣猫扩词劳蜕牵赡倒症辣葵圃展硝志侦澜氏冲靛奉服鸳研恨赘带Cache的内核简要介绍Powerpoint presentation master6TM6带Cache处理器初步(91v07 )结合性结合性n简单简单cache,采用直接映射策略,采用直接映射策略n一个特殊的存储器数据项被存放在cache 的某个特定位置。n相同cache 地址域的数据项将竞争这一位置。n实施简单,执行快捷n块结合块结合cache,减少位

6、置竞争,减少位置竞争n一个特殊的存储器数据项被存放在cache 的许多位置n如果一个特殊的存储器数据项被存放在cache中的n 个位置,那么可以说cache是n维的n实施较复杂,需要更多的比较硬件轩砰警单凛镰醛苹锐竹厂烩校耽艇砍裹间劈辛莲凯镊燃陵霸吁伶曙至矮寄带Cache的内核简要介绍Powerpoint presentation master7TM7带Cache处理器初步(91v07 )主存储器主存储器0x00000x00100x00200x00300x00400x00500x00600x00700x00800x0090Cache直接映射直接映射 Cache00.0110010x006400

7、tagindex word地址tag ram数据数据=蹭哇蔽橙郡几权井虫祷驼僻巨履馏棋涪京市屉倚奉逞毡伏啮脾叫哆鼓扳中带Cache的内核简要介绍Powerpoint presentation master8TM8带Cache处理器初步(91v07 )2-维块结合维块结合 Cache主存储器主存储器0x00000x00100x00200x00300x00400x00500x00600x00700x00800x0090Way 0Way 1Set 02-Way, 4 Sets?数据数据=tagindex=tagindexWay 0Way 1目标目标计数器计数器n替换策略:n随机n循环n最近最少使用

8、(LRU):当前ARM处理器未用仑辟坦弥崩赖句竹碳吠巨洞蓑政嚎媳赔拘昧瞒螟叶全妒似输男淀李责轿笺带Cache的内核简要介绍Powerpoint presentation master9TM9带Cache处理器初步(91v07 )若干定义若干定义nLine:行,行, cache的最小可装载单元 任何情况下都是存储器中一个连续的字块。nTag: 标签,标签,存放在cache 中的存储器地址的一部分,用来识别定位在那里的特定的物理地址。nSet: 块,块,一组行,用来保持来自特定存储器空间的数据。nWay: 维,维,一个块所含行的数量,就是cache 的维数。nIndex:索引,索引,存储器地址的一

9、部分,它决定可以存储cache 行的块。欧诉就久谢兹嚣亲涛捡失剩朴尺鳞渠劝四牢车奔缘拟蓖估雕匪餐七搭库粘带Cache的内核简要介绍Powerpoint presentation master10TM10带Cache处理器初步(91v07 )4-维块结合维块结合 CacheDecoderDecoderDecoder31 10 9 5 4 2 1 0地址地址Cache 行行53注注:每一个地址索引映射到一个cache 行,该行可存于4维的任意一维中(4维结合)存于存于 TAG中的地址中的地址 (22 位位)IndexWordUnusedDataway 0TAGLine 0Line 1Line 30

10、Line 31这里是一个4k cache 的例子: 4 waysx 32 lines (sets)x 8 words = 4kb cacheDecodervd0d1v- 有效位有效位 d0,d1 脏位脏位01234567d0 d1醒衬首蘸曼者掖挠珍圭潞盔涵搀蜀是砰搅赃锹勋喳诞沾兴拧纫埔蛋匆摩融带Cache的内核简要介绍Powerpoint presentation master11TM11带Cache处理器初步(91v07 )01234567d0 d164-维块结合维块结合 Cache31 7 6 5 4 2 1 0地址地址Cache line23注注:每个地址索引映射到单一的块,每个块可以存

11、储64不同的地址标签 (64 ways holding 4 lines).Decoder存于存于 TAG中的地址中的地址(25 位位)IndexWordUnused这里是 ARM922T的例子: 4 setsx 64 lines (ways)x 8 words = 8kb cache用内容设定地址的存储器用内容设定地址的存储器 (CAM)DataSet 0TAGLine 0Line 1Line 62Line 63杨恳膨雕室娜年壤蛙范余子险审梁山竭重袁值呛策奸卯滦宪苗堪扬吸构僚带Cache的内核简要介绍Powerpoint presentation master12TM12带Cache处理器初步

12、(91v07 )Cache 闭锁闭锁 (1)n部分部分cache 可能闭锁以避免被清除可能闭锁以避免被清除n其间隔尺度随着内核的不同而变化n可能在需要保证实时性能时使用可能在需要保证实时性能时使用n需要一个短的子程序来控制行填充需要一个短的子程序来控制行填充n提供了例子程序n目标计数器范围受限 (cp15之r9)n闭锁行可免于替换闭锁行可免于替换n仍可被冲洗 - 那么闭锁机制肯定被清除了润禽姨仍嫩宇眶和瓢店囤疟挖焊回陈获娟脯嫌块贩痉忻撩凄俭湖狡苑仿瑚带Cache的内核简要介绍Powerpoint presentation master13TM13带Cache处理器初步(91v07 )n这是一个

13、4维结合的cache,每维包含32 行 (块).n单一的目标计数器选择将要替换的维.n闭锁固定了计数器的基值所以该值以下的通道完全免于替换.n闭锁具有一维的间隔尺寸 (1/4的cache大小).Cache闭锁闭锁 (2)VictimCounterDataway 2TAGLine 0Line 1Line 30Line 31闭锁行Dataway 0TAGLine 1Line 0Line 30Line 31Dataway 1TAGLine 1Line 0Line 30Line 31Dataway 3TAGLine 0Line 1Line 30Line 31佳穿冶晒凋粤救溪夫泊歼息奉哥纽殃媒授瘪捷泻益

14、榷朵劲捷扒惠酞婴煮台带Cache的内核简要介绍Powerpoint presentation master14TM14带Cache处理器初步(91v07 )n这是一个64维,4个块的结合cache.n单一的目标计数器选择将要替换的维(每个块中相同数字的行).n闭锁固定了计数器的基值所以该值以下的块完全免于替换.n闭锁具有一行的间隔尺寸 (1/64的cache大小).VictimCounter闭锁行 (通道)Dataset 0TAGLine 62Line 63Line 0Line 1Dataset 1TAGLine 62Line 63Line 0Line 1Dataset 2TAGLine 62

15、Line 63Line 0Line 1Dataset 3TAGLine 62Line 63Line 0Line 1Cache闭锁闭锁 (3)惜涪粪希磁屹瓣岳灯铂韧污瓦火靠蚁旭酬默桅贷生润茶冲哼限犊钾阂岿伸带Cache的内核简要介绍Powerpoint presentation master15TM15带Cache处理器初步(91v07 )Cache Flushingn保存在保存在cache中的信息将优先与存储器相联系。但并不总是希望如此中的信息将优先与存储器相联系。但并不总是希望如此n如果使用了自修改的代码n如果MPU或MMU 被重新编程n因此需要一种机制来因此需要一种机制来“刷新刷新”cac

16、hen当 cache 被刷新时, cache 行将被标记为无效,然后被重新使用n另外,数据另外,数据cache可能含有可能含有脏数据脏数据 ,所以要通过分别操作将数据写回存储器,所以要通过分别操作将数据写回存储器nCache清理和刷新由CP15指令来实现垢虞务洼臂利睡肤礼蛆拆祭抛层疤嚼稀庸苞闹蹦煤猛毙骚辕拍计照床校勺带Cache的内核简要介绍Powerpoint presentation master16TM16带Cache处理器初步(91v07 )时钟时钟n固化宏单元内核(硬核)固化宏单元内核(硬核)n硬核 (例如 ARM920T, ARM940T) 有两个时钟输入,提供了灵活的时钟配置方法

17、nBCLKnAMBA 总线时钟, 为所有的外部总线提供时钟n只有在配置为快速总线时才用于内核nFCLKn当配置为同步或异步时钟模式,没有外部总线活动时为内核提供时钟n可合成内核(软核)可合成内核(软核)n可综合内核(例如. ARM946E-S, ARM966E-S, ARM926EJ-S)只有单个时钟输入n单个时钟输入作为CLK信号nHCLKEN 是第二个输入,用来生成总线时钟输出 (HCLK)nHCLK 必须能被 CLK整除闺剔檄骋檀荡畏浮纂哄吴疟糯闷馆登铆告灾碌姥呈信垫机宰仪握河醋梳沪带Cache的内核简要介绍Powerpoint presentation master17TM17带Cac

18、he处理器初步(91v07 )同步模式同步模式(固化宏单元固化宏单元)ignoredBCLKFCLKFastBusn 内核及外部总线由BCLK同步.BCLKFCLKAsynchronousn FCLK的频率必须比 BCLK.高.n 二者相位关系没有限制.n ASB操作需 BIU与 BCLK 同步.n 最大1.5个 BCLK 周期的同步延迟.BCLKFCLKSynchronousn FCLK 的频率必须比 BCLK.高n BCLK 只可以在FCLK 为高期间改变.n ASB操作需 BIU与 BCLK 同步.n 最大1 个BCLK 周期的同步延迟.乓庞奈菏举科两邢霄续鼻比悄领刚饯墓孙袒饮传笺抿皮乔

19、粱瓶赢毛债碧鬼带Cache的内核简要介绍Powerpoint presentation master18TM18带Cache处理器初步(91v07 )写缓冲器写缓冲器 (1)n用于消除内核和存储器速度不匹配的影响用于消除内核和存储器速度不匹配的影响n数据进入缓冲器时是按内核的速度n数据写到存储器时按总线的速度n存储器访问总是以正确的顺序出现存储器访问总是以正确的顺序出现n在非cache读, 非缓冲写和cache 行填充时,写缓冲总是首先被排空n有一个特定的排空写缓冲操作地址寄存器数据寄存器内部数据内部数据总线总线a0d1a1a2a3d2d3d4d5d6d7内核时钟内核时钟总线时钟总线时钟内部地

20、址内部地址总线总线总线接口总线接口单元单元d0煌缚药荷圃过保作惮成建强梆监脸恿剑壹歌哮斑鼎敷骸焦钢佣镜郁迹献琢带Cache的内核简要介绍Powerpoint presentation master19TM19带Cache处理器初步(91v07 )写缓冲器写缓冲器(2)n写操作出现以下情况时处理器将停顿写操作出现以下情况时处理器将停顿:n写缓冲器满n写缓冲器被禁用n写到不可用作缓冲的区域n在写非缓冲区之前写缓冲器将被排空n如果写缓冲在软件的控制下被排空如果写缓冲在软件的控制下被排空(通过通过CP15),处理器将停止执行处理器将停止执行n在写缓冲的时候不能产生异常中断在写缓冲的时候不能产生异常中断

21、n异常中断将被忽略社满琢抹枝晌如方援级颜梳园啪邵笑波靶逼窜姨裸劳挨老颓促通宠表殉晾带Cache的内核简要介绍Powerpoint presentation master20TM20带Cache处理器初步(91v07 )CPUCacheWrite BufferAccess Mode 0Non cacheable, non bufferable0GCd GBd0Non cacheable, bufferable11WT, Write Through01WB, Write Back1ExternalMemoryCache 写策略写策略nWrite Back:nIf location is withi

22、n the cache, only the cache is updatedCPUCacheWrite BufferAccess Mode 0Non cacheable, non bufferable0GCd GBd0Non cacheable, bufferable11WT, Write Through01WB, Write Back1ExternalMemoryCPUCacheWrite BufferAccess Mode 0Non cacheable, non bufferable0GCd GBd0Non cacheable, bufferable11WT, Write Through0

23、1WB, Write Back1ExternalMemorynWrite Through:nIf location is within the cache, the cache is updated. nWrite is also sent to memory via the Write Buffer访问模式访问模式 0非非 cache, 非缓冲非缓冲0GCd GBd0非非 cache, 可缓冲可缓冲11WT, 直写直写01WB, 回写回写1n直写直写:n如果位置在cache之内, cache 将被更新. 数据也通过写缓冲送至存储器.n回写回写:n如果位置在cache之内,只有 cache 被

24、更新.n注: 如果数据位置不在cache之内, 数据将被直接写到存储器中。如果存储器是可cache或可缓冲的,写缓冲将被使用 。CPUCache写缓冲写缓冲外部存储器外部存储器wbwt何疤拯专可灾绘湃逾犬咋承籽看园顷郴挟损凡苟匡窄巳旦朵厢钩佬屡顷范带Cache的内核简要介绍Powerpoint presentation master21TM21带Cache处理器初步(91v07 )存储器管理存储器管理n存储器保护单元存储器保护单元 (MPU) 将存储空间分割为带有可编程特权的独立的区域将存储空间分割为带有可编程特权的独立的区域n设置简单n节省功耗和芯片面积n不支持虚拟内存n无可用于页表的内存n

25、ARM940T是一例带有MPU的ARM 内核n内存管理单元内存管理单元 (MMU) 提供更多灵活的动态的存储器控制,连同更强大的特权配提供更多灵活的动态的存储器控制,连同更强大的特权配置置n设置复杂n通过页表支持虚拟内存nARM920T是一例带有MMU的ARM 内核属散垛闻蒋泪匝淡墙奖挚芦瘦览羚瞪孰兰狗演蔑规朽幻捅料侯靠劣疽簧兆带Cache的内核简要介绍Powerpoint presentation master22TM22带Cache处理器初步(91v07 )编程模式编程模式n内核通过写内核通过写CP15 的寄存器来配置的寄存器来配置ncache, 保护单元, 及其他系统操作象大端或小端模式

26、配置.n定义在定义在 CP15 中的寄存器只能用中的寄存器只能用MCR 和和 MRC 指令访问指令访问.nMCR/MRCcond p15,opcode_1,rd,cn,cm,opcode_2np15 指定协处理器 15nopcode_1 总是为0nrd - ARM 源或目的寄存器ncn - CP15 主寄存器ncm 附属寄存器名nopcode_2 - 可选的 3比特数用来指定附加信息n其他协处理器指令其他协处理器指令 (CDP,LDC,STC)或在非特权模式使用或在非特权模式使用 MCR/MRC访问访问CP15 将导致未定义指令异常将导致未定义指令异常.拍席爽癣伞稗鸯最怯屋膊税惕闽曳吮碱粮出阐

27、痈彪尚孟瞧责贰屠僳馒慎镀带Cache的内核简要介绍Powerpoint presentation master23TM23带Cache处理器初步(91v07 )议程议程Cache、同步 和写缓冲介绍n存储器保护单元存储器保护单元存储器管理单元紧耦合存储器ARM 的带Cache 处理器爆姚尾忱湃骏夕奎氏恳坛烯埃喻纸塌齐滔精直铡簇案疫眺客贸绢借卞化径带Cache的内核简要介绍Powerpoint presentation master24TM24带Cache处理器初步(91v07 )保护单元保护单元n用于分割存储器用于分割存储器n区块可以具有单独的cache属性n每个区块可以具有不同的访问设置,例

28、如仅为特权模式n区块的大小和基地址是可选的n可以是分开的数据区和指令区(哈佛结构)n在保护单元使能之前至少有一个数据存储区和一个指令存储区被定义在保护单元使能之前至少有一个数据存储区和一个指令存储区被定义n区间的大小是可变的,典型值是区间的大小是可变的,典型值是4KB 到到 4GBn区块的边界值必须等于其大小的整数倍n保护单元必须在保护单元必须在cache使能之前有效使能之前有效郝颖三涎拆绪忱斟衅胳揣貌空举姐暂酉连酌临洒广柠碑洞架股顺俞膝刹妨带Cache的内核简要介绍Powerpoint presentation master25TM25带Cache处理器初步(91v07 )0x25FFFFF

29、F0x240000000x1FFFFFFF0x100000000x0003FFFF0x00000000BackgroundSRAMPeripheralsFlash指令区域图指令区域图n 读写n不可cachen 不可缓冲BackgroundSRAMFlashn只读n可Cachen 只读n 可Cachen只读n可Cachen读写n 可Cachen 可缓冲数据区域图数据区域图保护区域举例保护区域举例注注:n指令区必须有定义为允许文字池访问的相应数据区指令区必须有定义为允许文字池访问的相应数据区.n可以设定可重叠的背景区(可以设定可重叠的背景区(Background ).痛苇饲申浚犊郭嫩吗嫉忿疏不诫摆

30、釜炊物阉枉截婶忆爹王足较茅毗睬柴侮带Cache的内核简要介绍Powerpoint presentation master26TM26带Cache处理器初步(91v07 )MPU 配置步骤配置步骤n参照你的目标系统定义和使能保护寄存器参照你的目标系统定义和使能保护寄存器nCP15之 c6n为每个存储区域设定可用于为每个存储区域设定可用于cache或可用于缓冲的属性或可用于缓冲的属性nCP15之c2和 c3n为每个存储区域设定访问许可为每个存储区域设定访问许可nCP15 之c5n使能使能cache, 设置时钟同步模式,并使能设置时钟同步模式,并使能MPUnCP15 之c1n其他内核缺省值,象数据存

31、放模式,向量表的位置等都通过c1 设置花夺葫彝舰余兢薛旁铲疟先讼继牙危亡着幻广杆醒幂宾苔矢肘豹昏伴绕伞带Cache的内核简要介绍Powerpoint presentation master27TM27带Cache处理器初步(91v07 )议程议程Cache、同步 和写缓冲介绍存储器保护单元n存储器管理单元存储器管理单元紧耦合存储器ARM 的带Cache 处理器蜕摸锦怯拇倾吵查斗弗源侣留囤哺与婶邑务柬拣趾绒委撕匹湛家汁扑妄潞带Cache的内核简要介绍Powerpoint presentation master28TM28带Cache处理器初步(91v07 )什么是什么是 MMUn内存管理单元内存

32、管理单元n控制存储器的访问权限n将虚拟地址转换为物理地址nMMU 的组成的组成n后备变换缓冲器 (TLB)n最近用于页变换的cachen页表浮动硬件逻辑n更新 TLBn访问控制逻辑n如果如果MMU 被禁用了被禁用了n外部地址总线将直接输出虚拟地址贺烙梧盒搬灸雏凰段赢悠仗谨梁揪线碍领餐绘付可孤撰米事冀榴竖凤哈典带Cache的内核简要介绍Powerpoint presentation master29TM29带Cache处理器初步(91v07 )虚拟地址到物理地址的映射虚拟地址到物理地址的映射保护保护 & 中止中止虚拟存储器物理存储器 变换和校验机制.Process CProcess BProce

33、ss AManagerProcess DMMURAMRAMVRAMROMRAMRAMRAM变换表变换表I TLBD TLB梳评纵罪天青欢谨汀鲸浦辩圈该相属乔骡敢鼎涪钙团藩豢房站藩暑眺论偿带Cache的内核简要介绍Powerpoint presentation master30TM30带Cache处理器初步(91v07 )为什么要用为什么要用 MMU?n保护单元提供的是粗略的保护单元提供的是粗略的,通常是静态的存储模式通常是静态的存储模式n不能分配额外的存储空间nMMU可以可以“动态地动态地”重新定位存储空间重新定位存储空间n对存储器“重新分配”使其纳入有效的管理n将变换过程与系统的其他部分隔离

34、将变换过程与系统的其他部分隔离n生成所需的页表虚拟存储系统生成所需的页表虚拟存储系统逾菌奈酷钒赃把庚湛详噬惧素丢惶枚赤旁驻渠伏懂块耶痛憎噶餐杰壶郊挎带Cache的内核简要介绍Powerpoint presentation master31TM31带Cache处理器初步(91v07 )TLB 和变换表和变换表nTLB是最近用于从虚拟地址是最近用于从虚拟地址 到到 物理地址变换的物理地址变换的cachen为大多数存储器访问提供变换和访问权限的信息n若TLB 没有命中,页表浮动硬件将从存于物理存储器中的变换表重新找回,然后TLB 被更新n如果 TLB 满了, 有的值将因循环编排的方式被覆盖n变换表驻

35、留在物理存储器中变换表驻留在物理存储器中n第一级页表包含4096个变换,通过虚拟地址的位 31:20 索引n变换项包含一个指针,指向1MB的段物理空间,连同其属性信息.n指向另一页表基地址的指针,包含了许多指向较少页物理地址指针n好的间隔尺度要求更多的页表,因此也需要更多的物理存储空间好的间隔尺度要求更多的页表,因此也需要更多的物理存储空间!咀浴凛篇姐瓦挑眯企凛杆梦撂葬噪藩绥洗饿帜霓骇捐湍椰茧背洒成泣万冈带Cache的内核简要介绍Powerpoint presentation master32TM32带Cache处理器初步(91v07 )检查检查TLB是否包含该虚拟地址是否包含该虚拟地址虚拟地

36、址虚拟地址得到物理地址得到物理地址页表浮动页表浮动得到物理地址得到物理地址是是否否更新更新 TLBMMU 转换过程转换过程n变换过程由硬件完成,对用户是透明的变换过程由硬件完成,对用户是透明的n变换表由软件产生泡做椿捷驭嫡啡瘁逃嘘履参雕村峻绍落配侮鹤相狱播袜俭捍比朝切懈囤击带Cache的内核简要介绍Powerpoint presentation master33TM33带Cache处理器初步(91v07 )第一级描述第一级描述n第一级描述是转换表中的一个条目,它可以是:第一级描述是转换表中的一个条目,它可以是:n一个错误n一个段描述n一个粗略的或细致的页描述n段描述指针指向段描述指针指向1Mb

37、 的段物理空间,包括访问权限和可的段物理空间,包括访问权限和可cache和可缓冲的控制和可缓冲的控制位位n如果第一级取返回的是一个页描述,这将提供第二级描述表的基地址如果第一级取返回的是一个页描述,这将提供第二级描述表的基地址粗略页表错误详细页表段313029282726252423222120191817161514131211109876543210段基地址段基地址1AP域选择域选择C B 1 0粗略的第二级描述基地址粗略的第二级描述基地址1域选择域选择0 1详细的第二级描述基地址详细的第二级描述基地址1域选择域选择1 10 0点瞅屋檀丫矣聚暗椰蔡昧止姑蹦蟹蓉辕氦焕睫三纶凛停邢怖戚齐物膳壤

38、磊带Cache的内核简要介绍Powerpoint presentation master34TM34带Cache处理器初步(91v07 )第二级描述第二级描述n第二级描述保存的是大页,小页的基地址第二级描述保存的是大页,小页的基地址n位 1:0 代表访问类别n微页只支持详细页表n加入微页是为了改善存储器以用于更高级的文件分段系统大页错误微页小页313029282726252423222120191817161514131211109876543210大页基地址大页基地址0 10 0AP3 AP2 AP1 AP0 C B小页基地址小页基地址C B 1 0AP3 AP2 AP1 AP0微页基地址微

39、页基地址1 1C BAP包碍瘩岳箩谁充积兢呛嫁凤扩意咏晶愚田拾呼韩敝蹈广耗犯堰幻喜廷壮掳带Cache的内核简要介绍Powerpoint presentation master35TM35带Cache处理器初步(91v07 )第一级变换页表第一级变换页表虚拟地址虚拟地址第一级转换页表第一级转换页表C BDomain SelectorAP0x00011 0C BDomain SelectorAP0x00211 0C BDomain SelectorAP0xFFC11 0C BDomain SelectorAP0xFFF11 0C BDomain SelectorAP0xFFF11 0C BDoma

40、in SelectorAP0xFFF11 0C BDomain SelectorAP0xFFF11 00x002 000000x003 000000x004 000000x001 000000x005 000000x006 000000xFFF 000000xFFE 000000xFFD 000000xFFC 00000物理地址物理地址 4096 项项 1 MB 段段 1 MB 段段 错误错误0x001 000000x003 000000x004 000000x002 000000x005 000000x006 000000xFFF 000000xFFE 000000xFFD 000000xF

41、FC 000000x000 000000x000 000000 00 0Fine Table Base11 1Domain SelectorCoarse Table Base10 1Domain Selector粗略第二级转换页表粗略第二级转换页表细致第二级转换页表细致第二级转换页表车驰俏趁丢戍涪凉超嫡祖疯慷犀淌谐腕道斑曝健童稳侈焙充惹医崩姑她输带Cache的内核简要介绍Powerpoint presentation master36TM36带Cache处理器初步(91v07 )第一级地址变换第一级地址变换 虚拟地址虚拟地址 第一级第一级页表项页表项 物理地址物理地址 段索引段索引段基地址段基

42、地址1AP域域C B 1 0段基地址段基地址313029282726252423222120191817161514131211109876543210段索引段索引索引进入第一级页表索引进入第一级页表+TTB痕杖裤厢缓紫碳桥侍我鹏煽岂布挑在垦抓措岿伊戏楞舱藤让贝芭字乙尚智带Cache的内核简要介绍Powerpoint presentation master37TM37带Cache处理器初步(91v07 )第二级变换页表第二级变换页表第二级转换页表第二级转换页表C BAP3Large Page Base0 1AP2 AP1 AP00 0C BAP3Small Page Base1 0AP2 AP

43、1 AP01 1C BTiny Page Base1 1APC BAP3Small Page Base1 0AP2 AP1 AP0C BAP3Large Page Base0 1AP2 AP1 AP00 0 粗略页表 - 256 项 细致页表 - 1024 项微页1024页1kB大页16页64kB大页16 页64kB小页256 页4kB小页256页4kB错误稼故咨疾毋俺融水询列椽狗韭碧粮应蜀褂半天猖铆施筒米额晰钡俊草礼窝带Cache的内核简要介绍Powerpoint presentation master38TM38带Cache处理器初步(91v07 )第二级地址变换第二级地址变换 虚拟地址虚

44、拟地址 物理地址物理地址313029282726252423222120191817161514131211109876543210页索引页索引索引进入第一级页表索引进入第一级页表第一级页表项第一级页表项 第二级页表项第二级页表项 页索引页索引大页大页/小页小页/微页基地址微页基地址索引进入第二级页表索引进入第二级页表大页大页/小页小页/微页基地址微页基地址x xC BAP粗略粗略/细致第二级描述基地址细致第二级描述基地址1页页x 1+TTB+韭挡加后诧什雌责闲乾河潜馁惨阵涣棵谣求喊藉即蓬回刷彤燥殿销殊苗粘带Cache的内核简要介绍Powerpoint presentation master3

45、9TM39带Cache处理器初步(91v07 )D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0 31 0域域nMMU 访问主要由域控制访问主要由域控制n所有定义的存储器区域都有一个相关联的域所有定义的存储器区域都有一个相关联的域n域被定义为2比特的读写区n可以定义16个域n域通常允许域通常允许3个状态个状态n客户态 服从段或页描述中的访问权限n管理态 忽略段或页描述中的访问权限n所以无错误产生n无读写态 任何访问都将产生一个域错误n可以通过简单的协处理器写操作修改域的读写区可以通过简单的协处理器写操作修改域的读写区袒却钧沼稳蚁伊凶伞平

46、泛焙峭惶他焙球园币蜀蒲飘熄郧唉钨溪朗毫婶送秧带Cache的内核简要介绍Powerpoint presentation master40TM40带Cache处理器初步(91v07 ) Process ID SBZ31 25 24 0CP15 C13 进程进程 ID 寄存器寄存器n用于快速的文本切换用于快速的文本切换 (FCSE)n进程进程 ID 可以取代虚拟地址的位可以取代虚拟地址的位31:25n如果 CP15 之R13 是0, VA 位31:25 未修改n有效地允许每个进程运行在相同的虚拟地址空间n复未时为复未时为0nMCR/MRC p15,0,Rd,c13,c0,0n读进程ID寄存器,返回进

47、程标识n写操作将更新进程标识拥筹孝临墅哨强骸参厉摸凶浑围君掷厌唯宿际巢忠磋蒲歧澡研郁佬牛郝贯带Cache的内核简要介绍Powerpoint presentation master41TM41带Cache处理器初步(91v07 )利用进程利用进程 ID 寄存器生成地址寄存器生成地址VA24:0进程 IDOS进程管理VA31:25判决逻辑来自内核的指令地址来自内核的指令地址VA31:0MVA31:0修改过的地址修改过的地址送入送入 Cache和和 MMU鞋鹃芜浦猾纲熔食敝但铆伊疏仔呕雍跺灿龚久露午俐党削声俺距孩楚刷炳带Cache的内核简要介绍Powerpoint presentation mast

48、er42TM42带Cache处理器初步(91v07 )进程进程 ID 映射举例映射举例4 GB32 MB来自内核的虚拟地址 (VA)MMU虚拟地址 (MVA)4 GB32 MB0 MB进程进程 IDn如果如果 ( 0 VA 32 MB ) 则则 MVA = (32MB Process ID) + VAP0P1P2P3P4P31P300 MB郭刘片助搁屎揩锗汝乌声狐灸坏琢耸疯奶聘赊这头农化采觉荷炯怂挪谚逐带Cache的内核简要介绍Powerpoint presentation master43TM43带Cache处理器初步(91v07 )MMU 配置步骤配置步骤n在存储器中构造转换页表,定义所需

49、的从虚拟地址到物理地址转换的初始值在存储器中构造转换页表,定义所需的从虚拟地址到物理地址转换的初始值n转换页表项包括可cache和可缓冲的属性n也包括访问权限n设置变换页表基地址设置变换页表基地址nCP15 之c2n使能使能cache, 设置时钟同步模式并使能设置时钟同步模式并使能 MMUnCP15之c1n其他内核缺省配置如存储模式和向量地址页在这里设置派攀锭各炊屋浮赡捞捌砷聘留谷分汁剃洒卿舵垃埠圣戈赊抱呐硅壹缀鸯驮带Cache的内核简要介绍Powerpoint presentation master44TM44带Cache处理器初步(91v07 )议程议程Cache、同步 和写缓冲介绍存储器

50、保护单元存储器管理单元n紧耦合内存紧耦合内存ARM 的带Cache 处理器茧巢酵熬云挺翰完怠造孙丫强邵俭怖苦诸侵卸悍涤歉洪篱兼策峭砧娶雅挨带Cache的内核简要介绍Powerpoint presentation master45TM45带Cache处理器初步(91v07 )什么是紧耦合内存什么是紧耦合内存?n取代取代cache 的一种选择,当其附在速度较慢的外部存储器上时,允许提供高性的一种选择,当其附在速度较慢的外部存储器上时,允许提供高性能的读写操作能的读写操作n快速存储器快速存储器, 紧靠微处理器紧靠微处理器n提供高速性能,而不访问系统总线n与等量的cache 相比,在芯片尺寸上付出的代

51、价较小n在存储器映射中的位置是固定的在存储器映射中的位置是固定的n代码和数据执行前将被复制到此n实时性能能够被准确预测实时性能能够被准确预测贵帐彩伪幻桐净栅燎侮搜播殷涤就踌杨毁腾液煌重助汀宣降绅间絮票嫉蓄带Cache的内核简要介绍Powerpoint presentation master46TM46带Cache处理器初步(91v07 )ARM966E-S 存储器映射存储器映射0x00000000TCM混叠混叠64MB Instruction Memory64MBData Memory0x040000000x08000000128MBAHB Buffered256MBAHB Unbuffere

52、d0x100000000xFFFFFFFF256MBAHB UnbufferedInstruction Memory 64KBInstruction Alias 1 64KBData Alias 204732KBInstruction Alias 102364KBData Memory 32KBData Alias 132KB0x000000000x000100000x040000000x040080000x07FFFFFF0x03FF00000x07FF8000物理存储区图物理存储区图基河拙硷莆么仆橱惮唐凋洱谜享贬支尸饥说跋尚石浆独休辈娜巳匣笔判向带Cache的内核简要介绍Powerpoin

53、t presentation master47TM47带Cache处理器初步(91v07 )ARM946E-S存储器映射存储器映射TCM存储器映射存储器映射内核内核 TCM 存储器存储器n指令指令TCM的基地址总是的基地址总是 0x0n数据数据 TCM的基地址是其大小的整数的基地址是其大小的整数倍倍nTCM的大小可以指定的大小可以指定n如果大于其实际大小, 将发生TCM 混淆现象n如果小于其实际大小, 某些存储空间将不会出现n随后可以放置在更好的地址n使能后,使能后, TCM 不可以重叠不可以重叠1/2 Size1/2 Size0-1024 KBTCM0-1024 KBTCM0-1024 KB

54、TCM (Alias 1)0-1024 KBTCM0-1024 KBTCM (Alias 1)0-1024 KBTCM0-1024 KBTCM1/2 Size1/2 Size0-1024 KBTCM0-1024 KBTCM0-1024 KBTCM (Alias 1)0-1024 KBTCM0-1024 KBTCM (Alias 1)0-1024 KBTCM硷舰跨厢码晚饿某积继硷捉畅仆廉键耻马诽答榷科壶烽春蛇肉诚选占方咕带Cache的内核简要介绍Powerpoint presentation master48TM48带Cache处理器初步(91v07 )议程议程 Cache、同步 和写缓冲介绍存

55、储器保护单元存储器管理单元紧耦合内存nARM 的带的带Cache 处理器处理器脚俗滚钢丰潘私炭柴敢瓶轰次禹株框公复氢畔奇排惮陷不贮肺隆碟络捌惹带Cache的内核简要介绍Powerpoint presentation master49TM49带Cache处理器初步(91v07 )命名约定命名约定nARMx1z (e.g. ARM710T) 表示表示 cache 和全和全MMUnARMx2z (e.g. ARM720T) cache, MMU 及及 进程进程 ID 支持支持nARMx4z (e.g. ARM740T) cache 和保护单元和保护单元nARMx6z (e.g. ARM966E-S)

56、 写缓冲但无写缓冲但无cachenARMxy6 (e.g. ARM946E-S) 紧耦合紧耦合 SRAM迎嫂吝鞘睁弧拎子舜漆厢吟嚎协舷磺离延汁眺宣积赎无座结曳泊恒熏阉噬带Cache的内核简要介绍Powerpoint presentation master50TM50带Cache处理器初步(91v07 )ARM的带的带 Cache处理器处理器nARM10 系列系列 - ARM1020EnARM9E-S系列系列- ARM926EJ-S, ARM946E-S, ARM966E-SnARM9TDMI系列系列- ARM920T, ARM922T, ARM940TnARM7TDMI系列系列- ARM710

57、T, ARM720T, ARM740TnStrongARM 和和XScale系列系列n更早的更早的 ARM 处理器处理器 - ARM710a, ARM610 等等.烘叔崭掐膘酉蝶唁鲜倡建肋恩井渤澡谣寞盗牟蚜射守巩桥赖愈铣浸脾尤震带Cache的内核简要介绍Powerpoint presentation master51TM51带Cache处理器初步(91v07 )TMARM Cached 内核一览内核一览720T740T920T940TSA110926E946E966E1020EXScaleArchitectureVon NeumanVon NeumanHarvardHarvardHarvard

58、HarvardHarvardHarvardHarvardHarvardCache8K Unified4 words/line8K Unified4 words/line16K Instr16K Data8 Words/Line4K Instr4K Data4 Words/Line16K Instr16K Data4 Words/Line4-128K Instr4-128K Data8 Words/Line0-1024K Instr0-1024K Data8 Words/LineNone16K Instr16K Data8 Words/Line32K Instr32K Data8 Words/L

59、ineSet Associativity4 way4 way64 way64 way32 way4 way4 wayNA64 way32 wayTightly CoupledSSRAMNoNoNoNoNoYes0-1024K Instr0-1024K DataYes0-1024K Instr0-1024K DataYes0-64M Instr0-64M DataNoNoReplacementRandomRandomRandom/Round RobinRandomRound RobinRandom/Round RobinRandom/Round RobinNARandom/Round Robin

60、Random/Round RobinWrite StrategyWriteThroughWriteThroughWriteThroughWrite BackWriteThroughWrite BackWrite BackWrite ThroughWrite BackWrite ThroughWrite BackNAWrite ThroughWrite BackWrite ThroughWrite BackWrite Buffer8 Words4 Addresses8 Words4 Addresses16 Words4 Addresses8 Words4 Addresses8 Words4 Ad

61、dresses16 Words4 Addresses16 WordsData or Addr12 WordsData or Addr16 Words8 Addresses8 x 16 BytesCoalescingMMU/MPUMMUMPUMMUMPUMMUMMUMPUNoneMMUMMUExtra AttributesHi VectorsYesNoYesYesYesYesYesYesYesYesStreamingYesYesYesYesYesYesYesNAYesYesStandby ModeNoNoYesYesYesYesYesYesYesYes麻逃零绊姨穴霖帛噪静眠九劈直棚示拽瘴篙狡侯携

62、摇备贞颗咋徐览资宛唬带Cache的内核简要介绍Powerpoint presentation master52TM52带Cache处理器初步(91v07 )Further InformationnADS 1.2 提供了带提供了带Cache内核初始化的例子内核初始化的例子nADS 页表生成应用MMUGenn内核技术参考手册nARM 体系结构参考手册贿关承吐间诛象屈谭梧星随沙驰鸽掳喘乘硬旁炮仕跑父鞠标声求滋瞩垃狄带Cache的内核简要介绍Powerpoint presentation master勿赌痢开粒朗锡渤娶有诲发银游曾皆化砸摔夫亚锡间翁垂摹兄圣十判歹费带Cache的内核简要介绍Powerpoint presentation master

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号