I'm trying to understand the workings of flash memory, at the transistor level. After quite some research, I've acquired good intuitions about floating-gate transistors and how one injects electrons or removes them from the cell. I'm from a CS background, so my understanding of physical phenomena like tunneling or hot electron injection are probably quite shaky, but still I'm comfortable with it. I also got myself an idea about how one reads from either NOR or NAND memory layouts.
But I read everywhere that flash memory can only be erased in block units and can only be written to in page units. However, I found no justification for this limitation and I'm trying to get an intuition about why it is so.