Channels

events

silicon-validation

maker-projects

fossee-iitb-google-sky130

zettascale

sdram

genius-vlsi

pd-openlane-and-sky130

chipignite2206q_stanford_bringup

sky130

vhdl

courses

magic

activity

xschem

generative-ai-silicon-challenge

popy_neel

openroad

openlane

cadence-virtuoso

openlane-development

announcements

ieee-sscs-dc-22

maker-zone

pa-test-chip

fossee-iitb-esim

dynamic-power-estimation

rios

ieee-sscs-dc-23

latam_vlsi

tapeout-job

hardware-beginners

mpw-one-silicon

aa

design-services

private-shuttle

ieee-sscs-cac-23

stdcelllib

b2aws

beagleboard

tapeout-pakistan

rad-lab-silicon

timing-closure

mpw-2-silicon

announce

skywater

fasoc

bag

team-awesome

paracells

cadence-spectre

japan-region

serdes

travis-ci

opentitan

cadence-innovus

strive

infiniband

verification-fe

openocd

riscv

containers

sky65

openfpga

chisel

osu

radio

neuro-mem

help-

electric

dffram

images

microwatt

sky90

sky130-ci

swerv

fault

fpga

mpw-one-clean-short

picosoc

layouteditor

digital-design

junk

researchers

coalition-for-digital-environmental-sustainability

vlsi101

magical

vlsi_verilog_using_opensource_eda

basebands

vlsi_verilog_using_opensoure_eda

toysram

cadence-genus

abcc

fuserisc

vliw

openlane_cloudrunner

bluetooth

design-review

vhdl-learners

digital-electronics-learners

verilog-learners

uvm-learners

mpw-3-silicon

ihp-sg13g2

rdircd

discord-mods

gf180

b2aws-tutorial

gf180mcu

system-verilog-learners

vlsi-learners-group

chilechipmakers

foss-asic-tools

silicon-validation-private

chipignite

vh2v

sram

shuttle-status

board-respin

openpositarithmetic

openadiabaticlogic

openhighqualityresonators

venn

xls

rf-mmw-design

nydesign

open-pdk

j-core

power

waveform-viewers

pll

vendor-synopsys

openpower

silicon-photonics

lvs

chip-yard

shuttle

adiabatonauts

openram

funding

community_denmark_dtu

open_pdks

lvs-analysis

xyce

efabless

general

analog-design

klayout

caravel-board

reram

ieee-sscs-dc-21q3

sky130-pv-workshop

shuttle-precheck

caravan

verification-be

caravel

xyce

- s
Stanley Lin

02/01/2023, 11:49 PMIt works! I am so sorry my bad - e
Eric Keiter

02/01/2023, 11:49 PMno problem. Glad you got it working. If only adding transient noise analysis was this easy … - s
Stanley Lin

02/01/2023, 11:55 PMGood luck to you and hope you can find out a way to solve it. You are already a hero after doing so much things🙂 2 - e
Eric Keiter

02/01/2023, 11:56 PMThanks! We have the expertise to add transient noise, but are low on bandwidth at the moment.👍 1 - m
mehdi

02/02/2023, 2:59 PM**@Eric Keiter**How much would it take to add transient noise ? - e
Eric Keiter

02/04/2023, 12:16 AM**@mehdi**It is probably on the order of a few months of work for someone who knows what they are doing. Adding any new type of analysis tends to require an initial intense push, and then it gets iteratively refined for a long time afterwards as people use it and report issues, suggestions. Of course, it can depend on how complex the analysis is.🌍 1 - e
Eric Keiter

02/04/2023, 12:18 AMI think when I implemented the simplest version of small-signal noise (about 10 years ago) it only took me a month or so, and then about a year later we had another effort to make the outputs more user-friendly, and that probably took a few weeks. That hasn’t required much refinement since it went into the code. In contrast, I think we added harmonic balance for the first time in the late 2000s, maybe in 2008, and we’re still improving it, and I can think of a number of improvements we should still do for HB. For example, HB for autonomous circuits is much harder than it is for driven circuits. So, our autonomous variant of HB doesn’t work as well as we would like. - e
Eric Keiter

