迪文科技论坛

 找回密码
 立即注册
搜索
查看: 1305|回复: 6

【提问】请问T5L内部的NOR FLASH是否每次写入都会擦除4kB的Secto

[复制链接]

15

主题

31

回帖

188

积分

注册会员

Rank: 2

积分
188
发表于 2023-10-23 15:10:33 | 显示全部楼层 |阅读模式
目前DGUS只定义了读、写两个操作,通过0x08地址起始的变量操作,对用户屏蔽了擦除操作。

用来初始化的00.lib文件大小为4kB,也就是说NOR FLASH的sector尺寸为4kB,如果我使用某个sector来存储数据,是否每次写入都会擦除这个sector?
如果每次几个字节,都要擦除整个sector,对于NOR FLASH的寿命是不利的。如果UI核心没有采用磨损均衡策略,OS核心是否可以做一些磨损均衡?有没有相关例程?
回复

使用道具 举报

0

主题

415

回帖

8447

积分

论坛元老

Rank: 8Rank: 8

积分
8447
发表于 2023-10-23 15:24:08 | 显示全部楼层
是的,如果你使用某个sector来存储数据,每次写入都会擦除这个sector。因为NOR FLASH的最小擦除单位为一个sector,每次写入数据时需要先将整个sector擦除,然后再将数据写入。这也是为什么在使用NOR FLASH存储数据时需要注意数据的写入次数,过多的写入会导致NOR FLASH寿命的缩短。
我不在我不在
回复

使用道具 举报

15

主题

31

回帖

188

积分

注册会员

Rank: 2

积分
188
 楼主| 发表于 2023-10-23 16:42:48 | 显示全部楼层
Yangjc1030 发表于 2023-10-23 15:24
是的,如果你使用某个sector来存储数据,每次写入都会擦除这个sector。因为NOR FLASH的最小擦除单位为一个s ...

DGUS是否可以把擦除接口给留出来?4kB的Sector,每次肯定没有那么多参数存,大多数应用参数不到128字节。可以把4kB分成32个128字节的页,写完32各页以后再擦除一次,这样写入寿命扩大32倍,基本不需要考虑寿命问题。外挂的NOR FLASH很容易实现这个功能。
回复

使用道具 举报

0

主题

415

回帖

8447

积分

论坛元老

Rank: 8Rank: 8

积分
8447
发表于 2023-10-23 16:54:16 | 显示全部楼层
spadger 发表于 2023-10-23 16:42
DGUS是否可以把擦除接口给留出来?4kB的Sector,每次肯定没有那么多参数存,大多数应用参数不到128字节。 ...

一定要用0.lib去擦除吗?本来数据就不多的话,直接覆写覆盖掉不行吗?
我不在我不在
回复

使用道具 举报

15

主题

31

回帖

188

积分

注册会员

Rank: 2

积分
188
 楼主| 发表于 2023-10-23 17:03:50 | 显示全部楼层
Yangjc1030 发表于 2023-10-23 16:54
一定要用0.lib去擦除吗?本来数据就不多的话,直接覆写覆盖掉不行吗?

就是用C51代码去擦除,问题是DGUS的API只提供了读、写两个操作,用户并不清楚UI核心是什么时候擦除的
回复

使用道具 举报

0

主题

857

回帖

5515

积分

论坛元老

Rank: 8Rank: 8

积分
5515
发表于 2023-10-24 08:44:40 | 显示全部楼层
执行读写操作后,可以读取0x08高字节的状态, 0x5A=读 0xA5=写,CPU 操作完清零。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

31

主题

238

回帖

2785

积分

金牌会员

Rank: 6Rank: 6

积分
2785
发表于 2023-10-24 10:03:23 | 显示全部楼层
很无语,在技术问题上遮遮掩掩的,我也是因为要用这个功能并且需要计算寿命,查尽资料才从00.lib的描述中猜出4k扇区,文档中对片内FLASH没有更多描述,和楼主一样的疑问,为什么不把功能和资料描述清晰,写入和擦除的逻辑说的详细些,资料真的是惜字如金啊,不能把“页”写(假如有的话)和擦除的操作开放给用户?写几个字节真的没有必要擦除一个扇区的,可以把算法交给用户自己处理。
资料少而且不准确才能映射出技术支持的重要性
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|迪文科技论坛 ( 京ICP备05033781号-1 )

GMT+8, 2026-9-21 06:27 , Processed in 0.033940 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表