阅读:2266回复:5
怎么没有讨论Flash驱动的问题?
Flash的读写和读写前的一些准备工作,不同厂家的Flash的差别等等
|
|
|
沙发#
发布于:2005-04-27 08:49
flash驱动可能是最简单的驱动了
|
|
板凳#
发布于:2005-05-18 13:33
我觉得做起来比看起来要困难啊
flash的boot块以及flash里的特殊块,该怎么处理了 |
|
地板#
发布于:2005-05-18 21:20
是啊,最简单的没做过也不会啊
|
|
|
地下室#
发布于:2005-05-30 21:44
重点是要明白Flash的特性
读取的时候特性和RAM一样 Program和Erase的时候就不一样 基本上内部存在一个硬件的状态机, default在read state.如果你想进行写的动作, 你就需要按照datasheet往特殊的地址写入一些特殊的command cycle,就能让Flash进入erase 或者是program状态。然后就可以做erase和program的动作, 然后通过polling Flash的状态寄存器就可以判断erase和program的完成状况 对于boot快, 由于他是一个block更小的区域, 在做手机的运用中喜欢用来做一个仿真的eeprom. /******************************/ 一定要注意由于Flash的这种状态机特性, 不允许在一个flash上run code,同时对其他的区域进行erase 和 program动作 除非support multi-bank |
|
5楼#
发布于:2005-06-16 11:43
简单?? 没亲自做过底层的人,伸手拿来就用的人大概觉得简单吧
相对来说,NOR FLASH的驱动简单些,NAND FLASH的就复杂点,因为NAND FLASH中都存在坏块,这就需要格式化,标记坏块的位置,然后做逻辑地址和物理地址的影射表,这部分工作说起来容易做起来要稳定可靠,可不是那么简单的事~ 特别是用单片机系统来做~~ 只不过现在ARM流行起来,这种可以上操作系统的找FLASH驱动有现成的,不用太费力气 |
|
|