Quantcast
Channel: Cadence Custom IC Design Forum
Viewing all 4908 articles
Browse latest View live

Virtuoso Cadence crashes when opening layout viewer

$
0
0

Dear all,

I am currently getting this error when I opened layout editor in Virtuoso:

*WARNING* PyCell plugin (cnDloPlugin) might not work properly due to the following OA exception:
Requested major API version '5' which is supported by OpenAccess build '22.60.043' is incompatible with the major API version '6' of the shared library of OpenAccess build '22.60.043'.
Fatal Python error: Py_Initialize: Unable to get the locale encoding
ModuleNotFoundError: No module named 'encodings'

Then Virtuoso crashes and closes. May you help me, please?

Have you ever gotten this error?

Thanks.

Eric


How to measure input capacitance?

$
0
0

Hello everyone,

I create a symbol(as shown is following figure: CMOS) and use it in other circuit, can I measure the input capacitor of cin, when I set a_2 and b_2 to different value? And how ?

Thanks a lot for help!

Regards,

Holz

Plotting phase spectrum

$
0
0

Hi, 

Is it possible to plot the phase spectrum in cadece virtuoso? The DFT function in the calculator plots the amplitude spectrum, but how can I plot the phase?

Basically, I am trying to calculate the power in a nth harmonic oscillator. Power would be V*I*phase_difference. I am trying to calculate the phase difference between the nth harmonic voltage and nth harmonic current. 

I use IC618.

WARNING (OCN-6038) Results dc are not available loading OCEAN script

$
0
0

Hi,
I'm trying to loading an OCEAN script automatically generated on the ADE-L environment of Cadence virtuoso.
Virtuoso Custom IC Design Environment version IC6.1.8-64b.500.17

