Exynos4412裸机程序之DDR3初始化流程

发布者:绿意盎然最新更新时间:2018-10-14 来源: eefocus关键字:Exynos4412  裸机程序  DDR3  初始化流程 手机看文章 扫描二维码
随时随地手机看文章

在三星提供的数据手册《SEC_Exynos4412_Users Manual_Ver.1.00.00》的第1046页提供给了一段关于LPDDR2-S4的初始化步骤,LPDDR2表示低功耗DDR2,DDR3的初始化过程应和这个一样,我们就按这个过程来初始化DDR3:

DDR 大体初始化流程

DDR 大体初始化流程

上图告诉我们如何初始化DDR2类型的DRAM,主要分为:

初始化PHY DLL

初始化控制寄存器

初始化DRAM

三大步骤,具体细分共21个小步骤下面我们就从数据手册提供的步骤开始熟悉一下流程:

LPDDR2初始化步骤

LPDDR2初始化步骤

LPDDR2初始化步骤

LPDDR2初始化步骤

由上图所知,步骤如下:

18.3.1 LPDDR2-S4

Use the sequence given here to initialize LPDDR2 devices. Unlessspecified otherwise, these steps are

mandatory. Note that the memory CK/CKn must be less than or equal to50 MHz before you initialize the

LPDDR2-S4 device.

1.  DMC must assert and holdCKE to a logic low level to provide stable power for memory device and thenapply

stable clock.

2.  Set thePhyControl0.ctrl_start_point and PhyControl0.ctrl_inc bit-fields to a correctvalue according to clock

frequency. Set the PhyControl0.ctrl_dll_on bit-field to"1" to activate the PHY DLL.

3.  DQS cleaning: Set thePhyControl1.ctrl_shiftc and PhyControl1.ctrl_offsetc bit-fields to theappropriate value

according to clock frequency, board delay, and memory tDQSCKparameter.

4.  Set thePhyControl0.ctrl_start bit-field to "1".

5.  Set the ConControl. Atthis moment, an auto-refresh counter should be disabled.

6.  Set the MemControl. Atthis moment, all power down modes should be disabled.

7.  Set the MemConfig0register. When there are two external memory chips, set the MemConfig1register.

8.  Set the PrechConfig andPwrdnConfig registers.

9.  Set the TimingAref,TimingRow, TimingData, and TimingPower registers according to memory AC

parameters.

10.  Set the QosControl0 to 15and QosConfig0 to 15 registers when a certain bus master requires QoS scheme.

11.  Wait for thePhyStatus0.ctrl_locked bit-fields to change to "1". Verify whetherPHY DLL is locked.

PHY DLL compensates the changes of delay amount that pressure,volume, and temperature variation

causes during memory operation. Therefore, you should not power offPHY DLL for reliable operation.

It can be in power-off mode except when it runs at low frequency.When you use the power-off mode,

set the PhyControl0.ctrl_force bit-field to the correct valueaccording to the PhyStatus0.ctrl_lock_value[9:2]

bit-field for fix delay amount. Clear the PhyControl0.ctrl_dll_onbit-field to turn off PHY DLL.

12.  Set thePhyControl1.fp_resync bit-field to "1" to update DLL information.

13.  Confirm that Clock Enable(CKE) is in a logic low level at least 100ns after power on.

14.  Issue a NOP command byusing the DirectCmd register to assert and hold CKE to a logic high level.

15.  Wait for a minimum of 200s.

16.  Issue a MRS command byusing the DirectCmd register to reset memory devices and program the operating

parameters.

17.  Wait for minimum of 1 s.

18.  Issue a MRR command byusing the DirectCmd register to poll the DAI bit of the MRStatus register.

This is to know whether or not Device Auto-Initialization iscomplete.

19.  If there are two externalmemory chips, execute step 14 to 19 for chip1 memory device.

20.  Set the ConControl toturn on an auto-refresh counter.

21.  Set MemControl registerwhen you require power-down modes.

翻译上面的步骤:

1、DMC功能必须设置,并且要保持CKE为低电平,以便可以提供稳定的电源和时钟给DDR

2、根据时钟频率设置PhyControl0.ctrl_start_point 和PhyControl0.ctrl_inc bit-fields,并且设置PhyControl0.ctrl_dll_on bit-field 为 "1" 已启动PHY DLL。

3、DQS 清除,根据时钟频率、板子延时和芯片的tDQSCK参数设置PhyControl1.ctrl_shiftc 和PhyControl1.ctrl_offsetcbit-fields。

