Tao On Twitter

    Friday, November 16, 2007

    The ASIC Factory (Part 2) : The Toyota Way For Fabless ASICs

    This post is part 2 of the application of the 14 principles of the Toyota Way to the ASIC design process. You can find Part 1 here or click on principles #1 and #2 below.

    #1. Base your management decisions on a long-term philosophy, even at the expense of short-term financial goals.

    Create a continuous process flow to bring problems to the surface.

    Use "pull" systems to avoid overproduction.

    In "pull" systems, the control flow is backward not forward. Each stage "pulls" its required inputs from previous stages rather than having inputs "pushed" onto it. You replenish items that are being depleted (i.e sold) rather than creating items in set proportions. "Pull" processes avoid overproduction by generating items in response to consumer demand. Further, note the complete lack of upfront scheduling. One of the advantages of "pull" systems is that they are self-scheduling. Each stage signals the previous stage in such a manner that the end goal is reached just in time.

    In an ASIC design context, the translation of the principle would be that each stage of the ASIC design flow "pulls" data from previous stages. For example, place-and-route "pulls" data from scan insertion. There is no point in rushing through scan insertion if the scan-inserted netlist is not going to go through place-and-route for the next few days. The DFT engineer does not need to create a scan inserted netlist until the PNR engineer is ready to use the scan inserted netlist. Prioritizing is simplified, too. When juggling multiple projects, the DFT engineer simply works on the design that flags him or her first. In such a system, each engineer will work on high-priority items first and project will progress at the right pace and complete on time.

    Level out the workload (heijunka). (Work like the tortoise, not the hare).

    Leveling out the workload has multiple benefits. Since the load on resources is close to constant, it is easy to predict demand and plan accordingly. As resources are closely matched to load, there is optimal utilization of resources as well. In organizations where the load varies wildly, the management will have to plan for the worst case. The problem is that these acquired resources will never be fully utilized during normal periods. When you level out the workload, transitional peak requirements are correspondingly low. You will require less "margin" when it comes to tools, machines and even people. One of my previous posts, It's Not What You've Got, has some details on application of heijunka for machines and licenses.

    Tags : , ,

    1 comment:

    1. Great idea! #3 is very similar to a concept I recall learning about in managerial accounting... just in time (JIT) inventory systems. Something else I recall learning about was was Total Quality Management (TQM) which relates to #2.

      I've added a link to your blog from RegisterBits.com... maybe that could make your "Blogs of Note" someday :)