charlie yang wrote:
> when initializing the ram, i use the content offset to 0x100 in hello.hex
> and cut the no useful information before address 0x100 ,which all is zero.
>
This was probably a mistake -- now the instructions that should be at
0x100 are at 0x000:
> In simulation, Ithe pc value (equal to wb_ss_adr_i) vs wb_ss_dat_o is:
> pc dat_o
> 0x000 15000000
> 0x100 9e000000
> 0x104 9e200000
> 0x108 9e400000
QED: you should have a NOP (i.e., 0x15000000) at 0x100, a NOP at 0x104,
etc. (q.v. the reset.S you posted previously).
>
> here is my chopped hello.hex:
> :2000000015000000150000009C4000009C6000009C8000009CA000009CC
> 000009CE00000AE
> :200020009D0000009D2000009D4000009D6000009D8000009DA000009DC
> 000009DE0000058
> :200040009E0000009E2000009E4000009E6000009E8000009EA000009EC0
> 00009EE0000030
You can plainly see how this maps to the outputs you describe above,
which suggests (to me, anyhow) that the memory is initialized correctly
but that the initialization file is incorrect (due to removing the data
from 0x000 to 0x100).
_______________________________________________
http://www.opencores.org/mailman/listinfo/openrisc