登录
注册
一键加入QQ群
友善之臂官方网站
首 页
联系我们
淘宝店铺
维基教程
固件下载
资料汇总
搜索帖子!
NanoPC 系列:
NanoPC-T2
NanoPC-T3 Plus
NanoPC-T4
NanoPC-T6
NanoPC-T6 Plus
NanoPi 系列:
NanoPi-NEO
NEO Core
NEO Air
M1 Plus
Duo2
NEO3
NEO4
M4B
M5
M6
M6V2
核心板:
Smart4418
Core4418
Smart6818
Core6818
SOM-RK3399V2
CM3588
CM3588 Plus
迷你R系列:
NanoPi-R1
R1S
R2S
R2S Plus
Zero2
R3S
R76S
R4S
R5S
R5C
R6C
R6S
热门版块:
友善之臂最新动态
开发板实战手册及教程
友善之臂官方客服中心
ROM发布区
NanoPi 玩家交流区
我的论坛我的贴
默认风格
用户中心首页
编辑个人资料
查看个人资料
好友列表
用户权限查看
积分管理
积分转换
特殊组购买
收藏夹
我的主题
基本统计信息
到访IP统计
管理团队
管理统计
在线统计
会员排行
版块排行
帖子排行
个人首页
我的收藏
好友近况
Linux技术交流区
关于nand flash的运行能力
友友粉丝快线
开发板销售中心
嵌入式最新资讯
友善之臂最新动态
友善之臂官方客服中心
开发板实战手册及教程
应用方案和定制开发
NanoPi 交流与讨论
NanoPi 玩家交流区
ROM发布区
硬软DIY及开发
嵌入式交流与讨论
Android技术交流区
Linux技术交流区
U-boot技术交流区
WinCE技术交流区
Ubuntu技术交流区
裸机程序和微型OS
OpenWRT讨论区
开发板硬件讨论区
相关资料下载及使用技巧
站点服务
二手交易区
我的论坛我的贴
站务管理与公告
上一主题
下一主题
新 帖
主题 : 关于nand flash的运行能力
复制链接
|
浏览器收藏
|
打印
imjacob
级别: 侠客
作者资料
发送短消息
加为好友
UID:
21258
精华:
1
发帖:
120
金钱:
655 两
威望:
131 点
综合积分:
260 分
注册时间:
2010-05-13
最后登录:
2023-11-17
楼主
发表于: 2010-07-30 17:21
只看楼主
|
小
中
大
关于nand flash的运行能力
看到网上说 nand flash 和nor 的区别之一是 前者没有执行能力,后者有。我想问原因是什么呢? 是nand flash 的接口一般不是并口吗?(那我们的s3c2440是并口的,它有可执行能力吗?)还是物理特性决定的。
然后在一本书上看bootloader的时候,说:“ RO段 是只读的,在运行的时候不可以改变,所以在运行的时候,RO段可以驻留在flash里。RW段是读写的,在运行的时候必须被装载到SDRAM 或SRAM里”。那我想说如果那个flash是 nand的(按照上面的讲法),它怎么能直接运行呢?
顶端
回复
引用
分享
小荷尖尖
春有百花秋有月,夏有凉风冬有雪。若无闲事挂心头,便是UBUNTU好时节。。。。
级别: 侠客
作者资料
发送短消息
加为好友
UID:
24947
精华:
2
发帖:
63
金钱:
430 两
威望:
86 点
综合积分:
166 分
注册时间:
2010-07-16
最后登录:
2019-04-27
1楼
发表于: 2010-08-04 07:23
只看该作者
|
小
中
大
不能在nand flash里面运行程序的主要原因是:nand flash没有寻址线,需要特殊的控制器才能与之读写数据,这点也就决定了不能在nand flash里面运行程序咯
顶端
回复
引用
分享
imjacob
级别: 侠客
作者资料
发送短消息
加为好友
UID:
21258
精华:
1
发帖:
120
金钱:
655 两
威望:
131 点
综合积分:
260 分
注册时间:
2010-05-13
最后登录:
2023-11-17
2楼
发表于: 2010-08-11 14:38
只看该作者
|
小
中
大
恩。懂了。
想在问下。
看到书上说,nand flash必须以page为单位进行读写。但我看看nand flash的写命令是发了4个地址序列(A0~A7,A9~A25)的方式,它肯定能寻址到page里面的内容的,即是有列地址的。那怎么叫 page为单位呢?
同理,nand flash必须以block为单位进行檫除,但它发了3个地址序列(,A9~A25)的方式,这样的话我觉得它能以 page为单位才对啊。
顶端
回复
引用
分享
小荷尖尖
春有百花秋有月,夏有凉风冬有雪。若无闲事挂心头,便是UBUNTU好时节。。。。
级别: 侠客
作者资料
发送短消息
加为好友
UID:
24947
精华:
2
发帖:
63
金钱:
430 两
威望:
86 点
综合积分:
166 分
注册时间:
2010-07-16
最后登录:
2019-04-27
3楼
发表于: 2010-08-12 11:14
只看该作者
|
小
中
大
我想你是认为可以字节寻址就可以字节读写了,而不必考虑什么页和块的概念咯。是的应用程序仅仅需要一个字节的数据,可是底层硬件为了一个字节而读和擦除nand flash的一个块!
顶端
回复
引用
分享
kasim
*無鈳取玳
级别: 论坛版主
作者资料
发送短消息
加为好友
QQ联系
UID:
27
精华:
12
发帖:
5398
金钱:
40120 两
威望:
17929 点
综合积分:
11036 分
注册时间:
2008-01-16
最后登录:
2014-11-22
4楼
发表于: 2010-08-12 12:16
只看该作者
|
小
中
大
对于erase来说,NAND Flash的BLOCK ERASE是这样定义的(来自K9F1G08D0M的datasheet):
BLOCK ERASE
The Erase operation is done on a block basis. Block address loading is accomplished in two cycles initiated by an Erase Setup command(60h). Only address A18 to A27(X8) or A17 to A26(X16) is valid while A12 to A17(X8) or A11 to A16(X16) is ignored.
同样的道理,NAND Flash也只定义了PAGE READ,输出的只会是一个page的数据.
事实上,就算NAND Flash内部可以寻址到字节,但由于没有地址线,CPU不能按字节随机访问数据,而这是执行代码的前提条件。针对NAND Flash的这一特性,有一些存储设备就增加了一个controller来转换CPU的寻址,比如三星的OneNAND,和M-System的DiskOnChip(DOC)系列。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
顶端
回复
引用
分享
上一主题
下一主题
Linux技术交流区
http://121.40.142.80
访问内容超出本站范围,不能确定是否安全
继续访问
取消访问