C H A P T E R 10 存储器层次.

Slides:



Advertisements
Similar presentations
製作者 : 黃瀞慈 蔡佳樺 指導老師:徐必大. 目錄 基本介紹 數位相機與傳統相機的比較 消費性 DC 與單眼數位相機 (DSLR) 比較 消費性 DC 與單眼數位相機 (DSLR) 比較 CCD / CMOS 未來展望 製作心得 實地參訪照片 資料來源 Q&A.
Advertisements

WCI361 Windows Vista WCI361 Windows Vista 运行性能设计与 改进.
第6章 存储系统 6. 1 存储器的分类与性能评价 6. 2 存储器访问的局部性原理与 层次结构存储系统 6. 3 半导体存储器
第一章 计算机基本知识 网考小组.
计算机硬件设备图片 go 珠海市第四中学 信息技术组.
第二章 微型计算机系统 第一节 基本术语和基本概念 第二节 计算机系统的基本构成 第三节 微机系统的硬件组成 第四节 微机系统的软件组成.
第四章 存储系统 4-1 存储系统概论 4-2 RAM(随机读写存储器) 4-3 ROM(只读存储器) 4-4 高速缓冲存储器(Cache)
高等医药院校药学类第三轮规划教材——大学计算机基础
第3讲 教学内容 1.3~ 微型计算机系统——硬件部分 计算机的产生发展 计算机系统组成(硬件结构) 计算机工作原理
Chap4 電腦硬體基本單元 高中資訊科技概論 松崗圖書公司.
信息技术基础 Windows 7 + Office 2007.
組裝電腦DIY 前言:提供基礎的電腦零件組裝教學,對於個人電 腦零件有基本的認識、並有組裝零件使電腦能運 行的能力、能親手 升級自己想要的零件、及基 本的簡易判斷無法開機的原因;最後並提供實做,親手DIY將電腦組裝起來並安裝作業系統。 對象:對電腦組裝沒概念或一知半解者;想要能自己解決電腦無法開機,或是能自己升級想要的專屬電腦配備;可以當家庭的電腦醫生不想電腦一碰到問題就叫修花錢者;自己是電腦軟體方面的工作者,想要增加自己的競爭實力.
计算机应用基础 计算机基础知识.
第三章 存储系统 现代计算机系统都以存储器为中心 在计算机运行过程中,存储器是各 种信息存储和交换的中心。
第二章 微型计算机系统 2.1基本术语和基本概念 硬件与软件
IC 燒錄 / Flash 測試 Cost Effective Solution.
最新計算機概論 第3章 計算機組織.
第二章 计算机硬件基础 --微型计算机硬件的组成.
第2章 主机 李渊林 本章要点   CPU 主板 2.3   内存 2.4 机箱和电源.
复习回顾 2.2 计算机硬件系统 2.1 计算机发展概述 1、芯片组的作用是什么? 1、计算机分为几代?主要元器件是什么?
● 计算机组成与维护 外存储器 第5章 本章要点 硬盘、光驱、移动硬盘的组成 硬盘、光驱的性能指标 外存储器的使用.
一年16班 黃佳弘 硬 碟 機 Hard Disk Driver.
第五章 设备管理 5.1 I/O系统 5.2 I/O控制方式 5.3 缓冲管理 5.4 设备分配 5.5 设备处理 5.6 磁盘存储器管理.
第四章 存储体系.
计算机与信息技术应用基础 徐东雨 计算机中心
第一章 導論.
2.4 微型计算机硬件系统 主机系统 1. 微型计算机的诞生
《计算机操作员》精品 课件 淮南市潘集职教中心
第一节 存储器的构成 第二节 存储系统的构成 第三节 Cache 第四节 虚拟存储器
版权所有,引用请注明出处 第四章、存储系统-2 原著 谭志虎 主讲(改编) 蒋文斌.
模块1 计算机基本操作技术 项目1.1 认识计算机.
單晶片原理與應用 魏兆煌 整理 南台科技大學 電機系 Sep
Hardware Chen Ching-Jung
電腦硬體介紹暨 個人電腦採購指引 2018/9/18.
3-1 中央處理器 3-2 主記憶體 3-3 執行程式 3-4 匯流排及介面 3-5 輸出入周邊設備 3-6 儲存裝置
第四章 BootLoader开发 附-s3c2410/s3c2440处理器介绍
Chapter 5 電腦元件 目標---- 研讀完本章後,你應該可以: 閱讀有關電腦的廣告以及了解它的專業用語(行話)。
主讲教师:唐大仕 第5讲 计算机硬件 主讲教师:唐大仕
第 4 章 記憶單元.
3-1 中央處理器 3-2 主記憶體 3-3 執行程式 3-4 匯流排及介面 3-5 輸出入周邊設備 3-6 儲存裝置
電腦硬體基本介紹 國立高雄大學資訊工程學系 林士倫 2010/10/21.
3-1 中央處理器 3-2 主記憶體 3-3 執行程式 3-4 匯流排及介面 3-5 輸出入周邊設備 3-6 儲存裝置
第5章 中央處理單元與主記憶體 5-1 中央處理單元-CPU 5-2 主記憶體.
数字系统设计 I Digital System Design I
ARM存储器结构 ARM架构的处理器的存储器寻址空间有4G字节 ,存储空间可以分为 :
不断变迁的闪存行业形势 Memory has changed, especially serial - from a low cost, low pin count, slow memory to an advanced, high performance memory solution to save.
第五章 存储系统 半导体存储器概述 系统内存扩充 高速缓冲存储器 虚拟存储器 PC系列机中的主存储器 习题与思考 上一章 目 录 帮助
5 Computer Organization (計算機組織).
商用運輸系統智慧化整體研究發展計畫 -計程車內安全管理系統之研發與示範(I)
Block diagram BB —逻辑 —音频 —电源管理 HW interface. Block diagram BB —逻辑 —音频 —电源管理 HW interface.
第四章 數位相機相關名詞 數位相機介紹.
2018/11/29 The Right silicon for your next BIG idea K3智能手机参考设计介绍.
Arduino.
Proware Technology Corp.
模块五: 数控系统参数的备份与恢复 本章学习内容.
蘋果掀起可攜式CE風潮 帶動IC製造產業技術加速前進
電腦的硬體架構.
第5章 半导体存储器 存储器基本概念 随机存取存储器(RAM) 只读存储器(ROM) 存储器连接与扩充应用 微机系统的内存结构.
電路基礎知識 Willess 2009/3/5.
資料處理 第一部份:電腦入門概論 第二章 電腦的硬體
第2章 计算机基本硬件介绍及选购 2.1 主板 2.2 中央处理器CPU 2.3 内存.
Linux Debugging ls,ps,top,etc. printk() /proc i386提供的调试机制(断点,信号,单步执行)
8051單晶片 蘇恆生 老師.
计算机系统结构(2012年春) ----存储层次: Cache基本概念
AM437x-GPMC接口 讲解 广州创龙电子科技有限公司
微机原理与接口技术 ——第三章 80x86微处理器 西安邮电大学 计算机学院 范琳.
第10章 存储器接口 罗文坚 中国科大 计算机学院
第六章 記憶體.
數位相機(DC)淺說 初級資訊種子學校成果分享.
第三章 计算机体系结构.
Presentation transcript:

