New Way to Patch Defective Hardware 238
brunascle writes "Researchers have devised a new way to patch hardware. By treating a computer chip more like software than hardware, Josep Torrellas, a computer science professor from the University of Illinois at Urbana Champaign, believes we will be able to fix defective hardware by a applying a patch, similar to the way defective software is handled. His system, dubbed Phoenix, consists of a standard semiconductor device called a field programmable gate array (FPGA). Although generally slower than their application-specific integrated circuit counterparts, FPGAs have the advantage of being able to be modified post-production. Defects found on a Phoenix-enabled chip could be resolved by downloading a patch and applying it to the hardware. Torrellas believes this would give chips a shorter time to market, saying "If they know that they could fix the problems later on, they could beat the competition to market.""
So, he's discovered the FPGA? (Score:5, Insightful)
I'm sure the professor has developed _something_, but the article sure doesn't give any clue what it might be. This story is nothing more than an exceptionally poor description of what any FPGA can do.
WTF? (Score:5, Insightful)
So from a customer viewpoint (Score:5, Insightful)
I suspect I an do without.
Oh great... (Score:5, Insightful)
Oh great, now we'll have hardware as crappy as software. I guess we'll have to get used to the new QA mantra: "If it solders, ship it!" Sigh.
But, quality _will_ suffer... (Score:3, Insightful)
Re:what? (Score:3, Insightful)
I really don't see this going anywhere in the near future simply because of cost. You've just taken a $10 ASIC and replaced it with a $600 FPGA. ASICs may cost more than FPGAs in upfront design costs, but it you're going to use more than a thousand and can wait the extra few months, it's always going to be cheaper. Big FPGAs are expensive.
Stupid post of the day. (Score:2, Insightful)
a) Duh, duh, duh. This ain't no news, FPGAs have been around for quite a while, and being able to soft-repair hardware is an old idea that is being used where practical. Sheesh, slashdot is really headed for slushdot these days.
b) Great, so now we can get more defective products quicker, be on hold with tech support longer, and spend our own time/money fixing the products under warranty that we've already paid for. Someone, please shoot me!
Re:So, he's discovered the FPGA? (Score:5, Insightful)
Sounds like the hardware version of Windows. Every user would be a beta tester. Your phone calls your friends in the middle of the night and makes strange noises? It's ok, we'll fix it soon. Meanwhile remember we were the first to offer scheduled calls for cell phones!
Re:If I'm missing something... (Score:4, Insightful)
And this is the reality NOW.
Erasing the BIOS, stopping fans, overclocking and overvolting chips can be done TODAY.
Also, changing the region of a DVD drive until it locks out changes and leaving it on a unwanted region is also doable; another "advantage" of this attack is that it is a felony to repair the hardware thanks to the DMCA giving DRM the force of law.
Killer POKEs didn't die with the Commodore PET and C64, they just aren't literal POKEs anymore.
Re:WTF? (Score:3, Insightful)
Re:WTF? (Score:2, Insightful)
Is this guy serious? (Score:4, Insightful)
The entire selling point of this system is that it allows hardware developers to do sloppy work? Great! The build-and-fix approach has worked wonders for software what with constant security alerts and all, why not use it for hardware? Inspired!
Have they put any thought into this at all?
That other people might make malicious "patches"?
That they'd be opening up hardware to all the vulnerabilities that software has?
Jesus christ people, use some common sense.
Another opportunity for exploits (Score:1, Insightful)
"regular" programmable logic (Score:4, Insightful)
Personally I was using proms as rudmentary programmable logic 20 years ago.
I already beta-test software for free.. (Score:4, Insightful)
It'd also make debugging software that much harder, as you won't be sure where the problem lies, with the CPU or the software program itself.
Re:Buggy hardware AND software? (Score:4, Insightful)
Sure, and those lessons are being fastidiously applied here. Customers buy that buggy, undercooked software and wait for the patches. Problem is, in increasing numbers of cases, the vendors are learning that they don't have to even ship patches (e.g. game industry, commodity hardware drivers and apps) or only for a very short lifetimes.
Fast-followers usually have much better products than first-to-market vendors, and it used to be that they had better success as well. I am not sure that is always the case these days. Look also at the release of Vista and the fact that a new XP system simply cannot be purchased, locking customers into being beta testers (or getting off the platform entirely).
In some sense, this has already extended to hardware as more and more depends on firmware and flashable updates. a good portion of drivers for some hardware consists of software to offload to firmware, one of the things that makes opensource drivers a pain.
Re:Reliability requires redundancy (Score:3, Insightful)
They already do.
RAM and Flash chips typically have a few redundant memory banks.
Graphics chips with faulty modules are sold as lower performing parts (example - the Nvidia 6800 LE and the 6800 Ultra both have the NV40 chip, but the LE has 8 pixel pipelines and 2 vertex shaders disabled).
Re:what? (Score:3, Insightful)
Re:what? (Score:1, Insightful)
It sounds like maybe the "big breakthrough" is that the Phoenix design is supposed to be on-chip, universal (in that it can be slapped onto nearly any architecture), and systematically scale to any complexity of CPU design (allowing it, say, to be added to a network processor, one of the given examples); this is something of an improvement over the existing fault-tolerating-computing market, but I wouldn't call it a technological revelation. Maybe the selling point is that Phoenix can be easily added to an existing chip and does not slow down the chip's existing logic except in the case of an error condition. In a way, that's an advantage over the approach (seen in some IBM mainframes) of building a virtual, fault-tolerant CPU out of two redundant (step-locked) CPUs and an external supervisor, since it's cheaper, but I would worry that Phoenix would encourage chip designers to continue designing bug-prone, imbalanced, complicated architectures rather than try to re-think design approaches which are apparently consistently resulting in buggy and hard-to-test chips.
Plus, "Phoenix" is an over-used name, and the fact that man computers have a "PhoenixBIOS" might cause some confusion.
DISCLAIMER: This comment is somewhat complex, and there's probably no realistic way of re-writing it for accuracy quickly. Whenever you, the reader, find an error that has not been previously documented, just reply with "BENNU-SYSTEM COMMENT LOGIC PATCH: " followed by a correction so that future readers can enjoy a reduced number of defects.
-os
Re:"regular" programmable logic (Score:3, Insightful)
JTAG-enabled chips, other in-system-programming silicon (eg. ispGAL), microcontrollers with bootloaders... Dude, you're *so* 80's.
Re:what? (Score:4, Insightful)
What bothers me personally is that "it's easier to upgrade" is one of the excuses used when producing those skimmed-down Windows-devices. You can guess twice if it's ever improved the quality of the products, or if even half of the bugs they ship with ever get any attention from the vendors.
So yeah, please give them one more reason to ship too early, more often and cheap enough to sell by the bucketload.