Moore’s Law has to date been dead on as far as chip development goes, but should the focus of development be directed elsewhere? If you look at the most complex computing device on the planet, the human brain, it is not a single “device” that is focused on a single task before moving on to the next one. It is a discreet set of components, each of which is specifically suited to a different type of task.
If this approach was taken with computer and chip design, I think it would produce more efficient systems with uniquely designed modules providing the support and functions required by the specific software running on that system. This way the system’s resources are focused on performing the current set of tasks in the most efficient way, thus requiring more modest components for a specific system or user. This also means less heat, noise, size and hopefully cost.
This approach is already starting to appear with multi-core processors allowing multiple tasks to be executed simultaneously and graphics cards which take it much further in the right direction with things like T&L, it just isn’t far enough.
You could take it one step further, producing systems with chips which could be programmed during use and then later re-programmed for a new task. This way a piece of software could be written with instructions on how to program the rest of the system to fully utilise all the resources available to maximise its productivity. Maybe there’s some mileage in this theory, or maybe it’s all crap. I have got a stinking hangover and am watching Mr. & Mrs. Smith while trying to think about PC design so who knows.