Blogs
Technical Bits
Mark Horowitz, the future is a chip generator
Mark Horowitz, the future is a chip generator |
|
|
|
| Written by Maciej Bajkowski | |
| Wednesday, 04 November 2009 | |
|
Earlier this year, Mark Horowitz gave a talk at the 1st Berkeley Symposium on Energy Efficient Systems titled “Why Design Must Change: Rethinking Digital Design.” I did not have the chance to attend that symposium, but was lucky enough to attend an encore presentation by Mark a few days ago at the University of Texas, Austin as part of the Computer Architecture Seminar Series. If you don’t know who Mark Horowitz is then you truly must have been hiding underneath a rock. Suffice it to say he is pretty well regarded in the electrical engineering community, having received several best paper awards over the years, being the current chair of electrical engineering at Stanford University, and also having co-founded a little company called Rambus – so yes, when he speaks people generally tend to listen. The complete presentation slide as well as a recording of the Berkeley presentation can be found here . What follows below is quick summary of the talk and s few comments of my own. The main point around which the talk revolves is as follow: Design costs and power dissipation have over the last decades gone through the roof. The good news is that some of the major contributing factors such as die growth and super frequency scaling have somewhat stopped. The bad news is that voltage scaling has also hit some limits. As voltage seizes to scale downwards, our biggest tool for scaling energy becomes significantly less effective. Mark is not optimistic on overcoming these challenges since overcoming limitations set by fundamental physics is rather difficult. For example he is very concerned about the on/off current ratio, which is a valid concern, but with regards to that I’m fairly certain that for several of the upcoming process generations, the process engineers have quite a few neat tricks up their sleeves. Mark is convinced that while silicon is not going away any time soon, the growth rate is going slow down significantly and eventually we will think of silicon the same way think about concrete and steel. Thus, instead of hoping that the process guys will save the day, we really need to figure out how to use what we already have, and by this he means we need to figure out how to reduce the amount of waste in our systems. Some of the waste stems from the fact that maybe we are simply doing more work than we really need to – after all, if we do less work we will need less energy. This of course, could be caused by the fact that we are using the wrong tool for the job, and thus are creating more work than needed. The fact is that for specific tasks ASIC designs are more efficient that DSPs/Vector Engines, which in turn are more efficient than CPUs. Unfortunately, ASICs while efficient are also prohibitively expensive and few markets can justify their use. Which brings us full-circle back to where we started a few paragraphs ago: designing specific chips that do what we need, and do it well while consuming little power is way too expensive. The solution: A chip generator. Now, before you panic and say we’ve been there and tried that, relax, Mark is not talking about silicon compilers, that will take your nicely written high-level C++ algorithm and convert it into a perfectly working, super power efficient silicon that has been verified automatically - a nice dream indeed. Instead, the message that Mark is sending to the chip and SoC design houses is that the designs they are putting together are most likely not the optimal solutions for what applications the customers have in mind. Instead, he would prefer if these companies instead of trying to guess what the customers want should rather put their efforts into developing a chip generator that would allow the eventual consumer to configure the final SoC as needed. Want half the cache: no problem - want to eliminate some not needed IOs: no sweat - need to configure your memory differently to optimize the performance, or add some extra math processing: no sweat. Essentially, let the customer figure out what they need, and you just focus on developing a tool that will put it together for them. I have to admit Mark, this does sound fantastic indeed. As a matter of fact, it is something that occurred to me a while ago while working on several SoCs that were very similar, but not similar enough for some of our customers, and thus required separate design spins. The problem is that while the chip generator might be more feasible than a silicon compiler, it is still something immensely difficult to pull off. For one thing, if chips are difficult to design, it is quite conceivable that to design something that will design these chips might be even more so – is it worth it? Also, while process scaling might slow down one day, and library updates might become less frequent, that day is not here yet. Once again, if migrating a chip from one process to another is a major undertaking, optimizing the generator for the next process might be more work then re-doing some designs while adding a few customer requested enhancements. I’ve worked on several tools that had to be ported to new processes and most of the time it took more work than was anticipated. Finally, parameterizing a few things here and there is probably possible, but making things you as a company own configurable and then ensuring that they will play nice with third party IP provided by other companies, that can also be parametrized, is another story. Don’t get me wrong, I completely agree with Mark’s vision, and I do think that the future does require what he is suggesting, but process scaling really needs to slow down significantly for this to happen, and that is simply not yet the case. Too bad I forgot to ask him about the time horizon that he had in mind for the chip generator to become a reality. Readers have left 8 comments Show/hide comments on this page...No.1 Mr. If the prices of ASIC's drop, wouldn't a large amount of progress be made in short amount of time, and thus not require drastic changes in chip design? Submitted by Sumontro, on 2009-12-05 18:52:59 No.2 asic price drop Sumontro, It is the development costs of ASICs that are prohibitively expensive, not the actual unit price of the ASIC once it is sold. While the unit prices might seem to decrease with every process generation, the actual design and validation complexity increases, ever increasing the development costs. It is the development costs that Mark wants to reduce via a chip generator, especially as SOC designs become more varied and prolific. No.3 Mr. So how is it currently done? Are the chips designed on the computer and operating conditions simulated? Or are they physically fabricated and tested? Where does the huge design cost come from? Submitted by Sumontro, on 2009-12-11 20:30:53 No.4 design costs Sumonto, Both your statements are true. Chips are designed and simulated on computers, and once they are fabricated they then go through more testing to ensure they work as the simulations predicted. Some of the largest costs are associated with verification during the design process. That is, someone needs to ensure that all the little blocks that have been designed individually work properly with each other and produce the right output. Often times, the verification team size is just as large if not larger than the design team size. No.5 Verification Are these test chips made in-house or is it outsourced out to a company that specifically makes chips? Also, how long does it take for the test chips to be made? How many test chip runs does it take to get to a production product? Submitted by Sumontro, on 2009-12-14 18:39:53 No.6 test chips Test chips are usually designed somewhat before the actual product is designed, typically when a new process becomes available. They tend to contain designs that are deemed risky or new so that they can be evaluated before they are placed onto an actual product. The number of test chips varies widely from company to company, since they are expensive. How the test-chip process works is also influenced whether the company is a fabless semicondcutor company or not. No.7 Pricing What makes the test chip manufacture expensive? Does it not use standard production equipment or is it because most of the chips that come out are untestable? Submitted by Sumontro, on 2009-12-16 09:54:43 No.8 chip production The production equipment may be the same, but new masks need to be created for each test chip. These masks are very expensive, especially given that a test chip usually is not productized and thus the mask costs cannot be recovered. I suggest you take a look at the link below which explains some of the steps required in manufacturing a chip: http://www.appliedmaterials.com/HTMAC/animated.html |
| Next > |
|---|