1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
使用CCS5.4 对EVMDM8168 DDR2 进行测试,测试结果为
第一次测试 Error at 8d033180 FAIL... error code 32... quitting 第二次测试 Error at 82b8ccac FAIL... error code 32... quitting 第三次测试 Error at b80b7058 FAIL... error code 32... quitting DDR2只有0x40000000这么大,为何会在上述地址出错?下面是测试代码。 Int16 ddr_test( ) [ Int16 errors = 0; Uint32 ddr_base; Uint32 ddr_size; /* ---------------------------------------------------------------- * * Quick Test * * ---------------------------------------------------------------- */ ddr_base = DDR_BASE_0; ddr_size = 0x1000; // 0x20000000; Full DDR2 memory range if ( meminvaddr32( ddr_base, ddr_size ) ) errors += 0xff; if (errors) return errors; /* ---------------------------------------------------------------- * * Data Line Test * * ---------------------------------------------------------------- */ ddr_base = DDR_BASE_0; ddr_size = 0x010000; // Partial memory range if ( memfill32( ddr_base, ddr_size, 0xffffffff ) ) errors += 0x01; if ( memfill32( ddr_base, ddr_size, 0xaaaaaaaa ) ) errors += 0x02; if ( memfill32( ddr_base, ddr_size, 0x55555555 ) ) errors += 0x04; if ( memfill32( ddr_base, ddr_size, 0x00000000 ) ) errors += 0x08; if (errors) return errors; /* ---------------------------------------------------------------- * * Address Line Test * * ---------------------------------------------------------------- */ /* Testing all DDR */ ddr_base = DDR_BASE_0; ddr_size = 0x40000000; // Full DDR2 memory range if ( meminvaddr32( ddr_base, ddr_size ) )//这个地方进去测试就出现了错误,前面一切正常pass errors += 0x20; return errors; ] |
|
相关推荐
6个回答
|
|
在8168手册的Table 2-26. L3 Memory Map 里面有写到DDR的地址空间的,所以这个应该没问题。
你是拿原装的EVM在做测试,那不应该不pass吧。。。 你直接在CCS的memory browser 窗口去改报错的地址上的值,能成功吗? |
|
|
|
sunsiyi92 发表于 2018-6-21 12:00 谢谢Eason Wang工程师的回复! 事实是这块板子启动不起来了,估计是内存条出问题了,我按照您说的方法试一下,谢谢! 祝周末愉快! |
|
|
|
这块板子启动不起来的原因,正是因为你的DDR内存访问出错啊。 整个原因是这样的: 你的DDR内存条有问题了或者你的DDR设计有问题了 导致了 CCS下的DDR测试没有通过 导致了后续的系统起来肯定会有问题啊,因为内存时刻都要用。 根本原因是DDR内存条的问题吗? 我们也出现了同样的问题,原因在排查中,我们已经换了内存芯片颗粒,仍然出现相同的问题。 我们第一版没有问题,采用的是版本1的8168芯片,现在换成版本3的芯片了,怀疑是时序配置问题。 |
|
|
|
sunsiyi92 发表于 2018-6-21 12:00 我们的测试和上同学出现同样的问题: 芯片版本是2.1的DM8168芯片 测试代码和上述同学相同。ccs环境是5.4。 在版本1.1的芯片上,测试通过。但2.1测试不通过。 详细现象是: 写数据能够写入正确,但是回读的时候,发现最低位字节出错。 怀疑点:外部链接的DDR2芯片颗粒是相同的,只有主芯片不同,可能是时序需要重新配置?但是现在还没有明确的资料说两个版本的芯片对DDr的配置有不同 |
|
|
|
http://processors.wiki.ti.com/index.php/File:DM816x_C6A816x_AM389x_EMIF4_Register_Settings.zip 很可能是时序的问题。 你之前用的DDR颗粒,是否也针对性的做过时序的修改? |
|
|
|
sunsiyi92 发表于 2018-6-21 12:53 谢谢,谢谢,根据ti提供的DDR的测试脚本,重新计算了phy的参数配置,可正确访问DDR。看来DM8168的不同版本的主芯片,DDR的访问时序是不同的。 |
|
|
|
只有小组成员才能发言,加入小组>>
336 浏览 1 评论
529 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
774 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
651 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1130 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
58浏览 29评论
147浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
252浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
202浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
59浏览 13评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 13:18 , Processed in 1.008085 second(s), Total 87, Slave 71 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号