NANDFLASH存储器K9WBG08U1M在视频记录器中的应用

时间:2022-10-18 09:02:20

NANDFLASH存储器K9WBG08U1M在视频记录器中的应用

摘 要: 为提高视频记录器的实时性和稳定性,并结合数字视频数据量较大的特点,在此设计了一种新型视频记录器。该记录器接口采用基于FPGA+DSP架构的设计方法,设计了K9WBG08U1M存储阵列读写时序,实现了对K9WBG08U1M阵列的实时读写。采用该记录器分别对红外热像仪输出图像和CCD相机采样图像进行连续录播实验,实验结果表明,采用该方法设计的视频记录器,由16片K9WBG08U1M存储器组成的阵列可实现连续两个半小时的视频实时录取和播放。该视频记录器满足图像实时性要求,鲁棒性好。

关键词: NAND FLASH; K9WBG08U1M; 视频记录器; 读写时序

中图分类号: TN964?34 文献标识码: A 文章编号: 1004?373X(2013)18?0097?04

0 引 言

当前各类嵌入式系统开发设计中,存储模块设计是不可或缺的重要方面[1]。随着半导体技术的发展,固态存储器以其优异的性能逐渐成为数据存储系统的首选存储介质[2],其中以闪速存储器(FLASH Memory)发展的最快。FLASH根据芯片内部逻辑架构设计上的差异主要分为NOR FLASH和NAND FLASH两种[3]。NAND FLASH作为一种安全、快速的存储体,因其具有体积小、容量大、成本低、掉电数据不丢失等一系列优点,已逐步取代其他半导体存储元件,成为嵌入式系统中数据存储的主要载体[4]。NAND FLASH以页为单位读写数据,而以块为单位擦除数据[5]。与传统的硬盘相比,NAND FLASH作为一种新兴的半导体存储器件具有存储密度高、可靠性高、体积小、质量轻、功耗小、寿命长、无噪声、抗震动、能适应恶劣的力学和温度环境等优点[6]。主要应用在需要记录、保存大量数据的存储设备中。

本文需要对CCD镜头采集的图像数据进行实时记录与并按图像格式进行播放,因此需要大量的图像数据记录和播放,且要求速度较高,经过比较和实验,K9WBG08U1M是一个比较理想的选择。

1 K9WBG08U1M的特性

K9WBG08U1M的内部存储空间为(4G+128M)×8 b,采用NAND结构,存储空间按“块?页”结构组织,一页为(2K+64)B,一块为64页,一片K9WBG08U1M由两个K9WAG08U0M单元组成,可通过CE1,CE2信号选择,共32 768块。2.7~3.6 V单电源供电,典型页编程周期为200 μs[7],典型块擦除时间为1.5 ms,可进行(2K+64)B的页写操作及(128+4)KB的块擦除操作,在读操作过程中可将字节数据在25 ns内读出。且其功耗低,速度快,可靠性较高。K9WAG08U0M的内部存储结构和地址结构如图1所示[8]。

2 K9WBG08U1M在视频记录器中的应用

2.1 系统构架

本图像记录器存储的图像格式为256×512,刷新频率为50 Hz,每分钟的数据量为393 216 K,每片K9WBG08U1M可存储10 min的图像数据,本系统采用16片K9WBG08U1M作为存储阵列,可连续录制或播放两个半小时的视频图像。图像采集、存储阵列控制、图像按格式播放由DSP和FPGA联合控制。控制程序在DSP内完成,PFGA将操作命令和片选地址进行译码,选通相应的K9WBG08U1M并产生K9WBG08U1M的相应时序。系统示意框图如图2所示。

CCD采样图像后图像数据按8位输入系统,为提高存储速度,每两片K9WBG08U1M组成一个16位存储组,图像数据按16位存储。系统将CCD采集的8位图像数据先在FPGA内拼接为16位数据,通过EDMA导入DSP存入K9WBG08U1M阵列。在播放时,由DSP从K9WBG08U1M存储阵列中读出数据,通过EDMA导入FPGA,在FPGA中再将16位图像数据拆分成8位图像数据按视频格式进行播放。

2.2 K9WBG08U1M的硬件接口设计

K9WBG08U1M有8位地址、数据复用的I/O口,两个片选信号,5个控制信号和两个状态输出信号。接口说明见表1。

2.3 K9WBG08U1M的软件接口设计

K9WBG08U1M的地址结构分为行地址(Row Address)和列地址(Column Address),行地址用来指明具体的块和页,列地址用来指明页内具体的寄存器,即为页内偏移地址。

本文所介绍设计采用DSP+FPGA联合操控,软件操作在DSP内完成,FPGA将对应的指令译码成FLASH的相应操作时序,本设计有编程灵活、更改简单等特点。

对K9WBG08U1M的主要操控有:Block Erase(块擦除)、Page Program(页编程)、Read Operation(读操作)、Read Status(读状态)。下面对这三种常用操作进行介绍。

2.3.1 Block Erase

K9WBG08U1M在进行存储数据之前必须进行擦除,数据只有在擦除后才能写入,擦除操作以块为单位进行的[9]。块擦除包括下面3个步骤:

(1)写入块擦除建立命令60 h;

(2)分三个字节写入块地址;

(3)写入块擦除命令D0h。擦除操作完成后通过检测状态位I/O0判断是否擦除成功。软件流程图3所示。

3 结 语

随着基于NAND技术的FLASH固态存储器的快速发展,其存储密度也越来越大,而体积、功耗和成本却在减小,这使得NAND型FLASH在大容量高速存储设备的研制中得到广泛应用[10]。本文介绍了NAND FLASH的特点,并设计了基于DSP+FPGA架构的控制电路,及其软件接口设计。并编写了用户界面,通过其选择块擦除操作或页编程操作或者读操作,通过串口发送控制命令来引导程序进行相应操作。采用该记录器分别对红外热像仪输出图像和CCD相机采样图像进行连续录播实验,试验表明,本视频录放设备可连续进行两个半小时的视频录制或播放。如需更大容量的存储数据,FLASH阵列可以进一步扩大,并不增加复杂度。

参考文献

[1] 谢伟华,谭永东,徐伟华.NAND FLASH的驱动程序设计[J].单片机与嵌入式系统应用,2009(2):35?38.

[2] 雷磊.NAND型FLASH海量存储系统的设计与实现[D].南京:南京理工大学,2008.

[3] 陈国,高扬.NAND FLASH在大容量存储技术中的应用[J].航天计算技术,2009,39(2):113?116.

[4] 何金伟,史斌宁,罗力.NAND FLASH存储管理在DSP系统中的实现[J].微计算机信息,2009,25(4):92?95.

[5] 汉泽西,吕飞.大容量NAND FLASH在嵌入式系统中的应用[J].石油仪器,2006(2):62?66.

[6] 李华,贾振国.基于NAND FLASH的大容量视频存储系统的设计[J].物联网技术,2012(2):33.

[7] 郑文静,李明强,舒继武.FLASH存储技术[J].计算机研究与发展,2010(4):716?724.

[8] Samsung Electromics. K9WAG08U0M flash memory datasheet [R]. South Korea: Samsung Electromics, 2007.

[9] 李洋,Michael Collier.数字电视NAND FLASH驱动程序的设计与实现[J].电脑知识与技术,2012(1):70?73.

[10] 朱知博.基于NAND FLASH的高速大容量存储系统设计[J].现代电子技术,2011,34(8):173?175.

上一篇:L?DACS1中高速多模式RS编码的FPGA实现 下一篇:基于SOLIDWORKS的安全阀弹簧的应力分析