Serial interface flash memory device designed for use in a wide variety of high-volume, consumer-based applications in which program code is shadowed from flash into embedded or external RAM for execution. Flexible erase architecture makes this memory ideal for data storage, with erase block sizes optimized to meet the needs of today's code and data storage applications. Increased memory space efficiency allows additional code routines and data storage segments to be added while maintaining overall device density. The device incorporates global protect and global unprotect features that allow the entire memory array to be either protected or unprotected at once.