By the time software is robust enough to make it worth while to be placed into hardware, it's pretty damn efficient. For something like ASICs, you could at least upgrade the firmware with new code, but what about Apple's chips that do the decoding? Can they be upgraded, or does that mean needing to wait for the M++ chip?