为什么在Cyclone V SoC上禁用缓存时,U-Boot POST DDR3 RAM测试速度更快

时间:2018-06-15 11:13:22

标签: caching ram u-boot intel-fpga cortex-a

我们的定制电路板采用Altera / Intel Cyclone V SoC(ARM Cortex A9单核)。 我们运行U-Boot附带的POST DDR3 RAM测试。

我们的RAM配置为1GB,32Bit总线宽度@ 400MHz(2x Micron MT41J256M16)

我用U-Boots get_timer()函数做了时间测量。 我从memory_post_test()的入口到退出时间保证了时间。

在我们的初始配置中,DCACHE已开启。

5308 ms

接下来我在构建期间关闭了DCACHE(#define CONFIG_SYS_DCACHE_OFF)

3503 ms

最后我在构建期间将其重新打开,但在运行时在memory_post_test()中将其关闭 通过dcache_disable(),v7_outer_cache_disable()和invalidate_dcache_all()

1289 ms

我真的无法理解这些暗示。

我的期望:

delta_t_cache_on< delta_t_cache_off_buildtime< = delta_t_cache_off_runtime

测量结果:

delta_t_cache_off_runtime< delta_t_cache_off_buildtime< delta_t_cache_on

为什么在Cyclone V SoC上禁用缓存时,U-Boot POST DDR3 RAM测试会更快?

为什么在运行时和构建时禁用DCACHE之间存在很大的时间差异?

致以最诚挚的问候,

基督教

0 个答案:

没有答案