4、设置 PhyControl0.ctrl_start bit-field 为"1"。

5、设置ConControl,此时,不能使能自动刷新计数器(auto-refresh counter )。

6. 设置MemControl,此时,所有的power down模式应关闭。

7、设置MemConfig0 寄存器,当外面有两片存储芯片时,设置MemConfig1寄存器。

8、设置 PrechConfig和 PwrdnConfig寄存器。

9、根据DDR3的 AC参数设置TimingAref, TimingRow, TimingData, 和 TimingPower寄存器。

10、当总线主控者需要QoS时序参数时,设置QosControl0 到15寄存器和QosConfig0 到 15寄存器。

11、等待 PhyStatus0.ctrl_locked bit-fields 变成 "1",以确定 PHY DLL 是否锁定。PHY DLL 可以补偿压力、体积?和温度等环境的变化,因为在芯片工作期间,我们不能关闭了PHY DLL的电源,只有当他在低的时钟频率时才可以切换到Power-off 模式,当我们用power-off 模式,参考PhyStatus0.ctrl_lock_value[9:2]的延时参数来设置PhyControl0.ctrl_forcebit-field,清楚PhyControl0.ctrl_dll_on bit-field来关闭 PHY DLL。

12、设置PhyControl1.fp_resync bit-field 为 "1" 来更新 DLL的设置。

13、确保在电源上电后至少保持Clock Enable (CKE)在低电平100ns。

14、用DirectCmd 寄存器来执行一条NOP指令且保持CKE 为高电平。

15、至少等待200us。

16、发出MRS指令来重新设置存储芯片的操作参数。

17、至少等待1us。

18、用MRR指令来查询MRStatus的寄存器的DAI位,用这们来确定自动初始化过程是否完成。

19、如果外部有别的存储芯片,重复执行14到19步来设置芯片1。

20、设置ConControl来启动auto-refresh counter.

21、当我们要进行power-down模式,设置MemControl寄存器。

按照上边的步骤来设置就可以完成DDR的初始化,下一节我们进行Tiny4412开发板的DDR操作,将代码重定位到DDR SDRAM。


关键字:Exynos4412  裸机程序  DDR3  初始化流程 引用地址:Exynos4412裸机程序之DDR3初始化流程

上一篇:Exynos4412裸机之DDR-SDRAM中重定位
下一篇:Exynos4412裸机程序之DDR工作原理与时序(二)

推荐阅读最新更新时间:2024-03-16 16:16

国产内存真的来了:紫光可提供DDR3、DDR4内存芯片
  还记得前段时间闹得沸沸扬扬的国产 DDR4 芯片的传闻吗?当时有消息称 紫光 旗下的半导体公司量产了国内首个 DDR4 内存,只是这事疑点重重,最后 紫光 官方也辟谣称目前并没有 DDR4 内存量产,相关产品正在研发中。下面就随网络通信小编一起来了解一下相关内容吧。   国产内存真的来了:紫光可提供DDR3、DDR4内存芯片   现在国产DDR4内存又来了,涉及的还是 紫光 旗下的西安国芯半导体,其官网页面明确提到了可以长期供应DDR3、DDR4在内的DRAM芯片和裸晶圆。   这次涉及国产DDR4的还是紫光集团的子公司紫光国芯,旗下拥有西安紫光国芯、深圳国微、紫光同创等公司。根据官网介绍,“紫光国芯是紫光集团旗下半导体
