一种优盘及其工作方法

文档序号:6766961阅读:173来源:国知局
一种优盘及其工作方法
【专利摘要】一种优盘及其工作方法涉及计算机数据存储【技术领域】,该卡包括优盘外壳、USB接口、高速控制器、铁电存储器和NAND?FLASH,USB接口、高速控制器、铁电存储器和NAND?FLASH均位于优盘外壳内部;USB接口通过高速内部数据总线和高速控制器联接,USB接口对外部提供符合USB2.0接口电气规范的数据接口;高速控制器通过地址/数据总线分别与铁电存储器、NAND?FLASH联接,高速控制器负责所有数据的运算和接口逻辑;铁电存储器提供计数器功能和频繁写入块替换功能,NAND?FLASH为优盘的实际存储介质。本发明采用铁电存储器保证不会出现某些块被反复频繁写入的现象,进而延长优盘的使用寿命。
【专利说明】
【技术领域】
[0001] 本发明涉及计算机数据存储【技术领域】,具体涉及一种优盘及其工作方法。 一种优盘及其工作方法

【背景技术】
[0002] 传统上,优盘被用来存储各种数据,当用户用优盘存储数据库类的数据时,每当在 数据库建立或者删除一条记录时,有可能是修改该数据库文件的属性,如文件大小、最后访 问时间等。这种属性信息往往被操作系统存储于优盘的某块区域。当数据写入比较频繁时, 写入次数可能会超过优盘的存储介质NAND FLASH某块中某页(PAGE)的最大写入次数,即 超过芯片设计寿命次数限制,从而导致NAND FLASH某块中某页(PAGE)的损坏,进而导致整 个数据文件的失效。类似频繁改写属性的文件还包括:日志文件、磁盘缓存文件等。


【发明内容】

[0003] 本发明的目的是提供一种优盘及其工作方法,在每次优盘插入上电时,通过统计 铁电存储器的块写入计数器表,准确计算出优盘中写入次数最多的5个块区域,通过铁电 存储器中备份块区的5个备份块替换,保证这些最老的存储块在本次运行中不会再次被反 复写入。由于用户每次使用优盘写入情况不同,故此每次优盘上电,都将重新遍历一遍块写 入计数器表,保证备份块给最急需的最老数据块使用。
[0004] 为了实现上述目的,本发明采取的技术方案如下:
[0005] -种优盘,包括优盘外壳、USB接口、高速控制器、铁电存储器和NAND FLASH,所述 USB接口、高速控制器、铁电存储器和NAND FLASH均位于优盘外壳内部;USB接口通过高速 内部数据总线和高速控制器联接,USB接口对外部提供符合USB2. 0接口电气规范的数据接 口;高速控制器通过地址/数据总线分别与铁电存储器、NAND FLASH联接,高速控制器负 责所有数据的运算和接口逻辑;铁电存储器提供计数器功能和频繁写入块替换功能,NAND FLASH为优盘的实际存储介质。
[0006] 上述铁电存储器为带并行数据/地址总线的铁电存储器,其包含块写入计数器表 和备份块区两个区域,块写入计数器表占用2*N个字节,每两个字节代表一个16位计数器 值的计数单元,该计数单元的值依次代表N个NAND FLASH线性块的每块的写入次数,其中, N为正整数。
[0007] 上述高速控制器为高速MCU,所述NAND FLASH由大容量与非阵列型FLASH芯片组 成,其包含N个存储块,每个存储块占用Μ个字节,其中,Μ和N均为正整数,M*N值等于或者 小于NAND FLASH实际容量大小,Μ的值为NAND FLASH最小页PAGE字节大小的整数倍。
[0008] 上述优盘的工作方法,包括如下步骤:
[0009] 步骤一、优盘上电,高速控制器开始内部初始化,倍频高速控制器时钟为48MHz,初 始化内部高速RAM,初始化USB从设备接口,高速控制器配置铁电存储器的高速地址/数据 总线和NAND FLASH的高速地址/数据总线;
[0010] 步骤二、遍历铁电存储器的块写入计数器表,查找出写入次数最多的五个块,并直 接记录对应NAND FLASH的实际物理起始地址;
[0011] 步骤三、把NAND FLASH中五个需要替换块的最老存储块拷贝到铁电存储器备份块 区的五个对应备份块中,拷贝前,先把上次运行后铁电存储器的五个备份块中的数据恢复 到铁电存储器地址区指向的原始NAND FLASH存储块中;
[0012] 步骤四、高速控制器重新映射优盘虚拟地址空间,逻辑上把NAND FLASH的五个块 映射地址依次替换为铁电存储器备份块区的五个对应备份块的物理地址;
[0013] 步骤五、高速控制器通过USB接口联通外部主控设备,接受并执行外部主控设备 通过USB接口发送的令牌指令;
[0014] 步骤六、高速控制器解析并运行USB接口指令的同时,若遇到对任何块的写入指 令,则立刻查找铁电存储器的块写入计数器表中对应的计数单元,并修改对应计数单元中 的值,使计数单元中的值加1,如果该计数单元的16位值超过^5535)0XFFFF,则该值不做 修改。
[0015] 当外部设备试图访问优盘的物理地址时,实际是访问高速控制器模拟的虚拟地 址,真正存储数据的物理地址位于铁电存储器和NAND FLASH的物理存储空间中。NAND FLASH划分成N个存储块,每个块占用Μ字节空间。对NAND FLASH所有块的写入次数都会 通过高速控制器存储于铁电存储器的块写入计数器表中。每次优盘上电时,高速控制器将 根据优盘内部铁电存储器的块写入计数器表统计出NAND FLASH写入次数最多的5个块, 并把这5个块中的数据和地址写入优盘内部铁电存储器的备份块区的5个备份块中。当外 部设备再次访问高速控制器提供的虚拟地址空间时,并试图读写这5个写入次数最多的块 时,将会被高速控制器重新定向访问到铁电存储器的5个备份块,以避免NAND FLASH某个 存储块被长期频繁写入,导致NAND FLASH某块中某页(PAGE)的损坏。
[0016] 本发明采用铁电存储器的备份块替换NAND FLASH中写入次数最多的块,保证不会 出现某些块被反复频繁写入的现象,进而延长优盘的使用寿命。

【专利附图】

【附图说明】
[0017] 图1是本发明中NAND FLASH内部划分框图。
[0018] 图2是本发明中铁电存储器内部划分框图。
[0019] 图3是本发明中铁电存储器和NAND FLASH的对应关系示意图。
[0020] 图4是本发明中优盘内部地址映射关系图。
[0021] 图5是本发明优盘的硬件结构示意图。