C H A P T E R 10 存储器层次

概述 存储体系的形式 (a)两级存储器层次结构 (b)三级存储器层次结构

NandFlash、DOC、CF、SD、MMC等 概述 嵌入式系统的存储结构 嵌入式 微处理器 主存: Nor Flash、SRAM、 DRAM等 Cache 外存: NandFlash、DOC、CF、SD、MMC等 片内RAM和ROM

10.1 存储器容量及速度

10.2 片上存储器 片上存储器的优点: 片上RAM? Cache?

如何解决这之间的矛盾? 10.3 Cache 一直以来,CPU和主存储器的速度总是有差距 CPU的发展一直以速度为主,以提高速度为核心 主存的发展一直以容量为主,以提高容量为核心 如何解决这之间的矛盾?

这不是一个技术问题,而是一个经济问题。从技术上说,能制造出多高速度的CPU,就能制造出同样速度的存储器,只不过是我们是否愿意付出如此高的价格。 有没有更好的办法?能否用廉价的高容量存储器实现相对的高速度呢?

程序的局部性原理 访问概率 地址空间 程序在一定的时间段内通常只访问较小的地址空间 两种局部性: 时间局部性 空间局部性

使用高速缓冲存储器Cache来提高CPU对存储器的平均访问速度。 时间局部性:最近被访问的信息很可能还要被访问。 层次存储器系统 使用高速缓冲存储器Cache来提高CPU对存储器的平均访问速度。 时间局部性:最近被访问的信息很可能还要被访问。 将最近被访问的信息项装入到Cache中。 空间局部性:最近被访问的信息临近的信息也可能被访问。 将最近被访问的信息项临近的信息一起装入到Cache中。

