Referring to the wikipedia article:
http://en.wikipedia.org/wiki/Classic_RISC_pipeline
I am a little unsure what the "memory access" stage actually does. If "execute" actually does the execution, what purpose is there of retrieving memory addresses after the execution has taken place (which is what the wikipedia article suggests)?