资源预览内容
第1页 / 共86页
第2页 / 共86页
第3页 / 共86页
第4页 / 共86页
第5页 / 共86页
第6页 / 共86页
第7页 / 共86页
第8页 / 共86页
第9页 / 共86页
第10页 / 共86页
亲,该文档总共86页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
嵌入式系统原理与开发,第16讲 南京大学计算机系 俞建新主讲,2008年07页13日,南京大学计算机系,2,第8章 嵌入式存储器和接口技术,本章主要介绍以下内容: 嵌入式系统常用存储器 嵌入式系统常用总线 嵌入式系统常用接口 嵌入式系统常用外部设备,2008年07页13日,南京大学计算机系,3,8.1 嵌入式系统常用存储器,嵌入式系统常用的存储器主要有这几类: ROM 小规模容量、Bootloader载体 容量16KB到32KB SRAM Embedded SRAM,简称为嵌入式SRAM 容量达几百K字节、用作片上Cache、片上SRAM SDRAM Synchronous Dynamic Random Access Memory 高密度同步动态随机访问存储器 容量在8MB至512MB范围内 Flash存储器 大容量中低密度、最大容量达到32GB,2008年07页13日,南京大学计算机系,4,8.1.1 闪速存储器,闪速存储器是一种半导体集成电路存储器 在EEPROM的基础上进化而来 英文原文是Flash Memory,简称闪存 主要物理特点是非易失 Non-Volatile,也叫做不挥发,2008年07页13日,南京大学计算机系,5,与传统半导体存储器的比较,2008年07页13日,南京大学计算机系,6,两种类型的Flash,Nor Flash,称为或非型闪存,或者NOR闪存 Nand Flash,称为与非型闪存,或者NAND闪存 Nor Flash是在EEPROM基础上发明的。 Intel公司于1983年首次提出,在1988年商品化。 Nand Flash是1989年东芝公司和三星公司发明的。 十几年以来,世界主要闪存生产商分成Nor和Nand两大技术阵营,积极开展研发和生产。 Nor阵营主要有Intel和AMD公司 Nand阵营主要有Toshiba和Samsung公司,2008年07页13日,南京大学计算机系,7,闪存位元工作原理,Intel公司提出的单管叠栅位元结构是基于EPROM隧道氧化层(ETOX,EPROM Tunnel Oxide)的位元结构,该位元结构最为简单实用。 下面以ETOX结构为例介绍Flash存储器记忆位元的结构原理。,2008年07页13日,南京大学计算机系,8,ETOX位元结构,ETOX单元结构是由两个相互重叠的多晶硅栅组成,浮栅(FG,Floating Gate)用来存储电荷,以电荷记录所存储的数据;控制栅(CG,Control Gate)作为字选择栅极起控制与选择的作用。 通过控制栅字线的电平状态能够检测所存储的是“0”还是“1”。,2008年07页13日,南京大学计算机系,9,Flash存储位元结构图,2008年07页13日,南京大学计算机系,10,Flash位元编程操作1,FG上有电子,成为“0”位元,2008年07页13日,南京大学计算机系,11,Flash位元编程操作2,FG上无电子,成为“1”位元,此时电子汇集在源极,2008年07页13日,南京大学计算机系,12,Nor Flash记忆单元块的结构,Nor Flash存储器的一个存储单元(记忆单元)使用一个晶体管。每个晶体管有一个字线和一个位线与之相连。在这种存储阵列布局下,对某一根位线而言,有一组字线(例如8根)与之相交,在交叉点上有一个晶体管与两线相连。,2008年07页13日,南京大学计算机系,13,Nor Flash记忆单元块读操作图解,2008年07页13日,南京大学计算机系,14,Nor Flash的读操作说明,读数据时,未被选中字线上的晶体管栅极为接地电平,致使晶体管截止,成为逻辑值“1”。 选中字线上的栅极为高电平,并且这个晶体管的漏极会和该位线连通。于是位线上的电平逻辑取决于选中晶体管的逻辑。如果为“1”则晶体管导通,相应读出放大器(RA,Read Amplifier)输出“1”。如果为“0”,RA输出也为“0”。Nor Flash的逻辑功能类似于NOR门(或非门),由此而命名为Nor Flash。,2008年07页13日,南京大学计算机系,15,Nand Flash记忆单元块的结构,核心结构是将8个晶体管的漏极和源极头尾相连接成一组,最高端接位线,最低端与高电压的源极Vs相连接。存储阵列的行线是字线,平时保持适合的电平状态,使得这些晶体管通常是处于导通状态。读出数据时,被选中的字线加高电平,未选中字线上的存储单元不论存储的值是逻辑0还是逻辑1都是导通的。这样,被选中的存储单元如果存“1”则导通,输出“1”,位线为高电平;如果存“0”则截止,位线为低电平,输出“0”。这个逻辑功能类似于NAND门(与非门)。,2008年07页13日,南京大学计算机系,16,Nand Flash记忆单元块读操作,2008年07页13日,南京大学计算机系,17,Nor Flash存储阵列分析,以8行 x 8列的Nor Flash存储单元阵列为例,说明下面三种操作的工作机理。 擦除 编程(写操作) 读出 参看教材243页的Nor Flash存储矩阵分析,2008年07页13日,南京大学计算机系,18,Nor Flash存储阵列的擦除操作,2008年07页13日,南京大学计算机系,19,Nor Flash存储阵列的编程操作,2008年07页13日,南京大学计算机系,20,Nor Flash存储阵列的读出操作,2008年07页13日,南京大学计算机系,21,NAND Flash存储阵列分析,以8行 X 8列的Nand Flash存储单元阵列为例,说明下面三种操作的工作机理。 擦除 编程(写操作) 读出 参看教材244页的Nand Flash存储矩阵分析,2008年07页13日,南京大学计算机系,22,Nand Flash存储阵列的擦除操作,2008年07页13日,南京大学计算机系,23,Nand Flash存储阵列的编程操作,2008年07页13日,南京大学计算机系,24,Nand Flash存储阵列的读出操作,2008年07页13日,南京大学计算机系,25,典型的Nand Flash闪存芯片的存储单元立体阵列结构,下面给出一个典型的Nand Flash闪存芯片的存储单元立体阵列结构示意图。 每1个存储页呈平面形状,含512个字节存储空间。此外在一个页面上还有16个字节的备用字节区,用阴影线示出。备用字节区用于存放纠错码(ECC:Error Correcting Code)校验和其他信息,有时也被称为Out Of Bank区域,即OOB区。 每32个页构成一个数据块,数据块的容量是16KB。该闪存器件一共集成有2048个块,所以总容量达到32MB,或者256Mb。,2008年07页13日,南京大学计算机系,26,Nand Flash记忆单元立体阵列,2008年07页13日,南京大学计算机系,27,典型Nand Flash读操作时序状态,读操作是通过4个地址周期将命令字00H、列地址、行地址1和行地址2写入到指令寄存器开始的,2008年07页13日,南京大学计算机系,28,Nor Flash和Nand Flash的共同特点,向芯片中写数据必须先将芯片中对应的内容清空,然后再写入。 闪存擦写的次数都是有限的,当闪存的使用寿命快到时,经常会出现写操作失败。 为了延长使用寿命,不要对某个特定区域反复地进行写操作。 闪存的读写操作不仅是一个物理操作,还需要算法支持。一般在驱动程序的内存技术设备(MTD,Memory Technology Drivers)模块中或者在闪存转换层(FTL,Flash Translation Layer)内实现,具体算法同芯片生产商以及芯片信号有关。,2008年07页13日,南京大学计算机系,29,闪存驱动,Nor Flash存储器可以进行字节读写,所以在Nor Flash存储器上运行代码基本上不需要软件支持。 Nand Flash存储器由于其物理特性独特,数据读写比较复杂,对其存储的数据管理方法与其他存储设备的管理方法不同,需要软件支持。 Nand Flash的存储单位有字节、页和块。一页大小为512字节,依次分成两个256字节主数据区(512字节,正好等于磁盘一个扇区大小),最后是16字节空闲区(Spare Data)。若干页组成一块,通常为32页。一个存储设备又由若干块组成。,2008年07页13日,南京大学计算机系,30,NOR闪存HY29LV160与S3C44B0X处理器的接线,CPU对Nor Flash的接口不需要其他任何软件上的设置。这样,系统加电复位时,从Nor Flash的0x0地址开始执行第1条指令,也就开始执行了Nor Flash里的启动代码。,2008年07页13日,南京大学计算机系,31,NAND闪存K9F2808U0A 功能方框图,2008年07页13日,南京大学计算机系,32,NAND闪存K9F2808U0A的 地址信号线分析,K9F2808U0A总容量是16MB=224Bytes,地址信号一共有24根。 其中A0-A7为列地址,A9-A16为前一半寄存器行地址,A17-A23和外加的低电平“L”为后一半寄存器行地址。A8由00h或01h命令设置为“Low“或者“High“。00H命令定义了起始地址在寄存器的前一半,01H命令定义了起始地址在寄存器的后一半。,2008年07页13日,南京大学计算机系,33,NAND闪存K9F2808U0A与S3C44B0X处理器的连接方法,NAND型闪存K9F2808U0A与与不带NAND控制器的S3C44B0X的连接方法如下图(教材图8-12)所示。,2008年07页13日,南京大学计算机系,34,8.1.2 SDRAM,SDRAM(Synchronous DRAM)是同步动态存储器。从技术角度上讲,同步动态存储器是在现有的标准DRAM中加入同步控制逻辑(一个状态机),利用一个单一的系统时钟同步所有的地址数据和控制信号,做到SDRAM的时钟频率与CPU前端总线时钟频率相同,实现存储器读写速度与CPU的处理速度保持一致。 嵌入式系统通常直接使用一颗SDRAM芯片作为主存储器。,2008年07页13日,南京大学计算机系,35,S3C44B0X的SDRAM配置计算表,总容量/芯片粒数/单元数/芯片位宽/Bank数之间的计算关系,2008年07页13日,南京大学计算机系,36,SDRAM芯片实例,IS42S16400同步动态RAM芯片是美国ISSI公司的产品。总容量为64Mbit,存储组织为1M x 16bits x 4Bank。时钟频率为133MHz或者100MHz。全部信号同步于时钟的上升沿。 单一3.3V电源供电。下面给出了该SDRAM芯片的内部结构图。,2008年07页13日,南京大学计算机系,37,SDRAM芯片 IS42S16400同步内存芯片结构图,2008年07页13日,南京大学计算机系,38,32MB同步动态存储器与S3C44B0X处理器的接线,HY57V561620(L)T 芯片与S3C44B0X的接线图,2008年07页13日,南京大学计算机系,39,8.2 嵌入式系统常用总线,从电信号角度看,嵌入式产品里面内连在PCB上的设备以及外接的设备大都采用总线方式连接。这些总线的控制器以两种方式存在。一种是集成在处理器内部,另外一种是以专用芯片形式出现。 下面我们介绍常用的嵌入式系统总线技术标准。包括:I2C总线、SPI总线、CAN总线、现场总线概论、基金会现场总线(FF)、现场总线104总线。,2008年07页13日,南京大学计算机系,40,8.2.1 I2C总线(IIC总线),I2C总线(InterIntegrated Circuit,IIC也是常用写法)是1980年代初由PHILIPS公司发明的一种双向二进制同步串行总线,它是目前SOC控制外围设备的常用总线。 I2C是一个廉价优质的总线适用于消费电子、通讯电子、工业电子等领域的低速器件。,2008年07页13日,南京大学计算机系,41,I2C总线的技
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号