02/04/2023, 12:19 AMWhen it comes to transient noise, there are at least two main variants I’m aware of. One is to simply have noise sources in the transient simulation and then perform a Monte Carlo analysis, so that many different noise responses are sampled. I think that idea was first published in 1992 and it is pretty easy to understand. I expect we could get that into Xyce fairly quickly, but it is pretty inefficient. - e
Eric Keiter

02/04/2023, 12:22 AMAnother is a method based on stochastic differential equations (SDEs). I believe that was first published by Alper Demir in 1996 or so. That method is more efficient and elegant than the monte carlo (MC) technique, but also harder to implement. In the MC case we wouldn’t need to develop new solver methods but for the SDE case we probably would. Working on the SDE approach would be a lot more fun, but it would definitely take longer. - e
Eric Keiter

02/04/2023, 12:24 AMBut our biggest issue is bandwidth. One reason noise analysis development in Xyce has lagged is that our internal sponsors at SNL haven’t cared that much about it. That doesn’t mean we can’t do it, but it does mean that we are often working on something else considered to be a higher priority. That’s kind of the case at the moment; most of us are pretty busy right now. - e
Eric Keiter

02/04/2023, 12:28 AMNote, there are other noise analysis methods such as HB noise and also phase noise. I think the easiest version of HB noise isn’t too hard to do, but again we have bandwidth issues. - p
Pranav Lulu

02/04/2023, 11:36 AMHello Everyone! I am trying to install Xyce. I am stuck at configure step of building Xyce. What is a correct way to pass LIBS or LDFLAGS with the configure command? I tried giving paths to both LIBS and LDFLAGS but it did not work.s- 2
- 3

- p
Pranav Lulu

02/06/2023, 12:59 PMI am trying to simulate a spice file in xyce with sky130. Getting the error as shown below. I running the following command

Attaching the spice file as well`./Xyce -hspice-ext all run.spice`

e- 2
- 6

- p
Pranav Lulu

02/06/2023, 4:58 PM**@Tim Edwards****@Eric Keiter**How are floating nodes handled in Xyce. Does '.options rshunt = 1e21' work in xyce as well?e- 2
- 2

- t
Tarek Nasser

02/06/2023, 5:35 PMHi everyone, I'm installing Xyce after trillions get installed, however, I got this error. I also don't know what AMD is. is it the processor type ?es- 3
- 5

- p
Pranav Lulu

02/07/2023, 6:51 PMHello**@Eric Keiter**!! Shown below is the device count summary and number of unknowns in Xyce for a netlist. What is the best setting for parallel Xyce that should be used so the simulation is fast and efficient ? By setting I mean which solver to use or any other changes that should be made.e- 2
- 19

- m
Matthew Guthaus

02/14/2023, 10:11 PMIs there a way to get xyce to dump detailed memory usage stats?e- 2
- 5

- m
Meinhard Kissich

02/20/2023, 7:55 PMHello everyone. I'm facing some issues when trying to simulate a minimal sky130 design with Xyce, and I would highly appreciate your help. I started with a minimal example shown below. With just X2 and X3, Xyce runs through without errors. However, once I add the parameterized transistors X2 and X3 (copied from

), Xyce fails and reports unrecognized symbols. SPICE file:`sky130_ef_sc_hd__decap_12`

Error:`XyceDemo .lib /home/user/.volare/sky130A/libs.tech/ngspice/sky130.lib.spice tt Xinv Y A VPWR VGND VGND VPWR inverter .subckt inverter Y A NWELL VSUBS VGND VPWR X0 VPWR VGND VPWR NWELL sky130_fd_pr__pfet_01v8_hvt ad=4.524e+11p pd=4.52e+06u as=0p ps=0u w=870000u l=4.73e+06u X1 VGND VPWR VGND VSUBS sky130_fd_pr__nfet_01v8 ad=2.86e+11p pd=3.24e+06u as=0p ps=0u w=550000u l=4.73e+06u X2 Y A VPWR NWELL sky130_fd_pr__pfet_01v8 w=1e+06u l=150000u X3 Y A VGND VSUBS sky130_fd_pr__nfet_01v8 w=650000u l=150000u .ends Vgnd VGND 0 0 Vdd VPWR VGND 1.8 Vin A VGND pulse(0 1.8 1p 10p 10p 1n 2n) .tran 10e-12 2e-09 0e-00 .end`

