Generally, devices with 512 KB of flash or more have the ability to read from one area of flash while writing to another. This feature is called Read-While-Write, and will be described in the MSC chapter of the device's datasheet, if the device supports it.
On these devices, flash is organized into two or more banks. The Read-While-Write feature takes advantage of this. Normally, reading from flash is stalled while a flash write or erase is occurring. However, with Read-While-Write, one flash block can be in the process of performing a write or page erase while reads, such as code fetches, are performed in another block.
The organization of flash is such that the first half of flash is in one bank (for example, addresses 0x00000000 - 0x000800000 on devices with 1024 KB of flash), while the upper half of flash, and the 'information' pages (Lock bits page, Device Info page, User Data page) occupy the other bank.
This means that, if you are erasing a page in the upper half of the flash, you can continue reading flash from the lower half, but cannot read from the information pages until the erase completes.
One exception to this is Series 0 Giant Gecko. On these devices, the information pages occupy a third block of flash, allowing reading from the information pages while erasing a page in the upper or lower half of flash.