AT49xV32x flash programming algorithm

I am now trying to write my own flash programming algorithm since there is not one for my EN29LV320 flash memory in realview MDK. And as I was told in the online help, I should find a model to modify, which should be a short cut. I have looked over keil\ARM\Flash directory, however I just find several algorithm about external flash and they are all beginning with AT49, am I right?
Since my flsh is 4MB and 16bit, so I guess AT49xV32x maybe the right one for me, but I download the dadasheet of AT49BV320D,AT49BV320S,AT49BV322D,AT49SV322D, surprisingly their commands are different from the ones offered in AT49xV32x. For example,

EraseSector (unsigned long adr) {

  // Start Erase Sector Command
  M16(base_adr + 0x0AAA) = 0xAA;
  M16(base_adr + 0x1554) = 0x55;
  M16(base_adr + 0x0AAA) = 0x80;
  M16(base_adr + 0x0AAA) = 0xAA;
  M16(base_adr + 0x1554) = 0x55;
  M16(adr) = 0x30;

  return (Polling(adr));       // Wait until Erase completed
}


the second statement write 0x1554 to address bus and 0x55 to data bus, but I can't find this command in datasheet. Can anyone tell me what does this mean and which flash is right one for AT49xV32x
Thanks a lot!

More questions in this forum