Lines 28-34 in `.../sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__tt.pm3.spice`:`Netlist error in file /home/user/.volare/sky130A/libs.tech/ngspice/corners/../../../libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__tt.pm3.spice at or near line 31 Parameter AS for device MSKY130_FD_PR__NFET_01V8 contains unrecognized symbol: AS Netlist error in file /home/user/.volare/sky130A/libs.tech/ngspice/corners/../../../libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__tt.pm3.spice at or near line 31 Parameter AD for device MSKY130_FD_PR__NFET_01V8 contains unrecognized symbol: AD ...`

It looks as if the first occurrence of an explicit parameter overwrites the default ones that can then not be found for any subsequent instantiation. When I instantiate X2 and X3 before X0 and X1 it works.`.subckt sky130_fd_pr__nfet_01v8 d g s b + .param l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} .model sky130_fd_pr__nfet_01v8__model.0 nmos * Model Flag Parameters + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001`

te- 3
- 11

- f
Filippo

03/10/2023, 9:12 AMHi, I Have this error in this simple circuit:`Failed: sh -c {cd /home/filippo/.xschem/simulations; Xyce "/home/filippo/.xschem/simulations/untitled.spice" # Add -r "/home/filippo/.xschem/simulations/untitled.raw" if you want all variables saved} stderr: Step size reached minimum step size bound Step size reached minimum step size bound data: ***** ***** Welcome to the Xyce(TM) Parallel Electronic Simulator ***** ***** This is version Xyce DEVELOPMENT-202303091748-(Public_Release-7.6.0-146-g5330643a-dirty)-opensource ***** Date: Fri Mar 10 10:10:06 CET 2023 ***** Executing netlist /home/filippo/.xschem/simulations/untitled.spice ***** Reading and parsing netlist... Netlist warning: No print specified ***** Setting up topology... Netlist warning: Voltage Node (NET1) does not have a DC path to ground Netlist warning: Voltage Node (GND) does not have a DC path to ground ***** Device Count Summary ... R level 1 (Resistor) 1 V level 1 (Independent Voltage Source) 1 ---------------------------------------- Total Devices 2 ***** Setting up matrix structure... ***** Number of Unknowns = 3 ***** Initializing... Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! Netlist warning: Numerically singular matrix found by Amesos, returning zero solution to nonlinear solver! ***** Solution Summary ***** Number Successful Steps Taken: 0 Number Failed Steps Attempted: 1 Number Jacobians Evaluated: 62 Number Linear Solves: 62 Number Failed Linear Solves: 25 Number Residual Evaluations: 166 Number Nonlinear Convergence Failures: 1 Total Residual Load Time: 0.000463963 seconds Total Jacobian Load Time: 7.24792e-05 seconds Total Linear Solution Time: 0.000531673 seconds Failed DC sweep steps: DC Step # 1 ***** Total Simulation Solvers Run Time: 0.0103819 seconds ***** Total Elapsed Run Time: 0.639405 seconds ***** ***** End of Xyce(TM) Simulation ***** Timing summary of 1 processor Stats Count CPU Time Wall Time ---------------------------------------- ----- --------------------- --------------------- Xyce 1 0.627 (100.0%) 0.640 (100.0%) Analysis 1 0.010 ( 1.65%) 0.010 ( 1.62%) DC Sweep 1 0.010 ( 1.65%) 0.010 ( 1.61%) Solve 1 0.010 ( 1.64%) 0.010 ( 1.61%) Residual 166 0.001 ( 0.10%) 0.001 ( 0.09%) Jacobian 62 0.000 ( 0.02%) 0.000 ( 0.02%) Linear Solve 62 0.001 ( 0.09%) 0.001 ( 0.09%) Failed Steps 1 0.000 (<0.01%) 0.000 (<0.01%) Netlist Import 1 0.607 (96.88%) 0.620 (96.93%) Parse Context 1 0.583 (92.90%) 0.595 (93.03%) Distribute Devices 1 0.019 ( 3.05%) 0.019 ( 2.99%) Verify Devices 1 0.000 (<0.01%) 0.000 (<0.01%) Instantiate 1 0.000 ( 0.01%) 0.000 ( 0.01%) Late Initialization 1 0.003 ( 0.55%) 0.003 ( 0.55%) Global Indices 1 0.000 ( 0.03%) 0.000 ( 0.03%) Setup Matrix Structure`

