• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC Design
  3. CDL import with SpiceIn: W + L wrong!

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 126
  • Views 19988
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

CDL import with SpiceIn: W + L wrong!

bdjones1
bdjones1 over 10 years ago

Hello,

I'm attempting to import a TSMC 65nm standard cell CDL netist using IC616 StreamIn.  I've created a device_map that imports devices, but their sizes are off by 1000x.

For example, the first device call in the cdl file is this:

mXI0_MXNA1 nin A XI0_n1 VPW nch L=6e-08 W=3.3e-07

When imported, the device ends up with l=60m and 330m, instead of 60n and 330n.  Here's the chunk of the log file showing that happening:

Created instance 'mXI0_MXNA1'.
Instance Terminal: Created net nin
Created connection between net 'nin' and term 'D'
Instance Terminal: Found net A
Created connection between net 'A' and term 'G'
Instance Terminal: Created net XI0_n1
Created connection between net 'XI0_n1' and term 'S'
Instance Terminal: Found net VPW
Created connection between net 'VPW' and term 'B'
CDF parameter not found for 'subtype'. User property will be cretated
Created propName='subtype'; propType='string'; propVal='nch'.
In CDF... Created propName='model'; propType='string'; propVal='nch'.
Created propName='model'; propType='string'; propVal='nch'.
CDF Type is 'string' and the value given in netlist is 'float' - hence converting to 'string'
In CDF... Created propName='l'; propType='string'; propVal='0.06'.
CDF Type is 'string' and the value given in netlist is 'float' - hence converting to 'string'
In CDF... Created propName='w'; propType='string'; propVal='0.33'.

Clearly the Device Mapping is not handling the units on the conversion from the CDL float to the CDF string correclty:  

L=6e-8 -> 0.06u -> 60m (!)
W=3.3e-7 -> 0.33u -> 330m (!)

For reference, here's what I have in the device_map file:

devSelect := nfet nch
propMap := W w L l

devSelect := pfet pch
propMap := W w L l

devSelect := diode ndio
propMap := AREA area PJ pj

I've looked through the transferOA.pdf help file but don't see anything addressing this.
Anyone have any ideas how to get this to run smoothly?

Brian

  • Cancel
Parents
  • Marc Heise
    Marc Heise over 10 years ago

    Hi Brian,

    do you have a ".SCALE" line in your input file? If yes, what is the value?

    Set it to "meter" :  .SCALE METER  , or even try to run without it at all.


    Regards,

    Marc

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Marc Heise
    Marc Heise over 10 years ago

    Hi Brian,

    do you have a ".SCALE" line in your input file? If yes, what is the value?

    Set it to "meter" :  .SCALE METER  , or even try to run without it at all.


    Regards,

    Marc

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information