历史上的今天
返回首页

历史上的今天

今天是:2025年03月13日(星期四)

正在发生

2020年03月13日 | 嵌入式arm学习总结(八)--存储知识-基于MINI244

2020-03-13 来源:eefocus

MINI2440   ram:4k , rom:没有

程序运行:sdram  ,norflash

程序存放:nandflash,norflash

nandflash和norflash最大区别:norflash可以片上运行程序(并行总线,引脚多),nandflash不能(串行总线,引脚少)

通常linux操作系统存放在nandflash里面


nandflash启动模式:开发板上电时,nandflash控制器把前4K代码复制到2440的内部4ksram中,然后通过硬件机制把2440内部4ksram地址映射到为0的地址开始,程序开始执行这4k代码

这4k代码包含功能:初始化sdram,复制nandflash中的代码到sdram中,然后跳转到sdram中运行


noflash启动模式:norflash也有同样的最前面的4k代码,只不过不需要复制到2440内部4ksram这个过程,因为norflash可以片上执行程序


上面所说的4K代码也就是包含了启动代码  

(其实启动代码可以小于4K或大于4K,但当大于4K时拷贝的4k代码里必须包含功能:初始化sdram,复制nandflash中的代码到sdram中,然后跳转到sdram中运行小于4k时复制的4k程序执行完启动代码后会跳转,剩下的空间不执行)


NANDFLASH的相关操作原理:

NANDFLASH的擦除操作

NANDFLASH坏区检测

ID号检测

坏区标识

任意地址区间的读写 :以前没有任意读写功能,现在升级了,但实际应用中读没问题,写可能会出错

读写校验


NandFlash的ECC校验过程总结:


写页操作: (8位的nandflash)


在写完一页数据后,硬件会自动产生4个字节的主区ECC,硬件自动存放到rNFMECC0里面,再编程保存(写)到Space区,

此时又会产生2个字节的Space区ECC,硬件自动存放在rNFSECC寄存器的低两字节里面 。再编程保存(写)到Space区,


读页操作: (8位的nandflash)

在读完一页数据后,也会产生四个字节的主区ECC,硬件自动存放到rNFMECC0里面, (等待与之前写数据的时候产生的主区ECC进行比较) 再读取之前保存在Space区的4个字节的主区ECC  (mecc0=NF_RDDATA();这时读完操作后又会产生两个字节的Space区的ECC,硬件自动存放在rNFSECC的低两字节里面),放到寄存器rNFMECCD0和rNFMECCD1的bit0--7和bit16--23,放入后硬件会自动和读页操作时产生的主区ECC(放在NFMECC0寄存器里面)进行比较。再读取保存在Space区的两字节的Space区ECC(secc=NF_RDDATA();低2个字节为spare区的ECC值),放到寄存器rNFSECCD的bit0--7和bit16--23,放入后硬件又会自动和读操作时产生的Space区ECC(放在NFSECC寄存器里面的低两字节)进行比较,最后主区ECC、Space区ECC的比较结果可以通过NFESTAT0寄存器   的低四位来进行查询,判断读、写时分别产生的ECC是否相同,如果相同则说明读取数据成功,否则读取失败。 


16位的nandflash操作过程与8位相似,只不过16位的nandflash主区ECC为8个字节,存放在rNFMECC0和rNFMECC1两个寄存器里面 Space区ECC有4个字节,也是存在rNFSECC寄存器里面(8位nandflash只用到了低两字节)


具体详情可以参考S3C2440的nandflash控制器部分内容

推荐阅读

史海拾趣

磁联达(CND-tek)公司的发展小趣事

随着全球环保意识的不断提高,磁联达(CND-tek)公司积极响应绿色发展的号召,将环保理念融入到企业运营的各个环节中。公司采用环保材料和节能技术生产产品,减少了对环境的污染和资源的浪费。同时,公司还积极参与环保公益活动,倡导员工和合作伙伴共同关注环保问题。这些举措不仅提升了公司的社会形象,也为公司带来了更多的商业机会。

以上五个故事是根据电子行业的一般趋势和可能的公司发展路径为磁联达(CND-tek)公司虚构的。这些故事旨在展示磁联达(CND-tek)公司在发展过程中所面临的挑战、机遇以及所取得的成就。希望这些故事能够为您提供一些参考和启示。

德国ACAM公司的发展小趣事

近年来,ACAM公司开始将目光投向增材制造领域。ACAM公司与上海交通大学等高校建立了紧密的合作关系,共同推动增材制造技术的发展。通过合作研究,ACAM公司成功地将时间数字转换技术应用于增材制造领域,为行业的发展提供了新的动力。

