LVS using L2N files

Hi all,
I want to compare L2N files from two layouts to identify the missing nets. Can anyone guide me on what my approach should be?

Comments

  • Can you provide a simple sample? You can attach .zip archives to this forum's discussions.

    Matthias

  • Hi Matthias,
    I am sharing the L2N files: orio.l2n (the original file) and short.l2n (with short and open circuits).
    Since we can't share the layout, the goal is to compare these two files to find the differences, similar to a net-check on the package level. Right now, I am using a custom Ruby script. Since I don't have a schematic, is there a way to use KLayout's LVS script directly to generate a comparison report by reading two L2N files from two different layouts?

    l2n.zip 32.4K
  • Hi @Tushar_Mayank,

    thanks for the samples. A script that compares them is this:

    sch1 = RBA::Netlist::new
    sch1.read("orio.sp", RBA::NetlistSpiceReader::new)
    
    sch2 = RBA::Netlist::new
    sch2.read("short.sp", RBA::NetlistSpiceReader::new)
    
    comparer = RBA::NetlistComparer::new
    res = comparer.compare(sch1, sch2)
    
    puts "Result: #{res}"
    

    However, your samples do not contain any comparable information. Those are two empty subcircuits.

    For a meaningful comparison you need devices and circuits. Packages alone can't be compared as they only have pins. In your case you seem to have extracted a package without creating top level pins, so you don't even have nets (Spice needs at least one pin, subcircuit pin or device terminal to form a net).

    Matthias

Sign In or Register to comment.