k- 2
- 1

- f
Filippo

03/10/2023, 8:39 PMI try to perform a mixed signal simulation with xyce and Iverilog. I found some problems during running `vvp -M. -mrunXyce runXyce.vvp`:`In calltf for runXyce vvp: symbol lookup error: ./runXyce.vpi: undefined symbol: xyce_open`

m- 2
- 2

- a
Art Scott

04/21/2023, 2:44 PM[webinar video] Sadayuki Yoshitomi, MegaChips Corp; "SPICE model development Ecosystem - linking PDK development with DX technology" at Analog Workgroup Meeting April 18 2023 https://buff.ly/3UYnsPs Posted in #general - a
Ahmed Reda

05/06/2023, 5:11 AMExcuse me, how can i run .spice file using xyce. Is there a document file ?s- 2
- 2

- a
Ayushman Tripathi

05/07/2023, 4:17 PMI am trying to install Xyce (parallel) on CentOS. However in the final step of the installation : when I do sudo make install, I get the error attached in the screenshot. Have downloaded the xyce tar file from the website and not using github link. Attaching error screenshot and configure command screenshot along with configure log file and make file. Please let me know if need any other details.**@Eric Keiter** - a
Art Scott

05/18/2023, 2:21 PM - p
PramitKumar Pal

05/20/2023, 5:44 AMHi everyone, I am trying to simulate a 7 bit dac using xyce in xschem. But the time xyce takes to simulate is very long. Is there any way to reduce the run time? These are the commands I am using. - s
Stefan Schippers

05/20/2023, 11:30 AMI see a duplication in commands. Either use

or (better) use`devices/code_shown.sym`

. Delete the lower command symbols or add`devices/simulator_commands.sym`

to them to avoid duplications. Very recent xschem versions show disabled elements in grey...`spice_ignore=true`

- p
PramitKumar Pal

05/22/2023, 2:15 PM**@Stefan Schippers**Thanks for your reply. I cleaned up the schematic and got it to work a bit faster for the 7bit_dac - p
PramitKumar Pal

05/22/2023, 2:16 PMEven after adding a input level translator and output opamp buffer. - p
PramitKumar Pal

05/22/2023, 4:04 PMThese are the results I got, for 8 bit dac simulation using Xyce. Is it possible to bring the total simulation run time down? - a
Art Scott

05/31/2023, 4:48 PMAloha xyce ... request thoughts and help with xyce colab PySpice etc ... got some Chat* info Xyce, a SPICE-compatible circuit simulator developed by Sandia National Laboratories, has advanced capabilities compared to regular SPICE simulators. However, installing Xyce in a Google Colab environment might not be straightforward due to the system requirements and dependencies needed to compile and run Xyce. As of my last training data in September 2021, there isn't a convenient command or package to install Xyce directly in Google Colab. Installing it manually would involve fetching the source code, meeting all dependencies and building it from source, which might not be feasible in the Google Colab environment due to its constraints. If you want to use Xyce, you might consider setting up a local environment that satisfies the prerequisites or use a pre-configured virtual machine. Please note that the available information might have changed beyond my last training cut-off in September 2021, and there may be newer methods available to install Xyce in Google Colab. You should check the official Xyce documentation and other resources for the most current and accurate information. Here is the link to the Xyce official documentation: https://xyce.sandia.gov/ Keep in mind that using a more specialized simulator like Xyce can be more complex than using SPICE or PySpice, and it may require a deeper understanding of circuit simulation. You may also need to adapt your current scripts or write new ones to work with Xyce's specific capabilities and syntax. Thanks. Mahalo.