Microprocessors aren't green
khitchdee.forumatic.com
khitchdee.forumatic.com
This sentence really needs a plan to back it up.
1) Building a custom chip is not ever straightforward. I say this as someone who has designed ASICs using appropriate high-level tools such as Verilog.
2) I don't understand how one could customize a chip for browsing the web. The modern web is inseparable from JavaScript, which is a general-purpose programming language and thus requires a general-purpose CPU somewhere. At best one could integrate, say, the NIC with the processor, but this is already commonly done.
3) I fail to see how it's possible for a web browser to operate without access to RAM. Page layout involves complex algorithms which are slow. Therefore their output (graphics) must be cached, or else the user would have to wait several seconds to scroll the page. Perhaps the author means to use a very large (tens of megabytes) on-chip cache, suitable for browsing a single web page, but that would inflate the cost of the chip beyond feasibility.
I agree ... As far as I know, "browsing the web" with modern expectations is Turing-complete, i.e. it needs a device able to execute general purpose programming.
I really wonder what they think they can do to somehow simplify this using a "fixed-function" design. Whatever that is, in this context.
Where?
So, if you have a narrow function that the gadget is going to be used for, you're better of going full custom than programmable function.
How much inefficiency per unit in building small batches of a custom chip, as opposed to many units of a single design, would it take to overcome whatever gains you got when running the device?
General purpose computer hardware is an investment in a toxic industry to enable the cheap and clean process of disposable software.
(+) Web browsing is extremely complex: We have video, audio, js, plugins (flash, java, silverlight), changing standards for html, css etc. Because of this, it's not very well suited for custom chips. For this reason, modern smartphones contain both custom chips for the "phone" functionaltiy and a flexible microprocessor for Angry Birds.
There might be other areas where a few custom chips might save a lot of resources in the long run, though.
More generally, I'll echo the concerns of everyone else here: we seem to be getting greener by using more-general-purpose computing, that necessitates less devices, and less frequent upgrading. Especially because we now see that once devices reach a certain level of power, we actually buy new ones far less often. (Many people now happily own 5-year-old desktops, not because they cannot afford more, but because they're too LAZY to buy a new one for the small marginal benefits... and laptops are headed slowly in that direction. Cell phones and tablets are still far from that transition.)
On the other hand... your observation about the 3% penetration in India, assuming it's factually true, does sound like SOME kind of an opportunity. Making things radically cheaper is always an important disruption (c.f. the original sense of "disruptive innovation", which doesn't just mean "we beat the competition"). And certainly if you can sell to 0.01% of Indian farmers (say 100k households?), that's a hell of a lot of units over which to amortize the high fixed cost of circuit design and tape-out. Although only if you really can come up with a single design that meets the needs of such a huge and probably diverse market. Sounds very hard.
Plus, of course, as many sages (e.g. pg) observe repeatedly, if it were obviously a good idea then your competition would already have done it, which means that IF it's ACTUALLY a good idea, the crowd of naysayers here (myself included) is a good sign for your project. ;)
In short, I'm really sceptical about your fundamental hypothesis, but good luck with figuring it out.
10 million PCs sell yearly in India in a population of 1 billion.
Verilog:C :: Bluespec:Haskell
Whereas a more general purpose design allows someone to reuse the hardware in a different way just by changing the software. Furthermore, with a more general purpose design, you gain economies of scale and the general purpose chips become cheaper as they get produced in larger quantities and get used in a variety of hardware, not just Chromebooks (as an example). A custom ASIC would only get used in one design and have to be re-done for all others. I believe this to be much more wasteful and less 'green' than widespread use of general purpose SoC's or microprocessors.
Economies of scale are orthogonal to how you decide to implement the function.
Besides, you can already produce CPUs on old processes. There's a CPU in the remote control for your TV, and another one in your computer keyboard, and in your microwave. These have low gate counts and are built with off-the-shelf components. Replacing them with fixed-function chips would be an enormous waste.
I really was hoping to see an article about the harsh chemicals, heavy metals and exotic compounds used in chip fabrication plants, and printed circuit board production. Not to mention the all the batteries attached to them.
...or maybe at least how we consume all these devices like candy, compared with statistics gathered on actual recycling practices employed by end users.
But no. Just another head-in-the-clouds post on Hacker News about software and conflated theories about chips from some blogger who probably hasn't ever even bothered to look at the assembly produced by a compiler (or even a disassembler).
Oh well.
Sure, you could make some good points about e-waste, and the bloat of software, the inefficiency of modern processors (up until recently), or even critique the whole disposable culture, but suggesting that producing locked down chips that are practically designed for planned obsolescence is the solution? No, sorry. That argument was lost when they started putting general purpose microchips in microwaves.
You should research and write such an article -- it would be valuable.
Brains are certainly resource intensive, but the benefits derived from those far out-weight the cost. You could say that as an investment wetware pays off. A different issue is if those are sustainable, but given that those have existed for thousands of millions of years across multiple species, we can say they are.
Human interactions have not been around for such a long time, but it can be argued that since human populations can survive (and have survived) for centuries within the restrictions of resources available to local ecosystems, those are potentially "green" too, though not necessarily to the scale we see in today's world. I will not try to discuss the benefits of human interaction or civilization, but I believe most of us will agree that it is so big that it will continue to exist for as long human beings have any amount of resources beyond the bare minimum for physical survival.
Computing is a tricky one though. I do not think that in its current form those are sustainable in the long term, regardless of the benefits that we may get from them. But it does not have to do so much with the per unit cost, but with the economies of scale and huge capital investment needed for semiconductor production to be cost effective. Even if operation cost keep dropping, the race to sustain the Moore's Law calls for even more expensive and environment unfriendly manufacturing processes to be relied on.
For me, this is the biggest flaw in the article. A call for manufacturing hoards of dissimilar purpose-specific chips would break the economies of scale needed to make the production of electronics viable (versus the energy consumption issue).
The qualifier here is that "computing" is an abstract capability, that in this day and age we happen to realize by the application of semiconductor technology. For the long term future, I hope that we will eventually move to a different, leaner and cleaner form of technology that will fulfill the same functions.
Maybe one day we'll have dedicated IDCT or wavelet transform instructions in our microprocessors. However, you could argue that we already do, in the form of SoCs with on-chip GPUs and DSPs. Maybe we've already reached the point you want us to reach.
For example having software that is closely linked to hardware that is not upgradeable and locked bootloaders that don't allow older hardware to be repurposed?
CPUs power consumption is important when you're using it constantly, but most web browsing doesn't do that.
How are you defining fixed function? For example, does eval [1] count as a function? If you have a gadget which only executes one function, eval, is it still a fixed function device? Presumably it is not, since eval can perform any function. If eval is a function which is not allowed in a fixed function device, how do you determine which functions may be used in a fixed function device?
No, not always. Designing and producing such solution takes extra energy, both fixed and marginal.
As for power consumption, the GP is correct: screens and radios consume far more power than general purpose CPUs. Not to mention that a simple switch to greener power (solar, wind, hydro) neatly elides the whole problem.