armds base model sp804 init issues

in arm development studio,

debugging with base model for a53 single core,

config timer sp804 at address 0x001C110000,

// SP804 base addr
volatile unsigned int* const TIMER0_BASE = (unsigned int*)0x001C110000;

// SP804 registers offset
#define TIMER0_LOAD_OFFSET    0x00
#define TIMER0_CONTROL_OFFSET 0x08

void init_timer() {
    // init value
    TIMER0_BASE[TIMER0_LOAD_OFFSET] = 0x2000;

    // cfg control reg
    unsigned int control = 0;
//    control |= (1 << 7);  // enable interrupt
    control |= (1 << 6);  // up count
    control |= (1 << 1);  // periodical
    control |= (1 << 0);  // enable timer
    TIMER0_BASE[TIMER0_CONTROL_OFFSET] = control;
}

read current  Current Value Register, TimerXValue more than 2 times,

no change was observed

why?