One place I worked at did fast iteration by pushing as much of the risk as they could off the silicon and by using several distinct ASICs instead of a single monolithic one which would have had better performance on its own. Gave them the ability to rev the different parts at the rate they needed it at a cost to software complexity and hardware compatibility and cost.