作者ewboy ( )
看板NTU-EM93
标题[转录]Re: [问题] 请教有关NAND flash与NOR flash的问题....
时间Thu Sep 24 20:09:26 2009
※ [本文转录自 Electronics 看板]
作者: jfsu (水精灵) 看板: Electronics
标题: Re: [问题] 请教有关NAND flash与NOR flash的问题....
时间: Thu Sep 24 13:58:55 2009
※ 引述《CCMAKE (NNNN)》之铭言:
: 请问各位大大
: 在一个电子系统中
: NAND flash 跟 NOR flash的作用差别在哪边呢??
作用?你是说用途(application)吗?
单纯考量元件的操作方式的话,是不同,但原理都一样。
: 就我的了解
: 好像NAND flash没有办法执行程式
: 而NOR flash可以
: 所以一般会把NAND拿来当作存程式的地方
: 开机之後再经由boot loader把程式从NAND中load到DRAM里面执行程式
: 我比较不了解的地方是为什麽NOR可以执行程式而NAND不可以??
: 是因为NOR可以随机存取吗??
NADN用来作为资料储存(data storage),而NOR用来作程式储存(code storage)
NOR也有分为serail(SPI)与parallel两种界面,目前用於主机板CMOS开机,大多数是
serail flash。比起NAND,NOR可以切出小的区块,如8KB,16KB,作为boot code储存
再来,读取速度也比较快,而且可以随机存取(random access)。
再者,NOR Flash读取资料的方式与从RAM读取资料相近,只要提供资料的位址(address),
资料(data)就可以正确的读出,所以多数微处理器可以将NOR Flash当作原地执行
(Execute in place, XIP)记忆体使用,这也意味着,储存在NOR Flash上的程式不需
复制到RAM就可以直接执行。
: 那麽在DRAM中执行程式 跟在NORflash中执行程式
: 又有甚麽样的差别呢??
: 另外有个问题是关於电子系统中的controller
: CPU或是ASIC要去读取记忆体时
: 是不是必须透过controller 对记忆体下指令??
: 我的问题是 NOR flash,NAND flash,DRAM这三种记忆体在读取时
: CPU或ASIC都需要透过controller来下读取指令吗??
: 还是只有NAND flash需要 其他两种不用呢?? 原因是甚麽??
: 所谓的controller 指的是硬体 还是软体??
: 是存在於CPU中 或是存在於device中(CHIP或是各种周边)??
: 例如SD卡
: 它的内部是一颗NAND CHIP加上一个controller IC(??)
: 那麽这颗controller 的功用是甚麽呢??
因为 NAND flash的存储单元则采用串列结构,存储单元的读写是以页(page mode)和
区块(block mode)等单位来进行。这种结构最大的优点在於容量可以做得很大。
由於它的缺点在於读速度较慢,加上 I/O Bus只有 8 个,比 NOR 要少很多。
资料只能轮流传送的方式完成,速度要比 NOR flash的平行传输模式慢得多。
你所说的在SD卡里,里面最显眼的,当然就是那大大一颗的 NAND flash与旁边一颗
小一号的控制IC(Controller IC)。这颗控制IC是要确保资料的储存是安全没问题的。
简而言之,需要controller是因为要做ECC(error code correction).
NAND Cell因MLC之故,quality并不像NOR那麽好,使用过程中,数个bits的坏掉常发生
因此,此controlle是用来做错误修正用。
是可以做on chip的,但现在MCP很发达,而且为了最大化performance,因为可以
各别optimize,所以现在的趋势是分开做
上面有提过,NAND Flash 虽有汇流排结构(BUS),却没去区分 address bus 及
data bus,因为在 NAND Flash 上进行任何操作(如 read, write, erase 等),
都要透过命令( command ),而且无论 address, data, 或 command,都以同一组
I/O bus 传输。 此外, 储存在NAND flash 上的资料,在正常操作或存放下,
会随机出错,厂商都会建议搭配 ECC (Error Correcting Coding) 。
如果用memory bus来使用NAND,一般只用两根address lines(for ALE和CLE),
若是该NAND一次是16 bits来存取,方法上而言,并不是简单的送信号到位址线(
address lines),就可以读写相对应的内容,而是有一些先後程序。
另外,NAND的界面也有很多种,这里不赘述,一般标准的是使用ALE和CLE的方式。
有的电子板上有单独的NAND controller,信号不是透过NAND flash内部的界面
而是板上专门的接脚。为了要使用到该controller的好处(如ECC自动计算,booting..)
我们便会用专属界面来与NAND连接。
: 因为在电子系统的板子上
: 也会看见CPU直接跟NAND flash连接
: 这时候就没有看到有所谓的controller IC在里面
: 这是甚麽原因呢??
有些NAND flash会把controller作在里头,即所谓的内建的控制晶片,有些则否。
内建控制IC的会在资料传输、能源管理和错误更正(ECC)上会有比较好的表现。
--
你想成为下列〔後宫型〕动漫作品中的哪一位男主角?
〔A〕《纯情房东俏房客》:「长相不行、用功不行、运动不行」的
浦岛景太郎
〔B〕《Fate/stay night》:只会「构造把握、强化和投影」的半调子魔术师
卫宫士郎
〔C〕《天地无用》:误解封印後,蒙遭宇宙女难的普通高中生
征木天地
〔D〕《旋风管家》:人肉钢弹不死身+鬼畜系(误)的欠债管家
绫崎飒
〔E〕《To Heart》:心地善良,大而化之,却稍嫌懒散的
藤田浩之
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 203.66.222.12
※ 编辑: jfsu 来自: 203.66.222.12 (09/24 14:59)
1F:推 youwin0125:推 好文章该m 09/24 15:00
2F:推 rogerable:帮推 09/24 17:07
--
悍 将 神 威 震 八 方 雷 电 一 声 现 光 华
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.70.140.118