I have simplified the ocean script (detailed below between # marks) only to read the "Id dc" result but results seem not to be available on results directory

Message shown on virtuoso terminal:

"job job006 submitted successfully.

WARNING (OCN-6038): Results dc are not available for /../nmos_chara_tb/spectre/schematic/distributed/job006. Use results() for a list of available results"

I have tried to use the "results()" function and this is the information obtained:

results()
("dcOp-dc" "dcOpInfo-info" "dc-dc" "modelParameter-info" "element-info"
    "outputParameter-info" "designParamVals-info" "primitives-info.primitives" "subckts-info.subckts" variables
)

#############################################################################################
simulator( 'spectre )
design(     "/../nmos_chara_tb/spectre/schematic/netlist/netlist")
resultsDir( "/../nmos_chara_tb/spectre/schematic" )
modelFile(
    '("/home/data/pdk/eval/tsmc40nm_cv1p6msp010_001-oav10a/cds/tsmcN40/../models/spectre/toplevel.scs" "top_tt")
)
definitionFile(
    "/../projects/40nmBCD/save_op.scs"
)
analysis('dc ?saveOppoint t  ?dev "/V2"  ?param "dc"  
        ?start "0"  ?stop "3.3"  ?lin "100"  )
desVar(      "length" 550n    )
desVar(      "width" 400n    )
envOption(
    'analysisOrder  list("dc")
)
temp( 27 )
run()
Id = getData("M0:id" ?result "dc")
#############################################################################################

Thanks for the support,
Regards,
Victor.

Report CPU time directly in ADE Assembler

$
0
0

Hi,

I am currently building simplified verilog-a versions of our  blocks, inside a larger mixed-mode system, in order to speed up simulation (CPU) time.

As I am experimenting with different implementation methods in verilog-a I would like to evaluate CPU time. Currently I read the logs to find this.

Can you make ADE Assembler show CPU time? It would be need, also when sweeping config views, to see how much time was saved etc.

BR,

How to treat parasitic device as open for LVS

$
0
0

I have a resistor that i'd like to treat as an open for LVS. Right now there is a cdf user property:

lxRemoveDevice=(short(p1 p2))

I'd like the device to just be removed instead. Changing "short" to "open" doesn't work. Any suggestions?

TIMEOUT feature

$
0
0

I came across a post in which an options file created in the install_dir/share/license path with a TIMEOUT command can help in returning licenses to the pool when idle. But I wanted to check if this feature can be updated in the license server as it's difficult to make changes in every tool install directory. If yes, in which path should it be incorporated and how?

PSS and TRAN jitter results not matching for very simplistic testcase

$
0
0

In order to better understand the PSS and TRAN noise simulations, I created a very simple testbench "Vsource+Buffer" (see below) and compared the PSS and TRAN phasenoise and jitter results.

The phasenoise curves are matching okay, but the jitter results (Jcc) are completely off and not matching at all.

The VCO (Vsource) frequency is 100MHz with 0.75V amplitude and the phase noise values are given as source parameters.

Transient noise is enabled with a PSD frequency range from 1M to 1G.

The jitter intergation bandwidth is from 1M to 1GHz as well.

The TRAN phasenoise is the PSD of the absolute jitter, normalized to the 0.75V amplitude (-5.51dBVrms).

Some questions I do have:

1. Why do the jitter values differ so significantly between PSS and TRAN ?

2. What does the PSD averaging value mean in the TRAn setup (did not find any useful description in the documentation) ?

All the settings are shown in the pictures below:

And here the results:

Phasenoise results are matching well from 1MHz to 50MHz, but

3) Why do I not see the harmonics in the TRAN result ? Is it due to sinx/x of the PSD/DFT ?

Below you see the expressions and the huge difference in the Jitter results:

Why are those jitter results differing so much ?

How can I get reliable and trustworthy jitter results ?


strobe period in tran dynamic parameter

$
0
0

Hi,

I try to use strobeperiod as a dynamic parameter in transient simulation. But the sim log says: 

ERROR (SPECTRE-16557): In analysis 'tran', the parameter 'strobeperiod' defined in `paramSet1tran` paramset is not found in the netlist.

Is there any clue to include the strobeperiod in the dynamic parameter?

My cadenc version is IC618-64b.500.18, and mmsim version is 19.10.322. 

BR

how to get values of sampling points

$
0
0

Hello everyone,

I want to sample some points of a wave and store values through expression. I tried to do it like:

     value(v("/cout" ?result "tran") 2e-11 ?period 1e-12 ?xName "time")

Where "2e-11" is start point, "1e-12" is sampling period. But it gives me a wave, not values of sampling points, and I also checked"sample()", it looks same to value(). Is there any other function that can be used for this case? Or I must try to use SKILL?

Regards, Post

Holz

Cadence Calculator Function for the difference between the abscissa of the intersection of two curves

$
0
0

Hi,

I am running a dc simulation for Schmitt Trigger .

Its voltage transfer characteristic curve is shown in the following figure (the green curve  V=Vout ).And the red curve(V=Vin) has a slope of 1 .

I would like to find the difference between the abscissa of the intersection of two curves, which represents the hysteresis width of the Schmidt trigger.

Then I want to do a Monte Carlo simulation of hysteresis width.

So far I have ymin(abs(v("/vout" ?result "dc")-v("/vin" ?result "dc")))  obviously.

However, ymin(abs(v("/vout" ?result "dc")-v("/vin" ?result "dc")))  is not equal to zero but a very small value .I think it has to do with step size.

Is there a calculator expression for what I want to do?

My virtuoso version is 6.17-64b.

Thanks

Import several pwl signals through one file

$
0
0

Hello everyone,

I'm trying to import 300 pwl signals as input of my circuit and run the simulation. I already know how to import single pwl signal as input (use vsource and select pwl file), but is it possible that I put 300 pwl signals in one csv file and import it, and after simulation, I can get 300 simulation results? I see someone has already asked about this two years ago https://community.cadence.com/cadence_technology_forums/f/custom-ic-design/43338/how-we-can-use-the-single-vcvs-file-containing-n-waveforms-for-generating-the-n-voltage-waveform-sources-in-ade-x  Does is possible without writing Verilog A node now? I'm using IC6.1.8.

Another question is, what does "pwl file as design var" means?

Thanks a lot for help!

Regards,

Holz

Cgg using AC analysis

$
0
0

how to get Cgg using AC analysis

Copy measurements from one assembler to another

$
0
0

Hi,

I have a meastro which have a lot of measurements. I want to copy only the measurements of this maestro to another. Is there a way other than manually copy pasting the measurement expressions?

Thanks

Sheenu

My ADE L gives error of not being able to descend into any of the views

$
0
0

Hi,

I have a verilogA model and I'm trying to use it in my simulations. However, it gives me a netlisting error, saying it can't find the view. I don't really know how to handle this since I already have veriloga view defined in Setup > Environment > Switch View List in my ADE L. It happens even if I'm trying to use verilogA models from Cadence's own libraries.  The error message is:

Unable to descend into any of the views defined in the view list, 'spectre auCdl schematic', for the instance I0...Add one of these views to the cell... or modify the view list so that it contains an existing view.

Any suggestions how to fix it are welcome.

Thanks

Svilen


Segmentation fault: core dumped

$
0
0

Hello everyone,

I have a simulation with 50000 sweep points, there are few unfinished points/errors after simulation, so I try to rerun them. But then virtuoso crashes and I get error: segmentation fault.

What could be reason of it? I have checked the disk, and there is still 1T free, so "too few storage" shouldn't be reason..

Thanks a lot for help!

Regards,

Holz

Changing range of sweep in DC analysis leads to different results

$
0
0

Hi there,

I'm building a two-stage fully differential amp and I try to find the proper DC operating point, so I swept the width of the PMOS on the most top of first stage(i noted in the pic) and looked at the output node DC voltage of first stage.(I want to have around 800mV) First I did the sweep in 0.6u - 1.1u range, then I did it again in 0.7u - 1.1u range, the graphs are totally different! Even the width value appears in both graphs has different voltage results.

Did anyone deal with a similar problem before? I'm a newbie so the problem may be quite stupid, but any advice will help!

Thanks a lot!

Qihang

Stability Analysis Issue on Schematic level

$
0
0

Stability Analysis Issue on Schematic

  

Hi There,

 

I am  trying to run stb analysis on schematic level (pre-layout).     Breaking loop with metal resistor at one level inside 

(using IC6.1.8.64b.500.17) and ( cadence Explorer)

Following this article -

https://support.cadence.com/apex/ArticleAttachmentPortal?id=a1Od0000000tt0rEAA

This schematic is one level  down in hierarchy  >>  TOP schematic >>  loop schematic

I did verify from netlist -

I did try using name of net name ("name of top schematic"\"name of net")  in deepprobe . But,  It does not work.

Problem -  I can see from simulation results that, loop is broken at  DC analysis and   voltage on one node is 1.62V and another node is 0V. So it means that, feedback loop is broken in DC analysis

use "awvSaveToCSV" without overwriting current contents

$
0
0

Hello,

I'm running a simulation with 50000 sweep points and I want to export all results in one csv file use awvSaveToCSV:

awvSaveToCSV( VT("/cout") VT("/cin") "test.csv" ?from 20p ?to 800p ?step 2p)

The problem is, the file "test.csv" is always being overwritten,  after simulation I get result of 1 sweep point instead of 50000, is it possible to do something like in python: open("test.csv"."a"), write to the file "test.csv" without overwriting the current contents?

Another question is, I have two waves in "awySaveToCSV", and in "test.csv", I also have two time step columns, can I delete one through ocean script?

Thanks for help!

Regards,

Holz

Can we change the options for turning on/off the noise contributors in the simulation script?

$
0
0

I would like to turn on/off the noise contributors and then run the various noise analysis. Something as shown below. Is this supposed to work? The second options statement doesn't seem to take effect.

Thanks!

thermaloptions options psfversion="1.1.0" reltol=1e-3 vabstol=1e-6 \\
iabstol=1e-12 temp=25 tnom=27 noiseon_type=\[thermal\] scalem=1.0

noiThnhv ( vgsn_io 0 ) noise values = \[1k\]

//Flicker
flickeroptions options psfversion="1.1.0" reltol=1e-3 vabstol=1e-6 \\
iabstol=1e-12 temp=25 tnom=27 noiseon_type=\[flicker\] scalem=1.0

noiFlnhv ( vgsn_io 0 ) noise values=\[1k 10k\]

Viewing all 4908 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>