Blogs

EDA Thoughts

bloggerCarbon Footprint is Good For ICs

IBM just demonstrated graphene transistors that could become a replacement for pure silicon-based ICs. | Photo...

Pallab's Place

bloggerNetwork ICs - packaging is a key design element

I recently had a chance to have a conversation with Judy Priest of Cisco about some of the design and packaging issues for...

Tuning into Jim

bloggerGoing, Going, Almost Gone

There has been a trend over the past several years in the electronics community. It has been driven by the dismal economy...

Wizards of Microwave

bloggerUsing EM to Design DGS Structures

A Defective Ground Structure (DGS) is an intentionally designed defect on a ground plan, which creates additional effective...

Poll

Where will the device design growth be in ten years?
Multicore
Programmable
Wireless
Low-Power
IP
New Technology
   
View Results

Article

[ Printer Friendly ]

Towards Scalable Design Tools

What we need are truly scalable design tools. In essence, this means that by simply increasing the number of CPUs used by a tool ("throwing more hardware at a problem") you can run larger designs in less time.
Parallelism is changing the world. More specifically, parallelism is changing information technology and everything that depends on it. The driver has been for some time the hardware. In 2006, worldwide shipments of PC and x86 servers exceeded 239 million units. Cost effective "server farms" have been ubiquitous for many years. Since the advent of the first dual-core processor chip in 2001 (the IBM Power4), increasingly processors are becoming multi-core. The race for GigaHertz (GHz) has been largely overtaken by the race for multi-cores.

The second hardware trend driving parallelism is connectivity: On-chip CPUs can communicate over buses running at GHz. Gigabit Ethernet is a very cost-effective way of networking computers (there are faster solutions available) and the Internet provides access to virtually every computer in the world (albeit with some latency and bandwidth limitations).

What to do with all these CPUs? Among other things, write software that takes advantage of them. By itself this is obviously not new. For example, operating systems already take advantage of multi-core processors, even in consumer laptops; multi-threading has been practiced for quite some time. What is new is the scale: Applications which need resources can easily use hundreds or thousands of CPUs. Ideally, they should scale with the number of CPU's used: Increasing the number of CPUs increases the capacity and the speed of the application.

This brings us to design technology, which the trend towards parallelism is already transforming. In some cases, scaling is straightforward; for example, when running independent Verilog simulations or characterizing a standard cell library using SPICE. In both cases, each simulation is independent of the other simulations and all simulations can be run in parallel. Optical proximity correction (OPC) is more difficult to scale, but it runs routinely on hundreds of CPUs. It has to; otherwise computing a complex mask for an advanced technology node would take months or even years. OPC also happens to scale nicely.

But most design tools used today don't scale. The underlying algorithms were largely developed at a time where single processors were the only pervasive computing platform and the underlying theory dealt mainly with single processors. In many cases, parallelizing a given algorithm is hard and – even when it is possible – the resulting new algorithm doesn't scale beyond a few processors. Multi-threading the code for a design tool, for example, often allows execution of few threads in parallel, of the order of three to 10, but not much more.

What we need are truly scalable design tools. In essence, this means that by simply increasing the number of CPUs used by a tool ("throwing more hardware at a problem") you can run larger designs in less time. Scalability is often hard; may require invention; and typically has its limits, e.g. performance may scale up to a given number of processors for a given size of problem. Scalability, of course, depends on the problem being solved. Every tool or class of tools will require a different approach. An OPC approach – dividing the layout in possibly overlapping tiles and then running each of them on a different CPU – may work for other layout applications, but certainly not for circuit simulation. At the limit, every design tool will have to be rewritten.

Design technology that scales takes advantage of cost-effective compute resources and allows quicker turnaround of larger, more complex designs. Perhaps even more important, scalability enables new design methods and flows: Imagine simulating a circuit with millions of transistors (fully extracted, including power, ground and substrate coupling parasitics) with SPICE accuracy, in a matter of hours. Or imagine your most complex design "running overnight." Well executed, the scenario above may lead to a new golden era in electronic design automation, resulting in radically more productive design, more business and new growth.
Dr. Raul Camposano is President and CEO of Xoomsys, Inc. From 1994 to 2007, he was with Synopsys, where he served as Chief Technology Officer, Senior Vice President, and General Manager for multiple business units. Prior to joining Synopsys, Raul was a director for the German National Research Center for Computer Science, a professor of Computer Science at the University of Paderborn, and a research staff member at the IBM T.J. Watson Research Center. Raul holds a B.S and M.S. in electrical engineering from the University of Chile, and a Ph.D. in computer science from the University of Karlsruhe. He has published over 70 technical papers and written and/or edited three books on electronic design automation. Raul was also an advisory professor at Fudan University and the Chinese Academy of Sciences and serves on numerous editorial, advisory and company boards. He was elected a Fellow of the IEEE in 1999.

......................................................................

EDAC EDAC GSA IEC OCP Si Subscribe Advertise About Us Contact Us