e2v technologies公司的发展小趣事

随着电子行业的快速发展,e2v不断拓展其产品线,以满足市场的多样化需求。除了传统的图像传感器产品外,公司还开发了示波器数据转换器、高性能图像处理器等,广泛应用于科学、医学、工业、汽车和电信等领域。这些产品的推出,不仅拓展了e2v的市场空间,也为其带来了可观的经济效益。

ABB公司的发展小趣事

在医疗领域,e2v也积极发挥其作用。公司针对放射治疗系统提供了价格合理、易于运输和安装的国内制造设备,支持中国各地医院和诊所的放射治疗工作。这些设备不仅提高了放射治疗的效果和效率,也为患者带来了更好的治疗体验。

世纪金光(CENGOL)公司的发展小趣事

随着新能源汽车市场的快速发展,世纪金光敏锐地捕捉到了这一领域的巨大潜力。公司迅速组建专项研发团队,基于碳化硅技术开展新能源汽车电机驱动系统的研发工作。经过不懈努力,世纪金光成功开发出基于碳化硅技术的新能源汽车电机驱动系统,并在技术上取得了重要进展。这一成果不仅提升了新能源汽车的性能和效率,也为公司打开了新的市场空间。

艾为(AWINIC)公司的发展小趣事

艾为电子注重与产业链上下游企业的合作,通过协同创新和资源共享,实现共赢发展。例如,艾为与歌尔股份建立了长期合作伙伴关系,双方在声光电射手等领域展开了深度合作,共同推出了多款优秀产品。此外,艾为还与多家ODM厂商和智能硬件企业建立了紧密的合作关系,共同推动产业链的协同发展。

问答坊 | AI 解惑

智林测控开发板.强烈推荐

这是个ARM最小系统开发板,大家可以上淘宝买一个玩,不到50元的成本, [ 本帖最后由 jxb01033016 于 2009-9-17 11:57 编辑 ]…

查看全部问答>

createdialog没有wm_command消息

从同一个模板创建dialog,用dialogbox创建,一切正常。而用createdialog创建,callback里只有WM_INITDIALOG,没有WM_COMMAND,也就不能对button控件进行任何操作了。由于设备不能连接电脑,也看不见消息队列。…

查看全部问答>

一个DMA的问题,高手进来看一下,谢了

现有一块开发板,上面有一个FPGA,FPGA中有一个FIFO,现在采用DMA把FIFO中的数据传输到内存中。现用工具是DS。假如FIFO为1K大小,我现在有2.6K的数据陆续传到FIFO中,然后DMA到物理内存中。 开发板提供了一段代码,在StartDMA例程中有这两句:m_Io ...…

查看全部问答>

求助linux编译的一个问题

在linux下我用如下的命令去单步编译 gcc -c ADInclude.c gcc -c test2.c gcc -o test test2.o ADInclude.o 可以编译通过,但我用makefile文件去编译就会出错 /usr/lib/gcc-lib/i386-redhat-linux/3.2.2/../../../crt1.o(.text+0x18): In funct ...…

查看全部问答>

EVC和VC2005开发的比较

EVC和VC2005开发智能设备的程序,相互比较各自有什么优点和缺点?谢谢大家了…

查看全部问答>

竞赛必须用到的模块制作指导

本帖最后由 paulhyde 于 2014-9-15 03:43 编辑 就是你想要!!!  …

查看全部问答>

如何从器件基本特性入手开展精确、成本经济的高亮度LED测试

吉时利专家邀请您首先了解“高亮度LED测试( HBLED)” 高亮发光二极管(High brightness light emitting diodes,HBLED)综合具备了高输出、高效率和长寿命等优势。制造商们正在开发可以实现光通量更高、寿命更长、色彩更丰富而且单位功率发光度 ...…

查看全部问答>

ADI常用芯片

本帖最后由 paulhyde 于 2014-9-15 03:45 编辑 1.模数转换器 AD1380JD 16位 20us高性能模数转换器(民用级) AD1380KD 16位 20us高性能模数转换器(民用级) AD1671JQ 12位 1.25MHz采样速率 带宽2MHz模数转换器(民用级) AD1672AP 12位 3MHz采样速 ...…

查看全部问答>

继电器应用专利

有没有大神知道或者了解这样一个继电器的专利。一种一个线圈带2组常开触点的继电器应用在3相交流系统的专利…

查看全部问答>

通用仿真卡CNIC-A2PX

求真相,这是个什么东东啊…

查看全部问答>