The first one that came up as opposed to a samsung link.
Right off the top you are violating set up and hold times as well as the fact that the data sheet says 700nS min not 450nS.
Assuming 200nS try:
E=0; nop; nop; (E=0 min 700nS)
RW=1; nop; (address setup time = 210nS min)
E=1; nop; nop; nop; (data delay time 480nS max)
tmp=portd;
(E=1 min 700nS already met so you should be able to just start the next cycle here)
That should be the whole read sequence. Let me know how it works out.
EDIT: and two messages in the mean time says you already got something working...