3 Replies Latest reply on May 14, 2013 10:16 AM by dan_liddell

    Eliminating the extraction of unused devices

    up633791

      Hi,

       

      I have been experimenting with creating an extraction deck and I have came across the following problem:

       

      I know that we can eliminate unused devices in extract and LVS with the command:

       

      LVS Filter Unused Option (or device)

       

      But, this is specific for LVS.

       

      My question is:

       

      How can I prevent the extraction of unused devices strictly and only through the extraction ruleset? I basically have a semi-custom design with an array of devices and only wish to extract the used ones only to a netlist.

       

      Thanks in advance.

       

      Kalid

        • 1. Re: Eliminating the extraction of unused devices
          dan_liddell

          Hi Kalid,

           

          The problem is this. The netlist extractor has to extract a device first before it can figure out that it's unused. Since an unused device is already extracted, it is wasteful to remove it in the circuit extraction stage, when that's going to be done in the comparison stage anyway (when requested).

           

          If you want to see how Calibre views the layout netlist after all transformations occur (including device filtering), place this statement into your LVS comparison rule file:

           

          LVS WRITE LAYOUT NETLIST <file>

           

          dan

          • 2. Re: Eliminating the extraction of unused devices
            up633791

            Hi Dan

             

            Thanks for the reply.

             

            So there is no way of doing that in a Calibre ruleset because of the reason you metioned below?

             

            If yes, then I guess a Perl script to edit the netlist is the only thing I can think of

            • 3. Re: Eliminating the extraction of unused devices
              dan_liddell

              Hi Kalid,

               

              In Calibre, the netlist extractor is designed to show the topology of everything that exists in the layout. It is the role of a client application (like LVS) to interpret the layout netlist (using unused device filtering if necessary) to accomplish what the client application needs to do. Put another way, there is no benefit in a Calibre flow for the netlist extractor to do things like device filtering or reduction, because that job is done by other applications.

               

              The way to do what you want in Calibre is to run LVS with the statement I suggested previously. If you don’t have a source netlist, run LVS with the layout against itself with unused device filtering on.

               

              dan