Reading and writing SRAM
What would be ideal would be if you could have two counters which included three-state output drivers, so you could easily alternate between the values.  Unfortunately, I don't know of any such beast.  Your best bet if you want to use discrete logic is probably to use a counter each for read and write addresses, and then either a multiplexer or two sets of 3-state driver chips.

If all you're trying to do, however, is generate a programmable delay, you might be better off reading and writing the same address.  Control your delay amount by either using a presettable counter which gets loaded each time it hits zero, a resettable counter with a circuit to detect when it reaches a programmable threshold, or a variable frequency clock.