当前位置:首页 > 智能硬件 > 智能硬件
[导读]K9K2G08U0M是三星公司的大容量闪存芯片,它的单片容量高达256MB。文中介绍了K9K2G08U0M的特性和使用方法,重点说明了与TI的TMS320F2812的硬件接口和软件编程。

摘要: K9K2G08U0M是三星公司的大容量闪存芯片,它的单片容量高达256MB。文中介绍了K9K2G08U0M的特性和使用方法,重点说明了与TI的TMS320F2812的硬件接口和软件编程。
关键词:接口; 闪存; TMS320F2812 

在有些智能仪器中,需要实时存储大量的采样数据,以提供历史数据查询。这需要采用大容量、低功耗、可以快速重复擦写的非易失性存储器,因此选择闪存作为数据存储介质, 即使系统掉电,而所采集到的数据仍能长时间的保持,不丢失。

在本文的设计中采用的是TI的TMS320F2812和三星的闪存K9K2G08U0M。K9K2G080M是三星公司的大容量闪存芯片,它的单片容量高达256MB,属于NAND FLASH结构。传统存储器结构及引脚信号定义方式难以解决存储容量增加的矛盾,即存储容量的增加使得系统的连线复杂并且可靠性降低。NAND FLASH存储器将数据线与地址线复用为8 条I/O线, 另外还分别提供了命令控制信号线, 命令、地址和数据信息均通过8 条I/O 线传输,因此, NAND FLASH存储器不会因为存储容量的增加而增加引脚数目,从而极大方便了系统设计和产品升级,升级到更大容量而无需更改外部连接。因此,本文讨论的NAND FLASH存储器在单片机应用系统中的硬件连接和软件编程方法具有较大的参考价值。

1 K9K2G08U0M 简介

电源电压为2.7 -3.6V,读速度为80ns;

具有指令/地址/ 数据复用的I/ O 口;

NAND FLASH 的存储结构以页面为单位,能使芯片的读取速度更快。由2048个大小相同的存储块组成,每个块由64页组成,每页2K字节和64个空闲字节;

1.2 K9K2G08U0M的引脚说明

图1 为引脚功能图,各引脚的功能如下:

图1 K9K2G08U0M引脚描述

I/ O0~I/ O7 : 三态,输入命令、地址和数据以及读操作时输出数据。当芯片没有被选中或不能输出时, I/ O 口处于高阻态。

CLE: 命令锁存使能。为高电平时,命令通过I/O 口线在WE 信号的上升沿被锁入命令寄存器。

ALE: 地址锁存端,在WE 上升沿且ALE 为高电平时,地址锁存。

CE: 片选端, 用于控制芯片的选择。当芯片忙时, CE 为高电平而被忽略, 此时芯片不能回到备用状态。

RE: 读使能端。在RE的下降沿,输出数据有效, 并且它还可以对内部数据地址进行累加。

WE: 写使能端,通过该端口可以在WE 脉冲的上升沿将指令、地址和数据进行锁存。

WP: 写保护端,在电源电压变化期间,在WP 为低电平时,可产生写/ 擦除保护。

R/ B : 就绪/ 忙输出, R/ B 的输出能够显示芯片的状态。R/ B 处于低电平时,表示有编程、擦除或随机读操作正在进行。操作完成后, R/ B 会自动返回高电平。

2 DSP与FLASH的硬件接口

TI的TMS320F2812采用统一寻址方式,扩展的外部存储器K9K2G08U0M既可以作为程序存储器,也可以作为数据存储器。具体接口如图2所示。

                          图2  DSP与闪存接口

TMS320F2812的外部存储器接口包括:19位地址线,16位数据线,3个片选控制线及读写控制线。这3个片选线映射到5个存储区域,Zone0,Zone1,Zone2,Zone6和Zone7,其中Zone2的片选线是CS2,存储区域是:0x080000-0x0FFFFF,512K*16位。当对存储区域Zone2访问时,Zone2的片选线CS2低有效。

