zoukankan      html  css  js  c++  java
  • STM32F429驱动SDRAM

    1 FMC

      STM32F429以外的控制器中,只有FSMC(可变静态存储控制器),不能驱动SDRAM这样的动态存储器,因为驱动SDRAM时需要定时刷新。STM32F429的FMC才支持该功能,且只支持普通的SDRAM,不支持DDR类型的SDRAM。

    FMC可以用于驱动SRAM、SDRAM、NOR FLASH以及NAND FLASH类型的存储器。

    1.1 通信引脚

    SDRAM引脚 FMC引脚 说明
    CLK FMC_SDCLK 同步时钟信号
    CKE FMC_SDCKE1

    时钟使能信号

    CS FMC_SDNE1 片选信号
    CAS FMC_NCAS 列地址选通
    RAS FMC_NRAS 行地址选通
    WE FMC_SDNWE 写使能
    DQM[0:1] FMC_NBL[0:1] 数据输入/输出掩码信号
    BA[0:1] FMC_A[14:15] SDRAM芯片内部Bank地址输入
    A[0:11] FMC_A[0:11] 地址输入
    DQ[0:15] FMC_D[0:15] 数据输入/输出

    CKE和CS作用:

    FMC_SDCKE0,FMC_SDCLK0:FMC映射的SDRAM的存储区域Bank1

    FMC_SDCKE1,FMC_SDCLK1:FMC映射的SDRAM的存储区域Bank2

    1.2 地址映射

    FMC_SDCKE0,FMC_SDCLK0:FMC映射的SDRAM的存储区域Bank1(0xC000 0000~0xCFFF FFFF)

    FMC_SDCKE1,FMC_SDCLK1:FMC映射的SDRAM的存储区域Bank2(0xD000 0000~0xDFFF FFFF)

    注意:这里的Bank和上面所讲的SDRAM芯片内部存储区域Bank1~4是不一样的概念。

    2 SDRAM控制原理

    2.1 SDRAM信号线

     2.2 SDRAM地址线

      SDRAM包含有“A”以及“BA”两类地址线:

    A:行(Row)与列(Column)共用的地址线

    BA:独立的用于指定SDRAM芯片内部存储阵列号(Bank)

       通讯时,当RAS=0,则“行地址选通器”被选通,地址线A[11:0]表示的地址会被输入到“行地址译码器”中,行地址被选中;同时地址线BA[1:0]表示的Bank也被锁存,选中要操作的Bank号;接着CAS=0,则“列地址选通器”被选通,地址线A[11:0]表示的地址会被输入到“列地址译码及锁存器”中作为列地址,完成寻址过程。

    2.3 SDRAM数据线

      IS45s16400J存储阵列的“数据宽度”是16位,但在实际应用中也可能会以8位宽度存取数据,这时我们只需要DQ[7:0]表示数据,而DQ[15:8]数据线表示的数据必须忽略。所以数据输入输出时,还会使用DQM[1:0]来配合,每根DQM线对应8位数据。如DQM0=0,DQM1=1时,数据线DQ[7:0]表示数据有效,而DQ[15:8]表示数据无效。

    2.4 SDRAM容量计算

      已知IS45s16400J芯片行地址12根线,列地址8根,4个Bank,位宽16bit。

    可以计算出:

    SDRAM的总单元数 =(2^行地址选择线)*(2^列地址选择线)*Bank选择线=2^(12+8)*4=2^10*4=1M bits*4

    SDRAM总容量 = 单元数*位宽=1M bits*4*16=64M bits = 8MB(Bytes)

    2.5 SDRAM的命令

    (1)命令禁止

    (2)空操作

    (3)行有效

    (4)列读写

    (5)预充电

    (6)刷新

    (7)加载模式寄存器

    2.6 SDRAM初始化流程

    (1)给SDRAM上电,并提供稳定的时钟,至少100us

    (2)发送“空操作”(NOP)命令

    (3)发送“预充电”(PRECHARGE)命令,控制所有Bank进行预充电,并等待tPR时间

    (4)发送至少2个“自动刷新”(AUTO REFRESH)命令,每个命令后等待tRFC时间

    (5)发送“加载模式寄存器”(LOAD MODE REGISTER)命令,配置SDRAM工作参数,并等待tMRD时间

    (6)初始化完成,开始读写数据。

    2.7 SDRAM的读写流程

     

  • 相关阅读:
    cf D. Vessels
    cf C. Hamburgers
    zoj 3758 Singles' Day
    zoj 3777 Problem Arrangement
    zoj 3778 Talented Chef
    hdu 5087 Revenge of LIS II
    zoj 3785 What day is that day?
    zoj 3787 Access System
    判断给定图是否存在合法拓扑排序
    树-堆结构练习——合并果子之哈夫曼树
  • 原文地址:https://www.cnblogs.com/Mike2019/p/11981150.html
Copyright © 2011-2022 走看看