[网络通信]
[ARM裸机程序][2]TQ2440、ADS1.2、JLINK建立集成开发环境
简介 基本原理 通过JLINK将程序下载到SDRAM(0x30000000)中运行。 硬件环境 TQ2440通过JLINK链接到计算机上; NOR FLASH/NAND FLASH启动模式随意。 软件环境 建议使用WIN XP系统,可以使用vmware安装虚拟机; 安装ADS1.2集成开发环境; 安装JINK驱动; 需要将TQ2440所带的Flash.csv文件拷贝到JLINK安装目录下。 C:Program Files (x86)SEGGERJLinkARM_V408iETCJFlash 汇编程序模板 先使用一个HELLO WROLD程序,测试该环境的有效性: AREA ARM,COD
[单片机]
[ARM<font color='red'>裸机</font><font color='red'>程序</font>][2]TQ2440、ADS1.2、JLINK建立集成开发环境
重点布局利基市场,兆易创新推出首款DDR3L产品
兆易创新DDR3L GDPxxxLM系列 产品采用长鑫存储(CXMT)先进制程,提供2Gb/4Gb两种容量选择,可在满足消费电子市场强劲需求的同时,兼顾工业及汽车市场应用 中国北京(2022年9月8日)—业界领先的半导体器件供应商兆易创新GigaDevice宣布,推出公司首款自研DDR3L产品—— GDPxxxLM系列 ,提供 2Gb/4Gb 不同容量选择,实现了从设计、流片,到封测、验证的全流程自主可控,在满足消费类市场强劲需求的同时,兼顾工业及汽车市场应用,可为国产自主供应生态圈的发展构建提供强有力的支撑。 近年来, 智能汽车与智慧工厂的布局正在提速,AI、物联网等消费性电子产品蓬勃发展,以及新兴应用层出不穷,这
[嵌入式]
重点布局利基市场,兆易创新推出首款DDR3L产品
IDT 推出 DDR3 内存模块温度传感器
拥有模拟和数字领域的优势技术、提供领先的混合信号半导体解决方案的供应商 IDT® 公司(Integrated Device Technology, Inc.; NASDAQ: IDTI) 推出针对 DDR2 和 DDR3 内存模块、固态硬盘 (SSD) 和电脑主板的低功耗、高精度温度传感器产品系列。这些新器件进一步补充了 IDT 的 PCI Express®、信号集成、闪存控制器、电源管理和时钟产品,从而提供更加丰富的应用优化型企业计算解决方案。 这些数字热传感器支持 3.3V 和较低功耗的 2.5V SM-Bus 和 I2C 接口,可提高系统的功效,并提高与现有和新兴串行总线控制器的兼容性。为了进一步节省能源,在临界模
[传感器]
FPGA豪门Xilinx暗示对手Altera放弃65纳米争夺战
   “种种迹象表明,我们的竞争对手已经放弃65纳米,只是在空谈45纳米”,Xilinx亚太区市场行销董事郑馨南说。在日前Xilinx举行的一次新春媒体见面会上,郑直言Xilinx在65纳米的产品上已领先竞争对手18个月,对手则迟迟不能量产,反而转向高谈面前只是镜中月水中花的45纳米产品。   众所周知,在FPGA领域,与Xilinx展开激烈争夺的是Altera。目前在工艺制程上,双方正展现出不同的宣传方向,Xilinx强调65纳米产品已量产,而Altera则高调介绍更领先的45纳米。郑对电子工程世界表示,对于客户来说,最重要的是已经可以拿到手的产品,而非实验室中的研究。   当电子工程世界向Altera求证此事时,这位负责人表
[焦点新闻]
FPGA豪门Xilinx暗示对手Altera放弃65纳米争夺战
DDR3存储器接口控制器IP核在视频数据处理中的应用
  DDR3存储器系统可以大大提升各种数据处理应用的性能。然而,和过去几代(DDR和DDR2)器件相比,DDR3存储器器件有了一些新的要求。为了充分利用和发挥DDR3存储器的优点,使用一个高效且易于使用的DDR3存储器接口控制器是非常重要的。视屏处理应用就是一个很好的示例,说明了DDR3存储器系统的主要需求以及在类似数据流处理系统中DDR3接口所需的特性。   视频处理系统将对于数据带宽的要求推高到了极致:系统可以处理越多的数据,就具有越高的性价比。视频聚合器和路由器可并行处理多个视频流,因此对于匹配数据处理能力和视频带宽的需求就成为了设计的一大挑战。FPGA可通过在单个FPGA中实现多个视频处理器来提供强大的处理能力。那么现在的挑
[嵌入式]
Exynos4412裸机程序之UART收发数据
Exynos4412 UART 的特性 Exynos4412 中UART,有4 个独立的通道,每个通道都可以工作于中断模式或DMA 模式,即 UART 可以发出中断或 DMA 请求以便在UART 、CPU 间传输数据。UART 由波特率发生器、发送器、接收器和控制逻辑组成。 使用系统时钟时,Exynos4412 的 UART 波特率可以达到 4Mbps 。波特率可以通过编程进行 。 Exynos4412 UART 的通道 0有 256 字节的发送 FIFO 和 256 字节的接收FIFO ;通道 1、4有 64 字节的发送 FIFO 和 64 字节的接收FIFO;通道 2、3有 16 字节的发送FIFO 和 16 字节 的接收 F
[单片机]
<font color='red'>Exynos4412</font><font color='red'>裸机</font><font color='red'>程序</font>之UART收发数据
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved