请选择 进入手机版 | 继续访问电脑版

迪文科技论坛

 找回密码
 立即注册
搜索
查看: 650|回复: 12

【提问】请问T5L内部的256kW片内FLASH是否用户可以全部使用?

[复制链接]

15

主题

31

回帖

186

积分

注册会员

Rank: 2

积分
186
发表于 2023-5-30 10:20:29 | 显示全部楼层 |阅读模式
通过系统变量接口:NOR_FLASH_RW_CMD读取T5L内部FLASH,试了下读取出来的内容是一些随机值,并不是空闪存常见的FFFF。
想问下,T5L内部的256kW(512kB)闪存空间是否全部可以给用户使用?我使用OS核心C51方式开发,另外一个核心是否有用到这部分闪存?



本帖子中包含更多资源

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

x
回复

使用道具 举报

0

主题

857

回帖

4964

积分

论坛元老

Rank: 8Rank: 8

积分
4964
发表于 2023-5-30 13:10:09 | 显示全部楼层
T5L片内512KB数据库都是给用户使用的,使用C51方式开发可以,GUI核不会访问这些闪存空间,用C51读写就行。
回复

使用道具 举报

15

主题

31

回帖

186

积分

注册会员

Rank: 2

积分
186
 楼主| 发表于 2023-6-7 15:23:23 | 显示全部楼层
DWIN_LZ 发表于 2023-5-30 13:10
T5L片内512KB数据库都是给用户使用的,使用C51方式开发可以,GUI核不会访问这些闪存空间,用C51读写就行。 ...

读出来的随机数值是否正常?
回复

使用道具 举报

0

主题

857

回帖

4964

积分

论坛元老

Rank: 8Rank: 8

积分
4964
发表于 2023-6-7 15:42:07 | 显示全部楼层
T5L 芯片内 Nor Flash 数据库 最开始的数据并不是0000 0000这样的格式,我们可以用一个00.lib文件进行初始化(附件的00.rar);NOR Flash 数据库可以用00.lib,01.lib命名格式的库文件进行擦写或者导入覆盖,比如用sd卡下载烧录后赋值或者擦除,每个 ID 分配占用对应 2KWords 存储器,ID 范围 0-79。

本帖子中包含更多资源

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

x
回复

使用道具 举报

15

主题

31

回帖

186

积分

注册会员

Rank: 2

积分
186
 楼主| 发表于 2023-6-8 15:57:05 | 显示全部楼层
DWIN_LZ 发表于 2023-6-7 15:42
T5L 芯片内 Nor Flash 数据库 最开始的数据并不是0000 0000这样的格式,我们可以用一个00.lib文件进行初始 ...

用户使用时,读写内部Nor Flash数据库是否要考虑FLASH的磨损均衡?比如我只读写2kWords的数据,可以只读写ID0,ID1-79全部空闲不用。如果UI核心那边已经考虑过磨损均衡,OS核心这边就不需要多此一举了,直接读写ID0即可。请问UI核心那边是如何处理的?
回复

使用道具 举报

15

主题

31

回帖

186

积分

注册会员

Rank: 2

积分
186
 楼主| 发表于 2023-6-9 11:23:10 | 显示全部楼层
2kWord对应4kB,是不是T5L芯片内部一个Sector尺寸?UI核心的固件在处理内部FLASH读写时是如何擦除的?2kWord随意写一个地址都要擦除整个Sector吗?
常用的磨损算法是把一个擦除单位4kB分成多份,比如16个256字节,全部用完以后再整个擦除,提高FLASH寿命,OS核心并没有擦除FLASH的接口,请问UI核心那边是如何处理的?
回复

使用道具 举报

0

主题

1206

回帖

4912

积分

论坛元老

Rank: 8Rank: 8

积分
4912
发表于 2023-6-21 17:06:52 | 显示全部楼层
spadger 发表于 2023-6-9 11:23
2kWord对应4kB,是不是T5L芯片内部一个Sector尺寸?UI核心的固件在处理内部FLASH读写时是如何擦除的?2kWor ...

单个地址寻址的,内核没有做平衡  要用户自己组织算法去平衡。
回复

使用道具 举报

15

主题

31

回帖

186

积分

注册会员

Rank: 2

积分
186
 楼主| 发表于 2023-10-23 14:15:52 | 显示全部楼层
integer_32 发表于 2023-6-21 17:06
单个地址寻址的,内核没有做平衡  要用户自己组织算法去平衡。

2kWord随意写一个地址都要擦除整个Sector吗?
回复

使用道具 举报

15

主题

84

回帖

843

积分

高级会员

Rank: 4

积分
843
发表于 2023-10-24 10:06:23 | 显示全部楼层
spadger 发表于 2023-10-23 14:15
2kWord随意写一个地址都要擦除整个Sector吗?

是的,我跟踪过,写一个字节和写几百个字节时间相同,耗时几十个毫秒,说明整个擦除了一个扇区。
回复

使用道具 举报

15

主题

31

回帖

186

积分

注册会员

Rank: 2

积分
186
 楼主| 发表于 2023-10-24 12:40:16 | 显示全部楼层
现在的片内NOR FLASH用0x08 NOR_FLASH_RW_CMD系统变量接口来读写,操作码0x5A是读,0xA5是写。这个接口很简单,但是不够灵活,无法满足用户更深入的需求。建议按以下更新:
1)0x5A读接口无需修改,
2)0xA5写接口也无需修改
3)增加0xA6只写接口,不擦除,直接写入,NOR FLASH是允许的。
4)增加0xA7擦除接口,擦除一个4kB的Sector
使用擦除和只写接口,用户很容易实现自己的磨损均衡功能。更新一下UI那边的固件即可,实现并不难。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 21:16 , Processed in 0.076852 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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