K9K2G08U0M 没有地址线,命令、地址和数据信息均是通过闪存的I/O0-I/O7传输,另外,虽然K9K2G08U0M的容量达到了256MB,远远大于了TMS320F2812的存储区域Zone2的容量1MB,但由于访问flash的地址是通过I/ O 口输入,不需要通过地址线寻址,因此无需考虑采用页面技术解决逻辑存储空间与物理空间的映射问题,大大简化了DSP与FLASH的硬件接口。

由于K9K2G08U0M本身具有功能管脚较少的优点,因此跟DSP的连接也相对简单。DSP和FLASH的工作电压均是3.3V,因此两者的引脚可以直接连接,不需要进行电平转换。K9K2G08U0M 的ALE、CLE分别由DSP 的A1 和A0 控制。DSP的低8位数据线直接与闪存的I/O0-I/O7 相连,实现命令、地址和数据的传输; DSP的通用I/O口IOA2 接R/B,监测存储器的工作状态,当R/ B 处于低电平时,表示有编程、擦除或随机读操作正在进行;操作完成后, R/ B 会自动返回高电平。DSP的W E 、R D 分别接FLASH的W E 、R E , 控制读、写操作。CS2接闪存的片选线CE。

3 FLASH操作的软件设计

本系统的DSP 编程采用了C 语言,首先定义了三个变量FLASH_D,FLASH_A,FLASH_C作为数据,地址和命令寄存器用来对FLASH读写数据,地址和命令。

#define FLASH_D 0x08fff0   #define FLASH_A 0x08fff2    #define FLASH_C 0x08fff1

因为K9K2G08U0M 的ALE、CLE分别由DSP 的A1 和A0 控制,所以当向命令寄存器FLASH_C写数据的时候,访问的是DSP的存储区域Zone2, 此时Zone2的片选线低有效,FLASH被选中,地址线A0变高,而引脚CLE高电平有效,此时写到FLASH_C的数据(FLASH命令)通过I/O写到闪存。同理,向FLASH_A和FLASH_D写可分别实现向FLASH写地址和数据。这样设计时,通过简单的写三个存储器即可分别实现命令,地址和数据锁存,符合操作时序。

对FLASH的操作主要包括:按页读操作,页编程,缓存编程,块擦除,读状态,复位等。FLASH芯片的读写有其特点,读写操作都要以扇区为单位进行,擦除操作是以块为单位,由于对FLASH写数据时,位数据只能由1变为0,因而对FLASH进行写操作前必须把写单元所在块擦除;因此写操作时,所要擦除块的数据必须事先保存,然后再对该块进行擦除,并把数据写到指定单元,最后把其余部分恢复过来。因此FLASH芯片的写操作比较复杂,需要开辟一定的缓冲区对要擦除的块进行保存。                        

图 4 页编程流程

下面仅以页编程为例简要介绍对FLASH的操作过程,页编程时序如图3,图4为其流程框图,函数为void page _ program();

页编程时,首先写页编程命令80H,可将数据写入到FLASH缓冲区, 然后顺序输入待编程存储器的地址共5字节,2字节Column Address 和3字节Row Address,以及待写入的数据。页编程命令10H用于实现数据从缓冲区到FLASH的编程操作。待R/ B 变为高后,系统将读状态寄存器,以判断写操作是否成功。写命令时,CLE 要有效;写入地址时,ALE 要有效;写入数据时,CLE、ALE都必须无效。I/ O0~I/ O7 上的命令、地址、数据通常是在WE 的上升沿锁存的。I/ O0等于0表示页编程成功,否则页编程错误。

void page_program_flash()

{ unsigned char *Flash_E;

      unsigned char temp;

      unsigned int i;

      Flash_E=FLASH_C;  

      *Flash_E=0x80;

      Flash_E=FLASH_A;

      *Flash_E=coladdr1;

      *Flash_E=coladdr2;

      *Flash_E=rowaddr1;

      *Flash_E=rowaddr2;

      *Flash_E=rowaddr3;

      Flash_E=FLASH_D;

      for(i=0;i<2048;i++)

      {  *Flash_E=i; }

         Flash_E=FLASH_C;

         *Flash_E=0x10;

         flash_delay();

         do{ Flash_E=FLASH_C;

             *Flash_E=0x70;

             Flash_E=FLASH_D;

             temp=*Flash_E;

             temp=temp&0x41;

}while(temp!=0x40);

       }

}

4 结束语

本文详细介绍了闪存K9K2G08U0M与DSP 的硬件接口技术和软件编程。由于NAND FLASH具有的优点使得硬件接口设计和软件编程比较简单,升级也比较容易。NAND FLASH 具有非易失性、大容量、低成本等优点,在数码相机,MP3等数码电子产品和智能仪器得到越来越广泛的应用。本文作者创新点:直接用DSP地址线A0、A1分别控制FLASH的命令锁存CLE和地址锁存ALE,并在此基础上定义了数据,地址和命令寄存器用来对FLASH读写数据,地址和命令,这相当于间接对CLE和ALE进行操作,简化了软件编程设计。

参考文献

[1] 苏奎峰. TMS320F2812原理与开发. 北京:电子工业出版社,2005.4

[2] SUMSUNG ELETRONICS. K9K2G08U0M / Flash Memory.

[3] 谷葆春 K9F56XXXOB系列FlashMemory的存储组织与操作实现.微计算机信息.2004年4期 115—117页

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

成都2022年10月19日 /美通社/ -- 近期,平安养老险积极筹备个人养老金的产品设计和系统开发工作,发展多样化的养老金融产品,推动商业养老保险、个人养老金、专属商业养老保险等产品供给。 搭养老政策东风 ...

关键字: 温度 BSP 东风 大众

广东佛山2022年10月19日 /美通社/ -- 空间是人居生活的基础单元,承载着生存与活动的最基本功能。而对于理想空间的解构意义却在物理性容器之外,体现出人们对于空间和生活深层关系的思考,同时也塑造着人与空间的新型连接...

关键字: 温度 BSP 智能化 进程

上海2022年10月19日 /美通社/ -- 10月17日晚间,安集科技披露业绩预告。今年前三季度,公司预计实现营业收入7.54亿元至8.33亿元,同比增长60.24%至77.03%;归母净利润预计为1.73亿...

关键字: 电子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市经济和信息化局发布2022年度第一批北京市市级企业技术中心创建名单的通知,诺诚健华正式获得"北京市企业技术中心"认定。 北京市企业技...

关键字: BSP ARMA COM 代码

北京2022年10月18日 /美通社/ -- 10月14日,国际数据公司(IDC)发布《2022Q2中国软件定义存储及超融合市场研究报告》,报告显示:2022年上半年浪潮超融合销售额同比增长59.4%,近5倍于...

关键字: IDC BSP 数字化 数据中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都银行集团成立60周年的纪念日。趁着首都银行集团成立60周年与首都银行(中国)在华深耕经营12年的“大日子”,围绕作为外资金融机构对在华战略的构想和业...

关键字: 数字化 BSP 供应链 控制

东京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式会社(NIPPON EXPRESS HOLDINGS, INC.)旗下集团公司上海通运国际物流有限公司(Nipp...

关键字: 温控 精密仪器 半导体制造 BSP

广州2022年10月18日 /美通社/ -- 10月15日,第 132 届中国进出口商品交易会("广交会")于"云端"开幕。本届广交会上高新技术企业云集,展出的智能产品超过140,...

关键字: 中国智造 BSP 手机 CAN

要问机器人公司哪家强,波士顿动力绝对是其中的佼佼者。近来年该公司在机器人研发方面获得的一些成果令人印象深刻,比如其开发的机器人会后空翻,自主爬楼梯等。这不,波士顿动力又发布了其机器人组团跳男团舞的新视频,表演的机器人包括...

关键字: 机器人 BSP 工业机器人 现代汽车

南京2022年10月17日 /美通社/ -- 日前《2022第三届中国高端家电品牌G50峰会》于浙江宁波落幕,来自两百余名行业大咖、专家学者共同探讨了在形势依然严峻的当下,如何以科技创新、高端化转型等手段,帮助...

关键字: LINK AI BSP 智能家电

智能硬件

22018 篇文章

关注

发布文章

编辑精选

技术子站

关闭