共4条
1/1 1 跳转至页
Tornado之TrueFFS编程者指南(三)
6.引导映象和TrueFFS共享flash存储空间
缺省情况下,TrueFFS格式化工具会把整个flash空间用于TrueFFS。虽然TrueFFS的转译服务结合一个文件系统可以为数据的管理提供很多好处,但这也同样增加了flash作为一个引导设备时的复杂性。唯一可行的解决方案就是把TrueFFS排斥在flash的引导区外。
幸运地是,TrueFFS自带的格式化工具可以允许你从一个偏移地址开始格式化flash。这样就创建了一个TrueFFS不能触及的区域,你可以使用TrueFFS的一些工具来管理这个区域。从而你能把一个引导映象写到这个区域或者从上面擦除。不过,你得十分小心地使用这些工具,因为它们不仅可能过度使用flash,也可能写操作时超过这个区域,从而破坏掉TrueFFS。
7.TrueFFS的层结构简介
如图1-1所示,TrueFFS包含三层:翻译层(translation layer),MTD层(MTD layer),socket层(socket layer)。
图1-1 TrueFFS的层结构
翻译层主要实现TrueFFS和dosFs之间的高级交互功能。它也包含了控制flash映射到块、wear-leveling、碎片回收和数据完整性所需的智能化处理功能。目前有三种不同的翻译层模块可供选择。选择哪一种层要看你所用的flash介质是采用NOR-based, 还是NAND-based, 或者SSFDC-based技术而定。
Socket层则是提供TrueFFS和板卡硬件(如flash卡)的接口服务。其名字来源于用户可以插入flash卡的物理插槽。用来向系统注册socket设备,检测设备拔插,硬件写保护等。后面将详细讲解它的功能。
MTD层(Memory Technology Drivers)功能主要是实现对具体的flash进行读、写、擦、ID识别等驱动,并设置与flash密切相关的一些参数。TrueFFS已经包含了支持Intel,AMD以及samsung部分flash芯片的MTD层驱动。新的芯片需要新的MTD支持,你可以使用一个标准的接口来加入这些驱动。
以上三部分,我们关心的将会是后两层。
当在vxworks下配置TrueFFS时,你必须为每一层至少包含一个软件模块。后面我们将详细讨论。
8.TrueFFS配置显示工具
主要有两个:tffsShow()和tffsShowAll().前者为一个指定的socket接口打印设备信息。它的主要用来确定当要写一个引导映象时所需要的擦除单元数。后者则是提供在vxworks中已注册的所有socket接口的信息。
(未完)
[upload=gif]uploadImages/2002111918472954267.gif[/upload]
关键词: Tornado TrueFFS 编程 指南 fla
共4条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |