这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » ads求助,关于地址映射

共3条 1/1 1 跳转至

ads求助,关于地址映射

菜鸟
2005-06-27 17:38:31     打赏

各位大侠:

我用的时s3c2410,ads1.2

依据我的理解:如果是在flash中,RO. RW .ZI三个区应该是连续存放在由0x00000000开始的区域;如果假设为了速度要求,运行时需要把这三个段的东西都搬进ram中,那么运行时,我们需要把三个段的代码都搬至预先设定的区域。

如果理解正确,是否说明在ads中设置的RO,RW 区的地址只是搬运到ram中的地址,而与flash无关。

更进一步说,如果我的RO段的代码要在flash中运行不做搬移,那我应该把RO地址设为0x00000000,如果我的RO段代码要在ram中运行,那我应该把地址设为0x30000000后的某个地址。




关键词: 求助     关于     地址     映射    

菜鸟
2005-06-27 21:42:00     打赏
2楼

再请问一下:我在看bootloader的时候,看到它代码中有一段

; for ROM image // check LOCK TIEM ldr r0, =LOADER_SRAM_BASE ; source address, rom:0x0000 0000 ldr r1, =LOADER_DRAM_BASE ; destination address ldr r2, =LOADER_SRAM_MAX_SIZE ; block size (under 1MB, 0x0001 0000), 64 KB 2 ldr r3, [r0], #4 str r3, [r1], #4 subs r2, r2, #4 bne

将地址0的代码搬运64k到目的地址去,如果上面我的理解正确,那假设我的bootloader在norflash中,开机运行0x00000000,什么时候代码调入ram中,并跳转到ram中运行,上面的这段代码怎么解释呢?

是否应该这么说,ads只是指定了一个地址范围,从0x30000000(我指定的)开始,不规定你具体怎么放,由各自的程序完成放的工作,但是程序中的目的地址跟ads中指定的必须一致


菜鸟
2005-07-05 01:55:00     打赏
3楼
以下是引用moto60000在2005-7-4 17:36:00的发言: 这句话我觉得有问题,上电后的确是从0开始的,这和ro_base的数值无关。

那你说一下你的理解,这个问题困扰我很久了


共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]