TIwilliam hill官网
直播中

吴思莹

7年用户 207经验值
私信 关注

使用SD卡启动AM335x,即可通过串口进行参数的输入,得到优化的参数配置。

本帖最后由 一只耳朵怪 于 2018-6-3 11:00 编辑

大家好,AM335x的DDR3 software leveling可以通过SD卡运行啦!
我们知道,在AM335x的设计中,如果使用的是DDR3、DDR3L,是必须要进行software leveling的。其目的在于根据当前板卡的实际布线情况,通过leveling算法优化当前的DDR3的参数配置。而针对这套算法,之前我们提供的方式略微繁琐,使用仿真器连接到板卡的JTAG口,修改GEL脚本进行初始化后,通过CCS工具将.out程序加载到AM335x上,执行参数优化算法。
现在,通过我们本地FAE的努力,已经将该算法移植到了bootloader中,也就是说你可以直接将本贴中的MLO拷贝到SD卡FAT32分区中,使用SD卡启动AM335x,即可通过串口进行参数的输入,得到优化的参数配置!这样一来,就可以避免仿真器、JTAG、CCS、改GEL脚本等一系列复杂的操作啦!
大家可以下载使用,体验一下,欢迎给出宝贵的反馈意见!
PS:目前,我们可以支持303MHz和400MHz两个频率,串口0作为调试串口,具体的使用方法可以参考User Guide。
先睹为快:

结果:

回帖(10)

吴思莹

2018-6-1 09:06:46

这个配置一定是错了:DDR3_EMIF_SDRAM_CONFIG :        0xC30
举报

王山崎

2018-6-1 09:15:56
Steven, 你好.
我们之前使用的是AM3358+DDR2,现在新作了一块板是AM3358+DDR3, micron的MT41J256M16HA-125IT.
下载了你帖子里的MLO,运行起来后minicom超级终端显示全部是乱码:

使用我们旧板上调好的MLO, 能够正常输出到超级终端,但是使用的你的MLO就会乱码?
请问你的MLO中对串口的通信设定是怎样的? 可能是什么原因导致的?
谢谢
举报

潘琳

2018-6-1 09:29:34
引用: hwjj940056201 发表于 2018-6-1 09:06
这个配置一定是错了:DDR3_EMIF_SDRAM_CONFIG :        0xC30

hi steven,
我们现在检验值可以获取正常如下:
AM335x DDR3 Software Leveling -- Version: Beta 3.0
                              -- Copyright: Texas Instruments China Local Team
 *************************** Program Start********************************
Please input the AM335x EMIF Timing Configuration:
-- AM335x Default EMIF Timing configuration (for StarterKit EVM) --
DDR3_EMIF_SDRAM_TIM_1 : 0x0888A39B
DDR3_EMIF_SDRAM_TIM_2 : 0x26337FDA
DDR3_EMIF_SDRAM_TIM_3 : 0x501F830F
DDR3_EMIF_SDRAM_CONFIG : 0x61C04AB2
Your choice:  1. Use the default one; 2. Input your own one.
Please Choose The DDR3 Frequency:  1. 303MHz; 2. 400MHz.
DDR3 Frequency is Set at 400MHz!
Please input your DDR3_EMIF_SDRAM_TIM_1 conifguration (in Hex) :
0AAAD4DB
Please input your DDR3_EMIF_SDRAM_TIM_2 conifguration (in Hex) :
266B7FDA
Please input your DDR3_EMIF_SDRAM_TIM_3 conifguration (in Hex) :
501F867F
Please input your DDR3_EMIF_SDRAM_CONFIG conifguration (in Hex) :
61C05332
Your input EMIF Timing configuration -- 
DDR3_EMIF_SDRAM_TIM_1 :         0xAAAD4DB
DDR3_EMIF_SDRAM_TIM_2 :         0x266B7FDA
DDR3_EMIF_SDRAM_TIM_3 :         0x501F867F
DDR3_EMIF_SDRAM_CONFIG :        0x61C05332
Please Enter the PHY_INVERT_CLKOUT value (0 or 1) from the spreadsheet :
0
Please Enter the Seed RD_DQS_SLAVE_RATIO Value in Hex to search the RD DQS Ratio Window :
38
Please Enter the Seed FIFO_WE_SLAVE_RATIO Value in Hex to search the RD DQS Gate Window :
94
Please Enter the Seed WR_DQS_SLAVE_RATIO Write DQS Ratio Value in Hex to search the Write DQS Ratio Window :
44
Please Enter the Seed PHY_CTRL_SLAVE_RATIO Value in Hex :
80
The ratio seeds for the DDR3 Software Leveling :
invert_clkout =         0x0
RD_DQS_RATIO_VAL =      0x38
FIFO_WE_SLAVE_RATIO =   0x94
WR_DQS_SLAVE_RATIO =    0x44
PHY_CTRL_SLAVE_RATIO =  0x80
        The Slave Ratio Search Program Values are...
***************************************************************
DATA_PHY_RD_DQS_SLAVE_RATIO is :0x3A
DATA_PHY_FIFO_WE_SLAVE_RATIO is : 0x9A
DATA_PHY_WR_DQS_SLAVE_RATIO is : 0x40
DATA_PHY_WR_DATA_SLAVE_RATIO is : 0x7E
***************************************************************
rd_dqs_range = 58
fifo_we_range = 154
wr_dqs_range = 64
wr_data_range = 126
Optimal values not reached, rerunning program with new values...
        The Slave Ratio Search Program Values are...
***************************************************************
DATA_PHY_RD_DQS_SLAVE_RATIO is :0x3A
DATA_PHY_FIFO_WE_SLAVE_RATIO is : 0x9B
DATA_PHY_WR_DQS_SLAVE_RATIO is : 0x3F
DATA_PHY_WR_DATA_SLAVE_RATIO is : 0x7B
***************************************************************
rd_dqs_range = 0
fifo_we_range = 1
wr_dqs_range = 1
wr_data_range = 3
Optimal values have been found!!
***************************************************************
DATA_PHY_RD_DQS_SLAVE_RATIO is :0x3A
DATA_PHY_FIFO_WE_SLAVE_RATIO is : 0x9B
DATA_PHY_WR_DQS_SLAVE_RATIO is : 0x3F
DATA_PHY_WR_DATA_SLAVE_RATIO is : 0x7B
***************************************************************
===== END OF TEST =====
DDR3 software leveling done!
校验为何还要事先设定好值才可以运行? 
检验出来的值跟实际设定值差别不多,需要更改过来吗?
是否有内存压力测试方面的软件?可以动态设定不同频率。
 
举报

王山崎

2018-6-1 09:44:15
引用: fengxin45 发表于 2018-6-1 09:29
hi steven,
我们现在检验值可以获取正常如下:
AM335x DDR3 Software Leveling -- Version: Beta 3.0

校验就是根据现有的值然后无限逼近最优的值,如果初始值乱设可能不一定收敛。
最好和改成计算出来的值。
内存压力测试这块需要自己改MLO来测试了,我们没有这部分代码。不要动态设置内存频率,这样不稳定,建议一个频率测完,重启,再测下一个。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分