高速缓存Cache 高速缓冲存储器中存放的是当前使用得最多的程序代码和数据,即主存中部分内容的副本。 可分为数据Cache、指令Cache或混合Cache。 不同的处理器其Cache的大小不一样。 一般32位的嵌入式微处理器都内置Cache。

A unified instruction and data cache

Separate data and instruction caches

Cache性能的度量 Cache命中:CPU每次读取主存时,Cache控制器都要检查CPU送出的地址,判断CPU要读取的数据是否在Cache中,如果在就称为命中。 Cache未命中:读取的数据不在Cache中,则对主存储器进行操作,并将有关内容置入Cache。

Cache组织 Cache结构框图 置换控制器 地址 索引 机构 高速缓冲 存储器 段(页) 高位地址 低位地址 主 CPU 存 地址总线 数据总线 Cache结构框图

读过程为例 CACHE的基本运行原理 数据总线 地址总线 比较选一行 MEMORY 译码选一单元 CPU CACHE ADDR DATA CACHE CONTROL MEMORY 译码选一单元

要解决的主要问题 1. 地址之间的映射关系: 如何从主存地址得到Cache地址? 2. Cache中的内容是否已经是主存对应地址的内容?

命中(Hit):在较高层次中发现要访问的内容 几个参数 块(Line):数据交换的最小单位 命中(Hit):在较高层次中发现要访问的内容 命中率(Hit Rate):命中次数/访问次数 命中时间:访问在较高层次中数据的时间 失效(Miss):需要在较低层次中访问块 失效率(Miss Rate):1-命中率 失效损失(Miss Penalty):替换较高层次数据块的时间+将该块交付给处理器的时间 命中时间<<失效损失

参数典型数值 块大小:4~128Byte 命中时间:1~4周期 失效损失: 命中率:80%~99% Cache容量:1KB~256KB 访问时间:6~10个周期 传输时间:2~22个周期 命中率:80%~99% Cache容量:1KB~256KB

主存储器 数据 比较 CACHE 地址 译码 C P U 全相联方式 有效位 标志 主存储器 数据 数据 比较 CACHE 地址 译码 主存地址 C P U 块号 块内地址

全相联方式的地址映射 特点 1. 主存的字块可以和Cache的任何字块对应,利用率高,方式灵活。 2. 标志位较长,比较电路的成本太高。如果主存空间有2m块,则标志位要有m位。同时,如果Cache有n块,则需要有n个比较电路。 使用成本太高

CACHE 主存储器 数据 比较 译码 地址 译码 C P U 直接映射方式 有效位 CACHE 标志 主存储器 数据 数据 比较 译码 块 内 地 址 块 号 地址 译码 主存地址 C P U 块号 块内地址

直接映射方式的地址映射 特点 1. 主存的字块只可以和固定的Cache字块对应,方式直接,利用率低。 2. 标志位较短,比较电路的成本低。如果主存空间有2m块,Cache中字块有2c块,则标志位只要有m-c位。且仅需要比较一次。 利用率低,命中率低,效率较低

两路组相联方式 有效位 标志 主存储器 数据 比较 译码 CACHE 数据 地址 比较 译码 译码 主存地址 C P U 块号 块内地址

两路组相联方式的地址映射 特点 1. 前两种方式的折衷方案。组间为全相连,组内为直接映射。 2. 集中了两个方式的优点。成本也不太高。 是常用的方式

三种映射方式比较 直接映射 主存中的一块只能映射到Cache中唯一的一个位置 定位时,不需要判断,只需替换 全相连映射 N路组相连映射 主存中的一块可以选择映射到Cache中N个位置 全相连映射和N路组相连映射的失效处理 从主存中取出新块 为了腾出Cache空间,需要替换出一个Cache块 不唯一,则需要判断应替出哪块

如何提高Cache的性能? 1. 提高命中率 2. 缩短缺失后的处理时间 3. 提高访问cache的速度

Cache缺失的原因 必然缺失 (开机或进程切换):首次访问数据块 世事总是有缺憾 注意:如果我们运行几百万条指令,有点必然缺失又何妨? 冲突缺失 多个 memory块映射到同一 cache块 解决办法 1:增大 cache 容量 解决办法 2:增加相连组数 容量冲突 Cache无法装入程序需要访问的所有块 方案:增大 cache 容量 无效缺失:其它进程(如I/O)修改了主存

影响 CACHE 命中率的因素 从 CACHE 本身诸因素看,可能: 1. CACHE 的容量,大一些好 信息的单位量(Cache Line Size)适中 3. CACHE 不同的组织方式,多路组相联更好 4. CACHE 的多级组织可提高命中率 5. CACHE 装满后的换字算法

Cache命中率 Hit Rate Cache Size in KB

块大小和缺失率的关系

块大小的权衡 一般来说,数据块较大可以更好地利用空间局部性,但是: 数据块大意味着缺失损失的增大: 需要花费更长的时间来装入数据块 若块大小相对Cache总容量来说太大的话,命中率将降低 Cache块数太少 一般来说,平均访问时间 = 命中时间 x 命中率 + 失效损失 x 缺失率 平均访 问时间 缺失损失 缺失率 利用空间局部性 增加了缺失损失 和缺失率 较少的数据块: 弥补时间局部性 块大小 块大小 块大小

Cache的替换算法 1. 先进先出算法(FIFO) 将最早调入Cache的字块替换出去。容易实现,开销小。 2. 最近最少使用算法(LRU) 需要计算字块的使用次数,开销大,但平均命中率比FIFO要高。 3. 随机替换(RAND)

多级Cache 采用两级或更多级cache来提高命中率 将Cache分解为指令Cache和数据Cache

CACHE 接入系统的体系结构 总线 Bus Master 2 MEMORY CACHE Bus Master 1 CPU 1. 侧接法:像输入输出设备似的连接到 总线上,优点是结构简单,成本低, 缺点是不利于降低总线占用率。 MEMORY CACHE 总线 Bus Master 1 CPU Bus Master 2

CACHE 接入系统的体系结构 总线 Bus Master 2 MEMORY CACHE CPU 2. 隔断法:把原来的总线打断为两段, 2. 隔断法:把原来的总线打断为两段, 使 CACHE 处在两段之间,优点是有利于提高总线利用率,支持总线并发操作,缺点是结构复杂,成本较高。 MEMORY CACHE 总线 Bus Master 1 CPU Bus Master 2

写策略 若 CPU 改写了 CACHE 一单元内容后且尚未改变主存相应单元内容,则出现数据不一致性。有两种解决办法: 1.接下来直接改写主存单元内容(Write Through) 简便易行, 但可能带来系统运行效率不高的问题。需要写入缓冲存储器。 2.拖后改写主存单元内容(Write Back) 一直拖到有另外的设备要读该内容过时的主存单元时,则首先停止这一读操作,接下来改写主存内容,之后再起动已停下来的读操作。 矛盾是如何检查是否是读无效内存单元的操作,这是通过 监视地址总线完成的,记下无效单元地址用于比较。 控制复杂些,但可以提供更高的系统运行效率。

Cache 局部性原理: 任何时候,程序需要访问的只是相对较小的一些地址空间。 时间局部性 空间局部性 三类主要的Cache缺失原因: 无法避免的缺失:如:第一次装入 块冲突:增大Cache容量、改进组织方式 避免不断的块冲突 容量冲突:增大Cache容量 Cache设计 总容量、块大小、组织方式 替换算法 写策略(命中时):写直达、拖后写 写策略(不命中时):是否装入到Cache?

Cache设计 有关方案 cache 容量 块大小 组织方式 替换算法 写策略 方案优化 根据用途选择 海量数据处理 指令数据平衡 (I-cache, D-cache) 根据成本优化 简单化常常就是优化 Cache 容量 关联度 块大小 Bad Good Factor A Factor B Less More

10.5 存储器管理 该节内容放到体系结构对操作系统支持一章

外存 外存是处理器不能直接访问的存储器,用来存放用户的各种信息,容量大。 在嵌入式系统中常用的外存有: 10.6 嵌入式系统中的外存 NandFlash DOC(Disk On Chip) CF(Compact Flash) SD(Secure Digital) MMC(Multi MediaCard)等

电子盘采用半导体芯片来存贮数据,具有体积小、功耗低和极强的抗震性等特点。 在嵌入式系统中普遍采用各种电子盘作为外存。 常用的电子盘有:NandFlash、MMC、SD、Memeory Stick、CF、SM、DOC等。

电子盘

电子盘 Flash card market for Mobile phone has 70% CAGR, and 50% market share in ’08.

NandFlash是Flash Memory的一种。 Flash Memory的中文称为快闪存储器或快速擦写存储器。 Flash Memory由Toshiba于1980年申请专利,并在1984年的国际半导体学术会议上首先发表。 目前在Flash Memory技术上主要发展了两种非易失性内存 一种叫NOR(逻辑或),是Intel 于1988年发明的 另一种叫NAND(逻辑与)是Toshiba于1999年创造的。

NandFlash可独立成为外存,也可组成其他各种类型的电子盘如USB盘、CF、SD和MMC存储卡等。 NOR Flash具有随机存储速度快、电压低、功耗低、稳定性高等特点,主要用于主存。

Samsung Nandflash

NOR NAND 写入/擦除一个块的操作时间 1~5s 2~4ms 读性能 1200~1500KB 600~800KB 写性能   NOR NAND 写入/擦除一个块的操作时间 1~5s 2~4ms 读性能 1200~1500KB 600~800KB 写性能 <80KB 200~400KB 接口/总线 SRAM接口/独立的地址数据总线 8位地址/数据/控制总线,I/O接口复杂 读取模式 随机读取 串行地存取数据 成本 较高 较低,单元尺寸约为NOR的一半,生产过程简单,同样大小的芯片可以做更大的容量 容量及应用场合 1~64MB,主要用于存储代码 8MB~4GB,主要用于存储数据 擦写次数(耐用性) 约10万次 约100万次 位交换(bit位反转) 少 较多,关键性数据需要错误探测/错误更正(EDC/ECC)算法 坏块处理 无,因为坏块故障率少 随机分布,无法修正

NandFlash:128M X 8 bit

NandFlash:128M X 8 bit

NandFlash:128M X 8 bit

