Could not clean D-Cache - memory(Multi-ICE仿真器调试问题)

在使用Multi-ICE仿真器调试三星S3C2440时,可能会遇到'Could not clean D-Cache'警告。此问题源于配置中的Cache clean code地址设置不当,可能导致内存不一致。解决方法包括更改Cache clean code地址到RAM区域,确保MMU页描述符允许读写。如果不解决,会导致Data Cache未被清理,写入数据仅存储在缓存中,可能影响软件断点和处理器重启代码的执行。
摘要由CSDN通过智能技术生成

在用“Multi-ICE仿真器”调试三星S3C2440开发板时,

可能会遇到如下问题,这里将这个问题发生的原因与解决方法做个记录。

—————————————————————————————

Could not clean D-Cache - memory may appear incoherent

in writeback regions.

—————————————————————————————

 问题简述:目标设备有独立的数据缓存和指令缓存,(比如ARM920T

体系结构的芯片),在“Multi-ICE”的配置对话框中,有一个叫做

“Cache clean code address”的设置,

(看Processor Settings Tab选项卡),在这里需要指定一块存储区域

用来存储和执行“cache cleaning code” 。“Multi-ICE”需要下载

并执行这段“relocatable”代码。假如这段代码不能够正确下载,

就会出现如上警告信息。

英文原文:

 ——————————————————————————————————

For targets that have separate data and instruction caches

(such as the ARM920T), Multi-ICE uses the Cache clean code

address setting in the Multi-ICE configuration dialog

(see Processor Settings Tab) to specify memory it can use to store

 and execute the cache cleaning code. Multi-ICE downloads and

runs relocatable code into this memory the first time it is required.

If it cannot download the code correctly, it displays this warning

message.

——————————————————————————————————

 产生原因: Multi-ICE can fail to download the code to the target

for one or more of the following reasons:

• There is no memory at the Cache clean code address

• The memory at Cache clean code address is in read only memory

 (either true ROM or memory that requires a special write procedure,

such as EEPROM) • There is an active Memory Management Unit (MMU)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值