The NES has two separate memory buses, one for the CPU and one for the PPU. Each one is connected to their own memory, so when the CPU accesses $2000 it's not the same as when the PPU accesses $2000. The CPU has no direct access to the PPU memory, which is why you have to use the registers mapped at $2006 and $2007 (which are visible to the CPU!) to write/read data to/from PPU memory. You literally have to tell the PPU: "Hey PPU, I'll be storing data starting at address $2A00" and then "here's the byte that goes to $2A00", "now here's the byte that goes to $2A01", and so on.
Here's some reference about what's mapped to each addressing space:
CPU and
PPU.