关于emmc boot的问题
现在的pad和手机很多都是从emmc口接nand flash,然后从emmc启动,我想问以下几个问题
1. 从emmc启动与传统的从nand flash启动有什么区别? 据我所知从nand flash启动不需ROM code,而我看到的从emmc启动好像需要一段ROM code代码来初始化emmc,并且实现从emmc读数据的程序, 这么做与从sd/mmc启动有什么区别和优势?
2. emmc的boot operation和alternative boot operation有什么区别?
望高手指教,谢谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
1.据我了解,三星的可以从nand flash去boot,和我之前公司的芯片,也是可以实现从nand flash boot,但是都是需要对应的ROM中的启动代码的,以实现初始化nand,并从nand中读code到ram。然后调至ram中运行。
关于mmc/sd启动比nand启动有何优势,我所知道的,好像也没啥优势。就是两种不同的启动方式而已。。。当然,如果你的mmc比nand价格便宜,这也算是一个优势,因为现在很多方案,还是很在乎成本的。
2.不懂“boot operation和alternative boot operation”是啥意思。
回复 2# crifan
谢谢你的回复。emmc上接的nand flash的确不能当ROM用,只有价格优势了。
关于boot operation和alternative boot operation 区别如下:
the difference between boot and alternative boot operation is in the way the booting can be initialized from the
host. Once the booting is initialized, the booting process remains same in both of these operations.
Boot Operation: If the CMD line is held LOW for 74 clock cycles and more after power-up or reset operation (either through CMD0 with the argument of 0xF0F0F0F0 or assertion of hardware reset for e-MMC) before the first command is issued, the slave recognizes that boot mode is being initiated and starts preparing boot data internally.
Alternate Boot Operation: After power-up or reset operation (either assertion of CMD0 with the argument of 0xF0F0F0F0 or H/W reset if it is enabled), if the host issues CMD0 with the argument of 0xFFFFFFFA after 74 clock cycles, before
CMD1 is issued or the CMD line goes low, the slave recognizes that boot mode is being initiated and starts preparing boot data internally
eMMC Flash相较NAND Flash而言,eMMC的优势比较明显;Flash Management 都是在Flash内部完成,缩短了研发时间;在eMMC4.41的标准下,可以支持SLC Partition,对Flash进行分区,模拟SLC等功能,这些功能的实现,都可以通过软体进行控制;如有兴趣,欢迎联络:胡'S,13823549616
“Flash Management 都是在Flash内部完成,缩短了研发时间”如果你指的是nand flash操作都是在内部,而外部使用起来就像一个block设备的话,那不是和LBA nand 一样了?那emmc又有何其他优势?
回复 5# crifan
Flash Management应该指的是对于读、写、校验、纠错等各种操作都由MMC内部的controller来完成,Host只需要把需要操作的数据和地址丢过来就行,其余操作都不必再关心!
所以我才问,“那不是和LBA nand 一样了?“
既然一样,所以才问“那emmc又有何其他优势?”
而你还是没有回答第二个问题,呵呵。
emmc 使用的主机接口是SDIO controller,从软件的角度来看,和普通MMC卡没有区别(除了可以操作boot区以外)
LBA nand(我没有使用过,信息是根据百度得到的~) 使用的主机接口是 nfc,从软件的角度看,比一般的nand flash 的驱动要简单的多。
emmc 与lba nand 相比我觉的有几个优势
1 物理接口简单 emmc 一般是 4个data,1个cmd ,1个 clk ,就可以了。但是nand 的物理接口稍微复杂一点,数据线,读写同步,时钟什么的。
2 调试起来的话,emmc 更加的便捷,因为emmc 可以把线引出来,可以在PC上观察数据。
回复 8# npuazm
学习了
说得很到位