MultiMediaCard Association MMC MultiMediaCard Association 210+ members representing the leading Manufacturers of host systems, cards, components, connectors, etc. Membership: Executive (voting rights) & General Committees: Technical, Marketing, Compliance Open standard, collects no royalties Compliance & certification program Focus on mobile phones and digital imaging markets worldwide

MMC: Roadmap of standard

MMC: Roadmap of capacity

MMC的特点 High clock frequency: 26MHz and 52MHz Flexible bus width: 13 pins to support 1 to 8 data lines (host-selectable x1, x4 and x8-bit bus) Data transfer rate: up to 52 MBytes/sec This is the highest bus transfer rate of all flash memory card standards available Today Backward compatible to legacy hosts

MMC的特点 Fully compatible with MMCplus™ The first small form factor memory card standards to offer dual-voltage operation at both 3V and 1.8V Compatible with next generation mobile phone system specifications and meets the toughest space Saving and low power consumption requirements of mobile phones and small consumer electronics devices

SD(Secure Digital)卡由松下电器、东芝和SanDisk联合推出,1999年8月首次发布。 2000年2月1日成立了SD协会(SDA),成员公司超过90个,其中包括Hewlett-Packard,IBM,Microsoft,Motorola,NEC、Samsung Electronics,Toyota Motor等巨头。 SDA是开放式的,缴纳1500美元就可以成为一般会员,缴纳4000美元可以成为执行会员。SD存贮卡的详细规范并没有公开,只有SDA会员或签定了保密协议才能获得。 SD卡需付版税 15×11mm 32×24mm

1997年7月Sony宣布开发Memory Stick Memory Stick被很多人形象地称为口香糖存贮卡,其尺寸为50mm×21.5mm×2.8mm,重4克 Memory Stick也包括了控制器在内,采用10针接口,数据总线为串行,最高频率可达20MHz,电压为2.7伏到3.6伏,电流平均为45mA

Compact Flash Compact Flash的诞生比较早,由最大的Flash Memory卡厂商之一美国SanDisk于1994年首次推出。 大小仅为43mm x 36mm x 3.3mm,体积只有PCMCIA卡的1/4,看起来就像是PCMCIA卡的缩小版。 CompactFlash提供了完整的PCMCIA-ATA功能而且通过ATA/ATAPI-4兼容TrueIDE。 和68针接口的PCMCIA卡不同,同样遵从ATA协议的CompactFlash的接口只有50针。

SmartMedia  SmartMedia是由东芝公司Toshiba America Electronic Components(TAEC)在1995年11月发布的Flash Memory存贮卡,三星公司在1996年购买了生产和销售许可,这两家公司成为主要的SmartMedia厂商。

SmartMedia 最开始时SmartMedia被称为SSFDC,即Solid State Floppy Disk Card,1996年6月改名为SmartMedia,并成为东芝的注册商标。 SmartMedia采用了NAND型Flash Memory,因此体积做得很小:45mm x 37mm x 0.76mm,非常的薄,仅重1.8克。接口方面,SmartMedia采用了22针的接口,我们在卡上看到的是遍平的金手指。 SmartMedia为了节省成本,存贮卡上只有Flash Memory模块和接口,并没有包括控制芯片,所以使用SmartMedia的设备必须自己装置控制机构。

它采用了TureFFS硬盘仿真技术对Flash进行管理,可以把Flash模拟成为硬盘。 DOC Disk On Chip,简称DOC,是采用NandFlash芯片作为基本存贮单元,外加一些控制芯片及软件,通过特殊的软硬件来操作的一种模块化、系列化的电子存贮装置。 它采用了TureFFS硬盘仿真技术对Flash进行管理,可以把Flash模拟成为硬盘。 也正是因为采用了TureFFS技术对数据在Flash中的读写操作进行管理,大大提高了DOC的写操作的次数,远远超过了普通Flash的写寿命,提高了Flash的可靠性。

Comparison of Full Size Cards

Comparison of Small Size Cards

Comparison of Micro Size Cards