【具体实施方式】
[0022] 下面结合附图对本发明做进一步详细说明。
[0023] 如图1至图4所示,本发明的优盘包含:优盘外壳、USB接口、高速控制器、铁电存 储器和NAND FLASH。优盘外壳由普通塑料材料组成,高速控制器由高速MCU组成,铁电存储 器由带并行数据/地址总线的铁电存储器组成;NAND FLASH由大容量与非阵列型FLASH芯 片组成,NAND FLASH包含N个存储块,每个存储块占用Μ个字节,其中M*N值等于或者小于 NAND FLASH实际容量大小,Μ的值为NAND FLASH最小页PAGE大小(字节)的整数倍。
[0024] 铁电存储器包含两个区域:一个是块写入计数器表,一个是备份块区。块写入计数 器表占用2*N个字节,每两个字节代表一个16位计数器值的计数单元,该计数单元值依次 代表N个NAND FLASH线性块的每块的写入次数。例如,在NAND FLASH第800个块的写入 次数是6000次,那么在铁电存储器的0X00000263E((800-1)*2)的地址单元上存储的数据 应该是〇X177(K6000)。块写入计数器表的计数单元的所有寄存器值默认情况是0X0000,每 次写入对应NAND FLASH块,该值都会自增1,当该值大于65535 (0XFFFF)时,则该值不会增 加。
[0025] 实施例:
[0026] 优盘外壳采用深圳HMW型号:HMW1863 ;高速控制器采用CYPRESS型号: CY7C68013A ;铁电存储器采用 RAMTR0N 型号:FM22L16 ;NAND FLASH 采用 SUMSUNG 型号: K9F1208D0A。
[0027] 在该实例中,NAND FLASH容量是64MB (共67108864字节),其中每个存储块定义 大小4096字节(即Μ值是4096),共16384个存储块(即N值是16384)。
[0028] 在该实例中,铁电存储器的容量是512ΚΒ (共524288字节)。其中,块写入计数器表 占用(32768字节=Ν*2),起始地址从0X0000 0000到0X0000 8000;备份块区占用(20500 字节=(4+Μ) *5),起始地址从0X0000 8001到0X0000 D014 ;备份块1占用(4100字节= (4+Μ)),起始地址从0X0000 8001到0X0000 9004 ;备份块2占用(4100字节=(4+Μ)),起 始地址从0X0000 9005到0X0000 Α008;备份块3占用(4100字节=(4+Μ)),起始地址从 0X0000 Α009 到0X0000 B00C;备份块4 占用(4100字节=(4+Μ)),起始地址从0X0000 B00D 到0X0000 C010;备份块5占用(4100字节=(4+Μ)),起始地址从0X0000 C011到0X0000 C014。
[0029] 模拟运行:
[0030] 假设第一次优盘上电后,系统对NAND FLASH的第101块进行了 1000次整块写入 操作(写入内容全是0X11),第202块进行2000次整块写入操作(写入内容全是0X22),第 303块进行了 3000次整块写入操作(写入内容全是0X33),第404块进行了 4000次整块写 入操作(写入内容全是0X44),505块进行了 5000次整块写入操作(写入内容全是0X55), 其他块的写入次数都小于1000次。那么铁电存储器的块写入计数器表序号为101的计数 单元中的值为(0X03E8),铁电存储器的块写入计数器表序号为202的计数单元中的值为 (0X07D0),铁电存储器的块写入计数器表序号为303的计数单元中的值为(0X0BB8),铁电 存储器的块写入计数器表序号为404的计数单元中的值为(0X0FA0),铁电存储器的块写入 计数器表序号为505的计数单元中的值为(0X1388)。
[0031] 第二次上电后,会产生如下动作:
[0032] NAND FLASH第101块物理地址拷贝到铁电存储器备份块1的地址区中(拷贝后该 地址区的数据是0X00065000 = 101*M),NAND FLASH第101块的数据拷贝到铁电存储器备 份块1的数据区中(拷贝后该数据区的数据是0X11,〇Χ11···〇Χ11)。
[0033] NAND FLASH第202块物理地址拷贝到铁电存储器备份块2的地址区中(拷贝后该 地址区的数据是0X000CA000 = 202*M),NAND FLASH第202块的数据拷贝到铁电存储器备 份块2的数据区中(拷贝后该数据区的数据是0X22, 0X22··· 0X22)。
[0034] NAND FLASH第303块物理地址拷贝到铁电存储器备份块3的地址区中(拷贝后该 地址区的数据是0X0012R)00 = 303*M),NAND FLASH第303块的数据拷贝到铁电存储器备 份块3的数据区中(拷贝后该数据区的数据是0X33, 0X33...0X33)。
[0035] NAND FLASH第404块物理地址拷贝到铁电存储器备份块4的地址区中(拷贝后该 地址区的数据是0X00194000 = 404*M),NAND FLASH第404块的数据拷贝到铁电存储器备 份块4的数据区中(拷贝后该数据区的数据是0X44, 0X44... 0X44)。
[0036] NAND FLASH第505块物理地址拷贝到铁电存储器备份块5的地址区中(拷贝后该 地址区的数据是0X001F9000 = 505*M),NAND FLASH第505块的数据拷贝到铁电存储器备 份块5的数据区中(拷贝后该数据区的数据是0X55, 0X55... 0X55)。
[0037] 当系统再次试图通过USB接口读写NAND FLASH这五个地址区时,(0X00065000? 0X00065000+M ;0X000CA000 ?0X000CA000+M ;0X0012F000 ?0X0012F000+M ;0X00194000 ? 0X00194000+M ; 0X001F9000?0X001F9000+M),将会被重定向读写铁电存储器的5个对应备 份块。
【权利要求】
1. 一种优盘,包括优盘外壳和USB接口,其特征在于,该优盘还包括高速控制器、铁电 存储器和NAND FLASH,所述USB接口、高速控制器、铁电存储器和NAND FLASH均位于优盘 外壳内部;USB接口通过高速内部数据总线和高速控制器联接,USB接口对外部提供符合 USB2. 0接口电气规范的数据接口;高速控制器通过地址/数据总线分别与铁电存储器、 NAND FLASH联接,高速控制器负责所有数据的运算和接口逻辑;铁电存储器提供计数器功 能和频繁写入块替换功能,NAND FLASH为优盘的实际存储介质。
2. 如权利要求1所述的优盘,其特征在于,所述铁电存储器为带并行数据/地址总线 的铁电存储器,其包含块写入计数器表和备份块区两个区域,块写入计数器表占用2*N个 字节,每两个字节代表一个16位计数器值的计数单元,该计数单元的值依次代表N个NAND FLASH线性块的每块的写入次数,其中,N为正整数。
3. 如权利要求1所述的优盘,其特征在于,所述高速控制器为高速MCU,所述NAND FLASH由大容量与非阵列型FLASH芯片组成,其包含N个存储块,每个存储块占用Μ个字节, 其中,Μ和Ν均为正整数,Μ*Ν值等于或者小于NAND FLASH实际容量大小,Μ的值为NAND FLASH最小页PAGE字节大小的整数倍。
4. 权利要求1或2或3所述优盘的工作方法,其特征在于,该方法包括如下步骤: 步骤一、优盘上电,高速控制器开始内部初始化,倍频高速控制器时钟为48MHz,初始化 内部高速RAM,初始化USB从设备接口,高速控制器配置铁电存储器的高速地址/数据总线 和NAND FLASH的高速地址/数据总线; 步骤二、遍历铁电存储器的块写入计数器表,查找出写入次数最多的五个块,并直接记 录对应NAND FLASH的实际物理起始地址; 步骤三、把NAND FLASH中五个需要替换块的最老存储块拷贝到铁电存储器备份块区的 五个对应备份块中,拷贝前,先把上次运行后铁电存储器的五个备份块中的数据恢复到铁 电存储器地址区指向的原始NAND FLASH存储块中; 步骤四、高速控制器重新映射优盘虚拟地址空间,逻辑上把NAND FLASH的五个块映射 地址依次替换为铁电存储器备份块区的五个对应备份块的物理地址; 步骤五、高速控制器通过USB接口联通外部主控设备,接受并执行外部主控设备通过 USB接口发送的令牌指令; 步骤六、高速控制器解析并运行USB接口指令的同时,若遇到对任何块的写入指令,则 立刻查找铁电存储器的块写入计数器表中对应的计数单元,并修改对应计数单元中的值, 使计数单元中的值加1,如果该计数单元的16位值超过OXFFFF,则该值不做修改。
【文档编号】G11C7/10GK104143352SQ201410359820
【公开日】2014年11月12日 申请日期:2014年7月25日 优先权日:2014年7月25日
【发明者】王刚, 张禹瑄, 胡玮通 申请人:吉林大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1