Accesing the PCM Flash Memory on a Nexys 3 Board
I finally figured this out... and it was nothing wrong with the VHDL which works perfectly.  The problem was exactly as suggested by Martin Thompson's comment, a pin-out problem.

Although I checked the UCF file pin connections many times, I was only checking the correct pin labels - not that they were all present and I had missed the MemOE pin, which of course is essential for this to work at all.

Some notes:


The Xilinx tool chain doesn't provide any warning messages for an unconnected output pin as in this case.
Reading from the MemDB was appearing to provide consistent but incorrect data depending on what mode I set the flash chip to.  In read array mode, it always returned 0xFF in the low byte.  In read identifier, 0x86.  Totally meaningless data but the consistency fooled me into thinking I had the correct pinouts.


Lesson learned.