您当前的位置:首页 > 行业资讯

Blackfin轻量级内核VDK及其文件系统设计

时间:2015-01-31  来源:扁平线圈电感厂家  点击:


文件下载时,主线程遍历文件目录表,找到相应的文件索引信息,然后发送消息给文件下载子线程,开始对指定文件进行下载。如果需要删除某个文件,在遍历目录表找到指定文件的信息后,先发送地址将存储阵列相应数据块的信息擦除,然后将该文件索引信息的"文件标记"置为"删除"标记。

3.2 地址映射表

地址映射是文件系统的核心。文件系统将整个存储阵列作为一个独立的地址空间,统一编址。通过定义一个地址缓冲区,将其相应的偏移地址作为Nand Flash的物理地址,并根据坏块信息对缓冲区相应偏移地址的单元做坏块或有效块的标记。文件系统在实际操作中,可"查询"地址缓冲区,如果地址缓冲区某偏移地址为坏块标记,则抛弃,继续查询下一个偏移地址的标记,如为有效块标记,则将此偏移地址作为存储阵列的有效物理块地址。

为提高存储效率和方便管理,地址缓冲区的内容会被记录在数据Nor Flash中,作为一个"地址映射表".地址映射表体积不大,烧写到Nor Flash时,可将烧写代码推入到VDK的"关键域"中,因为烧写时间小于两次中断间隔,这样既不会照成中断延时,又能保证烧写工作一次完成。

硬件平台上电后,系统启动线程首先读取Nor Flash中的地址映射表到地址缓冲区,随后基于地址缓冲区进行文件管理;如需更新坏块信息,首先更新地址缓冲区,然后将地址缓冲区内容记录到Nor Flash中。故而名为"映射",实质是一种"标记"的方法。地址映射机制如图2所示。

图2 功率电感地址映射机表的设置与使用

3.3 坏块回收

Nand Flash芯片在出厂时就存在随机坏块,同时随着使用时间的推移,一些有效块也会因为编程的原因成为新的坏块,故而存储阵列在使用一段时间后,应当更新坏块信息。考虑到阵列中文件的安全性和完整性,系统设置为存储阵列为空时方能更新坏块信息。

格式化整个阵列后,存储阵列中的FPGA芯片依次读取每个数据块的第一页数据,如果发现非0xFF数据的个数超过设定阈值,就认为此数据块为坏块。之所以设定阈值而不是一有非0xFF数据就视为坏块,是为了克服数据读取的不稳定性。

BF537读取存储阵列传送来最新坏块信息后,按照图2中地址映射表设置的办法,首先更新地址映射缓冲区,随即将地址映射缓冲区的内容实时更新到数据Nor Flash中,保持两者的同步。

由于坏块信息更新的时间可能较长,更新工作放在主线程中可能造成较大时延,影响主线程对用户命令的响应,所以坏块回收与标记可放在子线程中。

3.4 磨损均衡

Nand Flash芯片的编程次数有限,如果对某个数据块操作过于频繁,将迅速缩短其使用寿命,最终成为坏块,乃至影响整个芯片的使用。如果均衡地使用Flash芯片的每个数据块,对其操作的概率在较长时间内大体相当,这样不仅能减少芯片坏块的比例,也能延长存储阵列的使用寿命。

开源和商业的文件系统,都有较为完备的脏块回收和磨损均衡的机制,但是其算法往往较复杂,同时需要将运行信息实时更新到Flash芯片中。在存储速率要求很高的情况下,复杂的机制对存储速率将不可避免地造成影响。

文件系统关于磨损均衡的解决方案主要是顺序存储和阵列整理。文件存储时,并不使用"链式存储",填充文件删除所留下的"空洞",而采用"连续存储"的方式,将最新的文件存储到当前所有文件的末尾。这样不仅编程简单,而且存储阵列在一段时间后可能会被耗尽,此时绕行电感如果删除尾部的某些文件,那么下个的文件可以存储在这些空余出来的位置;如果利用阵列整理功能将当前文件"压缩"为连续紧凑的文件序列,去除文件删除时留下的空洞,这样整理出来的空间共模电感也可以继续用于下次存储。

3.5 掉电保护

嵌入式系统硬件平台的工作环境一般较为恶劣,电源模块随时会有停止供电的可能。故而掉电保护是嵌入式文件系统设计的重点和难点。

微软的FNT文件系统的掉电保护主要针对FAT表,本文件系统也是基于这个理念功率电感器。开始文件存储时,子线程对发送的块地址数目做一个计数,当计数量达到设定的阈值N后,将新文件的信息更新到文件目录表缓冲区中,并立即将文件目录表更新到Nor Flash中,两个更新的操作不能被中断,故而将这段代码推入到关键域中。随后将计数值清零,重新开始前一过程。如果在存储过程中掉电,

大电流电感

资本丨风华高科75亿项目即将启动,国产MLCC迎历史前言:随着我国电子行业的快速发展,我国已成为 MLCC 的重要需求市场。但高端 MLCC 话语权几乎掌握在日韩企业手中,发展自主可控、国产保障的电子元器件产业已迫在眉睫。高端市场

这个输出电压公式不用考虑负载端的影响吗?这个输出电压公式不用考虑负载端的影响吗?有负载的话一般是忽略了吗? 1589796700(1).jpg(151.8 KB, 下载次数: 4)下载附件2020-5-18 18:12 上传

LTspice如何导入第三方仿真模型[img]blob:http://bbs.21dianyuan.com/3493970c-6b4b-47a5-ae6e-5e19bfe01a93[/img]我已经把第三方的.lib .asy .asc这三个文件都放在LTC/LTspiceXVII/lib/sym/目录下,但当运

注塑加工厂


上一篇TD-SCDMA系统终端CC实体的一致性测试

下一篇蓝牙车载系统的组成结构和应用规范分析


  
  温馨提示
网站首页 | 产品展示 | 科技前沿 | 行业资讯
本公司专业研发、设计、生产、销售贴片电感、插件电感、功率电感、大电流电感、扁平线圈电感、一体成型电感。
专业电感生产制造商,品质优异、交期快。
在线客服
热线电话