Technology
Non-Volatile (aka persistent) to save power and to secure data
Fast enough to match logic speed
Endurance (no wear) for reliable cache/buffering
Dense for a low cost and/or high capacity
Easy to process for low cost on-chip integration