According to the Ethereum white paper:
The current intent at Ethereum is to use a mining algorithm where miners are required to fetch random data from the state, compute some randomly selected transactions from the last N blocks in the blockchain, and return the hash of the result. This has two important benefits. First, Ethereum contracts can include any kind of computation, so an Ethereum ASIC would essentially be an ASIC for general computation - ie. a better CPU. Second, mining requires access to the entire blockchain, forcing miners to store the entire blockchain and at least be capable of verifying every transaction. [...] one notably interesting feature of this algorithm is that it allows anyone to "poison the well", by introducing a large number of contracts into the blockchain specifically designed to stymie certain ASICs.
So basically, an ASIC should not have any benefit at all because it's just general computation. And to top it off, contracts can be released that are specifically ASIC-hard so there would be an active disincentive to using ASICs. Though I'm not sure if that has ever been done or not in the wild.
Another interesting thing that doesn't seem pointed out in the white paper is that the memory has to be FAST. Excessively fast. So standard DRAM isn't really up to the challenge, which is why the RAM on GPUs take the brunt of the work in most mining today.