on Xcelium/Simvision/xrun running very slow (waiting for SimVision/Verisium Debug to connect...) By community.cadence.com Published On :: Fri, 01 Nov 2024 10:44:24 GMT Hello,I would like to use the simulation software xrun/simvision that comes with XCELIUM. We are currently using classroom licenses and want to disable all ip addresses on the student pcs except the license server ip. We want to make sure that students cannot copy confidential data from the Cadence tools.Problem:When I launch the xrun simulation while all ip addresses are blocked, it starts but the performance is very slow. The GUI starts after 5 minutes and the simulation is ready after 10 minutes. The interesting thing is that when I enable all blocked ip addresses, everything works at a reasonable speed. Terminal Output (execution without internet connection): xrun -gui design.vhd waiting for SimVision/Verisium Debug to connect...Is there a way to run the simulation tools without an Internet connection? Or can you give me the ip addresses that are used by the simulation tools so that I can enable only those specific ips?Regards,Max Full Article
on Transient Simulation waveform abnormal By community.cadence.com Published On :: Sat, 02 Nov 2024 14:23:52 GMT Hello Everybody Recently, I want to design a high output Power Amplifier at 2.4GHz using TSMC 1P6M CMOS Bulk Process. I use its nmos_rf_25_6t transistor model to determine the approximate mosfet size I use the most common Common-Source Differential Amplifier topology with neutralizing capacitor to improve its stability and power gain performance Because I want to output large power, the size of mosfet is very large, the gate width is about 2mm, when I perform harmonic balance analysis, everything is alright, the OP1dB is about 28dBm (0.63Watt) But When I perform Transient simulation, the magnitude of voltage and current waveform at the saturation point is too small, for voltgae, Vpeaking is about 50mV, for current, Ipeaking is about 5mA I assume some reasons: the bsim4 model is not complete/ the virtuoso version is wrong (My virtuoso version is IC6.1.7-64b.500.21)/the spectre version is wrong (spectre version is 15.1.0 32bit)/the MMSIM version is wrong/Transient Simulation setting is wrong (the algorithm is select gear2only, but when I select other, like: trap, the results have no difference), the maxstep I set 5ps, minstep I set 2ps to improve simulation speed, I think this step is much smaller than the fundamental period (1/2.4e9≈416ps) I have no idea how to solve this problem, please help me! Thank you very very much! Full Article
on Characterization of Full adder that use transmission gates using liberate By community.cadence.com Published On :: Mon, 04 Nov 2024 17:59:38 GMT Hello,I'm trying to characterize a full adder that use transmission gate.Unfortunately, the power calculation are wrong for the cell are always negative.Is there any method or commands that can can help in power calculation or add the power consumption by the input pins to the power calculation ?Another question, Is liberate support the characterization or transmission gate cells as standard cells or I should use liberate AMS for these type of cells ?Thanks in advance,Tareq Full Article
on AMS simvision cannot load big psf.trn By community.cadence.com Published On :: Mon, 11 Nov 2024 18:27:49 GMT Hello all, I have run a simulation with a lot of instnaces extraction and the psf.trn is >= 200 Gb, I tried to load it with simvision and it just breaks. I would like to ask if there is a way to open this file, e.g. if I could read only some time window e.g. from 10us -> 15us. getVersion(t) "sub-version ICADVM20.1-64b.500.34 " XCELIUMMAIN23.03.001 thank you in advance Full Article
on How to Set Up a Config View to Easily Switch Between Schematic and Calibre of DUT for Multiple Testbenches? By community.cadence.com Published On :: Tue, 12 Nov 2024 16:22:53 GMT Hello everyone, I hope you're all doing well. I’ve set up two testbenches (TB1 and TB2) for my Design Under Test (DUT) using Cadence IC6.1.8-64b.500.21 tools, as shown in the attached figure. The DUT has multiple views available: schematic, Calibre, Maestro, and Symbol, and each testbench uses the same DUT in different scenarios. Currently, I have to manually switch between these views, but I would like to streamline this process. My goal is to use a single config view that allows me to switch between the schematic and the extracted (Calibre) views. Ideally, I would like to have a configuration file where making changes once would update both testbenches (TB1 and TB2) automatically. In other words, when I modify one config, both testbenches should reflect this update for a single simulation run. I would really appreciate it if you could guide me on the following: How to create a config view for my DUT that can be used to easily switch between the schematic and extracted views, impacting both TB1 and TB2. Where to specify view priorities or other settings to control which view is used during simulation. Best practices for using a config file in this scenario, so that it ensures consistency across multiple testbenches. Please refer to the attached figure to get a better understanding of the setup I’m using, where both TB1 and TB2 include the same DUT with multiple available views. Thank you so much for your time and assistance! Full Article
on incorrect output of multiplication in jaspergold By community.cadence.com Published On :: Fri, 16 Feb 2024 10:02:22 GMT I want to use jaspergold to formally verify functionality of my custom multiplier. I am computing the expected result using A*B to check against output of my multiplier. Here, A and B are two logic signed operands. However, jaspergold is performing the operation A*B incorrectly. I have reproduced this issue using the attached example. JasperGold compiles and elaborates the module and subsequently runs a formal proof. The tool raises a counterexample to assertion whose screenshot is attached below: I simulated the same example using xrun and it was giving the correct product output in simvision waveform. Please help me resolve this issue. I am using 2023.03 version of Jasper Apps. Thanks and regards Anubhav Agarwal Full Article
on Using Xcelium, xrun -nogui option, where are the simulation results By community.cadence.com Published On :: Thu, 29 Feb 2024 18:23:56 GMT I'm completely new to Cadence. I've been able to run a very simple simulation with the -gui option. Simvision opens, I add the variables to the waveform viewer, and press run. All is good. I don't understand the flow when using the -nogui option. It appears that the simulation runs and returns control to the OS. When I launch Simvision, is there a database or file that I can open to display the already-simulated data? My command is of the form: xrun -gui -64bit -sv -access +rwc -top tb_top.sv <src files> Full Article
on UVM debugging: How to save and load signals during an interactive session in Simvision By community.cadence.com Published On :: Thu, 07 Mar 2024 23:18:50 GMT Hello, I am aware of command script .svcf file that saves signals and loads them in while opening Simvision. I am wondering, if there is a way for saving signals while we are in an interactive session and loading them next time when we open Simvision interactively. Any ideas on how to do this? Thank you in advance. Swetha. C Full Article
on vManager crashes when analyzing multiple sessions simultaneously with a fatal error detected by the Java Runtime Environment By community.cadence.com Published On :: Sat, 16 Mar 2024 04:34:41 GMT When analyzing multiple sessions simultaneously Verisium Manager crashed and reported below error messages: # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x00007efc52861b74, pid=14182, tid=18380 # # JRE version: OpenJDK Runtime Environment Temurin-17.0.3+7 (17.0.3+7) (build 17.0.3+7) # Java VM: OpenJDK 64-Bit Server VM Temurin-17.0.3+7 (17.0.3+7, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64) # Problematic frame: # C [libucis.so+0x238b74] ...... For more details please refer to the attached log file "hs_err_pid21143.log". Two approaches were tried to solve this problem but neither has worked. Method.1: Setting larger heap size of Java process by "-memlimit" options.For example "vmanager -memlimit 8G". Method.2: Enlarging stack memory size limit of the Coverage engine by setting "IMC_NATIVE_STACKSIZE" environment variable to a larger value. For example "setenv IMC_NATIVE_STACKSIZE 1024000" According to "hs_err_pid*.log" it is almost certain that the memory overflow triggered Java's CrashOnOutOfMemoryError and caused Verisium Manager to crash. There are some arguments about memory management of Java like "Xms, Xmx, ThreadStackSize, Xss5048k etc" and maybe this problem can be fixed by setting these arguments during analysis. However, how exactly does Verisium Manager specify these arguments during analysis? I tried to set them by the form of setting environment variables before analysis but it didn't work in analysis and their values didn't change. Is there something wrong with my operation or is there a better solution? Thank you very much. Full Article
on How do I create a basic connectivity csv? By community.cadence.com Published On :: Sat, 27 Apr 2024 00:58:07 GMT First time user of JasperGold. Chip level verif. I want to prove that an arbiter and a buffer are connected. I want to use the connectivity app to do that. I see from the user guide, that I should provide a connectivity map, but i have no idea how to construct one.The training videos said use this command: check_conn -generate_template jasper_template.xlsm -xlsmBut that did nothing, or at least it did not produce a file that i could find [<embedded>] % check_conn -generate_template jasper_template.xlsm -xlsmERROR (ESW104): Invalid command formation. Problem occurs with "-generate_template -xlsm". And even if it did, I don't even know what's in the file, and whether it contains the two ips I'm trying to check.I'm hoping someone can give me a bit of a boost here with some knowledge. Full Article
on xcelium - CSI: *F,INTERR: INTERNAL EXCEPTION By community.cadence.com Published On :: Sun, 19 May 2024 10:06:24 GMT I just completed the setup of xcelium and I am trying to test a very simple vhdl file - I got " CSI: *F,INTERR: INTERNAL EXCEPTION" without any further explanation. Could someone point me to how to investigate this error further? csi-xmelab - CSI: Command line: xmelab -f /home/cadadmin/test/xcelium.d/run.lnx86.23.03.d/xmelab.args -ACCESS +r -no_analogsolver -MESSAGES andgate -XLMODE ./xcelium.d/run.lnx86.23.03.d -RUNMODE -CDSLIB ./xcelium.d/run.lnx86.23.03.d/cds.lib -HDLVAR ./xcelium.d/run.lnx86.23.03.d/hdl.var -WORK worklib -IRUNHASTOP -CHECK_VERSION TOOL: xrun 23.03-s001 -LOG_FD 4 csi-xmelab - CSI: *F,INTERR: INTERNAL EXCEPTION-----------------------------------------------------------------The tool has encountered an unexpected condition and must exit.Contact Cadence Design Systems customer support about thisproblem and provide enough information to help us reproduce it,including the logfile that contains this error message. TOOL: xmelab 23.03-s001OPERATING SYSTEM: Linux 4.18.0-513.9.1.el8_9.x86_64 #1 Elaboration of package STD.STANDARD----------------------------------------------------------------- csi-xmelab - CSI: Cadence Support Investigation, recording detailscsi-xmelab - CSI: investigation complete took 0.000 secs, send this file to Cadence Support Full Article
on Xcelium: dump coverage information in the middle of a simulation By community.cadence.com Published On :: Fri, 23 Aug 2024 10:25:15 GMT Hi, I'm using the xcelium simulator to simulate a testbench, in which I first stimulate my design to do something (part "A") and then do a direct follow-up test on the design (part "B"). I need two things from this testbench: the results of the test (part "B", passed/failed) and coverage information, but the coverage information should only include part A and explicitly not part B. I could do the following: run the testbench with part A and B, get the "passed/failed" result of the test and then follow up another simulator run with another testbench, that only includes part A and get the coverage information from that simulation run. Is there a way to force xcelium to give me the coverage information of only a part of the simulation? Ideally, I would like to write the verilog code of my testbench to look something like this: do A dump coverage information do B But maybe there is another way to tell xcelium to consider only part of the testbench for the coverage information. I did have a look at the manual, but was not able to find something useful for this problem. Any ideas? Full Article
on Simvision Array Slicing By community.cadence.com Published On :: Fri, 30 Aug 2024 07:33:33 GMT > reg [63:0] rMem [0:255] signal it can be confirmed by rMem [0:255] in Simvision Is it possible to generate a new rMem1 signal and rMem2 signal by splitting it into 32 bits width through right-click> Create on rMem? Full Article
on Auto-Coloring Waves in Simvision? By community.cadence.com Published On :: Wed, 25 Sep 2024 22:09:53 GMT Hello, First, I had something working that broke in the past few versions that I've been meaning to get working again. There was some setting I recall in the GUI that allowed me to have inputs be placed in the waveform viewer with yellow traces, and output signals with orange traces to match the name colors. How can I set this to happen in the .simvisionrc file? Second, I would like to add something to my .simvisionrc file to go through foreach signal and depending on key locations based on the signal's Path.Name (mainly the model and design areas) such that if the path contains "mon", then to auto-set the trace and name colors to something such as cyan. I'd like to have loops for various key areas of the design to color-code the signals. Third, I am interested if there is a possibility of coloring names/traces foregound colors to based on which position they are in the waveform viewer to make banding, ideally such that every three (or whatever) are one color (or a color mutation, adding some gray to signals colorized by the auto-coloring mentioned already, etc) that allows for the signal names/traces to be colorized along with the built-in optional black/gray background banding. Thanks in advance Full Article
on Archive of Tools Classification Analysis (Xcelium) By community.cadence.com Published On :: Tue, 05 Nov 2024 16:19:01 GMT Hi, Current and valid TCAs for Functional Safety are readily available at the FuSa "one-stop shop". But I have not been able to find any archive repository for access to the obsoleted versions. I would need to have also v1.4 of Xcelum TCA to investigate exact changes wrt previous projects. Anyone knows how to find it? Best regards, Lars Full Article
on Using "add net constraints" command in Conformal By community.cadence.com Published On :: Thu, 01 Mar 2007 08:37:14 GMT Hi I have tried using "add net constraints" command to place one-cold constraints on a tristate enable bus. In the command line we need to specify the "net pathname" on which the constraints are to be enforced. The bus here is 20-bit. How should the net pathname be specified to make this 20-bit bus signals one_hot or one_cold. The bus was declared as follows: ten_bus [19:0] The command I used was add net constraints one_hot /ren_bus[19] What would the above command mean? Should we not specify all the nets' pathnames on the bus? Is it sufficient to specify the pathname of one net on the bus? I could not get much info regarding the functionality of this command. I would be obliged if anyone can throw some light. Thanks Prasad. Originally posted in cdnusers.org by anssprasad Full Article
on Cisco's utilities library donation By community.cadence.com Published On :: Fri, 18 May 2007 16:56:47 GMT Dear users, Cisco has graciously agreed to donate a library of several utilities packages to the e community. Please refer to the LIBRARY_README.txt for general information, and to each of the packages' PACKAGE_README.txt file for more information on each package. The tar file containing the utilities library is attached to this message. The zip file containing informational slides on Cisco's utility library packages is also attached. The zip file is 9 mg so may take a bit to download. The file is too big to fit on this post, so the unzipped files are posted in three separate entries below. For your convenience, we have also extracted the document “Directory Structure.doc” from the csco_base_env/docs location. Note: The library contains the csco_testflow package, adding phases to e's run phase. Cadence strongly encourages Customers to adopt the testflow phases feature that Cadence is releasing in Specman6.2. The new phases in e will be similar to the phases defined in the csco_testflow package, but will be a formal part of the e language. For more information please contact IPCM@cadence.com.Originally posted in cdnusers.org by meirav Full Article
on Macro for multiple-value when definitions By community.cadence.com Published On :: Wed, 31 Oct 2007 08:23:28 GMT The two macros below introduce new syntax for adding definitions to more than one 'when' determinant value at the same time. The first macro overloads 'extend' keyword and the second is the equivalent for 'when' keyword.A use example:extend [HUGE, BIG] packet { // definitions that pertain to these subtypes};The above code would be expanded in the following (naive) way:extend HUGE packet { // definitions that pertain to these subtypes };extend BIG packet { // definitions that pertain to these subtypes }; The macros code:define 'statement> "extend ['name>,...] 'name> ({;...})" as computed { for each in 'names> do { result = appendf("%sextend %s %s %s;",result,it,'name>,); }; result = appendf("{%s}",result); // required only for versions 6.1.1 or earlier};define 'struct_member> "when ['name>,...] 'name> ({;...})" as computed { for each in 'names> do { result = appendf("%swhen %s %s %s;",result,it,'name>,); }; result = appendf("{%s}",result); // required only for versions 6.1.1 or earlier};Originally posted in cdnusers.org by matanvax Full Article
on Item constraint macro By community.cadence.com Published On :: Wed, 31 Oct 2007 09:15:20 GMT The following macros encapsulates a design pattern that enables constraining data item fields by 'do' actions of a high level sequence. This can be done without presupposing anything about the sequence tree generated under the do-ing sequence.The tar file consists of 4 files:- item_constraint_macro.e - the 'item_constraint' and 'sequence_export' macros definition- item_constraint_example.e and sequence_export_example.e - use examples (one per each new construct)- packet_seq.e - an auxiliary definition file for the examplesThis topic was discussed in a Club-T presentation (Israel, Sophia-Antipolis, Munich). The presentation is also publicly avaiable.Originally posted in cdnusers.org by matanvax Full Article
on ce_tools directory no longer shipped with Specman By community.cadence.com Published On :: Tue, 22 Apr 2008 08:59:07 GMT Hello All,starting with version 8.1 the contents of the ce_tools directory will no longerbe shipped with Specman. The directory contains some unsupported AE/R&Dware and has not been updated for several releases (i.e. most of those oldpackages don't work with the latest release). Attached is the contents of this directory. Please read the README beforeusing any of the packages.Regards,-hannesOriginally posted in cdnusers.org by hannes Full Article
on vr_ad register definition utility By community.cadence.com Published On :: Tue, 13 Jan 2009 06:55:41 GMT Hi All.I put together a small Perl script to generate vr_ad register definitions from SPIRIT (IP-XACT) XML.If you've got not idea what IP-XACT is, have a look here www.spiritconsortium.org/, then start pestering your design manager to use it :-)The script can filter out registers and override R/W access types if needed.An example XML file is included with the package so that you can play with it, and there's a detailed README.txt as well.Here's an example of the generated e code:// Automatically generated from xdmac.xml// DO NOT EDIT, or your changes may be lost<'import vr_ad/e/vr_ad_top;// Component = XDMAC// memoryMap = xdmacextend vr_ad_map_kind : [XDMAC];// addressBlock = dma_ethextend vr_ad_reg_file_kind : [DMA_ETH];extend DMA_ETH vr_ad_reg_file { keep size == 20; keep addressing_width_in_bytes == 4;};// Register = command// Reset = 0x00reg_def COMMAND DMA_ETH 0x0 { // Field resv3 = command[31:29] reg_fld resv3 : uint(bits:3) : R : 0 : cov ; // Field transfer_size = command[28:19] reg_fld transfer_size : uint(bits:10) : RW : 0 : cov ; // Field dma_transfer_target = command[18:14] reg_fld dma_transfer_target : uint(bits:5) : RW : 0 : cov ; // Field resv2 = command[13:10] reg_fld resv2 : uint(bits:4) : R : 0 : cov ; // Field transmit_receive = command[9:9] reg_fld transmit_receive : uint(bits:1) : RW : 0 : cov ; // Field resv1 = command[8:5] reg_fld resv1 : uint(bits:4) : R : 0 : cov ; // Field dest_address_enable = command[4:4] reg_fld dest_address_enable : uint(bits:1) : RW : 0 : cov ; // Field source_address_enable = command[3:3] reg_fld source_address_enable : uint(bits:1) : RW : 0 : cov ; // Field word_size = command[2:0] reg_fld word_size : uint(bits:3) : R : 0 : cov ;};// Register = queue_exec// Reset = 0x00reg_def QUEUE_EXEC DMA_ETH 0x10 { // Field resv = queue_exec[31:1] reg_fld resv : uint(bits:31) : R : 0 : cov ; // Field exec = queue_exec[0:0] reg_fld exec : uint(bits:1) : RW : 0 : cov ;};extend XDMAC vr_ad_map { dma_eth : DMA_ETH vr_ad_reg_file; post_generate() is also { add_with_offset(0x00, dma_eth); dma_eth.reset(); };}'> Any comments, please feed them back to me so I can enhance the script. Note that this forum forces me to post a .zip file rather than .tgz, please be careful to unpack the file under Linux, not Windows, else the DOS linefeeds will corrupt the Perl and XML files. Steve Full Article
on IntelliGen Statistics Metrics Collection Utilility By community.cadence.com Published On :: Thu, 04 Jun 2009 16:24:28 GMT As noted in white papers, posts on the Team Specman Blog, and the Specman documentation, IntelliGen is a totally new stimulus generator than the original "Pgen" and, as a result, there is some amount of effort needed to migrate an existing verification environment to fully leverage the power of IntelliGen. One of the main steps in migrating code is running the linters on your code and adressing the issues highlighted. Included below is a simple utility you can include in your environment that allows you to collect some valuable statistics about your code base to allow you to better gauge the amount of work that might be required to migrate from Pgen to IntelliGen. The ICFS statistics reported are of particular benefit as the utility not only identifies the approximate number of ICFSs in the environment, it also breaks the total number down according to generation contexts (structs/units and gen-on-the-fly statements) allowing you to better focus your migration efforts. IMPORTANT: Sometimes a given environment can trigger a large number of IntelliGen linting messages right off the bat. Don't let this freak you out! This does not mean that migration will be a long effort as quite often some slight changes to an environment remove a large number of identified issues. I recently encountered a situation where a simple change to three locations in the environment, removed 500+ ICFSs!The methods included in the utility can be used to report information on the following:- Number of e modules - Number of lines in the environment (including blanks and comments)- Number and type of IntelliGen Guidelines linting messages- Number of Inconsistently Connected Field Sets (ICFSs)- Number of ICFS contexts and how many ICFSs per context- Number of soft..select overlays found in the envioronment- Number of Laces identified in the environmentTo use the code below, simply load it before/after loading e-code and then you can execute any of the following methods:- sys.print_file_stats() : prints # of lines and files - sys.print_constraint_stats() : prints # of constraints in the environment- sys.print_guideline_stats() : prints # of each type of linting message- sys.print_icfs_stats() : prints # of ICFSs, contexts and #ICFS/context- sys.print_soft_select_stats() : prints # of soft select overlay issues- sys.print_lace_stats() : *Only works for SPMNv6.2s4 and later* prints # of laces identified in the environmentEach of the above calls to methods produces it's own log files (stored in the current working directory) containing relevant information for more detailed analysis. - file_stats_log.elog : Output of "show modules" command- constraint_log.elog : Output of the "show constraint" command- guidelines_log.elog : Output of "gen lint -g" (with notification set to MAX_INT in order to get all warnings)- icfs_log.elog : Output of "gen lint -i" command- soft_select_log.elog: Output of the "gen lint -s" command- lace_log.elog : Output of the "show lace" commandHappy generating!Corey Goss Full Article
on Simvision - Signal loading By community.cadence.com Published On :: Fri, 04 May 2012 04:59:11 GMT Hi all Good day.Can anyone tell me whether it is possible to view the signals once it is modified from its previous values without closing the simvision window. If possible kindly let me know the command for it(Linux). Is it possible to view the schematic for the code written?? Kindly instruct me. Thanks all.S K S Full Article
on Hold violation at post P&R simulation By community.cadence.com Published On :: Mon, 08 Oct 2012 04:28:27 GMT Hello, I am working in a digital design. The functional, post synthesis and post P&R without IO pads are all working fine, i.e., functionally and with clean timing reports "no setup/hold violations". I just added the IO pads to the same design, I had to change the timing constraints a bit for the synthesis but I have a clean design at SOC Encounter, i.e., clean DRC and clean timing reports "no setup/hold violations". However, when I perform simulation using the exported net-list from SOC Encounter together with SDF exported from the same tool, I got a lot of hold violations. Consequently, the design is not funcitioning. Why and how I can overcome or trobleshoot this issue?In waiting for your feedback and comments.Regards. Full Article
on SI/PI Simulation and Measurement Correlation Forum By community.cadence.com Published On :: Thu, 28 Jul 2022 04:13:00 GMT Join this insightful on-demand webinar event "SI/PI Simulation and Measurement Correlation Forum" available through Signal Integrity Journal that features industry expert presentations ranging from chip to package to complex board designs.(read more) Full Article electromagnetics Power Integrity in-design analysis Signal Integrity
on X-FAB's Innovative Communication and Automotive Designs: Powered by Cadence EMX Planar 3D Solver By community.cadence.com Published On :: Sun, 31 Jul 2022 17:01:00 GMT Using the EMX solver, X-FAB design engineers can efficiently develop next-generation RF technology for the latest communication standards (including sub-6GHz 5G, mmWave, UWB, etc.), which are enabling technologies for communications and electric vehicle (EV) wireless applications. (read more) Full Article EM Analysis electromagnetics in-design analysis reference design Electromagnetic analysis PDK foundry
on This Month in IDA By community.cadence.com Published On :: Mon, 08 Aug 2022 02:55:00 GMT IDA activities in July included an endorsement from X-Fab for EMX as well as multiple multiphysics blog posts spanning SI, PI, thermal, EM and microwave analysis domains.(read more) Full Article ims2022 Power Integrity in-design analysis oncloud shift left Signal Integrity electromagnetic multiphysics
on Overcoming Thermal Challenges in Modern Electronic Design By community.cadence.com Published On :: Tue, 09 Aug 2022 14:24:00 GMT Melika Roshandell talks with David Malinak in a Microwaves & RF QuickChat video about the thermal challenges in today’s complex electronic designs and how the Celsius solver uniquely addresses them.(read more) Full Article 3D-IC in-design analysis Thermal Integrity Thermal Analysis electronic systems
on Japan Aviation Electronics is First to Support IP Protected Models for Cadence Clarity 3D Solver By community.cadence.com Published On :: Tue, 16 Aug 2022 04:08:00 GMT With the latest release (Sigrity and Systems Analysis 2022.1 HF2) of Clarity 3D Solver, support for encrypted component models is now available. With this functionality, vendors that supply 3D components, such as connectors, can now merge their...(read more) Full Article connector EM Clarity 3D Solver Systems Analysis JAE
on Clarity Encrypted Connectors! By community.cadence.com Published On :: Mon, 22 Aug 2022 00:25:00 GMT Cadence Clarity 3D Solver supports encrypted component models! Using this functionality, vendors can supply their 3D components, such as connectors, to end customers without revealing the physical IP of these designs. The first connector vendor to take advantage of this functionality is Japan Aviation Electronics (JAE),(read more) Full Article encryption in-design analysis connectors Electromagnetic analysis
on Quickchat Video Interview: Introducing Cadence Optimality and OnCloud for Systems Analysis and Signoff By community.cadence.com Published On :: Tue, 30 Aug 2022 15:05:00 GMT Microwaves & RF's David Maliniak interviews Sherry Hess of Cadence about recently announced products of Optimality and OnCloud.(read more) Full Article SaaS in-design analysis optimization multiphysics
on This Month in IDA By community.cadence.com Published On :: Tue, 06 Sep 2022 15:17:00 GMT IDA activities in August showcased two video interviews with David Maliniak of Microwaves & RF magazine. New posts, datasheets, application notes and white papers highlight multiphysics analysis spanning SI, PI, thermal, EM and microwave analysis domains are also featured.(read more) Full Article encryption in-design analysis optimization Signal Integrity electromagnetic Thermal Analysis microwave design multiphysics
on BoardSurfers: Managing Design Constraints Efficiently Using Constraint Sets By community.cadence.com Published On :: Wed, 07 Sep 2022 13:44:00 GMT A constraint is a user-defined property, or a rule, applied to a physical object, such as a net, pin, or via in a design. There are a number of constraints that can be applied to an object based on its type and behavior. For example, you can define t...(read more) Full Article PCB 17.4 BoardSurfers PCB Editor Constraint Manager 17.4-2019 PCB design Constraints Allegro PCB Editor Constraint Set Allegro
on Modern Thermal Analysis Overcomes Complex Electronic Design Issues By community.cadence.com Published On :: Tue, 13 Sep 2022 14:53:00 GMT By combining finite element analysis with computational fluid dynamics, designers can perform complete thermal system analysis using a single tool.(read more) Full Article in-design analysis Thermal Analysis electronic cooling
on Plot on Smith Chart from HB Simulation By community.cadence.com Published On :: Tue, 30 Jan 2024 14:32:07 GMT Dear All, To design an outphasing combiner, I need to extract the input impedances when the circuit is driven by two sources concurrently with a varying phase-shift and plot them on a Smith Chart. However, I can't find a way to display the simulated S-parameters on a Smith Chart. The testbench, shown below, consists of two sources set to 50 Ohm with variable phase (PORT0: theta, PORT1: -theta) swept from -90° to 90°. The NPORTs are couplers used to isolate the forward and reflected power at each source, i.e. the S-parameters are: S13 = S31 = 1; through path S21 = S41 = 1; forward and reflected power All other are zero The testbench is simulated with an "hb" analysis instead of "sp", as the two sources have to be excited simultaneously with varying phase-shift to see their load-modulation effect. The sweep is setup in the "Choosing Analysis" window. The powers of the forward (pXa) and reflected (pXb) waves are found through the "Direct Plot" window, e.g. pvr('hb "/p1a" 0 50.0 '(1)) as the power for p1a, and named P1A_Watt. The S-parameters are then calculated as the reflected power w.r.t. the forward power P1B_Watt/P1A_Watt. This approach is based on a Hot S-parameter testbench from ADS. At this point I would like to display these S-parameters on a Smith Chart. However, this seemed more challenging than expected. One straightforward method would seem to create an empty Smith Chart window in the Display Window and dragging the S-parameters from the rectangular plot on it, but this just deletes them from the Display Window. Hence my question: How can I display these S-parameters on a Smith Chart? Full Article
on Error with launching Python Script Via AWRDE VBA Script By community.cadence.com Published On :: Sun, 11 Feb 2024 03:23:21 GMT Hello Team,I am currently following this AWR script posted on them, to run a python script directly from inside AWR using VBA script. Launching Python from AWRDE VBA Script - AWR Scripts - AWR Knowledgebase Following all the basic steps with no changes to the code. I have Vscode and python-3.12.2 installed in my system. This is the error I am getting while running this code. Thank you for your help Best Regards SID Full Article
on Harmonic Balance (HB) Large-Signal S-Parameter (LSSP) simulation By community.cadence.com Published On :: Fri, 08 Mar 2024 12:07:53 GMT Dear all, Hi! I'm trying to do a Harmonic Balance (HB) Large-Signal S-Parameter (LSSP) simulation to figure out the input impedance of a nonlinear circuit. Through this simulation, what I want to know is the large-signal S11 only (not S12, S21 and S22). So, I have simulated with only single port (PORT0) at input, but LSSP simulation is terminated and output log shows following text. " Analysis `hb' was terminated prematurely due to an error " The LSSP simulation does not proceed without second port. Should I use floating second port (which is not necessary for my circuit) to succeed the LSSP simulation? Does the LSSP simulation really need two ports? Below figure is my HB LSSP simulation setup. Additionally, Periodic S-Parameter (PSP) simulation using HB is succeeded with only single port. What is the difference between PSP and LSSP simulations? Full Article
on VAR("") does not work within some expressions By community.cadence.com Published On :: Mon, 22 Apr 2024 20:47:33 GMT Hi, My Virtuoso and Spectre Version: ICADVM20.1-64b.NYISR30.2 I have an expression where the EvalType is "sweeps". Here is the expression (I also attached the snapshot): (peakToPeak(leafValue(swapSweep(delay(?wf1 clip((VT("/clk0") - VT("/clk180")) (VAR("mt_stop") - (4.0 / VAR("datarate"))) VAR("mt_stop")) ?value1 0 ?edge1 "rising" ?nth1 1 ?td1 0 ?tol1 nil ?wf2 clip((VT("/tx_padp") - VT("/tx_padn")) (VAR("mt_stop") - (4.0 / VAR("datarate"))) VAR("mt_stop")) ?value2 0 ?edge2 "rising" ?nth2 1 ?tol2 nil ?td2 nil ?stop nil ?multiple nil) "VDD_FIXED_NOISE") "VREGLN_cmode" 0.85 "VREGDRV_novn" 0.4 "datarate" 1.658e+10) ?overall t) / 10.0) What this expression does is that it compares the delay between the output data with respect to a reference clock. I then get this information for two conditions (VDD_FIXED_NOISE = 0 or 10mV) to get the effect of the supply-induced jitter. In the expression, I need to give the value of each parameter in different modes to distinguish them from each other. Now I want to sweep the base supply values and see the supply variation effects. For example, I want to change VREGLN_cmode from 0.85 to 0.81 and see how my supply-induced jitter changes. For that, the hard way is to copy the expression and change that value accordingly (e.g. "VREGLN_cmode" 0.81). I'm looking for an easier way to use a variable in the expression. Something like VAR("VREGLN_Sweep"). But I see it doesn't work in my expression and it gives an eVal error. I tested this before in other expressions (not sweep type) and it always worked. I have only one test and these variables are all Design Variables and not Global variables.I want to know what mistake am I doing here and is there a way to make this work. Sorry that if I could not explain better my inquiry. Thank you. Full Article
on Measuring DDJ (data dependent jitter). Cross function on eye-diagram By community.cadence.com Published On :: Fri, 31 May 2024 14:18:07 GMT Hi,My Virtuoso and Spectre Version: ICADVM20.1-64b.NYISR30.2I plot an eye diagram using a built in function. I want to see the data-dependent jitter. I want to measure the eye diagram edges at zero crossing (width of that diamond part) shown in the pic by vertical and horizontal markers. I can put a marker and read the numbers there and get what I want. But now I want to run Monte Carlo and I can't do this for all samples. I wish I could write an expression for this. Unfortunately, I see that the function "cross" is not working on the eye diagram. Basically, when I send the eye diagram data to a table, I see that it actually is just the prbs data and not the eye diagram data. Is there a hack that can help me achieve my goal which is: having an expression to measure the edges of the eye diagram at zero crossing?There is a script that Andrew wrote (https://support.cadence.com/wps/mypoc/cos?uri=deeplinkmin%3AViewSolution%3BsolutionNumber%3D11395772). This is a good script but it puts all edges on top of each other. I want to distinguish the two edges. In the attached pic (two-period eye diagram) you can see what I mean by the two edges (diamond shapes). I want to measure each of the two and take the maximum. Having all the edges on top of each other won't give me what I want. All edges together will lso include DCD. I purely want to measure DDJ. DCD is measured separately. I have very little experience with writing scripts and could not modify Andrew's script.Your help is much appreciated. Thank you. Full Article
on EVM and constellation of mixer By community.cadence.com Published On :: Wed, 05 Jun 2024 15:03:31 GMT Hello,I am trying to design an RF mixer for a TX.Assume my input IF signal is at 1 GHz, my LO at 2 GHz and I want my RF at 3 GHz, and assume that the mixer fully works after testing it with HB.How to simply set the envelope analysis to check the EVM ?I read through the documentation but I couldn't get it (I couldn't fully understand the settings of the source, probe, analysis.)Which source and probe to use? I want custom modulation with custom bandwidth and center frequency.Is there some examples for the ENVLP analysis ?I am using IC23.1 and spectre 20.1.354. Full Article
on HB: duplicated frequencies in 3-tone simulation By community.cadence.com Published On :: Fri, 09 Aug 2024 11:51:48 GMT I get multiple results at the same frequency in a 3-tone simulation. I try to determine the IP3 of a mixer. I have 3 large signal tones: 0.75 GHz, 1.25 GHz and 1.26 GHz. At the IM3 frequency of 490 MHz I observe 4 results, see also the screenshot of the table output. The frequencies are exactly the same (even when I subtract 490 MHz by using xval() ). Which of the values do I have to use to determine the correct IP3? Is there an option to merge these results? Full Article
on Colpitts Oscillator output power simulation By community.cadence.com Published On :: Thu, 22 Aug 2024 08:44:20 GMT Hello everybody, As you can find in the attached image, I am trying to simulate a Colpitts oscillator. However, using pss analysis it shows a high output power. My question is where is the problem of my structure or simulation setup? Best, Full Article
on Load Pull transistor simulation By community.cadence.com Published On :: Tue, 10 Sep 2024 08:11:18 GMT Hello everyone, I am trying to perform a load pull simulation of a transistor to verify some gain calculations I made using its S-parameters. Specifically, I have calculated the optimal conjugate impedances for the input and output to later calculate the power dissipated and transmitted in each stage of the transistor. Then, I only varied the output impedance and recalculated these powers, noticing that the power delivered to the load is lower. Now, what I want to do is simulate this behavior using the Load Pull simulation. I have taken the model shown in the image, but I believe it is a linear model. My question is: if the chosen model is linear, is the load pull simulation accurate? In the calculations I made, nonlinearities are not considered. I don’t want to take nonlinearities into account. In short, do you have any ideas on how to verify the calculations made with the transistor’s S-parameters through a load pull simulation? Can you recommend any transistor model that is nonlinear and also has an S-parameter file? Thank you very much in advance. Full Article
on Cross-coupled oscillator Stability simulation By community.cadence.com Published On :: Thu, 10 Oct 2024 10:21:33 GMT Hello everyone, For my cross-coupled oscillator design, I have a problem with stability analysis. Based on my achieved results which are attached, where is my design problem? Best, https://ibb.co/bgKFP4N https://ibb.co/3FGRLmV https://ibb.co/pwSZDSF Full Article
on EMX - EM simulation for large CMOS chip By community.cadence.com Published On :: Tue, 22 Oct 2024 11:05:16 GMT Hi everyone, I'm currently working on my thesis, which involves a beamformer system using CMOS 65nm technology. I'm trying to use the EMX tool for EM simulation but have encountered a few problems. Before diving into my questions about EMX, let me briefly explain how I conduct EM simulations with other software (ADS). In ADS, I use the EM simulator with the Momentum microwave engine. However, my EM layout is quite large, and the mesh generated is extremely detailed, making it difficult to simulate the entire system. As a workaround, I divide the system into smaller parts and simulate each one individually. I've attached a snapshot of my setup, which includes an amplifier and a 1-to-2 Wilkinson power divider. I've separated these circuits and placed pins to facilitate EM simulations for each. I also placed ground pins at the boundaries of each circuit to connect them to the ground plane. Here’s the link to the image (I'm unable to upload it due to an error): https://drive.google.com/file/d/13Qn4-DvMBj_K1JQLXrTWaWZ8uaLJr15u/view?usp=sharing Now, moving on to EMX (version 6.3). For a maximum frequency of 31 GHz, I set the edge mesh = thickness = 0.4 µm (approximately the skin depth). However, when I simulate the circuit (amplifier + divider), the mesh on the ground plane becomes very dense, which makes running the simulation impossible due to excessive memory requirements. I reverted to my ADS approach and divided the circuit into two parts, placing ports to connect them. Unfortunately, EMX doesn't allow me to place multiple edge ports on the same edge for the ground plane, which has left me confused. Here are a couple of questions I have: Is breaking the circuit into smaller parts a valid approach? Given the large ground plane, the mesh size for the ground is significant, making simulations challenging. Are there any methods to manage this issue? Regarding the ground pins, why can't I place multiple edge ports to connect the ground planes of both circuits as I did in ADS? If this approach is incorrect, could you suggest alternative methods for simulating individual circuits and connecting them to estimate system performance? Any insights would be greatly appreciated. Thank you in advance for your help! Full Article
on Transient Simulation waveform abnormal By community.cadence.com Published On :: Sat, 02 Nov 2024 14:37:09 GMT Hello Everybody Recently, I want to design a high output Power Amplifier at 2.4GHz using TSMC 1P6M CMOS Bulk Process. I use its nmos_rf_25_6t transistor model to determine the approximate mosfet size I use the most common Common-Source Differential Amplifier topology with neutralizing capacitor to improve its stability and power gain performance Because I want to output large power, the size of mosfet is very large, the gate width is about 2mm, when I perform harmonic balance analysis, everything is alright, the OP1dB is about 28dBm (0.63Watt) But When I perform Transient simulation, the magnitude of voltage and current waveform at the saturation point is too small, for voltgae, Vpeaking is about 50mV, for current, Ipeaking is about 5mA I assume some reasons: the bsim4 model is not complete/ the virtuoso version is wrong (My virtuoso version is IC6.1.7-64b.500.21)/the spectre version is wrong (spectre version is 15.1.0 32bit)/the MMSIM version is wrong/Transient Simulation setting is wrong (the algorithm is select gear2only, but when I select other, like: trap, the results have no difference), the maxstep I set 5ps, minstep I set 2ps to improve simulation speed, I think this step is much smaller than the fundamental period (1/2.4e9≈416ps) I have no idea how to solve this problem, please help me! Thank you very very much! Full Article
on Virtuoso Meets Maxwell: Getting Your Existing SiP File Into Virtuoso RF Solution By community.cadence.com Published On :: Tue, 21 Jun 2022 13:44:00 GMT I have been involved in the Virtuoso RF Solution for the last four years. Most of the customers I work with have a SiP package already in progress. They often ask "How do I get my SiP design into Virtuoso RF Solution?" I am excited about new functionality in the latest ICADVM20.1 ISR25 release. It is a new GUI under the Tools menu called Enablement. (read more) Full Article SiP Enablement GUI Virtuoso Meets Maxwell Virtuoso RF Solution Virtuoso RF Allegro Package Designer Plus Assisted Export System Design Environment RF design SiP Layout Option Custom IC Design Assisted Flows Assisted Import Allegro
on Start Your Engines: AMS Flex – Our Next Generation Architecture Matures By community.cadence.com Published On :: Wed, 06 Jul 2022 05:05:00 GMT An AMS Designer Flex simulation gives you the most immediate access to the latest simulation technology on either side, gets out of the way of the core engines and allows the engine performance to shine while providing access to new features. Check out this blog to know more.(read more) Full Article AMS Designer AMSD Start Your Engines Mixed-Signal AMSD Flex Mode mixed-signal design Cadence Community AMS Flex
on Start Your Engines: An Innovative and Efficient Approach to Debug Interface Elements with SimVision MS By community.cadence.com Published On :: Fri, 29 Jul 2022 04:35:00 GMT This blog introduces you to an efficient way to debug interface elements or connect modules in a mixed-signal simulation.(read more) Full Article connect modules mixed signal design interface elements AMS Designer mixed-signal simulation Virtuoso SimVision-MS
on Virtuosity: Custom IC Design Flow/Methodology - Circuit Physical Verification & Parasitic Extraction By community.cadence.com Published On :: Fri, 29 Jul 2022 18:26:00 GMT Read this blog for an overview to the Circuit physical verification and parasitic extraction design stage in the Custom IC Design methodology and the key design steps which can help you achieve this.(read more) Full Article design rule violations Extraction Layout versus schematic Physical Verification System (PVS) Virtuoso Quantus Extraction Solution PVS Custom IC Design parasitics