发明名称 一种基于虚拟块闪存地址映射的数据写入及读出方法
摘要 一种基于虚拟块闪存地址映射的数据写入及读出方法,其特征在于,该方法包括以下步骤:构建虚拟块、构建一个初始地址映射表、写入数据、读出数据。本发明解决了没有利用通道内的并行优势来提高速度的技术问题。具有在用户数据的逻辑地址连续的情况下能将数据映射到多个通道中的多个芯片中,使通道的并行操作和通道内的并行操作同时进行,提高读写速度的优点。同时在物理块部分空闲的情况下还能够用来构成虚拟块,提高了物理块的利用率,延长闪存芯片的寿命。
申请公布号 CN101727295B 申请公布日期 2012.01.04
申请号 CN200810232063.4 申请日期 2008.10.31
申请人 西安奇维测控科技有限公司 发明人 邱波
分类号 G06F3/06(2006.01)I;G06F12/06(2006.01)I 主分类号 G06F3/06(2006.01)I
代理机构 代理人
主权项 一种基于虚拟块闪存地址映射的数据写入及读出方法,其特征在于,该方法包括以下步骤:1)构建虚拟块虚拟块的构成是由每个通道内每个芯片内的物理块的一部分构成,具体是将每个物理块等分成N块,然后将每个通道内每个芯片内取一个1/n个物理块来构成一个虚拟块;每个虚拟块由一个数据结构组成,该数据结构里记录了该虚拟块由哪些物理块的那部分构成;2)构建一个初始地址映射表所述初始地址映射表包括逻辑地址页号和物理地址页号;所述逻辑地址页号是由计算机给出一个逻辑地址,通过该逻辑地址对虚拟块包含扇区数求模得到虚拟块号的索引,用虚拟块号的索引作为下标在虚拟块表里找到相应的虚拟块地址,该虚拟块地址以页为单位映射到一个虚拟块上的逻辑页上,得到一个逻辑地址页号;所述物理地址页号是每个虚拟块地址以页为单位的映射,每个虚拟块由一个数据结构组成,该数据结构以页为单位映射得到一个物理地址页号;3)写入数据3.1)计算机先写扇区的逻辑地址,通过该逻辑地址对虚拟块包含扇区数求模得到虚拟块号的索引,用虚拟块号的索引作为下标在虚拟块表里找到相应的虚拟块地址,得到逻辑块号在初始地址映射表中找到虚拟块号,再在虚拟块中找到一个空闲的页;3.2)用上述逻辑地址对虚拟块包含扇区数求余得到该逻辑地址在虚拟块中的偏移地址,再用该偏移地址对通道数求模得到通道号,再用该偏移地址对一个页包含的扇区数求余得到此通道号里对应物理块的扇区偏移量,由此扇区偏移量得到物理地址,得到更新的逻辑地址页号对应的物理地址页号;3.3)将更新后的逻辑地址页号和物理地址页号存入初始地址映射表中,完成初始地址映射表的更新;3.4)通过更新后的初始地址映射表中物理地址页号对应的物理地址把数据 写入该页,完成数据的写入;4)读出数据4.1)计算机先读扇区逻辑地址LBA,在地址映射表里搜索扇区逻辑地址LBA对应的逻辑页号;4.2)如果找到,则取得该逻辑页号对应的物理地址通过驱动控制器读取扇区数据;4.3)如果没有找到,则通过LBA计算出逻辑块号在更新后的地址映射表中找到虚拟块号,通过虚拟块数据结构里的物理块部分信息计算出物理地址页号,通过此物理地址页号对应的物理地址读出该页的数据,完成数据的读出。
地址 710077 陕西省西安市高新区锦业路69号创业研发园C区8号