zoukankan      html  css  js  c++  java
  • K9F2G08U0C NAND FLASH 的地址分析

    1. 计算物理地址

        K9F2G08U0C是samsun出产的FLASH,容量为256MB

        页--Page: (2K + 64)Byte
        块--Block: (128K + 4K)Byte

        128 / 2 = 64 Page

        256M / 128 K  = 2048 Block

        现在以第25块的30页中的24byte为例

           物理地址 = 块大小×块号 + 页大小×页号 + 页内地址

                     = 128K x 25 + 2K x 30 + 24B

                     = 3338264(10)

                     = 32F018 (16)

      1. 如图
      2. 计算我们需要发出的地址
      3. 每页有2048字节,需要2^11 = 2048,既需要11位地址

        每块有64页,需要2^6 = 64,既需要6位地址

        芯片一共有2048块,需要需要2^11 = 2048,既需要11位地址

        0x32F018 = 0011 0010 1111 0000 0001 1000

        由上图可得到实际发送的数据

        1st: A7  - A0  =  0001 1000

        2nd:A10  - A8  =  0000 0000  (A11没用到)

        3rd:A19  - A12 =  0010 1111

        4th:A27  - A20 =  0000 0011

        5th:A28 = 0000 0000

        注:*L 需要写入0

        Code:

        int i;

        volatile unsigned char *p = (volatile unsigned char *)&s3c2440_nand->NFADDR;

        *p = addr & 0xFF;        // 1

        for(i=0; i<10; i++);

        *p = (addr>>12) & 0xFF;  // 2

        for(i=0; i<10; i++);

        *p = (addr>>12) & 0xFF;  // 3

        for(i=0; i<10; i++);

        *p = (addr>>20) & 0xFF;  // 4

        for(i=0; i<10; i++);

        *p = (addr>>28) & 0xFF;  // 5

            for(i=0; i<10; i++);

  • 相关阅读:
    可搜索的下拉框
    Vue 父组件调用子组件的方法
    vue中异步函数async和await的用法
    用配置文件的方法发送axios请求
    vue中 localStorage的使用方法(详解)
    下拉框 组件的使用
    遇到不懂的记录
    做测试平台可能会用到的东西
    下拉框 v-for循环拿值的方法
    ant 自定义遮罩
  • 原文地址:https://www.cnblogs.com/yddeboke/p/6784632.html
Copyright © 2011-2022 走看看