[ixp1200] How to read data from GPRs using absolute addressing?

Jo Ueyama ueyama at comp.lancs.ac.uk
Wed Sep 24 11:37:06 EDT 2003


Hi All,
    I am writing a program in C++ to read a data from a GPR register 
(via uEng_readRelGpr method), which was previously placed by a microcode 
program (using the absolute addressing mode). The sample code to place a 
value in a GPR is as follows:

    .areg @gpr1 0
    immed[@gpr1, 0xFFFFFFFF]
    immed_w0[@gpr1, CAFE]

done#:
    nop
    ctx_arb[voluntary]
    br[done#]


    However, I can't read the value (0xFFFFCAFE) via uEng_readRelGpr 
(using C++ program) after running the microcode above. The resulting 
value (0xFFFFCAFE) seems to be swapping across different registers over 
the ones belonging to the same relative address with different contexts 
(i.e. 0, 16, 32, ...).
    Essentially, I'd like to place a given value to one absolute GPR 
register using a microcode program and read the same value via C++ 
 program thereafter.
    Any idea/clue will be highly appreciated.**

With Thanks,
-Jo'




More information about the ixp1200 mailing list